From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id 8795F924C for ; Mon, 5 Oct 2015 22:20:13 +0200 (CEST) Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga102.fm.intel.com with ESMTP; 05 Oct 2015 13:20:14 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.17,640,1437462000"; d="scan'208";a="804228114" Received: from mcarril6-mobl.zpn.intel.com ([10.219.24.17]) by fmsmga001.fm.intel.com with ESMTP; 05 Oct 2015 13:20:11 -0700 From: Mario Carrillo To: dev@dpdk.org Date: Mon, 5 Oct 2015 15:20:03 -0500 Message-Id: <1444076406-30141-5-git-send-email-mario.alfredo.c.arevalo@intel.com> X-Mailer: git-send-email 2.1.0 In-Reply-To: <1444076406-30141-1-git-send-email-mario.alfredo.c.arevalo@intel.com> References: <1442608390-12537-1-git-send-email-mario.alfredo.c.arevalo@intel.com> <1444076406-30141-1-git-send-email-mario.alfredo.c.arevalo@intel.com> Subject: [dpdk-dev] [PATCH v4 4/7] mk: Add rule for installing modules X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Oct 2015 20:20:13 -0000 Add hierarchy-file support to the DPDK modules. When invoking "make install-mod" modules will be installed in: $(DESTDIR)/$(KERNEL_DIR) If RTE_EXEC_ENV=linuxapp then KERNEL_DIR=/lib/modules/$(uname -r)/extra/drivers/dpdk else KERNEL_DIR=/boot/modules by default. You can override KERNEL_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 | 21 +++++++++++++++++++++ mk/rte.sdkroot.mk | 4 ++-- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/mk/rte.sdkinstall.mk b/mk/rte.sdkinstall.mk index 36a59fc..628d9fb 100644 --- a/mk/rte.sdkinstall.mk +++ b/mk/rte.sdkinstall.mk @@ -49,13 +49,20 @@ BINARY_FILES := $(patsubst %.map,,$(wildcard $(RTE_OUTPUT)/app/*)) NIC_FILES := $(wildcard $(BUILD_DIR)/tools/*.py) BINARY_FILES += $(NIC_FILES) LIBS := $(wildcard $(RTE_OUTPUT)/lib/*) +MODULES := $(wildcard $(RTE_OUTPUT)/kmod/*) include $(BUILD_DIR)/build/.config RTE_ARCH := $(CONFIG_RTE_ARCH:"%"=%) +RTE_EXEC_ENV := $(CONFIG_RTE_EXEC_ENV:"%"=%) ifeq ($(RTE_ARCH),x86_64) LIB_DIR ?= /usr/lib64 else LIB_DIR ?= /usr/lib endif +ifeq ($(RTE_EXEC_ENV),linuxapp) +KERNEL_DIR ?= /lib/modules/$(shell uname -r)/extra/drivers/dpdk +else +KERNEL_DIR ?= /boot/modules +endif endif endif @@ -127,6 +134,20 @@ install-lib: echo installing: $$LIB; \ done # +# 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 + @[ -d $(DESTDIR)/$(KERNEL_DIR) ] || mkdir -p $(DESTDIR)/$(KERNEL_DIR) + @for MOD in ${MODULES}; do \ + cp -rf $$MOD ${DESTDIR}/${KERNEL_DIR}; \ + echo installing: $$MOD; \ + done +# # 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.1.0