lkml.org 
[lkml]   [2021]   [Sep]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    Subject[PATCH] perf tools: Add an option to build without libbfd
    From
    Some distributions, like debian, don't link perf with libbfd. Add a
    build flag to make this configuration buildable and testable.
    This was inspired by:
    https://lore.kernel.org/linux-perf-users/20210910102307.2055484-1-tonyg@leastfixedpoint.com/T/#u

    Signed-off-by: Ian Rogers <irogers@google.com>
    ---
    tools/perf/Makefile.config | 47 ++++++++++++++++++++------------------
    1 file changed, 25 insertions(+), 22 deletions(-)

    diff --git a/tools/perf/Makefile.config b/tools/perf/Makefile.config
    index b66cf128cbc7..446180401e26 100644
    --- a/tools/perf/Makefile.config
    +++ b/tools/perf/Makefile.config
    @@ -827,33 +827,36 @@ else
    endif
    endif

    -ifeq ($(feature-libbfd), 1)
    - EXTLIBS += -lbfd -lopcodes
    -else
    - # we are on a system that requires -liberty and (maybe) -lz
    - # to link against -lbfd; test each case individually here
    -
    - # call all detections now so we get correct
    - # status in VF output
    - $(call feature_check,libbfd-liberty)
    - $(call feature_check,libbfd-liberty-z)

    - ifeq ($(feature-libbfd-liberty), 1)
    - EXTLIBS += -lbfd -lopcodes -liberty
    - FEATURE_CHECK_LDFLAGS-disassembler-four-args += -liberty -ldl
    +ifndef NO_LIBBFD
    + ifeq ($(feature-libbfd), 1)
    + EXTLIBS += -lbfd -lopcodes
    else
    - ifeq ($(feature-libbfd-liberty-z), 1)
    - EXTLIBS += -lbfd -lopcodes -liberty -lz
    - FEATURE_CHECK_LDFLAGS-disassembler-four-args += -liberty -lz -ldl
    + # we are on a system that requires -liberty and (maybe) -lz
    + # to link against -lbfd; test each case individually here
    +
    + # call all detections now so we get correct
    + # status in VF output
    + $(call feature_check,libbfd-liberty)
    + $(call feature_check,libbfd-liberty-z)
    +
    + ifeq ($(feature-libbfd-liberty), 1)
    + EXTLIBS += -lbfd -lopcodes -liberty
    + FEATURE_CHECK_LDFLAGS-disassembler-four-args += -liberty -ldl
    + else
    + ifeq ($(feature-libbfd-liberty-z), 1)
    + EXTLIBS += -lbfd -lopcodes -liberty -lz
    + FEATURE_CHECK_LDFLAGS-disassembler-four-args += -liberty -lz -ldl
    + endif
    endif
    + $(call feature_check,disassembler-four-args)
    endif
    - $(call feature_check,disassembler-four-args)
    -endif

    -ifeq ($(feature-libbfd-buildid), 1)
    - CFLAGS += -DHAVE_LIBBFD_BUILDID_SUPPORT
    -else
    - msg := $(warning Old version of libbfd/binutils things like PE executable profiling will not be available);
    + ifeq ($(feature-libbfd-buildid), 1)
    + CFLAGS += -DHAVE_LIBBFD_BUILDID_SUPPORT
    + else
    + msg := $(warning Old version of libbfd/binutils things like PE executable profiling will not be available);
    + endif
    endif

    ifdef NO_DEMANGLE
    --
    2.33.0.309.g3052b89438-goog
    \
     
     \ /
      Last update: 2021-09-11 00:58    [W:3.222 / U:0.020 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site