lkml.org 
[lkml]   [2012]   [Jul]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 03/13] tools lib traceevent: Make dependency files regeneratable
    Date
    From: Namhyung Kim <namhyung.kim@lge.com>

    Ingo reported that libtraceevent doesn't clean out dependency (.d) files
    and it can cause a build error when the libgcc package upgraded:

    comet:~/tip/tools/perf> make -j
    SUBDIR ../lib/traceevent/
    make[1]: *** No rule to make target `/usr/lib/gcc/x86_64-redhat-linux/4.7.0/include/stddef.h',
    needed by `event-parse.o'. Stop.
    make: *** [../lib/traceevent//libtraceevent.a] Error 2

    So this patch makes the .d files depends on the source and header files
    also, so that it can be re-generated as needed.

    NOTE: This code is copied from the GNU make manual page
    (4.14 Generating Prerequisites Automatically).

    Reported-by: Ingo Molnar <mingo@kernel.org>
    Signed-off-by: Namhyung Kim <namhyung@kernel.org>
    Cc: David Ahern <dsahern@gmail.com>
    Cc: Ingo Molnar <mingo@kernel.org>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: Paul Mackerras <paulus@samba.org>
    Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Link: http://lkml.kernel.org/r/1340343462-15556-3-git-send-email-namhyung@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    ---
    tools/lib/traceevent/Makefile | 6 +++++-
    1 file changed, 5 insertions(+), 1 deletion(-)

    diff --git a/tools/lib/traceevent/Makefile b/tools/lib/traceevent/Makefile
    index 34a577e..46c2f6b 100644
    --- a/tools/lib/traceevent/Makefile
    +++ b/tools/lib/traceevent/Makefile
    @@ -250,8 +250,12 @@ endef
    all_objs := $(sort $(ALL_OBJS))
    all_deps := $(all_objs:%.o=.%.d)

    +# let .d file also depends on the source and header files
    define check_deps
    - $(CC) -M $(CFLAGS) $< > $@;
    + @set -e; $(RM) $@; \
    + $(CC) -M $(CFLAGS) $< > $@.$$$$; \
    + sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \
    + $(RM) $@.$$$$
    endef

    $(gui_deps): ks_version.h
    --
    1.7.9.2.358.g22243


    \
     
     \ /
      Last update: 2012-07-02 23:41    [W:5.380 / U:0.060 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site