From: Bruce Richardson <bruce.richardson@intel.com> To: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com> Cc: dev@dpdk.org Subject: Re: [dpdk-dev] [PATCH] Pass CC option when building kernel modules Date: Mon, 6 Oct 2014 17:12:35 +0100 Message-ID: <20141006161235.GA10236@BRICHA3-MOBL> (raw) In-Reply-To: <1412611022-8278-1-git-send-email-sergio.gonzalez.monroy@intel.com> On Mon, Oct 06, 2014 at 04:57:02PM +0100, Sergio Gonzalez Monroy wrote: > At least on kernels 3.15 or newer, DPDK build is broken for CLANG target. > The issue is that the kernel build system sets the flags before including > DPDK makefile and therefore assumes the incorrect compiler. > > Signed-off-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com> I can confirm that this patch fixes the clang compile for me on Fedora 20 with kernel 3.16.3-200.fc20.x86_64. Acked-by: Bruce Richardson <bruce.richardson@intel.com> > --- > mk/rte.module.mk | 2 +- > mk/target/generic/rte.vars.mk | 2 ++ > mk/toolchain/clang/rte.vars.mk | 5 +---- > mk/toolchain/gcc/rte.vars.mk | 1 + > mk/toolchain/icc/rte.vars.mk | 5 +---- > 5 files changed, 6 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/target/generic/rte.vars.mk b/mk/target/generic/rte.vars.mk > index 6020f20..74ff771 100644 > --- a/mk/target/generic/rte.vars.mk > +++ b/mk/target/generic/rte.vars.mk > @@ -149,4 +149,6 @@ endif > export CFLAGS > export LDFLAGS > > +else # ! ifeq ($(KERNELRELEASE),) > +CC = $(KERNELCC) > endif > 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 >
next prev parent reply other threads:[~2014-10-06 16:05 UTC|newest] Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top 2014-10-06 15:57 Sergio Gonzalez Monroy 2014-10-06 16:12 ` Bruce Richardson [this message] 2014-10-08 17:15 ` Thomas Monjalon 2014-10-09 8:10 ` Bruce Richardson 2014-10-09 10:04 ` Sergio Gonzalez Monroy 2014-10-09 10:08 ` [dpdk-dev] [PATCH v2] " Sergio Gonzalez Monroy 2014-10-13 16:08 ` De Lara Guarch, Pablo 2014-10-15 14:03 ` Thomas Monjalon
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20141006161235.GA10236@BRICHA3-MOBL \ --to=bruce.richardson@intel.com \ --cc=dev@dpdk.org \ --cc=sergio.gonzalez.monroy@intel.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
DPDK patches and discussions This inbox may be cloned and mirrored by anyone: git clone --mirror https://inbox.dpdk.org/dev/0 dev/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 dev dev/ https://inbox.dpdk.org/dev \ dev@dpdk.org public-inbox-index dev Example config snippet for mirrors. Newsgroup available over NNTP: nntp://inbox.dpdk.org/inbox.dpdk.dev AGPL code for this site: git clone https://public-inbox.org/public-inbox.git