kbuild: rpm-pkg: Fix manual debuginfo generation when using .src.rpm
authorNathan Chancellor <nathan@kernel.org>
Fri, 13 Feb 2026 06:45:13 +0000 (01:45 -0500)
committerNathan Chancellor <nathan@kernel.org>
Fri, 13 Feb 2026 19:27:45 +0000 (14:27 -0500)
Commit 62089b804895 ("kbuild: rpm-pkg: Generate debuginfo package
manually") added uses of OBJCOPY and READELF, variables from Kbuild.
These variables are defined and work properly when using the binrpm-pkg
target because rpmbuild is run within Kbuild. However, these variables
are not defined when building from a source RPM package generated with
the srcrpm-pkg target, breaking the build when generating the debug info
subpackage.

Define a default value for these variables so that these commands
respect the value from Kbuild but continue to work when built from a
source RPM package.

Cc: stable@vger.kernel.org
Fixes: 62089b804895 ("kbuild: rpm-pkg: Generate debuginfo package manually")
Reported-by: Lukas Herbolt <lukas@herbolt.com>
Closes: https://lore.kernel.org/20260212135855.147906-2-lukas@herbolt.com/
Tested-by: Lukas Herbolt <lukas@herbolt.com>
Link: https://patch.msgid.link/20260213-fix-debuginfo-srcrpm-pkg-v1-1-45cd0c0501b9@kernel.org
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
scripts/package/kernel.spec

index af682a7..bccf58b 100644 (file)
@@ -148,11 +148,11 @@ echo /usr/lib/debug/lib/modules/%{KERNELRELEASE}/vmlinux > %{buildroot}/debuginf
 while read -r mod; do
        mod="${mod%.o}.ko"
        dbg="%{buildroot}/usr/lib/debug/lib/modules/%{KERNELRELEASE}/kernel/${mod}"
-       buildid=$("${READELF}" -n "${mod}" | sed -n 's@^.*Build ID: \(..\)\(.*\)@\1/\2@p')
+       buildid=$("${READELF:-readelf}" -n "${mod}" | sed -n 's@^.*Build ID: \(..\)\(.*\)@\1/\2@p')
        link="%{buildroot}/usr/lib/debug/.build-id/${buildid}.debug"
 
        mkdir -p "${dbg%/*}" "${link%/*}"
-       "${OBJCOPY}" --only-keep-debug "${mod}" "${dbg}"
+       "${OBJCOPY:-objcopy}" --only-keep-debug "${mod}" "${dbg}"
        ln -sf --relative "${dbg}" "${link}"
 
        echo "${dbg#%{buildroot}}" >> %{buildroot}/debuginfo.list