[v2] mk: allow renaming of build directories

Message ID 20181112122615.62964-1-bruce.richardson@intel.com (mailing list archive)
State Accepted, archived
Delegated to: Thomas Monjalon
Headers
Series [v2] mk: allow renaming of build directories |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/mellanox-Performance-Testing success Performance Testing PASS
ci/intel-Performance-Testing success Performance Testing PASS
ci/Intel-compilation success Compilation OK

Commit Message

Bruce Richardson Nov. 12, 2018, 12:26 p.m. UTC
  When building using make, the Makefile in the build directory contained
the name of the build directory to be passed as an "O=" parameter to
the DPDK SDK makefiles. Unfortunately, this meant that the compilation
would always fail if the build directory was renamed. To remove this
limitation, we can use $(CURDIR) instead of the directory name.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>

---
v2: remove comment at the top of the script about the now-deleted
    second parameter.
---
 buildtools/gen-build-mk.sh | 5 ++---
 mk/rte.sdkconfig.mk        | 3 +--
 2 files changed, 3 insertions(+), 5 deletions(-)
  

Comments

Thomas Monjalon Nov. 14, 2018, 12:46 a.m. UTC | #1
12/11/2018 13:26, Bruce Richardson:
> When building using make, the Makefile in the build directory contained
> the name of the build directory to be passed as an "O=" parameter to
> the DPDK SDK makefiles. Unfortunately, this meant that the compilation
> would always fail if the build directory was renamed. To remove this
> limitation, we can use $(CURDIR) instead of the directory name.
> 
> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>

Applied, thanks
  

Patch

diff --git a/buildtools/gen-build-mk.sh b/buildtools/gen-build-mk.sh
index c18b205e3..636920b63 100755
--- a/buildtools/gen-build-mk.sh
+++ b/buildtools/gen-build-mk.sh
@@ -5,7 +5,6 @@ 
 # Auto-generate a Makefile in build directory
 # Args:
 #   $1: path of project src root
-#   $2: path of build dir (can be relative to $1)
 
 echo "# Automatically generated by gen-build-mk.sh"
 echo
@@ -18,7 +17,7 @@  echo
 echo "MAKEFLAGS += --no-print-directory"
 echo
 echo "all:"
-echo "	@\$(MAKE) -C $1 O=$2"
+echo "	@\$(MAKE) -C $1 O=\$(CURDIR)"
 echo
 echo "%::"
-echo "	@\$(MAKE) -C $1 O=$2 \$@"
+echo "	@\$(MAKE) -C $1 O=\$(CURDIR) \$@"
diff --git a/mk/rte.sdkconfig.mk b/mk/rte.sdkconfig.mk
index d90d62cc6..fa77331cb 100644
--- a/mk/rte.sdkconfig.mk
+++ b/mk/rte.sdkconfig.mk
@@ -114,8 +114,7 @@  SDK_RELPATH=$(shell $(RTE_SDK)/buildtools/relpath.sh $(abspath $(RTE_SRCDIR)) \
 OUTPUT_RELPATH=$(shell $(RTE_SDK)/buildtools/relpath.sh $(abspath $(RTE_OUTPUT)) \
 				$(abspath $(RTE_SRCDIR)))
 $(RTE_OUTPUT)/Makefile: | $(RTE_OUTPUT)
-	$(Q)$(RTE_SDK)/buildtools/gen-build-mk.sh $(SDK_RELPATH) $(OUTPUT_RELPATH) \
-		> $(RTE_OUTPUT)/Makefile
+	$(Q)$(RTE_SDK)/buildtools/gen-build-mk.sh $(SDK_RELPATH) > $@
 
 # clean installed files, and generate a new config header file
 # if NODOTCONF variable is defined, don't try to rebuild .config