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