From 4499da3990dcd46133bc5797dd2f14177175d1dd Mon Sep 17 00:00:00 2001 From: Philippe Houdoin Date: Mon, 17 Jan 2011 16:50:58 +0000 Subject: [PATCH] Moved generic boot platform code to its own static lib, boot_platform_generic.a. I hope I didn't break anything, as I can and have only test bios_ia32's haiku_loader. Flame me otherwise. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40240 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/system/boot/platform/Jamfile | 2 ++ src/system/boot/platform/amiga_m68k/Jamfile | 12 +----------- src/system/boot/platform/atari_m68k/Jamfile | 12 +----------- src/system/boot/platform/bios_ia32/Jamfile | 14 +------------- src/system/boot/platform/generic/Jamfile | 13 +++++++++++++ src/system/boot/platform/openfirmware/Jamfile | 14 +++----------- src/system/boot/platform/pxe_ia32/Jamfile | 10 +--------- src/system/boot/platform/u-boot/Jamfile | 9 +-------- 8 files changed, 23 insertions(+), 63 deletions(-) create mode 100644 src/system/boot/platform/generic/Jamfile diff --git a/src/system/boot/platform/Jamfile b/src/system/boot/platform/Jamfile index 64f5917ff8..5821c4e739 100644 --- a/src/system/boot/platform/Jamfile +++ b/src/system/boot/platform/Jamfile @@ -1,5 +1,7 @@ SubDir HAIKU_TOP src system boot platform ; if $(TARGET_BOOT_PLATFORM) { + SubInclude HAIKU_TOP src system boot platform generic ; SubInclude HAIKU_TOP src system boot platform $(TARGET_BOOT_PLATFORM) ; } + diff --git a/src/system/boot/platform/amiga_m68k/Jamfile b/src/system/boot/platform/amiga_m68k/Jamfile index 94fff30006..9f223dd3cc 100644 --- a/src/system/boot/platform/amiga_m68k/Jamfile +++ b/src/system/boot/platform/amiga_m68k/Jamfile @@ -2,8 +2,6 @@ SubDir HAIKU_TOP src system boot platform amiga_m68k ; SubDirHdrs $(HAIKU_TOP) headers private kernel boot platform $(TARGET_BOOT_PLATFORM) ; -SubDirSysHdrs $(HAIKU_TOP) headers libs zlib ; - UsePrivateHeaders [ FDirName kernel boot platform $(TARGET_BOOT_PLATFORM) ] ; UsePrivateHeaders [ FDirName kernel platform $(TARGET_BOOT_PLATFORM) ] ; UsePrivateHeaders [ FDirName kernel disk_device_manager ] ; @@ -21,13 +19,6 @@ UsePrivateHeaders [ FDirName storage ] ; #SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src add-ons accelerants common ] ; -local genericPlatformSources = - text_menu.cpp - video_blit.cpp - video_splash.cpp -; - - KernelMergeObject boot_platform_amiga_m68k_shell.o : shell.S : -Wa,--pcrel @@ -54,13 +45,12 @@ KernelMergeObject boot_platform_amiga_m68k_other.o : video.cpp #apm.cpp - $(genericPlatformSources) - # VESA/DDC EDID #decode_edid.c #dump_edid.c : -fno-pic #-Wa,--pcrel + : boot_platform_generic.a ; diff --git a/src/system/boot/platform/atari_m68k/Jamfile b/src/system/boot/platform/atari_m68k/Jamfile index c02d3bf121..287666bf85 100644 --- a/src/system/boot/platform/atari_m68k/Jamfile +++ b/src/system/boot/platform/atari_m68k/Jamfile @@ -2,8 +2,6 @@ SubDir HAIKU_TOP src system boot platform atari_m68k ; SubDirHdrs $(HAIKU_TOP) headers private kernel boot platform $(TARGET_BOOT_PLATFORM) ; -SubDirSysHdrs $(HAIKU_TOP) headers libs zlib ; - UsePrivateHeaders [ FDirName kernel boot platform $(TARGET_BOOT_PLATFORM) ] ; UsePrivateHeaders [ FDirName kernel platform $(TARGET_BOOT_PLATFORM) ] ; UsePrivateHeaders [ FDirName kernel disk_device_manager ] ; @@ -21,13 +19,6 @@ UsePrivateHeaders [ FDirName storage ] ; #SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src add-ons accelerants common ] ; -local genericPlatformSources = - text_menu.cpp - video_blit.cpp - video_splash.cpp -; - - KernelMergeObject boot_platform_atari_m68k_shell.o : shell.S : -Wa,--pcrel @@ -59,13 +50,12 @@ KernelMergeObject boot_platform_atari_m68k_other.o : video.cpp #apm.cpp - $(genericPlatformSources) - # VESA/DDC EDID #decode_edid.c #dump_edid.c : -fno-pic #-Wa,--pcrel + : boot_platform_generic.a ; diff --git a/src/system/boot/platform/bios_ia32/Jamfile b/src/system/boot/platform/bios_ia32/Jamfile index 320540d5b5..2372272467 100644 --- a/src/system/boot/platform/bios_ia32/Jamfile +++ b/src/system/boot/platform/bios_ia32/Jamfile @@ -2,8 +2,6 @@ SubDir HAIKU_TOP src system boot platform bios_ia32 ; SubDirHdrs $(HAIKU_TOP) headers private kernel boot platform $(TARGET_BOOT_PLATFORM) ; -SubDirSysHdrs $(HAIKU_TOP) headers libs zlib ; - UsePrivateHeaders [ FDirName kernel disk_device_manager ] ; UsePrivateHeaders [ FDirName graphics common ] ; UsePrivateHeaders [ FDirName graphics vesa ] ; @@ -19,12 +17,6 @@ UsePrivateHeaders [ FDirName storage ] ; SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src add-ons accelerants common ] ; -local genericPlatformSources = - text_menu.cpp - video_blit.cpp - video_splash.cpp -; - KernelMergeObject boot_platform_bios_ia32.o : shell.S start.cpp @@ -46,18 +38,14 @@ KernelMergeObject boot_platform_bios_ia32.o : apm.cpp hpet.cpp - $(genericPlatformSources) - # VESA/DDC EDID decode_edid.c dump_edid.c : -fno-pic + : boot_platform_generic.a ; -SEARCH on [ FGristFiles $(genericPlatformSources) ] - = [ FDirName $(HAIKU_TOP) src system boot platform generic ] ; - # Tell the build system to where stage1.bin can be found, so it can be used # elsewhere. SEARCH on stage1.bin = $(SUBDIR) ; diff --git a/src/system/boot/platform/generic/Jamfile b/src/system/boot/platform/generic/Jamfile new file mode 100644 index 0000000000..0ca49679b0 --- /dev/null +++ b/src/system/boot/platform/generic/Jamfile @@ -0,0 +1,13 @@ +SubDir HAIKU_TOP src system boot platform generic ; + +SubDirSysHdrs $(HAIKU_TOP) headers libs zlib ; +UsePrivateKernelHeaders ; + +SubDirC++Flags -D_BOOT_MODE -fno-rtti ; + +KernelStaticLibrary boot_platform_generic : + text_menu.cpp + video_blit.cpp + video_splash.cpp + : -fno-pic +; diff --git a/src/system/boot/platform/openfirmware/Jamfile b/src/system/boot/platform/openfirmware/Jamfile index 53deaa86e6..227df039bf 100644 --- a/src/system/boot/platform/openfirmware/Jamfile +++ b/src/system/boot/platform/openfirmware/Jamfile @@ -4,16 +4,8 @@ SubDirC++Flags -D_BOOT_MODE -fno-rtti ; UsePrivateHeaders [ FDirName graphics common ] ; -SubDirSysHdrs $(HAIKU_TOP) headers libs zlib ; - SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src add-ons accelerants common ] ; -local genericPlatformSources = - text_menu.cpp - video_blit.cpp - video_splash.cpp -; - KernelMergeObject boot_platform_openfirmware.o : console.cpp debug.cpp @@ -31,14 +23,14 @@ KernelMergeObject boot_platform_openfirmware.o : openfirmware.cpp openfirmware_devices.cpp - $(genericPlatformSources) - # VESA/DDC EDID decode_edid.c dump_edid.c : - : boot_platform_openfirmware_$(TARGET_ARCH).a + : + boot_platform_generic.a + boot_platform_openfirmware_$(TARGET_ARCH).a ; SEARCH on [ FGristFiles $(genericPlatformSources) ] diff --git a/src/system/boot/platform/pxe_ia32/Jamfile b/src/system/boot/platform/pxe_ia32/Jamfile index 384339bf64..95eda43995 100644 --- a/src/system/boot/platform/pxe_ia32/Jamfile +++ b/src/system/boot/platform/pxe_ia32/Jamfile @@ -4,8 +4,6 @@ SubDirHdrs $(SUBDIR) $(DOTDOT) bios_ia32 ; SubDirHdrs $(HAIKU_TOP) headers private kernel boot platform bios_ia32 ; SubDirHdrs $(HAIKU_TOP) headers private kernel boot platform $(TARGET_BOOT_PLATFORM) ; -SubDirSysHdrs $(HAIKU_TOP) headers libs zlib ; - UsePrivateHeaders [ FDirName kernel disk_device_manager ] ; UsePrivateHeaders [ FDirName graphics common ] ; UsePrivateHeaders [ FDirName graphics vesa ] ; @@ -19,12 +17,6 @@ UsePrivateHeaders [ FDirName storage ] ; SubDirC++Flags $(defines) -fno-rtti ; } -local genericPlatformSources = - text_menu.cpp - video_blit.cpp - video_splash.cpp -; - local bios_ia32_src = start.cpp debug.cpp @@ -59,9 +51,9 @@ KernelMergeObject boot_platform_pxe_ia32.o : pxe_undi.cpp $(bios_ia32_src) $(bios_ia32_edid_src) - $(genericPlatformSources) : -fno-pic + : boot_platform_generic.a ; diff --git a/src/system/boot/platform/u-boot/Jamfile b/src/system/boot/platform/u-boot/Jamfile index ff97fc538a..b177daca71 100644 --- a/src/system/boot/platform/u-boot/Jamfile +++ b/src/system/boot/platform/u-boot/Jamfile @@ -4,8 +4,6 @@ SubDirHdrs $(HAIKU_TOP) headers private kernel boot platform $(TARGET_BOOT_PLATF SubDirHdrs $(HAIKU_TOP) src system boot arch $(TARGET_ARCH) ; -SubDirSysHdrs $(HAIKU_TOP) headers libs zlib ; - UsePrivateHeaders [ FDirName kernel disk_device_manager ] ; UsePrivateHeaders [ FDirName graphics common ] ; UsePrivateHeaders [ FDirName graphics vesa ] ; @@ -29,12 +27,6 @@ local uImageFakeOS = "netbsd" ; SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src add-ons accelerants common ] ; -local genericPlatformSources = - text_menu.cpp - video_blit.cpp - video_splash.cpp -; - KernelMergeObject boot_platform_u-boot.o : shell.S start2.cpp @@ -52,6 +44,7 @@ KernelMergeObject boot_platform_u-boot.o : : -fno-pic + : boot_platform_generic.a ; # include board-specific defs