Removal of non-Haiku target platform logic from build system (part 1.)
[haiku.git] / src / tests / system / boot / loader / Jamfile
blob79400a5b13412f9aceeb712af124cc1544d752ac
1 SubDir HAIKU_TOP src tests system boot loader ;
3 SetSubDirSupportedPlatformsBeOSCompatible ;
5 UsePrivateHeaders [ FDirName kernel disk_device_manager ] ;
6 UsePrivateHeaders [ FDirName kernel util ] ;
7 UsePrivateHeaders kernel shared storage system ;
8 SubDirSysHdrs $(HAIKU_TOP) headers private kernel arch $(TARGET_KERNEL_ARCH) ;
9 SubDirSysHdrs $(HAIKU_TOP) headers private system arch $(TARGET_ARCH) ;
10 SubDirSysHdrs $(HAIKU_TOP) src tests system boot loader ;
11 SubDirHdrs $(HAIKU_TOP) src system boot loader ;
12 SubDirHdrs $(HAIKU_TOP) src add-ons kernel partitioning_systems amiga ;
13 SubDirHdrs $(HAIKU_TOP) src add-ons kernel partitioning_systems apple ;
14 SubDirHdrs $(HAIKU_TOP) src add-ons kernel partitioning_systems gpt ;
15 SubDirHdrs $(HAIKU_TOP) src add-ons kernel partitioning_systems intel ;
17 # we need to redefine certain calls in the boot loader so that
18 # they will really be used instead of their POSIX counterparts
19 # in libroot.so
21 ObjectDefines
22         # boot loader
23         main.cpp
24         vfs.cpp
25         partitions.cpp
26         RootFileSystem.cpp
27         elf.cpp
28         menu.cpp
29         loader.cpp
30         kernel_args.cpp
31         load_driver_settings.cpp
32         pager.cpp
34         # other
35         platform_menu.cpp
36         driver_settings.cpp
38         # partitions
39         amiga_rdb.cpp
40         apple.cpp
42         efi_gpt.cpp
43         Header.cpp
44         crc32.cpp
45         utility.cpp
47         intel.cpp
48         PartitionMap.cpp
49         PartitionMapParser.cpp
50         :
51         read_pos=boot_read_pos fstat=boot_fstat open=boot_open close=boot_close main=boot_main
52         ;
55         local defines =
56                 _BOOT_MODE
57                 BOOT_ARCH=\\\"$(TARGET_ARCH)\\\"
58                         # the boot loader test application will try to load the BeOS kernel
59                         # from a supported partition/file system
61                 BOOT_SUPPORT_PARTITION_AMIGA
62                 BOOT_SUPPORT_PARTITION_APPLE
63                 BOOT_SUPPORT_PARTITION_EFI
64                 BOOT_SUPPORT_PARTITION_INTEL
66                 BOOT_SUPPORT_FILE_SYSTEM_BFS
67                 BOOT_SUPPORT_FILE_SYSTEM_AMIGA_FFS
68                 BOOT_SUPPORT_FILE_SYSTEM_TARFS
69                 ;
71         defines = [ FDefines $(defines) ] ;
73         if $(OS) = "LINUX" {
74                 SubDirC++Flags $(defines) ;
75         } else {
76                 #SubDirC++Flags $(defines) -DHAVE_READ_POS=1 -fcheck-memory-usage -D_NO_INLINE_ASM ;
77                 SubDirC++Flags $(defines) -DHAVE_READ_POS=1 -D_NO_INLINE_ASM ;
78         }
81 SimpleTest BootLoaderTest :
82         # userland bindings
83         platform_start.cpp
84         platform_console.cpp
85         platform_debug.cpp
86         platform_devices.cpp
87         platform_heap.cpp
88         platform_menu.cpp
89         platform_misc.cpp
90         platform_mmu.cpp
91         Handle.cpp
93         # boot loader
94         main.cpp
95         vfs.cpp
96         partitions.cpp
97         RootFileSystem.cpp
98         elf.cpp
99         menu.cpp
100         loader.cpp
101         kernel_args.cpp
102         load_driver_settings.cpp
103         pager.cpp
105         # partitioning systems
106         amiga_rdb.cpp
107         apple.cpp
109         efi_gpt.cpp
110         Header.cpp
111         crc32.cpp
112         utility.cpp
114         intel.cpp
115         PartitionMap.cpp
116         PartitionMapParser.cpp
118         # utility functions
119         list.cpp
120         driver_settings.cpp
121         ring_buffer.cpp
122         KMessage.cpp
124         :
125         boottest_bfs.a boottest_amiga_ffs.a boottest_tarfs.a libz.a
126         kernelland_emu
129 # Tell Jam where to find the utility sources
131 SEARCH on [ FGristFiles list.cpp ring_buffer.cpp ]
132         = [ FDirName $(HAIKU_TOP) src system kernel util ] ;
134 SEARCH on [ FGristFiles KMessage.cpp ]
135     = [ FDirName $(HAIKU_TOP) src system kernel messaging ] ;
137 SEARCH on [ FGristFiles strlcat.c strlcpy.c ]
138         = [ FDirName $(HAIKU_TOP) src system libroot posix string ] ;
140 SEARCH on [ FGristFiles driver_settings.cpp ]
141         = [ FDirName $(HAIKU_TOP) src system libroot os ] ;
143 SEARCH on [ FGristFiles
144                 main.cpp vfs.cpp partitions.cpp
145                 heap.cpp RootFileSystem.cpp
146                 elf.cpp menu.cpp loader.cpp
147                 kernel_args.cpp load_driver_settings.cpp pager.cpp
148         ] = [ FDirName $(HAIKU_TOP) src system boot loader ] ;
150 # partitioning system modules
152 SEARCH on [ FGristFiles amiga_rdb.cpp ]
153         = [ FDirName $(HAIKU_TOP) src add-ons kernel partitioning_systems amiga ] ;
155 SEARCH on [ FGristFiles apple.cpp ]
156         = [ FDirName $(HAIKU_TOP) src add-ons kernel partitioning_systems apple ] ;
158 SEARCH on [ FGristFiles efi_gpt.cpp Header.cpp crc32.cpp utility.cpp ]
159         = [ FDirName $(HAIKU_TOP) src add-ons kernel partitioning_systems gpt ] ;
161 SEARCH on [ FGristFiles intel.cpp PartitionMap.cpp PartitionMapParser.cpp ]
162         = [ FDirName $(HAIKU_TOP) src add-ons kernel partitioning_systems intel ] ;
165 SubInclude HAIKU_TOP src tests system boot loader file_systems ;