xref: /haiku/src/system/libroot/stubbed/Jamfile (revision 344ded80d400028c8f561b4b876257b94c12db4a)
1SubDir HAIKU_TOP src system libroot stubbed ;
2
3local architectureObject ;
4for architectureObject in [ MultiArchSubDirSetup ] {
5	on $(architectureObject) {
6
7		UsePrivateSystemHeaders ;
8
9		# Build <stubbed>libroot.so, containing only empty symbols.
10		local stubsSource ;
11		if $(TARGET_PACKAGING_ARCH) = x86_gcc2 {
12			stubsSource = [ FGristFiles libroot_stubs_legacy.c ] ;
13		} else if $(TARGET_PACKAGING_ARCH) = x86 {
14			stubsSource = [ FGristFiles libroot_stubs.c libroot_stubs_x86.c ] ;
15		} else if $(TARGET_PACKAGING_ARCH) = sparc {
16			stubsSource = [ FGristFiles libroot_stubs.c libroot_stubs_sparc.c ] ;
17		} else {
18			stubsSource = [ FGristFiles libroot_stubs.c ] ;
19		}
20
21		local stubsObject = $(stubsSource:S=$(SUFOBJ)) ;
22		CCFLAGS on $(stubsObject) = -Wno-missing-prototypes -fno-builtin ;
23		Depends $(stubsObject) : $(stubsSource) ;
24		BootstrapStage0PlatformObjects $(stubsSource) ;
25		local stubbedLibroot
26			= [ MultiArchDefaultGristFiles libroot.so : stubbed ] ;
27		local versionScript
28			= [ FDirName $(HAIKU_TOP) src system libroot libroot_versions ] ;
29		LINKFLAGS on $(stubbedLibroot)
30			= -shared -soname=libroot.so --version-script $(versionScript) ;
31		Ld $(stubbedLibroot) : $(stubsObject) ;
32	}
33}
34