From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wi0-f173.google.com (mail-wi0-f173.google.com [209.85.212.173]) by dpdk.org (Postfix) with ESMTP id F19BF592F for ; Fri, 26 Jul 2013 15:13:31 +0200 (CEST) Received: by mail-wi0-f173.google.com with SMTP id en1so743882wid.0 for ; Fri, 26 Jul 2013 06:13:54 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=from:to:subject:date:message-id:x-mailer:in-reply-to:references :in-reply-to:references:x-gm-message-state; bh=IQO/SAXizxMj8Uf+wb9nbj/ofzzGuaAbvBWy2shxcho=; b=mCj0orJCGFSDlNj+Y5B6jmD7DftOZJUbH53XxtVVdKGm2nyWoqtU4eMClzwMQ70YXS rtCLTcaKCzf8n/DAU+0JihK8pPWNgL/jGgndQ2p+Kwd26BHUuMKp9LVKJw+RDhfND2V6 uQHcB+qQGit7l2CftBMqxPQ/LufkASFYnwfJpPhe7eHP1/V8sSDew9enMrzQdGSGQCNr gGwLNGL5SzXBpqoSyHPbFGHlhUPuuDO/zsZaCA0A3SUldX3jRU03NUDLO1gnQB54mYgX hFy/DnfnkDpIwBQ0kBXoXRsLbQXeIaYxL+f1clyA6jc89BzlPftt/UpVz93zmsTy5WA5 Altw== X-Received: by 10.180.89.231 with SMTP id br7mr5776884wib.19.1374844434830; Fri, 26 Jul 2013 06:13:54 -0700 (PDT) Received: from 6wind.com (6wind.net2.nerim.net. [213.41.180.237]) by mx.google.com with ESMTPSA id fb2sm4748262wic.4.2013.07.26.06.13.52 for (version=TLSv1 cipher=RC4-SHA bits=128/128); Fri, 26 Jul 2013 06:13:53 -0700 (PDT) Received: by 6wind.com (sSMTP sendmail emulation); Fri, 26 Jul 2013 15:13:51 +0200 From: Thomas Monjalon To: dev@dpdk.org Date: Fri, 26 Jul 2013 15:13:43 +0200 Message-Id: X-Mailer: git-send-email 1.7.10.4 In-Reply-To: References: In-Reply-To: References: X-Gm-Message-State: ALoCoQn/wAJKPTV3FmStoC/Nlsq6gKUeutYVcbmvTQlTNXasxkwgmkCqE3IgBXwZb/a2itd5QXXc Subject: [dpdk-dev] [PATCH 1/3] mk: allow to specify O= in install rule 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: Fri, 26 Jul 2013 13:13:32 -0000 From: Olivier Matz This variable $(O) can be used to specify a build directory when doing an "install" procedure. The default is ".", which means that targets will be built in the source dpdk. This option is useful to compile outside of the source tree that may be read-only. Signed-off-by: Olivier Matz Acked-by: Thomas Monjalon --- doc/build-sdk-quick.txt | 4 ++-- mk/rte.sdkinstall.mk | 15 +++++++-------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/doc/build-sdk-quick.txt b/doc/build-sdk-quick.txt index c839676..d66f0d5 100644 --- a/doc/build-sdk-quick.txt +++ b/doc/build-sdk-quick.txt @@ -5,7 +5,7 @@ Build commands all same as build (default rule) build build in a configured directory clean remove files but keep configuration - install build many targets (wildcard allowed) in fixed directories + install build many targets (wildcard allowed) uninstall remove all installed targets Build variables CROSS toolchain prefix @@ -14,7 +14,7 @@ Build variables EXTRA_LDFLAGS linker options V verbose D debug dependencies - O output directory (default: build/) - cannot be used with install + O output directory (default: build/ - install default: ./) T target template (install default: *) - used with config or install format: templates in config/defconfig_* diff --git a/mk/rte.sdkinstall.mk b/mk/rte.sdkinstall.mk index 022cd70..a280234 100644 --- a/mk/rte.sdkinstall.mk +++ b/mk/rte.sdkinstall.mk @@ -30,10 +30,11 @@ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # +# Build directory is given with O= ifdef O -ifeq ("$(origin O)", "command line") -$(error "Cannot use O= with install target") -endif +BUILD_DIR=$(O) +else +BUILD_DIR=. endif # Targets to install can be specified in command line. It can be a @@ -56,8 +57,8 @@ install: $(INSTALL_TARGETS) %_install: @echo ================== Installing $* - $(Q)$(MAKE) config T=$* O=$* - $(Q)$(MAKE) all O=$* + $(Q)$(MAKE) config T=$* O=$(BUILD_DIR)/$* + $(Q)$(MAKE) all O=$(BUILD_DIR)/$* # # uninstall: remove all built sdk @@ -70,6 +71,4 @@ uninstall: $(UNINSTALL_TARGETS) %_uninstall: @echo ================== Uninstalling $* - $(Q)rm -rf $* - - + $(Q)rm -rf $(BUILD_DIR)/$* -- 1.7.10.4