Re: [PATCH 2/2] perf: fix build with -Wl,--as-needed

From: Arnaldo Carvalho de Melo
Date: Sat Aug 21 2010 - 13:25:43 EST


Tom,
Here it is.

- Arnaldo

Em Sat, Aug 21, 2010 at 03:38:21AM +0300, Kirill A. Shutemov escreveu:
> We need to put all libraries at the end of linking command to be able to
> use -Wl,--as-needed (default in some distributions).
>
> python-config --ldconfig also prints -lpython*, but we need to put it
> to EXTLIBS, not to ALL_LDFLAGS.
>
> Let's add call of python-config --libs and put its output to EXTLIBS.
>
> Signed-off-by: Kirill A. Shutemov <kirill@xxxxxxxxxxxxx>
> ---
> tools/perf/Makefile | 4 +++-
> 1 files changed, 3 insertions(+), 1 deletions(-)
>
> diff --git a/tools/perf/Makefile b/tools/perf/Makefile
> index 496a0d6..a5972f6 100644
> --- a/tools/perf/Makefile
> +++ b/tools/perf/Makefile
> @@ -605,12 +605,14 @@ ifdef NO_LIBPYTHON
> BASIC_CFLAGS += -DNO_LIBPYTHON
> else
> PYTHON_EMBED_LDOPTS = `python-config --ldflags 2>/dev/null`
> + PYTHON_EMBED_LIBS = `python-config --libs 2>/dev/null`
> PYTHON_EMBED_CCOPTS = `python-config --cflags 2>/dev/null`
> - FLAGS_PYTHON_EMBED=$(PYTHON_EMBED_CCOPTS) $(PYTHON_EMBED_LDOPTS)
> + FLAGS_PYTHON_EMBED=$(PYTHON_EMBED_CCOPTS) $(PYTHON_EMBED_LDOPTS) $(PYTHON_EMBED_LIBS)
> ifneq ($(call try-cc,$(SOURCE_PYTHON_EMBED),$(FLAGS_PYTHON_EMBED)),y)
> BASIC_CFLAGS += -DNO_LIBPYTHON
> else
> ALL_LDFLAGS += $(PYTHON_EMBED_LDOPTS)
> + EXTLIBS += $(PYTHON_EMBED_LIBS)
> LIB_OBJS += $(OUTPUT)util/scripting-engines/trace-event-python.o
> LIB_OBJS += $(OUTPUT)scripts/python/Perf-Trace-Util/Context.o
> endif
> --
> 1.7.2.1
--
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/