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# Available Optional Packages: 14# APR 15# APR-util 16# Beam 17# Bluetooth 18# Development 19# Firefox 20# Links 21# OpenSound 22# OpenSSL 23# Pe 24# Perl 25# Subversion 26# Vision 27# VLC 28# WonderBrush 29 30 31# package dependencies 32OptionalPackageDependencies APR-util : APR ; 33OptionalPackageDependencies Development : Perl ; 34OptionalPackageDependencies OpenSSH : OpenSSL ; 35OptionalPackageDependencies Subversion : OpenSSL ; 36 37 38# APR 39if [ IsOptionalHaikuImagePackageAdded APR ] { 40 if $(TARGET_ARCH) != x86 { 41 Echo "No optional package APR available for $(TARGET_ARCH)" ; 42 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 43 Echo "No optional package APR available for gcc4" ; 44 } else { 45 local baseURL = http://haiku-files.org/files/optional-packages ; 46 InstallOptionalHaikuImagePackage apr-0.9.17-gcc2-2008-05-20 47 : $(baseURL)/apr-0.9.17-gcc2-2008-05-20.zip 48 : 49 ; 50 } 51} 52 53 54# APR-util 55if [ IsOptionalHaikuImagePackageAdded APR-util ] { 56 if $(TARGET_ARCH) != x86 { 57 Echo "No optional package APR-util available for $(TARGET_ARCH)" ; 58 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 59 Echo "No optional package APR-util available for gcc4" ; 60 } else { 61 local baseURL = http://haiku-files.org/files/optional-packages ; 62 InstallOptionalHaikuImagePackage apr-util-0.9.15-gcc2-2008-05-15 63 : $(baseURL)/apr-util-0.9.15-gcc2-2008-05-15.zip 64 : 65 ; 66 } 67} 68 69 70# Beam 71if [ IsOptionalHaikuImagePackageAdded Beam ] { 72 if $(TARGET_ARCH) != x86 { 73 Echo "No optional package Beam available for $(TARGET_ARCH)" ; 74 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 75 Echo "No optional package Beam available for gcc4" ; 76 } else { 77 InstallOptionalHaikuImagePackage Beam 78# : http://dl.hirschkaefer.de/beam/beam-1-1-2-bone-with-libs.zip 79 : http://dl.hirschkaefer.de/beam/beam-1-1-2-r5-with-libs.zip 80 : apps 81 ; 82 AddSymlinkToHaikuImage home config be Applications 83# : /boot/apps/beam-1-1-2-bone-with-libs/Beam ; 84 : /boot/apps/beam-1-1-2-r5-with-libs/Beam ; 85 } 86} 87 88 89# Bluetooth stack 90if [ IsOptionalHaikuImagePackageAdded Bluetooth ] { 91 local bluetoothDrivers = h2generic ; 92 AddDriversToHaikuImage bluetooth : $(bluetoothDrivers) ; 93 AddFilesToHaikuImage beos system servers : bluetooth_server ; 94 AddFilesToHaikuImage beos system lib : libbluetooth.so ; 95 AddFilesToHaikuImage beos bin : bt_dev_info bt_discovery ; 96 97 if [ IsOptionalHaikuImagePackageAdded Development ] { 98 AddSymlinkToHaikuImage develop lib x86 : /system/lib/libbluetooth.so ; 99 } 100} 101 102 103# Development 104if [ IsOptionalHaikuImagePackageAdded Development ] 105 && $(TARGET_ARCH) = x86 { 106 # glue code 107 AddFilesToHaikuImage develop lib x86 108 : <src!system!glue!arch!x86>crti.o <src!system!glue!arch!x86>crtn.o 109 <src!system!glue>init_term_dyn.o <src!system!glue>start_dyn.o ; 110 111 # library symlinks 112 local lib ; 113 for lib in $(BEOS_SYSTEM_LIBS) libglut.so { 114 AddSymlinkToHaikuImage develop lib x86 : /system/lib/$(lib:BS) ; 115 } 116 117 # static libraries 118 AddFilesToHaikuImage develop lib x86 : libncurses.a ; 119 120 # cc and c++ wrapper scripts 121 AddFilesToHaikuImage beos bin : cc c++ ; 122 123 # headers 124 AddHeaderDirectoryToHaikuImage gnu : 3rdparty ; 125 AddHeaderDirectoryToHaikuImage os ; 126 AddHeaderDirectoryToHaikuImage posix ; 127 128 # add _G_config.h to posix/ 129 SEARCH on <header>_G_config.h = [ FDirName $(HAIKU_TOP) headers glibc ] ; 130 AddFilesToHaikuImage develop headers posix : <header>_G_config.h ; 131 132 # create be -> os symlink for now 133 AddSymlinkToHaikuImage develop headers : os : be ; 134 135 # BSD compatibility headers 136 AddHeaderDirectoryToHaikuImage compatibility bsd : bsd ; 137 138 # create gnu -> 3rdparty symlink 139 AddSymlinkToHaikuImage develop headers : 3rdparty : gnu ; 140 # TODO: Change BEINCLUDES and gcc to refer to 3rdparty rather than gnu. 141 142 # third party libs headers 143 AddHeaderDirectoryToHaikuImage libs ncurses : 3rdparty ; 144 AddHeaderDirectoryToHaikuImage libs png : 3rdparty ; 145 AddHeaderDirectoryToHaikuImage libs zlib : 3rdparty ; 146 147 if $(HAIKU_GCC_VERSION[1]) > 2 { 148 # gcc 4 149 150 # symlink cpp to g++'s headers 151 AddSymlinkToHaikuImage develop headers 152 : /boot/develop/tools/gnupro/include/g++ : cpp ; 153 } else { 154 # gcc 2.95.3 155 156 AddHeaderDirectoryToHaikuImage cpp ; 157 } 158 159 if $(HAIKU_GCC_VERSION[1]) = 2 || $(isHybridBuild) = 1 { 160 # gcc and binutils 161 local baseURL = http://haiku-files.org/files/optional-packages ; 162 InstallOptionalHaikuImagePackage gcc-2.95.3-haiku-080323 163 : $(baseURL)/gcc-2.95.3-haiku-080323.zip 164 : develop tools 165 ; 166 AddSymlinkToHaikuImage develop tools : gcc-2.95.3-haiku-080323 167 : gnupro ; 168 169 # other tools 170 InstallOptionalHaikuImagePackage autoconf-2.61-gcc2-2008-03-24 171 : $(baseURL)/autoconf-2.61-gcc2-2008-03-24.zip 172 : home 173 ; 174 InstallOptionalHaikuImagePackage automake-1.10.1-gcc2-2008-03-24-1 175 : $(baseURL)/automake-1.10.1-gcc2-2008-03-24-1.zip 176 : home 177 ; 178 InstallOptionalHaikuImagePackage bison-2.3-gcc2-2008-03-28 179 : $(baseURL)/bison-2.3-gcc2-2008-03-28.zip 180 : home 181 ; 182 InstallOptionalHaikuImagePackage flex-2.5.35-gcc2-2008-03-28 183 : $(baseURL)/flex-2.5.35-gcc2-2008-03-28.zip 184 : home 185 ; 186 InstallOptionalHaikuImagePackage jam-haiku-gcc2-2008-03-27-1 187 : $(baseURL)/jam-haiku-gcc2-2008-03-27-1.zip 188 : . 189 ; 190 InstallOptionalHaikuImagePackage libtool-1.5.26-gcc2-2008-04-07 191 : $(baseURL)/libtool-1.5.26-gcc2-2008-04-07.zip 192 : home 193 ; 194 InstallOptionalHaikuImagePackage texinfo-4.11-gcc2-2008-03-24 195 : $(baseURL)/texinfo-4.11-gcc2-2008-03-24.zip 196 : home 197 ; 198 } 199} 200 201 202# Firefox web browser 203if [ IsOptionalHaikuImagePackageAdded Firefox ] { 204 if $(TARGET_ARCH) != x86 { 205 Echo "No optional package Firefox available for $(TARGET_ARCH)" ; 206 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 207 Echo "No optional package Firefox available for gcc4" ; 208 } else { 209 InstallOptionalHaikuImagePackage Firefox 210 : http://www.yellowbites.com/downloads/Firefox-2.0.0.12.zip 211 : apps 212 ; 213 AddSymlinkToHaikuImage home config be Applications 214 : /boot/apps/Firefox/Firefox ; 215 } 216} 217 218 219# Links web browser 220if [ IsOptionalHaikuImagePackageAdded Links ] { 221 if $(TARGET_ARCH) != x86 { 222 Echo "No optional package Links available for $(TARGET_ARCH)" ; 223 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 224 Echo "No optional package Links available for gcc4" ; 225 } else { 226 InstallOptionalHaikuImagePackage Links 227 : http://revolf.free.fr/beos/links-beos-bin.zip 228 : 229 ; 230 AddSymlinkToHaikuImage home config be Applications 231 : /boot/home/config/bin/links ; 232 } 233} 234 235 236# OpenSound drivers 237if [ IsOptionalHaikuImagePackageAdded OpenSound ] { 238 if $(TARGET_ARCH) != x86 { 239 Echo "No optional package OpenSound available for $(TARGET_ARCH)" ; 240# } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 241# Echo "No optional package OpenSound available for gcc4" ; 242 } else { 243 InstallOptionalHaikuImagePackage OpenSound 244 : http://www.yellowbites.com/downloads/OpenSound_Haiku20080621.zip 245 : 246 ; 247 } 248 #UnzipArchiveToHaikuImage home : data/vv.mp3.zip : 0 ; 249} 250 251 252# OpenSSH 253if [ IsOptionalHaikuImagePackageAdded OpenSSH ] { 254 if $(TARGET_ARCH) != x86 { 255 Echo "No optional package OpenSSH available for $(TARGET_ARCH)" ; 256 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 257 Echo "No optional package OpenSSH available for gcc4" ; 258 } else { 259 local baseURL = http://haiku-files.org/files/optional-packages ; 260 InstallOptionalHaikuImagePackage openssh-5.0p1-gcc2-2008-05-04-1 261 : $(baseURL)/openssh-5.0p1-gcc2-2008-05-04-1.zip 262 : 263 ; 264 265 AddUserToHaikuImage sshd : 1001 : 100 : /var/empty : /bin/true 266 : "sshd user" ; 267 } 268} 269 270 271# OpenSSL 272if [ IsOptionalHaikuImagePackageAdded OpenSSL ] { 273 if $(TARGET_ARCH) != x86 { 274 Echo "No optional package OpenSSL available for $(TARGET_ARCH)" ; 275 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 276 Echo "No optional package OpenSSL available for gcc4" ; 277 } else { 278 local baseURL = http://haiku-files.org/files/optional-packages ; 279 InstallOptionalHaikuImagePackage openssl-0.9.8g-gcc2-2008-03-28 280 : $(baseURL)/openssl-0.9.8g-gcc2-2008-03-28.zip 281 : home 282 ; 283 } 284} 285 286 287# Pe text editor 288if [ IsOptionalHaikuImagePackageAdded Pe ] { 289 if $(TARGET_ARCH) != x86 { 290 Echo "No optional package Pe available for $(TARGET_ARCH)" ; 291 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 292 Echo "No optional package Pe available for gcc4" ; 293 } else { 294 InstallOptionalHaikuImagePackage pe-2.4.1-x86 295 : http://dl.hirschkaefer.de/beos/pe-2.4.1-x86.zip 296 : apps 297 ; 298 299 # TODO: The installation directory should probably be renamed to just 300 # "pe" (or "Pe") and the contained "(drag lpe here...)" be removed. 301 AddSymlinkToHaikuImage home config be Applications 302 : /boot/apps/pe-2.4.1-x86/pe ; 303 AddSymlinkToHaikuImage home config bin 304 : /boot/apps/pe-2.4.1-x86/lpe ; 305 } 306} 307 308 309# Perl 310if [ IsOptionalHaikuImagePackageAdded Perl ] { 311 if $(TARGET_ARCH) != x86 { 312 Echo "No optional package Perl available for $(TARGET_ARCH)" ; 313 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 314 Echo "No optional package Perl available for gcc4" ; 315 } else { 316 local baseURL = http://haiku-files.org/files/optional-packages ; 317 InstallOptionalHaikuImagePackage perl-5.10.0-gcc2-2008-03-24 318 : $(baseURL)/perl-5.10.0-gcc2-2008-03-24.zip 319 : home 320 ; 321 } 322} 323 324 325# Subversion 326if [ IsOptionalHaikuImagePackageAdded Subversion ] { 327 if $(TARGET_ARCH) != x86 { 328 Echo "No optional package Subversion available for $(TARGET_ARCH)" ; 329 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 330 Echo "No optional package Subversion available for gcc4" ; 331 } else { 332 InstallOptionalHaikuImagePackage Subversion 333 : http://haiku.mlotz.ch/subversion-1.4.6-haiku-20080628.zip 334 : home 335 ; 336 } 337} 338 339 340# Vision 341if [ IsOptionalHaikuImagePackageAdded Vision ] { 342 if $(TARGET_ARCH) != x86 { 343 Echo "No optional package Vision available for $(TARGET_ARCH)" ; 344 } else if $(HAIKU_GCC_VERSION[1]) >= 4 { 345 InstallOptionalHaikuImagePackage Vision 346 : http://vision.sf.net/Vision-0.9.7-H-30032008-gcc4.zip 347 : apps 348 ; 349 AddSymlinkToHaikuImage home config be Applications 350 : /boot/apps/Vision-0.9.7-H-30032008/Vision ; 351 } else { 352 InstallOptionalHaikuImagePackage Vision 353 : http://vision.sf.net/Vision-0.9.7-H-30032008.zip 354 : apps 355 ; 356 AddSymlinkToHaikuImage home config be Applications 357 : /boot/apps/Vision-0.9.7-H-30032008/Vision ; 358 } 359} 360 361# VLC media player 362if [ IsOptionalHaikuImagePackageAdded VLC ] { 363 if $(TARGET_ARCH) != x86 { 364 Echo "No optional package VLC available for $(TARGET_ARCH)" ; 365 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 366 Echo "No optional package VLC available for gcc4" ; 367 } else { 368 InstallOptionalHaikuImagePackage VLC 369 : http://www.yellowbites.com/downloads/vlc-0.8.6c.zip 370 : apps 371 ; 372 AddSymlinkToHaikuImage home config be Applications 373 : /boot/apps/vlc-0.8.6c/vlc ; 374 } 375} 376 377 378# WonderBrush 379if [ IsOptionalHaikuImagePackageAdded WonderBrush ] { 380 if $(TARGET_ARCH) != x86 { 381 Echo "No optional package WonderBrush available for $(TARGET_ARCH)" ; 382 } else if $(HAIKU_GCC_VERSION[1]) >= 4 && $(isHybridBuild) = 0 { 383 Echo "No optional package WonderBrush available for gcc4" ; 384 } else { 385 InstallOptionalHaikuImagePackage WonderBrush 386 : http://www.yellowbites.com/downloads/WonderBrush-2.1.1-demo-x86-R5.zip 387 : apps 388 ; 389 AddSymlinkToHaikuImage home config be Applications 390 : /boot/apps/WonderBrush/WonderBrush ; 391 } 392} 393 394 395