bsd.sys.mk revision 94332
1309466Sngie# $FreeBSD: head/share/mk/bsd.sys.mk 94332 2002-04-10 02:45:22Z obrien $
2272343Sngie#
3272343Sngie# This file contains common settings used for building FreeBSD
4272343Sngie# sources.
5272343Sngie
6272343Sngie# Enable various levels of compiler warning checks.  These may be
7272343Sngie# overridden (e.g. if using a non-gcc compiler) by defining NO_WARNS.
8272343Sngie
9272343Sngie.if !defined(NO_WARNS)
10272343Sngie. if defined(WARNS)
11272343Sngie.  if ${WARNS} > 0
12272343Sngie.   if !defined(NO_WERROR)
13272343SngieCFLAGS		+=	-Werror
14272343Sngie.   endif
15272343Sngie.  endif
16272343Sngie.  if ${WARNS} > 1
17272343SngieCFLAGS		+=	-Wall
18272343Sngie.  endif
19272343Sngie.  if ${WARNS} > 2
20272343SngieCFLAGS		+=	-W -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith
21272343Sngie.  endif
22272343Sngie.  if ${WARNS} > 3
23272343SngieCFLAGS		+=	-Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-align
24272343Sngie.  endif
25272343Sngie.  if ${WARNS} > 4
26272343SngieCFLAGS		+=	-Wuninitialized
27272343Sngie.  endif
28272343Sngie# BDECFLAGS
29272343Sngie.  if ${WARNS} > 5
30272343SngieCFLAGS		+=	-ansi -pedantic -Wbad-function-cast -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls
31272343Sngie.  endif
32272343Sngie.  if ${WARNS} > 1 && ${WARNS} < 5
33272343Sngie# XXX Delete -Wuninitialized by default for now -- the compiler doesn't
34272343Sngie# XXX always get it right.
35272343SngieCFLAGS		+=	-Wno-uninitialized
36272343Sngie.  endif
37272343Sngie. endif
38272343Sngie
39272343Sngie. if defined(FORMAT_AUDIT)
40272343SngieWFORMAT		=	1
41272343Sngie. endif
42272343Sngie. if defined(WFORMAT)
43272343Sngie.  if ${WFORMAT} > 0
44272343SngieCFLAGS		+=	-Wnon-const-format -Wno-format-extra-args
45272343Sngie.   if !defined(NO_WERROR)
46272343SngieCFLAGS		+=	-Werror
47272343Sngie.   endif
48272343Sngie.  endif
49272343Sngie. endif
50272343Sngie.endif
51272343Sngie
52272343Sngie# Allow user-specified additional warning flags
53272343SngieCFLAGS		+=	${CWARNFLAGS}
54272343Sngie
55272343Sngie# FreeBSD prior to 4.5 didn't have the __FBSDID() macro in <sys/cdefs.h>.
56272343Sngie.if defined(BOOTSTRAPPING)
57272343SngieCFLAGS+=	-D__FBSDID=__RCSID
58272343Sngie.endif
59272343Sngie