[dpdk-dev] [PATCH v8 02/11] mk: Add rule for installing app files

Mario Carrillo mario.alfredo.c.arevalo at intel.com
Tue Dec 1 20:39:04 CET 2015


Add hierarchy-file support to the DPDK app files,
nic bind file and cpu layout file
when invoking "make install-bin" app files will
be installed in: $(DESTDIR)/$(bindir)
where bindir=$(exec_prefix)/usr/local/bin
prefix=/usr/local
and exec_prefix=$(prefix) by default,
you can override prefix, exec_prefix and bindir vars.
This hierarchy is based on:
http://www.freedesktop.org/software/systemd/man/file-hierarchy.html
and variables are based on:
https://www.gnu.org/prep/standards/html_node/Directory-Variables.html
https://www.gnu.org/prep/standards/html_node/DESTDIR.html

Signed-off-by: Mario Carrillo <mario.alfredo.c.arevalo at intel.com>
---
 mk/rte.sdkinstall.mk | 19 +++++++++++++++++++
 mk/rte.sdkroot.mk    |  4 ++--
 2 files changed, 21 insertions(+), 2 deletions(-)

diff --git a/mk/rte.sdkinstall.mk b/mk/rte.sdkinstall.mk
index a4a01cf..93de06b 100644
--- a/mk/rte.sdkinstall.mk
+++ b/mk/rte.sdkinstall.mk
@@ -43,8 +43,13 @@ ifndef T
 T=*
 ifneq (,$(wildcard $(RTE_OUTPUT)/.config))
 prefix ?= /usr/local
+exec_prefix ?= $(prefix)
 includedir ?= $(prefix)/include/dpdk
+bindir ?= $(exec_prefix)/bin
 HSLINKS := $(shell find  $(RTE_OUTPUT)/include/ -name *.h)
+BINARY_FILES := $(patsubst %.map,,$(wildcard $(RTE_OUTPUT)/app/*))
+NIC_FILES := $(wildcard $(RTE_SDK)/tools/*.py)
+BINARY_FILES += $(NIC_FILES)
 endif
 endif
 
@@ -94,6 +99,20 @@ install-headers:
 	done \
 	fi
 #
+# install app files in /usr/local/bin by default
+# "prefix" and "bindir" can be overridden.
+#
+.PHONY: install-bin
+install-bin:
+	@echo ================== Installing app files;
+	@if [ ! -z "${BINARY_FILES}" ]; then \
+	[ -d $(DESTDIR)/$(bindir) ] || mkdir -p $(DESTDIR)/$(bindir); \
+	for BIN_FILE in ${BINARY_FILES}; do \
+	cp -rf $$BIN_FILE ${DESTDIR}/${bindir}; \
+	echo installing: $$BIN_FILE; \
+	done \
+	fi
+#
 # uninstall: remove all built sdk
 #
 UNINSTALL_TARGETS := $(addsuffix _uninstall,\
diff --git a/mk/rte.sdkroot.mk b/mk/rte.sdkroot.mk
index 8477a2b..24eaa60 100644
--- a/mk/rte.sdkroot.mk
+++ b/mk/rte.sdkroot.mk
@@ -97,8 +97,8 @@ test fast_test ring_test mempool_test perf_test coverage:
 testall:
 	$(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdktestall.mk $@
 
-.PHONY: install install-headers uninstall
-install install-headers uninstall:
+.PHONY: install install-headers install-bin uninstall
+install install-headers install-bin uninstall:
 	$(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkinstall.mk $@
 
 .PHONY: doc help
-- 
2.6.3



More information about the dev mailing list