Re: [PATCH v2 1/2] tools lib traceevent: Export dynamic symbols used by traceevent plugins

From: Jiri Olsa
Date: Wed May 13 2015 - 11:00:27 EST


On Tue, May 12, 2015 at 11:25:45PM +0800, hekuang wrote:
> Hi, jirka
>
> On 05/12/2015 08:37 PM, Jiri Olsa wrote:
> >On Tue, May 12, 2015 at 06:41:56AM +0000, He Kuang wrote:
> >
> >SNIP
> >
> >> $(Q)$(MAKE) $(build)=perf
> >>-$(OUTPUT)perf: $(PERFLIBS) $(PERF_IN)
> >>- $(QUIET_LINK)$(CC) $(CFLAGS) $(LDFLAGS) $(PERF_IN) $(LIBS) -o $@
> >>+LD_LIBTRACEEVENT_FLAGS += -Xlinker --dynamic-list=$(LIBTRACEEVENT_DYNAMIC_LIST)
> >>+$(OUTPUT)perf: $(PERFLIBS) $(PERF_IN) $(LIBTRACEEVENT_DYNAMIC_LIST)
> >>+ $(QUIET_LINK)$(CC) $(CFLAGS) $(LDFLAGS) $(LD_LIBTRACEEVENT_FLAGS) $(PERF_IN) $(LIBS) -o $@
> >> $(GTK_IN): FORCE
> >> $(Q)$(MAKE) $(build)=gtk
> >>@@ -373,7 +375,13 @@ $(LIB_FILE): $(LIBPERF_IN)
> >> LIBTRACEEVENT_FLAGS += plugin_dir=$(plugindir_SQ)
> >> $(LIBTRACEEVENT): FORCE
> >>- $(Q)$(MAKE) -C $(TRACE_EVENT_DIR) $(LIBTRACEEVENT_FLAGS) O=$(OUTPUT) $(OUTPUT)libtraceevent.a plugins
> >>+ $(Q)$(MAKE) -C $(TRACE_EVENT_DIR) $(LIBTRACEEVENT_FLAGS) O=$(OUTPUT) $(OUTPUT)libtraceevent.a
> >>+
> >>+libtraceevent_plugins: FORCE
> >>+ $(Q)$(MAKE) -C $(TRACE_EVENT_DIR) $(LIBTRACEEVENT_FLAGS) O=$(OUTPUT) plugins
> >>+
> >>+$(LIBTRACEEVENT_DYNAMIC_LIST): libtraceevent_plugins
> >>+ $(Q)$(MAKE) -C $(TRACE_EVENT_DIR) $(LIBTRACEEVENT_FLAGS) O=$(OUTPUT) $(OUTPUT)libtraceevent-dynamic-list
> >I thought the idea of v2 was not to introduce new target,
> >something like in attached patch (not completely tested)
> >
> >jirka
>
> There is a problem, the target perf executable is dependent on
> the dynamic-list-file, so we should add plugins or the
> dynamic-list-file to perf's dependencies.
>
> As your patch below, the dynamic-list-file is built implictly
> when building plugins, so we should not add it directly to the
> dependency list of perf.
>
> It seems new targets are needed. In the v2 patch,

hum, I dont get it.. why ?

dynamic-list-file gets rebuilt any time plugins are rebuilt..
why not keep just the 'plugins' dependency?

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