From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mario Carrillo Subject: [PATCH v6 04/10] mk: Add rule for installing modules Date: Tue, 10 Nov 2015 11:07:34 -0600 Message-ID: <1447175260-26162-5-git-send-email-mario.alfredo.c.arevalo@intel.com> References: <1442608390-12537-1-git-send-email-mario.alfredo.c.arevalo@intel.com> <1447175260-26162-1-git-send-email-mario.alfredo.c.arevalo@intel.com> Cc: jos.c.venegas.munoz@intel.com To: dev@dpdk.org Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id 31C8C2E83 for ; Tue, 10 Nov 2015 18:07:23 +0100 (CET) In-Reply-To: <1447175260-26162-1-git-send-email-mario.alfredo.c.arevalo@intel.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Add hierarchy-file support to the DPDK modules, when invoking "make install-mod" modules will be installed in: $(DESTDIR)/$(KMOD_DIR) if RTE_EXEC_ENV=linuxapp then KMOD_DIR=/lib/modules/$(uname -r)/extra/drivers/dpdk else KMOD_DIR=/boot/modules by default, you can override KMOD_DIR var. This hierarchy is based on: http://www.freedesktop.org/software/systemd/man/file-hierarchy.html Signed-off-by: Mario Carrillo --- mk/rte.sdkinstall.mk | 24 ++++++++++++++++++++++++ mk/rte.sdkroot.mk | 4 ++-- 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/mk/rte.sdkinstall.mk b/mk/rte.sdkinstall.mk index 4f06591..2ba8a52 100644 --- a/mk/rte.sdkinstall.mk +++ b/mk/rte.sdkinstall.mk @@ -50,7 +50,15 @@ 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/*) +MODULES := $(wildcard $(RTE_OUTPUT)/kmod/*) BINARY_FILES += $(NIC_FILES) +include $(RTE_OUTPUT)/.config +RTE_EXEC_ENV := $(CONFIG_RTE_EXEC_ENV:"%"=%) +ifeq ($(RTE_EXEC_ENV),linuxapp) +KMOD_DIR ?= /lib/modules/$(shell uname -r)/extra/drivers/dpdk +else +KMOD_DIR ?= /boot/modules +endif endif endif @@ -129,6 +137,22 @@ install-lib: done \ fi # +# if RTE_EXEC_ENV=linuxapp modules install in: +# /lib/modules/$(uname -r)/extra/drivers/dpdk +# else /boot/modules/ by default +# KERNEL_DIR can be overridden. +# +.PHONY: install-mod +install-mod: + @echo ================== Installing modules + @if [ ! -z "${MODULES}" ]; then \ + [ -d $(DESTDIR)/$(KMOD_DIR) ] || mkdir -p $(DESTDIR)/$(KMOD_DIR); \ + for MOD in ${MODULES}; do \ + cp -rf $$MOD ${DESTDIR}/${KMOD_DIR}; \ + echo installing: $$MOD; \ + done \ + fi +# # uninstall: remove all built sdk # UNINSTALL_TARGETS := $(addsuffix _uninstall,\ diff --git a/mk/rte.sdkroot.mk b/mk/rte.sdkroot.mk index 7a72c9b..e652218 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 install-lib uninstall -install install-headers install-bin install-lib uninstall: +.PHONY: install install-headers install-bin install-lib install-mod uninstall +install install-headers install-bin install-lib install-mod uninstall: $(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkinstall.mk $@ .PHONY: doc help -- 2.6.1.120.g24a00ef