1 ifeq ("$(origin O)", "command line")
6 # check that the output directory actually exists
7 OUTDIR := $(shell cd $(OUTPUT) && /bin/pwd)
8 $(if $(OUTDIR),, $(error output directory "$(OUTPUT)" does not exist))
12 # Include saner warnings here, which can catch bugs:
14 EXTRA_WARNINGS := -Wbad-function-cast
15 EXTRA_WARNINGS += -Wdeclaration-after-statement
16 EXTRA_WARNINGS += -Wformat-security
17 EXTRA_WARNINGS += -Wformat-y2k
18 EXTRA_WARNINGS += -Winit-self
19 EXTRA_WARNINGS += -Wmissing-declarations
20 EXTRA_WARNINGS += -Wmissing-prototypes
21 EXTRA_WARNINGS += -Wnested-externs
22 EXTRA_WARNINGS += -Wno-system-headers
23 EXTRA_WARNINGS += -Wold-style-definition
24 EXTRA_WARNINGS += -Wpacked
25 EXTRA_WARNINGS += -Wredundant-decls
26 EXTRA_WARNINGS += -Wshadow
27 EXTRA_WARNINGS += -Wstrict-aliasing=3
28 EXTRA_WARNINGS += -Wstrict-prototypes
29 EXTRA_WARNINGS += -Wswitch-default
30 EXTRA_WARNINGS += -Wswitch-enum
31 EXTRA_WARNINGS += -Wundef
32 EXTRA_WARNINGS += -Wwrite-strings
33 EXTRA_WARNINGS += -Wformat
35 ifneq ($(findstring $(MAKEFLAGS), w),w)
36 PRINT_DIR = --no-print-directory
41 QUIET_SUBDIR0 = +$(MAKE) -C # space to separate -C and subdir
44 ifneq ($(findstring $(MAKEFLAGS),s),s)
46 QUIET_CC = @echo ' ' CC $@;
47 QUIET_AR = @echo ' ' AR $@;
48 QUIET_LINK = @echo ' ' LINK $@;
49 QUIET_MKDIR = @echo ' ' MKDIR $@;
50 QUIET_GEN = @echo ' ' GEN $@;
51 QUIET_SUBDIR0 = +@subdir=
52 QUIET_SUBDIR1 = ;$(NO_SUBDIR) echo ' ' SUBDIR $$subdir; \
53 $(MAKE) $(PRINT_DIR) -C $$subdir
54 QUIET_FLEX = @echo ' ' FLEX $@;
55 QUIET_BISON = @echo ' ' BISON $@;