aboutsummaryrefslogtreecommitdiff
path: root/target/sdk
diff options
context:
space:
mode:
authorRobert Marko <robimarko@gmail.com>2024-04-08 17:52:22 +0200
committerRobert Marko <robimarko@gmail.com>2024-04-09 11:13:18 +0200
commit7c39a95a2f6ae638f173833dc8d4c120e25475c8 (patch)
treeb802d77faa882e89c970b6e4f36a2795f5abc5dd /target/sdk
parentd606b84c4ebf6561168b23df51a294dc9e25c451 (diff)
sdk: include lib/crtsavres.o for powerpc
Trying to link certain kernel modules like dahdi-linux when building with the OpenWrt SDK will fail with: openwrt-sdk-apm821xx-sata_gcc-13.2.0_musl.Linux-x86_64/staging_dir/toolchain-powerpc_464fp_gcc-13.2.0_musl/bin/powerpc-openwrt-linux-musl-ld: cannot find arch/powerpc/lib/crtsavres.o: No such file or directory Previously this worked with the PowerPC SDK since we carried a hack that was passing --save-restore-funcs to module LDFLAGS so the linker provided the required functions automatically as without --save-restore-funcs it doesnt do so automatically on relocatable links and as a sideffect did not require the kernel provided crtsaves.o to link against. Now that hack has been removed as upstream kernel now compiles crtsaves.o by default so it can be linked against but its not included in the SDK. So, lets include lib/crtsavres.o when SDK is generated for PowerPC. Fixes: 99c9d8abd677 ("kernel: bump 5.15 to 5.15.148") Signed-off-by: Robert Marko <robimarko@gmail.com>
Diffstat (limited to 'target/sdk')
-rw-r--r--target/sdk/Makefile4
1 files changed, 4 insertions, 0 deletions
diff --git a/target/sdk/Makefile b/target/sdk/Makefile
index c57a451617..d0c0ab7a2b 100644
--- a/target/sdk/Makefile
+++ b/target/sdk/Makefile
@@ -68,6 +68,10 @@ KERNEL_FILES_ARCH = \
kernel/asm-offsets.s \
kernel/module.lds
+ifeq ($(LINUX_KARCH),powerpc)
+ KERNEL_FILES_ARCH += lib/crtsavres.o
+endif
+
KERNEL_FILES_BASE := \
.config \
Makefile \