Optionally build glue code for bootstrap_stage0 platform.
This commit is contained in:
@@ -760,3 +760,31 @@ rule BuildPlatformStaticLibraryPIC target : sources : otherObjects
|
|||||||
|
|
||||||
BuildPlatformStaticLibrary $(target) : $(sources) : $(otherObjects) ;
|
BuildPlatformStaticLibrary $(target) : $(sources) : $(otherObjects) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
rule BootstrapStage0PlatformObjects sources : separateFromStandardSiblings
|
||||||
|
{
|
||||||
|
# BootstrapStage0PlatformObjects <sources> : <separateFromStandardSiblings>
|
||||||
|
# Builds objects from the given sources for stage0 of the bootstrap process.
|
||||||
|
# <sources> The sources from which objects should be created.
|
||||||
|
# <separateFromStandardSiblings> Pass 'true' if the same objects are built
|
||||||
|
# in a different context, too, so that a separate grist and target location
|
||||||
|
# is required. This defaults to ''.
|
||||||
|
local source ;
|
||||||
|
for source in $(sources) {
|
||||||
|
local objectGrist ;
|
||||||
|
if $(separateFromStandardSiblings) = true {
|
||||||
|
objectGrist = "bootstrap!$(SOURCE_GRIST)" ;
|
||||||
|
} else {
|
||||||
|
objectGrist = $(SOURCE_GRIST) ;
|
||||||
|
}
|
||||||
|
local object = $(source:S=$(SUFOBJ):G=$(objectGrist)) ;
|
||||||
|
PLATFORM on $(object) = bootstrap_stage0 ;
|
||||||
|
SUPPORTED_PLATFORMS on $(object) = bootstrap_stage0 ;
|
||||||
|
if $(separateFromStandardSiblings) = true {
|
||||||
|
MakeLocate $(object) : [
|
||||||
|
FDirName $(TARGET_DEBUG_$(DEBUG)_LOCATE_TARGET) bootstrap
|
||||||
|
] ;
|
||||||
|
}
|
||||||
|
Object $(object) : $(source) ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -5,14 +5,21 @@ for architectureObject in [ MultiArchSubDirSetup ] {
|
|||||||
on $(architectureObject) {
|
on $(architectureObject) {
|
||||||
UsePrivateSystemHeaders ;
|
UsePrivateSystemHeaders ;
|
||||||
|
|
||||||
Objects
|
local sources =
|
||||||
init_term_dyn.c
|
init_term_dyn.c
|
||||||
start_dyn.c
|
start_dyn.c
|
||||||
haiku_version_glue.c
|
haiku_version_glue.c
|
||||||
;
|
;
|
||||||
|
Objects $(sources) ;
|
||||||
|
|
||||||
|
if $(HAIKU_BUILD_TYPE) = bootstrap {
|
||||||
|
# build a version for stage0 of the bootstrap process
|
||||||
|
BootstrapStage0PlatformObjects $(sources) : true ;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
local arch ;
|
local arch ;
|
||||||
for arch in $(TARGET_ARCHS) {
|
for arch in $(TARGET_ARCHS) {
|
||||||
SubInclude HAIKU_TOP src system glue arch $(arch) ;
|
SubInclude HAIKU_TOP src system glue arch $(arch) ;
|
||||||
|
|||||||
@@ -3,9 +3,17 @@ SubDir HAIKU_TOP src system glue arch arm ;
|
|||||||
local architectureObject ;
|
local architectureObject ;
|
||||||
for architectureObject in [ MultiArchSubDirSetup arm ] {
|
for architectureObject in [ MultiArchSubDirSetup arm ] {
|
||||||
on $(architectureObject) {
|
on $(architectureObject) {
|
||||||
Objects
|
UsePrivateSystemHeaders ;
|
||||||
|
|
||||||
|
local sources =
|
||||||
crti.S
|
crti.S
|
||||||
crtn.S
|
crtn.S
|
||||||
;
|
;
|
||||||
|
Objects $(sources) ;
|
||||||
|
|
||||||
|
if $(HAIKU_BUILD_TYPE) = bootstrap {
|
||||||
|
# build a version for stage0 of the bootstrap process
|
||||||
|
BootstrapStage0PlatformObjects $(sources) : true ;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,9 +3,17 @@ SubDir HAIKU_TOP src system glue arch m68k ;
|
|||||||
local architectureObject ;
|
local architectureObject ;
|
||||||
for architectureObject in [ MultiArchSubDirSetup m68k ] {
|
for architectureObject in [ MultiArchSubDirSetup m68k ] {
|
||||||
on $(architectureObject) {
|
on $(architectureObject) {
|
||||||
Objects
|
UsePrivateSystemHeaders ;
|
||||||
|
|
||||||
|
local sources =
|
||||||
crti.S
|
crti.S
|
||||||
crtn.S
|
crtn.S
|
||||||
;
|
;
|
||||||
|
Objects $(sources) ;
|
||||||
|
|
||||||
|
if $(HAIKU_BUILD_TYPE) = bootstrap {
|
||||||
|
# build a version for stage0 of the bootstrap process
|
||||||
|
BootstrapStage0PlatformObjects $(sources) : true ;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,9 +3,17 @@ SubDir HAIKU_TOP src system glue arch ppc ;
|
|||||||
local architectureObject ;
|
local architectureObject ;
|
||||||
for architectureObject in [ MultiArchSubDirSetup ppc ] {
|
for architectureObject in [ MultiArchSubDirSetup ppc ] {
|
||||||
on $(architectureObject) {
|
on $(architectureObject) {
|
||||||
Objects
|
UsePrivateSystemHeaders ;
|
||||||
|
|
||||||
|
local sources =
|
||||||
crti.S
|
crti.S
|
||||||
crtn.S
|
crtn.S
|
||||||
;
|
;
|
||||||
|
Objects $(sources) ;
|
||||||
|
|
||||||
|
if $(HAIKU_BUILD_TYPE) = bootstrap {
|
||||||
|
# build a version for stage0 of the bootstrap process
|
||||||
|
BootstrapStage0PlatformObjects $(sources) : true ;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,9 +3,17 @@ SubDir HAIKU_TOP src system glue arch x86 ;
|
|||||||
local architectureObject ;
|
local architectureObject ;
|
||||||
for architectureObject in [ MultiArchSubDirSetup x86 x86_gcc2 ] {
|
for architectureObject in [ MultiArchSubDirSetup x86 x86_gcc2 ] {
|
||||||
on $(architectureObject) {
|
on $(architectureObject) {
|
||||||
Objects
|
UsePrivateSystemHeaders ;
|
||||||
|
|
||||||
|
local sources =
|
||||||
crti.S
|
crti.S
|
||||||
crtn.S
|
crtn.S
|
||||||
;
|
;
|
||||||
|
Objects $(sources) ;
|
||||||
|
|
||||||
|
if $(HAIKU_BUILD_TYPE) = bootstrap {
|
||||||
|
# build a version for stage0 of the bootstrap process
|
||||||
|
BootstrapStage0PlatformObjects $(sources) : true ;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,9 +5,15 @@ for architectureObject in [ MultiArchSubDirSetup x86_64 ] {
|
|||||||
on $(architectureObject) {
|
on $(architectureObject) {
|
||||||
UsePrivateSystemHeaders ;
|
UsePrivateSystemHeaders ;
|
||||||
|
|
||||||
Objects
|
local sources =
|
||||||
crti.S
|
crti.S
|
||||||
crtn.S
|
crtn.S
|
||||||
;
|
;
|
||||||
|
Objects $(sources) ;
|
||||||
|
|
||||||
|
if $(HAIKU_BUILD_TYPE) = bootstrap {
|
||||||
|
# build a version for stage0 of the bootstrap process
|
||||||
|
BootstrapStage0PlatformObjects $(sources) : true ;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user