bsd.sys.mk revision 115640
176861Skris# $FreeBSD: head/share/mk/bsd.sys.mk 115640 2003-06-01 21:33:05Z obrien $ 276861Skris# 376861Skris# This file contains common settings used for building FreeBSD 476861Skris# sources. 576861Skris 676861Skris# Enable various levels of compiler warning checks. These may be 776861Skris# overridden (e.g. if using a non-gcc compiler) by defining NO_WARNS. 876861Skris 996316Sobrien# for GCC: http://gcc.gnu.org/onlinedocs/gcc-3.0.4/gcc_3.html#IDX143 1096316Sobrien 11115640Sobrien.if !defined(PROG_CXX) 12115629SobrienCSTD ?= c99 13115640Sobrien. if ${CSTD} == "k&r" 14115453SobrienCFLAGS += -traditional 15115640Sobrien. elif ${CSTD} == "c89" || ${CSTD} == "c90" 16115453SobrienCFLAGS += -std=iso9899:1990 17115640Sobrien. elif ${CSTD} == "c94" || ${CSTD} == "c95" 18115453SobrienCFLAGS += -std=iso9899:199409 19115640Sobrien. elif ${CSTD} == "c99" 20115453SobrienCFLAGS += -std=iso9899:1999 21115640Sobrien. else 22115453SobrienCFLAGS += -std=${CSTD} 23115640Sobrien. endif 24115629Sobrien.endif 25115629Sobrien 26115629Sobrien.if !defined(NO_WARNS) 2776861Skris. if defined(WARNS) 2876861Skris. if ${WARNS} > 0 29112869SruCFLAGS += -Wsystem-headers 3099542Sobrien. if !defined(NO_WERROR) 3199542SobrienCFLAGS += -Werror 3299542Sobrien. endif 3376861Skris. endif 3476861Skris. if ${WARNS} > 1 3596316SobrienCFLAGS += -Wall -Wno-format-y2k 3676861Skris. endif 3787976Sobrien. if ${WARNS} > 2 3887976SobrienCFLAGS += -W -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith 3987976Sobrien. endif 4087976Sobrien. if ${WARNS} > 3 4187976SobrienCFLAGS += -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-align 4287976Sobrien. endif 43115629Sobrien# XXX: the warning that was here became problematic. 44115629Sobrien#. if ${WARNS} > 4 4594332Sobrien# BDECFLAGS 4694332Sobrien. if ${WARNS} > 5 47115455Sobrien. if defined(CSTD) 48115455SobrienCFLAGS += -pedantic 49115455Sobrien. endif 50114751SdesCFLAGS += -Wbad-function-cast -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls 5194332Sobrien. endif 5294332Sobrien. if ${WARNS} > 1 && ${WARNS} < 5 5388936Sdwmalone# XXX Delete -Wuninitialized by default for now -- the compiler doesn't 5488936Sdwmalone# XXX always get it right. 5588936SdwmaloneCFLAGS += -Wno-uninitialized 5688936Sdwmalone. endif 5776861Skris. endif 5876861Skris 5976861Skris. if defined(FORMAT_AUDIT) 6076861SkrisWFORMAT = 1 6176861Skris. endif 6276861Skris. if defined(WFORMAT) 6376861Skris. if ${WFORMAT} > 0 6496316Sobrien#CFLAGS += -Wformat-nonliteral -Wformat-security -Wno-format-extra-args 6596316SobrienCFLAGS += -Wformat=2 -Wno-format-extra-args 6699542Sobrien. if !defined(NO_WERROR) 6799542SobrienCFLAGS += -Werror 6899542Sobrien. endif 6976861Skris. endif 7076861Skris. endif 7176861Skris.endif 7276861Skris 7376861Skris# Allow user-specified additional warning flags 7476861SkrisCFLAGS += ${CWARNFLAGS} 75