xref: /haiku/src/system/boot/loader/file_systems/packagefs/Jamfile (revision 4c8e85b316c35a9161f5a1c50ad70bc91c83a76f)
1SubDir HAIKU_TOP src system boot loader file_systems packagefs ;
2
3UsePrivateHeaders kernel shared storage support ;
4UseBuildFeatureHeaders zlib ;
5UseBuildFeatureHeaders zstd ;
6
7DEFINES += _BOOT_MODE ;
8
9if [ FIsBuildFeatureEnabled zstd ] {
10	DEFINES += ZSTD_ENABLED ;
11}
12
13local kernelC++Header = [ FDirName $(HAIKU_TOP) headers private kernel util
14	kernel_cpp.h ] ;
15
16SubDirC++Flags -fno-rtti -include $(kernelC++Header) ;
17
18local platform ;
19for platform in [ MultiBootSubDirSetup ] {
20	on $(platform) {
21		UsePrivateHeaders [ FDirName kernel boot platform $(TARGET_BOOT_PLATFORM) ] ;
22
23		SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits package ] ;
24		SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits package hpkg ] ;
25		SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits storage ] ;
26		SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits support ] ;
27
28		BootStaticLibrary [ MultiBootGristFiles boot_packagefs ] :
29			packagefs.cpp
30			PackageSettingsItem.cpp
31
32			# package kit/hpkg
33			DataReader.cpp
34			ErrorOutput.cpp
35			FDDataReader.cpp
36			PackageContentHandler.cpp
37			PackageData.cpp
38			PackageDataReader.cpp
39			PackageEntry.cpp
40			PackageEntryAttribute.cpp
41			PackageFileHeapAccessorBase.cpp
42			PackageFileHeapReader.cpp
43			PackageReaderImpl.cpp
44			ReaderImplBase.cpp
45
46			# storage kit
47			FdIO.cpp
48
49			# support kit
50			CompressionAlgorithm.cpp
51			ZlibCompressionAlgorithm.cpp
52			ZstdCompressionAlgorithm.cpp
53		;
54
55		Includes [ FGristFiles ZlibCompressionAlgorithm.cpp ]
56			: [ BuildFeatureAttribute zlib : headers ] ;
57		Includes [ FGristFiles ZstdCompressionAlgorithm.cpp ]
58			: [ BuildFeatureAttribute zstd : headers ] ;
59	}
60}
61