xref: /haiku/build/jam/OptionalPackages (revision 6c4a44e36ba846c54467103f884d65dfa13e7fcb)
1# This file defines the optional packages that can be added to the Haiku image.
2# It is directly included from HaikuImage -- all variables defined there can
3# be used
4
5# Detect a hybrid GCC2/GCC4 image and disable the checks for unavailable GCC4
6# packages. (It does not matter if a package was built with either compiler,
7# the system should have the respective other system libs.)
8local isHybridBuild ;
9if $(HAIKU_ADD_ALTERNATIVE_GCC_LIBS) = 1
10		&& $(HAIKU_ALTERNATIVE_GCC_OUTPUT_DIR) {
11	isHybridBuild = 1 ;
12}
13
14
15# Available Optional Packages:
16#	ABI-compliance-checker	- tool for checking ABI compatibility between libs
17#	APR						- support libraries used for example by Subversion
18#	APR-util				- Apache portable runtime utility library
19#	ArmyKnife				- tool for editing audio file metadata and attributes
20#	Bazaar					- the distributed version control system
21#	BeAE					- open source Audio Editor
22#	Beam					- powerful native e-mail client
23#	BeBook					- the classic BeOS API documentation
24#	BeHappy					- special documentation (i.e. BeBook) browser
25#	BeOSCompatibility		- creates links within the system to support old apps
26#	BePDF					- native PDF reader
27#	BeZillaBrowser			- fork of Mozilla's 1.8 branch.
28#	Bluetooth				- experimental Haiku components for Bluetooth
29#	BurnItNow				- CD burning app
30#	Bzip					- file archiving utility
31#	Caya					- a multiprotocol im client
32#	CCache					- fast compiler cache
33#	CDRecord				- the command line CD writing tools
34#	Clang					- the LLVM C and C++ compiler (llvm, libs, headers)
35#	Clockwerk				- native audio/video compositing
36#	CLucene					- indexed file search
37#	CMake					- cross platform make
38#	Colors!					- color picker application
39#	Ctags					- exuberant ctags (source files indexing)
40#	Curl					- a client that groks URLs
41#	CVS						- the version control system
42#	Development				- more complete dev environment (including autotools)
43#	DevelopmentBase			- basic development environment (gcc, headers, libs,...)
44#	DevelopmentJava			- JamVM, a Java Virtual machine, GNU Classpath, ECJ
45#	DevelopmentMin			- development headers, libs, tools, from sources only
46#	DevelopmentPowerPC			- Cross compiling environment for PowerPC
47#	Doxygen					- Generate documentation from source code
48#	Expat					- XML parsing libraries
49#	Fastdep					- fast dependency generator for C/C++ files
50#	friss					- RSS/ATOM/... feeds reader
51#	GetText					- a framework to help produce multi-lingual messages.
52#	Git						- the distributed version control system
53#	GitDoc					- documentation for the distributed version control system
54#	GPerf					- the perfect hash function generator.
55#	Groff					- text formatter used for man pages
56#	HGrep					- header grep tool
57#	ICU-devel				- the headers and lib-links for ICU (for development)
58#	KeymapSwitcher			- Easy to use keymap switcher
59#	LGrep					- Library Grep tool
60#	LibEvent				- An event notification library
61#	LibIconv				- text encoding conversion library
62#	LibLayout				- GCC2 package needed by some BeOS apps to compile
63#	Libmng					- mng support library
64#	LibXML2					- the XML support library
65#	LibXSLT					- xslt library and utility
66#	Links					- the web browser
67#	Lua						- the scripting language
68#	Man						- standard commands to read man pages
69#	Mercurial				- the distributed version control system
70#	Nano					- the command line text editor
71#	Neon					- support libraries used for example by SVN
72#	NetFS					- the native networked file system components
73#	NetSurf					- the web browser
74#	OCaml					- the Objective Caml language
75#	OpenSound				- additional audio driver package
76#	OpenSSH					- the secure shell
77#	OpenSSL					- secure sockets library
78#	P7zip					- file archiving utility
79#	Paladin					- a Haiku IDE
80#	PCRE					- the (Perl-compatible) regex engine
81#	Pe						- the powerful native Programmer's Editor
82#	Perl					- the scripting language
83#	Python					- the scripting language
84#	Puri					- chess game
85#	Rsync					- remote directory synchronization
86#	Ruby					- the programming language
87#	Sed						- the ultimate stream editor
88#	SQLite					- the database implementation
89#	Subversion				- the version control system
90#	TagLib					- id3 tag library
91#	Tar						- archiving utility
92#	TimGMSoundFont			- a good quality General MIDI Sound Font
93#	TrackerNewTemplates		- template files for Tracker's New menu
94#	Transmission			- a fast, easy, and free BitTorrent Client
95#	UserlandFS				- aids native file system development (like FUSE)
96#	Vim						- Vi IMproved. Highly configurable text editor
97#	Vision					- powerful native IRC client
98#	WebPositive				- native, WebKit-based web browser
99#	WebPositiveBookmarks	- bookmarks for WebPositive
100#	Welcome					- introductory documentation to Haiku
101#	WifiFirmwareScriptData	- data files needed by install-wifi-firmwares.sh
102#	WonderBrush				- native graphics application
103#	wpa_supplicant			- a WPA Supplicant with support for WPA and WPA2
104#	WQY-MicroHei			- Chinese font
105#	XZ-Utils				- file archiving utility
106#	Yasm					- the assembler utility
107
108local baseURL = http://haiku-files.org/files/optional-packages ;
109local baseSourceURL = http://haiku-files.org/files/sources ;
110
111# ABI-compliance-checker
112if [ IsOptionalHaikuImagePackageAdded ABI-compliance-checker ] {
113	if $(HAIKU_GCC_VERSION[1]) < 4 && ! $(isHybridBuild) {
114		Echo "No optional package ABI-compliance-checker for gcc2" ;
115	} else {
116		InstallOptionalHaikuImagePackage
117			ABI-compliance-checker-1.12-noarch-gcc4-2010-02-01.zip
118			: $(baseURL)/ABI-compliance-checker-1.12-noarch-gcc4-2010-02-01.zip ;
119	}
120}
121
122
123# APR
124if [ IsOptionalHaikuImagePackageAdded APR ] {
125	if $(TARGET_ARCH) != x86 {
126		Echo "No optional package APR available for $(TARGET_ARCH)" ;
127	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
128		InstallOptionalHaikuImagePackage
129			apr-1.4.6-r1a4-x86-gcc4-2012-08-30.zip
130			: $(baseURL)/apr-1.4.6-r1a4-x86-gcc4-2012-08-30.zip
131			: : true ;
132	} else {
133		InstallOptionalHaikuImagePackage
134			apr-1.4.6-r1a4-x86-gcc2-2012-08-27.zip
135			: $(baseURL)/apr-1.4.6-r1a4-x86-gcc2-2012-08-27.zip
136			: : true ;
137	}
138}
139
140
141# APR-util
142if [ IsOptionalHaikuImagePackageAdded APR-util ] {
143	if $(TARGET_ARCH) != x86 {
144		Echo "No optional package APR-util available for $(TARGET_ARCH)" ;
145	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
146		InstallOptionalHaikuImagePackage
147			apr-util-1.4.1-r1a4-x86-gcc4-2012-08-30.zip
148			: $(baseURL)/apr-util-1.4.1-r1a4-x86-gcc4-2012-08-30.zip
149			: : true ;
150	} else {
151		InstallOptionalHaikuImagePackage
152			apr-util-1.4.1-r1a4-x86-gcc2-2012-08-27.zip
153			: $(baseURL)/apr-util-1.4.1-r1a4-x86-gcc2-2012-08-27.zip
154			: : true ;
155	}
156}
157
158
159# ArmyKnife
160if [ IsOptionalHaikuImagePackageAdded ArmyKnife ] {
161	if $(TARGET_ARCH) != x86 {
162		Echo "No optional package ArmyKnife available for $(TARGET_ARCH)" ;
163	} else if $(HAIKU_GCC_VERSION[1]) >= 4 && ! $(isHybridBuild) {
164		Echo "No optional package ArmyKnife for gcc4" ;
165	} else {
166		InstallOptionalHaikuImagePackage
167			armyknife-63-r1a4-x86-gcc2-2012-08-30.zip
168			: $(baseURL)/armyknife-63-r1a4-x86-gcc2-2012-08-30.zip ;
169		AddSymlinkToHaikuImage home config settings deskbar Applications
170			: /boot/apps/ArmyKnife/ArmyKnife ;
171	}
172}
173
174
175# Bazaar
176if [ IsOptionalHaikuImagePackageAdded Bazaar ] {
177	if $(TARGET_ARCH) != x86 {
178		Echo "No optional package Bazaar available for $(TARGET_ARCH)" ;
179	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
180		InstallOptionalHaikuImagePackage bzr-2.6b1-r1a4-x86-gcc4-2012-08-30.zip
181			: $(baseURL)/bzr-2.6b1-r1a4-x86-gcc4-2012-08-30.zip ;
182	} else {
183		InstallOptionalHaikuImagePackage bzr-2.5.1-r1a4-x86-gcc2-2012-08-27.zip
184			: $(baseURL)/bzr-2.5.1-r1a4-x86-gcc2-2012-08-27.zip ;
185	}
186}
187
188
189# BeAE
190if [ IsOptionalHaikuImagePackageAdded BeAE ] {
191	if $(TARGET_ARCH) != x86 {
192		Echo "No optional package BeAE available for $(TARGET_ARCH)" ;
193	} else {
194		if $(HAIKU_GCC_VERSION[1]) >= 4 {
195			InstallOptionalHaikuImagePackage
196				beae-22-r1a4-x86-gcc4-2012-08-30.zip
197				: $(baseURL)/beae-22-r1a4-x86-gcc4-2012-08-30.zip ;
198		} else {
199			InstallOptionalHaikuImagePackage
200				beae-22-r1a4-x86-gcc2-2012-08-27.zip
201				: $(baseURL)/beae-22-r1a4-x86-gcc2-2012-08-27.zip ;
202		}
203		AddSymlinkToHaikuImage home config settings deskbar Applications
204			: /boot/apps/BeAE/BeAE ;
205	}
206}
207
208
209# Beam
210if [ IsOptionalHaikuImagePackageAdded Beam ] {
211	if $(TARGET_ARCH) != x86 {
212		Echo "No optional package Beam available for $(TARGET_ARCH)" ;
213	} else {
214		if $(HAIKU_GCC_VERSION[1]) >= 4 {
215			InstallOptionalHaikuImagePackage
216				beam-1.2alpha-x86-gcc4-2012-08-11.zip
217				: $(baseURL)/beam-1.2alpha-x86-gcc4-2012-08-11.zip ;
218		} else {
219			InstallOptionalHaikuImagePackage
220				beam-1.2alpha-r1a4-x86-gcc2-2012-08-29.zip
221				: $(baseURL)/beam-1.2alpha-r1a4-x86-gcc2-2012-08-29.zip ;
222		}
223		AddSymlinkToHaikuImage home config settings deskbar Applications
224			: /boot/apps/Beam/Beam ;
225	}
226}
227
228
229# bebook
230if [ IsOptionalHaikuImagePackageAdded BeBook ] {
231	InstallOptionalHaikuImagePackage bebook_20081026.zip
232		: $(baseURL)/bebook_20081026.zip
233		: system documentation ;
234	AddSymlinkToHaikuImage home Desktop
235		: /boot/system/documentation/bebook/index.html : BeBook ;
236}
237
238
239# BeHappy
240if [ IsOptionalHaikuImagePackageAdded BeHappy ] {
241	if $(TARGET_ARCH) != x86 {
242		Echo "No optional package BeHappy available for $(TARGET_ARCH)" ;
243	} else if $(HAIKU_GCC_VERSION[1]) >= 4 && ! $(isHybridBuild) {
244		Echo "No optional package BeHappy available for gcc4" ;
245	} else {
246		Echo "No optional package BeHappy available for gcc2" ;
247	}
248}
249
250
251# BeOSCompatibility
252if [ IsOptionalHaikuImagePackageAdded BeOSCompatibility ] {
253	if $(TARGET_ARCH) != x86 {
254		Echo "No optional package BeOSCompatibility available for $(TARGET_ARCH)" ;
255	} else if $(HAIKU_GCC_VERSION[1]) >= 4 && ! $(isHybridBuild) {
256		Echo "No optional package BeOSCompatibility available for gcc4" ;
257	} else {
258		Echo "Warning: Adding BeOS compatibility symlinks. This will go away. Please fix your apps!" ;
259		AddSymlinkToHaikuImage beos : ../system/apps ;
260		AddSymlinkToHaikuImage beos : ../system/bin ;
261		AddSymlinkToHaikuImage beos : ../system/documentation ;
262		AddSymlinkToHaikuImage beos : ../common/etc ;
263		AddSymlinkToHaikuImage beos : ../system/preferences ;
264		AddSymlinkToHaikuImage beos : ../system ;
265		AddDirectoryToHaikuImage var ;
266		AddSymlinkToHaikuImage var : /boot/common/var/log ;
267		AddSymlinkToHaikuImage var : /boot/common/cache/tmp ;
268	}
269}
270
271
272# BePDF
273if [ IsOptionalHaikuImagePackageAdded BePDF ] {
274	if $(TARGET_ARCH) != x86 {
275		Echo "No optional package BePDF available for $(TARGET_ARCH)" ;
276	} else {
277		if $(HAIKU_GCC_VERSION[1]) >= 4 {
278			InstallOptionalHaikuImagePackage
279				bepdf-1.1.1b4-x86-gcc4-2012-08-11.zip
280				: $(baseURL)/bepdf-1.1.1b4-x86-gcc4-2012-08-11.zip ;
281		} else {
282			InstallOptionalHaikuImagePackage
283				bepdf-1.1.1b4-r1a4-x86-gcc2-2012-08-30.zip
284				: $(baseURL)/bepdf-1.1.1b4-r1a4-x86-gcc2-2012-08-30.zip ;
285		}
286		AddSymlinkToHaikuImage home config settings deskbar Applications
287			: /boot/apps/BePDF/BePDF ;
288	}
289}
290
291
292# BeZillaBrowser
293if [ IsOptionalHaikuImagePackageAdded BeZillaBrowser ] {
294	if $(TARGET_ARCH) != x86 {
295		Echo "No optional package BeZillaBrowser available for $(TARGET_ARCH)" ;
296	} else {
297		if $(HAIKU_GCC_VERSION[1]) >= 4 {
298			InstallOptionalHaikuImagePackage
299				BeZillaBrowser-2.0.0.22pre-x86-gcc4-2012-04-04.zip
300				: $(baseURL)/BeZillaBrowser-2.0.0.22pre-x86-gcc4-2012-04-04.zip ;
301 		} else {
302			InstallOptionalHaikuImagePackage
303				BeZillaBrowser-2.0.0.22pre-x86-gcc2-2012-04-02.zip
304				: $(baseURL)/BeZillaBrowser-2.0.0.22pre-x86-gcc2-2012-04-02.zip ;
305 		}
306 		AddSymlinkToHaikuImage home config settings deskbar Applications
307			: /boot/apps/BeZillaBrowser/BeZillaBrowser ;
308	}
309}
310
311
312# Bluetooth stack
313if [ IsOptionalHaikuImagePackageAdded Bluetooth ] {
314	local bluetoothDrivers = h2generic ;
315	AddDriversToHaikuImage bluetooth : $(bluetoothDrivers) ;
316	AddFilesToHaikuImage system servers : bluetooth_server ;
317	AddFilesToHaikuImage system lib : libbluetooth.so ;
318	AddFilesToHaikuImage system add-ons kernel network protocols : l2cap ;
319	AddFilesToHaikuImage system add-ons kernel bluetooth : btCoreData hci ;
320	AddFilesToHaikuImage system preferences : Bluetooth ;
321	AddFilesToHaikuImage system bin : bt_dev_info bt_discovery ;
322	AddSymlinkToHaikuImage home config settings deskbar Preferences
323		: /boot/system/preferences/Bluetooth ;
324	if [ IsOptionalHaikuImagePackageAdded DevelopmentMin ]
325		&& $(HAIKU_GCC_VERSION[1]) in 2 4 {
326		local arch = $(TARGET_ARCH) ;
327		local abi = gcc$(HAIKU_GCC_VERSION[1]) ;
328		AddSymlinkToHaikuHybridImage develop abi $(arch) $(abi) lib
329			: /system/lib libbluetooth.so : : true ;
330	}
331}
332
333
334# BurnItNow
335if [ IsOptionalHaikuImagePackageAdded BurnItNow ] {
336	if $(TARGET_ARCH) != x86 {
337		Echo "No optional package BurnItNow available for $(TARGET_ARCH)" ;
338	} else {
339		if $(HAIKU_GCC_VERSION[1]) >= 4 {
340			InstallOptionalHaikuImagePackage
341			burnitnow-39-r1a4-x86-gcc4-2012-08-30.zip
342				: $(baseURL)/burnitnow-39-r1a4-x86-gcc4-2012-08-30.zip ;
343		} else {
344		InstallOptionalHaikuImagePackage
345			burnitnow-39-r1a4-x86-gcc2-2012-08-27.zip
346			: $(baseURL)/burnitnow-39-r1a4-x86-gcc2-2012-08-27.zip ;
347		}
348		AddSymlinkToHaikuImage home config settings deskbar Applications
349			: /boot/apps/BurnItNow/BurnItNow ;
350	}
351}
352
353
354# Bzip
355if [ IsOptionalHaikuImagePackageAdded Bzip ] {
356	if $(TARGET_ARCH) != x86 {
357		Echo "No optional package Bzip available for $(TARGET_ARCH)" ;
358	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
359		InstallOptionalHaikuImagePackage
360			bzip2-1.0.6-r1a4-x86-gcc4-2012-08-30.zip
361			: $(baseURL)/bzip2-1.0.6-r1a4-x86-gcc4-2012-08-30.zip
362			: : true ;
363	} else {
364		InstallOptionalHaikuImagePackage
365			bzip2-1.0.6-r1a4-x86-gcc2-2012-08-27.zip
366			: $(baseURL)/bzip2-1.0.6-r1a4-x86-gcc2-2012-08-27.zip
367			: : true ;
368	}
369}
370
371
372# CARootCertificates
373if [ IsOptionalHaikuImagePackageAdded CARootCertificates ] {
374	InstallOptionalHaikuImagePackage cert-2012-07-04.zip
375		: $(baseURL)/cert-2012-07-04.zip
376		: common data ssl ;
377}
378
379
380# Caya
381if [ IsOptionalHaikuImagePackageAdded Caya ] {
382	if $(TARGET_ARCH) != x86 {
383		Echo "No optional package Caya available for $(TARGET_ARCH)" ;
384	} else {
385		if $(HAIKU_GCC_VERSION[1]) >= 4 || $(isHybridBuild) {
386			InstallOptionalHaikuImagePackage
387				caya-264-x86-gcc4-2012-05-20.zip
388				: $(baseURL)/caya-264-x86-gcc4-2012-05-20.zip
389				: : true ;
390			InstallOptionalHaikuImagePackage
391				caya-gpl-protocols-35-x86-gcc4-2012-05-20.zip
392				: $(baseURL)/caya-gpl-protocols-35-x86-gcc4-2012-05-20.zip
393				: : true ;
394			AddSymlinkToHaikuImage home config be Applications
395				: /boot/apps/Caya/Caya ;
396		} else {
397			Echo "No optional package Caya available for $(TARGET_ARCH)-gcc2" ;
398		}
399	}
400}
401
402# CCache
403if [ IsOptionalHaikuImagePackageAdded CCache ] {
404	if $(TARGET_ARCH) != x86 {
405		Echo "No optional package CCache available for $(TARGET_ARCH)" ;
406	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
407		InstallOptionalHaikuImagePackage
408			ccache-3.0.1-r1a4-x86-gcc4-2012-08-30.zip
409			: $(baseURL)/ccache-3.0.1-r1a4-x86-gcc4-2012-08-30.zip ;
410	} else {
411		InstallOptionalHaikuImagePackage
412			ccache-3.0.1-r1a4-x86-gcc2-2012-08-27.zip
413			: $(baseURL)/ccache-3.0.1-r1a4-x86-gcc2-2012-08-27.zip ;
414	}
415}
416
417
418# CDRecord
419if [ IsOptionalHaikuImagePackageAdded CDRecord ] {
420	if $(TARGET_ARCH) != x86 {
421		Echo "No optional package CDRecord available for $(TARGET_ARCH)" ;
422	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
423		InstallOptionalHaikuImagePackage
424			cdrtools-3.01a07-r1a4-x86-gcc4-2012-08-30.zip
425			: $(baseURL)/cdrtools-3.01a07-r1a4-x86-gcc4-2012-08-30.zip ;
426	} else {
427		InstallOptionalHaikuImagePackage
428			cdrtools-3.01a07-r1a4-x86-gcc2-2012-08-28.zip
429			: $(baseURL)/cdrtools-3.01a07-r1a4-x86-gcc2-2012-08-28.zip ;
430	}
431}
432
433
434# Clang
435if [ IsOptionalHaikuImagePackageAdded Clang ] {
436	if $(TARGET_ARCH) != x86 {
437		Echo "No optional package Clang available for $(TARGET_ARCH)" ;
438	} else if $(HAIKU_GCC_VERSION[1]) < 4 && ! $(isHybridBuild) {
439		Echo "No optional package Clang available for GCC2" ;
440	} else {
441		InstallOptionalHaikuImagePackage
442			clang-3.0-x86-gcc4-2012-03-09.zip
443			: $(baseURL)/clang-3.0-x86-gcc4-2012-03-09.zip ;
444	}
445}
446
447
448# Clockwerk
449if [ IsOptionalHaikuImagePackageAdded Clockwerk ] {
450	if $(TARGET_ARCH) != x86 {
451		Echo "No optional package Clockwerk available for $(TARGET_ARCH)" ;
452	} else {
453		if $(HAIKU_GCC_VERSION[1]) >= 4 {
454			InstallOptionalHaikuImagePackage
455				Clockwerk-0.0.2-x86-gcc4-2012-02-25.zip
456				: $(baseURL)/Clockwerk-0.0.2-x86-gcc4-2012-02-25.zip ;
457		} else {
458			InstallOptionalHaikuImagePackage
459				Clockwerk-0.0.2-x86-gcc2-2012-03-04.zip
460				: $(baseURL)/Clockwerk-0.0.2-x86-gcc2-2012-03-04.zip ;
461		}
462		AddSymlinkToHaikuImage home config settings deskbar Applications
463			: /boot/apps/Clockwerk/Clockwerk ;
464	}
465}
466
467
468# CLucene
469if [ IsOptionalHaikuImagePackageAdded CLucene ] {
470	if $(TARGET_ARCH) != x86 {
471		Echo "No optional package CLucene available for $(TARGET_ARCH)" ;
472	} else if $(HAIKU_GCC_VERSION[1]) < 4 && ! $(isHybridBuild) {
473		Echo "No optional package CLucene available for GCC2" ;
474	} else {
475		InstallOptionalHaikuImagePackage
476			clucene-0.9.21-x86-gcc4-haiku-2009-08-11.zip
477			: $(baseURL)/clucene-0.9.21-x86-gcc4-haiku-2009-08-11.zip
478			: : true ;
479	}
480}
481
482
483# CMake
484if [ IsOptionalHaikuImagePackageAdded CMake ] {
485	if $(TARGET_ARCH) != x86 {
486		Echo "No optional package CMake available for $(TARGET_ARCH)" ;
487	} else {
488		if $(HAIKU_GCC_VERSION[1]) >= 4 {
489			InstallOptionalHaikuImagePackage
490				cmake-2.8.5-r1a4-x86-gcc4-2012-08-28.zip
491				: $(baseURL)/cmake-2.8.5-r1a4-x86-gcc4-2012-08-28.zip
492				: : true ;
493		} else {
494			InstallOptionalHaikuImagePackage
495				cmake-2.8.5-r1a4-x86-gcc2-2012-08-27.zip
496				: $(baseURL)/cmake-2.8.5-r1a4-x86-gcc2-2012-08-27.zip
497				: : true ;
498		}
499	}
500}
501
502
503# Colors!
504if [ IsOptionalHaikuImagePackageAdded Colors! ] {
505	if $(TARGET_ARCH) != x86 {
506		Echo "No optional package Colors! available for $(TARGET_ARCH)" ;
507	} else {
508		if $(HAIKU_GCC_VERSION[1]) >= 4 {
509			InstallOptionalHaikuImagePackage
510				Colors!-2.0-x86-gcc4-2012-04-30.zip
511				: $(baseURL)/Colors\!-2.0-x86-gcc4-2012-04-30.zip ;
512		} else {
513			InstallOptionalHaikuImagePackage
514				Colors!-2.0-x86-gcc2-2012-04-30.zip
515				: $(baseURL)/Colors\!-2.0-x86-gcc2-2012-04-30.zip ;
516		}
517		AddSymlinkToHaikuImage home config settings deskbar Applications
518			: /boot/apps/Colors\!/Colors\! ;
519	}
520}
521
522
523# Ctags
524if [ IsOptionalHaikuImagePackageAdded Ctags ] {
525	if $(TARGET_ARCH) != x86 {
526		Echo "No optional package Ctags available for $(TARGET_ARCH)" ;
527	} else {
528		if $(HAIKU_GCC_VERSION[1]) >= 4 {
529			InstallOptionalHaikuImagePackage
530				ctags-5.8-x86-gcc4-2012-01-23.zip
531				: $(baseURL)/ctags-5.8-x86-gcc4-2012-01-23.zip
532				: : true ;
533		} else {
534			InstallOptionalHaikuImagePackage
535				ctags-5.8-x86-gcc2-2010-05-24.zip
536				: $(baseURL)/ctags-5.8-x86-gcc2-2010-05-24.zip
537				: : true ;
538		}
539	}
540}
541
542
543# Curl
544if [ IsOptionalHaikuImagePackageAdded Curl ] {
545	if $(TARGET_ARCH) != x86 {
546		Echo "No optional package Curl available for $(TARGET_ARCH)" ;
547	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
548		InstallOptionalHaikuImagePackage curl-7.26.0-r1a4-x86-gcc4-2012-08-29.zip
549			: $(baseURL)/curl-7.26.0-r1a4-x86-gcc4-2012-08-29.zip ;
550	} else {
551		InstallOptionalHaikuImagePackage curl-7.26.0-r1a4-x86-gcc2-2012-08-28.zip
552			: $(baseURL)/curl-7.26.0-r1a4-x86-gcc2-2012-08-28.zip ;
553	}
554}
555
556
557# CVS
558if [ IsOptionalHaikuImagePackageAdded CVS ] {
559	if $(TARGET_ARCH) != x86 {
560		Echo "No optional package CVS available for $(TARGET_ARCH)" ;
561	} else {
562		if $(HAIKU_GCC_VERSION[1]) >= 4 {
563			InstallOptionalHaikuImagePackage
564				cvs-1.12.13.1-r1a4-x86-gcc4-2012-08-30.zip
565				: $(baseURL)/cvs-1.12.13.1-r1a4-x86-gcc4-2012-08-30.zip
566				: : true ;
567		} else {
568			InstallOptionalHaikuImagePackage
569				cvs-1.12.13.1-r1a4-x86-gcc2-2012-08-28.zip
570				: $(baseURL)/cvs-1.12.13.1-r1a4-x86-gcc2-2012-08-28.zip
571				: : true ;
572		}
573	}
574}
575
576
577# DemoPackage_Audio
578if [ IsOptionalHaikuImagePackageAdded DemoPackage_Audio ] {
579	InstallOptionalHaikuImagePackage DemoPackage_Audio-0.1-2012-02-19.zip
580		: $(baseURL)/DemoPackage_Audio-0.1-2012-02-19.zip
581		: home ;
582}
583
584
585# DemoPackage_Data
586if [ IsOptionalHaikuImagePackageAdded DemoPackage_Data ] {
587	InstallOptionalHaikuImagePackage DemoPackage_Data-0.1-2012-02-19.zip
588		: $(baseURL)/DemoPackage_Data-0.1-2012-02-19.zip
589		: home ;
590}
591
592
593# DemoPackage_Image
594if [ IsOptionalHaikuImagePackageAdded DemoPackage_Image ] {
595	InstallOptionalHaikuImagePackage DemoPackage_Image-0.1-2012-02-19.zip
596		: $(baseURL)/DemoPackage_Image-0.1-2012-02-19.zip
597		: home ;
598}
599
600
601# DemoPackage_Video
602if [ IsOptionalHaikuImagePackageAdded DemoPackage_Video ] {
603	InstallOptionalHaikuImagePackage DemoPackage_Video-0.1-2012-02-19.zip
604		: $(baseURL)/DemoPackage_Video-0.1-2012-02-19.zip
605		: home ;
606}
607
608
609# Development
610if [ IsOptionalHaikuImagePackageAdded Development ] && $(TARGET_ARCH) = x86 {
611	AddFilesToHaikuImage system apps : Debugger ;
612	AddSymlinkToHaikuImage home config settings deskbar Applications
613		: /boot/system/apps/Debugger : Debugger ;
614	# autotools
615	if $(HAIKU_GCC_VERSION[1]) >= 4 {
616		InstallOptionalHaikuImagePackage
617			autoconf-2.68-r1a4-x86-gcc4-2012-08-28.zip
618			: $(baseURL)/autoconf-2.68-r1a4-x86-gcc4-2012-08-28.zip
619			: : true ;
620		InstallOptionalHaikuImagePackage
621			automake-1.11.1-r1a4-x86-gcc4-2012-08-28.zip
622			: $(baseURL)/automake-1.11.1-r1a4-x86-gcc4-2012-08-28.zip
623			: : true ;
624		InstallOptionalHaikuImagePackage
625			libtool-2.4-r1a4-x86-gcc4-2012-08-28.zip
626			: $(baseURL)/libtool-2.4-r1a4-x86-gcc4-2012-08-28.zip
627			: : true ;
628		InstallOptionalHaikuImagePackage
629			texinfo-4.13a-r1a4-x86-gcc4-2012-08-30.zip
630			: $(baseURL)/texinfo-4.13a-r1a4-x86-gcc4-2012-08-30.zip
631			: : true ;
632	} else {
633		InstallOptionalHaikuImagePackage
634			autoconf-2.68-r1a4-x86-gcc2-2012-08-26.zip
635			: $(baseURL)/autoconf-2.68-r1a4-x86-gcc2-2012-08-26.zip
636			: : true ;
637		InstallOptionalHaikuImagePackage
638			automake-1.11.1-r1a4-x86-gcc2-2012-08-26.zip
639			: $(baseURL)/automake-1.11.1-r1a4-x86-gcc2-2012-08-26.zip
640			: : true ;
641		InstallOptionalHaikuImagePackage
642			libtool-2.4-r1a4-x86-gcc2-2012-08-26.zip
643			: $(baseURL)/libtool-2.4-r1a4-x86-gcc2-2012-08-26.zip
644			: : true ;
645		InstallOptionalHaikuImagePackage
646			texinfo-4.13a-r1a4-x86-gcc2-2012-08-28.zip
647			: $(baseURL)/texinfo-4.13a-r1a4-x86-gcc2-2012-08-28.zip
648			: : true ;
649	}
650}
651
652
653# DevelopmentBase
654if [ IsOptionalHaikuImagePackageAdded DevelopmentBase ]
655		&& $(TARGET_ARCH) = x86 {
656	# gcc and binutils
657	if $(HAIKU_GCC_VERSION[1]) = 2 || $(isHybridBuild) {
658		InstallOptionalHaikuImagePackage
659			gcc-2.95.3-x86-gcc2-2011-11-22.zip
660			: $(baseURL)/gcc-2.95.3-x86-gcc2-2011-11-22.zip ;
661	}
662
663	if $(HAIKU_GCC_VERSION[1]) = 2 {
664		# symlink to the appropriate system/lib[/gcc2] folder
665		AddSymlinkToHaikuHybridImage
666			develop abi x86 gcc2 tools gcc-2.95.3-haiku-111122 lib
667			: /system/lib libstdc++.r4.so : : true ;
668	}
669
670	if $(HAIKU_GCC_VERSION[1]) = 4 || $(isHybridBuild) {
671		InstallOptionalHaikuImagePackage
672			gcc-4.6.2-x86-gcc4-2012-01-21.zip
673			: $(baseURL)/gcc-4.6.2-x86-gcc4-2012-01-21.zip ;
674	}
675
676	if $(HAIKU_GCC_VERSION[1]) = 4 {
677		# symlink cpp to g++'s headers
678		AddSymlinkToHaikuHybridImage develop abi x86 gcc4 headers
679			: ../tools/current/include/g++ : cpp ;
680
681		# symlink to the appropriate system/lib[/gcc4] folder
682		local libs = libstdc++.so libsupc++.so ;
683		for lib in $(libs) {
684			AddSymlinkToHaikuHybridImage
685				develop abi x86 gcc4 tools gcc-4.6.2-haiku-120121 lib
686				: /system/lib $(lib) : : true ;
687		}
688	}
689
690	# other commonly used tools
691	if $(HAIKU_GCC_VERSION[1]) >= 4 {
692		InstallOptionalHaikuImagePackage
693			bison-2.4.3-r1a4-x86-gcc4-2012-08-28.zip
694			: $(baseURL)/bison-2.4.3-r1a4-x86-gcc4-2012-08-28.zip ;
695		InstallOptionalHaikuImagePackage
696			m4-1.4.16-r1a4-x86-gcc4-2012-08-28.zip
697			: $(baseURL)/m4-1.4.16-r1a4-x86-gcc4-2012-08-28.zip ;
698		InstallOptionalHaikuImagePackage
699			flex-2.5.35-r1a4-x86-gcc4-2012-08-28.zip
700			: $(baseURL)/flex-2.5.35-r1a4-x86-gcc4-2012-08-28.zip ;
701		InstallOptionalHaikuImagePackage
702			jam-2.5-r1a4-x86-gcc4-2012-08-28.zip
703			: $(baseURL)/jam-2.5-r1a4-x86-gcc4-2012-08-28.zip ;
704		InstallOptionalHaikuImagePackage
705			mkdepend-1.7-r1a4-x86-gcc4-2012-08-28.zip
706			: $(baseURL)/mkdepend-1.7-r1a4-x86-gcc4-2012-08-28.zip ;
707		InstallOptionalHaikuImagePackage
708			make-3.82-r1a4-x86-gcc4-2012-08-28.zip
709			: $(baseURL)/make-3.82-r1a4-x86-gcc4-2012-08-28.zip ;
710	} else {
711		InstallOptionalHaikuImagePackage
712			bison-2.4.3-r1a4-x86-gcc2-2012-08-26.zip
713			: $(baseURL)/bison-2.4.3-r1a4-x86-gcc2-2012-08-26.zip ;
714		InstallOptionalHaikuImagePackage
715			m4-1.4.16-r1a4-x86-gcc2-2012-08-26.zip
716			: $(baseURL)/m4-1.4.16-r1a4-x86-gcc2-2012-08-26.zip ;
717		InstallOptionalHaikuImagePackage
718			flex-2.5.35-r1a4-x86-gcc2-2012-08-26.zip
719			: $(baseURL)/flex-2.5.35-r1a4-x86-gcc2-2012-08-26.zip ;
720		InstallOptionalHaikuImagePackage
721			jam-2.5-r1a4-x86-gcc2-2012-08-27.zip
722			: $(baseURL)/jam-2.5-r1a4-x86-gcc2-2012-08-27.zip ;
723		InstallOptionalHaikuImagePackage
724			mkdepend-1.7-r1a4-x86-gcc2-2012-08-26.zip
725			: $(baseURL)/mkdepend-1.7-r1a4-x86-gcc2-2012-08-26.zip ;
726		InstallOptionalHaikuImagePackage
727			make-3.82-r1a4-x86-gcc2-2012-08-26.zip
728			: $(baseURL)/make-3.82-r1a4-x86-gcc2-2012-08-26.zip ;
729	}
730}
731
732
733# DevelopmentJava
734if [ IsOptionalHaikuImagePackageAdded DevelopmentJava ] {
735	if $(TARGET_ARCH) != x86 {
736		Echo "No optional package DevelopmentJava available for $(TARGET_ARCH)" ;
737	} else if $(HAIKU_GCC_VERSION[1]) < 4 && ! $(isHybridBuild) {
738		Echo "No optional package DevelopmentJava available for gcc2" ;
739	} else {
740		InstallOptionalHaikuImagePackage
741			gnu-classpath-0.98-r1a3-x86-gcc4-2011-06-08.zip
742			: $(baseURL)/gnu-classpath-0.98-r1a3-x86-gcc4-2011-06-08.zip ;
743		InstallOptionalHaikuImagePackage
744			jamvm-1.5.4-r1a3-x86-gcc4-2011-06-08.zip
745			: $(baseURL)/jamvm-1.5.4-r1a3-x86-gcc4-2011-06-08.zip ;
746		AddSymlinkToHaikuImage common bin : /boot/common/bin/jamvm : java ;
747		InstallOptionalHaikuImagePackage
748			ecj-3.6.2-haiku-2011-06-08.zip
749			: $(baseURL)/ecj-3.6.2-haiku-2011-06-08.zip ;
750	}
751}
752
753
754# DevelopmentMin
755if [ IsOptionalHaikuImagePackageAdded DevelopmentMin ] && $(TARGET_ARCH) = x86 {
756	if ! ( $(HAIKU_GCC_VERSION[1]) in 2 4 ) {
757		Exit "Optional package DevelopmentMin: Unsupported GCC version:"
758			$(HAIKU_GCC_VERSION[1]) ;
759	}
760
761	local arch = $(TARGET_ARCH) ;
762	local abi = gcc$(HAIKU_GCC_VERSION[1]) ;
763	local abiDirTokens = develop abi $(arch) $(abi) ;
764
765	# glue code
766	AddFilesToHaikuHybridImage $(abiDirTokens) lib :
767		<src!system!glue!arch!$(arch)>crti.o
768		<src!system!glue!arch!$(arch)>crtn.o
769		<src!system!glue>init_term_dyn.o
770		<src!system!glue>start_dyn.o
771		<src!system!glue>haiku_version_glue.o
772	;
773
774	# kernel
775	AddFilesToHaikuHybridImage $(abiDirTokens) lib : kernel.so : _KERNEL_ ;
776
777	# additional libraries
778	local developmentLibs = <revisioned>libroot_debug.so ;
779	AddFilesToHaikuHybridImage system lib : $(developmentLibs) : : true ;
780
781	# library symlinks
782	local lib ;
783	for lib in $(SYSTEM_LIBS) $(SYSTEM_LIBS_LIBGL_ALIASES) $(developmentLibs) {
784		AddSymlinkToHaikuHybridImage $(abiDirTokens) lib
785			: /system/lib $(lib:BS) : : true ;
786		local abiVersion = [ on $(lib) return $(HAIKU_LIB_ABI_VERSION) ] ;
787		if $(abiVersion) {
788			local abiVersionedLib = $(lib:BS).$(abiVersion) ;
789			AddSymlinkToHaikuHybridImage $(abiDirTokens) lib
790				: /system/lib $(abiVersionedLib) : : true ;
791		}
792	}
793
794	# static libraries
795	AddFilesToHaikuHybridImage $(abiDirTokens) lib : libncurses.a ;
796	AddFilesToHaikuHybridImage $(abiDirTokens) lib : liblocalestub.a ;
797
798	# the POSIX error code mapper library
799	AddFilesToHaikuHybridImage $(abiDirTokens) lib : libposix_error_mapper.a ;
800
801	# symlinks for ABI abstraction
802	AddSymlinkToHaikuImage develop abi : $(arch)/$(abi) : current ;
803	AddSymlinkToHaikuImage develop lib : /boot/develop/abi/$(arch)/$(abi)/lib
804		: $(arch) ;
805	AddSymlinkToHaikuImage develop tools
806		: /boot/develop/abi/current/tools/current : gnupro ;
807	AddSymlinkToHaikuImage develop headers
808		: /boot/develop/abi/current/headers/cpp ;
809	AddSymlinkToHaikuHybridImage $(abiDirTokens) library-paths
810		: /boot/common/lib : common : true ;
811	AddSymlinkToHaikuHybridImage $(abiDirTokens) library-paths
812		: /boot/home/config/lib : home : true ;
813
814	# ABI independent stuff
815
816	# scripts: cc and c++ wrapper, freetype-config, setgcc
817	local scripts = cc c++ freetype-config setgcc ;
818	SEARCH on $(scripts) = [ FDirName $(HAIKU_TOP) data bin ] ;
819	AddFilesToHaikuImage system bin : $(scripts) ;
820
821	# skeleton makefile and makefile-engine
822	local makefileEngineFiles =
823		<makefile-engine>makefile
824		<makefile-engine>makefile-engine
825	;
826	SEARCH on $(makefileEngineFiles)
827		= [ FDirName $(HAIKU_TOP) data develop ] ;
828	AddFilesToHaikuImage develop etc : $(makefileEngineFiles) ;
829
830	# headers
831	AddHeaderDirectoryToHaikuImage config ;
832	AddHeaderDirectoryToHaikuImage glibc ;
833	AddHeaderDirectoryToHaikuImage os ;
834	AddHeaderDirectoryToHaikuImage posix ;
835
836	# create be -> os symlink for now
837	AddSymlinkToHaikuImage develop headers : os : be ;
838
839	# BSD and GNU compatibility headers
840	AddHeaderDirectoryToHaikuImage compatibility bsd : bsd ;
841	AddHeaderDirectoryToHaikuImage compatibility gnu : gnu ;
842
843	# third party libs headers
844	AddHeaderDirectoryToHaikuImage libs ncurses : 3rdparty ;
845	AddHeaderDirectoryToHaikuImage libs termcap : 3rdparty ;
846	AddHeaderDirectoryToHaikuImage libs tiff : 3rdparty ;
847	AddHeaderDirectoryToHaikuImage libs zlib : 3rdparty ;
848
849	# cpp headers
850	if $(HAIKU_GCC_VERSION[1]) = 2 {
851		# GCC 2 only -- for GCC 4 they come with the DevelopmentBase package
852		CopyDirectoryToHaikuImage $(abiDirTokens) headers
853			: [ FDirName $(HAIKU_TOP) headers cpp ] : : -x .svn ;
854		CopyDirectoryToAlternativeGCCArchive $(abiDirTokens) headers
855			: [ FDirName $(HAIKU_TOP) headers cpp ] : : -x .svn ;
856	}
857}
858
859
860# DevelopmentPowerPC
861if [ IsOptionalHaikuImagePackageAdded DevelopmentPowerPC ] {
862	if $(TARGET_ARCH) != x86 {
863		Echo "No optional package DevelopmentPowerPC available for $(TARGET_ARCH)" ;
864	} else if $(HAIKU_GCC_VERSION[1]) < 4 && ! $(isHybridBuild) {
865		Echo "No optional package DevelopmentPowerPC available for gcc2" ;
866	} else {
867		InstallOptionalHaikuImagePackage
868			gcc-ppc-4.6.2-x86-gcc4-2012-03-17.zip
869			: $(baseURL)/gcc-ppc-4.6.2-x86-gcc4-2012-03-17.zip ;
870		InstallOptionalHaikuImagePackage
871			haiku-devlibs-ppc-gcc4-2012-03-18.zip
872			: $(baseURL)/haiku-devlibs-ppc-gcc4-2012-03-18.zip ;
873	}
874
875}
876
877
878# DMIDecode
879if [ IsOptionalHaikuImagePackageAdded DMIDecode ] {
880	if $(TARGET_ARCH) != x86 {
881		Echo "No optional package DMIDecode available for $(TARGET_ARCH)" ;
882	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
883		InstallOptionalHaikuImagePackage
884			dmidecode-2.11-x86-gcc4-2011-11-02.zip
885			: http://revolf.free.fr/beos/dmidecode-2.11-x86-gcc4-2011-11-02.zip ;
886	} else {
887		InstallOptionalHaikuImagePackage
888			dmidecode-2.11-x86-gcc2-2011-11-02.zip
889			: http://revolf.free.fr/beos/dmidecode-2.11-x86-gcc2-2011-11-02.zip ;
890	}
891}
892
893
894# Doxygen
895if [ IsOptionalHaikuImagePackageAdded Doxygen ] {
896	if $(TARGET_ARCH) != x86 {
897		Echo "No optional package Doxygen available for $(TARGET_ARCH)" ;
898	} else {
899		if $(HAIKU_GCC_VERSION[1]) >= 4 {
900			InstallOptionalHaikuImagePackage
901				doxygen-1.6.3-x86-gcc4-2010-05-17.zip
902				: $(baseURL)/doxygen-1.6.3-x86-gcc4-2010-05-17.zip
903				: : true ;
904		} else {
905			InstallOptionalHaikuImagePackage
906				doxygen-1.6.3-x86-gcc2-2010-05-17.zip
907				: $(baseURL)/doxygen-1.6.3-x86-gcc2-2010-05-17.zip
908				: : true ;
909		}
910	}
911}
912
913
914# Expat
915if [ IsOptionalHaikuImagePackageAdded Expat ] {
916	if $(TARGET_ARCH) != x86 {
917		Echo "No optional package Expat available for $(TARGET_ARCH)" ;
918	} else {
919		if $(HAIKU_GCC_VERSION[1]) >= 4 {
920			InstallOptionalHaikuImagePackage
921				expat-2.0.1-r1a4-x86-gcc4-2012-08-30.zip
922				: $(baseURL)/expat-2.0.1-r1a4-x86-gcc4-2012-08-30.zip
923				: : true ;
924		} else {
925			InstallOptionalHaikuImagePackage
926				expat-2.0.1-r1a4-x86-gcc2-2012-08-28.zip
927				: $(baseURL)/expat-2.0.1-r1a4-x86-gcc2-2012-08-28.zip
928				: : true ;
929		}
930	}
931}
932
933
934# Fastdep
935if [ IsOptionalHaikuImagePackageAdded Fastdep ] {
936	if $(TARGET_ARCH) != x86 {
937		Echo "No optional package Fastdep available for $(TARGET_ARCH)" ;
938	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
939		InstallOptionalHaikuImagePackage
940			fastdep-0.16-r1a4-x86-gcc4-2012-08-30.zip
941			: $(baseURL)/fastdep-0.16-r1a4-x86-gcc4-2012-08-30.zip ;
942	} else {
943		InstallOptionalHaikuImagePackage
944			fastdep-0.16-r1a4-x86-gcc2-2012-08-28.zip
945			: $(baseURL)/fastdep-0.16-r1a4-x86-gcc2-2012-08-28.zip ;
946	}
947}
948
949
950# friss
951if [ IsOptionalHaikuImagePackageAdded friss ] {
952	if $(TARGET_ARCH) != x86 {
953		Echo "No optional package friss available for $(TARGET_ARCH)" ;
954	} else {
955		if $(HAIKU_GCC_VERSION[1]) >= 4 {
956			InstallOptionalHaikuImagePackage
957				friss-24-r1a3-x86-gcc4-2011-05-31.zip
958				: $(baseURL)/friss-24-r1a3-x86-gcc4-2011-05-31.zip ;
959		} else {
960			InstallOptionalHaikuImagePackage
961				friss-29-r1a4-x86-gcc2-2012-08-28.zip
962				: $(baseURL)/friss-29-r1a4-x86-gcc2-2012-08-28.zip ;
963		}
964#		AddSymlinkToHaikuImage home config settings deskbar Desktop\ applets
965#			: /boot/apps/FRiSS/FRiSS ;
966	}
967}
968
969
970# GetText
971if [ IsOptionalHaikuImagePackageAdded GetText ] {
972	if $(TARGET_ARCH) != x86 {
973		Echo "No optional package GetText available for $(TARGET_ARCH)" ;
974	} else {
975		if $(HAIKU_GCC_VERSION[1]) >= 4 {
976			InstallOptionalHaikuImagePackage
977				gettext-0.18.1.1-r1a4-x86-gcc4-2012-08-30.zip
978				: $(baseURL)/gettext-0.18.1.1-r1a4-x86-gcc4-2012-08-30.zip
979				: : true ;
980		} else {
981			InstallOptionalHaikuImagePackage
982				gettext-0.18.1.1-r1a4-x86-gcc2-2012-08-28.zip
983				: $(baseURL)/gettext-0.18.1.1-r1a4-x86-gcc2-2012-08-28.zip
984				: : true ;
985		}
986	}
987}
988
989
990# Git
991if [ IsOptionalHaikuImagePackageAdded Git ] {
992	if $(TARGET_ARCH) != x86 {
993		Echo "No optional package Git available for $(TARGET_ARCH)" ;
994	} else {
995		if $(HAIKU_GCC_VERSION[1]) >= 4 {
996			InstallOptionalHaikuImagePackage
997				git-1.7.10.2-r1a4-x86-gcc4-2012-08-30.zip
998				: $(baseURL)/git-1.7.10.2-r1a4-x86-gcc4-2012-08-30.zip
999				: : true ;
1000		} else {
1001			InstallOptionalHaikuImagePackage
1002				git-1.7.10.2-r1a4-x86-gcc2-2012-08-28.zip
1003				: $(baseURL)/git-1.7.10.2-r1a4-x86-gcc2-2012-08-28.zip
1004				: : true ;
1005		}
1006	}
1007}
1008
1009
1010# GitDoc
1011if [ IsOptionalHaikuImagePackageAdded GitDoc ] {
1012	if $(TARGET_ARCH) != x86 {
1013		Echo "No optional package GitDoc available for $(TARGET_ARCH)" ;
1014	} else {
1015		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1016			InstallOptionalHaikuImagePackage
1017				gitdoc-1.7.10.2-x86-gcc4-2012-06-20.zip
1018				: $(baseURL)/gitdoc-1.7.10.2-x86-gcc4-2012-06-20.zip
1019				: : true ;
1020		} else {
1021			InstallOptionalHaikuImagePackage
1022				gitdoc-1.7.10.2-r1a4-x86-gcc2-2012-08-28.zip
1023				: $(baseURL)/gitdoc-1.7.10.2-r1a4-x86-gcc2-2012-08-28.zip
1024				: : true ;
1025		}
1026	}
1027}
1028
1029
1030# GPerf
1031if [ IsOptionalHaikuImagePackageAdded GPerf ] {
1032	if $(TARGET_ARCH) != x86 {
1033		Echo "No optional package GPerf available for $(TARGET_ARCH)" ;
1034	} else {
1035		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1036			InstallOptionalHaikuImagePackage
1037				gperf-3.0.4-r1a4-x86-gcc4-2012-08-30.zip
1038				: $(baseURL)/gperf-3.0.4-r1a4-x86-gcc4-2012-08-30.zip
1039				: : true ;
1040		} else {
1041			InstallOptionalHaikuImagePackage
1042				gperf-3.0.4-r1a4-x86-gcc2-2012-08-28.zip
1043				: $(baseURL)/gperf-3.0.4-r1a4-x86-gcc2-2012-08-28.zip
1044				: : true ;
1045		}
1046	}
1047}
1048
1049
1050# Groff
1051if [ IsOptionalHaikuImagePackageAdded Groff ] {
1052	if $(TARGET_ARCH) != x86 {
1053		Echo "No optional package Groff available for $(TARGET_ARCH)" ;
1054	} else {
1055		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1056			InstallOptionalHaikuImagePackage
1057				groff-1.20.1-r1a4-x86-gcc4-2012-08-30.zip
1058				: $(baseURL)/groff-1.20.1-r1a4-x86-gcc4-2012-08-30.zip
1059				: : true ;
1060		} else {
1061			InstallOptionalHaikuImagePackage
1062				 groff-1.20.1-r1a4-x86-gcc2-2012-08-28.zip
1063				: $(baseURL)/groff-1.20.1-r1a4-x86-gcc2-2012-08-28.zip
1064				: : true ;
1065		}
1066	}
1067}
1068
1069
1070# HGgrep
1071if [ IsOptionalHaikuImagePackageAdded HGrep ] {
1072	if $(TARGET_ARCH) != x86 {
1073		Echo "No optional package HGrep available for $(TARGET_ARCH)" ;
1074	} else {
1075		InstallOptionalHaikuImagePackage
1076			hgrep-1.0.1-x86-gcc2-2012-07-23.zip
1077			: $(baseURL)/hgrep-1.0.1-x86-gcc2-2012-07-23.zip ;
1078	}
1079}
1080
1081
1082# ICU
1083if [ IsOptionalHaikuImagePackageAdded ICU ] {
1084	if $(TARGET_ARCH) != x86 {
1085		Echo "No optional package ICU available for $(TARGET_ARCH)" ;
1086	} else {
1087		if $(HAIKU_GCC_VERSION[1]) = 2 {
1088			# unzip gcc2
1089			InstallOptionalHaikuImagePackage $(HAIKU_ICU_GCC_2_PACKAGE)
1090				: $(baseURL)/$(HAIKU_ICU_GCC_2_PACKAGE)
1091				: system lib ;
1092			if $(isHybridBuild) {
1093				# unzip gcc4 to gcc4 subdir
1094				InstallOptionalHaikuImagePackage $(HAIKU_ICU_GCC_4_PACKAGE)
1095					: $(baseURL)/$(HAIKU_ICU_GCC_4_PACKAGE)
1096					: system lib gcc4 ;
1097			}
1098		} else {
1099			# unzip gcc4
1100			InstallOptionalHaikuImagePackage $(HAIKU_ICU_GCC_4_PACKAGE)
1101				: $(baseURL)/$(HAIKU_ICU_GCC_4_PACKAGE)
1102				: system lib ;
1103			if $(isHybridBuild) {
1104				# unzip gcc2 to gcc2 subdir
1105				InstallOptionalHaikuImagePackage $(HAIKU_ICU_GCC_2_PACKAGE)
1106					: $(baseURL)/$(HAIKU_ICU_GCC_2_PACKAGE)
1107					: system lib gcc2 ;
1108			}
1109		}
1110	}
1111}
1112
1113
1114# ICU-devel
1115if [ IsOptionalHaikuImagePackageAdded ICU-devel ] {
1116	InstallOptionalHaikuImagePackage $(HAIKU_ICU_DEVEL_PACKAGE)
1117		: $(baseURL)/$(HAIKU_ICU_DEVEL_PACKAGE) ;
1118
1119	local arch = $(TARGET_ARCH) ;
1120	local abi = gcc$(HAIKU_GCC_VERSION[1]) ;
1121	local lib ;
1122	for abiVersionedLib in $(HAIKU_ICU_LIBS) {
1123		abiVersionedLib = $(abiVersionedLib:B:G=) ;
1124		lib = $(abiVersionedLib:B) ;
1125		while $(lib:S) != ".so" {
1126			abiVersionedLib = $(abiVersionedLib:B) ;
1127			lib = $(abiVersionedLib:B) ;
1128		}
1129		AddSymlinkToHaikuHybridImage develop abi $(arch) $(abi) lib
1130			: /system/lib $(abiVersionedLib) : : true ;
1131		AddSymlinkToHaikuHybridImage develop abi $(arch) $(abi) lib
1132			: $(abiVersionedLib) : $(lib) ;
1133	}
1134}
1135
1136
1137# KeymapSwitcher
1138if [ IsOptionalHaikuImagePackageAdded KeymapSwitcher ] {
1139	if $(TARGET_ARCH) != x86 {
1140		Echo "No optional package KeymapSwitcher available for $(TARGET_ARCH)" ;
1141	} else {
1142		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1143			InstallOptionalHaikuImagePackage
1144				KeymapSwitcher-1.2.7-x86-gcc4-2012-05-19.zip
1145				: $(baseURL)/KeymapSwitcher-1.2.7-x86-gcc4-2012-05-19.zip ;
1146		} else {
1147			InstallOptionalHaikuImagePackage
1148				KeymapSwitcher-1.2.7-x86-gcc2-2012-05-19.zip
1149				: $(baseURL)/KeymapSwitcher-1.2.7-x86-gcc2-2012-05-19.zip ;
1150		}
1151		AddSymlinkToHaikuImage home config settings deskbar Preferences
1152			: /boot/common/bin/KeymapSwitcher ;
1153	}
1154}
1155
1156
1157# LGrep
1158if [ IsOptionalHaikuImagePackageAdded LGrep ] {
1159	if $(TARGET_ARCH) != x86 {
1160		Echo "No optional package LGrep available for $(TARGET_ARCH)" ;
1161	} else {
1162		InstallOptionalHaikuImagePackage
1163			lgrep-1.0-x86-gcc2-2012-07-23.zip
1164			: $(baseURL)/lgrep-1.0-x86-gcc2-2012-07-23.zip ;
1165	}
1166}
1167
1168
1169# LibEvent
1170if [ IsOptionalHaikuImagePackageAdded LibEvent ] {
1171	if $(TARGET_ARCH) != x86 {
1172		Echo "No optional package LibEvent available for $(TARGET_ARCH)" ;
1173	} else {
1174		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1175			InstallOptionalHaikuImagePackage
1176				libevent-2.0.10-r1a4-x86-gcc4-2012-08-30.zip
1177				: $(baseURL)/lib/libevent-2.0.10-r1a4-x86-gcc4-2012-08-30.zip
1178				: : true ;
1179		} else {
1180			InstallOptionalHaikuImagePackage
1181				libevent-2.0.10-r1a4-x86-gcc2-2012-08-28.zip
1182				: $(baseURL)/lib/libevent-2.0.10-r1a4-x86-gcc2-2012-08-28.zip
1183				: : true ;
1184		}
1185	}
1186}
1187
1188
1189# LibIconv
1190if [ IsOptionalHaikuImagePackageAdded LibIconv ] {
1191	if $(TARGET_ARCH) != x86 {
1192		Echo "No optional package LibIconv available for $(TARGET_ARCH)" ;
1193	} else {
1194		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1195			InstallOptionalHaikuImagePackage
1196				libiconv-1.13.1-r1a4-x86-gcc4-2012-08-30.zip
1197				: $(baseURL)/libiconv-1.13.1-r1a4-x86-gcc4-2012-08-30.zip ;
1198		} else {
1199			InstallOptionalHaikuImagePackage
1200				libiconv-1.13.1-r1a4-x86-gcc2-2012-08-28.zip
1201				: $(baseURL)/libiconv-1.13.1-r1a4-x86-gcc2-2012-08-28.zip ;
1202		}
1203	}
1204}
1205
1206
1207# LibLayout library
1208if [ IsOptionalHaikuImagePackageAdded LibLayout ] {
1209	if $(TARGET_ARCH) != x86 {
1210		Echo "No optional package LibLayout available for $(TARGET_ARCH)" ;
1211	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
1212		InstallOptionalHaikuImagePackage liblayout-1.4.1-r1a4-gcc4-2012-08-30.zip
1213			: $(baseURL)/liblayout-1.4.1-r1a4-gcc4-2012-08-30.zip ;
1214	} else {
1215		InstallOptionalHaikuImagePackage liblayout-1.4.1-r1a4-gcc2-2012-08-28.zip
1216			: $(baseURL)/liblayout-1.4.1-r1a4-gcc2-2012-08-28.zip ;
1217	}
1218}
1219
1220
1221# Libmng library
1222if [ IsOptionalHaikuImagePackageAdded Libmng ] {
1223	if $(TARGET_ARCH) != x86 {
1224		Echo "No optional package Libmng available for $(TARGET_ARCH)" ;
1225	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
1226		InstallOptionalHaikuImagePackage
1227			libmng-1.0.10-r1a3-x86-gcc4-2011-05-24.zip
1228			: $(baseURL)/lib/libmng-1.0.10-r1a3-x86-gcc4-2011-05-24.zip ;
1229	} else {
1230		InstallOptionalHaikuImagePackage
1231			libmng-1.0.10-r1a4-x86-gcc2-2012-08-28.zip
1232			: $(baseURL)/lib/libmng-1.0.10-r1a4-x86-gcc2-2012-08-28.zip  ;
1233	}
1234}
1235
1236
1237# LibXML2
1238if [ IsOptionalHaikuImagePackageAdded LibXML2 ] {
1239	if $(TARGET_ARCH) != x86 {
1240		Echo "No optional package LibXML2 available for $(TARGET_ARCH)" ;
1241	} else {
1242		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1243			InstallOptionalHaikuImagePackage
1244				libxml2-2.8.0-r1a4-x86-gcc4-2012-08-28.zip
1245				: $(baseURL)/libxml2-2.8.0-r1a4-x86-gcc4-2012-08-28.zip ;
1246		} else {
1247			InstallOptionalHaikuImagePackage
1248				libxml2-2.8.0-r1a4-x86-gcc2-2012-08-30.zip
1249				: $(baseURL)/libxml2-2.8.0-r1a4-x86-gcc2-2012-08-30.zip ;
1250		}
1251	}
1252}
1253
1254
1255# LibXSLT
1256if [ IsOptionalHaikuImagePackageAdded LibXSLT ] {
1257	if $(TARGET_ARCH) != x86 {
1258		Echo "No optional package LibXSLT available for $(TARGET_ARCH)" ;
1259	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
1260		InstallOptionalHaikuImagePackage
1261			libxslt-1.1.26-r1a4-x86-gcc4-2012-08-29.zip
1262			: $(baseURL)/libxslt-1.1.26-r1a4-x86-gcc4-2012-08-29.zip ;
1263	} else {
1264		InstallOptionalHaikuImagePackage
1265			libxslt-1.1.26-r1a4-x86-gcc2-2012-08-28.zip
1266			: $(baseURL)/libxslt-1.1.26-r1a4-x86-gcc2-2012-08-28.zip
1267			: : true ;
1268	}
1269}
1270
1271
1272# Links web browser
1273if [ IsOptionalHaikuImagePackageAdded Links ] {
1274	if $(TARGET_ARCH) != x86 {
1275		Echo "No optional package Links available for $(TARGET_ARCH)" ;
1276	} else if $(HAIKU_GCC_VERSION[1]) >= 4 && ! $(isHybridBuild) {
1277		Echo "No optional package Links available for gcc4" ;
1278	} else {
1279		InstallOptionalHaikuImagePackage
1280			links-2.3pre2-r1a4-x86-gcc2-2012-08-30.zip
1281			: $(baseURL)/links-2.3pre2-r1a4-x86-gcc2-2012-08-30.zip ;
1282		AddSymlinkToHaikuImage home config settings deskbar Applications
1283			: /boot/home/config/bin/links ;
1284	}
1285}
1286
1287
1288# Lua
1289if [ IsOptionalHaikuImagePackageAdded Lua ] {
1290	if $(TARGET_ARCH) != x86 {
1291		Echo "No optional package Lua available for $(TARGET_ARCH)" ;
1292	} else {
1293		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1294			InstallOptionalHaikuImagePackage
1295				lua-5.1.4-x86-gcc4-2010-10-30.zip
1296				: $(baseURL)/lua-5.1.4-x86-gcc4-2010-10-30.zip
1297				: : true ;
1298		} else {
1299			InstallOptionalHaikuImagePackage
1300				lua-5.1.4-3-r1a4-x86-gcc2-2012-08-29.zip
1301				: $(baseURL)/lua-5.1.4-3-r1a4-x86-gcc2-2012-08-29.zip
1302				: : true ;
1303		}
1304	}
1305}
1306
1307
1308# Man
1309if [ IsOptionalHaikuImagePackageAdded Man ] {
1310	if $(TARGET_ARCH) != x86 {
1311		Echo "No optional package Man available for $(TARGET_ARCH)" ;
1312	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
1313		InstallOptionalHaikuImagePackage
1314			 man-1.6g-r1a4-x86-gcc4-2012-08-30.zip
1315			: $(baseURL)/man-1.6g-r1a4-x86-gcc4-2012-08-30.zip ;
1316	} else {
1317		InstallOptionalHaikuImagePackage
1318			 man-1.6g-r1a4-x86-gcc2-2012-08-28.zip
1319			: $(baseURL)/man-1.6g-r1a4-x86-gcc2-2012-08-28.zip ;
1320	}
1321}
1322
1323
1324# MandatoryPackages
1325if [ IsOptionalHaikuImagePackageAdded MandatoryPackages ] {
1326	# Pseudo package for grouping packages, which are added to all images.
1327}
1328
1329
1330# Mercurial
1331if [ IsOptionalHaikuImagePackageAdded Mercurial ] {
1332	if $(TARGET_ARCH) != x86 {
1333		Echo "No optional package Mercurial available for $(TARGET_ARCH)" ;
1334	} else {
1335		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1336			InstallOptionalHaikuImagePackage
1337				mercurial-2.2.2-r1a4-x86-gcc4-2012-08-30.zip
1338				: $(baseURL)/mercurial-2.2.2-r1a4-x86-gcc4-2012-08-30.zip
1339				: : true ;
1340		} else {
1341			InstallOptionalHaikuImagePackage
1342				mercurial-2.2.2-r1a4-x86-gcc2-2012-08-27.zip
1343				: $(baseURL)/mercurial-2.2.2-r1a4-x86-gcc2-2012-08-27.zip
1344				: : true ;
1345		}
1346	}
1347}
1348
1349
1350# Nano
1351if [ IsOptionalHaikuImagePackageAdded Nano ] {
1352	if $(TARGET_ARCH) != x86 {
1353		Echo "No optional package Nano available for $(TARGET_ARCH)" ;
1354	} else {
1355		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1356			InstallOptionalHaikuImagePackage
1357				nano-2.2.6-r1a4-x86-gcc4-2012-08-30.zip
1358				: $(baseURL)/nano-2.2.6-r1a4-x86-gcc4-2012-08-30.zip ;
1359		} else {
1360			InstallOptionalHaikuImagePackage
1361				nano-2.2.6-r1a4-x86-gcc2-2012-08-28.zip
1362				: $(baseURL)/nano-2.2.6-r1a4-x86-gcc2-2012-08-28.zip ;
1363		}
1364	}
1365}
1366
1367
1368# Neon
1369if [ IsOptionalHaikuImagePackageAdded Neon ] {
1370	if $(TARGET_ARCH) != x86 {
1371		Echo "No optional package Neon available for $(TARGET_ARCH)" ;
1372	} else {
1373		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1374			InstallOptionalHaikuImagePackage
1375				neon-0.29.6-r1a4-x86-gcc4-2012-08-29.zip
1376				: $(baseURL)/neon-0.29.6-r1a4-x86-gcc4-2012-08-29.zip ;
1377		} else {
1378			InstallOptionalHaikuImagePackage
1379				neon-0.29.6-r1a4-x86-gcc2-2012-08-28.zip
1380				: $(baseURL)/neon-0.29.6-r1a4-x86-gcc2-2012-08-28.zip ;
1381		}
1382	}
1383}
1384
1385
1386# NetFS network file system
1387if [ IsOptionalHaikuImagePackageAdded NetFS ] {
1388	# userlandfs module
1389	AddFilesToHaikuImage home config add-ons userlandfs : netfs ;
1390
1391	# servers
1392	AddFilesToHaikuImage system servers : netfs_server ;
1393	AddFilesToHaikuImage system servers : authentication_server ;
1394
1395	# tools
1396	AddFilesToHaikuImage system bin : netfs_config ;
1397	AddFilesToHaikuImage system bin : netfs_server_prefs ;
1398
1399	#example settings for netfs_server
1400	local netfsServerSettingsFiles = <driver-settings>netfs-server ;
1401	SEARCH on $(netfsServerSettingsFiles)
1402		= [ FDirName $(HAIKU_TOP) src add-ons kernel file_systems netfs ] ;
1403	AddFilesToHaikuImage home config settings kernel drivers
1404	: $(netfsServerSettingsFiles) ;
1405
1406	#userlandfs settings are needed for netfs_config to work (ioctls)
1407	local userlandfsServerSettingsFiles = <driver-settings>userlandfs ;
1408	SEARCH on $(userlandfsServerSettingsFiles)
1409		= [ FDirName $(HAIKU_TOP) src add-ons kernel file_systems userlandfs ] ;
1410	AddFilesToHaikuImage home config settings kernel drivers
1411	: $(userlandfsServerSettingsFiles) ;
1412}
1413
1414
1415# NetSurf web browser
1416if [ IsOptionalHaikuImagePackageAdded NetSurf ] {
1417	if $(TARGET_ARCH) != x86 {
1418		Echo "No optional package NetSurf available for $(TARGET_ARCH)" ;
1419	} else if $(HAIKU_GCC_VERSION[1]) >= 4 && ! $(isHybridBuild) {
1420		Echo "No optional package NetSurf available for gcc4" ;
1421	} else {
1422		InstallOptionalHaikuImagePackage
1423			netsurf-2.7-r1a3-x86-gcc2-2011-06-04.zip
1424			: $(baseURL)/netsurf-2.7-r1a3-x86-gcc2-2011-06-04.zip ;
1425		AddSymlinkToHaikuImage home config settings deskbar Applications
1426			: /boot/apps/NetSurf/NetSurf ;
1427	}
1428}
1429
1430
1431# OCaml
1432if [ IsOptionalHaikuImagePackageAdded OCaml ] {
1433	if $(TARGET_ARCH) != x86 {
1434		Echo "No optional package OCaml available for $(TARGET_ARCH)" ;
1435	} else if $(HAIKU_GCC_VERSION[1]) >= 4 && ! $(isHybridBuild) {
1436		Echo "No optional package OCaml available for gcc4" ;
1437	} else {
1438		InstallOptionalHaikuImagePackage
1439			ocaml-3.11.1-r1a1-x86-gcc2-2009-09-06.zip
1440			: $(baseURL)/ocaml-3.11.1-r1a1-x86-gcc2-2009-09-06.zip ;
1441		InstallOptionalHaikuImagePackage
1442			camlp5-5.12-r1a1-x86-gcc2-2009-09-06.zip
1443			: $(baseURL)/camlp5-5.12-r1a1-x86-gcc2-2009-09-06.zip ;
1444	}
1445}
1446
1447
1448# OpenSound drivers
1449if [ IsOptionalHaikuImagePackageAdded OpenSound ] {
1450	if $(TARGET_ARCH) != x86 {
1451		Echo "No optional package OpenSound available for $(TARGET_ARCH)" ;
1452	} else {
1453		InstallOptionalHaikuImagePackage
1454			opensound-4.2-r1a2-x86-gcc2-2010-05-01.zip
1455			: $(baseURL)/opensound-4.2-r1a2-x86-gcc2-2010-05-01.zip ;
1456	}
1457}
1458
1459
1460# OpenSSH
1461if [ IsOptionalHaikuImagePackageAdded OpenSSH ] {
1462	if $(TARGET_ARCH) != x86 {
1463		Echo "No optional package OpenSSH available for $(TARGET_ARCH)" ;
1464	} else {
1465		if ! $(HAIKU_IMAGE_HOST_NAME) && ! $(HAIKU_IGNORE_USER_BUILD_CONFIG) {
1466			Exit "Optional package OpenSSH requires the HAIKU_IMAGE_HOST_NAME"
1467				"variable to be set!" ;
1468		}
1469
1470		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1471			InstallOptionalHaikuImagePackage
1472				openssh-6.0p1-r1a4-x86-gcc4-2012-08-30.zip
1473				: $(baseURL)/openssh-6.0p1-r1a4-x86-gcc4-2012-08-30.zip ;
1474		} else {
1475			InstallOptionalHaikuImagePackage
1476				openssh-6.0p1-r1a4-x86-gcc2-2012-08-28.zip
1477				: $(baseURL)/openssh-6.0p1-r1a4-x86-gcc2-2012-08-28.zip ;
1478		}
1479
1480		AddUserToHaikuImage sshd : 1001 : 100 : /var/empty : /bin/true
1481			: "sshd user" ;
1482	}
1483}
1484
1485
1486# OpenSSL
1487if [ IsOptionalHaikuImagePackageAdded OpenSSL ] {
1488	if $(TARGET_ARCH) != x86 {
1489		Echo "No optional package OpenSSL available for $(TARGET_ARCH)" ;
1490	} else {
1491		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1492			InstallOptionalHaikuImagePackage $(HAIKU_OPENSSL_PACKAGE)
1493				: $(HAIKU_OPENSSL_URL) ;
1494		} else {
1495			InstallOptionalHaikuImagePackage $(HAIKU_OPENSSL_PACKAGE)
1496				: $(HAIKU_OPENSSL_URL) ;
1497		}
1498	}
1499}
1500
1501
1502# P7zip
1503if [ IsOptionalHaikuImagePackageAdded P7zip ] {
1504	if $(TARGET_ARCH) != x86 {
1505		Echo "No optional package P7zip available for $(TARGET_ARCH)" ;
1506	} else {
1507		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1508			InstallOptionalHaikuImagePackage
1509				p7zip-9.20.1-x86-gcc4-2012-06-19.zip
1510				: $(baseURL)/p7zip-9.20.1-x86-gcc4-2012-06-19.zip ;
1511		} else {
1512			InstallOptionalHaikuImagePackage
1513				p7zip-9.20.1-r1a4-x86-gcc2-2012-08-29.zip
1514				: $(baseURL)/p7zip-9.20.1-r1a4-x86-gcc2-2012-08-29.zip ;
1515		}
1516		AddExpanderRuleToHaikuImage "application/x-7z-compressed" : .7z
1517			: "7za l \\0045s"
1518			: "7za x -y \\0045s"
1519		;
1520
1521	}
1522}
1523
1524
1525# Paladin
1526if [ IsOptionalHaikuImagePackageAdded Paladin ] {
1527	if $(TARGET_ARCH) != x86 {
1528		Echo "No optional package Paladin available for $(TARGET_ARCH)" ;
1529	} else {
1530		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1531			InstallOptionalHaikuImagePackage
1532				paladin-1.3-r1a3-x86-gcc4-2011-05-24.zip
1533				: $(baseURL)/paladin-1.3-r1a3-x86-gcc4-2011-05-24.zip ;
1534		} else {
1535			InstallOptionalHaikuImagePackage
1536				paladin-1.3-r1a3-x86-gcc2-2011-05-18.zip
1537				: $(baseURL)/paladin-1.3-r1a3-x86-gcc2-2011-05-18.zip ;
1538		}
1539
1540		AddSymlinkToHaikuImage home config settings deskbar Applications
1541			: /boot/apps/Paladin/Paladin ;
1542		AddSymlinkToHaikuImage common bin
1543			: /boot/apps/Paladin/Paladin ;
1544	}
1545}
1546
1547
1548# PCRE regex engine
1549if [ IsOptionalHaikuImagePackageAdded PCRE ] {
1550	if $(TARGET_ARCH) != x86 {
1551		Echo "No optional package PCRE available for $(TARGET_ARCH)" ;
1552	} else {
1553		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1554			InstallOptionalHaikuImagePackage
1555				libpcre-8.12-r1a3-x86-gcc4-2011-05-24.zip
1556				: $(baseURL)/libpcre-8.12-r1a3-x86-gcc4-2011-05-24.zip ;
1557		} else {
1558			InstallOptionalHaikuImagePackage
1559				libpcre-8.21-r1a4-x86-gcc2-2012-08-28.zip
1560				: $(baseURL)/libpcre-8.21-r1a4-x86-gcc2-2012-08-28.zip ;
1561		}
1562	}
1563}
1564
1565
1566# Pe text editor
1567if [ IsOptionalHaikuImagePackageAdded Pe ] {
1568	if $(TARGET_ARCH) != x86 {
1569		Echo "No optional package Pe available for $(TARGET_ARCH)" ;
1570	} else {
1571		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1572			InstallOptionalHaikuImagePackage
1573				pe-2.4.3-600-x86-gcc4-2011-12-18.zip
1574				: $(baseURL)/pe-2.4.3-600-x86-gcc4-2011-12-18.zip ;
1575		} else {
1576			InstallOptionalHaikuImagePackage
1577				pe-2.4.3-hg-r1a4-x86-gcc2-2012-08-29.zip
1578				: $(baseURL)/pe-2.4.3-hg-r1a4-x86-gcc2-2012-08-29.zip ;
1579		}
1580		AddSymlinkToHaikuImage home config settings deskbar Applications
1581			: /boot/apps/Pe/Pe ;
1582		AddSymlinkToHaikuImage common bin
1583			: /boot/apps/Pe/lpe ;
1584	}
1585}
1586
1587
1588# Perl
1589if [ IsOptionalHaikuImagePackageAdded Perl ] {
1590	if $(TARGET_ARCH) != x86 {
1591		Echo "No optional package Perl available for $(TARGET_ARCH)" ;
1592	} else {
1593		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1594			InstallOptionalHaikuImagePackage
1595				perl-5.10.1-r1a3-x86-gcc4-2011-05-24.zip
1596				: $(baseURL)/perl-5.10.1-r1a3-x86-gcc4-2011-05-24.zip
1597				: : true ;
1598		} else {
1599			InstallOptionalHaikuImagePackage
1600				perl-5.10.1-r1a4-x86-gcc2-2012-08-27.zip
1601				: $(baseURL)/perl-5.10.1-r1a4-x86-gcc2-2012-08-27.zip
1602				: : true ;
1603		}
1604	}
1605}
1606
1607
1608# Puri
1609if [ IsOptionalHaikuImagePackageAdded Puri ] {
1610	if $(TARGET_ARCH) != x86 {
1611		Echo "No optional package Puri available for $(TARGET_ARCH)" ;
1612	} else if $(HAIKU_GCC_VERSION[1]) < 4 && ! $(isHybridBuild) {
1613		Echo "No optional package Puri for gcc2" ;
1614	} else {
1615		InstallOptionalHaikuImagePackage
1616			puri-0.3.9.1-x86-gcc4-2012-08-16.zip
1617			: $(baseURL)/puri-0.3.9.1-x86-gcc4-2012-08-16.zip ;
1618		AddSymlinkToHaikuImage home config settings deskbar Applications
1619			: /boot/apps/Puri/Puri ;
1620	}
1621}
1622
1623
1624# Python
1625if [ IsOptionalHaikuImagePackageAdded Python ] {
1626	if $(TARGET_ARCH) != x86 {
1627		Echo "No optional package Python available for $(TARGET_ARCH)" ;
1628	} else {
1629		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1630			InstallOptionalHaikuImagePackage
1631				python-2.6.7-x86-gcc4-2011-06-24.zip
1632				: $(baseURL)/python-2.6.7-x86-gcc4-2011-06-24.zip
1633				: : true ;
1634		} else {
1635			InstallOptionalHaikuImagePackage
1636				python-2.6.8-r1a4-x86-gcc2-2012-08-30.zip
1637				: $(baseURL)/python-2.6.8-r1a4-x86-gcc2-2012-08-30.zip
1638				: : true ;
1639		}
1640	}
1641}
1642
1643
1644# Rsync
1645if [ IsOptionalHaikuImagePackageAdded Rsync ] {
1646	if $(TARGET_ARCH) != x86 {
1647		Echo "No optional package Rsync available for $(TARGET_ARCH)" ;
1648	} else {
1649		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1650			InstallOptionalHaikuImagePackage
1651				rsync-3.0.7-r1a3-x86-gcc4-2011-05-24.zip
1652				: $(baseURL)/rsync-3.0.7-r1a3-x86-gcc4-2011-05-24.zip
1653				: : true ;
1654		} else {
1655			InstallOptionalHaikuImagePackage
1656				rsync-3.0.7-r1a4-x86-gcc2-2012-08-29.zip
1657				: $(baseURL)/rsync-3.0.7-r1a4-x86-gcc2-2012-08-29.zip
1658				: : true ;
1659		}
1660	}
1661}
1662
1663
1664# Ruby
1665if [ IsOptionalHaikuImagePackageAdded Ruby ] {
1666	if $(TARGET_ARCH) != x86 {
1667		Echo "No optional package Ruby available for $(TARGET_ARCH)" ;
1668	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
1669		InstallOptionalHaikuImagePackage
1670			ruby-1.9.1-r1a3-x86-gcc4-2011-05-24.zip
1671			: $(baseURL)/ruby-1.9.1-r1a3-x86-gcc4-2011-05-24.zip ;
1672	} else {
1673		InstallOptionalHaikuImagePackage
1674			ruby-1.9.1-r1a4-x86-gcc2-2012-08-29.zip
1675			: $(baseURL)/ruby-1.9.1-r1a4-x86-gcc2-2012-08-29.zip ;
1676	}
1677}
1678
1679
1680# Sed
1681if [ IsOptionalHaikuImagePackageAdded Sed ] {
1682	if $(TARGET_ARCH) != x86 {
1683		Echo "No optional package Sed available for $(TARGET_ARCH)" ;
1684	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
1685		InstallOptionalHaikuImagePackage
1686			sed-4.2.1-r1a3-x86-gcc4-2011-05-24.zip
1687			: $(baseURL)/sed-4.2.1-r1a3-x86-gcc4-2011-05-24.zip ;
1688	} else {
1689		InstallOptionalHaikuImagePackage
1690			sed-4.2.1-r1a4-x86-gcc2-2012-08-27.zip
1691			: $(baseURL)/sed-4.2.1-r1a4-x86-gcc2-2012-08-27.zip ;
1692	}
1693}
1694
1695
1696# SQLite
1697if [ IsOptionalHaikuImagePackageAdded SQLite ] {
1698	if $(TARGET_ARCH) != x86 {
1699		Echo "No optional package SQLite available for $(TARGET_ARCH)" ;
1700	} else {
1701		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1702			InstallOptionalHaikuImagePackage
1703				sqlite-3.7.13-r1a4-x86-gcc4-2012-08-30.zip
1704				: $(baseURL)/sqlite-3.7.13-r1a4-x86-gcc4-2012-08-30.zip ;
1705		} else {
1706			InstallOptionalHaikuImagePackage
1707				sqlite-3.7.13-r1a4-x86-gcc2-2012-08-27.zip
1708				: $(baseURL)/sqlite-3.7.13-r1a4-x86-gcc2-2012-08-27.zip ;
1709		}
1710	}
1711}
1712
1713
1714# Subversion
1715if [ IsOptionalHaikuImagePackageAdded Subversion ] {
1716	if $(TARGET_ARCH) != x86 {
1717		Echo "No optional package Subversion available for $(TARGET_ARCH)" ;
1718	} else {
1719		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1720			InstallOptionalHaikuImagePackage
1721				subversion-1.6.18-r1a4-x86-gcc4-2012-08-30.zip
1722				: $(baseURL)/subversion-1.6.18-r1a4-x86-gcc4-2012-08-30.zip
1723				: : true ;
1724		} else {
1725			InstallOptionalHaikuImagePackage
1726				subversion-1.6.18-r1a4-x86-gcc2-2012-08-28.zip
1727				: $(baseURL)/subversion-1.6.18-r1a4-x86-gcc2-2012-08-28.zip
1728				: : true ;
1729		}
1730	}
1731}
1732
1733
1734# TagLib
1735if [ IsOptionalHaikuImagePackageAdded TagLib ] {
1736	if $(TARGET_ARCH) != x86 {
1737		Echo "No optional package TagLib available for $(TARGET_ARCH)" ;
1738	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
1739		InstallOptionalHaikuImagePackage
1740			taglib-1.6.3-r1r3-x86-gcc4-2011-05-24.zip
1741			: $(baseURL)/taglib-1.6.3-r1r3-x86-gcc4-2011-05-24.zip ;
1742	} else {
1743		InstallOptionalHaikuImagePackage
1744			taglib-1.7.2-r1a4-x86-gcc2-2012-08-30.zip
1745			: $(baseURL)/taglib-1.7.2-r1a4-x86-gcc2-2012-08-30.zip ;
1746	}
1747}
1748
1749
1750# Tar
1751if [ IsOptionalHaikuImagePackageAdded Tar ] {
1752	if $(TARGET_ARCH) != x86 {
1753		Echo "No optional package Tar available for $(TARGET_ARCH)" ;
1754	} else {
1755		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1756			InstallOptionalHaikuImagePackage
1757				tar-1.26-x86-gcc4-2012-06-19.zip
1758				: $(baseURL)/tar-1.26-x86-gcc4-2012-06-19.zip ;
1759		} else {
1760			InstallOptionalHaikuImagePackage
1761				tar-1.26-r1a4-x86-gcc2-2012-08-29.zip
1762				: $(baseURL)/tar-1.26-r1a4-x86-gcc2-2012-08-29.zip ;
1763		}
1764	}
1765}
1766
1767
1768# TimGMSoundFont
1769if [ IsOptionalHaikuImagePackageAdded TimGMSoundFont ] {
1770	InstallOptionalHaikuImagePackage TimGMSoundFont-2010-06-16.zip
1771		: $(baseURL)/TimGMSoundFont-2010-06-16.zip ;
1772}
1773
1774
1775# TrackerNewTemplates
1776if [ IsOptionalHaikuImagePackageAdded TrackerNewTemplates ] {
1777	InstallOptionalHaikuImagePackage TrackerNewTemplates-2010-04-26.zip
1778		: $(baseURL)/TrackerNewTemplates-2010-04-26.zip
1779		: home config settings Tracker "Tracker New Templates"
1780	;
1781}
1782
1783
1784# Transmission
1785if [ IsOptionalHaikuImagePackageAdded Transmission ] {
1786	if $(TARGET_ARCH) != x86 {
1787		Echo "No optional package Transmission available for $(TARGET_ARCH)" ;
1788	} else {
1789		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1790			InstallOptionalHaikuImagePackage
1791				transmission-2.21-r1a3-x86-gcc4-2011-05-27.zip
1792				: $(baseURL)/transmission-2.21-r1a3-x86-gcc4-2011-05-27.zip
1793				: : true ;
1794		} else {
1795			InstallOptionalHaikuImagePackage
1796				transmission-2.21-r1a4-x86-gcc2-2012-08-30.zip
1797				: $(baseURL)/transmission-2.21-r1a4-x86-gcc2-2012-08-30.zip
1798				: : true ;
1799		}
1800	}
1801}
1802
1803
1804# UserlandFS
1805if [ IsOptionalHaikuImagePackageAdded UserlandFS ] {
1806	local arch = $(TARGET_ARCH) ;
1807	local abi = gcc$(HAIKU_GCC_VERSION[1]) ;
1808
1809	# kernel module
1810	AddFilesToHaikuImage system add-ons kernel file_systems : userlandfs ;
1811
1812	# server
1813	AddFilesToHaikuImage system servers : userlandfs_server ;
1814
1815	# libs
1816	local userlandfsLibs =
1817		libuserlandfs_beos_kernel.so
1818		libuserlandfs_haiku_kernel.so
1819		libuserlandfs_fuse.so
1820	;
1821	AddFilesToHaikuHybridImage system lib : $(userlandfsLibs) : : true ;
1822
1823	# development goodies
1824	if [ IsOptionalHaikuImagePackageAdded DevelopmentMin ] {
1825		if ! ( $(HAIKU_GCC_VERSION[1]) in 2 4 ) {
1826			Exit "Optional package UserlandFS: Unsupported GCC version:"
1827				$(HAIKU_GCC_VERSION[1]) ;
1828		}
1829
1830		# library symlinks
1831		local lib ;
1832		for lib in $(userlandfsLibs) {
1833			AddSymlinkToHaikuImage develop abi $(arch) $(abi) lib
1834				: /system/lib/$(lib:BS) ;
1835			AddSymlinkToAlternativeGCCArchive develop abi $(arch) $(abi) lib
1836				: /system/lib/$(arch)/$(lib:BS) ;
1837		}
1838
1839		# FUSE headers
1840		local fuseHeaders =
1841			fuse_common_compat.h
1842			fuse_common.h
1843			fuse_compat.h
1844			fuse.h
1845			fuse_lowlevel_compat.h
1846			fuse_lowlevel.h
1847			fuse_opt.h
1848		;
1849		fuseHeaders = $(fuseHeaders:G=userlandfs!fuse) ;
1850		SEARCH on $(fuseHeaders)
1851			= [ FDirName $(HAIKU_TOP) headers private userlandfs fuse ] ;
1852		AddFilesToHaikuImage develop headers userlandfs fuse : $(fuseHeaders) ;
1853	}
1854}
1855
1856
1857# Vim
1858if [ IsOptionalHaikuImagePackageAdded Vim ] {
1859	if $(TARGET_ARCH) != x86 {
1860		Echo "No optional package Vim available for $(TARGET_ARCH)" ;
1861	} else {
1862		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1863			InstallOptionalHaikuImagePackage vim-7.3-x86-gcc4-2011-12-23.zip
1864				:  $(baseURL)/vim-7.3-x86-gcc4-2011-12-23.zip
1865				: : true ;
1866		} else {
1867			InstallOptionalHaikuImagePackage vim-7.3-x86-gcc2-2011-12-23.zip
1868				:  $(baseURL)/vim-7.3-x86-gcc2-2011-12-23.zip
1869				: : true ;
1870		}
1871		AddSymlinkToHaikuImage home config settings deskbar Applications
1872			: /boot/common/bin/gvim ;
1873		# TODO: move this symlink to the archive
1874		AddSymlinkToHaikuImage common bin : vim : vi ;
1875	}
1876}
1877
1878
1879# Vision
1880if [ IsOptionalHaikuImagePackageAdded Vision ] {
1881	if $(TARGET_ARCH) != x86 {
1882		Echo "No optional package Vision available for $(TARGET_ARCH)" ;
1883	} else {
1884		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1885			InstallOptionalHaikuImagePackage vision-908-x86-gcc4-2012-02-26.zip
1886				: $(baseURL)/vision-908-x86-gcc4-2012-02-26.zip ;
1887		} else {
1888			InstallOptionalHaikuImagePackage
1889				vision-908-r1a4-x86-gcc2-2012-08-29.zip
1890				: $(baseURL)/vision-908-r1a4-x86-gcc2-2012-08-29.zip ;
1891		}
1892		AddSymlinkToHaikuImage home config settings deskbar Applications
1893			: /boot/apps/Vision/Vision ;
1894	}
1895}
1896
1897
1898# WebKit
1899if [ IsOptionalHaikuImagePackageAdded WebKit ] {
1900	if $(TARGET_ARCH) != x86 {
1901		Echo "No optional package WebKit available for $(TARGET_ARCH)" ;
1902	} else if $(HAIKU_GCC_VERSION[1]) < 4 && ! $(isHybridBuild) {
1903		Echo "No optional package WebKit available for gcc2" ;
1904	} else {
1905		InstallOptionalHaikuImagePackage $(HAIKU_WEBKIT_FILE)
1906			: $(baseURL)/$(HAIKU_WEBKIT_FILE)
1907			: common ;
1908	}
1909}
1910
1911
1912# WebPositive
1913if [ IsOptionalHaikuImagePackageAdded WebPositive ] {
1914	if $(TARGET_ARCH) != x86 {
1915		Echo "No optional package WebPositive available for $(TARGET_ARCH)" ;
1916	} else if $(HAIKU_GCC_VERSION[1]) < 4 {
1917		if ! $(isHybridBuild) {
1918			Echo "No optional package WebPositive available for gcc2" ;
1919		} else {
1920			Echo "WebPositive will be compiled by gcc4 inside $(HAIKU_ALTERNATIVE_GCC_OUTPUT_DIR)" ;
1921			local catalogs = [ on WebPositive return $(HAIKU_CATALOG_FILES) ] ;
1922			if $(catalogs) {
1923				local signature = x-vnd.Haiku-WebPositive ;
1924				AddFilesToHaikuImage system data locale catalogs $(signature)
1925					: $(catalogs) ;
1926			}
1927		}
1928	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
1929		AddFilesToHaikuHybridImage apps : WebPositive ;
1930		AddSymlinkToHaikuHybridImage home config settings deskbar Applications
1931			: /boot/apps/WebPositive ;
1932	}
1933}
1934
1935
1936# WebPositiveBookmarks
1937if [ IsOptionalHaikuImagePackageAdded WebPositiveBookmarks ] {
1938	InstallOptionalHaikuImagePackage WebPositiveBookmarks-2012-02-18.zip
1939		: $(baseURL)/WebPositiveBookmarks-2012-02-18.zip
1940		: home config settings WebPositive ;
1941}
1942
1943# Welcome
1944if [ IsOptionalHaikuImagePackageAdded Welcome ] {
1945	CopyDirectoryToHaikuImage system documentation
1946		: [ FDirName $(HAIKU_TOP) docs welcome ]
1947		: welcome : -x .svn ;
1948	CopyDirectoryToHaikuImage system documentation
1949		: [ FDirName $(HAIKU_TOP) docs userguide ]
1950		: userguide : -x .svn ;
1951}
1952
1953
1954# WifiFirmwareScriptData
1955# This optional package is for people who build their own images & have wifi
1956# hardware that requires install-wifi-firmwares.sh & have no active network
1957# connection. This is not to be added to default images.
1958if [ IsOptionalHaikuImagePackageAdded WifiFirmwareScriptData ] {
1959	if $(TARGET_ARCH) != x86 {
1960		Echo "No optional package WifiFirmwareScriptData available for"
1961			$(TARGET_ARCH) ;
1962	} else {
1963		# broadcom43xx
1964		# firmware cutter
1965		local broadcomFWCutterArchive = b43-fwcutter-012.tar.bz2 ;
1966		local broadcomFWCutterURL =
1967			http://www.haiku-files.org/files/wifi-firmwares/b43/fwcutter/$(broadcomFWCutterArchive) ;
1968		local broadcomFWCutterFile = [ DownloadFile $(broadcomFWCutterArchive)
1969			: $(broadcomFWCutterURL) ] ;
1970		AddFilesToHaikuImage system data firmware broadcom43xx b43-fwcutter
1971			: $(broadcomFWCutterFile) ;
1972
1973		# headers needed to compile firmware cutter
1974		local glibcDir = [ FDirName
1975			$(HAIKU_TOP) src system libroot posix glibc ] ;
1976		local byteswapHeader = [ FDirName $(glibcDir) string byteswap.h ] ;
1977		AddFilesToHaikuImage system data firmware broadcom43xx b43-fwcutter
1978			: $(byteswapHeader) ;
1979		local bitByteswapHeader = [ FDirName
1980			$(glibcDir) include arch x86 bits byteswap.h ] ;
1981		AddFilesToHaikuImage system data firmware broadcom43xx b43-fwcutter bits
1982			: $(bitByteswapHeader) ;
1983
1984		# file containing firmware
1985		local broadcom43xxFile ;
1986		broadcom43xxFile = [ DownloadFile wl_apsta-3.130.20.0.o
1987			: http://www.haiku-files.org/files/wifi-firmwares/b43/wl_apsta-3.130.20.0.o ] ;
1988		AddFilesToHaikuImage system data firmware broadcom43xx
1989			: $(broadcom43xxFile) ;
1990
1991		# marvell88w8335
1992		local marvellArchive = malo-firmware-1.4.tgz ;
1993		local marvellURL = http://www.haiku-files.org/files/wifi-firmwares/marvell/$(marvellArchive) ;
1994		local marvellFile = [ DownloadFile $(marvellArchive) : $(marvellURL) ] ;
1995		AddFilesToHaikuImage system data firmware marvell88w8335
1996			: $(marvellFile) ;
1997	}
1998}
1999
2000
2001# WonderBrush
2002if [ IsOptionalHaikuImagePackageAdded WonderBrush ] {
2003	if $(TARGET_ARCH) != x86 {
2004		Echo "No optional package WonderBrush available for $(TARGET_ARCH)" ;
2005	} else if $(HAIKU_GCC_VERSION[1]) >= 4 && ! $(isHybridBuild) {
2006		Echo "No optional package WonderBrush available for gcc4" ;
2007	} else {
2008		InstallOptionalHaikuImagePackage WonderBrush-2.1.2.zip
2009			: $(baseURL)/WonderBrush-2.1.2-x86-gcc2-2008-11-08.zip
2010			: apps ;
2011		AddSymlinkToHaikuImage home config settings deskbar Applications
2012			: /boot/apps/WonderBrush/WonderBrush ;
2013	}
2014}
2015
2016
2017# wpa_supplicant
2018if [ IsOptionalHaikuImagePackageAdded wpa_supplicant ] {
2019	if $(TARGET_ARCH) != x86 {
2020		Echo "No optional package wpa_supplicant available for $(TARGET_ARCH)" ;
2021	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
2022		InstallOptionalHaikuImagePackage
2023			wpa_supplicant-0.7.3-x86-gcc4-2012-04-03.zip
2024			: $(baseURL)/wpa_supplicant-0.7.3-x86-gcc4-2012-04-03.zip ;
2025	} else {
2026		InstallOptionalHaikuImagePackage
2027			wpa_supplicant-0.7.3-x86-gcc2-2012-04-03.zip
2028			: $(baseURL)/wpa_supplicant-0.7.3-x86-gcc2-2012-04-03.zip ;
2029	}
2030}
2031
2032
2033# WQY-MicroHei
2034if [ IsOptionalHaikuImagePackageAdded WQY-MicroHei ] {
2035	InstallOptionalHaikuImagePackage
2036		wqy-microhei-0.2.0-beta-r1a4-x86-gcc2-2012-08-27.zip
2037		: $(baseURL)/wqy-microhei-0.2.0-beta-r1a4-x86-gcc2-2012-08-27.zip ;
2038}
2039
2040
2041# XZ-Utils
2042if [ IsOptionalHaikuImagePackageAdded XZ-Utils ] {
2043	if $(TARGET_ARCH) != x86 {
2044		Echo "No optional package XZ-Utils available for $(TARGET_ARCH)" ;
2045	} else {
2046		InstallOptionalHaikuImagePackage
2047			xz-utils-5.0.1-x86-gcc4-2012-07-18.zip
2048			: $(baseURL)/xz-utils-5.0.1-x86-gcc4-2012-07-18.zip ;
2049		AddExpanderRuleToHaikuImage "application/x-xz" : .tar.xz
2050			: "tar -Jtvf \\0045s"
2051			: "tar -Jxvf \\0045s"
2052		;
2053		AddExpanderRuleToHaikuImage "application/x-xz" : .txz
2054			: "tar -Jtvf \\0045s"
2055			: "tar -Jxvf \\0045s"
2056		;
2057		AddExpanderRuleToHaikuImage "application/x-xz" : .xz
2058			: "echo \\0045s | sed 's/.xz\\\$//g'"
2059			: "xz -df \\0045s"
2060		;
2061	}
2062}
2063
2064
2065# Yasm
2066if [ IsOptionalHaikuImagePackageAdded Yasm ] {
2067	if $(TARGET_ARCH) != x86 {
2068		Echo "No optional package Yasm available for $(TARGET_ARCH)" ;
2069	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
2070		InstallOptionalHaikuImagePackage
2071			yasm-1.2.0-r1a4-x86-gcc4-2012-08-29.zip
2072			: $(baseURL)/yasm-1.2.0-r1a4-x86-gcc4-2012-08-29.zip ;
2073	} else {
2074		InstallOptionalHaikuImagePackage
2075			yasm-1.2.0-r1a4-x86-gcc2-2012-08-27.zip
2076			: $(baseURL)/yasm-1.2.0-r1a4-x86-gcc2-2012-08-27.zip ;
2077	}
2078}
2079