xref: /haiku/build/jam/OptionalPackages (revision 7a74a5df454197933bc6e80a542102362ee98703)
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-x86-gcc4-2012-06-19.zip
130			: $(baseURL)/apr-1.4.6-x86-gcc4-2012-06-19.zip
131			: : true ;
132	} else {
133		InstallOptionalHaikuImagePackage
134			apr-1.4.6-x86-gcc2-2012-06-19.zip
135			: $(baseURL)/apr-1.4.6-x86-gcc2-2012-06-19.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-x86-gcc4-2012-06-19.zip
148			: $(baseURL)/apr-util-1.4.1-x86-gcc4-2012-06-19.zip
149			: : true ;
150	} else {
151		InstallOptionalHaikuImagePackage
152			apr-util-1.4.1-x86-gcc2-2012-06-19.zip
153			: $(baseURL)/apr-util-1.4.1-x86-gcc2-2012-06-19.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-r1a3-x86-gcc2-2011-06-04.zip
168			: $(baseURL)/armyknife-63-r1a3-x86-gcc2-2011-06-04.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.5.1-x86-gcc4-2012-06-22.zip
181			: $(baseURL)/bzr-2.5.1-x86-gcc4-2012-06-22.zip ;
182	} else {
183		InstallOptionalHaikuImagePackage bzr-2.5.1-x86-gcc2-2012-06-22.zip
184			: $(baseURL)/bzr-2.5.1-x86-gcc2-2012-06-22.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-r1a3-x86-gcc4-2011-05-24.zip
197				: $(baseURL)/beae-22-r1a3-x86-gcc4-2011-05-24.zip ;
198		} else {
199			InstallOptionalHaikuImagePackage
200				beae-22-r1a3-x86-gcc2-2011-05-18.zip
201				: $(baseURL)/beae-22-r1a3-x86-gcc2-2011-05-18.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-x86-gcc2-2012-06-04.zip
221				: $(baseURL)/Beam-1.2alpha-x86-gcc2-2012-06-04.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-r1a3-x86-gcc2-2011-05-30.zip
284				: $(baseURL)/bepdf-1.1.1b4-r1a3-x86-gcc2-2011-05-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-r1a3-x86-gcc4-2011-05-24.zip
342				: $(baseURL)/burnitnow-39-r1a3-x86-gcc4-2011-05-24.zip ;
343		} else {
344		InstallOptionalHaikuImagePackage
345			burnitnow-39-r1a3-x86-gcc2-2011-05-18.zip
346			: $(baseURL)/burnitnow-39-r1a3-x86-gcc2-2011-05-18.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-r1a3-x86-gcc4-2011-05-24.zip
361			: $(baseURL)/bzip2-1.0.6-r1a3-x86-gcc4-2011-05-24.zip
362			: : true ;
363	} else {
364		InstallOptionalHaikuImagePackage
365			bzip2-1.0.6-r1a3-x86-gcc2-2011-05-17.zip
366			: $(baseURL)/bzip2-1.0.6-r1a3-x86-gcc2-2011-05-17.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-r1a3-x86-gcc4-2011-05-23.zip
409			: $(baseURL)/ccache-3.0.1-r1a3-x86-gcc4-2011-05-23.zip ;
410	} else {
411		InstallOptionalHaikuImagePackage
412			ccache-3.0.1-r1a3-x86-gcc2-2011-05-17.zip
413			: $(baseURL)/ccache-3.0.1-r1a3-x86-gcc2-2011-05-17.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-x86-gcc4-2012-06-19.zip
425			: $(baseURL)/cdrtools-3.01a07-x86-gcc4-2012-07-19.zip ;
426	} else {
427		InstallOptionalHaikuImagePackage
428			cdrtools-3.01a07-x86-gcc2-2012-07-19-r2.zip
429			: $(baseURL)/cdrtools-3.01a07-x86-gcc2-2012-07-19-r2.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-x86-gcc4-2012-07-18.zip
491				: $(baseURL)/cmake-2.8.5-x86-gcc4-2012-07-18.zip
492				: : true ;
493		} else {
494			InstallOptionalHaikuImagePackage
495				cmake-2.8.5-x86-gcc2-2012-07-16.zip
496				: $(baseURL)/cmake-2.8.5-x86-gcc2-2012-07-16.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-x86-gcc4-2012-06-20.zip
549			: $(baseURL)/curl-7.26.0-x86-gcc4-2012-06-20.zip ;
550	} else {
551		InstallOptionalHaikuImagePackage curl-7.26.0-x86-gcc2-2012-06-21.zip
552			: $(baseURL)/curl-7.26.0-x86-gcc2-2012-06-21.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-x86-gcc4-2012-06-22.zip
565				: $(baseURL)/cvs-1.12.13.1-x86-gcc4-2012-06-22.zip
566				: : true ;
567		} else {
568			InstallOptionalHaikuImagePackage
569				cvs-1.12.13.1-x86-gcc2-2012-06-20.zip
570				: $(baseURL)/cvs-1.12.13.1-x86-gcc2-2012-06-20.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-r1a3-x86-gcc4-2011-05-23.zip
618			: $(baseURL)/autoconf-2.68-r1a3-x86-gcc4-2011-05-23.zip
619			: : true ;
620		InstallOptionalHaikuImagePackage
621			automake-1.11.1-r1a3-x86-gcc4-2011-05-23.zip
622			: $(baseURL)/automake-1.11.1-r1a3-x86-gcc4-2011-05-23.zip
623			: : true ;
624		InstallOptionalHaikuImagePackage
625			libtool-2.4-r1a3-x86-gcc4-2011-05-23.zip
626			: $(baseURL)/libtool-2.4-r1a3-x86-gcc4-2011-05-23.zip
627			: : true ;
628		InstallOptionalHaikuImagePackage
629			texinfo-4.13a-x86-gcc4-2012-03-31.zip
630			: $(baseURL)/texinfo-4.13a-x86-gcc4-2012-03-31.zip
631			: : true ;
632	} else {
633		InstallOptionalHaikuImagePackage
634			autoconf-2.68-r1a3-x86-gcc2-2011-05-17.zip
635			: $(baseURL)/autoconf-2.68-r1a3-x86-gcc2-2011-05-17.zip
636			: : true ;
637		InstallOptionalHaikuImagePackage
638			automake-1.11.1-r1a3-x86-gcc2-2011-05-17.zip
639			: $(baseURL)/automake-1.11.1-r1a3-x86-gcc2-2011-05-17.zip
640			: : true ;
641		InstallOptionalHaikuImagePackage
642			libtool-2.4-r1a3-x86-gcc2-2011-05-17.zip
643			: $(baseURL)/libtool-2.4-r1a3-x86-gcc2-2011-05-17.zip
644			: : true ;
645		InstallOptionalHaikuImagePackage
646			texinfo-4.13a-x86-gcc2-2012-03-31.zip
647			: $(baseURL)/texinfo-4.13a-x86-gcc2-2012-03-31.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-r1a3-x86-gcc4-2011-05-23.zip
694			: $(baseURL)/bison-2.4.3-r1a3-x86-gcc4-2011-05-23.zip ;
695		InstallOptionalHaikuImagePackage
696			m4-1.4.16-r1a3-x86-gcc4-2011-05-23.zip
697			: $(baseURL)/m4-1.4.16-r1a3-x86-gcc4-2011-05-23.zip ;
698		InstallOptionalHaikuImagePackage
699			flex-2.5.35-r1a3-x86-gcc4-2011-05-23.zip
700			: $(baseURL)/flex-2.5.35-r1a3-x86-gcc4-2011-05-23.zip ;
701		InstallOptionalHaikuImagePackage
702			jam-2.5-x86-gcc4-2011-12-26.zip
703			: $(baseURL)/jam-2.5-x86-gcc4-2011-12-26.zip ;
704		InstallOptionalHaikuImagePackage
705			mkdepend-1.7-r1a3-x86-gcc4-2011-05-23.zip
706			: $(baseURL)/mkdepend-1.7-r1a3-x86-gcc4-2011-05-23.zip ;
707		InstallOptionalHaikuImagePackage
708			make-3.82-r1a3-x86-gcc4-2011-05-23.zip
709			: $(baseURL)/make-3.82-r1a3-x86-gcc4-2011-05-23.zip ;
710	} else {
711		InstallOptionalHaikuImagePackage
712			bison-2.4.3-r1a3-x86-gcc2-2011-05-17.zip
713			: $(baseURL)/bison-2.4.3-r1a3-x86-gcc2-2011-05-17.zip ;
714		InstallOptionalHaikuImagePackage
715			m4-1.4.16-r1a3-x86-gcc2-2011-05-17.zip
716			: $(baseURL)/m4-1.4.16-r1a3-x86-gcc2-2011-05-17.zip ;
717		InstallOptionalHaikuImagePackage
718			flex-2.5.35-r1a3-x86-gcc2-2011-05-17.zip
719			: $(baseURL)/flex-2.5.35-r1a3-x86-gcc2-2011-05-17.zip ;
720		InstallOptionalHaikuImagePackage
721			jam-2.5-x86-gcc2-2011-12-26.zip
722			: $(baseURL)/jam-2.5-x86-gcc2-2011-12-26.zip ;
723		InstallOptionalHaikuImagePackage
724			mkdepend-1.7-r1a3-x86-gcc2-2011-05-17.zip
725			: $(baseURL)/mkdepend-1.7-r1a3-x86-gcc2-2011-05-17.zip ;
726		InstallOptionalHaikuImagePackage
727			make-3.82-r1a3-x86-gcc2-2011-05-17.zip
728			: $(baseURL)/make-3.82-r1a3-x86-gcc2-2011-05-17.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 jpeg : 3rdparty ;
845	AddHeaderDirectoryToHaikuImage libs ncurses : 3rdparty ;
846	AddHeaderDirectoryToHaikuImage libs png : 3rdparty ;
847	AddHeaderDirectoryToHaikuImage libs termcap : 3rdparty ;
848	AddHeaderDirectoryToHaikuImage libs tiff : 3rdparty ;
849	AddHeaderDirectoryToHaikuImage libs zlib : 3rdparty ;
850
851	# cpp headers
852	if $(HAIKU_GCC_VERSION[1]) = 2 {
853		# GCC 2 only -- for GCC 4 they come with the DevelopmentBase package
854		CopyDirectoryToHaikuImage $(abiDirTokens) headers
855			: [ FDirName $(HAIKU_TOP) headers cpp ] : : -x .svn ;
856		CopyDirectoryToAlternativeGCCArchive $(abiDirTokens) headers
857			: [ FDirName $(HAIKU_TOP) headers cpp ] : : -x .svn ;
858	}
859}
860
861
862# DevelopmentPowerPC
863if [ IsOptionalHaikuImagePackageAdded DevelopmentPowerPC ] {
864	if $(TARGET_ARCH) != x86 {
865		Echo "No optional package DevelopmentPowerPC available for $(TARGET_ARCH)" ;
866	} else if $(HAIKU_GCC_VERSION[1]) < 4 && ! $(isHybridBuild) {
867		Echo "No optional package DevelopmentPowerPC available for gcc2" ;
868	} else {
869		InstallOptionalHaikuImagePackage
870			gcc-ppc-4.6.2-x86-gcc4-2012-03-17.zip
871			: $(baseURL)/gcc-ppc-4.6.2-x86-gcc4-2012-03-17.zip ;
872		InstallOptionalHaikuImagePackage
873			haiku-devlibs-ppc-gcc4-2012-03-18.zip
874			: $(baseURL)/haiku-devlibs-ppc-gcc4-2012-03-18.zip ;
875	}
876
877}
878
879
880# DMIDecode
881if [ IsOptionalHaikuImagePackageAdded DMIDecode ] {
882	if $(TARGET_ARCH) != x86 {
883		Echo "No optional package DMIDecode available for $(TARGET_ARCH)" ;
884	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
885		InstallOptionalHaikuImagePackage
886			dmidecode-2.11-x86-gcc4-2011-11-02.zip
887			: http://revolf.free.fr/beos/dmidecode-2.11-x86-gcc4-2011-11-02.zip ;
888	} else {
889		InstallOptionalHaikuImagePackage
890			dmidecode-2.11-x86-gcc2-2011-11-02.zip
891			: http://revolf.free.fr/beos/dmidecode-2.11-x86-gcc2-2011-11-02.zip ;
892	}
893}
894
895
896# Doxygen
897if [ IsOptionalHaikuImagePackageAdded Doxygen ] {
898	if $(TARGET_ARCH) != x86 {
899		Echo "No optional package Doxygen available for $(TARGET_ARCH)" ;
900	} else {
901		if $(HAIKU_GCC_VERSION[1]) >= 4 {
902			InstallOptionalHaikuImagePackage
903				doxygen-1.6.3-x86-gcc4-2010-05-17.zip
904				: $(baseURL)/doxygen-1.6.3-x86-gcc4-2010-05-17.zip
905				: : true ;
906		} else {
907			InstallOptionalHaikuImagePackage
908				doxygen-1.6.3-x86-gcc2-2010-05-17.zip
909				: $(baseURL)/doxygen-1.6.3-x86-gcc2-2010-05-17.zip
910				: : true ;
911		}
912	}
913}
914
915
916# Expat
917if [ IsOptionalHaikuImagePackageAdded Expat ] {
918	if $(TARGET_ARCH) != x86 {
919		Echo "No optional package Expat available for $(TARGET_ARCH)" ;
920	} else {
921		if $(HAIKU_GCC_VERSION[1]) >= 4 {
922			InstallOptionalHaikuImagePackage
923				expat-2.0.1-r1a3-x86-gcc4-2011-05-24.zip
924				: $(baseURL)/expat-2.0.1-r1a3-x86-gcc4-2011-05-24.zip
925				: : true ;
926		} else {
927			InstallOptionalHaikuImagePackage
928				expat-2.0.1-x86-gcc2-2012-06-20.zip
929				: $(baseURL)/expat-2.0.1-x86-gcc2-2012-06-20.zip
930				: : true ;
931		}
932	}
933}
934
935
936# Fastdep
937if [ IsOptionalHaikuImagePackageAdded Fastdep ] {
938	if $(TARGET_ARCH) != x86 {
939		Echo "No optional package Fastdep available for $(TARGET_ARCH)" ;
940	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
941		InstallOptionalHaikuImagePackage
942			fastdep-0.16-r1a3-x86-gcc4-2011-05-24.zip
943			: $(baseURL)/fastdep-0.16-r1a3-x86-gcc4-2011-05-24.zip ;
944	} else {
945		InstallOptionalHaikuImagePackage
946			fastdep-0.16-r1a3-x86-gcc2-2011-05-18.zip
947			: $(baseURL)/fastdep-0.16-r1a3-x86-gcc2-2011-05-18.zip ;
948	}
949}
950
951
952# friss
953if [ IsOptionalHaikuImagePackageAdded friss ] {
954	if $(TARGET_ARCH) != x86 {
955		Echo "No optional package friss available for $(TARGET_ARCH)" ;
956	} else {
957		if $(HAIKU_GCC_VERSION[1]) >= 4 {
958			InstallOptionalHaikuImagePackage
959				friss-24-r1a3-x86-gcc4-2011-05-31.zip
960				: $(baseURL)/friss-24-r1a3-x86-gcc4-2011-05-31.zip ;
961		} else {
962			InstallOptionalHaikuImagePackage
963				friss-24-r1a3-x86-gcc2-2011-05-31.zip
964				: $(baseURL)/friss-24-r1a3-x86-gcc2-2011-05-31.zip ;
965		}
966#		AddSymlinkToHaikuImage home config settings deskbar Desktop\ applets
967#			: /boot/apps/FRiSS/FRiSS ;
968	}
969}
970
971
972# GetText
973if [ IsOptionalHaikuImagePackageAdded GetText ] {
974	if $(TARGET_ARCH) != x86 {
975		Echo "No optional package GetText available for $(TARGET_ARCH)" ;
976	} else {
977		if $(HAIKU_GCC_VERSION[1]) >= 4 {
978			InstallOptionalHaikuImagePackage
979				gettext-0.18.1.1-r1a3-x86-gcc4-2011-05-24.zip
980				: $(baseURL)/gettext-0.18.1.1-r1a3-x86-gcc4-2011-05-24.zip
981				: : true ;
982		} else {
983			InstallOptionalHaikuImagePackage
984				gettext-0.18.1.1-x86-gcc2-2011-02-07.zip
985				: $(baseURL)/gettext-0.18.1.1-x86-gcc2-2011-02-07.zip
986				: : true ;
987		}
988	}
989}
990
991
992# Git
993if [ IsOptionalHaikuImagePackageAdded Git ] {
994	if $(TARGET_ARCH) != x86 {
995		Echo "No optional package Git available for $(TARGET_ARCH)" ;
996	} else {
997		if $(HAIKU_GCC_VERSION[1]) >= 4 {
998			InstallOptionalHaikuImagePackage
999				git-1.7.10.2-x86-gcc4-2012-06-19.zip
1000				: $(baseURL)/git-1.7.10.2-x86-gcc4-2012-06-19.zip
1001				: : true ;
1002		} else {
1003			InstallOptionalHaikuImagePackage
1004				git-1.7.10.2-x86-gcc2-2012-06-20.zip
1005				: $(baseURL)/git-1.7.10.2-x86-gcc2-2012-06-20.zip
1006				: : true ;
1007		}
1008	}
1009}
1010
1011
1012# GitDoc
1013if [ IsOptionalHaikuImagePackageAdded GitDoc ] {
1014	if $(TARGET_ARCH) != x86 {
1015		Echo "No optional package GitDoc available for $(TARGET_ARCH)" ;
1016	} else {
1017		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1018			InstallOptionalHaikuImagePackage
1019				gitdoc-1.7.10.2-x86-gcc4-2012-06-20.zip
1020				: $(baseURL)/gitdoc-1.7.10.2-x86-gcc4-2012-06-20.zip
1021				: : true ;
1022		} else {
1023			InstallOptionalHaikuImagePackage
1024				gitdoc-1.7.10.2-x86-gcc2-2012-06-20.zip
1025				: $(baseURL)/gitdoc-1.7.10.2-x86-gcc2-2012-06-20.zip
1026				: : true ;
1027		}
1028	}
1029}
1030
1031
1032# GPerf
1033if [ IsOptionalHaikuImagePackageAdded GPerf ] {
1034	if $(TARGET_ARCH) != x86 {
1035		Echo "No optional package GPerf available for $(TARGET_ARCH)" ;
1036	} else {
1037		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1038			InstallOptionalHaikuImagePackage
1039				gperf-3.0.4-r1a3-x86-gcc4-2011-05-24.zip
1040				: $(baseURL)/gperf-3.0.4-r1a3-x86-gcc4-2011-05-24.zip
1041				: : true ;
1042		} else {
1043			InstallOptionalHaikuImagePackage
1044				gperf-3.0.4-r1a3-x86-gcc2-2011-05-18.zip
1045				: $(baseURL)/gperf-3.0.4-r1a3-x86-gcc2-2011-05-18.zip
1046				: : true ;
1047		}
1048	}
1049}
1050
1051
1052# Groff
1053if [ IsOptionalHaikuImagePackageAdded Groff ] {
1054	if $(TARGET_ARCH) != x86 {
1055		Echo "No optional package Groff available for $(TARGET_ARCH)" ;
1056	} else {
1057		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1058			InstallOptionalHaikuImagePackage
1059				groff-1.20.1-r1a3-x86-gcc4-2011-05-24.zip
1060				: $(baseURL)/groff-1.20.1-r1a3-x86-gcc4-2011-05-24.zip
1061				: : true ;
1062		} else {
1063			InstallOptionalHaikuImagePackage
1064				 groff-1.20.1-r1a3-x86-gcc2-2011-05-18.zip
1065				: $(baseURL)/groff-1.20.1-r1a3-x86-gcc2-2011-05-18.zip
1066				: : true ;
1067		}
1068	}
1069}
1070
1071
1072# HGgrep
1073if [ IsOptionalHaikuImagePackageAdded HGrep ] {
1074	if $(TARGET_ARCH) != x86 {
1075		Echo "No optional package HGrep available for $(TARGET_ARCH)" ;
1076	} else {
1077		InstallOptionalHaikuImagePackage
1078			hgrep-1.0.1-x86-gcc2-2012-07-23.zip
1079			: $(baseURL)/hgrep-1.0.1-x86-gcc2-2012-07-23.zip ;
1080	}
1081}
1082
1083
1084# ICU
1085if [ IsOptionalHaikuImagePackageAdded ICU ] {
1086	if $(TARGET_ARCH) != x86 {
1087		Echo "No optional package ICU available for $(TARGET_ARCH)" ;
1088	} else {
1089		if $(HAIKU_GCC_VERSION[1]) = 2 {
1090			# unzip gcc2
1091			InstallOptionalHaikuImagePackage $(HAIKU_ICU_GCC_2_PACKAGE)
1092				: $(baseURL)/$(HAIKU_ICU_GCC_2_PACKAGE)
1093				: system lib ;
1094			if $(isHybridBuild) {
1095				# unzip gcc4 to gcc4 subdir
1096				InstallOptionalHaikuImagePackage $(HAIKU_ICU_GCC_4_PACKAGE)
1097					: $(baseURL)/$(HAIKU_ICU_GCC_4_PACKAGE)
1098					: system lib gcc4 ;
1099			}
1100		} else {
1101			# unzip gcc4
1102			InstallOptionalHaikuImagePackage $(HAIKU_ICU_GCC_4_PACKAGE)
1103				: $(baseURL)/$(HAIKU_ICU_GCC_4_PACKAGE)
1104				: system lib ;
1105			if $(isHybridBuild) {
1106				# unzip gcc2 to gcc2 subdir
1107				InstallOptionalHaikuImagePackage $(HAIKU_ICU_GCC_2_PACKAGE)
1108					: $(baseURL)/$(HAIKU_ICU_GCC_2_PACKAGE)
1109					: system lib gcc2 ;
1110			}
1111		}
1112	}
1113}
1114
1115
1116# ICU-devel
1117if [ IsOptionalHaikuImagePackageAdded ICU-devel ] {
1118	InstallOptionalHaikuImagePackage $(HAIKU_ICU_DEVEL_PACKAGE)
1119		: $(baseURL)/$(HAIKU_ICU_DEVEL_PACKAGE) ;
1120
1121	local arch = $(TARGET_ARCH) ;
1122	local abi = gcc$(HAIKU_GCC_VERSION[1]) ;
1123	local lib ;
1124	for abiVersionedLib in $(HAIKU_ICU_LIBS) {
1125		abiVersionedLib = $(abiVersionedLib:B:G=) ;
1126		lib = $(abiVersionedLib:B) ;
1127		while $(lib:S) != ".so" {
1128			abiVersionedLib = $(abiVersionedLib:B) ;
1129			lib = $(abiVersionedLib:B) ;
1130		}
1131		AddSymlinkToHaikuHybridImage develop abi $(arch) $(abi) lib
1132			: /system/lib $(abiVersionedLib) : : true ;
1133		AddSymlinkToHaikuHybridImage develop abi $(arch) $(abi) lib
1134			: $(abiVersionedLib) : $(lib) ;
1135	}
1136}
1137
1138
1139# KeymapSwitcher
1140if [ IsOptionalHaikuImagePackageAdded KeymapSwitcher ] {
1141	if $(TARGET_ARCH) != x86 {
1142		Echo "No optional package KeymapSwitcher available for $(TARGET_ARCH)" ;
1143	} else {
1144		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1145			InstallOptionalHaikuImagePackage
1146				KeymapSwitcher-1.2.7-x86-gcc4-2012-05-19.zip
1147				: $(baseURL)/KeymapSwitcher-1.2.7-x86-gcc4-2012-05-19.zip ;
1148		} else {
1149			InstallOptionalHaikuImagePackage
1150				KeymapSwitcher-1.2.7-x86-gcc2-2012-05-19.zip
1151				: $(baseURL)/KeymapSwitcher-1.2.7-x86-gcc2-2012-05-19.zip ;
1152		}
1153		AddSymlinkToHaikuImage home config settings deskbar Preferences
1154			: /boot/common/bin/KeymapSwitcher ;
1155	}
1156}
1157
1158
1159# LGrep
1160if [ IsOptionalHaikuImagePackageAdded LGrep ] {
1161	if $(TARGET_ARCH) != x86 {
1162		Echo "No optional package LGrep available for $(TARGET_ARCH)" ;
1163	} else {
1164		InstallOptionalHaikuImagePackage
1165			lgrep-1.0-x86-gcc2-2012-07-23.zip
1166			: $(baseURL)/lgrep-1.0-x86-gcc2-2012-07-23.zip ;
1167	}
1168}
1169
1170
1171# LibEvent
1172if [ IsOptionalHaikuImagePackageAdded LibEvent ] {
1173	if $(TARGET_ARCH) != x86 {
1174		Echo "No optional package LibEvent available for $(TARGET_ARCH)" ;
1175	} else {
1176		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1177			InstallOptionalHaikuImagePackage
1178				libevent-2.0.10-r1a3-x86-gcc4-2011-05-24.zip
1179				: $(baseURL)/lib/libevent-2.0.10-r1a3-x86-gcc4-2011-05-24.zip
1180				: : true ;
1181		} else {
1182			InstallOptionalHaikuImagePackage
1183				libevent-2.0.10-r1a3-x86-gcc2-2011-05-18.zip
1184				: $(baseURL)/lib/libevent-2.0.10-r1a3-x86-gcc2-2011-05-18.zip
1185				: : true ;
1186		}
1187	}
1188}
1189
1190
1191# LibIconv
1192if [ IsOptionalHaikuImagePackageAdded LibIconv ] {
1193	if $(TARGET_ARCH) != x86 {
1194		Echo "No optional package LibIconv available for $(TARGET_ARCH)" ;
1195	} else {
1196		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1197			InstallOptionalHaikuImagePackage
1198				libiconv-1.13.1-r1a3-x86-gcc4-2011-05-24.zip
1199				: $(baseURL)/libiconv-1.13.1-r1a3-x86-gcc4-2011-05-24.zip ;
1200		} else {
1201			InstallOptionalHaikuImagePackage
1202				libiconv-1.13.1-r1a3-x86-gcc2-2011-05-18.zip
1203				: $(baseURL)/libiconv-1.13.1-r1a3-x86-gcc2-2011-05-18.zip ;
1204		}
1205	}
1206}
1207
1208
1209# LibLayout library
1210if [ IsOptionalHaikuImagePackageAdded LibLayout ] {
1211	if $(TARGET_ARCH) != x86 {
1212		Echo "No optional package LibLayout available for $(TARGET_ARCH)" ;
1213	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
1214		InstallOptionalHaikuImagePackage liblayout-1.4.1-gcc4-2012-08-11.zip
1215			: $(baseURL)/liblayout-1.4.1-gcc4-2012-08-11.zip ;
1216	} else {
1217		InstallOptionalHaikuImagePackage liblayout-1.4.0-gcc2-2009-03-08.zip
1218			: $(baseURL)/liblayout-1.4.0-gcc2-2009-03-08.zip ;
1219	}
1220}
1221
1222
1223# Libmng library
1224if [ IsOptionalHaikuImagePackageAdded Libmng ] {
1225	if $(TARGET_ARCH) != x86 {
1226		Echo "No optional package Libmng available for $(TARGET_ARCH)" ;
1227	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
1228		InstallOptionalHaikuImagePackage
1229			libmng-1.0.10-r1a3-x86-gcc4-2011-05-24.zip
1230			: $(baseURL)/lib/libmng-1.0.10-r1a3-x86-gcc4-2011-05-24.zip ;
1231	} else {
1232		InstallOptionalHaikuImagePackage
1233			libmng-1.0.10-r1a3-x86-gcc2-2011-05-18.zip
1234			: $(baseURL)/lib/libmng-1.0.10-r1a3-x86-gcc2-2011-05-18.zip ;
1235	}
1236}
1237
1238
1239# LibXML2
1240if [ IsOptionalHaikuImagePackageAdded LibXML2 ] {
1241	if $(TARGET_ARCH) != x86 {
1242		Echo "No optional package LibXML2 available for $(TARGET_ARCH)" ;
1243	} else {
1244		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1245			InstallOptionalHaikuImagePackage
1246				libxml2-2.8.0-x86-gcc4-2012-07-18.zip
1247				: $(baseURL)/libxml2-2.8.0-x86-gcc4-2012-07-18.zip ;
1248		} else {
1249			InstallOptionalHaikuImagePackage
1250				libxml2-2.8.0-x86-gcc2-2012-07-17.zip
1251				: $(baseURL)/libxml2-2.8.0-x86-gcc2-2012-07-17.zip ;
1252		}
1253	}
1254}
1255
1256
1257# LibXSLT
1258if [ IsOptionalHaikuImagePackageAdded LibXSLT ] {
1259	if $(TARGET_ARCH) != x86 {
1260		Echo "No optional package LibXSLT available for $(TARGET_ARCH)" ;
1261	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
1262		InstallOptionalHaikuImagePackage
1263			libxslt-1.1.26-r1a3-x86-gcc4-2011-05-24.zip
1264			: $(baseURL)/libxslt-1.1.26-r1a3-x86-gcc4-2011-05-24.zip ;
1265	} else {
1266		InstallOptionalHaikuImagePackage
1267			libxslt-1.1.26-r1a3-x86-gcc2-2011-05-18.zip
1268			: $(baseURL)/libxslt-1.1.26-r1a3-x86-gcc2-2011-05-18.zip
1269			: : true ;
1270	}
1271}
1272
1273
1274# Links web browser
1275if [ IsOptionalHaikuImagePackageAdded Links ] {
1276	if $(TARGET_ARCH) != x86 {
1277		Echo "No optional package Links available for $(TARGET_ARCH)" ;
1278	} else if $(HAIKU_GCC_VERSION[1]) >= 4 && ! $(isHybridBuild) {
1279		Echo "No optional package Links available for gcc4" ;
1280	} else {
1281		InstallOptionalHaikuImagePackage Links.zip
1282			: $(baseURL)/links-x86-gcc2-2008-05-03.zip ;
1283		AddSymlinkToHaikuImage home config settings deskbar Applications
1284			: /boot/home/config/bin/links ;
1285	}
1286}
1287
1288
1289# Lua
1290if [ IsOptionalHaikuImagePackageAdded Lua ] {
1291	if $(TARGET_ARCH) != x86 {
1292		Echo "No optional package Lua available for $(TARGET_ARCH)" ;
1293	} else {
1294		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1295			InstallOptionalHaikuImagePackage
1296				lua-5.1.4-x86-gcc4-2010-10-30.zip
1297				: $(baseURL)/lua-5.1.4-x86-gcc4-2010-10-30.zip
1298				: : true ;
1299		} else {
1300			InstallOptionalHaikuImagePackage
1301				lua-5.1.4-3-r1a3-x86-gcc2-2011-05-18.zip
1302				: $(baseURL)/lua-5.1.4-3-r1a3-x86-gcc2-2011-05-18.zip
1303				: : true ;
1304		}
1305	}
1306}
1307
1308
1309# Man
1310if [ IsOptionalHaikuImagePackageAdded Man ] {
1311	if $(TARGET_ARCH) != x86 {
1312		Echo "No optional package Man available for $(TARGET_ARCH)" ;
1313	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
1314		InstallOptionalHaikuImagePackage
1315			 man-1.6g-x86-gcc4-2012-06-19.zip
1316			: $(baseURL)/man-1.6g-x86-gcc4-2012-06-19.zip ;
1317	} else {
1318		InstallOptionalHaikuImagePackage
1319			 man-1.6g-x86-gcc2-2012-06-21.zip
1320			: $(baseURL)/man-1.6g-x86-gcc2-2012-06-21.zip ;
1321	}
1322}
1323
1324
1325# MandatoryPackages
1326if [ IsOptionalHaikuImagePackageAdded MandatoryPackages ] {
1327	# Pseudo package for grouping packages, which are added to all images.
1328}
1329
1330
1331# Mercurial
1332if [ IsOptionalHaikuImagePackageAdded Mercurial ] {
1333	if $(TARGET_ARCH) != x86 {
1334		Echo "No optional package Mercurial available for $(TARGET_ARCH)" ;
1335	} else {
1336		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1337			InstallOptionalHaikuImagePackage
1338				mercurial-2.2.2-x86-gcc4-2012-06-19.zip
1339				: $(baseURL)/mercurial-2.2.2-x86-gcc4-2012-06-19.zip
1340				: : true ;
1341		} else {
1342			InstallOptionalHaikuImagePackage
1343				mercurial-2.2.2-x86-gcc2-2012-06-20.zip
1344				: $(baseURL)/mercurial-2.2.2-x86-gcc2-2012-06-20.zip
1345				: : true ;
1346		}
1347	}
1348}
1349
1350
1351# Nano
1352if [ IsOptionalHaikuImagePackageAdded Nano ] {
1353	if $(TARGET_ARCH) != x86 {
1354		Echo "No optional package Nano available for $(TARGET_ARCH)" ;
1355	} else {
1356		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1357			InstallOptionalHaikuImagePackage
1358				nano-2.2.6-r1a3-x86-gcc4-2011-05-24.zip
1359				: $(baseURL)/nano-2.2.6-r1a3-x86-gcc4-2011-05-24.zip ;
1360		} else {
1361			InstallOptionalHaikuImagePackage
1362				nano-2.2.6-r1a3-x86-gcc2-2011-05-18.zip
1363				: $(baseURL)/nano-2.2.6-r1a3-x86-gcc2-2011-05-18.zip ;
1364		}
1365	}
1366}
1367
1368
1369# Neon
1370if [ IsOptionalHaikuImagePackageAdded Neon ] {
1371	if $(TARGET_ARCH) != x86 {
1372		Echo "No optional package Neon available for $(TARGET_ARCH)" ;
1373	} else {
1374		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1375			InstallOptionalHaikuImagePackage
1376				neon-0.29.6-x86-gcc4-2012-06-19.zip
1377				: $(baseURL)/neon-0.29.6-x86-gcc4-2012-06-19.zip ;
1378		} else {
1379			InstallOptionalHaikuImagePackage
1380				neon-0.29.6-x86-gcc2-2012-06-21.zip
1381				: $(baseURL)/neon-0.29.6-x86-gcc2-2012-06-21.zip ;
1382		}
1383	}
1384}
1385
1386
1387# NetFS network file system
1388if [ IsOptionalHaikuImagePackageAdded NetFS ] {
1389	# userlandfs module
1390	AddFilesToHaikuImage home config add-ons userlandfs : netfs ;
1391
1392	# servers
1393	AddFilesToHaikuImage system servers : netfs_server ;
1394	AddFilesToHaikuImage system servers : authentication_server ;
1395
1396	# tools
1397	AddFilesToHaikuImage system bin : netfs_config ;
1398	AddFilesToHaikuImage system bin : netfs_server_prefs ;
1399
1400	#example settings for netfs_server
1401	local netfsServerSettingsFiles = <driver-settings>netfs-server ;
1402	SEARCH on $(netfsServerSettingsFiles)
1403		= [ FDirName $(HAIKU_TOP) src add-ons kernel file_systems netfs ] ;
1404	AddFilesToHaikuImage home config settings kernel drivers
1405	: $(netfsServerSettingsFiles) ;
1406
1407	#userlandfs settings are needed for netfs_config to work (ioctls)
1408	local userlandfsServerSettingsFiles = <driver-settings>userlandfs ;
1409	SEARCH on $(userlandfsServerSettingsFiles)
1410		= [ FDirName $(HAIKU_TOP) src add-ons kernel file_systems userlandfs ] ;
1411	AddFilesToHaikuImage home config settings kernel drivers
1412	: $(userlandfsServerSettingsFiles) ;
1413}
1414
1415
1416# NetSurf web browser
1417if [ IsOptionalHaikuImagePackageAdded NetSurf ] {
1418	if $(TARGET_ARCH) != x86 {
1419		Echo "No optional package NetSurf available for $(TARGET_ARCH)" ;
1420	} else if $(HAIKU_GCC_VERSION[1]) >= 4 && ! $(isHybridBuild) {
1421		Echo "No optional package NetSurf available for gcc4" ;
1422	} else {
1423		InstallOptionalHaikuImagePackage
1424			netsurf-2.7-r1a3-x86-gcc2-2011-06-04.zip
1425			: $(baseURL)/netsurf-2.7-r1a3-x86-gcc2-2011-06-04.zip ;
1426		AddSymlinkToHaikuImage home config settings deskbar Applications
1427			: /boot/apps/NetSurf/NetSurf ;
1428	}
1429}
1430
1431
1432# OCaml
1433if [ IsOptionalHaikuImagePackageAdded OCaml ] {
1434	if $(TARGET_ARCH) != x86 {
1435		Echo "No optional package OCaml available for $(TARGET_ARCH)" ;
1436	} else if $(HAIKU_GCC_VERSION[1]) >= 4 && ! $(isHybridBuild) {
1437		Echo "No optional package OCaml available for gcc4" ;
1438	} else {
1439		InstallOptionalHaikuImagePackage
1440			ocaml-3.11.1-r1a1-x86-gcc2-2009-09-06.zip
1441			: $(baseURL)/ocaml-3.11.1-r1a1-x86-gcc2-2009-09-06.zip ;
1442		InstallOptionalHaikuImagePackage
1443			camlp5-5.12-r1a1-x86-gcc2-2009-09-06.zip
1444			: $(baseURL)/camlp5-5.12-r1a1-x86-gcc2-2009-09-06.zip ;
1445	}
1446}
1447
1448
1449# OpenSound drivers
1450if [ IsOptionalHaikuImagePackageAdded OpenSound ] {
1451	if $(TARGET_ARCH) != x86 {
1452		Echo "No optional package OpenSound available for $(TARGET_ARCH)" ;
1453	} else {
1454		InstallOptionalHaikuImagePackage
1455			opensound-4.2-r1a2-x86-gcc2-2010-05-01.zip
1456			: $(baseURL)/opensound-4.2-r1a2-x86-gcc2-2010-05-01.zip ;
1457	}
1458}
1459
1460
1461# OpenSSH
1462if [ IsOptionalHaikuImagePackageAdded OpenSSH ] {
1463	if $(TARGET_ARCH) != x86 {
1464		Echo "No optional package OpenSSH available for $(TARGET_ARCH)" ;
1465	} else {
1466		if ! $(HAIKU_IMAGE_HOST_NAME) && ! $(HAIKU_IGNORE_USER_BUILD_CONFIG) {
1467			Exit "Optional package OpenSSH requires the HAIKU_IMAGE_HOST_NAME"
1468				"variable to be set!" ;
1469		}
1470
1471		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1472			InstallOptionalHaikuImagePackage
1473				openssh-6.0p1-x86-gcc4-2012-06-20.zip
1474				: $(baseURL)/openssh-6.0p1-x86-gcc4-2012-06-20.zip ;
1475		} else {
1476			InstallOptionalHaikuImagePackage
1477				openssh-6.0p1-x86-gcc2-2012-06-21.zip
1478				: $(baseURL)/openssh-6.0p1-x86-gcc2-2012-06-21.zip ;
1479		}
1480
1481		AddUserToHaikuImage sshd : 1001 : 100 : /var/empty : /bin/true
1482			: "sshd user" ;
1483	}
1484}
1485
1486
1487# OpenSSL
1488if [ IsOptionalHaikuImagePackageAdded OpenSSL ] {
1489	if $(TARGET_ARCH) != x86 {
1490		Echo "No optional package OpenSSL available for $(TARGET_ARCH)" ;
1491	} else {
1492		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1493			InstallOptionalHaikuImagePackage $(HAIKU_OPENSSL_PACKAGE)
1494				: $(HAIKU_OPENSSL_URL) ;
1495		} else {
1496			InstallOptionalHaikuImagePackage $(HAIKU_OPENSSL_PACKAGE)
1497				: $(HAIKU_OPENSSL_URL) ;
1498		}
1499	}
1500}
1501
1502
1503# P7zip
1504if [ IsOptionalHaikuImagePackageAdded P7zip ] {
1505	if $(TARGET_ARCH) != x86 {
1506		Echo "No optional package P7zip available for $(TARGET_ARCH)" ;
1507	} else {
1508		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1509			InstallOptionalHaikuImagePackage
1510				p7zip-9.20.1-x86-gcc4-2012-06-19.zip
1511				: $(baseURL)/p7zip-9.20.1-x86-gcc4-2012-06-19.zip ;
1512		} else {
1513			InstallOptionalHaikuImagePackage
1514				p7zip-9.20.1-x86-gcc2-2012-06-21.zip
1515				: $(baseURL)/p7zip-9.20.1-x86-gcc2-2012-06-21.zip ;
1516		}
1517		AddExpanderRuleToHaikuImage "application/x-7z-compressed" : .7z
1518			: "7za l \\0045s"
1519			: "7za x -y \\0045s"
1520		;
1521
1522	}
1523}
1524
1525
1526# Paladin
1527if [ IsOptionalHaikuImagePackageAdded Paladin ] {
1528	if $(TARGET_ARCH) != x86 {
1529		Echo "No optional package Paladin available for $(TARGET_ARCH)" ;
1530	} else {
1531		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1532			InstallOptionalHaikuImagePackage
1533				paladin-1.3-r1a3-x86-gcc4-2011-05-24.zip
1534				: $(baseURL)/paladin-1.3-r1a3-x86-gcc4-2011-05-24.zip ;
1535		} else {
1536			InstallOptionalHaikuImagePackage
1537				paladin-1.3-r1a3-x86-gcc2-2011-05-18.zip
1538				: $(baseURL)/paladin-1.3-r1a3-x86-gcc2-2011-05-18.zip ;
1539		}
1540
1541		AddSymlinkToHaikuImage home config settings deskbar Applications
1542			: /boot/apps/Paladin/Paladin ;
1543		AddSymlinkToHaikuImage common bin
1544			: /boot/apps/Paladin/Paladin ;
1545	}
1546}
1547
1548
1549# PCRE regex engine
1550if [ IsOptionalHaikuImagePackageAdded PCRE ] {
1551	if $(TARGET_ARCH) != x86 {
1552		Echo "No optional package PCRE available for $(TARGET_ARCH)" ;
1553	} else {
1554		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1555			InstallOptionalHaikuImagePackage
1556				libpcre-8.12-r1a3-x86-gcc4-2011-05-24.zip
1557				: $(baseURL)/libpcre-8.12-r1a3-x86-gcc4-2011-05-24.zip ;
1558		} else {
1559			InstallOptionalHaikuImagePackage
1560				libpcre-8.12-r1a3-x86-gcc2-2011-05-17.zip
1561				: $(baseURL)/libpcre-8.12-r1a3-x86-gcc2-2011-05-17.zip ;
1562		}
1563	}
1564}
1565
1566
1567# Pe text editor
1568if [ IsOptionalHaikuImagePackageAdded Pe ] {
1569	if $(TARGET_ARCH) != x86 {
1570		Echo "No optional package Pe available for $(TARGET_ARCH)" ;
1571	} else {
1572		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1573			InstallOptionalHaikuImagePackage
1574				pe-2.4.3-600-x86-gcc4-2011-12-18.zip
1575				: $(baseURL)/pe-2.4.3-600-x86-gcc4-2011-12-18.zip ;
1576		} else {
1577			InstallOptionalHaikuImagePackage
1578				pe-2.4.3-600-r1a3-x86-gcc2-2011-05-18.zip
1579				: $(baseURL)/pe-2.4.3-600-r1a3-x86-gcc2-2011-05-18.zip ;
1580		}
1581		AddSymlinkToHaikuImage home config settings deskbar Applications
1582			: /boot/apps/Pe/Pe ;
1583		AddSymlinkToHaikuImage common bin
1584			: /boot/apps/Pe/lpe ;
1585	}
1586}
1587
1588
1589# Perl
1590if [ IsOptionalHaikuImagePackageAdded Perl ] {
1591	if $(TARGET_ARCH) != x86 {
1592		Echo "No optional package Perl available for $(TARGET_ARCH)" ;
1593	} else {
1594		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1595			InstallOptionalHaikuImagePackage
1596				perl-5.10.1-r1a3-x86-gcc4-2011-05-24.zip
1597				: $(baseURL)/perl-5.10.1-r1a3-x86-gcc4-2011-05-24.zip
1598				: : true ;
1599		} else {
1600			InstallOptionalHaikuImagePackage
1601				perl-5.10.1-r1a3-x86-gcc2-2011-05-17.zip
1602				: $(baseURL)/perl-5.10.1-r1a3-x86-gcc2-2011-05-17.zip
1603				: : true ;
1604		}
1605	}
1606}
1607
1608
1609# Puri
1610if [ IsOptionalHaikuImagePackageAdded Puri ] {
1611	if $(TARGET_ARCH) != x86 {
1612		Echo "No optional package Puri available for $(TARGET_ARCH)" ;
1613	} else if $(HAIKU_GCC_VERSION[1]) < 4 && ! $(isHybridBuild) {
1614		Echo "No optional package Puri for gcc2" ;
1615	} else {
1616		InstallOptionalHaikuImagePackage
1617			puri-0.3.9.1-x86-gcc4-2012-08-16.zip
1618			: $(baseURL)/puri-0.3.9.1-x86-gcc4-2012-08-16.zip ;
1619		AddSymlinkToHaikuImage home config settings deskbar Applications
1620			: /boot/apps/Puri/Puri ;
1621	}
1622}
1623
1624
1625# Python
1626if [ IsOptionalHaikuImagePackageAdded Python ] {
1627	if $(TARGET_ARCH) != x86 {
1628		Echo "No optional package Python available for $(TARGET_ARCH)" ;
1629	} else {
1630		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1631			InstallOptionalHaikuImagePackage
1632				python-2.6.7-x86-gcc4-2011-06-24.zip
1633				: $(baseURL)/python-2.6.7-x86-gcc4-2011-06-24.zip
1634				: : true ;
1635		} else {
1636			InstallOptionalHaikuImagePackage
1637				python-2.6.7-x86-gcc2-2011-06-24.zip
1638				: $(baseURL)/python-2.6.7-x86-gcc2-2011-06-24.zip
1639				: : true ;
1640		}
1641	}
1642}
1643
1644
1645# Rsync
1646if [ IsOptionalHaikuImagePackageAdded Rsync ] {
1647	if $(TARGET_ARCH) != x86 {
1648		Echo "No optional package Rsync available for $(TARGET_ARCH)" ;
1649	} else {
1650		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1651			InstallOptionalHaikuImagePackage
1652				rsync-3.0.7-r1a3-x86-gcc4-2011-05-24.zip
1653				: $(baseURL)/rsync-3.0.7-r1a3-x86-gcc4-2011-05-24.zip
1654				: : true ;
1655		} else {
1656			InstallOptionalHaikuImagePackage
1657				rsync-3.0.7-r1a3-x86-gcc2-2011-05-18.zip
1658				: $(baseURL)/rsync-3.0.7-r1a3-x86-gcc2-2011-05-18.zip
1659				: : true ;
1660		}
1661	}
1662}
1663
1664
1665# Ruby
1666if [ IsOptionalHaikuImagePackageAdded Ruby ] {
1667	if $(TARGET_ARCH) != x86 {
1668		Echo "No optional package Ruby available for $(TARGET_ARCH)" ;
1669	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
1670		InstallOptionalHaikuImagePackage
1671			ruby-1.9.1-r1a3-x86-gcc4-2011-05-24.zip
1672			: $(baseURL)/ruby-1.9.1-r1a3-x86-gcc4-2011-05-24.zip ;
1673	} else {
1674		InstallOptionalHaikuImagePackage
1675			ruby-1.9.1-r1a3-x86-gcc2-2011-05-31.zip
1676			: $(baseURL)/ruby-1.9.1-r1a3-x86-gcc2-2011-06-01.zip ;
1677	}
1678}
1679
1680
1681# Sed
1682if [ IsOptionalHaikuImagePackageAdded Sed ] {
1683	if $(TARGET_ARCH) != x86 {
1684		Echo "No optional package Sed available for $(TARGET_ARCH)" ;
1685	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
1686		InstallOptionalHaikuImagePackage
1687			sed-4.2.1-r1a3-x86-gcc4-2011-05-24.zip
1688			: $(baseURL)/sed-4.2.1-r1a3-x86-gcc4-2011-05-24.zip ;
1689	} else {
1690		InstallOptionalHaikuImagePackage
1691			sed-4.2.1-r1a3-x86-gcc2-2011-05-17.zip
1692			: $(baseURL)/sed-4.2.1-r1a3-x86-gcc2-2011-05-17.zip ;
1693	}
1694}
1695
1696
1697# SQLite
1698if [ IsOptionalHaikuImagePackageAdded SQLite ] {
1699	if $(TARGET_ARCH) != x86 {
1700		Echo "No optional package SQLite available for $(TARGET_ARCH)" ;
1701	} else {
1702		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1703			InstallOptionalHaikuImagePackage
1704				sqlite-3.7.13-x86-gcc4-2012-06-19.zip
1705				: $(baseURL)/sqlite-3.7.13-x86-gcc4-2012-06-19.zip ;
1706		} else {
1707			InstallOptionalHaikuImagePackage
1708				sqlite-3.7.13-x86-gcc2-2012-06-20.zip
1709				: $(baseURL)/sqlite-3.7.13-x86-gcc2-2012-06-20.zip ;
1710		}
1711	}
1712}
1713
1714
1715# Subversion
1716if [ IsOptionalHaikuImagePackageAdded Subversion ] {
1717	if $(TARGET_ARCH) != x86 {
1718		Echo "No optional package Subversion available for $(TARGET_ARCH)" ;
1719	} else {
1720		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1721			InstallOptionalHaikuImagePackage
1722				subversion-1.6.18-x86-gcc4-2012-06-19.zip
1723				: $(baseURL)/subversion-1.6.18-x86-gcc4-2012-06-19.zip
1724				: : true ;
1725		} else {
1726			InstallOptionalHaikuImagePackage
1727				subversion-1.6.18-x86-gcc2-2012-06-21.zip
1728				: $(baseURL)/subversion-1.6.18-x86-gcc2-2012-06-21.zip
1729				: : true ;
1730		}
1731	}
1732}
1733
1734
1735# TagLib
1736if [ IsOptionalHaikuImagePackageAdded TagLib ] {
1737	if $(TARGET_ARCH) != x86 {
1738		Echo "No optional package TagLib available for $(TARGET_ARCH)" ;
1739	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
1740		InstallOptionalHaikuImagePackage
1741			taglib-1.6.3-r1r3-x86-gcc4-2011-05-24.zip
1742			: $(baseURL)/taglib-1.6.3-r1r3-x86-gcc4-2011-05-24.zip ;
1743	} else {
1744		InstallOptionalHaikuImagePackage
1745			taglib-1.6.3-r1a3-x86-gcc2-2011-05-20.zip
1746			: $(baseURL)/taglib-1.6.3-r1a3-x86-gcc2-2011-05-20.zip ;
1747	}
1748}
1749
1750
1751# Tar
1752if [ IsOptionalHaikuImagePackageAdded Tar ] {
1753	if $(TARGET_ARCH) != x86 {
1754		Echo "No optional package Tar available for $(TARGET_ARCH)" ;
1755	} else {
1756		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1757			InstallOptionalHaikuImagePackage
1758				tar-1.26-x86-gcc4-2012-06-19.zip
1759				: $(baseURL)/tar-1.26-x86-gcc4-2012-06-19.zip ;
1760		} else {
1761			InstallOptionalHaikuImagePackage
1762				tar-1.26-x86-gcc2-2012-06-21.zip
1763				: $(baseURL)/tar-1.26-x86-gcc2-2012-06-21.zip ;
1764		}
1765	}
1766}
1767
1768
1769# TimGMSoundFont
1770if [ IsOptionalHaikuImagePackageAdded TimGMSoundFont ] {
1771	InstallOptionalHaikuImagePackage TimGMSoundFont-2010-06-16.zip
1772		: $(baseURL)/TimGMSoundFont-2010-06-16.zip ;
1773}
1774
1775
1776# TrackerNewTemplates
1777if [ IsOptionalHaikuImagePackageAdded TrackerNewTemplates ] {
1778	InstallOptionalHaikuImagePackage TrackerNewTemplates-2010-04-26.zip
1779		: $(baseURL)/TrackerNewTemplates-2010-04-26.zip
1780		: home config settings Tracker "Tracker New Templates"
1781	;
1782}
1783
1784
1785# Transmission
1786if [ IsOptionalHaikuImagePackageAdded Transmission ] {
1787	if $(TARGET_ARCH) != x86 {
1788		Echo "No optional package Transmission available for $(TARGET_ARCH)" ;
1789	} else {
1790		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1791			InstallOptionalHaikuImagePackage
1792				transmission-2.21-r1a3-x86-gcc4-2011-05-27.zip
1793				: $(baseURL)/transmission-2.21-r1a3-x86-gcc4-2011-05-27.zip
1794				: : true ;
1795		} else {
1796			InstallOptionalHaikuImagePackage
1797				transmission-2.21-r1a3-x86-gcc2-2011-05-27.zip
1798				: $(baseURL)/transmission-2.21-r1a3-x86-gcc2-2011-05-27.zip
1799				: : true ;
1800		}
1801	}
1802}
1803
1804
1805# UserlandFS
1806if [ IsOptionalHaikuImagePackageAdded UserlandFS ] {
1807	local arch = $(TARGET_ARCH) ;
1808	local abi = gcc$(HAIKU_GCC_VERSION[1]) ;
1809
1810	# kernel module
1811	AddFilesToHaikuImage system add-ons kernel file_systems : userlandfs ;
1812
1813	# server
1814	AddFilesToHaikuImage system servers : userlandfs_server ;
1815
1816	# libs
1817	local userlandfsLibs =
1818		libuserlandfs_beos_kernel.so
1819		libuserlandfs_haiku_kernel.so
1820		libuserlandfs_fuse.so
1821	;
1822	AddFilesToHaikuHybridImage system lib : $(userlandfsLibs) : : true ;
1823
1824	# development goodies
1825	if [ IsOptionalHaikuImagePackageAdded DevelopmentMin ] {
1826		if ! ( $(HAIKU_GCC_VERSION[1]) in 2 4 ) {
1827			Exit "Optional package UserlandFS: Unsupported GCC version:"
1828				$(HAIKU_GCC_VERSION[1]) ;
1829		}
1830
1831		# library symlinks
1832		local lib ;
1833		for lib in $(userlandfsLibs) {
1834			AddSymlinkToHaikuImage develop abi $(arch) $(abi) lib
1835				: /system/lib/$(lib:BS) ;
1836			AddSymlinkToAlternativeGCCArchive develop abi $(arch) $(abi) lib
1837				: /system/lib/$(arch)/$(lib:BS) ;
1838		}
1839
1840		# FUSE headers
1841		local fuseHeaders =
1842			fuse_common_compat.h
1843			fuse_common.h
1844			fuse_compat.h
1845			fuse.h
1846			fuse_lowlevel_compat.h
1847			fuse_lowlevel.h
1848			fuse_opt.h
1849		;
1850		fuseHeaders = $(fuseHeaders:G=userlandfs!fuse) ;
1851		SEARCH on $(fuseHeaders)
1852			= [ FDirName $(HAIKU_TOP) headers private userlandfs fuse ] ;
1853		AddFilesToHaikuImage develop headers userlandfs fuse : $(fuseHeaders) ;
1854	}
1855}
1856
1857
1858# Vim
1859if [ IsOptionalHaikuImagePackageAdded Vim ] {
1860	if $(TARGET_ARCH) != x86 {
1861		Echo "No optional package Vim available for $(TARGET_ARCH)" ;
1862	} else {
1863		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1864			InstallOptionalHaikuImagePackage vim-7.3-x86-gcc4-2011-12-23.zip
1865				:  $(baseURL)/vim-7.3-x86-gcc4-2011-12-23.zip
1866				: : true ;
1867		} else {
1868			InstallOptionalHaikuImagePackage vim-7.3-x86-gcc2-2011-12-23.zip
1869				:  $(baseURL)/vim-7.3-x86-gcc2-2011-12-23.zip
1870				: : true ;
1871		}
1872		AddSymlinkToHaikuImage home config settings deskbar Applications
1873			: /boot/common/bin/gvim ;
1874		# TODO: move this symlink to the archive
1875		AddSymlinkToHaikuImage common bin : vim : vi ;
1876	}
1877}
1878
1879
1880# Vision
1881if [ IsOptionalHaikuImagePackageAdded Vision ] {
1882	if $(TARGET_ARCH) != x86 {
1883		Echo "No optional package Vision available for $(TARGET_ARCH)" ;
1884	} else {
1885		if $(HAIKU_GCC_VERSION[1]) >= 4 {
1886			InstallOptionalHaikuImagePackage vision-908-x86-gcc4-2012-02-26.zip
1887				: $(baseURL)/vision-908-x86-gcc4-2012-02-26.zip ;
1888		} else {
1889			InstallOptionalHaikuImagePackage
1890				vision-908-x86-gcc2-2012-02-26.zip
1891				: $(baseURL)/vision-908-x86-gcc2-2012-02-26.zip ;
1892		}
1893		AddSymlinkToHaikuImage home config settings deskbar Applications
1894			: /boot/apps/Vision/Vision ;
1895	}
1896}
1897
1898
1899# WebKit
1900if [ IsOptionalHaikuImagePackageAdded WebKit ] {
1901	if $(TARGET_ARCH) != x86 {
1902		Echo "No optional package WebKit available for $(TARGET_ARCH)" ;
1903	} else if $(HAIKU_GCC_VERSION[1]) < 4 && ! $(isHybridBuild) {
1904		Echo "No optional package WebKit available for gcc2" ;
1905	} else {
1906		InstallOptionalHaikuImagePackage $(HAIKU_WEBKIT_FILE)
1907			: $(baseURL)/$(HAIKU_WEBKIT_FILE)
1908			: common ;
1909	}
1910}
1911
1912
1913# WebPositive
1914if [ IsOptionalHaikuImagePackageAdded WebPositive ] {
1915	if $(TARGET_ARCH) != x86 {
1916		Echo "No optional package WebPositive available for $(TARGET_ARCH)" ;
1917	} else if $(HAIKU_GCC_VERSION[1]) < 4 {
1918		if ! $(isHybridBuild) {
1919			Echo "No optional package WebPositive available for gcc2" ;
1920		} else {
1921			Echo "WebPositive will be compiled by gcc4 inside $(HAIKU_ALTERNATIVE_GCC_OUTPUT_DIR)" ;
1922			local catalogs = [ on WebPositive return $(HAIKU_CATALOG_FILES) ] ;
1923			if $(catalogs) {
1924				local signature = x-vnd.Haiku-WebPositive ;
1925				AddFilesToHaikuImage system data locale catalogs $(signature)
1926					: $(catalogs) ;
1927			}
1928		}
1929	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
1930		AddFilesToHaikuHybridImage apps : WebPositive ;
1931		AddSymlinkToHaikuHybridImage home config settings deskbar Applications
1932			: /boot/apps/WebPositive ;
1933	}
1934}
1935
1936
1937# WebPositiveBookmarks
1938if [ IsOptionalHaikuImagePackageAdded WebPositiveBookmarks ] {
1939	InstallOptionalHaikuImagePackage WebPositiveBookmarks-2012-02-18.zip
1940		: $(baseURL)/WebPositiveBookmarks-2012-02-18.zip
1941		: home config settings WebPositive ;
1942}
1943
1944# Welcome
1945if [ IsOptionalHaikuImagePackageAdded Welcome ] {
1946	CopyDirectoryToHaikuImage system documentation
1947		: [ FDirName $(HAIKU_TOP) docs welcome ]
1948		: welcome : -x .svn ;
1949	CopyDirectoryToHaikuImage system documentation
1950		: [ FDirName $(HAIKU_TOP) docs userguide ]
1951		: userguide : -x .svn ;
1952}
1953
1954
1955# WifiFirmwareScriptData
1956# This optional package is for people who build their own images & have wifi
1957# hardware that requires install-wifi-firmwares.sh & have no active network
1958# connection. This is not to be added to default images.
1959if [ IsOptionalHaikuImagePackageAdded WifiFirmwareScriptData ] {
1960	if $(TARGET_ARCH) != x86 {
1961		Echo "No optional package WifiFirmwareScriptData available for"
1962			$(TARGET_ARCH) ;
1963	} else {
1964		# broadcom43xx
1965		# firmware cutter
1966		local broadcomFWCutterArchive = b43-fwcutter-012.tar.bz2 ;
1967		local broadcomFWCutterURL =
1968			http://www.haiku-files.org/files/wifi-firmwares/b43/fwcutter/$(broadcomFWCutterArchive) ;
1969		local broadcomFWCutterFile = [ DownloadFile $(broadcomFWCutterArchive)
1970			: $(broadcomFWCutterURL) ] ;
1971		AddFilesToHaikuImage system data firmware broadcom43xx b43-fwcutter
1972			: $(broadcomFWCutterFile) ;
1973
1974		# headers needed to compile firmware cutter
1975		local glibcDir = [ FDirName
1976			$(HAIKU_TOP) src system libroot posix glibc ] ;
1977		local byteswapHeader = [ FDirName $(glibcDir) string byteswap.h ] ;
1978		AddFilesToHaikuImage system data firmware broadcom43xx b43-fwcutter
1979			: $(byteswapHeader) ;
1980		local bitByteswapHeader = [ FDirName
1981			$(glibcDir) include arch x86 bits byteswap.h ] ;
1982		AddFilesToHaikuImage system data firmware broadcom43xx b43-fwcutter bits
1983			: $(bitByteswapHeader) ;
1984
1985		# file containing firmware
1986		local broadcom43xxFile ;
1987		broadcom43xxFile = [ DownloadFile wl_apsta-3.130.20.0.o
1988			: http://www.haiku-files.org/files/wifi-firmwares/b43/wl_apsta-3.130.20.0.o ] ;
1989		AddFilesToHaikuImage system data firmware broadcom43xx
1990			: $(broadcom43xxFile) ;
1991
1992		# marvell88w8335
1993		local marvellArchive = malo-firmware-1.4.tgz ;
1994		local marvellURL = http://www.haiku-files.org/files/wifi-firmwares/marvell/$(marvellArchive) ;
1995		local marvellFile = [ DownloadFile $(marvellArchive) : $(marvellURL) ] ;
1996		AddFilesToHaikuImage system data firmware marvell88w8335
1997			: $(marvellFile) ;
1998	}
1999}
2000
2001
2002# WonderBrush
2003if [ IsOptionalHaikuImagePackageAdded WonderBrush ] {
2004	if $(TARGET_ARCH) != x86 {
2005		Echo "No optional package WonderBrush available for $(TARGET_ARCH)" ;
2006	} else if $(HAIKU_GCC_VERSION[1]) >= 4 && ! $(isHybridBuild) {
2007		Echo "No optional package WonderBrush available for gcc4" ;
2008	} else {
2009		InstallOptionalHaikuImagePackage WonderBrush-2.1.2.zip
2010			: $(baseURL)/WonderBrush-2.1.2-x86-gcc2-2008-11-08.zip
2011			: apps ;
2012		AddSymlinkToHaikuImage home config settings deskbar Applications
2013			: /boot/apps/WonderBrush/WonderBrush ;
2014	}
2015}
2016
2017
2018# wpa_supplicant
2019if [ IsOptionalHaikuImagePackageAdded wpa_supplicant ] {
2020	if $(TARGET_ARCH) != x86 {
2021		Echo "No optional package wpa_supplicant available for $(TARGET_ARCH)" ;
2022	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
2023		InstallOptionalHaikuImagePackage
2024			wpa_supplicant-0.7.3-x86-gcc4-2012-04-03.zip
2025			: $(baseURL)/wpa_supplicant-0.7.3-x86-gcc4-2012-04-03.zip ;
2026	} else {
2027		InstallOptionalHaikuImagePackage
2028			wpa_supplicant-0.7.3-x86-gcc2-2012-04-03.zip
2029			: $(baseURL)/wpa_supplicant-0.7.3-x86-gcc2-2012-04-03.zip ;
2030	}
2031}
2032
2033
2034# WQY-MicroHei
2035if [ IsOptionalHaikuImagePackageAdded WQY-MicroHei ] {
2036	InstallOptionalHaikuImagePackage
2037		wqy-microhei-0.2.0-beta-r1a3-x86-gcc2-2011-05-18.zip
2038		: $(baseURL)/wqy-microhei-0.2.0-beta-r1a3-x86-gcc2-2011-05-18.zip ;
2039}
2040
2041
2042# XZ-Utils
2043if [ IsOptionalHaikuImagePackageAdded XZ-Utils ] {
2044	if $(TARGET_ARCH) != x86 {
2045		Echo "No optional package XZ-Utils available for $(TARGET_ARCH)" ;
2046	} else {
2047		InstallOptionalHaikuImagePackage
2048			xz-utils-5.0.1-x86-gcc4-2012-07-18.zip
2049			: $(baseURL)/xz-utils-5.0.1-x86-gcc4-2012-07-18.zip ;
2050		AddExpanderRuleToHaikuImage "application/x-xz" : .tar.xz
2051			: "tar -Jtvf \\0045s"
2052			: "tar -Jxvf \\0045s"
2053		;
2054		AddExpanderRuleToHaikuImage "application/x-xz" : .txz
2055			: "tar -Jtvf \\0045s"
2056			: "tar -Jxvf \\0045s"
2057		;
2058		AddExpanderRuleToHaikuImage "application/x-xz" : .xz
2059			: "echo \\0045s | sed 's/.xz\\\$//g'"
2060			: "xz -df \\0045s"
2061		;
2062	}
2063}
2064
2065
2066# Yasm
2067if [ IsOptionalHaikuImagePackageAdded Yasm ] {
2068	if $(TARGET_ARCH) != x86 {
2069		Echo "No optional package Yasm available for $(TARGET_ARCH)" ;
2070	} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
2071		InstallOptionalHaikuImagePackage
2072			yasm-1.2.0-x86-gcc4-2012-06-18.zip
2073			: $(baseURL)/yasm-1.2.0-x86-gcc4-2012-06-18.zip ;
2074	} else {
2075		InstallOptionalHaikuImagePackage
2076			yasm-1.2.0-x86-gcc2-2012-06-19.zip
2077			: $(baseURL)/yasm-1.2.0-x86-gcc2-2012-06-19.zip ;
2078	}
2079}
2080