Add hierarchy-file support to the DPDK libraries, when invoking "make install-lib" libraries will be installed in: $(DESTDIR)/$(libdir) where libdir=$(exec_prefix)/usr/lib prefix=/usr/local and exec_prefix=$(prefix) by default, you can override prefix, exec_prefix and libdir 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 | 16 ++++++++++++++++ mk/rte.sdkroot.mk | 4 ++-- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/mk/rte.sdkinstall.mk b/mk/rte.sdkinstall.mk index 93de06b..ff99afe 100644 --- a/mk/rte.sdkinstall.mk +++ b/mk/rte.sdkinstall.mk @@ -46,9 +46,11 @@ prefix ?= /usr/local exec_prefix ?= $(prefix) includedir ?= $(prefix)/include/dpdk bindir ?= $(exec_prefix)/bin +libdir ?= $(exec_prefix)/lib HSLINKS := $(shell find $(RTE_OUTPUT)/include/ -name *.h) BINARY_FILES := $(patsubst %.map,,$(wildcard $(RTE_OUTPUT)/app/*)) NIC_FILES := $(wildcard $(RTE_SDK)/tools/*.py) +LIBS := $(wildcard $(RTE_OUTPUT)/lib/*) BINARY_FILES += $(NIC_FILES) endif endif @@ -113,6 +115,20 @@ install-bin: done \ fi # +# install libs in /usr/local/lib by default +# "prefix" and "libdir" can be overridden. +# +.PHONY: install-lib +install-lib: + @echo ================== Installing libraries + @if [ ! -z "${LIBS}" ]; then \ + [ -d $(DESTDIR)/$(libdir) ] || mkdir -p $(DESTDIR)/$(libdir); \ + for LIB in ${LIBS}; do \ + cp -rf $$LIB ${DESTDIR}/${libdir}; \ + echo installing: $$LIB; \ + done \ + fi +# # uninstall: remove all built sdk # UNINSTALL_TARGETS := $(addsuffix _uninstall,\ diff --git a/mk/rte.sdkroot.mk b/mk/rte.sdkroot.mk index 24eaa60..7a72c9b 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 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 -- 2.6.3