[dpdk-dev,v4,3/7] mk: Add rule for installing libraries
Commit Message
Add hierarchy-file support to the DPDK libraries.
When invoking "make install-lib" libraries will
be installed in:
$(DESTDIR)/$(LIB_DIR)
If architecture is 64 bits then LIB_DIR=/usr/lib64
else LIB_DIR=/usr/lib by default.
You can override LIB_DIR var.
This hierarchy is based on:
http://www.freedesktop.org/software/systemd/man/file-hierarchy.html
Signed-off-by: Mario Carrillo <mario.alfredo.c.arevalo@intel.com>
---
mk/rte.sdkinstall.mk | 21 +++++++++++++++++++++
mk/rte.sdkroot.mk | 4 ++--
2 files changed, 23 insertions(+), 2 deletions(-)
@@ -48,6 +48,14 @@ HSLINKS := $(wildcard $(RTE_OUTPUT)/include/*)
BINARY_FILES := $(patsubst %.map,,$(wildcard $(RTE_OUTPUT)/app/*))
NIC_FILES := $(wildcard $(BUILD_DIR)/tools/*.py)
BINARY_FILES += $(NIC_FILES)
+LIBS := $(wildcard $(RTE_OUTPUT)/lib/*)
+include $(BUILD_DIR)/build/.config
+RTE_ARCH := $(CONFIG_RTE_ARCH:"%"=%)
+ifeq ($(RTE_ARCH),x86_64)
+LIB_DIR ?= /usr/lib64
+else
+LIB_DIR ?= /usr/lib
+endif
endif
endif
@@ -106,6 +114,19 @@ install-bin:
echo installing: $$BIN_FILE; \
done
#
+# if architecture is 64 bits install in /usr/lib64
+# else /usr/lib by default
+# LIB_DIR can be overridden.
+#
+.PHONY: install-lib
+install-lib:
+ @echo ================== Installing libraries
+ @[ -d $(DESTDIR)/$(LIB_DIR) ] || mkdir -p $(DESTDIR)/$(LIB_DIR)
+ @for LIB in ${LIBS}; do \
+ cp -rf $$LIB ${DESTDIR}/${LIB_DIR}; \
+ echo installing: $$LIB; \
+ done
+#
# uninstall: remove all built sdk
#
UNINSTALL_TARGETS := $(addsuffix _uninstall,\
@@ -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 install-bin uninstall
-install install-headers install-bin uninstall:
+.PHONY: install install-headers install-bin install-lib uninstall
+install install-headers install-bin install-lib uninstall:
$(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkinstall.mk $@
.PHONY: doc help