summaryrefslogtreecommitdiff
path: root/src/cc.mk
diff options
context:
space:
mode:
Diffstat (limited to 'src/cc.mk')
-rw-r--r--src/cc.mk29
1 files changed, 15 insertions, 14 deletions
diff --git a/src/cc.mk b/src/cc.mk
index 8b65627..18eae7e 100644
--- a/src/cc.mk
+++ b/src/cc.mk
@@ -1,26 +1,27 @@
-# Copyright 2008 Roy Marples
+# Copyright 2008 Roy Marples <roy@marples.name>
# Setup some good default CFLAGS
-CFLAGS ?= -O2 -pipe
+CFLAGS?= -O2 -pipe
+CSTD?= c99
# GNU Make way of detecting gcc flags we can use
-check_gcc=$(shell if $(CC) $(1) -S -o /dev/null -xc /dev/null >/dev/null 2>&1; \
- then echo "$(1)"; else echo "$(2)"; fi)
+check_gcc=$(shell if ${CC} $(1) -S -o /dev/null -xc /dev/null >/dev/null 2>&1; \
+ then echo "$(1)"; else echo "$(2)"; fi)
# pmake check for extra cflags
-WEXTRA != for x in -Wdeclaration-after-statement -Wsequence-point -Wextra; do \
- if $(CC) $$x -S -o /dev/null -xc /dev/null >/dev/null 2>&1; \
+WEXTRA!= for x in -Wdeclaration-after-statement -Wsequence-point -Wextra; do \
+ if ${CC} $$x -S -o /dev/null -xc /dev/null >/dev/null 2>&1; \
then echo -n "$$x "; fi \
done
# Loads of nice flags to ensure our code is good
-CFLAGS += -pedantic -std=c99 \
- -Wall -Wunused -Wimplicit -Wshadow -Wformat=2 \
- -Wmissing-declarations -Wno-missing-prototypes -Wwrite-strings \
- -Wbad-function-cast -Wnested-externs -Wcomment -Winline \
- -Wchar-subscripts -Wcast-align -Wno-format-nonliteral \
- $(call check_gcc, -Wdeclaration-after-statement) \
- $(call check_gcc, -Wsequence-point) \
- $(call check_gcc, -Wextra) $(WEXTRA)
+CFLAGS+= -pedantic -std=${CSTD} \
+ -Wall -Wunused -Wimplicit -Wshadow -Wformat=2 \
+ -Wmissing-declarations -Wno-missing-prototypes -Wwrite-strings \
+ -Wbad-function-cast -Wnested-externs -Wcomment -Winline \
+ -Wchar-subscripts -Wcast-align -Wno-format-nonliteral \
+ $(call check_gcc, -Wdeclaration-after-statement) \
+ $(call check_gcc, -Wsequence-point) \
+ $(call check_gcc, -Wextra) ${WEXTRA}