On 3/21/2018 6:06 PM, Ajit Khaparde wrote: > From: Scott Branden <scott.bran...@broadcom.com> > > Allow kernel artifacts to be located in output directory specific > by RTE_KERNELDIR_OUT.
How to use this variable, I tried following but kernel modules are still in same place: - make RTE_KERNELDIR_OUT=/tmp/kmod O=ferruh DESTDIR=/tmp/ferruh - make RTE_KERNELDIR_OUT=/tmp/kmod O=ferruh DESTDIR=/tmp/ferruh install - make RTE_KERNELDIR_OUT=/tmp/kmod O=ferruh DESTDIR=/tmp/ferruh modules_install /tmp/kmod not created. And what we are fixing here, what was wrong with old code? > If RTE_KERNELDIR_OUT not specified than > source directory RTE_KERNEL is used. ${RTE_KERNELDIR} is used as external Linux kernel source folder, why we are want to put artifacts into kernel source? > > Signed-off-by: Scott Branden <scott.bran...@broadcom.com> > Signed-off-by: Ajit Khaparde <ajit.khapa...@broadcom.com> > --- > mk/rte.module.mk | 9 ++++++--- > 1 file changed, 6 insertions(+), 3 deletions(-) > > diff --git a/mk/rte.module.mk b/mk/rte.module.mk > index 1ada528a0..e2e1af716 100644 > --- a/mk/rte.module.mk > +++ b/mk/rte.module.mk > @@ -39,6 +39,9 @@ _postinstall: build > .PHONY: build > build: _postbuild > > +# Allow kernel artifacts to be located in a different location that source > +RTE_KERNELDIR_OUT ?= ${RTE_KERNELDIR} > + > # Link all sources in build directory > %_link: FORCE > $(if $(call compare,$(notdir $*),$*),\ > @@ -48,7 +51,7 @@ build: _postbuild > # build module > $(MODULE).ko: $(SRCS_LINKS) > @if [ ! -f $(notdir Makefile) ]; then ln -nfs $(SRCDIR)/Makefile . ; fi > - @$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR) \ > + @$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR_OUT) \ > CC="$(KERNELCC)" CROSS_COMPILE=$(CROSS) V=$(if $V,1,0) > > # install module in $(RTE_OUTPUT)/kmod > @@ -59,7 +62,7 @@ $(RTE_OUTPUT)/kmod/$(MODULE).ko: $(MODULE).ko > > # install module > modules_install: > - @$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR) \ > + @$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR_OUT) \ > modules_install > > .PHONY: clean > @@ -69,7 +72,7 @@ clean: _postclean > .PHONY: doclean > doclean: > @if [ ! -f $(notdir Makefile) ]; then ln -nfs $(SRCDIR)/Makefile . ; fi > - $(Q)$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR) clean > + $(Q)$(MAKE) -C $(RTE_KERNELDIR) M=$(CURDIR) O=$(RTE_KERNELDIR_OUT) clean > @$(foreach FILE,$(SRCS-y) $(SRCS-n) $(SRCS-),\ > if [ -h $(notdir $(FILE)) ]; then rm -f $(notdir $(FILE)) ; fi > ;) > @if [ -h $(notdir Makefile) ]; then rm -f $(notdir Makefile) ; fi >