xref: /haiku/src/tools/bfs_shell/Jamfile (revision 45b01eb84189a623981270a02d21c7a8cb93a9e1)
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 fs_shell ;
37
38local bfsSource =
39	bfs_disk_system.cpp
40	BlockAllocator.cpp
41	BPlusTree.cpp
42	Attribute.cpp
43	Debug.cpp
44	Index.cpp
45	Inode.cpp
46	Journal.cpp
47	Query.cpp
48	Utility.cpp
49	Volume.cpp
50
51	kernel_interface.cpp
52;
53
54BuildPlatformMergeObject <build>bfs.o : $(bfsSource) ;
55
56BuildPlatformMain <build>bfs_shell
57	:
58	:
59	<build>bfs.o
60	<build>fs_shell.a $(libHaikuCompat) $(HOST_LIBSUPC++) $(HOST_LIBSTDC++)
61	$(HOST_LIBROOT) $(fsShellCommandLibs)
62;
63
64BuildPlatformMain <build>bfs_fuse
65	:
66	:
67	<build>bfs.o
68	<build>fuse_module.a
69	$(libHaikuCompat) $(HOST_LIBSUPC++) $(HOST_LIBSTDC++)
70	$(HOST_STATIC_LIBROOT) $(fsShellCommandLibs) fuse
71;
72