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