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 = 0 ; 9if $(HAIKU_ADD_ALTERNATIVE_GCC_LIBS) && $(HAIKU_ALTERNATIVE_GCC_OUTPUT_DIR) { 10 isHybridBuild = 1 ; 11} 12 13 14# Available Optional Packages: 15# APR 16# APR-util 17# Beam 18# BeBook 19# BeHappy 20# BeOSCompatibility 21# BePDF 22# Bluetooth 23# CDRecord 24# CVS 25# Development - more complete dev environment (including autotools) 26# DevelopmentBase - basic development environment (gcc, headers, libs,...) 27# DevelopmentMin - development headers, libs, tools, from sources only 28# Firefox 29# KeymapSwitcher 30# LibIconv 31# LibLayout 32# LibXML2 33# Links 34# Nano 35# Neon 36# NetSurf 37# OpenSound 38# OpenSSH 39# OpenSSL 40# P7zip 41# Pe 42# Perl 43# Python 44# Rsync 45# SQLite 46# Subversion 47# Tar 48# UserlandFS 49# Vim 50# Vision 51# VLC 52# Welcome 53# WonderBrush 54# Yasm 55 56 57# APR 58if [ IsOptionalHaikuImagePackageAdded APR ] { 59 if $(TARGET_ARCH) != x86 { 60 Echo "No optional package APR available for $(TARGET_ARCH)" ; 61 } else { 62 local baseURL = http://www.haiku-ports.de/packages/dev-libs/apr ; 63 InstallOptionalHaikuImagePackage apr-1.3.3-gcc2-haiku-2009-05-27 64 : $(baseURL)/apr-1.3.3-gcc2-haiku-2009-05-27.zip 65 : 66 ; 67 } 68} 69 70 71# APR-util 72if [ IsOptionalHaikuImagePackageAdded APR-util ] { 73 if $(TARGET_ARCH) != x86 { 74 Echo "No optional package APR-util available for $(TARGET_ARCH)" ; 75 } else { 76 local baseURL = http://www.haiku-ports.de/packages/dev-libs/apr-util ; 77 InstallOptionalHaikuImagePackage apr-util-1.3.4-gcc2-haiku-2009-05-27 78 : $(baseURL)/apr-util-1.3.4-gcc2-haiku-2009-05-27.zip 79 : 80 ; 81 } 82} 83 84 85# Beam 86if [ IsOptionalHaikuImagePackageAdded Beam ] { 87 if $(TARGET_ARCH) != x86 { 88 Echo "No optional package Beam available for $(TARGET_ARCH)" ; 89 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 90 Echo "No optional package Beam available for gcc4" ; 91 } else { 92 InstallOptionalHaikuImagePackage Beam 93# : http://dl.hirschkaefer.de/beam/beam-1-1-2-bone-with-libs.zip 94 : http://dl.hirschkaefer.de/beam/beam-1-1-2-r5-with-libs.zip 95 : apps 96 ; 97 AddSymlinkToHaikuImage home config be Applications 98# : /boot/apps/beam-1-1-2-bone-with-libs/Beam ; 99 : /boot/apps/beam-1-1-2-r5-with-libs/Beam ; 100 } 101} 102 103 104# BeBook 105if [ IsOptionalHaikuImagePackageAdded BeBook ] { 106 InstallOptionalHaikuImagePackage bebook_20081026 107 : http://haiku-files.org/files/optional-packages/bebook_20081026.zip 108 : system documentation 109 ; 110 AddSymlinkToHaikuImage home Desktop 111 : /boot/system/documentation/bebook/index.html : BeBook ; 112} 113 114 115# BeHappy 116if [ IsOptionalHaikuImagePackageAdded BeHappy ] { 117 if $(TARGET_ARCH) != x86 { 118 Echo "No optional package BeHappy available for $(TARGET_ARCH)" ; 119 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 120 Echo "No optional package BeHappy available for gcc4" ; 121 } else { 122 InstallOptionalHaikuImagePackage BeHappy 123 : http://revolf.free.fr/beos/behappy-bone.zip 124 : 125 ; 126 AddSymlinkToHaikuImage home config be Applications 127 : /boot/apps/BeHappy/BeHappy ; 128 } 129} 130 131 132# BeOSCompatibility 133if [ IsOptionalHaikuImagePackageAdded BeOSCompatibility ] { 134 if $(TARGET_ARCH) != x86 { 135 Echo "No optional package BeOSCompatibility available for $(TARGET_ARCH)" ; 136 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 137 Echo "No optional package BeOSCompatibility available for gcc4" ; 138 } else { 139 Echo "Warning: Adding BeOS compatibility symlinks. This will go away. Please fix your apps!" ; 140 AddSymlinkToHaikuImage beos : ../system/apps ; 141 AddSymlinkToHaikuImage beos : ../system/bin ; 142 AddSymlinkToHaikuImage beos : ../system/documentation ; 143 AddSymlinkToHaikuImage beos : ../system/etc ; 144 AddSymlinkToHaikuImage beos : ../system/preferences ; 145 AddSymlinkToHaikuImage beos : ../system ; 146 } 147} 148 149 150# BePDF 151if [ IsOptionalHaikuImagePackageAdded BePDF ] { 152 if $(TARGET_ARCH) != x86 { 153 Echo "No optional package BePDF available for $(TARGET_ARCH)" ; 154 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 155 Echo "No optional package BePDF available for gcc4" ; 156 } else { 157 InstallOptionalHaikuImagePackage BePDF-1.1.1b1.x86 158 : http://haiku-files.org/files/optional-packages/BePDF-1.1.1b1.x86.zip 159 : apps 160 ; 161 AddSymlinkToHaikuImage home config be Applications 162 : /boot/apps/BePDF/BePDF ; 163 } 164} 165 166 167# Bluetooth stack 168if [ IsOptionalHaikuImagePackageAdded Bluetooth ] { 169 local bluetoothDrivers = h2generic ; 170 AddDriversToHaikuImage bluetooth : $(bluetoothDrivers) ; 171 AddFilesToHaikuImage system servers : bluetooth_server ; 172 AddFilesToHaikuImage system lib : libbluetooth.so ; 173 AddFilesToHaikuImage system add-ons kernel network devices : bluetooth ; 174 AddFilesToHaikuImage system add-ons kernel network protocols : l2cap ; 175 AddFilesToHaikuImage system add-ons kernel bluetooth : btCoreData ; 176 AddFilesToHaikuImage system preferences : Bluetooth ; 177 AddFilesToHaikuImage system bin : bt_dev_info bt_discovery ; 178 AddSymlinkToHaikuImage home config be Preferences 179 : /boot/system/preferences/Bluetooth ; 180 if [ IsOptionalHaikuImagePackageAdded DevelopmentMin ] 181 && $(HAIKU_GCC_VERSION[1]) in 2 4 { 182 local arch = $(TARGET_ARCH) ; 183 local abi = gcc$(HAIKU_GCC_VERSION[1]) ; 184 AddSymlinkToHaikuHybridImage develop abi $(arch) $(abi) lib 185 : /system/lib libbluetooth.so : : true ; 186 } 187} 188 189 190# CDRecord 191if [ IsOptionalHaikuImagePackageAdded CDRecord ] { 192 if $(TARGET_ARCH) != x86 { 193 Echo "No optional package CDRecord available for $(TARGET_ARCH)" ; 194 } else { 195 local baseURL = http://www.haiku-ports.de/packages ; 196 InstallOptionalHaikuImagePackage cdrecord-2.01.01a59-gcc2-haiku-2009-05-26 197 : $(baseURL)/app-cdr/cdrtools/cdrecord-2.01.01a59-gcc2-haiku-2009-05-26.zip 198 : 199 ; 200 } 201} 202 203 204# CVS 205if [ IsOptionalHaikuImagePackageAdded CVS ] { 206 if $(TARGET_ARCH) != x86 { 207 Echo "No optional package CVS available for $(TARGET_ARCH)" ; 208 } else { 209 local baseURL = http://haiku-files.org/files/optional-packages ; 210 InstallOptionalHaikuImagePackage cvs-1.12.13-gcc2-2008-12-04 211 : $(baseURL)/cvs-1.12.13-gcc2-2008-12-04.zip 212 : 213 ; 214 } 215} 216 217 218# Development 219if [ IsOptionalHaikuImagePackageAdded Development ] && $(TARGET_ARCH) = x86 { 220 # autotools 221 local baseURL = http://haiku-files.org/files/optional-packages ; 222 InstallOptionalHaikuImagePackage autoconf-2.63-gcc2-2008-11-05 223 : $(baseURL)/autoconf-2.63-gcc2-2008-11-05.zip ; 224 InstallOptionalHaikuImagePackage automake-1.10.1-gcc2-2008-11-06 225 : $(baseURL)/automake-1.10.1-gcc2-2008-11-06.zip ; 226 InstallOptionalHaikuImagePackage libtool-2.2.6a-gcc2-2008-11-09 227 : $(baseURL)/libtool-2.2.6a-gcc2-2008-11-09.zip ; 228 InstallOptionalHaikuImagePackage texinfo-4.13a-gcc2-2008-11-09 229 : $(baseURL)/texinfo-4.13a-gcc2-2008-11-09.zip ; 230} 231 232 233# DevelopmentBase 234if [ IsOptionalHaikuImagePackageAdded DevelopmentBase ] 235 && $(TARGET_ARCH) = x86 { 236 # gcc and binutils 237 if $(HAIKU_GCC_VERSION[1]) = 2 || $(isHybridBuild) { 238 local baseURL = http://haiku-files.org/files/optional-packages ; 239 InstallOptionalHaikuImagePackage gcc-2.95.3-haiku-081024-1 240 : $(baseURL)/gcc-2.95.3-haiku-081024-1.zip ; 241 } 242 243 if $(HAIKU_GCC_VERSION[1]) = 4 || $(isHybridBuild) { 244 local baseURL = http://haiku-files.org/files/optional-packages ; 245 InstallOptionalHaikuImagePackage gcc-4.3.3-haiku-090313-1 246 : $(baseURL)/gcc-4.3.3-haiku-090313-1.zip ; 247 248 # symlink cpp to g++'s headers 249 AddSymlinkToHaikuImage develop abi x86 gcc4 headers 250 : ../tools/current/include/g++ : cpp ; 251 } 252 253 if $(HAIKU_GCC_VERSION[1]) = 4 { 254 # symlink to libstdc++.so 255 # TODO: This needs to be solved differently! I.e. the build system 256 # (configure) should already produce libstdc++.so. 257 AddSymlinkToHaikuImage system lib 258 : /boot/develop/abi/x86/gcc4/tools/current/lib/libstdc++.so ; 259 AddSymlinkToAlternativeGCCArchive system lib gcc4 260 : /boot/develop/abi/x86/gcc4/tools/current/lib/libstdc++.so ; 261 } 262 263 # other commonly used tools 264 local baseURL = http://haiku-files.org/files/optional-packages ; 265 InstallOptionalHaikuImagePackage bison-2.4-gcc2-2008-11-09 266 : $(baseURL)/bison-2.4-gcc2-2008-11-09.zip ; 267 InstallOptionalHaikuImagePackage m4-1.4.12-gcc2-2008-11-04 268 : $(baseURL)/m4-1.4.12-gcc2-2008-11-04.zip ; 269 local baseURL = http://www.haiku-ports.de/packages ; 270 InstallOptionalHaikuImagePackage flex-2.5.35-gcc2-haiku-2009-05-26 271 : $(baseURL)/sys-devel/flex/flex-2.5.35-gcc2-haiku-2009-05-26.zip ; 272 InstallOptionalHaikuImagePackage jam-gcc2-haiku-2009-05-26 273 : $(baseURL)/dev-util/jam/jam-gcc2-haiku-2009-05-26.zip ; 274 275} 276 277 278# DevelopmentMin 279if [ IsOptionalHaikuImagePackageAdded DevelopmentMin ] && $(TARGET_ARCH) = x86 { 280 if ! ( $(HAIKU_GCC_VERSION[1]) in 2 4 ) { 281 Exit "Optional package DevelopmentMin: Unsupported GCC version:" 282 $(HAIKU_GCC_VERSION[1]) ; 283 } 284 285 local arch = $(TARGET_ARCH) ; 286 local abi = gcc$(HAIKU_GCC_VERSION[1]) ; 287 local abiDirTokens = develop abi $(arch) $(abi) ; 288 289 # glue code 290 AddFilesToHaikuHybridImage $(abiDirTokens) lib : 291 <src!system!glue!arch!$(arch)>crti.o 292 <src!system!glue!arch!$(arch)>crtn.o 293 <src!system!glue>init_term_dyn.o 294 <src!system!glue>start_dyn.o 295 <src!system!glue>haiku_version_glue.o 296 ; 297 298 # kernel 299 AddFilesToHaikuHybridImage $(abiDirTokens) lib : kernel.so : _KERNEL_ ; 300 301 # library symlinks 302 local lib ; 303 for lib in $(SYSTEM_LIBS) libglut.so { 304 AddSymlinkToHaikuHybridImage $(abiDirTokens) lib 305 : /system/lib $(lib:BS) : : true ; 306 } 307 308 # static libraries 309 AddFilesToHaikuHybridImage $(abiDirTokens) lib : libncurses.a ; 310 311 # the POSIX error code mapper library 312 AddFilesToHaikuHybridImage $(abiDirTokens) lib : libposix_error_mapper.a ; 313 314 # symlinks for ABI abstraction 315 AddSymlinkToHaikuImage develop abi : $(arch)/$(abi) : current ; 316 AddSymlinkToHaikuImage develop lib : /boot/develop/abi/current/lib 317 : $(arch) ; 318 AddSymlinkToHaikuImage develop tools 319 : /boot/develop/abi/current/tools/current : gnupro ; 320 AddSymlinkToHaikuImage develop headers 321 : /boot/develop/abi/current/headers/cpp ; 322 AddSymlinkToHaikuHybridImage $(abiDirTokens) library-paths 323 : /boot/common/lib : common : true ; 324 AddSymlinkToHaikuHybridImage $(abiDirTokens) library-paths 325 : /boot/home/config/lib : home : true ; 326 327 # ABI independent stuff 328 329 # scripts: cc and c++ wrapper, freetype-config, setgcc 330 local scripts = cc c++ freetype-config setgcc ; 331 SEARCH on $(scripts) = [ FDirName $(HAIKU_TOP) data bin ] ; 332 AddFilesToHaikuImage system bin : $(scripts) ; 333 334 # make and mkdepend build tool, which are part of the Haiku source tree 335 # TODO: Both should be removed from the tree, made download packages 336 # and moved to the DevelopmentBase package. 337 AddFilesToHaikuImage system bin : make mkdepend ; 338 339 # skeleton makefile and makefile-engine 340 local makefileEngineFiles = 341 <makefile-engine>makefile 342 <makefile-engine>makefile-engine 343 ; 344 SEARCH on $(makefileEngineFiles) 345 = [ FDirName $(HAIKU_TOP) data develop ] ; 346 AddFilesToHaikuImage develop etc : $(makefileEngineFiles) ; 347 348 # headers 349 AddHeaderDirectoryToHaikuImage gnu : 3rdparty ; 350 AddHeaderDirectoryToHaikuImage os ; 351 AddHeaderDirectoryToHaikuImage posix ; 352 353 # add _G_config.h to posix/ 354 SEARCH on <header>_G_config.h = [ FDirName $(HAIKU_TOP) headers glibc ] ; 355 AddFilesToHaikuImage develop headers posix : <header>_G_config.h ; 356 357 # create be -> os symlink for now 358 AddSymlinkToHaikuImage develop headers : os : be ; 359 360 # BSD compatibility headers 361 AddHeaderDirectoryToHaikuImage compatibility bsd : bsd ; 362 363 # third party libs headers 364 AddHeaderDirectoryToHaikuImage libs freetype2 : 3rdparty ; 365 AddHeaderDirectoryToHaikuImage libs iconv : 3rdparty ; 366 AddHeaderDirectoryToHaikuImage libs ncurses : 3rdparty ; 367 AddHeaderDirectoryToHaikuImage libs png : 3rdparty ; 368 AddHeaderDirectoryToHaikuImage libs zlib : 3rdparty ; 369 370 # cpp headers 371 if $(HAIKU_GCC_VERSION[1]) = 2 { 372 # GCC 2 only -- for GCC 4 they come with the DevelopmentBase package 373 CopyDirectoryToHaikuImage $(abiDirTokens) headers 374 : [ FDirName $(HAIKU_TOP) headers cpp ] : : -x .svn ; 375 CopyDirectoryToAlternativeGCCArchive $(abiDirTokens) headers 376 : [ FDirName $(HAIKU_TOP) headers cpp ] : : -x .svn ; 377 } 378} 379 380 381# Firefox web browser 382if [ IsOptionalHaikuImagePackageAdded Firefox ] { 383 if $(TARGET_ARCH) != x86 { 384 Echo "No optional package Firefox available for $(TARGET_ARCH)" ; 385 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 386 local baseURL = http://haiku-files.org/files/optional-packages ; 387 InstallOptionalHaikuImagePackage BeZillaBrowser-2.0.0.21pre-haiku-gcc4-x86-09-03-01 388 : $(baseURL)/BeZillaBrowser-2.0.0.21pre-haiku-gcc4-x86-09-03-01.zip 389 : apps 390 ; 391 AddSymlinkToHaikuImage home config be Applications 392 : /boot/apps/BeZillaBrowser/BeZillaBrowser ; 393 394 395 } else { 396 InstallOptionalHaikuImagePackage BeZillaBrowser-gcc2-20090218 397 : http://bezilla.beuser.de/builds/BeZillaBrowser-gcc2-20090218.zip 398 : apps 399 ; 400 AddSymlinkToHaikuImage home config be Applications 401 : /boot/apps/BeZillaBrowser/BeZillaBrowser ; 402 } 403} 404 405 406# KeymapSwitcher 407if [ IsOptionalHaikuImagePackageAdded KeymapSwitcher ] { 408 if $(TARGET_ARCH) != x86 { 409 Echo "No optional package KeymapSwitcher available for $(TARGET_ARCH)" ; 410 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 411 local baseURL = http://downloads.sourceforge.net/dotmatrix4beos ; 412 InstallOptionalHaikuImagePackage KeymapSwitcher-gcc4-20090531 413 : $(baseURL)/KeymapSwitcher-1.2.3-gcc4-2009-05-31.zip 414 : 415 ; 416 AddSymlinkToHaikuImage home config be Desktop\ Applets 417 : /boot/common/bin/KeymapSwitcher ; 418 } else { 419 local baseURL = http://downloads.sourceforge.net/dotmatrix4beos ; 420 InstallOptionalHaikuImagePackage KeymapSwitcher-gcc2-20090531 421 : $(baseURL)/KeymapSwitcher-1.2.3-gcc2-2009-05-31.zip 422 : 423 ; 424 AddSymlinkToHaikuImage home config be Desktop\ Applets 425 : /boot/common/bin/KeymapSwitcher ; 426 } 427} 428 429 430# LibIconv 431if [ IsOptionalHaikuImagePackageAdded LibIconv ] { 432 if $(TARGET_ARCH) != x86 { 433 Echo "No optional package LibIconv available for $(TARGET_ARCH)" ; 434 } else { 435 local baseURL = http://www.haiku-ports.de/packages/dev-libs/libiconv ; 436 InstallOptionalHaikuImagePackage libiconv-1.13-gcc2-haiku-2009-05-27 437 : $(baseURL)/libiconv-1.13-gcc2-haiku-2009-05-27.zip 438 : 439 ; 440 } 441} 442 443 444# LibLayout library 445if [ IsOptionalHaikuImagePackageAdded LibLayout ] { 446 if $(TARGET_ARCH) != x86 { 447 Echo "No optional package LibLayout available for $(TARGET_ARCH)" ; 448 } else if $(HAIKU_GCC_VERSION[1]) >= 4 { 449 Echo "No optional package LibLayout available for gcc4" ; 450 } else { 451 local baseURL = http://haiku-files.org/files/optional-packages ; 452 InstallOptionalHaikuImagePackage liblayout-1.4.0-gcc2-2009-03-08 453 : $(baseURL)/liblayout-1.4.0-gcc2-2009-03-08.zip 454 : 455 ; 456 } 457} 458 459 460# LibXML2 461if [ IsOptionalHaikuImagePackageAdded LibXML2 ] { 462 if $(TARGET_ARCH) != x86 { 463 Echo "No optional package LibXML2 available for $(TARGET_ARCH)" ; 464 } else { 465 local baseURL = http://www.haiku-ports.de/packages/dev-libs/libxml2 ; 466 InstallOptionalHaikuImagePackage libxml2-2.7.3-gcc2-haiku-2009-05-27 467 : $(baseURL)/libxml2-2.7.3-gcc2-haiku-2009-05-27.zip 468 : 469 ; 470 } 471} 472 473 474# Links web browser 475if [ IsOptionalHaikuImagePackageAdded Links ] { 476 if $(TARGET_ARCH) != x86 { 477 Echo "No optional package Links available for $(TARGET_ARCH)" ; 478 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 479 Echo "No optional package Links available for gcc4" ; 480 } else { 481 InstallOptionalHaikuImagePackage Links 482 : http://revolf.free.fr/beos/links-beos-bin.zip 483 : 484 ; 485 AddSymlinkToHaikuImage home config be Applications 486 : /boot/home/config/bin/links ; 487 } 488} 489 490 491# Nano 492if [ IsOptionalHaikuImagePackageAdded Nano ] { 493 if $(TARGET_ARCH) != x86 { 494 Echo "No optional package Nano available for $(TARGET_ARCH)" ; 495 } else { 496 local baseURL = http://www.haiku-ports.de/packages ; 497 InstallOptionalHaikuImagePackage nano-2.0.9-gcc2-haiku-2009-05-27 498 : $(baseURL)/app-editors/nano/nano-2.0.9-gcc2-haiku-2009-05-27.zip 499 : 500 ; 501 } 502} 503 504 505# Neon 506if [ IsOptionalHaikuImagePackageAdded Neon ] { 507 if $(TARGET_ARCH) != x86 { 508 Echo "No optional package Neon available for $(TARGET_ARCH)" ; 509 } else { 510 local baseURL = http://www.haiku-ports.de/packages/net-misc/neon ; 511 InstallOptionalHaikuImagePackage neon-0.28.4-gcc2-haiku-2009-05-23 512 : $(baseURL)/neon-0.28.4-gcc2-haiku-2009-05-23.zip 513 : 514 ; 515 } 516} 517 518 519# NetSurf web browser 520if [ IsOptionalHaikuImagePackageAdded NetSurf ] { 521 if $(TARGET_ARCH) != x86 { 522 Echo "No optional package NetSurf available for $(TARGET_ARCH)" ; 523 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 524 Echo "No optional package NetSurf available for gcc4" ; 525 } else { 526 InstallOptionalHaikuImagePackage NetSurf 527 : http://haiku-files.org/files/optional-packages/NetSurf-r7117-x86-gcc2-2009-04-17.zip 528 : 529 ; 530 AddSymlinkToHaikuImage home config be Applications 531 : /boot/apps/netsurf/NetSurf ; 532 } 533} 534 535 536# OpenSound drivers 537if [ IsOptionalHaikuImagePackageAdded OpenSound ] { 538 if $(TARGET_ARCH) != x86 { 539 Echo "No optional package OpenSound available for $(TARGET_ARCH)" ; 540 } else { 541 InstallOptionalHaikuImagePackage OpenSound 542 : http://www.yellowbites.com/downloads/OpenSound_Haiku20080621.zip 543 : 544 ; 545 } 546 #UnzipArchiveToHaikuImage home : data/vv.mp3.zip : 0 ; 547} 548 549 550# OpenSSH 551if [ IsOptionalHaikuImagePackageAdded OpenSSH ] { 552 if $(TARGET_ARCH) != x86 { 553 Echo "No optional package OpenSSH available for $(TARGET_ARCH)" ; 554 } else { 555 if ! $(HAIKU_IMAGE_HOST_NAME) && ! $(HAIKU_IGNORE_USER_BUILD_CONFIG) { 556 Exit "Optional package OpenSSH requires the HAIKU_IMAGE_HOST_NAME" 557 "variable to be set!" ; 558 } 559 560 local baseURL = http://www.haiku-ports.de/packages/net-misc/openssh ; 561 InstallOptionalHaikuImagePackage openssh-5.2p1-gcc2-haiku-2009-05-27 562 : $(baseURL)/openssh-5.2p1-gcc2-haiku-2009-05-27.zip 563 : 564 ; 565 566 AddUserToHaikuImage sshd : 1001 : 100 : /var/empty : /bin/true 567 : "sshd user" ; 568 } 569} 570 571 572# OpenSSL 573if [ IsOptionalHaikuImagePackageAdded OpenSSL ] { 574 if $(TARGET_ARCH) != x86 { 575 Echo "No optional package OpenSSL available for $(TARGET_ARCH)" ; 576 } else { 577 InstallOptionalHaikuImagePackage $(HAIKU_OPENSSL_PACKAGE) 578 : $(HAIKU_OPENSSL_URL) 579 : 580 ; 581 } 582} 583 584 585# P7zip 586if [ IsOptionalHaikuImagePackageAdded P7zip ] { 587 if $(TARGET_ARCH) != x86 { 588 Echo "No optional package P7zip available for $(TARGET_ARCH)" ; 589 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 590 Echo "No optional package P7zip available for gcc4" ; 591 } else { 592 local baseURL = http://www.haiku-ports.de/packages/app-arch/p7zip ; 593 InstallOptionalHaikuImagePackage p7zip-4.65-gcc2-haiku-2009-05-24 594 : $(baseURL)/p7zip-4.65-gcc2-haiku-2009-05-24.zip 595 : 596 ; 597 598 actions BuildHaikuImageExpanderRules 599 { 600 echo "\"application/x-7z-compressed\"\t.7z\t\"7za l \0045s\"\t\"7za x -y \0045s\"" > $(1) 601 } 602 603 Always expander.rules ; 604 MakeLocate expander.rules : $(HAIKU_COMMON_PLATFORM_OBJECT_DIR) ; 605 BuildHaikuImageExpanderRules expander.rules ; 606 AddFilesToHaikuImage home config etc : expander.rules ; 607 } 608} 609 610 611# Pe text editor 612if [ IsOptionalHaikuImagePackageAdded Pe ] { 613 if $(TARGET_ARCH) != x86 { 614 Echo "No optional package Pe available for $(TARGET_ARCH)" ; 615 } else { 616 local baseURL = http://haiku-files.org/files/optional-packages ; 617 if $(HAIKU_GCC_VERSION[1]) >= 4 { 618 InstallOptionalHaikuImagePackage pe-2.4.1-x86-rc3-gcc4-2009-03-27 619 : $(baseURL)/pe-2.4.1-x86-rc3-gcc4-2009-03-27.zip 620 : apps 621 ; 622 } else { 623 InstallOptionalHaikuImagePackage pe-2.4.2-x86-gcc2-2009-04-14 624 : $(baseURL)/pe-2.4.2-x86-gcc2-2009-04-14.zip 625 : apps 626 ; 627 } 628 629 AddSymlinkToHaikuImage home config be Applications 630 : /boot/apps/Pe/Pe ; 631 AddSymlinkToHaikuImage common bin 632 : /boot/apps/Pe/lpe ; 633 } 634} 635 636 637# Perl 638if [ IsOptionalHaikuImagePackageAdded Perl ] { 639 if $(TARGET_ARCH) != x86 { 640 Echo "No optional package Perl available for $(TARGET_ARCH)" ; 641 } else { 642 local baseURL = http://haiku-files.org/files/optional-packages ; 643 InstallOptionalHaikuImagePackage perl-5.10.0-gcc2-2008-10-29 644 : $(baseURL)/perl-5.10.0-gcc2-2008-10-29.zip 645 : 646 ; 647 } 648} 649 650 651# Python 652if [ IsOptionalHaikuImagePackageAdded Python ] { 653 if $(TARGET_ARCH) != x86 { 654 Echo "No optional package Python available for $(TARGET_ARCH)" ; 655 } else { 656 local baseURL = http://www.haiku-ports.de/packages/dev-lang/python ; 657 InstallOptionalHaikuImagePackage python-2.6.2-gcc2-haiku-2009-05-27 658 : $(baseURL)/python-2.6.2-gcc2-haiku-2009-05-27.zip 659 : 660 ; 661 } 662} 663 664 665# SQLite 666if [ IsOptionalHaikuImagePackageAdded SQLite ] { 667 if $(TARGET_ARCH) != x86 { 668 Echo "No optional package SQLite available for $(TARGET_ARCH)" ; 669 } else { 670 local baseURL = http://www.haiku-ports.de/packages/dev-db/sqlite ; 671 InstallOptionalHaikuImagePackage sqlite-3.6.14-gcc2-haiku-2009-05-10 672 : $(baseURL)/sqlite-3.6.14-gcc2-haiku-2009-05-10.zip 673 : 674 ; 675 } 676} 677 678 679# Rsync 680if [ IsOptionalHaikuImagePackageAdded Rsync ] { 681 if $(TARGET_ARCH) != x86 { 682 Echo "No optional package Rsync available for $(TARGET_ARCH)" ; 683 } else { 684 local baseURL = http://dl.hirschkaefer.de/haiku ; 685 InstallOptionalHaikuImagePackage rsync-3.0.6-gcc2-haiku-2009-05-26 686 : $(baseURL)/rsync-3.0.6-gcc2-haiku-2009-05-26.zip 687 : 688 ; 689 } 690} 691 692 693# Subversion 694if [ IsOptionalHaikuImagePackageAdded Subversion ] { 695 if $(TARGET_ARCH) != x86 { 696 Echo "No optional package Subversion available for $(TARGET_ARCH)" ; 697 } else { 698 local baseURL = http://www.haiku-ports.de/packages/dev-util/subversion ; 699 InstallOptionalHaikuImagePackage subversion-1.6.2-gcc2-haiku-2009-05-20 700 : $(baseURL)/subversion-1.6.2-gcc2-haiku-2009-05-20.zip 701 : 702 ; 703 } 704} 705 706 707# Tar 708if [ IsOptionalHaikuImagePackageAdded Tar ] { 709 if $(TARGET_ARCH) != x86 { 710 Echo "No optional package Tar available for $(TARGET_ARCH)" ; 711 } else { 712 local baseURL = http://haiku-files.org/files/optional-packages ; 713 InstallOptionalHaikuImagePackage tar-1.21-gcc2-2009-02-08 714 : $(baseURL)/tar-1.21-gcc2-2009-02-08.zip 715 : 716 ; 717 } 718} 719 720 721# UserlandFS 722if [ IsOptionalHaikuImagePackageAdded UserlandFS ] { 723 local arch = $(TARGET_ARCH) ; 724 local abi = gcc$(HAIKU_GCC_VERSION[1]) ; 725 726 # kernel module 727 AddFilesToHaikuImage system add-ons kernel file_systems : userlandfs ; 728 729 # server 730 AddFilesToHaikuImage system servers : userlandfs_server ; 731 732 # libs 733 local userlandfsLibs = 734 libuserlandfs_beos_kernel.so 735 libuserlandfs_haiku_kernel.so 736 libuserlandfs_fuse.so 737 ; 738 AddFilesToHaikuHybridImage system lib : $(userlandfsLibs) : : true ; 739 740 # development goodies 741 if [ IsOptionalHaikuImagePackageAdded DevelopmentMin ] { 742 if ! ( $(HAIKU_GCC_VERSION[1]) in 2 4 ) { 743 Exit "Optional package UserlandFS: Unsupported GCC version:" 744 $(HAIKU_GCC_VERSION[1]) ; 745 } 746 747 # library symlinks 748 local lib ; 749 for lib in $(userlandfsLibs) { 750 AddSymlinkToHaikuImage develop abi $(arch) $(abi) lib 751 : /system/lib/$(lib:BS) ; 752 AddSymlinkToAlternativeGCCArchive develop abi $(arch) $(abi) lib 753 : /system/lib/$(arch)/$(lib:BS) ; 754 } 755 756 # FUSE headers 757 local fuseHeaders = 758 fuse_common_compat.h 759 fuse_common.h 760 fuse_compat.h 761 fuse.h 762 fuse_lowlevel_compat.h 763 fuse_lowlevel.h 764 fuse_opt.h 765 ; 766 fuseHeaders = $(fuseHeaders:G=userlandfs!fuse) ; 767 SEARCH on $(fuseHeaders) 768 = [ FDirName $(HAIKU_TOP) headers private userlandfs fuse ] ; 769 AddFilesToHaikuImage develop headers userlandfs fuse : $(fuseHeaders) ; 770 } 771} 772 773 774# Vim 775if [ IsOptionalHaikuImagePackageAdded Vim ] { 776 if $(TARGET_ARCH) != x86 { 777 Echo "No optional package Vim available for $(TARGET_ARCH)" ; 778 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 779 local baseURL = http://haiku-ports.de/packages/app-editors/vim ; 780 InstallOptionalHaikuImagePackage vim-7.2-gcc4-20090531 781 : $(baseURL)/vim-7.2-gcc4-haiku-2009-05-31.zip 782 : 783 ; 784 AddSymlinkToHaikuImage home config be Applications 785 : /boot/common/bin/gvim ; 786 } else { 787 local baseURL = http://haiku-ports.de/packages/app-editors/vim ; 788 InstallOptionalHaikuImagePackage vim-7.2-gcc2-20090531 789 : $(baseURL)/vim-7.2-gcc2-haiku-2009-05-31.zip 790 : 791 ; 792 AddSymlinkToHaikuImage home config be Applications 793 : /boot/common/bin/gvim ; 794 } 795} 796 797 798# Vision 799if [ IsOptionalHaikuImagePackageAdded Vision ] { 800 if $(TARGET_ARCH) != x86 { 801 Echo "No optional package Vision available for $(TARGET_ARCH)" ; 802 } else if $(HAIKU_GCC_VERSION[1]) >= 4 { 803 InstallOptionalHaikuImagePackage Vision-0.9.7-H-090423-gcc4 804 : http://vision.sf.net/Vision-0.9.7-H-090423-gcc4.zip 805 : apps 806 ; 807 AddSymlinkToHaikuImage home config be Applications 808 : /boot/apps/Vision-0.9.7-H-090423/Vision ; 809 } else { 810 InstallOptionalHaikuImagePackage Vision-0.9.7-H-090423 811 : http://vision.sf.net/Vision-0.9.7-H-090423.zip 812 : apps 813 ; 814 AddSymlinkToHaikuImage home config be Applications 815 : /boot/apps/Vision-0.9.7-H-090423/Vision ; 816 } 817} 818 819 820# VLC media player 821if [ IsOptionalHaikuImagePackageAdded VLC ] { 822 if $(TARGET_ARCH) != x86 { 823 Echo "No optional package VLC available for $(TARGET_ARCH)" ; 824 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 825 Echo "No optional package VLC available for gcc4" ; 826 } else { 827 local baseURL = http://haiku-files.org/files/optional-packages ; 828 InstallOptionalHaikuImagePackage VLC-0.8.6d 829 : $(baseURL)/vlc-0.8.6d-gcc2-2009-04-18.zip 830 : apps 831 ; 832 AddSymlinkToHaikuImage home config be Applications 833 : "/boot/apps/vlc-0.8.6d/VLC media player" ; 834 AddSymlinkToHaikuImage common bin 835 : "/boot/apps/vlc-0.8.6d/VLC media player" : vlc ; 836 } 837} 838 839 840# Welcome 841if [ IsOptionalHaikuImagePackageAdded Welcome ] { 842 CopyDirectoryToHaikuImage system documentation 843 : [ FDirName $(HAIKU_TOP) docs welcome ] 844 : welcome : -x .svn ; 845 CopyDirectoryToHaikuImage system documentation 846 : [ FDirName $(HAIKU_TOP) docs userguide ] 847 : userguide : -x .svn ; 848 AddFilesToHaikuImage system documentation 849 : [ FDirName $(HAIKU_TOP) docs Haiku-doc.css ] 850 : Haiku-doc.css ; 851 AddSymlinkToHaikuImage home Desktop 852 : /boot/system/documentation/welcome/welcome.html : Welcome ; 853} 854 855 856# WonderBrush 857if [ IsOptionalHaikuImagePackageAdded WonderBrush ] { 858 if $(TARGET_ARCH) != x86 { 859 Echo "No optional package WonderBrush available for $(TARGET_ARCH)" ; 860 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 861 Echo "No optional package WonderBrush available for gcc4" ; 862 } else { 863 local baseURL = http://www.yellowbites.com/downloads ; 864 InstallOptionalHaikuImagePackage WonderBrush-2.1.2-Haiku 865 : $(baseURL)/WonderBrush-2.1.2-gcc2-x86-Haiku.zip 866 : apps 867 ; 868 AddSymlinkToHaikuImage home config be Applications 869 : /boot/apps/WonderBrush/WonderBrush ; 870 } 871} 872 873 874# Yasm 875if [ IsOptionalHaikuImagePackageAdded Yasm ] { 876 if $(TARGET_ARCH) != x86 { 877 Echo "No optional package Yasm available for $(TARGET_ARCH)" ; 878 } else { 879 local baseURL = http://haiku-files.org/files/optional-packages ; 880 InstallOptionalHaikuImagePackage yasm-0.8.0-gcc2-2009-04-19 881 : $(baseURL)/yasm-0.8.0-gcc2-haiku-2009-04-19.zip 882 : 883 ; 884 } 885} 886