xref: /haiku/src/bin/Jamfile (revision 04a0e9c7b68cbe3a43d38e2bca8e860fd80936fb)
1SubDir HAIKU_TOP src bin ;
2
3HAIKU_MULTIPLE_LOCALIZED_TARGETS on $(SUBDIR) = 1 ;
4
5SetSubDirSupportedPlatformsBeOSCompatible ;
6
7AddSubDirSupportedPlatforms libbe_test ;
8
9UsePrivateHeaders app interface shared storage support tracker usb ;
10UsePrivateSystemHeaders ;
11SubDirHdrs $(HAIKU_TOP) src add-ons kernel file_cache ;
12UseLibraryHeaders ncurses ;
13
14local haiku-utils_rsrc = [ FGristFiles haiku-utils.rsrc ] ;
15
16ResComp $(haiku-utils_rsrc) : [ FGristFiles haiku-utils.rdef ] ;
17
18AddResources checkitout : checkitout.rdef ;
19AddResources dstcheck : dstcheck.rdef ;
20AddResources fortune : fortune.rdef ;
21AddResources hey : hey.rdef ;
22AddResources mimeset : mimeset.rdef ;
23AddResources mountvolume : mountvolume.rdef ;
24AddResources notify : notify.rdef ;
25AddResources setmime : setmime.rdef ;
26AddResources urlwrapper : urlwrapper.rdef ;
27
28# standard commands that don't need any additional library
29StdBinCommands
30	badblocks.cpp
31	cal.c
32	chop.c
33	clear.c
34	driveinfo.c
35	error.c
36	fortune.c
37	finddir.c
38	fstrim.cpp
39	hd.c
40	idestatus.c
41	listarea.c
42	listimage.c
43	listport.c
44	listsem.c
45	logger.cpp
46	lsindex.cpp
47	prio.c
48	ps.c
49	release.c
50	renice.c
51	rescan.c
52	sysinfo.cpp
53	unchop.c
54	uptime.cpp
55	vmstat.cpp
56	: : $(haiku-utils_rsrc) ;
57
58# Commands which don't need another library that depend on
59# Haiku-specific code
60if $(TARGET_PLATFORM) = haiku {
61StdBinCommands
62	boot_process_done.cpp
63	fdinfo.cpp
64	mount.c
65	rmattr.cpp
66	rmindex.cpp
67	safemode.c
68	unmount.c
69	: : $(haiku-utils_rsrc) ;
70}
71
72# standard commands that need libncurses.a
73StdBinCommands
74	top.c
75	: libncurses.a : $(haiku-utils_rsrc) ;
76
77# standard commands that need libbe.so
78StdBinCommands
79	beep.cpp
80	catattr.cpp
81	checkfs.cpp
82	clipboard.cpp
83	clockconfig.cpp
84	df.cpp
85	diskimage.cpp
86	dpms.cpp
87	draggers.cpp
88	ffm.cpp
89	iroster.cpp
90	listattr.cpp
91	listfont.cpp
92	listres.cpp
93	mkindex.cpp
94	message.cpp
95	modifiers.cpp
96	mvattr.cpp
97	open.cpp
98	play.cpp
99	query.cpp
100	quit.cpp
101	roster.cpp
102	setversion.cpp
103	trash.cpp
104	version.cpp
105	waitfor.cpp
106	WindowShade.cpp
107	: be : $(haiku-utils_rsrc) ;
108
109if $(TARGET_PLATFORM) = libbe_test {
110	HaikuInstall install-test-apps : $(HAIKU_APP_TEST_DIR) : setdecor
111		: tests!apps ;
112}
113
114# standard commands that need libbe.so and libsupc++.so
115StdBinCommands
116	alert.cpp
117	eject.cpp
118	getarch.cpp
119	hey.cpp
120	reindex.cpp
121	resattr.cpp
122	setarch.cpp
123	setdecor.cpp
124	settype.cpp
125	spybmessage.cpp
126	urlwrapper.cpp
127	: be $(TARGET_LIBSUPC++) : $(haiku-utils_rsrc) ;
128
129# standard commands that need libbe.so, libsupc++.so, and libshared.a
130StdBinCommands
131	ramdisk.cpp
132	: libshared.a be $(TARGET_LIBSUPC++) : $(haiku-utils_rsrc) ;
133
134# commands that need libbe.so and the stub catalog
135StdBinCommands
136	clockconfig.cpp
137	query.cpp
138	: be localestub : $(haiku-utils_rsrc) ;
139
140# commands that need libbe.so, libsupc++.so and the stub catalog
141StdBinCommands
142	dstcheck.cpp
143	: be $(TARGET_LIBSUPC++) localestub : $(haiku-utils_rsrc) ;
144
145# Haiku-specific apps which need libbe.so
146if $(TARGET_PLATFORM) = haiku {
147StdBinCommands
148	isvolume.cpp
149	shutdown.cpp
150	: be : $(haiku-utils_rsrc) ;
151}
152
153# standard commands that need libbe.so, libstdc++.so
154StdBinCommands
155	copyattr.cpp
156	setmime.cpp
157	xres.cpp
158	: be $(TARGET_LIBSTDC++) : $(haiku-utils_rsrc) ;
159
160# Haiku-specific apps which need libbe.so, libstdc++.so
161if $(TARGET_PLATFORM) = haiku {
162StdBinCommands
163	mountvolume.cpp
164	: be $(TARGET_LIBSTDC++) : $(haiku-utils_rsrc) ;
165}
166
167# commands that need libstdc++ only
168StdBinCommands
169	diff_zip.cpp
170	: $(TARGET_LIBSTDC++) : $(haiku-utils_rsrc) ;
171
172# standard commands that need libbe.so, libtranslation.so, libsupc++.so
173StdBinCommands
174	translate.cpp
175	: be translation $(TARGET_LIBSUPC++) : $(haiku-utils_rsrc) ;
176
177# standard commands that need libbe.so, libtranslation.so, libicon.a, libstdc++.so
178StdBinCommands
179	notify.cpp
180	: be translation libicon.a $(TARGET_LIBSTDC++) : $(haiku-utils_rsrc) ;
181
182# standard commands that need libbe.so, libmedia.so
183StdBinCommands
184	installsound.cpp
185	: be libmedia.so : $(haiku-utils_rsrc) ;
186
187# standard commands that need libbe.so, libmedia.so, libsupc++.so
188StdBinCommands
189	setvolume.cpp
190	: be libmedia.so $(TARGET_LIBSUPC++) : $(haiku-utils_rsrc) ;
191
192# standard commands that need libbe.so, libmail.so
193StdBinCommands
194	mail.cpp
195	: be libmail.so : $(haiku-utils_rsrc) ;
196
197# standard commands that need libbe.so, libpackage.so, libsupc++.so
198StdBinCommands
199	findpaths.cpp
200	: be package $(TARGET_LIBSUPC++) : $(haiku-utils_rsrc) ;
201
202# standard commands that need libbe.so, libdevice.so
203StdBinCommands
204	listusb.cpp
205	setusbconfig.cpp
206	: be libdevice.so : $(haiku-utils_rsrc) ;
207
208ObjectHdrs [ FGristFiles listusb$(SUFOBJ) ]
209	: [ FDirName $(SUBDIR) $(DOTDOT) add-ons kernel bus_managers usb ]
210		[ FDirName $(TARGET_COMMON_DEBUG_OBJECT_DIR_$(TARGET_PACKAGING_ARCH))
211			apps devices ] ;
212Includes [ FGristFiles listusb.cpp ] : <src!apps!devices>usbhdr.h ;
213
214# standard commands that need libbluetooth.so, due the Bluetooth Kit
215StdBinCommands
216	bt_dev_info.cpp
217	: be libbluetooth.so : $(haiku-utils_rsrc) ;
218
219StdBinCommands
220	bt_discovery.cpp
221	: be libbluetooth.so $(TARGET_LIBSUPC++) : $(haiku-utils_rsrc) ;
222
223
224# standard commands that need libbe.so, libtracker.so
225StdBinCommands
226	checkitout.cpp
227	: be tracker $(TARGET_LIBSUPC++) : $(haiku-utils_rsrc) ;
228
229#standard commands that need libbe.so, libtracker.so and the stub catalog
230StdBinCommands
231	filepanel.cpp
232	: be tracker $(TARGET_LIBSUPC++) localestub : $(haiku-utils_rsrc) ;
233
234# standard commands that need libncurses.a
235StdBinCommands
236	watch.c
237	: libncurses.a : $(haiku-utils_rsrc) ;
238
239# mimeset needs libstorage_kit_mime.a
240StdBinCommands
241	mimeset.cpp
242	: be libstorage_kit_mime.a $(TARGET_LIBSTDC++) : $(haiku-utils_rsrc) ;
243
244# Localization of some applications
245DoCatalogs dstcheck
246	: x-vnd.Haiku-cmd-dstconfig
247	: dstcheck.cpp
248;
249
250DoCatalogs filepanel
251	: x-vnd.mmu_man.filepanel
252	: filepanel.cpp
253;
254
255SubInclude HAIKU_TOP src bin addattr ;
256SubInclude HAIKU_TOP src bin bash ;
257SubInclude HAIKU_TOP src bin bc ;
258SubInclude HAIKU_TOP src bin bfs_tools ;
259SubInclude HAIKU_TOP src bin compress ;
260SubInclude HAIKU_TOP src bin consoled ;
261SubInclude HAIKU_TOP src bin coreutils ;
262SubInclude HAIKU_TOP src bin desklink ;
263SubInclude HAIKU_TOP src bin diffutils ;
264SubInclude HAIKU_TOP src bin findutils ;
265SubInclude HAIKU_TOP src bin fwcontrol ;
266SubInclude HAIKU_TOP src bin gawk ;
267SubInclude HAIKU_TOP src bin gdb ;
268SubInclude HAIKU_TOP src bin hid_decode ;
269SubInclude HAIKU_TOP src bin ideinfo ;
270SubInclude HAIKU_TOP src bin keymap ;
271SubInclude HAIKU_TOP src bin keystore ;
272SubInclude HAIKU_TOP src bin less ;
273SubInclude HAIKU_TOP src bin listdev ;
274SubInclude HAIKU_TOP src bin locale ;
275SubInclude HAIKU_TOP src bin makebootable ;
276#SubInclude HAIKU_TOP src bin makeudfimage ;
277SubInclude HAIKU_TOP src bin mail_utils ;
278SubInclude HAIKU_TOP src bin mkdos ;
279SubInclude HAIKU_TOP src bin mkfs ;
280SubInclude HAIKU_TOP src bin multiuser ;
281SubInclude HAIKU_TOP src bin package ;
282SubInclude HAIKU_TOP src bin package_repo ;
283SubInclude HAIKU_TOP src bin patch ;
284SubInclude HAIKU_TOP src bin pc ;
285SubInclude HAIKU_TOP src bin pcmcia-cs ;
286SubInclude HAIKU_TOP src bin pkgman ;
287SubInclude HAIKU_TOP src bin playsound ;
288SubInclude HAIKU_TOP src bin rc ;
289SubInclude HAIKU_TOP src bin rmd160 ;
290SubInclude HAIKU_TOP src bin screen_blanker ;
291SubInclude HAIKU_TOP src bin screenmode ;
292SubInclude HAIKU_TOP src bin sharutils ;
293SubInclude HAIKU_TOP src bin writembr ;
294SubInclude HAIKU_TOP src bin zic ;
295
296# RCS commands
297SubInclude HAIKU_TOP src bin rcs ;
298
299# debugging tools
300SubInclude HAIKU_TOP src bin debug ;
301
302# Network command line tools
303SubInclude HAIKU_TOP src bin network ;
304
305# Compression command line tools
306SubInclude HAIKU_TOP src bin unzip ;
307SubInclude HAIKU_TOP src bin zip ;
308SubInclude HAIKU_TOP src bin gzip ;
309
310# Other stuff
311SubInclude HAIKU_TOP src bin filteredquery ;
312