Make -Werror configurable

This commit is contained in:
Denis Vlasenko 2007-01-27 13:44:53 +00:00
parent fd94efa41f
commit e0eebc1ef3
3 changed files with 25 additions and 11 deletions

View File

@ -352,16 +352,25 @@ config DEBUG
Most people should answer N. Most people should answer N.
config DEBUG_PESSIMIZE config WERROR
bool "Disable compiler optimizations." bool "Abort compilation on any warning"
default n default n
depends on DEBUG
help help
The compiler's optimization of source code can eliminate and reorder Selecting this will add -Werror to gcc command line.
code, resulting in an executable that's hard to understand when
stepping through it with a debugger. This switches it off, resulting Most people should answer N.
in a much bigger executable that more closely matches the source
code. # Seems to be unused
#config DEBUG_PESSIMIZE
# bool "Disable compiler optimizations."
# default n
# depends on DEBUG
# help
# The compiler's optimization of source code can eliminate and reorder
# code, resulting in an executable that's hard to understand when
# stepping through it with a debugger. This switches it off, resulting
# in a much bigger executable that more closely matches the source
# code.
choice choice
prompt "Additional debugging library" prompt "Additional debugging library"

View File

@ -17,10 +17,15 @@ CPPFLAGS += \
# flag checks are grouped together to speed the checks up a bit.. # flag checks are grouped together to speed the checks up a bit..
CFLAGS += $(call cc-option,-Wall -Wshadow,) CFLAGS += $(call cc-option,-Wall -Wshadow,)
ifeq ($(CONFIG_WERROR),y)
CFLAGS += $(call cc-option,-Werror,)
endif
CFLAGS += $(call cc-option,-Wundef -Wold-style-definition -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations,) CFLAGS += $(call cc-option,-Wundef -Wold-style-definition -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations,)
CFLAGS += $(call cc-option,-Os -fno-builtin-strlen -finline-limit=0 -fomit-frame-pointer -ffunction-sections -fdata-sections,) CFLAGS += $(call cc-option,-Os -fno-builtin-strlen -finline-limit=0 -fomit-frame-pointer -ffunction-sections -fdata-sections,)
CFLAGS += $(call cc-option,-static-libgcc -funsigned-char,) # -fno-guess-branch-probability: prohibit pseudo-random guessing
CFLAGS += $(call cc-option,-falign-functions=1 -falign-jumps=1 -falign-loops=1,) # of branch probabilities (hopefully makes bloatcheck more stable)
CFLAGS += $(call cc-option,-funsigned-char -fno-guess-branch-probability -static-libgcc,)
CFLAGS += $(call cc-option,-falign-functions=1 -falign-jumps=1 -falign-labels=1 -falign-loops=1,)
# FIXME: These warnings are at least partially to be concerned about and should # FIXME: These warnings are at least partially to be concerned about and should
# be fixed.. # be fixed..

View File

@ -45,7 +45,7 @@ CONFIG_LFS=y
# Debugging Options # Debugging Options
# #
# CONFIG_DEBUG is not set # CONFIG_DEBUG is not set
# CONFIG_DEBUG_PESSIMIZE is not set # CONFIG_WERROR is not set
# CONFIG_NO_DEBUG_LIB is not set # CONFIG_NO_DEBUG_LIB is not set
# CONFIG_DMALLOC is not set # CONFIG_DMALLOC is not set
# CONFIG_EFENCE is not set # CONFIG_EFENCE is not set