xref: /f-stack/tools/libxo/warnings.mk (revision d4a07e70)
1*d4a07e70Sfengbojiang#
2*d4a07e70Sfengbojiang# $Id$
3*d4a07e70Sfengbojiang#
4*d4a07e70Sfengbojiang# Copyright 2011, Juniper Networks, Inc.
5*d4a07e70Sfengbojiang# All rights reserved.
6*d4a07e70Sfengbojiang# This SOFTWARE is licensed under the LICENSE provided in the
7*d4a07e70Sfengbojiang# ../Copyright file. By downloading, installing, copying, or otherwise
8*d4a07e70Sfengbojiang# using the SOFTWARE, you agree to be bound by the terms of that
9*d4a07e70Sfengbojiang# LICENSE.
10*d4a07e70Sfengbojiang#
11*d4a07e70Sfengbojiang# Commonly used sets of warnings
12*d4a07e70Sfengbojiang#
13*d4a07e70Sfengbojiang
14*d4a07e70SfengbojiangMIN_WARNINGS?= -W -Wall
15*d4a07e70Sfengbojiang
16*d4a07e70SfengbojiangLOW_WARNINGS?= ${MIN_WARNINGS} \
17*d4a07e70Sfengbojiang    -Wstrict-prototypes \
18*d4a07e70Sfengbojiang    -Wmissing-prototypes \
19*d4a07e70Sfengbojiang    -Wpointer-arith
20*d4a07e70Sfengbojiang
21*d4a07e70SfengbojiangMEDIUM_WARNINGS?= ${LOW_WARNINGS} -Werror
22*d4a07e70Sfengbojiang
23*d4a07e70SfengbojiangHIGH_WARNINGS?= ${MEDIUM_WARNINGS} \
24*d4a07e70Sfengbojiang    -Waggregate-return \
25*d4a07e70Sfengbojiang    -Wcast-align \
26*d4a07e70Sfengbojiang    -Wcast-qual \
27*d4a07e70Sfengbojiang    -Wchar-subscripts \
28*d4a07e70Sfengbojiang    -Wcomment \
29*d4a07e70Sfengbojiang    -Wformat \
30*d4a07e70Sfengbojiang    -Wimplicit \
31*d4a07e70Sfengbojiang    -Wmissing-declarations \
32*d4a07e70Sfengbojiang    -Wnested-externs \
33*d4a07e70Sfengbojiang    -Wparentheses \
34*d4a07e70Sfengbojiang    -Wreturn-type \
35*d4a07e70Sfengbojiang    -Wshadow \
36*d4a07e70Sfengbojiang    -Wswitch \
37*d4a07e70Sfengbojiang    -Wtrigraphs \
38*d4a07e70Sfengbojiang    -Wuninitialized \
39*d4a07e70Sfengbojiang    -Wunused \
40*d4a07e70Sfengbojiang    -Wwrite-strings
41*d4a07e70Sfengbojiang
42*d4a07e70SfengbojiangHIGHER_WARNINGS?= ${HIGH_WARNINGS} \
43*d4a07e70Sfengbojiang    -Winline \
44*d4a07e70Sfengbojiang    -Wbad-function-cast \
45*d4a07e70Sfengbojiang    -Wpacked \
46*d4a07e70Sfengbojiang    -Wpadded \
47*d4a07e70Sfengbojiang    -Wstrict-aliasing
48*d4a07e70Sfengbojiang
49*d4a07e70Sfengbojiangifeq "${LIBXO_WARNINGS}" "HIGH"
50*d4a07e70SfengbojiangWARNINGS += ${HIGH_WARNINGS}
51*d4a07e70Sfengbojiangelse
52*d4a07e70SfengbojiangWARNINGS += ${LOW_WARNINGS}
53*d4a07e70Sfengbojiangendif
54*d4a07e70Sfengbojiang
55*d4a07e70Sfengbojiangifeq "${GCC_WARNINGS}" "yes"
56*d4a07e70SfengbojiangWARNINGS += -fno-inline-functions-called-once
57*d4a07e70Sfengbojiangendif
58