xref: /haiku/src/bin/Jamfile (revision 1b6bc2675fe3691538c8764ab016593f3b06ca53)
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#	csplit.c
36	driveinfo.c
37#	echo.c
38	error.c
39	fortune.c
40	finddir.c
41	hd.c
42	idestatus.c
43	listarea.c
44	listimage.c
45	listport.c
46	listsem.c
47	logger.cpp
48	lsindex.cpp
49	prio.c
50	ps.c
51	release.c
52	renice.c
53	rescan.c
54	sysinfo.c
55	unchop.c
56	uptime.cpp
57	vmstat.cpp
58#	whoami.c
59	: : $(haiku-utils_rsrc) ;
60
61# Commands which don't need another library that depend on
62# Haiku-specific code
63if $(TARGET_PLATFORM) = haiku {
64StdBinCommands
65	boot_process_done.cpp
66	fdinfo.cpp
67	mount.c
68	rmattr.cpp
69	rmindex.cpp
70	safemode.c
71	unmount.c
72	: : $(haiku-utils_rsrc) ;
73}
74
75# standard commands that need libtermcap.a
76StdBinCommands
77	top.c
78	tput.c
79	: libtermcap.a : $(haiku-utils_rsrc) ;
80
81# standard commands that need libbe.so
82StdBinCommands
83	beep.cpp
84	catattr.cpp
85	checkfs.cpp
86	clipboard.cpp
87	clockconfig.cpp
88	df.cpp
89	diskimage.cpp
90	dpms.cpp
91	draggers.cpp
92#	factor.cpp
93	ffm.cpp
94	iroster.cpp
95	listattr.cpp
96	listfont.cpp
97	listres.cpp
98	mimeset.cpp
99	mkindex.cpp
100	message.cpp
101	modifiers.cpp
102	open.cpp
103	play.cpp
104	quit.cpp
105	roster.cpp
106	setversion.cpp
107	trash.cpp
108	version.cpp
109	waitfor.cpp
110	WindowShade.cpp
111#	yes.cpp
112	: be : $(haiku-utils_rsrc) ;
113
114if $(TARGET_PLATFORM) = libbe_test {
115	HaikuInstall install-test-apps : $(HAIKU_APP_TEST_DIR) : setdecor
116		: tests!apps ;
117}
118
119# standard commands that need libbe.so and libsupc++.so
120StdBinCommands
121	alert.cpp
122	eject.cpp
123	hey.cpp
124	reindex.cpp
125	resattr.cpp
126	setdecor.cpp
127	settype.cpp
128	spybmessage.cpp
129	urlwrapper.cpp
130	: be $(TARGET_LIBSUPC++) : $(haiku-utils_rsrc) ;
131
132# commands that need libbe.so and liblocale.so
133StdBinCommands
134	query.cpp
135	: be $(HAIKU_LOCALE_LIBS) : $(haiku-utils_rsrc) ;
136
137# commands that need libbe.so, libsupc++.so and liblocale.so
138StdBinCommands
139	dstcheck.cpp
140	: be $(TARGET_LIBSUPC++) $(HAIKU_LOCALE_LIBS) : $(haiku-utils_rsrc) ;
141
142# Haiku-specific apps which need libbe.so
143if $(TARGET_PLATFORM) = haiku {
144StdBinCommands
145	isvolume.cpp
146	shutdown.cpp
147	: be : $(haiku-utils_rsrc) ;
148}
149
150# standard commands that need libbe.so, libstdc++.so
151StdBinCommands
152	copyattr.cpp
153	setmime.cpp
154	xres.cpp
155	: be $(TARGET_LIBSTDC++) : $(haiku-utils_rsrc) ;
156
157# Haiku-specific apps which need libbe.so, libstdc++.so
158if $(TARGET_PLATFORM) = haiku {
159StdBinCommands
160	mountvolume.cpp
161	: be $(TARGET_LIBSTDC++) : $(haiku-utils_rsrc) ;
162}
163
164# commands that need libstdc++ only
165StdBinCommands
166	diff_zip.cpp
167	: $(TARGET_LIBSTDC++) : $(haiku-utils_rsrc) ;
168
169# standard commands that need libbe.so, libtranslation.so, libsupc++.so
170StdBinCommands
171	translate.cpp
172	: be translation $(TARGET_LIBSUPC++) : $(haiku-utils_rsrc) ;
173
174# standard commands that need libbe.so, libtranslation.so, libicon.a, libstdc++.so
175StdBinCommands
176	notify.cpp
177	: be translation libicon.a $(TARGET_LIBSTDC++) : $(haiku-utils_rsrc) ;
178
179# standard commands that need libbe.so, libmedia.so
180StdBinCommands
181	installsound.cpp
182	: be libmedia.so : $(haiku-utils_rsrc) ;
183
184# standard commands that need libbe.so, libmedia.so, libsupc++.so
185StdBinCommands
186	setvolume.cpp
187	: be libmedia.so $(TARGET_LIBSUPC++) : $(haiku-utils_rsrc) ;
188
189# standard commands that need libbe.so, libmail.so
190StdBinCommands
191	mail.cpp
192	: be libmail.so : $(haiku-utils_rsrc) ;
193
194# standard commands that need libbe.so, libdevice.so
195StdBinCommands
196	listusb.cpp
197	setusbconfig.cpp
198	: be libdevice.so : $(haiku-utils_rsrc) ;
199
200ObjectHdrs [ FGristFiles listusb$(SUFOBJ) ]
201	: [ FDirName $(SUBDIR) $(DOTDOT) add-ons kernel bus_managers usb ] ;
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, liblocale.so
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 mail_utils ;
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 grep ;
253SubInclude HAIKU_TOP src bin hid_decode ;
254SubInclude HAIKU_TOP src bin iasl ;
255SubInclude HAIKU_TOP src bin ideinfo ;
256SubInclude HAIKU_TOP src bin keymap ;
257SubInclude HAIKU_TOP src bin less ;
258SubInclude HAIKU_TOP src bin listdev ;
259SubInclude HAIKU_TOP src bin locale ;
260SubInclude HAIKU_TOP src bin makebootable ;
261#SubInclude HAIKU_TOP src bin makeudfimage ;
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 unrar ;
278SubInclude HAIKU_TOP src bin writembr ;
279SubInclude HAIKU_TOP src bin zic ;
280
281# RCS commands
282SubInclude HAIKU_TOP src bin rcs ;
283
284# debugging tools
285SubInclude HAIKU_TOP src bin debug ;
286
287# Network command line tools
288SubInclude HAIKU_TOP src bin network ;
289
290# Compression command line tools
291SubInclude HAIKU_TOP src bin unzip ;
292SubInclude HAIKU_TOP src bin zip ;
293SubInclude HAIKU_TOP src bin gzip ;
294SubInclude HAIKU_TOP src bin bzip2 ;
295