[dpdk-dev] [PATCH v1] mk: support building with renamed makefile
Olivier Matz
olivier.matz at 6wind.com
Mon Feb 5 10:29:05 CET 2018
On Mon, Jan 22, 2018 at 10:59:05AM +0000, Marko Kovacevic wrote:
> The build system made a recursive call to "make" after
> creating the build directory. This recursive call used
> the hard-coded filename "Makefile", which prevented
> builds from working if the file was renamed and make
> called using "make -f". Taking the filename from
> MAKEFILES_LIST make variable fixes this.
>
> Fixes: af75078fece3 ("first public release")
> Cc: stable at dpdk.org
>
> Signed-off-by: Marko Kovacevic <marko.kovacevic at intel.com>
> ---
> mk/internal/rte.extvars.mk | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/mk/internal/rte.extvars.mk b/mk/internal/rte.extvars.mk
> index 94f27e9..19594da 100644
> --- a/mk/internal/rte.extvars.mk
> +++ b/mk/internal/rte.extvars.mk
> @@ -20,7 +20,7 @@ ifeq ("$(origin M)", "command line")
> RTE_EXTMK := $(abspath $(M))
> endif
> endif
> -RTE_EXTMK ?= $(RTE_SRCDIR)/Makefile
> +RTE_EXTMK ?= $(RTE_SRCDIR)/$(firstword $(MAKEFILE_LIST))
> export RTE_EXTMK
>
> # RTE_SDK_BIN must point to .config, include/ and lib/.
> --
> 2.9.5
>
Hi,
This commit breaks the build of one of our external module:
make[5]: /path/to/ext-module//path/to/ext-module/Makefile: No such file or directory
make[5]: *** No rule to make target '/path/to/ext-module//path/to/ext-module/Makefile'. Stop.
The reason is that entries in $(MAKEFILE_LIST) can be absolute
paths. See:
$ cat test.mk
$(info $(MAKEFILE_LIST))
all:
$ make -f test.mk
test.mk
$ make -f $PWD/test.mk
/home/user/test.mk
Maybe something like this could be better (I didn't try):
RTE_EXTMK ?= $(RTE_SRCDIR)/$(notdir $(firstword $(MAKEFILE_LIST)))
Thanks
Olivier
More information about the dev
mailing list