From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 1DBFA8E7A for ; Tue, 10 Nov 2015 18:07:28 +0100 (CET) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga102.jf.intel.com with ESMTP; 10 Nov 2015 09:07:20 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.20,271,1444719600"; d="scan'208";a="682292337" Received: from mcarril6-mobl.amr.corp.intel.com (HELO mcarril6-mobl.zpn.intel.com) ([10.219.16.162]) by orsmga003.jf.intel.com with ESMTP; 10 Nov 2015 09:07:17 -0800 From: Mario Carrillo To: dev@dpdk.org Date: Tue, 10 Nov 2015 11:07:31 -0600 Message-Id: <1447175260-26162-2-git-send-email-mario.alfredo.c.arevalo@intel.com> X-Mailer: git-send-email 2.6.1.120.g24a00ef In-Reply-To: <1447175260-26162-1-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 Subject: [dpdk-dev] [PATCH v6 01/10] mk: Add rule for installing headers 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: Tue, 10 Nov 2015 17:07:30 -0000 Add hierarchy-file support to the DPDK headers, when invoking "make install-headers" headers will be installed in: $(DESTDIR)/$(INCLUDE_DIR) where INCLUDE_DIR=$(RTE_PREFIX)/include/dpdk and RTE_PREFIX=/usr/local by default, you can override RTE_PREFIX and INCLUDE_DIR vars. 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 86c98a5..2daae1d 100644 --- a/mk/rte.sdkinstall.mk +++ b/mk/rte.sdkinstall.mk @@ -41,6 +41,11 @@ endif # x86_64-native-*-gcc ifndef T T=* +ifneq (,$(wildcard $(RTE_OUTPUT)/.config)) +RTE_PREFIX ?= /usr/local +INCLUDE_DIR ?= $(RTE_PREFIX)/include/dpdk +HSLINKS := $(shell find $(RTE_OUTPUT)/include/ -name *.h) +endif endif # @@ -74,6 +79,22 @@ install: $(INSTALL_TARGETS) $(Q)$(MAKE) all O=$(BUILD_DIR)/$* # +# install headers in /usr/local/include/dpdk by default +# RTE_PREFIX and INCLUDE_DIR can be overridden. +# +.PHONY: install-headers +install-headers: + @echo ================== Installing headers; + @if [ ! -z "${HSLINKS}" ]; then \ + for HSLINK in ${HSLINKS}; do \ + HEADER=$$(readlink -f $$HSLINK); \ + HEADER_DIR=$$(dirname $$HSLINK | sed 's/.*include\/*//'); \ + [ -d $(DESTDIR)/$(INCLUDE_DIR)/$$HEADER_DIR ] || mkdir -p $(DESTDIR)/$(INCLUDE_DIR)/$$HEADER_DIR; \ + cp -rf $$HEADER ${DESTDIR}/${INCLUDE_DIR}/$$HEADER_DIR; \ + echo installing: $$HEADER; \ + done \ + fi +# # uninstall: remove all built sdk # UNINSTALL_TARGETS := $(addsuffix _uninstall,\ diff --git a/mk/rte.sdkroot.mk b/mk/rte.sdkroot.mk index e8423b0..8477a2b 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 uninstall -install uninstall: +.PHONY: install install-headers uninstall +install install-headers uninstall: $(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkinstall.mk $@ .PHONY: doc help -- 2.6.1.120.g24a00ef