[dpdk-dev,v3,03/13] mk: move installation procedure in install rule

Message ID 1449150340-21984-4-git-send-email-thomas.monjalon@6wind.com (mailing list archive)
State Accepted, archived
Headers

Commit Message

Thomas Monjalon Dec. 3, 2015, 1:45 p.m. UTC
  The real installation was called "binary install" and was done
after the build when DESTDIR was specified.
Remove this limitation and move the code in install rule only.

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Panu Matilainen <pmatilai@redhat.com>
---
 mk/rte.sdkbuild.mk   | 16 ----------------
 mk/rte.sdkinstall.mk | 21 ++++++++++++++++++---
 mk/rte.sdkroot.mk    |  1 +
 3 files changed, 19 insertions(+), 19 deletions(-)
  

Patch

diff --git a/mk/rte.sdkbuild.mk b/mk/rte.sdkbuild.mk
index 38ec7bd..85f603c 100644
--- a/mk/rte.sdkbuild.mk
+++ b/mk/rte.sdkbuild.mk
@@ -29,8 +29,6 @@ 
 #   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 #   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-# If DESTDIR variable is given, install binary dpdk
-
 #
 # include rte.vars.mk if config file exists
 #
@@ -61,20 +59,6 @@  CLEANDIRS = $(addsuffix _clean,$(ROOTDIRS-y) $(ROOTDIRS-n) $(ROOTDIRS-))
 .PHONY: build
 build: $(ROOTDIRS-y)
 	@echo "Build complete [$(RTE_TARGET)]"
-ifneq ($(DESTDIR),)
-	$(Q)mkdir -p $(DESTDIR)
-	$(Q)tar -C $(RTE_SDK) -cf - mk scripts/*.sh | tar -C $(DESTDIR) -x \
-	  --keep-newer-files --warning=no-ignore-newer -f -
-	$(Q)mkdir -p $(DESTDIR)/`basename $(RTE_OUTPUT)`
-	$(Q)tar -C $(RTE_OUTPUT) -chf - \
-	  --exclude app --exclude hostapp --exclude build \
-	  --exclude Makefile --exclude .depdirs . | \
-	  tar -C $(DESTDIR)/`basename $(RTE_OUTPUT)` -x --keep-newer-files \
-	  --warning=no-ignore-newer -f -
-	$(Q)install -D $(RTE_OUTPUT)/app/testpmd \
-	  $(DESTDIR)/`basename $(RTE_OUTPUT)`/app/testpmd
-	@echo Installation in $(DESTDIR) complete
-endif
 
 .PHONY: clean
 clean: $(CLEANDIRS)
diff --git a/mk/rte.sdkinstall.mk b/mk/rte.sdkinstall.mk
index 0b80104..c5d0881 100644
--- a/mk/rte.sdkinstall.mk
+++ b/mk/rte.sdkinstall.mk
@@ -36,9 +36,8 @@ 
 O ?= .
 RTE_OUTPUT := $O/$T
 
-.PHONY: install
-install:
-	@echo ================== Installing $T
+.PHONY: pre_install
+pre_install:
 	$(Q)if [ ! -f $(RTE_OUTPUT)/.config ]; then \
 		$(MAKE) config O=$(RTE_OUTPUT); \
 	elif cmp -s $(RTE_OUTPUT)/.config.orig $(RTE_OUTPUT)/.config; then \
@@ -55,3 +54,19 @@  install:
 		echo "Using local configuration"; \
 	fi
 	$(Q)$(MAKE) all O=$(RTE_OUTPUT)
+
+.PHONY: install
+install:
+	@echo ================== Installing $(DESTDIR)
+	$(Q)mkdir -p $(DESTDIR)
+	$(Q)tar -C $(RTE_SDK) -cf - mk scripts/*.sh | tar -C $(DESTDIR) -x \
+	  --keep-newer-files --warning=no-ignore-newer -f -
+	$(Q)mkdir -p $(DESTDIR)/$T
+	$(Q)tar -C $(RTE_OUTPUT) -chf - \
+	  --exclude app --exclude hostapp --exclude build \
+	  --exclude Makefile --exclude .depdirs . | \
+	  tar -C $(DESTDIR)/$T -x --keep-newer-files \
+	  --warning=no-ignore-newer -f -
+	$(Q)install -D $(RTE_OUTPUT)/app/testpmd \
+	  $(DESTDIR)/$T/app/testpmd
+	@echo Installation in $(DESTDIR) complete
diff --git a/mk/rte.sdkroot.mk b/mk/rte.sdkroot.mk
index 9fdecf4..533afe9 100644
--- a/mk/rte.sdkroot.mk
+++ b/mk/rte.sdkroot.mk
@@ -95,6 +95,7 @@  test fast_test ring_test mempool_test perf_test coverage:
 
 .PHONY: install
 install:
+	$(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkinstall.mk pre_install
 	$(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkinstall.mk $@
 
 .PHONY: doc help