summaryrefslogtreecommitdiffstats
path: root/ninja/rules.ninja
diff options
context:
space:
mode:
Diffstat (limited to 'ninja/rules.ninja')
-rw-r--r--ninja/rules.ninja27
1 files changed, 27 insertions, 0 deletions
diff --git a/ninja/rules.ninja b/ninja/rules.ninja
new file mode 100644
index 0000000..9bdcf64
--- /dev/null
+++ b/ninja/rules.ninja
@@ -0,0 +1,27 @@
+includes = -I include
+cflags = -Wall -Werror -pedantic -fPIC -std=c++17 -DDEBUG $includes
+
+libs = -lSDL2 -lpthread
+lflags = $libs
+
+flags = -fdiagnostics-color
+
+rule mkdir
+ command = mkdir -p $out
+ description = creating directory $out
+
+rule cpp
+ command = g++ $flags $cflags -c $in -o $out $lflags
+ description = compiling $in
+
+rule link
+ command = g++ $flags $cflags -o $out $in $lflags
+ description = linking $out
+
+rule link-shared
+ command = g++ $flags $cflags -shared -o $out $in $lflags
+ description = linking shared object $out
+
+rule link-static
+ command = ar rvs $out $in
+ description = creating archive $out