blob: ccdcf327bae31e51518e1561f5d37e1ac4315d68 [file] [log] [blame]
Shad Ansari2f7f9be2017-06-07 13:34:53 -07001EXTRA_CFLAGS += -Wall -Werror
2ARFLAGS = r
3
4BLD_CC_HOST = $(CCACHE) gcc
5BLD_CC = $(CCACHE) $(CROSS_COMPILE)gcc
6BLD_AS = $(CCACHE) $(CROSS_COMPILE)gcc
7BLD_AR = $(CROSS_COMPILE)ar
8BLD_DEP = $(BLD_CC)
9
10# Maple SDK requires C99
11CFLAGS += -std=c99
12ifeq ("$(ENABLE_EXTRA_WARNINGS)", "y")
13 CFLAGS += -Wextra -Wbad-function-cast -Wcast-align -Wcast-qual -Wchar-subscripts
14 CFLAGS += -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wredundant-decls
15 CFLAGS += -Wstrict-prototypes -Wparentheses -Wswitch -Wswitch-default -Wunused -Wuninitialized -Wunused-but-set-variable
16 CFLAGS += -Wno-unused-parameter -Wno-missing-field-initializers -Wno-sign-compare
17 CFLAGS += -Wshadow -Wno-inline
18endif
19
20BUILD_DEPS_IN_CC ?= y
21export BUILD_DEPS_IN_CC
22
23ifeq ("$(BUILD_DEPS_IN_CC)", "y")
24 CFLAGS += -MMD -MP
25endif
26
27ifeq ("$(CROSS_COMPILE)", "")
28 ARCH_FLAGS += -m32 -march=i386
29 LD_ARCH_FLAGS += -m elf_i386 --oformat=elf32-i386
30 SIMULATION_BUILD ?= y
31 export SIMULATION_BUILD
32 GCCVER ?= 4.8.1
33 export GCCVER
34 # Temporary, until bad cast in bcm_dev_log_task.c is fixed (SWMAPLE-2123)
35 CFLAGS += -Wno-strict-aliasing
36 CONFIGURE_TARGET ?= i586-linux-gnu
37endif
38
39ifeq ("$(EXPORT_DYNAMIC_SYMBOLS)", "y")
40 ARCH_FLAGS += -Wl,-export-dynamic
41endif
42
43ifneq ("$(SIMULATION_BUILD)", "y")
44 EXTRA_CFLAGS += -Wframe-larger-than=16384
45endif
46
47LIBS_MARKER =-l
48LIBS_PATH_MARKER =-L
49LIBS_START_MARKER = -Wl,--start-group
50LIBS_END_MARKER = -Wl,--end-group
51
52# Debug and release optimization options. Can be overwritten in Makefile.config.$(PLATFORM)
53DEBUG_O_CFLAGS ?= -g -gdwarf-3 -O0
54DEBUG_O_LFLAGS ?= -g
55RELEASE_O_CFLAGS ?= -g -gdwarf-3 -O0
56RELEASE_O_LFLAGS ?= -g