blob: e88f26617dc79288e6bd91c28f5789f99afa87d3 [file] [log] [blame]
#
# Common global compiler configuration
#
# Common Compiler Flags ########################################################
# CHRE requires C++11 and C99 support.
COMMON_CXX_CFLAGS += -std=c++11
COMMON_C_CFLAGS += -x c
COMMON_C_CFLAGS += -std=c99
# Configure 'all' and 'extra' warnings and promote warnings to errors.
COMMON_CFLAGS += -Wall
COMMON_CFLAGS += -Wextra
COMMON_CFLAGS += -Werror
# Disabled warnings. You better have a good reason to add more here.
COMMON_CFLAGS += -Wno-unused-parameter
# Additional warnings. Even more! :]
COMMON_CFLAGS += -Wshadow
COMMON_CFLAGS += -Wdouble-promotion
# Disable exceptions and RTTI.
COMMON_CXX_CFLAGS += -fno-exceptions
COMMON_CXX_CFLAGS += -fno-rtti
# Enable the linker to garbage collect unused code and variables.
COMMON_CFLAGS += -fdata-sections
COMMON_CFLAGS += -ffunction-sections
# Enable debugging symbols for debug builds.
COMMON_DEBUG_CFLAGS += -g
# Dependency Resolution
DEP_CFLAGS = -MM -MG -MP -MF $$(basename $$@).d
# Compile with hidden visibility by default.
COMMON_CFLAGS += -fvisibility=hidden
# Common Archive Flags #########################################################
COMMON_ARFLAGS += rsc