xref: /haiku/src/bin/Jamfile (revision 820dca4df6c7bf955c46e8f6521b9408f50b2900)
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 usb ;
10UsePrivateSystemHeaders ;
11SubDirHdrs $(HAIKU_TOP) src add-ons kernel file_cache ;
12UseLibraryHeaders ncurses ;
13UseLibraryHeaders termcap ;
14
15local haiku-utils_rsrc = [ FGristFiles haiku-utils.rsrc ] ;
16
17ResComp $(haiku-utils_rsrc) : [ FGristFiles haiku-utils.rdef ] ;
18
19AddResources checkitout : checkitout.rdef ;
20AddResources dstcheck : dstcheck.rdef ;
21AddResources fortune : fortune.rdef ;
22AddResources hey : hey.rdef ;
23AddResources mimeset : mimeset.rdef ;
24AddResources mountvolume : mountvolume.rdef ;
25AddResources notify : notify.rdef ;
26AddResources setmime : setmime.rdef ;
27AddResources urlwrapper : urlwrapper.rdef ;
28
29# standard commands that don't need any additional library
30StdBinCommands
31	badblocks.cpp
32	cal.c
33	chop.c
34	clear.c
35	driveinfo.c
36	error.c
37	fortune.c
38	finddir.c
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 libtermcap.a
73StdBinCommands
74	top.c
75	tput.c
76	: libtermcap.a : $(haiku-utils_rsrc) ;
77
78# standard commands that need libbe.so
79StdBinCommands
80	beep.cpp
81	catattr.cpp
82	checkfs.cpp
83	clipboard.cpp
84	clockconfig.cpp
85	df.cpp
86	diskimage.cpp
87	dpms.cpp
88	draggers.cpp
89	ffm.cpp
90	iroster.cpp
91	listattr.cpp
92	listfont.cpp
93	listres.cpp
94	mimeset.cpp
95	mkindex.cpp
96	message.cpp
97	modifiers.cpp
98	mvattr.cpp
99	open.cpp
100	play.cpp
101	query.cpp
102	quit.cpp
103	roster.cpp
104	setversion.cpp
105	trash.cpp
106	version.cpp
107	waitfor.cpp
108	WindowShade.cpp
109	: be : $(haiku-utils_rsrc) ;
110
111if $(TARGET_PLATFORM) = libbe_test {
112	HaikuInstall install-test-apps : $(HAIKU_APP_TEST_DIR) : setdecor
113		: tests!apps ;
114}
115
116# standard commands that need libbe.so and libsupc++.so
117StdBinCommands
118	alert.cpp
119	eject.cpp
120	hey.cpp
121	reindex.cpp
122	resattr.cpp
123	setdecor.cpp
124	settype.cpp
125	spybmessage.cpp
126	urlwrapper.cpp
127	: be $(TARGET_LIBSUPC++) : $(haiku-utils_rsrc) ;
128
129# commands that need libbe.so and the stub catalog
130StdBinCommands
131	clockconfig.cpp
132	query.cpp
133	: be $(HAIKU_LOCALE_LIBS) : $(haiku-utils_rsrc) ;
134
135# commands that need libbe.so, libsupc++.so and the stub catalog
136StdBinCommands
137	dstcheck.cpp
138	: be $(TARGET_LIBSUPC++) $(HAIKU_LOCALE_LIBS) : $(haiku-utils_rsrc) ;
139
140# Haiku-specific apps which need libbe.so
141if $(TARGET_PLATFORM) = haiku {
142StdBinCommands
143	isvolume.cpp
144	shutdown.cpp
145	: be : $(haiku-utils_rsrc) ;
146}
147
148# standard commands that need libbe.so, libstdc++.so
149StdBinCommands
150	copyattr.cpp
151	setmime.cpp
152	xres.cpp
153	: be $(TARGET_LIBSTDC++) : $(haiku-utils_rsrc) ;
154
155# Haiku-specific apps which need libbe.so, libstdc++.so
156if $(TARGET_PLATFORM) = haiku {
157StdBinCommands
158	mountvolume.cpp
159	: be $(TARGET_LIBSTDC++) : $(haiku-utils_rsrc) ;
160}
161
162# commands that need libstdc++ only
163StdBinCommands
164	diff_zip.cpp
165	: $(TARGET_LIBSTDC++) : $(haiku-utils_rsrc) ;
166
167# standard commands that need libbe.so, libtranslation.so, libsupc++.so
168StdBinCommands
169	translate.cpp
170	: be translation $(TARGET_LIBSUPC++) : $(haiku-utils_rsrc) ;
171
172# standard commands that need libbe.so, libtranslation.so, libicon.a, libstdc++.so
173StdBinCommands
174	notify.cpp
175	: be translation libicon.a $(TARGET_LIBSTDC++) : $(haiku-utils_rsrc) ;
176
177# standard commands that need libbe.so, libmedia.so
178StdBinCommands
179	installsound.cpp
180	: be libmedia.so : $(haiku-utils_rsrc) ;
181
182# standard commands that need libbe.so, libmedia.so, libsupc++.so
183StdBinCommands
184	setvolume.cpp
185	: be libmedia.so $(TARGET_LIBSUPC++) : $(haiku-utils_rsrc) ;
186
187# standard commands that need libbe.so, libmail.so
188StdBinCommands
189	mail.cpp
190	: be libmail.so : $(haiku-utils_rsrc) ;
191
192# standard commands that need libbe.so, libdevice.so
193StdBinCommands
194	listusb.cpp
195	setusbconfig.cpp
196	: be libdevice.so : $(haiku-utils_rsrc) ;
197
198ObjectHdrs [ FGristFiles listusb$(SUFOBJ) ]
199	: [ FDirName $(SUBDIR) $(DOTDOT) add-ons kernel bus_managers usb ]
200		[ FDirName $(TARGET_COMMON_DEBUG_OBJECT_DIR) apps devices ] ;
201Includes [ FGristFiles listusb.cpp ] : <src!apps!devices>usbhdr.h ;
202
203# standard commands that need libbluetooth.so, due the Bluetooth Kit
204StdBinCommands
205	bt_dev_info.cpp
206	: be libbluetooth.so : $(haiku-utils_rsrc) ;
207
208StdBinCommands
209	bt_discovery.cpp
210	: be libbluetooth.so $(TARGET_LIBSUPC++) : $(haiku-utils_rsrc) ;
211
212
213# standard commands that need libbe.so, libtracker.so
214StdBinCommands
215	checkitout.cpp
216	: be tracker $(TARGET_LIBSUPC++) : $(haiku-utils_rsrc) ;
217
218#standard commands that need libbe.so, libtracker.so and the stub catalog
219StdBinCommands
220	filepanel.cpp
221	: be tracker $(TARGET_LIBSUPC++) $(HAIKU_LOCALE_LIBS) : $(haiku-utils_rsrc) ;
222
223# standard commands that need libncurses.a
224StdBinCommands
225	watch.c
226	: libncurses.a : $(haiku-utils_rsrc) ;
227
228# Localization of some applications
229DoCatalogs dstcheck
230	: x-vnd.Haiku-cmd-dstconfig
231	: dstcheck.cpp
232;
233
234DoCatalogs filepanel
235	: x-vnd.mmu_man.filepanel
236	: filepanel.cpp
237;
238
239SubInclude HAIKU_TOP src bin addattr ;
240SubInclude HAIKU_TOP src bin bash ;
241SubInclude HAIKU_TOP src bin bc ;
242SubInclude HAIKU_TOP src bin bfs_tools ;
243SubInclude HAIKU_TOP src bin compress ;
244SubInclude HAIKU_TOP src bin consoled ;
245SubInclude HAIKU_TOP src bin coreutils ;
246SubInclude HAIKU_TOP src bin desklink ;
247SubInclude HAIKU_TOP src bin diffutils ;
248SubInclude HAIKU_TOP src bin findutils ;
249SubInclude HAIKU_TOP src bin fwcontrol ;
250SubInclude HAIKU_TOP src bin gawk ;
251SubInclude HAIKU_TOP src bin gdb ;
252SubInclude HAIKU_TOP src bin hid_decode ;
253SubInclude HAIKU_TOP src bin iasl ;
254SubInclude HAIKU_TOP src bin ideinfo ;
255SubInclude HAIKU_TOP src bin keymap ;
256SubInclude HAIKU_TOP src bin less ;
257SubInclude HAIKU_TOP src bin listdev ;
258SubInclude HAIKU_TOP src bin locale ;
259SubInclude HAIKU_TOP src bin makebootable ;
260#SubInclude HAIKU_TOP src bin makeudfimage ;
261SubInclude HAIKU_TOP src bin mail_utils ;
262SubInclude HAIKU_TOP src bin mkdos ;
263SubInclude HAIKU_TOP src bin mkfs ;
264SubInclude HAIKU_TOP src bin multiuser ;
265SubInclude HAIKU_TOP src bin package ;
266SubInclude HAIKU_TOP src bin package_repo ;
267SubInclude HAIKU_TOP src bin patch ;
268SubInclude HAIKU_TOP src bin pc ;
269SubInclude HAIKU_TOP src bin pcmcia-cs ;
270SubInclude HAIKU_TOP src bin pkgman ;
271SubInclude HAIKU_TOP src bin playsound ;
272SubInclude HAIKU_TOP src bin rc ;
273SubInclude HAIKU_TOP src bin rmd160 ;
274SubInclude HAIKU_TOP src bin screen_blanker ;
275SubInclude HAIKU_TOP src bin screenmode ;
276SubInclude HAIKU_TOP src bin sharutils ;
277SubInclude HAIKU_TOP src bin writembr ;
278SubInclude HAIKU_TOP src bin zic ;
279
280# RCS commands
281SubInclude HAIKU_TOP src bin rcs ;
282
283# debugging tools
284SubInclude HAIKU_TOP src bin debug ;
285
286# Network command line tools
287SubInclude HAIKU_TOP src bin network ;
288
289# Compression command line tools
290SubInclude HAIKU_TOP src bin unzip ;
291SubInclude HAIKU_TOP src bin zip ;
292SubInclude HAIKU_TOP src bin gzip ;
293
294