All of lore.kernel.org
 help / color / mirror / Atom feed
From: Borislav Petkov <bp@amd64.org>
To: Arnaldo Carvalho de Melo <acme@infradead.org>
Cc: Borislav Petkov <bp@amd64.org>, Ingo Molnar <mingo@kernel.org>,
	Michal Marek <mmarek@suse.cz>, Sam Ravnborg <sam@ravnborg.org>,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v5 5/5] tools: Connect to the kernel build system
Date: Thu, 12 Apr 2012 17:22:56 +0200	[thread overview]
Message-ID: <20120412152256.GH24549@aftab> (raw)
In-Reply-To: <20120411180837.GJ16257@infradead.org>

On Wed, Apr 11, 2012 at 03:08:37PM -0300, Arnaldo Carvalho de Melo wrote:
> Em Wed, Apr 11, 2012 at 03:04:34PM -0300, Arnaldo Carvalho de Melo escreveu:
> > Em Wed, Apr 11, 2012 at 06:36:18PM +0200, Borislav Petkov escreveu:
> > > From: Borislav Petkov <borislav.petkov@amd.com>
> > > 
> > > Now you can do
> > > 
> > > $ make tools/<toolname>
> > > 
> > > from the toplevel kernel directory and have the respective tool built.
> > > 
> > > If you want to build and install it, do
> > > 
> > > $ make tools/<toolname>_install
> > 
> > [acme@sandy linux]$ make -j8 O=/home/git/build/perf tools/perf_install
> > [acme@sandy linux]$ ls -la tools/perf/*.o | wc -l
> > 22
> > 
> > It should have honoured O=
> > 
> > Can you fix this one please? :)
> 
> But that can be on top of this series as the way I use it:

How about the patch below? Sam, it touches the toplevel Makefile because
it needs to not set KBUILD_OUTPUT when we're building tools/* targets.
Pls, let me know if this is ok?

Thanks.

--
From: Borislav Petkov <borislav.petkov@amd.com>
Date: Thu, 12 Apr 2012 17:18:10 +0200
Subject: [PATCH] tools, Makefile: Fix O= building

Make sure

$ make O=/tmp/somedir tools/perf

works with the current toplevel Makefile integration.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
---
 Makefile                       |    9 +++++++--
 tools/scripts/Makefile.include |   18 +++++++++++++++---
 2 files changed, 22 insertions(+), 5 deletions(-)

diff --git a/Makefile b/Makefile
index 23b9ce5a2c2c..2cb2ee2dc6ae 100644
--- a/Makefile
+++ b/Makefile
@@ -98,8 +98,13 @@ ifeq ($(KBUILD_SRC),)
 
 # OK, Make called in directory where kernel src resides
 # Do we want to locate output files in a separate directory?
+#
+# Also, we don't want to set KBUILD_OUTPUT if we're building stuff
+# in tools/
 ifeq ("$(origin O)", "command line")
-  KBUILD_OUTPUT := $(O)
+  ifneq ($(findstring tools/,$(MAKECMDGOALS)),tools/)
+    KBUILD_OUTPUT := $(O)
+  endif
 endif
 
 ifeq ("$(origin W)", "command line")
@@ -1473,7 +1478,7 @@ tools/: FORCE
 	$(Q)$(MAKE) LDFLAGS= MAKEFLAGS= -C $(src)/tools/
 
 tools/%: FORCE
-	$(Q)$(MAKE) LDFLAGS= MAKEFLAGS= -C $(src)/tools/ $*
+	$(Q)$(MAKE) LDFLAGS= MAKEFLAGS= O=$(O) -C $(src)/tools/ $*
 
 # Single targets
 # ---------------------------------------------------------------------------
diff --git a/tools/scripts/Makefile.include b/tools/scripts/Makefile.include
index 87b55a729a5f..297b51d8e4be 100644
--- a/tools/scripts/Makefile.include
+++ b/tools/scripts/Makefile.include
@@ -38,11 +38,18 @@ else
 NO_SUBDIR = :
 endif
 
-QUIET_SUBDIR0  = +$(MAKE) -C # space to separate -C and subdir
-QUIET_SUBDIR1  =
 
 ifneq ($(findstring $(MAKEFLAGS),s),s)
-ifndef V
+ifdef V
+	QUIET_SUBDIR0  = +$(MAKE)
+	QUIET_SUBDIR1  =
+
+	ifdef O
+	  QUIET_SUBDIR0 += O=$(O)
+	endif
+
+	QUIET_SUBDIR0 += -C # space to separate -C and subdir
+else
 	QUIET_CC       = @echo '   ' CC $@;
 	QUIET_AR       = @echo '   ' AR $@;
 	QUIET_LINK     = @echo '   ' LINK $@;
@@ -51,6 +58,11 @@ ifndef V
 	QUIET_SUBDIR0  = +@subdir=
 	QUIET_SUBDIR1  = ;$(NO_SUBDIR) echo '   ' SUBDIR $$subdir; \
 			 $(MAKE) $(PRINT_DIR) -C $$subdir
+
+	ifdef O
+	  QUIET_SUBDIR1 += O=$(O)
+	endif
+
 	QUIET_FLEX     = @echo '   ' FLEX $@;
 	QUIET_BISON    = @echo '   ' BISON $@;
 endif
-- 
1.7.9.3.362.g71319


-- 
Regards/Gruss,
Boris.

Advanced Micro Devices GmbH
Einsteinring 24, 85609 Dornach
GM: Alberto Bozzo
Reg: Dornach, Landkreis Muenchen
HRB Nr. 43632 WEEE Registernr: 129 19551

  parent reply	other threads:[~2012-04-12 15:23 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-11 16:36 [PATCH v5 0/5] tools: Add a toplevel Makefile Borislav Petkov
2012-04-11 16:36 ` [PATCH v5 1/5] tools: Add Makefile.include Borislav Petkov
2012-04-13 18:14   ` [tip:perf/core] " tip-bot for Borislav Petkov
2012-04-11 16:36 ` [PATCH v5 2/5] tools: Cleanup EXTRA_WARNINGS Borislav Petkov
2012-04-13 18:15   ` [tip:perf/core] " tip-bot for Borislav Petkov
2012-04-11 16:36 ` [PATCH v5 3/5] tools: Add a toplevel Makefile Borislav Petkov
2012-04-13 18:16   ` [tip:perf/core] " tip-bot for Borislav Petkov
2012-04-11 16:36 ` [PATCH v5 4/5] tools: Add a help target Borislav Petkov
2012-04-13 18:17   ` [tip:perf/core] " tip-bot for Borislav Petkov
2012-04-11 16:36 ` [PATCH v5 5/5] tools: Connect to the kernel build system Borislav Petkov
2012-04-11 18:04   ` Arnaldo Carvalho de Melo
2012-04-11 18:08     ` Arnaldo Carvalho de Melo
2012-04-11 18:19       ` David Ahern
2012-04-11 19:45         ` Borislav Petkov
2012-04-11 19:52         ` Arnaldo Carvalho de Melo
2012-04-12 15:22       ` Borislav Petkov [this message]
2012-04-12 15:57         ` Sam Ravnborg
2012-04-12 18:33           ` Arnaldo Carvalho de Melo
2012-04-12 19:16             ` Sam Ravnborg
2012-04-12 19:31               ` Arnaldo Carvalho de Melo
2012-04-12 21:17             ` Alex Riesen
2012-04-13 10:45           ` Borislav Petkov
2012-04-11 19:47     ` Borislav Petkov
2012-04-13 18:18   ` [tip:perf/core] " tip-bot for Borislav Petkov
2012-04-14  6:35     ` Alex Riesen

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=20120412152256.GH24549@aftab \
    --to=bp@amd64.org \
    --cc=acme@infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=mmarek@suse.cz \
    --cc=sam@ravnborg.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.