• Jiri Olsa's avatar
    perf build: Fix traceevent plugins build race · 67befc65
    Jiri Olsa authored
    Ingo reported following build failure:
    
      $ make clean install
      ...
        CC       plugin_kmem.o
      fixdep: error opening depfile: ./.plugin_hrtimer.o.d: No such file or directory
      /home/mingo/tip/tools/build/Makefile.build:77: recipe for target
      'plugin_hrtimer.o' failed
      make[3]: *** [plugin_hrtimer.o] Error 2
      Makefile:189: recipe for target 'plugin_hrtimer-in.o' failed
      make[2]: *** [plugin_hrtimer-in.o] Error 2
      Makefile.perf:414: recipe for target 'libtraceevent_plugins' failed
      make[1]: *** [libtraceevent_plugins] Error 2
      make[1]: *** Waiting for unfinished jobs....
    
    Currently we have the install-traceevent-plugins target being dependent
    on $(LIBTRACEEVENT), which will actualy not build any plugin. So the
    install-traceevent-plugins target itself will try to build plugins,
    but..
    
    Plugins built is also triggered by perf build itself via
    libtraceevent_plugins target.
    
    This might cause a race having one make thread removing temp files from
    another and result in above error. Fixing this by having proper plugins
    build dependency before installing plugins.
    Reported-and-Tested-by: default avatar: Ingo Molnar <mingo@kernel.org>
    Signed-off-by: default avatarJiri Olsa <jolsa@kernel.org>
    Cc: David Ahern <dsahern@gmail.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Link: http://lkml.kernel.org/r/1448546044-28973-3-git-send-email-jolsa@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    67befc65
Makefile.perf 19.4 KB