Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 60913e00 authored by Konstantin Khlebnikov's avatar Konstantin Khlebnikov Committed by Arnaldo Carvalho de Melo
Browse files

perf tools: Fix static linking with libunwind



* libunwind-x86_64 must be linked before libunwind
* libunwind requires liblzma
* static libunwind conflicts with static libgcc_eh

Signed-off-by: default avatarKonstantin Khlebnikov <khlebnikov@yandex-team.ru>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/150322917247.129799.14247751517961953155.stgit@buzz


Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent ba335df4
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -35,7 +35,7 @@ ifeq ($(SRCARCH),x86)
  ifeq (${IS_64_BIT}, 1)
    CFLAGS += -DHAVE_ARCH_X86_64_SUPPORT -DHAVE_SYSCALL_TABLE -I$(OUTPUT)arch/x86/include/generated
    ARCH_INCLUDE = ../../arch/x86/lib/memcpy_64.S ../../arch/x86/lib/memset_64.S
    LIBUNWIND_LIBS = -lunwind -lunwind-x86_64
    LIBUNWIND_LIBS = -lunwind-x86_64 -lunwind -llzma
    $(call detected,CONFIG_X86_64)
  else
    LIBUNWIND_LIBS = -lunwind-x86 -llzma -lunwind
@@ -505,6 +505,10 @@ ifndef NO_LOCAL_LIBUNWIND
  EXTLIBS += $(LIBUNWIND_LIBS)
  LDFLAGS += $(LIBUNWIND_LIBS)
endif
ifeq ($(findstring -static,${LDFLAGS}),-static)
  # gcc -static links libgcc_eh which contans piece of libunwind
  LIBUNWIND_LDFLAGS += -Wl,--allow-multiple-definition
endif

ifndef NO_LIBUNWIND
  CFLAGS  += -DHAVE_LIBUNWIND_SUPPORT