Skip to content

Commit 0d1c50a

Browse files
captain5050acmel
authored andcommitted
perf tools: Add an option to build without libbfd
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/[email protected]/T/#u Signed-off-by: Ian Rogers <[email protected]> Cc: Alexander Shishkin <[email protected]> Cc: Jiri Olsa <[email protected]> Cc: Mark Rutland <[email protected]> Cc: Namhyung Kim <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: tony garnock-jones <[email protected]> Link: http://lore.kernel.org/lkml/[email protected] Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
1 parent 4a86d41 commit 0d1c50a

File tree

1 file changed

+25
-22
lines changed

1 file changed

+25
-22
lines changed

tools/perf/Makefile.config

Lines changed: 25 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -827,33 +827,36 @@ else
827827
endif
828828
endif
829829

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

841-
ifeq ($(feature-libbfd-liberty), 1)
842-
EXTLIBS += -lbfd -lopcodes -liberty
843-
FEATURE_CHECK_LDFLAGS-disassembler-four-args += -liberty -ldl
831+
ifndef NO_LIBBFD
832+
ifeq ($(feature-libbfd), 1)
833+
EXTLIBS += -lbfd -lopcodes
844834
else
845-
ifeq ($(feature-libbfd-liberty-z), 1)
846-
EXTLIBS += -lbfd -lopcodes -liberty -lz
847-
FEATURE_CHECK_LDFLAGS-disassembler-four-args += -liberty -lz -ldl
835+
# we are on a system that requires -liberty and (maybe) -lz
836+
# to link against -lbfd; test each case individually here
837+
838+
# call all detections now so we get correct
839+
# status in VF output
840+
$(call feature_check,libbfd-liberty)
841+
$(call feature_check,libbfd-liberty-z)
842+
843+
ifeq ($(feature-libbfd-liberty), 1)
844+
EXTLIBS += -lbfd -lopcodes -liberty
845+
FEATURE_CHECK_LDFLAGS-disassembler-four-args += -liberty -ldl
846+
else
847+
ifeq ($(feature-libbfd-liberty-z), 1)
848+
EXTLIBS += -lbfd -lopcodes -liberty -lz
849+
FEATURE_CHECK_LDFLAGS-disassembler-four-args += -liberty -lz -ldl
850+
endif
848851
endif
852+
$(call feature_check,disassembler-four-args)
849853
endif
850-
$(call feature_check,disassembler-four-args)
851-
endif
852854

853-
ifeq ($(feature-libbfd-buildid), 1)
854-
CFLAGS += -DHAVE_LIBBFD_BUILDID_SUPPORT
855-
else
856-
msg := $(warning Old version of libbfd/binutils things like PE executable profiling will not be available);
855+
ifeq ($(feature-libbfd-buildid), 1)
856+
CFLAGS += -DHAVE_LIBBFD_BUILDID_SUPPORT
857+
else
858+
msg := $(warning Old version of libbfd/binutils things like PE executable profiling will not be available);
859+
endif
857860
endif
858861

859862
ifdef NO_DEMANGLE

0 commit comments

Comments
 (0)