From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm0-f41.google.com (mail-wm0-f41.google.com [74.125.82.41]) by dpdk.org (Postfix) with ESMTP id 4BBA22E81 for ; Thu, 3 Dec 2015 14:46:57 +0100 (CET) Received: by wmww144 with SMTP id w144so21742455wmw.1 for ; Thu, 03 Dec 2015 05:46:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=6wind-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=TxwM7LMYz03x0qXnivq+SowBw0R8kqR+sj03rn0PkQY=; b=l+FCwzUY7EqJloEeL8J+iyIADHejkZnxL59X1mTH+LZxFxBt1x0jWHgLEBF2IKWmUq VRY6hUS9V6Q8UxaYab+rxP1SSxcUMED5xgm4295kvsFxXVGFwQ8YpGRJ++X3BdypvRRa J5o8ZqdhEARluQXuA9j3lqDPaSMBfRqf4s3O+JKp03VS43AQPMezF/O2HANFfBXt9pjA Fq/fbn/HATcIBu2kYvfMm8iuygi2eaq+PLD+KbB/T9f8uHCecIz5BF3AHJmtd6IFdxeT VBQ3jhE9AGpKspeVuDA/TYWn+IK0sBnABHYpYnpIEKMvYklsONNTXG7oLd1taHBHHe1A 6wsA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=TxwM7LMYz03x0qXnivq+SowBw0R8kqR+sj03rn0PkQY=; b=avoJH3/ZDVTRS7ONJORufnTl0S7EA2c/wHIK5bOmfZB+NOCn3u4B1PHmXLHrm4gitx D7FMRyXSekiBv3FUjIcd2gP+YMpURcH/0Otbrz9KKgWbqlRkghfLdR09kvdoXtBXePjt bFK+3awF4e5g/j3kFI3jXBIpBJ+6XoRWzi4cxTchq8jsDjI0knJlgT74m+WkGFe9rqDT wiNaOXw6nm2kCzSQyDj+PTK0m+wY5vdOzymuT4cdmfw5fq26hWMoQuTZ9TuGOLqsC5tk IPCWMfXecZ5QhAB5QWUbCI9bvcw4WdlPTIN2eQpV+8WACdojbPCmYm5VmESnBsmMkdKB s6cg== X-Gm-Message-State: ALoCoQm4jCDZ+I6KkN9Y83kNBFn6k1QJ3UPz0+v2l0fKH7Y6nYyQft7kjMGsFT5+VKzWXWgbGJ4A X-Received: by 10.194.109.2 with SMTP id ho2mr12676645wjb.40.1449150417134; Thu, 03 Dec 2015 05:46:57 -0800 (PST) Received: from XPS13.dev.6wind.com (guy78-3-82-239-227-177.fbx.proxad.net. [82.239.227.177]) by smtp.gmail.com with ESMTPSA id k133sm8063912wmg.18.2015.12.03.05.46.50 (version=TLSv1/SSLv3 cipher=OTHER); Thu, 03 Dec 2015 05:46:51 -0800 (PST) From: Thomas Monjalon To: dev@dpdk.org Date: Thu, 3 Dec 2015 14:45:27 +0100 Message-Id: <1449150340-21984-1-git-send-email-thomas.monjalon@6wind.com> X-Mailer: git-send-email 2.5.2 In-Reply-To: <1449118929-19962-1-git-send-email-thomas.monjalon@6wind.com> References: <1449118929-19962-1-git-send-email-thomas.monjalon@6wind.com> Subject: [dpdk-dev] [PATCH v3 00/13] standard make install 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: Thu, 03 Dec 2015 13:46:57 -0000 Following the recent discussions, this is a proposal to have a standard installation process while keeping compatibility with most of the old behaviours. v2 changes: - fix default build dir - RTE_TARGET subdir in $(sdkdir). - better kerneldir defaults - fix dpdk_nic_bind symlink - always install doc if generated - doc - pkg/dpdk.spec v3 changes: - fix install in a clean dir - take responsibility in MAINTAINERS More details below and in the commit messages. These variables can be overriden: kerneldir ?= /lib/modules/$(shell uname -r)/extra/dpdk prefix ?= /usr/local exec_prefix ?= $(prefix) bindir ?= $(exec_prefix)/bin sbindir ?= $(exec_prefix)/sbin libdir ?= $(exec_prefix)/lib includedir ?= $(prefix)/include/dpdk datarootdir ?= $(prefix)/share docdir ?= $(datarootdir)/doc/dpdk datadir ?= $(datarootdir)/dpdk sdkdir ?= $(datadir) targetdir ?= $(datadir)/$(RTE_TARGET) All paths are prefixed with $(DESTDIR) One rule install = install-runtime install-kmod install-sdk install-doc -------- System-wise install example with DESTDIR= prefix=/usr kerneldir=/lib/modules/kver/extra # make install-runtime /usr/bin/testpmd /usr/lib/libethdev* /usr/lib/librte_* /usr/sbin/dpdk_nic_bind -> /usr/share/dpdk/tools/dpdk_nic_bind.py /usr/share/dpdk/tools/ # make install-kmod /lib/modules/kver/extra/ # make install-sdk /usr/include/dpdk/ /usr/share/dpdk/mk/ /usr/share/dpdk/scripts/ /usr/share/dpdk/x86_64-default-linuxapp-gcc/.config /usr/share/dpdk/x86_64-default-linuxapp-gcc/include -> /usr/include/dpdk/ /usr/share/dpdk/x86_64-default-linuxapp-gcc/lib -> /usr/lib/ # make install-doc /usr/share/doc/dpdk/api/ /usr/share/doc/dpdk/guides/ /usr/share/dpdk/examples/ -------- Local install example with old (compatible) command: # make install T=x86_64-native-linuxapp-gcc DESTDIR=install would be equivalent to: # make config T=x86_64-native-linuxapp-gcc 0=x86_64-native-linuxapp-gcc # make O=x86_64-native-linuxapp-gcc # make install O=x86_64-native-linuxapp-gcc prefix= DESTDIR=install install/bin/testpmd install/include/dpdk/ install/kmod/ install/lib/ install/sbin/dpdk_nic_bind -> ../share/dpdk/tools/dpdk_nic_bind.py install/share/doc/dpdk/ install/share/dpdk/examples/ install/share/dpdk/mk/ install/share/dpdk/scripts/ install/share/dpdk/tools/ install/share/dpdk/x86_64-native-linuxapp-gcc/.config install/share/dpdk/x86_64-native-linuxapp-gcc/include -> install/include/dpdk/ install/share/dpdk/x86_64-native-linuxapp-gcc/lib -> install/lib/ It should be usable to build some applications as before: # make -C examples/helloworld RTE_SDK=$(readlink -m install) RTE_TARGET=x86_64-native-linuxapp-gcc The RTE_SDK directory must point to install/share/dpdk with a default install. -------- Thomas Monjalon (13): mk: remove testall mk: remove multi-target install mk: move installation procedure in install rule mk: install a standard cutomizable tree mk: introduce new install syntax mk: split install rule mk: install kernel modules mk: install binding tool in sbin directory mk: install doc mk: install examples app/proc_info: rename binary with prefix pkg: update RPM with standard install maintainers: take responsibility for build system MAINTAINERS | 2 +- app/proc_info/Makefile | 2 +- doc/build-sdk-quick.txt | 11 +- doc/guides/linux_gsg/build_dpdk.rst | 16 --- doc/guides/prog_guide/dev_kit_root_make_help.rst | 28 +---- doc/guides/sample_app_ug/proc_info.rst | 8 +- mk/internal/rte.extvars.mk | 4 + mk/rte.sdkbuild.mk | 16 --- mk/rte.sdkinstall.mk | 150 +++++++++++++++++------ mk/rte.sdkroot.mk | 11 +- mk/rte.sdktest.mk | 4 +- mk/rte.sdktestall.mk | 57 --------- mk/rte.vars.mk | 10 +- pkg/dpdk.spec | 59 +++------ tools/setup.sh | 31 ++--- 15 files changed, 167 insertions(+), 242 deletions(-) delete mode 100644 mk/rte.sdktestall.mk -- 2.5.2