[PATCH] tools build: Use fixdep with OUTPUT path prefix

From: Jiri Olsa
Date: Thu Nov 26 2015 - 13:51:07 EST


On Thu, Nov 26, 2015 at 07:12:04PM +0100, Jiri Olsa wrote:
> On Thu, Nov 26, 2015 at 01:31:30PM -0300, Arnaldo Carvalho de Melo wrote:
> > Em Thu, Nov 26, 2015 at 02:54:03PM +0100, Jiri Olsa escreveu:
> > > Using FEATURE-INCLUDE in bpf subproject in case bpf is built
> > > via perf. Keep the current features detection for other cases.
> > >
> > > Cc: Wang Nan <wangnan0@xxxxxxxxxx>
> > > Link: http://lkml.kernel.org/n/tip-utuczk899ckz6qtggqvhm7yu@xxxxxxxxxxxxxx
> > > Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
> >
> > Clashes with:
> >
> > d8ad6a15cc3a ("tools lib bpf: Don't do a feature check when cleaning")
> >
> > That has, at that point:
> >
> > +check_feat := 1
> > +NON_CHECK_FEAT_TARGETS := clean TAGS tags cscope help
> > +ifdef MAKECMDGOALS
> > +ifeq ($(filter-out $(NON_CHECK_FEAT_TARGETS),$(MAKECMDGOALS)),)
> > + check_feat := 0
> > +endif
> > +endif
> > +
> > +ifeq ($(check_feat),1)
> > include $(srctree)/tools/build/Makefile.feature
> > +endif
> >
> > On a related note:
> >
> > [acme@zoo linux]$ make O=/tmp/build/perf -C tools/perf
> > make: Entering directory '/home/git/linux/tools/perf'
> > BUILD: Doing 'make -j4' parallel build
> > make[2]: Nothing to be done for 'fixdep'.
> > make: Leaving directory '/home/git/linux/tools/perf'
> >
> > Can we get away with that "make[2]: Nothing to be done for 'fixdep'."
> > line?
>
> I'll check on that

good we don't supress all make's output, sometimes it
finds a bug ;-) please check with attached patch..

thanks,
jirka


---
Adding OUTPUT path prefix for fixdep target
so we use it properly in out of tree builds.

If the fixdep already existed in the tree, the out of
tree build would see it already exist and did not build
the out of tree version, as reported by Arnaldo:

[acme@zoo linux]$ make O=/tmp/build/perf -C tools/perf
make: Entering directory '/home/git/linux/tools/perf'
BUILD: Doing 'make -j4' parallel build
make[2]: Nothing to be done for 'fixdep'.
make: Leaving directory '/home/git/linux/tools/perf'

Reported-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
Link: http://lkml.kernel.org/n/tip-hsrwmiogt9menjsg7uaxqvq2@xxxxxxxxxxxxxx
Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
---
tools/build/Makefile | 2 +-
tools/build/Makefile.include | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/tools/build/Makefile b/tools/build/Makefile
index a93036272d43..0d5a0e3a8fa9 100644
--- a/tools/build/Makefile
+++ b/tools/build/Makefile
@@ -25,7 +25,7 @@ export Q srctree CC LD
MAKEFLAGS := --no-print-directory
build := -f $(srctree)/tools/build/Makefile.build dir=. obj

-all: fixdep
+all: $(OUTPUT)fixdep

clean:
$(call QUIET_CLEAN, fixdep)
diff --git a/tools/build/Makefile.include b/tools/build/Makefile.include
index 4e09ad617a60..6d5edd275bef 100644
--- a/tools/build/Makefile.include
+++ b/tools/build/Makefile.include
@@ -4,7 +4,7 @@ ifdef CROSS_COMPILE
fixdep:
else
fixdep:
- $(Q)$(MAKE) -C $(srctree)/tools/build fixdep
+ $(Q)$(MAKE) -C $(srctree)/tools/build $(OUTPUT)fixdep
endif

.PHONY: fixdep
--
2.4.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/