From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sergio Gonzalez Monroy Subject: [PATCH v2] Pass CC option when building kernel modules Date: Thu, 9 Oct 2014 11:08:33 +0100 Message-ID: <1412849313-5958-1-git-send-email-sergio.gonzalez.monroy@intel.com> References: <1412611022-8278-1-git-send-email-sergio.gonzalez.monroy@intel.com> To: dev-VfR2kkLFssw@public.gmane.org Return-path: In-Reply-To: <1412611022-8278-1-git-send-email-sergio.gonzalez.monroy-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces-VfR2kkLFssw@public.gmane.org Sender: "dev" At least on kernels 3.15 or newer, wrong compiler flags are set when building kernel modules. v2: Remove unnecessary reset of CC when being included from the kernel. Signed-off-by: Sergio Gonzalez Monroy --- mk/rte.module.mk | 2 +- mk/toolchain/clang/rte.vars.mk | 5 +---- mk/toolchain/gcc/rte.vars.mk | 1 + mk/toolchain/icc/rte.vars.mk | 5 +---- 4 files changed, 4 insertions(+), 9 deletions(-) diff --git a/mk/rte.module.mk b/mk/rte.module.mk index c4ca3fd..41c0d0f 100644 --- a/mk/rte.module.mk +++ b/mk/rte.module.mk @@ -78,7 +78,7 @@ build: _postbuild $(MODULE).ko: $(SRCS_LINKS) @if [ ! -f $(notdir Makefile) ]; then ln -nfs $(SRCDIR)/Makefile . ; fi @$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR) \ - CROSS_COMPILE=$(CROSS) + CC=$(KERNELCC) CROSS_COMPILE=$(CROSS) # install module in $(RTE_OUTPUT)/kmod $(RTE_OUTPUT)/kmod/$(MODULE).ko: $(MODULE).ko diff --git a/mk/toolchain/clang/rte.vars.mk b/mk/toolchain/clang/rte.vars.mk index ee4f451..40cb389 100644 --- a/mk/toolchain/clang/rte.vars.mk +++ b/mk/toolchain/clang/rte.vars.mk @@ -38,11 +38,8 @@ # - define TOOLCHAIN_ASFLAGS variable (overriden by cmdline value) # -ifeq ($(KERNELRELEASE),) CC = $(CROSS)clang -else -CC = $(CROSS)gcc -endif +KERNELCC = $(CROSS)gcc CPP = $(CROSS)cpp # for now, we don't use as but nasm. # AS = $(CROSS)as diff --git a/mk/toolchain/gcc/rte.vars.mk b/mk/toolchain/gcc/rte.vars.mk index 262ebdf..993eb26 100644 --- a/mk/toolchain/gcc/rte.vars.mk +++ b/mk/toolchain/gcc/rte.vars.mk @@ -39,6 +39,7 @@ # CC = $(CROSS)gcc +KERNELCC = $(CROSS)gcc CPP = $(CROSS)cpp # for now, we don't use as but nasm. # AS = $(CROSS)as diff --git a/mk/toolchain/icc/rte.vars.mk b/mk/toolchain/icc/rte.vars.mk index 612370d..f03a2a2 100644 --- a/mk/toolchain/icc/rte.vars.mk +++ b/mk/toolchain/icc/rte.vars.mk @@ -41,11 +41,8 @@ # Warning: we do not use CROSS environment variable as icc is mainly a # x86->x86 compiler -ifeq ($(KERNELRELEASE),) CC = icc -else -CC = gcc -endif +KERNELCC = gcc CPP = cpp AS = nasm AR = ar -- 1.9.3