Re: [PATCH] perf tools: Fix tags target rebuilding

From: Ingo Molnar
Date: Tue Nov 26 2013 - 07:01:09 EST



* Jiri Olsa <jolsa@xxxxxxxxxx> wrote:

> On Tue, Nov 26, 2013 at 12:31:08PM +0100, Ingo Molnar wrote:
> >
> > * Jiri Olsa <jolsa@xxxxxxxxxx> wrote:
> >
> > > Once the tags file is generated it's never rebuilt
> > > until it's removed by hand.
> > >
> > > The reason is that the Makefile does not treat tags
> > > as a target but as a file to be rebuilt.
> > >
> > > Adding tags as PHONY target into the Makefile.
> > >
> > > Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
> > > Cc: Ingo Molnar <mingo@xxxxxxxxxx>
> > > Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
> > > Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
> > > Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
> > > Cc: Mike Galbraith <efault@xxxxxx>
> > > Cc: Stephane Eranian <eranian@xxxxxxxxxx>
> > > Cc: David Ahern <dsahern@xxxxxxxxx>
> > > Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
> > > Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
> > > ---
> > > tools/perf/Makefile | 4 +++-
> > > 1 file changed, 3 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/tools/perf/Makefile b/tools/perf/Makefile
> > > index 4835618..95f5792 100644
> > > --- a/tools/perf/Makefile
> > > +++ b/tools/perf/Makefile
> > > @@ -61,7 +61,7 @@ endef
> > > #
> > > # Needed if no target specified:
> > > #
> > > -all:
> > > +all tags:
> >
> > Obviously the change invalidates the comment above.
>
> ugh, haven't noticed that comment ;-)
>
> >
> > > $(print_msg)
> > > $(make)
> > >
> > > @@ -77,3 +77,5 @@ clean:
> > > %:
> > > $(print_msg)
> > > $(make)
> > > +
> > > +.PHONY: tags
> >
> > Note that there's also a TAGS file that uses etags - which probably
> > needs similar treatment.
>
> yes
>
> >
> > Also note that we have duplicate code for this in Makefile.perf
> > already. Would it be possible to pass through this there and keep the
> > main Makefile is just a thin, minimal wrapper that adds default
> > parallelism, etc?
>
> well, thats what I actually tried to do.. pass the
> processing to the Makefile.perf otherwise it stops
> in Makefile
>
> I guess you want some generic way of doing that

If it's just these two phony targets that need to be in the main
makefile then I guess your approach is the simplest one and we should
do it like that instead of complicating the interface. If it gets
messier in the future we can reconsider?

Thanks,

Ingo
--
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/