]> de.git.xonotic.org Git - xonotic/gmqcc.git/blobdiff - include.mk
Make it a function
[xonotic/gmqcc.git] / include.mk
index 23c3fb94c45d7562a8deb1670db3e8e19c0e81be..1f90111aa332e63344ad8f30b20f51f2cf291e9a 100644 (file)
@@ -5,6 +5,9 @@ BINDIR  := $(PREFIX)/bin
 DATADIR := $(PREFIX)/share
 MANDIR  := $(DATADIR)/man
 
+# default flags
+CFLAGS  += -Wall -Wextra -Werror -Wstrict-aliasing -Wno-attributes -O2
+
 # compiler
 CC      ?= clang
 
@@ -101,7 +104,12 @@ SPLINTFLAGS =                 \
     -observertrans            \
     -abstract                 \
     -statictrans              \
-    -castfcnptr
+    -castfcnptr               \
+    -shiftimplementation      \
+    -shiftnegative            \
+    -boolcompare              \
+    -infloops                 \
+    -sysunrecog
 
 #always the right rule
 default: all
@@ -111,20 +119,23 @@ uninstall:
        rm -f $(DESTDIR)$(BINDIR)/gmqcc
        rm -f $(DESTDIR)$(BINDIR)/qcvm
        rm -f $(DESTDIR)$(BINDIR)/gmqpak
-       rm -f $(DESTDIR)$(MANDIR)/man1/doc/gmqcc.1
-       rm -f $(DESTDIR)$(MANDIR)/man1/doc/qcvm.1
-       rm -f $(DESTDIR)$(MANDIR)/man1/doc/gmqpak.1
+       rm -f $(DESTDIR)$(MANDIR)/man1/gmqcc.1
+       rm -f $(DESTDIR)$(MANDIR)/man1/qcvm.1
+       rm -f $(DESTDIR)$(MANDIR)/man1/gmqpak.1
 
 #style rule
 STYLE_MATCH = \( -name '*.[ch]' -or -name '*.def' -or -name '*.qc' \)
 
+# splint cannot parse the MSVC source
+SPLINT_MATCH = \( -name '*.[ch]' -and ! -name 'msvc.c' -and ! -path './doc/*' \)
+
 style:
        find . -type f $(STYLE_MATCH) -exec sed -i 's/ *$$//' '{}' ';'
        find . -type f $(STYLE_MATCH) -exec sed -i -e '$$a\' '{}' ';'
        find . -type f $(STYLE_MATCH) -exec sed -i 's/\t/    /g' '{}' ';'
 
 splint:
-       @splint $(SPLINTFLAGS) *.c *.h
+       @splint $(SPLINTFLAGS) `find . -type f $(SPLINT_MATCH)`
 
 gource:
        @gource $(GOURCEFLAGS)