Added haiku_version_glue.o "glue code" containing the Haiku/ABI version

symbols recently introduced. Until init_term_dyn.o is linked into kernel
add-ons, too, we link with haiku_version_glue.o, so we have those symbols
in kernel add-ons as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30818 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Ingo Weinhold
2009-05-21 15:04:37 +00:00
parent b3f709b800
commit c154b94624
5 changed files with 35 additions and 35 deletions
+2 -1
View File
@@ -389,7 +389,8 @@ HAIKU_EXECUTABLE_BEGIN_GLUE_CODE =
<src!system!glue>init_term_dyn.o
;
HAIKU_EXECUTABLE_END_GLUE_CODE = $(HAIKU_LIBRARY_END_GLUE_CODE) ;
HAIKU_KERNEL_ADDON_BEGIN_GLUE_CODE = crtbegin.o ;
HAIKU_KERNEL_ADDON_BEGIN_GLUE_CODE = crtbegin.o
<src!system!glue>haiku_version_glue.o ;
HAIKU_KERNEL_ADDON_END_GLUE_CODE = $(HAIKU_GCC_LIBGCC) crtend.o ;
SEARCH on crtbegin.o crtend.o = $(HAIKU_GCC_LIB_DIR) ;
+5 -3
View File
@@ -237,9 +237,11 @@ if [ IsOptionalHaikuImagePackageAdded DevelopmentBase ]
# DevelopmentMin
if [ IsOptionalHaikuImagePackageAdded DevelopmentMin ] && $(TARGET_ARCH) = x86 {
# glue code
AddFilesToHaikuImage develop lib x86
: <src!system!glue!arch!x86>crti.o <src!system!glue!arch!x86>crtn.o
<src!system!glue>init_term_dyn.o <src!system!glue>start_dyn.o ;
AddFilesToHaikuImage develop lib x86 :
<src!system!glue!arch!x86>crti.o <src!system!glue!arch!x86>crtn.o
<src!system!glue>init_term_dyn.o <src!system!glue>start_dyn.o
<src!system!glue>haiku_version_glue.o
;
# kernel
AddFilesToHaikuImage develop lib x86 : kernel.so : _KERNEL_ ;
+2 -1
View File
@@ -104,7 +104,8 @@ ifeq ($(CPU), x86)
LDFLAGS += -nostart -Xlinker -soname=$(NAME)
else
ifeq ($(TYPE), DRIVER)
LDFLAGS += -nostdlib /boot/develop/lib/x86/_KERNEL_
LDFLAGS += -nostdlib /boot/develop/lib/x86/_KERNEL_ \
/boot/develop/lib/x86/haiku_version_glue.o
endif
endif
endif
+1
View File
@@ -5,6 +5,7 @@ UsePrivateSystemHeaders ;
KernelObjects
init_term_dyn.c
start_dyn.c
haiku_version_glue.c
;
SubInclude HAIKU_TOP src system glue arch ;
+2 -7
View File
@@ -5,17 +5,12 @@
#include <user_runtime.h>
#include <image.h>
#include <image_defs.h>
#include "init_term_dyn.h"
// Haiku API and ABI versions -- we compile those into shared objects so that
// the runtime loader can discriminate the versions and enable compatibility
// work-arounds, if necessary.
uint32 B_SHARED_OBJECT_HAIKU_VERSION_VARIABLE = B_HAIKU_VERSION;
uint32 B_SHARED_OBJECT_HAIKU_ABI_VARIABLE = B_HAIKU_ABI;
// include the version glue -- it's separate for the kernel add-ons only
#include "haiku_version_glue.c"
/** These functions are called from _init()/_fini() (in crti.S, crtn.S)