xref: /haiku/src/tools/bfs_shell/Jamfile (revision 1294543de9ac0eff000eaea1b18368c36435d08e)
1SubDir HAIKU_TOP src tools bfs_shell ;
2
3SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src add-ons kernel file_systems bfs ] ;
4
5# prevent inclusion of HaikuBuildCompatibility.h
6DEFINES += HAIKU_BUILD_COMPATIBILITY_H ;
7
8# set some additional defines
9{
10	local defines =
11		#BFS_BIG_ENDIAN_ONLY
12		BFS_SHELL
13		;
14
15	if $(DEBUG) = 0 {
16		# the gcc on BeOS doesn't compile BFS correctly with -O2 or more
17		OPTIM = -O1 ;
18	}
19
20	defines = [ FDefines $(defines) ] ;
21	SubDirCcFlags $(defines) -Wall -Wno-multichar ;
22	SubDirC++Flags $(defines) -Wall -Wno-multichar -fno-rtti ;
23}
24
25local libHaikuCompat ;
26if $(HOST_PLATFORM_BEOS_COMPATIBLE) && ! $(HOST_PLATFORM_HAIKU_COMPATIBLE) {
27	libHaikuCompat = libhaikucompat_build.a ;
28}
29
30# platform specific libraries
31local fsShellCommandLibs ;
32if ! $(HOST_PLATFORM_BEOS_COMPATIBLE) {
33	fsShellCommandLibs = $(HOST_NETWORK_LIBS) ;
34}
35
36UsePrivateHeaders storage ;
37
38UsePrivateHeaders fs_shell ;
39
40local bfsSource =
41	bfs_disk_system.cpp
42	BlockAllocator.cpp
43	BPlusTree.cpp
44	Attribute.cpp
45	Debug.cpp
46	Index.cpp
47	Inode.cpp
48	Journal.cpp
49	Query.cpp
50	Utility.cpp
51	Volume.cpp
52
53	kernel_interface.cpp
54;
55
56BuildPlatformMergeObject <build>bfs.o : $(bfsSource) ;
57
58BuildPlatformMain <build>bfs_shell
59	:
60	:
61	<build>bfs.o
62	<build>fs_shell.a $(libHaikuCompat) $(HOST_LIBSUPC++) $(HOST_LIBSTDC++)
63	$(HOST_LIBROOT) $(fsShellCommandLibs)
64;
65
66BuildPlatformMain <build>bfs_fuse
67	:
68	:
69	<build>bfs.o
70	<build>fuse_module.a
71	$(libHaikuCompat) $(HOST_LIBSUPC++) $(HOST_LIBSTDC++)
72	$(HOST_STATIC_LIBROOT) $(fsShellCommandLibs) fuse
73;
74