summaryrefslogtreecommitdiffstats
path: root/debian/patches/bugfix/all/tools-build-add-feature-test-for-init_disassemble_info-api-changes.patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/bugfix/all/tools-build-add-feature-test-for-init_disassemble_info-api-changes.patch')
-rw-r--r--debian/patches/bugfix/all/tools-build-add-feature-test-for-init_disassemble_info-api-changes.patch96
1 files changed, 96 insertions, 0 deletions
diff --git a/debian/patches/bugfix/all/tools-build-add-feature-test-for-init_disassemble_info-api-changes.patch b/debian/patches/bugfix/all/tools-build-add-feature-test-for-init_disassemble_info-api-changes.patch
new file mode 100644
index 000000000..1a0ea2aa4
--- /dev/null
+++ b/debian/patches/bugfix/all/tools-build-add-feature-test-for-init_disassemble_info-api-changes.patch
@@ -0,0 +1,96 @@
+From: Andres Freund <andres@anarazel.de>
+Subject: [1/5] tools build: add feature test for init_disassemble_info API changes
+Date: Sun, 3 Jul 2022 14:25:47 -0700
+Origin: https://lore.kernel.org/lkml/20220703212551.1114923-2-andres@anarazel.de/
+
+binutils changed the signature of init_disassemble_info(), which now causes
+compilation failures for tools/{perf,bpf}, e.g. on debian unstable.
+Relevant binutils commit:
+https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=60a3da00bd5407f07
+
+This commit adds a feature test to detect the new signature. Subsequent
+commits will use it to fix the build failures.
+
+Cc: Alexei Starovoitov <ast@kernel.org>
+Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
+Cc: Sedat Dilek <sedat.dilek@gmail.com>
+Cc: Quentin Monnet <quentin@isovalent.com>
+Link: http://lore.kernel.org/lkml/20220622181918.ykrs5rsnmx3og4sv@alap3.anarazel.de
+Signed-off-by: Andres Freund <andres@anarazel.de>
+---
+ tools/build/Makefile.feature | 4 +++-
+ tools/build/feature/Makefile | 4 ++++
+ tools/build/feature/test-all.c | 4 ++++
+ tools/build/feature/test-disassembler-init-styled.c | 13 +++++++++++++
+ 4 files changed, 24 insertions(+), 1 deletion(-)
+ create mode 100644 tools/build/feature/test-disassembler-init-styled.c
+
+--- a/tools/build/Makefile.feature
++++ b/tools/build/Makefile.feature
+@@ -70,6 +70,7 @@ FEATURE_TESTS_BASIC :=
+ libaio \
+ libzstd \
+ disassembler-four-args \
++ disassembler-init-styled \
+ file-handle
+
+ # FEATURE_TESTS_BASIC + FEATURE_TESTS_EXTRA is the complete list
+@@ -131,7 +132,8 @@ FEATURE_DISPLAY ?= \
+ bpf \
+ libaio \
+ libzstd \
+- disassembler-four-args
++ disassembler-four-args \
++ disassembler-init-styled
+
+ # Set FEATURE_CHECK_(C|LD)FLAGS-all for all FEATURE_TESTS features.
+ # If in the future we need per-feature checks/flags for features not
+--- a/tools/build/feature/Makefile
++++ b/tools/build/feature/Makefile
+@@ -18,6 +18,7 @@ FILES=
+ test-libbfd.bin \
+ test-libbfd-buildid.bin \
+ test-disassembler-four-args.bin \
++ test-disassembler-init-styled.bin \
+ test-reallocarray.bin \
+ test-libbfd-liberty.bin \
+ test-libbfd-liberty-z.bin \
+@@ -243,6 +244,9 @@ $(OUTPUT)test-libbfd-buildid.bin:
+ $(OUTPUT)test-disassembler-four-args.bin:
+ $(BUILD) -DPACKAGE='"perf"' -lbfd -lopcodes
+
++$(OUTPUT)test-disassembler-init-styled.bin:
++ $(BUILD) -DPACKAGE='"perf"' -lbfd -lopcodes
++
+ $(OUTPUT)test-reallocarray.bin:
+ $(BUILD)
+
+--- a/tools/build/feature/test-all.c
++++ b/tools/build/feature/test-all.c
+@@ -166,6 +166,10 @@
+ # include "test-disassembler-four-args.c"
+ #undef main
+
++#define main main_test_disassembler_init_styled
++# include "test-disassembler-init-styled.c"
++#undef main
++
+ #define main main_test_libzstd
+ # include "test-libzstd.c"
+ #undef main
+--- /dev/null
++++ b/tools/build/feature/test-disassembler-init-styled.c
+@@ -0,0 +1,13 @@
++// SPDX-License-Identifier: GPL-2.0
++#include <stdio.h>
++#include <dis-asm.h>
++
++int main(void)
++{
++ struct disassemble_info info;
++
++ init_disassemble_info(&info, stdout,
++ NULL, NULL);
++
++ return 0;
++}