xref: /haiku/src/tools/Jamfile (revision 89755088d790ff4fe36f8aa77dacb2bd15507108)
1SubDir HAIKU_TOP src tools ;
2
3UseHeaders [ FDirName $(HAIKU_TOP) headers build private app ] : true ;
4UseHeaders [ FDirName $(HAIKU_TOP) headers build private storage ] : true ;
5
6SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src/bin ] ;
7
8local tools =
9	<build>catattr
10	<build>copyattr
11	<build>listattr
12	<build>mimeset
13	<build>mkindex
14	<build>rm_attrs_tmp
15	<build>rmattr
16	<build>settype
17	<build>setversion
18	<build>xres
19;
20
21USES_BE_API on $(tools) = true ;
22
23# TODO: temporary kludge
24local libHaikuCompat ;
25if $(HOST_PLATFORM) in r5 bone dano {
26	ObjectC++Flags database_support.cpp UpdateMimeInfoThread.cpp
27		MimeUpdateThread.cpp
28		: -include [ FDirName $(HAIKU_TOP) headers build
29			HaikuBuildCompatibility.h ] ;
30	libHaikuCompat = libhaikucompat_build.a ;
31}
32
33BuildPlatformMain <build>catattr : catattr.cpp : $(HOST_LIBBE) ;
34
35UsePrivateObjectHeaders copyattr.cpp : shared : : true ;
36BuildPlatformMain <build>copyattr : copyattr.cpp
37	: $(HOST_LIBBE) $(HOST_LIBSTDC++) $(HOST_LIBSUPC++) ;
38
39BuildPlatformMain <build>data_to_source : data_to_source.cpp
40	: $(HOST_LIBSUPC++) ;
41
42BuildPlatformMain <build>generate_boot_screen : generate_boot_screen.cpp
43	: $(HOST_LIBSUPC++) $(HOST_LIBSTDC++) png z ;
44
45BuildPlatformMain <build>listattr : listattr.cpp : $(HOST_LIBBE) ;
46
47if $(HOST_PLATFORM_BEOS_COMPATIBLE) {
48	AddResources <build>mimeset : mimeset.rdef ;
49}
50BuildPlatformMain <build>mimeset :
51	mimeset.cpp
52	Mime.cpp
53	database_support.cpp
54	UpdateMimeInfoThread.cpp
55	MimeUpdateThread.cpp
56	: $(HOST_LIBBE) $(HOST_LIBSTDC++) $(HOST_LIBSUPC++) $(libHaikuCompat)
57;
58
59BuildPlatformMain <build>mkindex : mkindex.cpp : $(HOST_LIBBE) ;
60
61# We want rm_attrs to be self-contained, so we link against the static libroot.
62HOST_LIBROOT on <build>rm_attrs_tmp = $(HOST_STATIC_LIBROOT) ;
63BuildPlatformMain <build>rm_attrs_tmp : rm_attrs.cpp
64	: $(HOST_LIBSUPC++) $(HOST_LIBSTDC++) ;
65MakeLocateDebug <build>rm_attrs ;
66File <build>rm_attrs : <build>rm_attrs_tmp ;
67MODE on <build>rm_attrs = 755 ;
68
69BuildPlatformMain <build>rmattr : rmattr.cpp : $(HOST_LIBBE) ;
70
71BuildPlatformMain <build>set_haiku_revision : set_haiku_revision.cpp
72	: $(HOST_LIBSTDC++) $(HOST_LIBSUPC++) ;
73
74BuildPlatformMain <build>settype : settype.cpp : $(HOST_LIBBE)
75	$(HOST_LIBSTDC++) $(HOST_LIBSUPC++) ;
76
77BuildPlatformMain <build>setversion : setversion.cpp : $(HOST_LIBBE)
78	$(HOST_LIBSTDC++) $(HOST_LIBSUPC++) $(libHaikuCompat) ;
79
80BuildPlatformMain <build>xres : xres.cpp : $(HOST_LIBBE) $(HOST_LIBSTDC++)
81	$(HOST_LIBSUPC++) ;
82
83SEARCH on [ FGristFiles
84		Mime.cpp
85	] = [ FDirName $(HAIKU_TOP) src build libbe storage ] ;
86
87SEARCH on [ FGristFiles
88		UpdateMimeInfoThread.cpp MimeUpdateThread.cpp database_support.cpp
89	] = [ FDirName $(HAIKU_TOP) src build libbe storage mime ] ;
90
91SubInclude HAIKU_TOP src tools addattr ;
92SubInclude HAIKU_TOP src tools bfs_shell ;
93SubInclude HAIKU_TOP src tools copy_to_bfs_image ;
94SubInclude HAIKU_TOP src tools cppunit ;
95SubInclude HAIKU_TOP src tools docbook ;
96SubInclude HAIKU_TOP src tools elfsymbolpatcher ;
97SubInclude HAIKU_TOP src tools fs_shell ;
98SubInclude HAIKU_TOP src tools gensyscalls ;
99SubInclude HAIKU_TOP src tools keymap ;
100SubInclude HAIKU_TOP src tools makebootable ;
101SubInclude HAIKU_TOP src tools rc ;
102SubInclude HAIKU_TOP src tools remote_disk_server ;
103SubInclude HAIKU_TOP src tools resattr ;
104SubInclude HAIKU_TOP src tools rman ;
105SubInclude HAIKU_TOP src tools translation ;
106SubInclude HAIKU_TOP src tools unzip ;
107SubInclude HAIKU_TOP src tools vmdkheader ;
108SubInclude HAIKU_TOP src tools unflatten ;
109
110