linux/tools/objtool
Joe Lawrence 913bf39ff4 objtool: Forward toolchain variables to the klp test runner
The tests target already passes ARCH and CROSS_COMPILE into
run-tests.sh.  lib.sh uses those to pick a default compiler and
binutils:

  CC=${CC:-${CROSS_COMPILE}gcc}
  LD=${LD:-${CROSS_COMPILE}ld}
  READELF=${READELF:-${CROSS_COMPILE}readelf}
  OBJCOPY=${OBJCOPY:-${CROSS_COMPILE}objcopy}

Those defaults only apply when the variables reach the shell that sources
lib.sh.  The recipe passed OBJTOOL, ARCH and CROSS_COMPILE explicitly, but
not CC or the binutils.  Makefile-assigned values (e.g. from LLVM=1) are
not visible in the recipe environment unless forwarded:

  $ LLVM=1 make -C tools/objtool tests
  ...
  # preflight
  #   compiler  gcc (GCC) ...

Pass CC, LD, READELF and OBJCOPY the same way as ARCH and CROSS_COMPILE,
so fixtures are built and inspected with the toolchain make selected:

  $ LLVM=1 make -C tools/objtool tests
  ...
  # preflight
  #   compiler  clang version 21.1.8 ...

Signed-off-by: Joe Lawrence <joe.lawrence@redhat.com>
Signed-off-by: Song Liu <song@kernel.org>
Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Assisted-by: Claude:claude-opus-5
Link: https://patch.msgid.link/20260916184351.2720310-12-song@kernel.org
2026-09-21 11:01:56 +02:00
..
arch objtool/klp: Ignore replacement offset of empty x86 alternatives 2026-08-11 15:04:57 -07:00
Documentation objtool: Forward toolchain variables to the klp test runner 2026-09-21 11:01:56 +02:00
include/objtool objtool/klp: Fix vmlinux klp relocations for EXPORT_SYMBOL_FOR_MODULES() 2026-08-17 10:53:55 +02:00
tests objtool: Keep failing test workdirs by default 2026-09-21 11:01:39 +02:00
.gitignore objtool: Add Function to get the name of a CPU feature 2025-11-24 20:39:47 +01:00
Build objtool/klp: Fix symbol resolution for duplicate data symbols 2026-08-03 07:12:39 +02:00
builtin-check.c objtool/klp: Add .klp.symid for sympos disambiguation 2026-08-03 07:12:39 +02:00
builtin-klp.c objtool/klp: Add "objtool klp checksum" subcommand 2026-05-04 21:16:05 -07:00
check.c Rust fixes for v7.3 2026-08-30 09:47:39 -07:00
disas.c objtool: Add insn_sym() helper 2026-05-04 21:16:06 -07:00
elf.c objtool/klp: Fix false module dependencies caused by dead relocs 2026-08-03 07:12:38 +02:00
klp-checksum.c objtool/klp: Fix checksums for constant pool references 2026-08-31 17:50:16 -07:00
klp-diff.c - Remove the smp_locks alternatives machinery which was used to patch out lock 2026-08-18 18:11:25 -07:00
klp-post-link.c objtool/klp: Fix cross-module klp relocation section naming 2026-08-11 16:10:51 -07:00
klp-symid.c objtool/klp: Fix vmlinux .klp.symid link error for .exitcall.exit symbols 2026-08-12 13:33:32 -07:00
klp-sympos.c objtool/klp: Explicitly disallow patching or referencing init code/data 2026-08-11 16:10:38 -07:00
Makefile objtool: Forward toolchain variables to the klp test runner 2026-09-21 11:01:56 +02:00
noreturns.h efi/runtime-wrappers: factor out efi_rts_park_worker() 2026-08-20 14:45:04 +03:00
objtool.c objtool/klp: Add correlation debugging output 2026-05-04 21:16:06 -07:00
orc_dump.c objtool: Add annotype() helper 2025-10-14 14:46:49 -07:00
orc_gen.c objtool: Add annotype() helper 2025-10-14 14:46:49 -07:00
signal.c objtool: Add more robust signal error handling, detect and warn about stack overflows 2025-12-03 19:42:37 +01:00
special.c objtool: Provide access to feature and flags of group alternatives 2025-11-21 15:30:14 +01:00
sync-check.sh objtool/klp: Introduce klp diff subcommand for diffing object files 2025-10-14 14:50:18 -07:00
trace.c objtool: Add insn_sym() helper 2026-05-04 21:16:06 -07:00
weak.c objtool/klp: Introduce klp diff subcommand for diffing object files 2025-10-14 14:50:18 -07:00