[haiku-development] [PATCH 1/4] Export vm86_* functions to other modules correctly.

  • From: Jan Klötzke <jan.kloetzke@xxxxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Tue, 27 May 2008 23:28:41 +0200

* Fix vm86.h.
* Current linking scheme does not always export arch specific symbols from the
  kernel. Merging all compiled arch stuff into a single .o file (and linking
  that to the kernel) fixes it.
---
 headers/private/kernel/arch/x86/vm86.h |    2 +-
 src/system/kernel/Jamfile              |    4 ++--
 src/system/kernel/arch/m68k/Jamfile    |    2 +-
 src/system/kernel/arch/ppc/Jamfile     |    2 +-
 src/system/kernel/arch/x86/Jamfile     |    2 +-
 5 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/headers/private/kernel/arch/x86/vm86.h 
b/headers/private/kernel/arch/x86/vm86.h
index 4689431..a7d939b 100644
--- a/headers/private/kernel/arch/x86/vm86.h
+++ b/headers/private/kernel/arch/x86/vm86.h
@@ -6,7 +6,7 @@
 #define _VM86_H
 
 #include <OS.h>
-#include <arch_cpu.h>
+#include <arch/x86/arch_cpu.h>
 
 #ifdef __cplusplus
 extern "C" {
diff --git a/src/system/kernel/Jamfile b/src/system/kernel/Jamfile
index cc8a13c..b51b335 100644
--- a/src/system/kernel/Jamfile
+++ b/src/system/kernel/Jamfile
@@ -76,7 +76,7 @@ KernelLd kernel_$(TARGET_ARCH) :
        kernel_util.o
        kernel_vm.o
 
-       lib$(TARGET_ARCH).a
+       kernel_arch_$(TARGET_ARCH).o
        kernel_platform_$(TARGET_BOOT_PLATFORM).o
 
        linkhack.so
@@ -109,7 +109,7 @@ KernelLd kernel.so :
        kernel_util.o
        kernel_vm.o
 
-       lib$(TARGET_ARCH).a
+       kernel_arch_$(TARGET_ARCH).o
        kernel_platform_$(TARGET_BOOT_PLATFORM).o
 
        linkhack.so
diff --git a/src/system/kernel/arch/m68k/Jamfile 
b/src/system/kernel/arch/m68k/Jamfile
index 15f6a62..3ea9241 100644
--- a/src/system/kernel/arch/m68k/Jamfile
+++ b/src/system/kernel/arch/m68k/Jamfile
@@ -23,7 +23,7 @@ KernelMergeObject arch_m68k_060.o :
        : $(TARGET_KERNEL_PIC_CCFLAGS) -Wno-unused -m68060
 ;
 
-KernelStaticLibrary libm68k :
+KernelMergeObject kernel_arch_m68k.o :
        arch_atomic.c
        arch_cpu.cpp
        arch_cpu_asm.S
diff --git a/src/system/kernel/arch/ppc/Jamfile 
b/src/system/kernel/arch/ppc/Jamfile
index 2a46115..4b972da 100644
--- a/src/system/kernel/arch/ppc/Jamfile
+++ b/src/system/kernel/arch/ppc/Jamfile
@@ -5,7 +5,7 @@ UsePrivateKernelHeaders ;
 
 SEARCH_SOURCE += [ FDirName $(SUBDIR) $(DOTDOT) generic ] ;
 
-KernelStaticLibrary libppc :
+KernelMergeObject kernel_arch_ppc.o :
        arch_atomic.c
        arch_cpu.cpp
        arch_cpu_asm.S
diff --git a/src/system/kernel/arch/x86/Jamfile 
b/src/system/kernel/arch/x86/Jamfile
index 04e80a9..bc76e30 100644
--- a/src/system/kernel/arch/x86/Jamfile
+++ b/src/system/kernel/arch/x86/Jamfile
@@ -9,7 +9,7 @@ UsePrivateKernelHeaders ;
 
 SEARCH_SOURCE += [ FDirName $(SUBDIR) $(DOTDOT) generic ] ;
 
-KernelStaticLibrary libx86 :
+KernelMergeObject kernel_arch_x86.o :
        arch_commpage.cpp
        arch_cpu.c
        arch_debug.cpp
-- 
1.5.4.2


Other related posts:

  • » [haiku-development] [PATCH 1/4] Export vm86_* functions to other modules correctly.