From faa2d8a95be47a39c0e068a5f271f45ef737cafd Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Sun, 23 Feb 2014 16:23:45 +0100 Subject: [PATCH] Don't link the kernel as a shared lib on ARM We have the same problem as on x86_64: posiiton dependant code isn't allowed in shared libraries. Since Kernel.so is not used at runtime, we can use the same hack as on x86_64, and use elfedit to make the linker think our kernel is a shared library. --- src/system/kernel/Jamfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/system/kernel/Jamfile b/src/system/kernel/Jamfile index 1ed3b2f278..677258d6d0 100644 --- a/src/system/kernel/Jamfile +++ b/src/system/kernel/Jamfile @@ -139,7 +139,7 @@ KernelLd kernel_$(TARGET_ARCH) : : ; -if $(HAIKU_ARCH) = x86_64 { +if $(HAIKU_ARCH) in x86_64 arm { # Cannot relink everything as a shared object on x86_64 as shared library # code is required to be position-independent. Instead create a copy of the # executable kernel image and change the ELF header type to DYN. A bit of