DPDK patches and discussions
 help / color / mirror / Atom feed
From: Thomas Monjalon <thomas.monjalon@6wind.com>
To: dev@dpdk.org
Subject: [dpdk-dev] [PATCH 1/3] mk: allow to specify O= in install rule
Date: Fri, 26 Jul 2013 15:13:43 +0200	[thread overview]
Message-ID: <ace35b8a40a768834d2ca082fb394aa6b5ab4147.1374843652.git.thomas.monjalon@6wind.com> (raw)
In-Reply-To: <cover.1374843652.git.thomas.monjalon@6wind.com>
In-Reply-To: <cover.1374843652.git.thomas.monjalon@6wind.com>

From: Olivier Matz <olivier.matz@6wind.com>

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 <olivier.matz@6wind.com>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
---
 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: <arch-machine-execenv-toolchain>
 			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

  reply	other threads:[~2013-07-26 13:13 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-26 13:13 [dpdk-dev] [PATCH 0/3] real "make install" rule Thomas Monjalon
2013-07-26 13:13 ` Thomas Monjalon [this message]
2013-07-26 13:13 ` [dpdk-dev] [PATCH 2/3] mk: in install rule, don't overwrite .config if it already exists Thomas Monjalon
2013-07-26 13:13 ` [dpdk-dev] [PATCH 3/3] mk: allow to specify DESTDIR in build rule Thomas Monjalon
2013-07-26 13:36 ` [dpdk-dev] [PATCH 0/3] real "make install" rule Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ace35b8a40a768834d2ca082fb394aa6b5ab4147.1374843652.git.thomas.monjalon@6wind.com \
    --to=thomas.monjalon@6wind.com \
    --cc=dev@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).