Message ID | 1392675389-26607-1-git-send-email-mike.holmes@linaro.org |
---|---|
State | Superseded, archived |
Headers | show |
On Tuesday, 18 February 2014 00:16:29 UTC+2, Mike Holmes wrote: > > Signed-off-by: Mike Holmes <mike....@linaro.org <javascript:>> > --- > > CFLAGS is usually expected to take effect on a build if applied from the > command line when calling make, or if it is set in the environment. > > Examples are when building with CLANG, -Wno-error must be applied to > allow CLANG warnings which are a superset of gcc to cause the build to > fail. e.g. make CC=clang CFLAGS=-Wno-error > > When building with optimizations off and with -g for debugging, it must > be possible to alter the defaults, in ODPs case these defaults are in > Makefile.inc > > e.g. make CFLAGS=-O3 > > .checkpatch.conf | 1 + > Makefile.inc | 16 ++++++++-------- > platform/linux-generic/Makefile | 10 +++++----- > test/api_test/Makefile | 6 +++--- > test/example/Makefile | 2 +- > test/packet/Makefile | 4 ++-- > test/packet_netmap/Makefile | 6 +++--- > 7 files changed, 23 insertions(+), 22 deletions(-) > > diff --git a/.checkpatch.conf b/.checkpatch.conf > index e1a25c8..9076410 100644 > --- a/.checkpatch.conf > +++ b/.checkpatch.conf > @@ -1,3 +1,4 @@ > --no-tree > --strict > --ignore=NEW_TYPEDEFS > +--ignore=DEPRECATED_VARIABLE > diff --git a/Makefile.inc b/Makefile.inc > index 7dea028..75a4829 100644 > --- a/Makefile.inc > +++ b/Makefile.inc > @@ -4,17 +4,17 @@ > # SPDX-License-Identifier: BSD-3-Clause > > PLATFORM ?= linux-generic > -CFLAGS += -DODP_DEBUG=1 > -#CFLAGS += -O3 > -CFLAGS += -O0 -g > +EXTRA_CFLAGS += -DODP_DEBUG=1 > +#EXTRA_CFLAGS += -O3 > +EXTRA_CFLAGS += -O0 -g > As I said earlier, -O3 must be used by default. It must be used in regression testing. Otherwise we have code soon that does not compile with -O3, or compiles but has bugs with optimization. -Petri > > OBJ_DIR = ./obj > DESTDIR ?= $(ODP_ROOT)/build > > -CFLAGS += -W -Wall -Werror -Wstrict-prototypes -Wmissing-prototypes > -CFLAGS += -Wmissing-declarations -Wold-style-definition -Wpointer-arith > -CFLAGS += -Wcast-align -Wnested-externs -Wcast-qual -Wformat-nonliteral > -CFLAGS += -Wformat-security -Wundef -Wwrite-strings > +EXTRA_CFLAGS += -W -Wall -Werror -Wstrict-prototypes -Wmissing-prototypes > +EXTRA_CFLAGS += -Wmissing-declarations -Wold-style-definition > -Wpointer-arith > +EXTRA_CFLAGS += -Wcast-align -Wnested-externs -Wcast-qual > -Wformat-nonliteral > +EXTRA_CFLAGS += -Wformat-security -Wundef -Wwrite-strings > > CC ?= gcc > LD ?= gcc > @@ -26,5 +26,5 @@ RMDIR := rm -rf > RM := rm -f > COPY := cp -r > > -CFLAGS += -pthread > +EXTRA_EXTRA_CFLAGS += -pthread > LDFLAGS += -pthread > diff --git a/platform/linux-generic/Makefile > b/platform/linux-generic/Makefile > index f665683..9828ee4 100644 > --- a/platform/linux-generic/Makefile > +++ b/platform/linux-generic/Makefile > @@ -32,12 +32,12 @@ ODP_ROOT = ../.. > LIB_DIR = ./lib > DOC_DIR = ./doc > > -CFLAGS += -I$(ODP_ROOT)/include > -CFLAGS += -I./include > -CFLAGS += -I./include/api > +EXTRA_CFLAGS += -I$(ODP_ROOT)/include > +EXTRA_CFLAGS += -I./include > +EXTRA_CFLAGS += -I./include/api > > ifeq ($(ODP_HAVE_NETMAP),yes) > -CFLAGS += -DODP_HAVE_NETMAP > +EXTRA_CFLAGS += -DODP_HAVE_NETMAP > endif > > include $(ODP_ROOT)/Makefile.inc > @@ -92,7 +92,7 @@ $(DOC_DIR): > # > $(OBJ_DIR)/%.o: ./source/%.c > $(ECHO) Compiling $< > - $(CC) -c -MD $(CFLAGS) -o $@ $< > + $(CC) -c -MD $(EXTRA_CFLAGS) $(CFLAGS) -o $@ $< > > # > # Lib rule > diff --git a/test/api_test/Makefile b/test/api_test/Makefile > index 15c18f4..741fbe4 100644 > --- a/test/api_test/Makefile > +++ b/test/api_test/Makefile > @@ -12,12 +12,12 @@ ODP_ATOMIC = odp_atomic > ODP_SHM = odp_shm > ODP_RING = odp_ring > > -CFLAGS += -I$(ODP_ROOT)/platform/linux-generic/include > +EXTRA_CFLAGS += -I$(ODP_ROOT)/platform/linux-generic/include > > include ../Makefile.inc > include $(ODP_ROOT)/Makefile.inc > > -CFLAGS += -I$(ODP_TEST_ROOT)/api_test > +EXTRA_CFLAGS += -I$(ODP_TEST_ROOT)/api_test > > ATOMIC_OBJS = > ATOMIC_OBJS += $(OBJ_DIR)/odp_common.o > @@ -52,7 +52,7 @@ $(OBJ_DIR): $(DESTDIR)/lib/libodp.a > # > $(OBJ_DIR)/%.o: %.c > $(ECHO) Compiling $< > - $(CC) -c -MD $(CFLAGS) -o $@ $< > + $(CC) -c -MD $(EXTRA_CFLAGS) $(CFLAGS) -o $@ $< > > # > # Link rule > diff --git a/test/example/Makefile b/test/example/Makefile > index d43e780..8064977 100644 > --- a/test/example/Makefile > +++ b/test/example/Makefile > @@ -30,7 +30,7 @@ $(OBJ_DIR): $(DESTDIR)/lib/libodp.a > # > $(OBJ_DIR)/%.o: %.c > $(ECHO) Compiling $< > - $(CC) -c -MD $(CFLAGS) -o $@ $< > + $(CC) -c -MD $(EXTRA_CFLAGS) $(CFLAGS) -o $@ $< > > # > # Link rule > diff --git a/test/packet/Makefile b/test/packet/Makefile > index f1cb7d9..c66b37c 100644 > --- a/test/packet/Makefile > +++ b/test/packet/Makefile > @@ -9,7 +9,7 @@ ODP_APP = odp_packet > include ../Makefile.inc > include $(ODP_ROOT)/Makefile.inc > > -CFLAGS += -I$(ODP_TEST_ROOT)/packet > +EXTRA_CFLAGS += -I$(ODP_TEST_ROOT)/packet > > OBJS = > OBJS += $(OBJ_DIR)/odp_example_pktio.o > @@ -32,7 +32,7 @@ $(OBJ_DIR): $(DESTDIR)/lib/libodp.a > # > $(OBJ_DIR)/%.o: %.c > $(ECHO) Compiling $< > - $(CC) -c -MD $(CFLAGS) -o $@ $< > + $(CC) -c -MD $(EXTRA_CFLAGS) $(CFLAGS) -o $@ $< > > # > # Link rule > diff --git a/test/packet_netmap/Makefile b/test/packet_netmap/Makefile > index 5febb33..d92d113 100644 > --- a/test/packet_netmap/Makefile > +++ b/test/packet_netmap/Makefile > @@ -6,8 +6,8 @@ > ODP_ROOT = ../.. > ODP_APP = odp_packet > > -CFLAGS += -DODP_HAVE_NETMAP > -CFLAGS += -O0 -g > +EXTRA_CFLAGS += -DODP_HAVE_NETMAP > +EXTRA_CFLAGS += -O0 -g > > include ../Makefile.inc > include $(ODP_ROOT)/Makefile.inc > @@ -33,7 +33,7 @@ $(OBJ_DIR): $(DESTDIR)/lib/libodp.a > # > $(OBJ_DIR)/%.o: %.c > $(ECHO) Compiling $< > - $(CC) -c -MD $(CFLAGS) -o $@ $< > + $(CC) -c -MD $(EXTRA_CFLAGS) $(CFLAGS) -o $@ $< > > # > # Link rule > -- > 1.8.3.2 > >
diff --git a/.checkpatch.conf b/.checkpatch.conf index e1a25c8..9076410 100644 --- a/.checkpatch.conf +++ b/.checkpatch.conf @@ -1,3 +1,4 @@ --no-tree --strict --ignore=NEW_TYPEDEFS +--ignore=DEPRECATED_VARIABLE diff --git a/Makefile.inc b/Makefile.inc index 7dea028..75a4829 100644 --- a/Makefile.inc +++ b/Makefile.inc @@ -4,17 +4,17 @@ # SPDX-License-Identifier: BSD-3-Clause PLATFORM ?= linux-generic -CFLAGS += -DODP_DEBUG=1 -#CFLAGS += -O3 -CFLAGS += -O0 -g +EXTRA_CFLAGS += -DODP_DEBUG=1 +#EXTRA_CFLAGS += -O3 +EXTRA_CFLAGS += -O0 -g OBJ_DIR = ./obj DESTDIR ?= $(ODP_ROOT)/build -CFLAGS += -W -Wall -Werror -Wstrict-prototypes -Wmissing-prototypes -CFLAGS += -Wmissing-declarations -Wold-style-definition -Wpointer-arith -CFLAGS += -Wcast-align -Wnested-externs -Wcast-qual -Wformat-nonliteral -CFLAGS += -Wformat-security -Wundef -Wwrite-strings +EXTRA_CFLAGS += -W -Wall -Werror -Wstrict-prototypes -Wmissing-prototypes +EXTRA_CFLAGS += -Wmissing-declarations -Wold-style-definition -Wpointer-arith +EXTRA_CFLAGS += -Wcast-align -Wnested-externs -Wcast-qual -Wformat-nonliteral +EXTRA_CFLAGS += -Wformat-security -Wundef -Wwrite-strings CC ?= gcc LD ?= gcc @@ -26,5 +26,5 @@ RMDIR := rm -rf RM := rm -f COPY := cp -r -CFLAGS += -pthread +EXTRA_EXTRA_CFLAGS += -pthread LDFLAGS += -pthread diff --git a/platform/linux-generic/Makefile b/platform/linux-generic/Makefile index f665683..9828ee4 100644 --- a/platform/linux-generic/Makefile +++ b/platform/linux-generic/Makefile @@ -32,12 +32,12 @@ ODP_ROOT = ../.. LIB_DIR = ./lib DOC_DIR = ./doc -CFLAGS += -I$(ODP_ROOT)/include -CFLAGS += -I./include -CFLAGS += -I./include/api +EXTRA_CFLAGS += -I$(ODP_ROOT)/include +EXTRA_CFLAGS += -I./include +EXTRA_CFLAGS += -I./include/api ifeq ($(ODP_HAVE_NETMAP),yes) -CFLAGS += -DODP_HAVE_NETMAP +EXTRA_CFLAGS += -DODP_HAVE_NETMAP endif include $(ODP_ROOT)/Makefile.inc @@ -92,7 +92,7 @@ $(DOC_DIR): # $(OBJ_DIR)/%.o: ./source/%.c $(ECHO) Compiling $< - $(CC) -c -MD $(CFLAGS) -o $@ $< + $(CC) -c -MD $(EXTRA_CFLAGS) $(CFLAGS) -o $@ $< # # Lib rule diff --git a/test/api_test/Makefile b/test/api_test/Makefile index 15c18f4..741fbe4 100644 --- a/test/api_test/Makefile +++ b/test/api_test/Makefile @@ -12,12 +12,12 @@ ODP_ATOMIC = odp_atomic ODP_SHM = odp_shm ODP_RING = odp_ring -CFLAGS += -I$(ODP_ROOT)/platform/linux-generic/include +EXTRA_CFLAGS += -I$(ODP_ROOT)/platform/linux-generic/include include ../Makefile.inc include $(ODP_ROOT)/Makefile.inc -CFLAGS += -I$(ODP_TEST_ROOT)/api_test +EXTRA_CFLAGS += -I$(ODP_TEST_ROOT)/api_test ATOMIC_OBJS = ATOMIC_OBJS += $(OBJ_DIR)/odp_common.o @@ -52,7 +52,7 @@ $(OBJ_DIR): $(DESTDIR)/lib/libodp.a # $(OBJ_DIR)/%.o: %.c $(ECHO) Compiling $< - $(CC) -c -MD $(CFLAGS) -o $@ $< + $(CC) -c -MD $(EXTRA_CFLAGS) $(CFLAGS) -o $@ $< # # Link rule diff --git a/test/example/Makefile b/test/example/Makefile index d43e780..8064977 100644 --- a/test/example/Makefile +++ b/test/example/Makefile @@ -30,7 +30,7 @@ $(OBJ_DIR): $(DESTDIR)/lib/libodp.a # $(OBJ_DIR)/%.o: %.c $(ECHO) Compiling $< - $(CC) -c -MD $(CFLAGS) -o $@ $< + $(CC) -c -MD $(EXTRA_CFLAGS) $(CFLAGS) -o $@ $< # # Link rule diff --git a/test/packet/Makefile b/test/packet/Makefile index f1cb7d9..c66b37c 100644 --- a/test/packet/Makefile +++ b/test/packet/Makefile @@ -9,7 +9,7 @@ ODP_APP = odp_packet include ../Makefile.inc include $(ODP_ROOT)/Makefile.inc -CFLAGS += -I$(ODP_TEST_ROOT)/packet +EXTRA_CFLAGS += -I$(ODP_TEST_ROOT)/packet OBJS = OBJS += $(OBJ_DIR)/odp_example_pktio.o @@ -32,7 +32,7 @@ $(OBJ_DIR): $(DESTDIR)/lib/libodp.a # $(OBJ_DIR)/%.o: %.c $(ECHO) Compiling $< - $(CC) -c -MD $(CFLAGS) -o $@ $< + $(CC) -c -MD $(EXTRA_CFLAGS) $(CFLAGS) -o $@ $< # # Link rule diff --git a/test/packet_netmap/Makefile b/test/packet_netmap/Makefile index 5febb33..d92d113 100644 --- a/test/packet_netmap/Makefile +++ b/test/packet_netmap/Makefile @@ -6,8 +6,8 @@ ODP_ROOT = ../.. ODP_APP = odp_packet -CFLAGS += -DODP_HAVE_NETMAP -CFLAGS += -O0 -g +EXTRA_CFLAGS += -DODP_HAVE_NETMAP +EXTRA_CFLAGS += -O0 -g include ../Makefile.inc include $(ODP_ROOT)/Makefile.inc @@ -33,7 +33,7 @@ $(OBJ_DIR): $(DESTDIR)/lib/libodp.a # $(OBJ_DIR)/%.o: %.c $(ECHO) Compiling $< - $(CC) -c -MD $(CFLAGS) -o $@ $< + $(CC) -c -MD $(EXTRA_CFLAGS) $(CFLAGS) -o $@ $< # # Link rule
Signed-off-by: Mike Holmes <mike.holmes@linaro.org> --- CFLAGS is usually expected to take effect on a build if applied from the command line when calling make, or if it is set in the environment. Examples are when building with CLANG, -Wno-error must be applied to allow CLANG warnings which are a superset of gcc to cause the build to fail. e.g. make CC=clang CFLAGS=-Wno-error When building with optimizations off and with -g for debugging, it must be possible to alter the defaults, in ODPs case these defaults are in Makefile.inc e.g. make CFLAGS=-O3 .checkpatch.conf | 1 + Makefile.inc | 16 ++++++++-------- platform/linux-generic/Makefile | 10 +++++----- test/api_test/Makefile | 6 +++--- test/example/Makefile | 2 +- test/packet/Makefile | 4 ++-- test/packet_netmap/Makefile | 6 +++--- 7 files changed, 23 insertions(+), 22 deletions(-)