From patchwork Mon Feb 17 22:16:29 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mike Holmes X-Patchwork-Id: 24807 Return-Path: X-Original-To: linaro@patches.linaro.org Delivered-To: linaro@patches.linaro.org Received: from mail-ob0-f200.google.com (mail-ob0-f200.google.com [209.85.214.200]) by ip-10-151-82-157.ec2.internal (Postfix) with ESMTPS id A262E20468 for ; Mon, 17 Feb 2014 22:16:36 +0000 (UTC) Received: by mail-ob0-f200.google.com with SMTP id wo20sf61025090obc.3 for ; Mon, 17 Feb 2014 14:16:35 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:from:to:subject:date:message-id :x-original-sender:x-original-authentication-results:precedence :mailing-list:list-id:list-post:list-help:list-archive :list-unsubscribe:content-type; bh=YxRnIjBxiOhRZ6lI/hPYyXcuqTvH8r1GHz+rKMKEd60=; b=GDr/7i0ouajaAWSYniFQAGuy+9+I8w1+Lj9hwYRkTsVtqp/E35iKxLVK632LgWAbyj jJ3hiqSYleWD2vhbcD7iYdC2d8uvhmDXSH+UyQf9ohZfvrBu8TxTPGm8QdBbi+uNuRh0 h5QecUscalKOWcHg+ngToWSnJq/atIHjosngbAZFygRLjj87NUwIM8dxI0kiwUk5ldLx yK1YpKefJGwIkRFBcXtPvbQ5YBdGmp18OJ3nQqy8wzXv/fh4OwN43wGG3a2noUIorGTX KYY/qSpaNJAKyCXMSeGIT+/ta5oucOkGk9Cz+7+dpjj0v92WqISXObpf2EFr7cDwJ0Iu wBPA== X-Gm-Message-State: ALoCoQkwDGMv5ZpPLO85oZt5jLUhiZejXIYiCw5yZOtTKhKcYlF/1wYn7nFAmsrd1wfx+tHgBML8 X-Received: by 10.182.219.226 with SMTP id pr2mr11349052obc.44.1392675395759; Mon, 17 Feb 2014 14:16:35 -0800 (PST) MIME-Version: 1.0 X-BeenThere: lng-odp@linaro.org Received: by 10.140.95.134 with SMTP id i6ls1119606qge.2.gmail; Mon, 17 Feb 2014 14:16:35 -0800 (PST) X-Received: by 10.224.98.212 with SMTP id r20mr38738310qan.0.1392675395424; Mon, 17 Feb 2014 14:16:35 -0800 (PST) Received: from mail-qa0-f43.google.com (mail-qa0-f43.google.com [209.85.216.43]) by mx.google.com with ESMTPS id j4si9314956qao.88.2014.02.17.14.16.35 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 17 Feb 2014 14:16:35 -0800 (PST) Received-SPF: neutral (google.com: 209.85.216.43 is neither permitted nor denied by best guess record for domain of mike.holmes@linaro.org) client-ip=209.85.216.43; Received: by mail-qa0-f43.google.com with SMTP id o15so22458894qap.16 for ; Mon, 17 Feb 2014 14:16:35 -0800 (PST) X-Received: by 10.224.127.73 with SMTP id f9mr38483501qas.11.1392675395231; Mon, 17 Feb 2014 14:16:35 -0800 (PST) Received: from fedora1.holmesfamily.ws (c-98-221-136-245.hsd1.nj.comcast.net. [98.221.136.245]) by mx.google.com with ESMTPSA id w9sm49143224qax.3.2014.02.17.14.16.34 for (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 17 Feb 2014 14:16:34 -0800 (PST) From: Mike Holmes To: lng-odp@linaro.org Subject: [lng-odp] [PATCH] Makefiles: Allow CFLAGS to overide the build Date: Mon, 17 Feb 2014 17:16:29 -0500 Message-Id: <1392675389-26607-1-git-send-email-mike.holmes@linaro.org> X-Mailer: git-send-email 1.8.3.2 X-Original-Sender: mike.holmes@linaro.org X-Original-Authentication-Results: mx.google.com; spf=neutral (google.com: 209.85.216.43 is neither permitted nor denied by best guess record for domain of mike.holmes@linaro.org) smtp.mail=mike.holmes@linaro.org Precedence: list Mailing-list: list lng-odp@linaro.org; contact lng-odp+owners@linaro.org List-ID: X-Google-Group-Id: 474323889996 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , Signed-off-by: Mike Holmes --- 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 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