[haiku-commits] haiku: hrev46117 - build/jam

  • From: ingo_weinhold@xxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Sat, 28 Sep 2013 16:46:41 +0200 (CEST)

hrev46117 adds 2 changesets to branch 'master'
old head: 52b81e5a60938a3e62d4e2f16eefa3582bc484a3
new head: 6eb7e259e9c9dfa1a88cf9cf388c0f3589512531
overview: http://cgit.haiku-os.org/haiku/log/?qt=range&q=6eb7e25+%5E52b81e5

----------------------------------------------------------------------------

ef6f476: Remove build/jam/HaikuImage
  
  Apparently accidentally reintroduced with the merge.

6eb7e25: libpackage_build: undefined weak symbols are unsupported
  
  ... also for gcc 4 (#8288), so we have to use the dlopen() method
  always when building on Haiku. Fixes the build on gcc 4 Haiku.

                                    [ Ingo Weinhold <ingo_weinhold@xxxxxx> ]

----------------------------------------------------------------------------

3 files changed, 4 insertions(+), 997 deletions(-)
build/jam/HaikuImage                      | 993 --------------------------
src/kits/package/solver/LibsolvSolver.cpp |   2 +-
src/kits/package/solver/Solver.cpp        |   6 +-

############################################################################

Commit:      ef6f476892bb6143a5265c4ba0f0bcb90cefc232
URL:         http://cgit.haiku-os.org/haiku/commit/?id=ef6f476
Author:      Ingo Weinhold <ingo_weinhold@xxxxxx>
Date:        Sat Sep 28 13:42:37 2013 UTC

Remove build/jam/HaikuImage

Apparently accidentally reintroduced with the merge.

----------------------------------------------------------------------------

diff --git a/build/jam/HaikuImage b/build/jam/HaikuImage
deleted file mode 100644
index 7f3624b..0000000
--- a/build/jam/HaikuImage
+++ /dev/null
@@ -1,993 +0,0 @@
-# This file defines what ends up on the Haiku image (respectively in the Haiku
-# installation directory) and it executes the rules building the image
-# (respectively installing the files in the installation directory).
-
-
-SYSTEM_BIN = [ FFilterByBuildFeatures
-       "["
-       addattr alert arp
-       base64 basename bash bc beep bfsinfo
-       cal cat catattr checkfs checkitout chgrp chmod chop chown chroot cksum 
clear
-       clockconfig cmp collectcatkeys comm compress copyattr CortexAddOnHost cp
-       csplit cut date dc dd desklink df diff diff3 dircolors dirname
-       diskimage draggers driveinfo dstcheck du dumpcatalog
-       echo eject env error expand expr
-       factor false fdinfo ffm filepanel find finddir FirstBootPrompt fmt fold
-       fortune frcode ftp ftpd funzip fwcontrol
-       gawk gdb@x86 getlimits groups gzip gzexe
-       hd head hey hostname
-       id ident ifconfig <bin>install installsound iroster isvolume
-       ideinfo@ide idestatus@ide
-       join kernel_debugger keymap keystore kill
-       less lessecho lesskey link linkcatkeys listarea listattr listimage 
listdev
-       listport listres listsem listusb ln locale locate logger login logname 
ls
-       lsindex
-       mail2mbox makebootable mbox2mail md5sum merge message mimeset mkdos 
mkdir
-       mkfifo mkfs mkindex mktemp modifiers mount mount_nfs mountvolume mv
-       netcat netstat nl nohup notify nproc
-       od open
-       passwd paste patch pathchk pc ping ping6 play playfile playsound playwav
-       pr prio printenv printf profile ps ptx pwd
-       query quit
-       rc readlink reindex release renice rlog rm rmattr rmindex rmdir roster
-       route
-       safemode screen_blanker screenmode screenshot sdiff setdecor setmime 
settype
-       setversion setvolume seq sha1sum shar shred shuf shutdown sleep sort
-       spamdbm split stat strace stty su sum sync sysinfo
-       tac tail tcpdump tcptester tee telnet telnetd test timeout top touch
-       <ncurses>tput tr traceroute translate trash true truncate tsort tty
-       uname unchop unexpand unmount uniq unlink unshar unzip unzipsfx
-       <bin>updatedb uptime urlwrapper useradd uudecode uuencode
-       vdir version vmstat
-       waitfor watch wc wget whoami writembr@x86 xargs xres
-       yes
-       zdiff zforce zgrep zip zipcloak <bin>zipgrep zipnote zipsplit zmore znew
-] ;
-
-SYSTEM_APPS = [ FFilterByBuildFeatures
-       AboutSystem ActivityMonitor BootManager@x86 CDPlayer CharacterMap
-       CodyCam Debugger DeskCalc Devices DiskProbe DiskUsage DriveSetup  
-       Expander GLInfo@x86 Icon-O-Matic Installer LaunchBox Magnify Mail
-       MediaConverter MediaPlayer MidiPlayer NetworkStatus PackageInstaller 
People
-       PoorMan PowerStatus ProcessController Screenshot ShowImage SoundRecorder
-       StyledEdit Terminal TextSearch TV WebWatch Workspaces
-] ;
-SYSTEM_PREFERENCES = [ FFilterByBuildFeatures
-       Appearance Backgrounds CPUFrequency DataTranslations
-       <preference>Deskbar E-mail FileTypes Keyboard Keymap Locale Media
-       Mouse Network Notifications Printers Screen ScreenSaver
-       Shortcuts Sounds Time Touchpad <preference>Tracker VirtualMemory
-] ;
-SYSTEM_DEMOS = [ FFilterByBuildFeatures
-       BSnow Chart Clock Cortex FontDemo GLTeapot@x86
-       $(HAIKU_INCLUDE_TRADEMARKS)Haiku3d@x86 Mandelbrot OverlayImage PatchBay
-       Pairs Playground Pulse Sudoku
-] ;
-SYSTEM_LIBS = [ FFilterByBuildFeatures
-       libbe.so libbsd.so libbnetapi.so
-       libdebug.so libdevice.so
-       libgame.so libGL.so@x86 libglut.so@x86
-       libgnu.so libmail.so libmedia.so libmidi.so libmidi2.so
-       libnetwork.so
-       <revisioned>libroot.so libroot-addon-icu.so
-       libscreensaver.so
-       libtextencoding.so libtiff.so libtracker.so libtranslation.so
-       $(HAIKU_SHARED_LIBSTDC++) $(HAIKU_SHARED_LIBSUPC++)
-] ;
-PRIVATE_SYSTEM_LIBS = [ FFilterByBuildFeatures
-       $(HAIKU_JPEG_CURRENT_LIB)
-       $(HAIKU_LIBPNG_CURRENT_LIB)
-       $(HAIKU_ZLIB_CURRENT_LIB)
-       $(HAIKU_FREETYPE_CURRENT_LIB)
-       libalm.so
-       libfluidsynth.so
-       libilmimf.so
-] ;
-SYSTEM_SERVERS = [ FFilterByBuildFeatures
-       app_server cddb_daemon debug_server input_server keystore_server 
mail_daemon
-       media_addon_server media_server midi_server mount_server net_server
-       notification_server power_daemon print_server print_addon_server 
registrar
-       syslog_daemon dns_resolver_server nfs4_idmapper_server
-] ;
-
-SYSTEM_NETWORK_DEVICES = ethernet loopback ;
-SYSTEM_NETWORK_DATALINK_PROTOCOLS = ethernet_frame <module>arp loopback_frame
-       ipv6_datagram ;
-#SYSTEM_NETWORK_PPP = ipcp modem pap pppoe ;
-SYSTEM_NETWORK_PROTOCOLS = ipv4 tcp udp icmp unix icmp6 ipv6 ;
-
-SYSTEM_ADD_ONS_ACCELERANTS = [ FFilterByBuildFeatures
-       x86,x86_64 @{
-               vesa.accelerant intel_extreme.accelerant
-       }@ # x86,x86_64
-       x86 @{
-               3dfx.accelerant ati.accelerant matrox.accelerant 
neomagic.accelerant
-               nvidia.accelerant intel_810.accelerant
-               radeon.accelerant radeon_hd.accelerant s3.accelerant 
-               #via.accelerant vmware.accelerant
-       }@ # x86
-] ;
-SYSTEM_ADD_ONS_TRANSLATORS = BMPTranslator EXRTranslator GIFTranslator
-       HVIFTranslator ICOTranslator JPEGTranslator JPEG2000Translator
-       PCXTranslator PNGTranslator PPMTranslator
-       RAWTranslator RTFTranslator SGITranslator STXTTranslator TGATranslator
-       TIFFTranslator WebPTranslator WonderBrushTranslator ICNSTranslator
-;
-SYSTEM_ADD_ONS_LOCALE_CATALOGS = <catalog-addon>plaintext ;
-SYSTEM_ADD_ONS_MEDIA = [ FFilterByBuildFeatures
-       cortex_audioadapter.media_addon
-       cortex_flanger.media_addon
-       dvb.media_addon@x86
-       hmulti_audio.media_addon
-       mixer.media_addon
-       opensound.media_addon
-       tone_producer_demo.media_addon
-       usb_webcam.media_addon
-       video_producer_demo.media_addon
-       video_window_demo.media_addon
-       firewire_dv.media_addon@x86
-       #legacy.media_addon
-       equalizer.media_addon
-       vst_host.media_addon
-] ;
-SYSTEM_ADD_ONS_MEDIA_PLUGINS = [ FFilterByBuildFeatures
-       ffmpeg@ffmpeg raw_decoder
-] ;
-SYSTEM_ADD_ONS_PRINT =
-       Canon\ LIPS3\ Compatible
-       Canon\ LIPS4\ Compatible
-       Gutenprint
-       PCL5\ Compatible
-       PCL6\ Compatible
-       PDF\ Writer
-       PS\ Compatible
-       Preview
-;
-SYSTEM_ADD_ONS_PRINT_TRANSPORT = HP\ JetDirect IPP LPR
-       # Parallel\ Port
-       Print\ To\ File Serial\ Port USB\ Port
-;
-SYSTEM_ADD_ONS_SCREENSAVERS = [ FFilterByBuildFeatures
-       Butterfly DebugNow Flurry@x86
-       GLife@x86 $(HAIKU_INCLUDE_TRADEMARKS)Haiku Icons IFS Leaves
-       Message Spider Gravity@x86
-] ;
-SYSTEM_ADD_ONS_DRIVERS_AUDIO = auich auvia echo3g emuxki hda ice1712 sis7018 ;
-SYSTEM_ADD_ONS_DRIVERS_AUDIO_OLD = ; #cmedia usb_audio ;
-SYSTEM_ADD_ONS_DRIVERS_GRAPHICS = [ FFilterByBuildFeatures
-       x86,x86_64 @{
-               vesa intel_extreme 
-       }@ # x86,x86_64
-       x86 @{
-               ati 3dfx intel_810 matrox neomagic nvidia radeon radeon_hd
-               s3 #via vmware
-       }@ # x86
-] ;
-SYSTEM_ADD_ONS_DRIVERS_MIDI = emuxki ice1712 usb_midi ;
-SYSTEM_ADD_ONS_DRIVERS_NET = [ FFilterByBuildFeatures
-       x86,x86_64 @{
-               3com atheros813x ar81xx attansic_l1 attansic_l2 broadcom440x
-               broadcom570x dec21xxx ipro100 ipro1000 jmicron2x0 marvell_yukon 
nforce
-               pcnet rtl8139 rtl81xx sis19x syskonnect via_rhine vt612x
-       }@ # x86_64
-
-       etherpci pegasus sis900 usb_davicom usb_asix usb_ecm wb840
-
-       # WLAN drivers
-       x86 @{
-               aironetwifi atheroswifi broadcom43xx
-               iprowifi2100 iprowifi2200 iprowifi3945
-               iprowifi4965 marvell88w8363 marvell88w8335
-               ralinkwifi wavelanwifi
-       }@ # x86
-
-       # WWAN drivers
-       #usb_beceemwmx@gpl
-] ;
-SYSTEM_ADD_ONS_DRIVERS_POWER = [ FFilterByBuildFeatures acpi_button@x86 ] ;
-SYSTEM_ADD_ONS_BUS_MANAGERS = [ FFilterByBuildFeatures
-       ata@ata pci ps2@x86,x86_64 isa@x86,x86_64
-       ide@ide scsi config_manager agp_gart@x86,x86_64 usb firewire@x86 
acpi@x86
-       virtio random
-] ;
-SYSTEM_ADD_ONS_FILE_SYSTEMS = bfs btrfs cdda exfat ext2 fat iso9660 nfs nfs4
-       attribute_overlay write_overlay ntfs reiserfs@x86 udf googlefs ;
-
-# wifi firmware
-for driver in $(SYSTEM_ADD_ONS_DRIVERS_NET) {
-       local package = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_PACKAGE) ] ;
-       local archive = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_ARCHIVE) ] ;
-       local extract = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_DO_EXTRACT) 
] ;
-       if $(archive) {
-               AddWifiFirmwareToHaikuImage $(driver) : $(package) : $(archive)
-                       : $(extract) ;
-       }
-       local packages = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_PACKAGES) 
] ;
-       local archives = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_ARCHIVES) 
] ;
-       for archive in $(archives) {
-               AddWifiFirmwareToHaikuImage $(driver) : $(packages[1]) : 
$(archive)
-                       : $(extract) ;
-               packages = $(packages[2-]) ;
-       }
-}
-
-
-# modules
-AddFilesToHaikuImage system add-ons kernel bus_managers
-       : $(SYSTEM_ADD_ONS_BUS_MANAGERS) ;
-AddFilesToHaikuImage system add-ons kernel busses agp_gart
-       : <agp_gart>intel@x86,x86_64 ;
-
-if $(HAIKU_ATA_STACK) = 1 {
-       AddFilesToHaikuImage system add-ons kernel busses ata
-               : generic_ide_pci it8211 legacy_sata silicon_image_3112 
ide_isa@x86 ;
-} else {
-       AddFilesToHaikuImage system add-ons kernel busses ide
-               : generic_ide_pci it8211 legacy_sata silicon_image_3112 
ide_isa@x86 ;
-}
-
-AddFilesToHaikuImage system add-ons kernel busses random
-       : virtio_rng ;
-AddFilesToHaikuImage system add-ons kernel busses scsi
-       : ahci virtio_scsi ;
-AddFilesToHaikuImage system add-ons kernel busses usb
-       : <usb>uhci <usb>ohci <usb>ehci ;
-AddFilesToHaikuImage system add-ons kernel busses virtio
-       : virtio_pci ;
-AddFilesToHaikuImage system add-ons kernel console : vga_text ;
-AddFilesToHaikuImage system add-ons kernel debugger
-       : <kdebug>demangle <kdebug>disasm@x86 <kdebug>hangman
-         <kdebug>invalidate_on_exit <kdebug>usb_keyboard <kdebug>qrencode
-         <kdebug>run_on_exit ;
-AddFilesToHaikuImage system add-ons kernel file_systems
-       : $(SYSTEM_ADD_ONS_FILE_SYSTEMS) ;
-AddFilesToHaikuImage system add-ons kernel generic
-       : ata_adapter@ata bios@x86,x86_64 dpc ide_adapter@ide
-               locked_pool mpu401 scsi_periph <module>tty ;
-AddFilesToHaikuImage system add-ons kernel partitioning_systems
-       : amiga_rdb apple efi_gpt intel session ;
-AddFilesToHaikuImage system add-ons kernel interrupt_controllers
-       : openpic@ppc ;
-
-if $(TARGET_ARCH) = x86 || $(TARGET_ARCH) = x86_64 {
-       AddFilesToHaikuImage system add-ons kernel cpu : generic_x86 ;
-}
-
-# drivers
-AddNewDriversToHaikuImage disk scsi    : scsi_cd scsi_disk ;
-AddNewDriversToHaikuImage disk virtual : virtio_block ;
-AddNewDriversToHaikuImage power : enhanced_speedstep@x86 ;
-AddNewDriversToHaikuImage power : acpi_battery@x86 ;
-#AddNewDriversToHaikuImage display : display_controls@x86 ;
-
-# legacy drivers
-AddDriversToHaikuImage                         : console dprintf null
-                                                                         
<driver>tty zero ;
-AddDriversToHaikuImage audio hmulti    : $(SYSTEM_ADD_ONS_DRIVERS_AUDIO) ;
-AddDriversToHaikuImage audio old       : $(SYSTEM_ADD_ONS_DRIVERS_AUDIO_OLD) ;
-AddDriversToHaikuImage midi                    : 
$(SYSTEM_ADD_ONS_DRIVERS_MIDI) ;
-AddDriversToHaikuImage bus                     : usb_raw fw_raw@x86 ;
-AddDriversToHaikuImage disk floppy     : pc_floppy@x86 ;
-AddDriversToHaikuImage disk usb                : usb_disk ;
-AddDriversToHaikuImage disk usb                : usb_floppy ;
-AddDriversToHaikuImage printer usb     : usb_printer ;
-AddDriversToHaikuImage disk virtual    : nbd ;
-AddDriversToHaikuImage dvb                     : cx23882 ;
-AddDriversToHaikuImage graphics                : 
$(SYSTEM_ADD_ONS_DRIVERS_GRAPHICS) ;
-AddDriversToHaikuImage input           : ps2_hid usb_hid wacom ;
-AddDriversToHaikuImage misc                    : <driver>poke <driver>mem ;
-AddDriversToHaikuImage net                     : $(SYSTEM_ADD_ONS_DRIVERS_NET) 
;
-AddDriversToHaikuImage ports           : usb_serial ;
-AddDriversToHaikuImage power           : $(SYSTEM_ADD_ONS_DRIVERS_POWER) ;
-
-# kernel
-AddFilesToHaikuImage system : <revisioned>kernel_$(TARGET_ARCH) ;
-
-# libs
-AddLibrariesToHaikuHybridImage system lib
-       : $(SYSTEM_LIBS) $(PRIVATE_SYSTEM_LIBS) ;
-
-# libnetwork.so replaces quite a few libraries
-SYSTEM_LIBS_LIBNETWORK_ALIASES
-       = libsocket.so libbind.so libnet.so ;
-
-if $(HAIKU_GCC_VERSION[1]) = 2 {
-       local lib ;
-       for lib in $(SYSTEM_LIBS_LIBNETWORK_ALIASES) {
-               AddSymlinkToHaikuHybridImage system lib : libnetwork.so : $(lib)
-                       : : true ;
-       }
-
-       AddSymlinkToHaikuHybridImage system lib : libbnetapi.so : libnetapi.so
-               : : true ;
-}
-
-
-# libGL.so has GLU (like BeOS) built-in
-SYSTEM_LIBS_LIBGL_ALIASES = libGLU.so ;
-
-if $(TARGET_ARCH) = x86 {
-       local lib ;
-       for lib in $(SYSTEM_LIBS_LIBGL_ALIASES) {
-               AddSymlinkToHaikuHybridImage system lib : libGL.so : $(lib) : : 
true ;
-       }
-}
-
-
-SYSTEM_LIBS_ALIASES =
-       $(SYSTEM_LIBS_LIBNETWORK_ALIASES)
-       libnetapi.so
-       $(SYSTEM_LIBS_LIBGL_ALIASES)
-;
-
-OPTIONAL_LIBS_ALIASES =
-       libfreetype.so
-       libjpeg.so
-       libpng.so
-       libz.so
-;
-
-# libfreetype.so links to the current freetype lib
-AddSymlinkToHaikuHybridImage system lib : $(HAIKU_FREETYPE_CURRENT_LIB:BS)
-       : $(HAIKU_FREETYPE_CURRENT_LINK) : : true ;
-AddSymlinkToHaikuHybridImage system lib : $(HAIKU_FREETYPE_CURRENT_LINK)
-       : libfreetype.so : : true ;
-
-# libpng.so links to the current libpng
-AddSymlinkToHaikuHybridImage system lib : $(HAIKU_LIBPNG_CURRENT_LIB:BS)
-       : $(HAIKU_LIBPNG_CURRENT_LINK) : : true ;
-AddSymlinkToHaikuHybridImage system lib : $(HAIKU_LIBPNG_CURRENT_LINK)
-       : libpng.so : : true ;
-
-# libjpeg.so links to the current libjpeg
-AddSymlinkToHaikuHybridImage system lib : $(HAIKU_JPEG_CURRENT_LIB:BS)
-       : $(HAIKU_JPEG_CURRENT_LINK) : : true ;
-AddSymlinkToHaikuHybridImage system lib : $(HAIKU_JPEG_CURRENT_LINK)
-       : libjpeg.so : : true ;
-
-# zlib.so links to the current zlib
-AddSymlinkToHaikuHybridImage system lib : $(HAIKU_ZLIB_CURRENT_LIB:BS)
-       : $(HAIKU_ZLIB_CURRENT_LINK) : : true ;
-AddSymlinkToHaikuHybridImage system lib : $(HAIKU_ZLIB_CURRENT_LINK)
-       : libz.so : : true ;
-
-# servers
-AddFilesToHaikuImage system servers : $(SYSTEM_SERVERS) ;
-
-# apps
-AddFilesToHaikuImage system                            : runtime_loader 
Deskbar Tracker ;
-AddFilesToHaikuImage system bin                        : $(SYSTEM_BIN) 
consoled ;
-AddFilesToHaikuImage system apps               : $(SYSTEM_APPS) ;
-AddFilesToHaikuImage system preferences        : $(SYSTEM_PREFERENCES) ;
-AddFilesToHaikuImage system demos              : $(SYSTEM_DEMOS) ;
-
-SEARCH on which = [ FDirName $(HAIKU_TOP) data bin ] ;
-AddFilesToHaikuImage system bin                        : which ;
-SEARCH on installoptionalpackage = [ FDirName $(HAIKU_TOP) data bin ] ;
-AddFilesToHaikuImage system bin                        : 
installoptionalpackage ;
-SEARCH on install-wifi-firmwares.sh = [ FDirName $(HAIKU_TOP) data bin ] ;
-AddFilesToHaikuImage system bin                        : 
install-wifi-firmwares.sh ;
-SEARCH on welcome = [ FDirName $(HAIKU_TOP) data bin ] ;
-AddFilesToHaikuImage system bin : welcome ;
-AddSymlinkToHaikuImage home Desktop
-       : /boot/system/bin/welcome : Welcome ;
-SEARCH on userguide = [ FDirName $(HAIKU_TOP) data bin ] ;
-AddFilesToHaikuImage system bin : userguide ;
-AddSymlinkToHaikuImage home Desktop
-       : /boot/system/bin/userguide : User\ Guide ;
-
-# Add the files to be used by installoptionalpackage.
-AddDirectoryToHaikuImage common data optional-packages ;
-local optional-pkg-files = BuildFeatures OptionalPackageDependencies
-       OptionalPackages OptionalLibPackages ;
-for name in $(optional-pkg-files) {
-       local file = [ FDirName $(HAIKU_TOP) build jam $(name) ] ;
-       AddFilesToHaikuImage common data optional-packages : $(file) ;
-}
-AddInstalledPackagesFileToHaikuImage ;
-
-AddSymlinkToHaikuImage system bin : bash : sh ;
-AddSymlinkToHaikuImage system bin : trash : untrash ;
-
-AddSymlinkToHaikuImage home Desktop : /boot/home : Home ;
-
-# Mailbox folders and symlink
-AddDirectoryToHaikuImage home mail draft ;
-AddDirectoryToHaikuImage home mail in ;
-AddDirectoryToHaikuImage home mail out ;
-
-AddSymlinkToHaikuImage home config : settings/deskbar : be ;
-# Deskbar Application links
-AddDirectoryToHaikuImage home config settings deskbar Applications ;
-DESKBAR_APPLICATIONS = ActivityMonitor CharacterMap CodyCam CDPlayer DeskCalc
-       Devices DiskProbe DriveSetup DiskUsage Expander Icon-O-Matic Installer
-       Magnify Mail MediaConverter MediaPlayer MidiPlayer People PoorMan
-       Screenshot SoundRecorder StyledEdit Terminal TV
-;
-local linkTarget ;
-for linkTarget in $(DESKBAR_APPLICATIONS) {
-       AddSymlinkToHaikuImage home config settings deskbar Applications
-               : /boot/system/apps/$(linkTarget) : $(linkTarget) ;
-}
-
-# Deskbar Desktop applets links
-AddDirectoryToHaikuImage home config settings deskbar Desktop\ applets ;
-DESKBAR_DESKTOP_APPLETS = LaunchBox NetworkStatus PowerStatus ProcessController
-       Workspaces
-;
-for linkTarget in $(DESKBAR_DESKTOP_APPLETS) {
-       AddSymlinkToHaikuImage home config settings deskbar Desktop\ applets
-               : /boot/system/apps/$(linkTarget) : $(linkTarget) ;
-}
-
-# Deskbar Preferences links
-AddDirectoryToHaikuImage home config settings deskbar Preferences ;
-DESKBAR_PREFERENCES = $(SYSTEM_PREFERENCES:B) ;
-for linkTarget in $(DESKBAR_PREFERENCES) {
-       AddSymlinkToHaikuImage home config settings deskbar Preferences
-               : /boot/system/preferences/$(linkTarget)
-               : $(linkTarget) ;
-}
-
-# Deskbar Demo links
-AddDirectoryToHaikuImage home config settings deskbar Demos ;
-for linkTarget in $(SYSTEM_DEMOS) {
-       AddSymlinkToHaikuImage home config settings deskbar Demos
-               : /boot/system/demos/$(linkTarget) : $(linkTarget) ;
-}
-
-AddSymlinkToHaikuImage system bin : less : more ;
-AddSymlinkToHaikuImage system bin : gzip : gunzip ;
-AddSymlinkToHaikuImage system bin : gzip : zcat ;
-AddSymlinkToHaikuImage system bin : zdiff : zcmp ;
-AddSymlinkToHaikuImage system bin : unzip : zipinfo ;
-AddSymlinkToHaikuImage system bin : gawk : awk ;
-
-
-# scripts and data files
-local bootScripts = Bootscript Bootscript.cd SetupEnvironment Netscript
-       InstallerInitScript InstallerFinishScript ;
-SEARCH on $(bootScripts) = [ FDirName $(HAIKU_TOP) data system boot ] ;
-AddFilesToHaikuImage system boot : $(bootScripts) ;
-
-local userBootScripts = UserBootscript UserSetupEnvironment.sample ;
-SEARCH on $(userBootScripts) = [ FDirName $(HAIKU_TOP) data config boot ] ;
-AddFilesToHaikuImage home config boot : $(userBootScripts) ;
-
-# Add boot launch directory
-AddDirectoryToHaikuImage home config boot launch ;
-
-local logoArtwork =
-       $(HAIKU_INCLUDE_TRADEMARKS)"HAIKU logo - white on blue - big.png"
-       $(HAIKU_INCLUDE_TRADEMARKS)"HAIKU logo - white on blue - normal.png" ;
-SEARCH on $(logoArtwork) = [ FDirName $(HAIKU_TOP) data artwork ] ;
-AddFilesToHaikuImage system data artwork : $(logoArtwork) ;
-
-AddDirectoryToHaikuImage system data sounds ;
-
-# Add mail provider infos.
-AddFilesToHaikuImage home config settings Mail ProviderInfo :
-       $(HAIKU_PROVIDER_INFOS) ;
-
-# Mail spell check dictionaries
-local spellFiles = words geekspeak ;
-spellFiles = $(spellFiles:G=spell) ;
-SEARCH on $(spellFiles)
-       = [ FDirName $(HAIKU_TOP) src apps mail ] ;
-AddFilesToHaikuImage system data spell_check word_dictionary : $(spellFiles) ;
-
-local etcDir = [ FDirName $(HAIKU_TOP) data etc ] ;
-local etcFiles = inputrc profile ;
-etcFiles = $(etcFiles:G=etc) ;
-SEARCH on $(etcFiles) = [ FDirName $(etcDir) ] ;
-etcFiles += <etc>termcap <etc>sysless <etc>sysless.in ;
-AddFilesToHaikuImage common etc : $(etcFiles) ;
-
-local profileFiles = [ Glob $(etcDir)/profile.d : *.sh ] ;
-profileFiles = $(profileFiles:G=profile-d) ;
-AddDirectoryToHaikuImage common etc profile.d ;
-AddFilesToHaikuImage common etc profile.d : $(profileFiles) ;
-
-#local bashCompletionFiles = [ Glob $(etcDir)/bash_completion.d : * ] ;
-#local bashCompletionHelperFiles
-#    = [ Glob $(etcDir)/bash_completion.d/helpers : * ] ;
-#bashCompletionFiles = $(bashCompletionFiles:G=bash-completion) ;
-#bashCompletionHelperFiles = 
$(bashCompletionHelperFiles:G=bash-completion-hlp) ;
-#AddDirectoryToHaikuImage common etc bash_completion.d ;
-#AddDirectoryToHaikuImage common etc bash_completion.d helpers ;
-#AddFilesToHaikuImage common etc bash_completion.d : $(bashCompletionFiles) ;
-#AddFilesToHaikuImage common etc bash_completion.d helpers
-#    : $(bashCompletionHelperFiles) ;
-
-local fortuneFiles = [ Glob $(HAIKU_TOP)/data/system/data/fortunes
-       : [a-zA-Z0-9]* ] ;
-fortuneFiles = $(fortuneFiles:G=data!fortunes) ;
-AddFilesToHaikuImage system data fortunes : $(fortuneFiles) ;
-
-local fontDir = [ FDirName $(HAIKU_TOP) data system data fonts ] ;
-local psFonts = [ Glob $(fontDir)/psfonts : *.afm *.pfb ] ;
-local ttFonts = [ Glob $(fontDir)/ttfonts : *.ttf ] ;
-AddFilesToHaikuImage system data fonts psfonts : $(psFonts) ;
-AddFilesToHaikuImage system data fonts ttfonts : $(ttFonts) ;
-
-local cannaDir = [ FDirName $(HAIKU_TOP) data system data Canna ] ;
-local cannaDefault = [ Glob $(cannaDir)/default : *.canna *.gz ] ;
-local cannaDic = [ Glob $(cannaDir)/dic : *.cbp ] ;
-local cannaDicCanna = [ Glob $(cannaDir)/dic/canna
-       : *.cld *.ctd *.cbd *.dir ] ;
-AddFilesToHaikuImage system data Canna default : $(cannaDefault) ;
-AddFilesToHaikuImage system data Canna dic : $(cannaDic) ;
-AddFilesToHaikuImage system data Canna dic canna : $(cannaDicCanna) ;
-AddDirectoryToHaikuImage system data Canna dic group ;
-AddDirectoryToHaikuImage system data Canna dic user ;
-
-local keymapFiles = [ Glob [ FDirName $(HAIKU_TOP) src data keymaps ]
-       : *.keymap ] ;
-keymapFiles = $(keymapFiles:BG=keymap) ;
-AddFilesToHaikuImage system data Keymaps : $(keymapFiles) ;
-AddSymlinkToHaikuImage system data Keymaps : Swedish : Finnish ;
-AddSymlinkToHaikuImage system data Keymaps : Slovene : Croatian ;
-AddSymlinkToHaikuImage system data Keymaps : US-International : Brazilian ;
-
-# Copy keyboard layout files to the image one-by-one.
-local keyboardLayoutsDir
-       = [ FDirName $(HAIKU_TOP) data system data KeyboardLayouts ] ;
-local keyboardLayoutFiles =
-       "Generic 104-key"
-       "Generic 105-key International"
-       "Kinesis Advantage"
-       "Kinesis Ergo Elan International"
-       "TypeMatrix 2030" ;
-keyboardLayoutFiles = $(keyboardLayoutFiles:G=keyboard-layout) ;
-SEARCH on $(keyboardLayoutFiles) = $(keyboardLayoutsDir) ;
-AddFilesToHaikuImage system data KeyboardLayouts
-       : $(keyboardLayoutFiles) ;
-
-# Add Apple Aluminum keyboard layout files to the image in an Apple Aluminum
-# subdirectory. The subdirectory is turned into a submenu in the Layout menu
-# of the Keymap preference app.
-local appleAluminumDir
-       = [ FDirName $(HAIKU_TOP) data system data KeyboardLayouts
-               Apple\ Aluminum ] ;
-local appleAluminumFiles =
-       "Apple Aluminium Extended International"
-       "Apple Aluminium International"
-       "Apple Aluminum (US)"
-       "Apple Aluminum Extended (US)" ;
-appleAluminumFiles = $(appleAluminumFiles:G=keyboard-layout) ;
-SEARCH on $(appleAluminumFiles) = $(appleAluminumDir) ;
-AddFilesToHaikuImage system data KeyboardLayouts Apple\ Aluminum
-       : $(appleAluminumFiles) ;
-
-# Add ThinkPad keyboard layout files to the image in a ThinkPad
-# subdirectory. The subdirectory is turned into a submenu in the Layout menu
-# of the Keymap preference app.
-local thinkpadDir
-       = [ FDirName $(HAIKU_TOP) data system data KeyboardLayouts ThinkPad ] ;
-local thinkPadFiles =
-       "ThinkPad (US)"
-       "ThinkPad International"
-       "ThinkPad T400s (US)"
-       "ThinkPad T400s International"
-       "ThinkPad X1 (US)"
-       "ThinkPad X1 International"
-       "ThinkPad X100e (US)"
-       "ThinkPad X100e International" ;
-thinkPadFiles = $(thinkPadFiles:G=keyboard-layout) ;
-SEARCH on $(thinkPadFiles) = $(thinkpadDir) ;
-AddFilesToHaikuImage system data KeyboardLayouts ThinkPad
-       : $(thinkPadFiles) ;
-
-local driverSettingsFiles = <driver-settings>kernel ;
-SEARCH on $(driverSettingsFiles)
-       = [ FDirName $(HAIKU_TOP) data settings kernel drivers ] ;
-AddFilesToHaikuImage home config settings kernel drivers
-       : $(driverSettingsFiles) ;
-
-local networkSettingsFiles = <network-settings>services ;
-SEARCH on $(networkSettingsFiles)
-       = [ FDirName $(HAIKU_TOP) data settings network ] ;
-AddFilesToHaikuImage common settings network : $(networkSettingsFiles) ;
-
-# post install scripts and fresh install indicator file
-local postInstallFiles = add_catalog_entry_attributes.sh
-       default_deskbar_items.sh mime_update.sh ;
-postInstallFiles = $(postInstallFiles:G=post-install) ;
-SEARCH on $(postInstallFiles)
-       = [ FDirName $(HAIKU_TOP) data common boot post_install ] ;
-SEARCH on <post-install>fresh_install
-       = [ FDirName $(HAIKU_TOP) data common settings ] ;
-AddFilesToHaikuImage common boot post_install : $(postInstallFiles) ;
-AddFilesToHaikuImage common settings : <post-install>fresh_install ;
-
-# boot loader
-AddFilesToHaikuImage system : haiku_loader ;
-
-# boot module links
-AddBootModuleSymlinksToHaikuImage
-       acpi@x86 ata@ata pci isa@x86 config_manager dpc
-       ide@ide scsi usb
-       openpic@ppc
-       ata_adapter@ata ide_adapter@ide locked_pool scsi_periph
-       ahci generic_ide_pci it8211 legacy_sata silicon_image_3112
-       ide_isa@x86
-       <usb>uhci <usb>ohci <usb>ehci
-       scsi_cd scsi_disk usb_disk
-       virtio virtio_pci virtio_block virtio_scsi
-       efi_gpt
-       intel
-       bfs
-;
-
-# add-ons
-AddFilesToHaikuImage system add-ons accelerants
-       : $(SYSTEM_ADD_ONS_ACCELERANTS) ;
-
-# OpenGL renderers
-if $(TARGET_ARCH) = x86 {
-       if $(HAIKU_GCC_VERSION[1]) = 2 {
-               AddFilesToHaikuHybridImage system add-ons opengl
-                       : Legacy\ Software\ Rasterizer : : true ;
-       } else {
-               AddFilesToHaikuHybridImage system add-ons opengl
-                       : Software\ Rasterizer : : true ;
-               # Future Gallium3d
-       }
-}
-
-AddFilesToHaikuHybridImage system add-ons Translators
-       : $(SYSTEM_ADD_ONS_TRANSLATORS) : : true ;
-AddFilesToHaikuImage system add-ons locale catalogs
-       : $(SYSTEM_ADD_ONS_LOCALE_CATALOGS) ;
-AddFilesToHaikuHybridImage system add-ons locale catalogs
-       : $(SYSTEM_ADD_ONS_LOCALE_CATALOGS) : : true ;
-AddFilesToHaikuImage system add-ons mail_daemon inbound_protocols : POP3 IMAP ;
-AddFilesToHaikuImage system add-ons mail_daemon outbound_protocols : SMTP ;
-AddFilesToHaikuImage system add-ons mail_daemon inbound_filters
-       : MatchHeader SpamFilter NewMailNotification ;
-AddFilesToHaikuImage system add-ons mail_daemon outbound_filters : Fortune ;
-AddFilesToHaikuImage system add-ons media : $(SYSTEM_ADD_ONS_MEDIA) ;
-AddFilesToHaikuImage system add-ons media plugins
-       : $(SYSTEM_ADD_ONS_MEDIA_PLUGINS) ;
-AddFilesToHaikuImage system add-ons Tracker
-       : FileType Mark\ as… Mark\ as\ Read Open\ Target\ Folder
-       Open\ Terminal ZipOMatic ;
-AddSymlinkToHaikuImage system add-ons Tracker
-       : /boot/system/preferences/Backgrounds : Background ;
-AddSymlinkToHaikuImage system add-ons Tracker
-       : /boot/system/apps/TextSearch : TextSearch ;
-AddSymlinkToHaikuImage system add-ons Tracker
-       : /boot/system/apps/DiskUsage : DiskUsage ;
-AddFilesToHaikuImage system add-ons input_server devices
-       : <input>keyboard <input>mouse <input>tablet <input>wacom ;
-AddFilesToHaikuImage system add-ons input_server filters
-       : screen_saver shortcut_catcher ;
-AddFilesToHaikuImage system add-ons kernel network
-       : <net>notifications stack ;
-AddFilesToHaikuImage system add-ons kernel network : dns_resolver ;
-AddFilesToHaikuImage system add-ons kernel network devices
-       : $(SYSTEM_NETWORK_DEVICES) ;
-AddFilesToHaikuImage system add-ons kernel network datalink_protocols
-       : $(SYSTEM_NETWORK_DATALINK_PROTOCOLS) ;
-AddFilesToHaikuImage system add-ons kernel network ppp
-       : $(SYSTEM_NETWORK_PPP) ;
-AddFilesToHaikuImage system add-ons kernel network protocols
-       : $(SYSTEM_NETWORK_PROTOCOLS) ;
-AddFilesToHaikuImage system add-ons Print : $(SYSTEM_ADD_ONS_PRINT) ;
-AddFilesToHaikuImage system add-ons Print transport
-       : $(SYSTEM_ADD_ONS_PRINT_TRANSPORT) ;
-AddFilesToHaikuImage system add-ons Screen\ Savers
-       : $(SYSTEM_ADD_ONS_SCREENSAVERS) ;
-
-AddFilesToHaikuImage system add-ons disk_systems
-       : <disk_system>intel <disk_system>gpt <disk_system>bfs 
<disk_system>ntfs ;
-
-# decorators
-AddDirectoryToHaikuImage home config add-ons decorators ;
-#AddFilesToHaikuImage home config add-ons decorators : ;
-
-# create directories that will remain empty
-AddDirectoryToHaikuImage common bin ;
-AddDirectoryToHaikuImage common include ;
-AddDirectoryToHaikuImage common lib ;
-AddDirectoryToHaikuImage home Desktop ;
-AddDirectoryToHaikuImage home config bin ;
-AddDirectoryToHaikuImage home config lib ;
-AddDirectoryToHaikuImage home mail ;
-AddDirectoryToHaikuImage common var empty ;
-AddDirectoryToHaikuImage common var log ;
-AddDirectoryToHaikuImage common cache tmp ;
-
-AddDirectoryToHaikuImage home config add-ons kernel drivers bin ;
-AddDirectoryToHaikuImage home config add-ons kernel drivers dev ;
-AddDirectoryToHaikuImage home config add-ons input_server devices ;
-AddDirectoryToHaikuImage home config add-ons input_server filters ;
-AddDirectoryToHaikuImage home config add-ons input_server methods ;
-AddDirectoryToHaikuImage home config add-ons media plugins ;
-AddDirectoryToHaikuImage home config add-ons Tracker ;
-AddDirectoryToHaikuImage home config add-ons Print ;
-AddDirectoryToHaikuImage home config add-ons Screen\ Savers ;
-AddDirectoryToHaikuImage home config add-ons Translators ;
-AddDirectoryToHaikuImage system data synth ;
-AddDirectoryToHaikuImage system add-ons input_server methods ;
-
-# optional
-AddFilesToHaikuImage optional system add-ons input_server methods : canna ;
-
-# printers
-AddDirectoryToHaikuImage home config settings printers Preview
-       : home-config-settings-printers-preview.rdef ;
-AddDirectoryToHaikuImage home config settings printers "Save as PDF"
-       : home-config-settings-printers-save-as-pdf.rdef ;
-
-# PDF Writer enconding files
-CopyDirectoryToHaikuImage system data
-       : [ FDirName $(HAIKU_TOP) src add-ons print drivers pdf encoding ]
-       : "PDF Writer" : -x Jamfile ;
-
-# Gutenprint data files
-CopyDirectoryToHaikuImage system data
-       : [ FDirName $(HAIKU_TOP) src libs print libgutenprint src xml ]
-       : gutenprint : -x *.c -x Makefile.am -x Makefile.in ;
-
-# dvb channel settings
-CopyDirectoryToHaikuImage home config settings Media
-       : [ FDirName $(HAIKU_TOP) data settings media dvb ]
-       : dvb : -x Jamfile ;
-
-# licenses
-CopyDirectoryToHaikuImage system data
-       : [ FDirName $(HAIKU_TOP) data system data licenses ]
-       : licenses ;
-
-# Copy documentation as per DiskUsage's license requirement.
-CopyDirectoryToHaikuImage system documentation
-       : [ FDirName $(HAIKU_TOP) docs apps diskusage ]
-       : diskusage ;
-
-# Copy documentation as per PDFlib Lite's license requirement.
-CopyDirectoryToHaikuImage system documentation
-       : [ FDirName $(HAIKU_TOP) src libs pdflib doc ]
-       : pdflib ;
-
-# Copy sample programs as per PDFlib Lite's license requirement.
-CopyDirectoryToHaikuImage develop sample-code
-       : [ FDirName $(HAIKU_TOP) src libs pdflib bind pdflib ]
-       : pdflib ;
-
-# Copy OpenGL kit headers into image
-if $(TARGET_ARCH) = x86 {
-       CopyDirectoryToHaikuImage develop headers os opengl
-               : [ FDirName $(HAIKU_MESA_HEADERS) GL ] ;
-       CopyDirectoryToHaikuImage develop headers os opengl
-               : [ FDirName $(HAIKU_GLU_HEADERS) GL ] ;
-}
-
-#pragma mark - Optional Packages
-
-
-HAIKU_IMAGE_OPTIONAL_PACKAGE_DESCRIPTIONS = ;
-
-include [ FDirName $(HAIKU_BUILD_RULES_DIR) OptionalPackages ] ;
-include [ FDirName $(HAIKU_BUILD_RULES_DIR) OptionalTestPackages ] ;
-include [ FDirName $(HAIKU_BUILD_RULES_DIR) OptionalLibPackages ] ;
-
-local optionalPackageDescriptions ;
-if $(HAIKU_IMAGE_OPTIONAL_PACKAGE_DESCRIPTIONS) {
-       optionalPackageDescriptions = 
<haiku-image>optional_package_descriptions ;
-       MakeLocate $(optionalPackageDescriptions)
-               : $(HAIKU_COMMON_PLATFORM_OBJECT_DIR) ;
-
-       Depends $(optionalPackageDescriptions)
-               : $(HAIKU_IMAGE_OPTIONAL_PACKAGE_DESCRIPTIONS) ;
-
-       actions together BuildOptionalPackageDescriptions
-       {
-               cat $(2) > $(1)
-       }
-
-       BuildOptionalPackageDescriptions $(optionalPackageDescriptions)
-               : $(HAIKU_IMAGE_OPTIONAL_PACKAGE_DESCRIPTIONS) ;
-}
-
-
-#pragma mark - Alternative GCC Libraries
-
-
-# We build a zip archive containing the libraries built with the alternative
-# GCC and unzip onto our image. Building the archive is done by a sub-jam.
-include [ FDirName $(HAIKU_BUILD_RULES_DIR) AlternativeGCCArchive ] ;
-
-if $(HAIKU_ADD_ALTERNATIVE_GCC_LIBS) = 1
-               && $(HAIKU_ALTERNATIVE_GCC_OUTPUT_DIR) {
-       # let another jam build a zip with the system libraries
-       rule InvokeSubJam target : directory : jamLine
-       {
-               DIRECTORY on $(target) = $(directory) ;
-               COMMAND_LINE on $(target) = $(jamLine) ;
-               local optionalPackages = $(HAIKU_ADDED_OPTIONAL_PACKAGES:J=/) ;
-               OPTIONAL_PACKAGES on $(target) = $(optionalPackages:E="") ;
-               Always $(target) ;
-               InvokeSubJam1 $(target) ;
-       }
-
-       actions InvokeSubJam1
-       {
-               cd $(DIRECTORY)
-               export HAIKU_IGNORE_USER_BUILD_CONFIG=1
-               export HAIKU_ADD_OPTIONAL_PACKAGES=$(OPTIONAL_PACKAGES)
-               export HAIKU_PRIMARY_GCC=$(HAIKU_GCC_VERSION[1])
-               # NOTE: depending on when InvokeSubJam is called, you may end 
up with
-               # 2 * n - 1 jobs in total.
-               $(JAM:E=jam) -q -j$(JAMJOBS) $(COMMAND_LINE) ;
-       }
-
-       local otherAlternativeSystemLibsZip
-               = <other-image>alternative_system_libs.zip ;
-       MakeLocate $(otherAlternativeSystemLibsZip)
-               : $(HAIKU_ALTERNATIVE_GCC_OUTPUT_DIR) ;
-
-       InvokeSubJam $(otherAlternativeSystemLibsZip)
-               : $(HAIKU_ALTERNATIVE_GCC_OUTPUT_DIR)
-               : "haiku-alternative-gcc-archive" ;
-
-       # install the alternative libs in the right directory
-       ExtractArchiveToHaikuImage : $(otherAlternativeSystemLibsZip) ;
-}
-
-
-#pragma mark - User/Group Setup
-
-
-# add the root user and the root and users groups
-AddUserToHaikuImage $(HAIKU_ROOT_USER_NAME:E=baron) : 0 : 0 : /boot/home
-       : /bin/bash : $(HAIKU_ROOT_USER_REAL_NAME:E="Root User") ;
-AddGroupToHaikuImage root : 0 : ;
-AddGroupToHaikuImage users : 100 : ;
-
-
-#pragma mark - Host Name
-
-
-if $(HAIKU_IMAGE_HOST_NAME) {
-       actions BuildHaikuImageHostnameFile
-       {
-               echo "$(HAIKU_IMAGE_HOST_NAME)" > $(1)
-       }
-
-       local file = <haiku-image>hostname ;
-       Always $(file) ;
-       MakeLocate $(file) : $(HAIKU_COMMON_PLATFORM_OBJECT_DIR) ;
-       BuildHaikuImageHostnameFile $(file) ;
-       AddFilesToHaikuImage common settings network : $(file) ;
-}
-
-
-#pragma mark - Build The Image
-
-
-# Execute pre-image user config rules.
-UserBuildConfigRulePreImage    ;
-
-# Set image name and directory defaults and locate the image.
-HAIKU_IMAGE_NAME ?= $(HAIKU_DEFAULT_IMAGE_NAME) ;
-HAIKU_IMAGE_DIR ?= $(HAIKU_DEFAULT_IMAGE_DIR) ;
-HAIKU_IMAGE = $(HAIKU_IMAGE_NAME) ;
-HAIKU_IMAGE_SIZE ?= $(HAIKU_DEFAULT_IMAGE_SIZE) ; # 300 MB
-HAIKU_IMAGE_LABEL ?= $(HAIKU_DEFAULT_IMAGE_LABEL) ;
-MakeLocate $(HAIKU_IMAGE) : $(HAIKU_IMAGE_DIR) ;
-
-# Set the default installation directory.
-HAIKU_INSTALL_DIR ?= $(HAIKU_DEFAULT_INSTALL_DIR) ;
-
-# the pseudo target all image contents is attached to
-NotFile $(HAIKU_IMAGE_CONTAINER_NAME) ;
-
-# Detect a hybrid GCC2/GCC4 image.
-local isHybridBuild ;
-if $(HAIKU_ADD_ALTERNATIVE_GCC_LIBS) = 1
-               && $(HAIKU_ALTERNATIVE_GCC_OUTPUT_DIR) {
-       isHybridBuild = 1 ;
-}
-
-# prepare the script that initializes the shell variables
-HAIKU_IMAGE_INIT_VARIABLES_SCRIPT = <HaikuImage>haiku.image-init-vars ;
-local script = $(HAIKU_IMAGE_INIT_VARIABLES_SCRIPT) ;
-MakeLocate $(script) : $(HAIKU_OUTPUT_DIR) ;
-Always $(script) ;
-
-AddVariableToScript $(script) : sourceDir : $(HAIKU_TOP) ;
-AddVariableToScript $(script) : outputDir : $(HAIKU_OUTPUT_DIR) ;
-AddVariableToScript $(script) : tmpDir : $(HAIKU_TMP_DIR) ;
-AddVariableToScript $(script) : installDir : $(HAIKU_INSTALL_DIR) ;
-#AddVariableToScript $(script) : isImage : 1 ;
-AddVariableToScript $(script) : imageSize : $(HAIKU_IMAGE_SIZE) ;
-AddVariableToScript $(script) : imageLabel : $(HAIKU_IMAGE_LABEL) ;
-AddVariableToScript $(script) : addBuildCompatibilityLibDir
-       : $(HOST_ADD_BUILD_COMPATIBILITY_LIB_DIR) ;
-AddVariableToScript $(script) : dontClearImage : $(HAIKU_DONT_CLEAR_IMAGE) ;
-AddVariableToScript $(script) : updateOnly : [ IsUpdateHaikuImageOnly ] ;
-AddTargetVariableToScript $(script) : <build>addattr ;
-AddTargetVariableToScript $(script) : <build>bfs_shell : bfsShell ;
-AddTargetVariableToScript $(script) : <build>fs_shell_command : fsShellCommand 
;
-AddTargetVariableToScript $(script) : <build>copyattr ;
-AddTargetVariableToScript $(script) : <build>create_image : createImage ;
-AddTargetVariableToScript $(script) : <build>makebootable ;
-AddTargetVariableToScript $(script) : <build>rc ;
-AddTargetVariableToScript $(script) : <build>resattr ;
-AddTargetVariableToScript $(script) : <build>unzip ;
-AddTargetVariableToScript $(script) : <build>vmdkimage ;
-AddVariableToScript $(script) : stripCommand : $(HAIKU_STRIP) ;
-if $(HOST_RM_ATTRS_TARGET) {
-       AddTargetVariableToScript $(script) : $(HOST_RM_ATTRS_TARGET) : rmAttrs 
;
-} else {
-       AddVariableToScript $(script) : rmAttrs : rm ;
-}
-if $(optionalPackageDescriptions) {
-       AddTargetVariableToScript $(script) : $(optionalPackageDescriptions)
-               : optionalPackageDescriptions ;
-}
-
-
-# create the other scripts
-HAIKU_IMAGE_MAKE_DIRS_SCRIPT = <HaikuImage>haiku.image-make-dirs ;
-HAIKU_IMAGE_COPY_FILES_SCRIPT = <HaikuImage>haiku.image-copy-files ;
-HAIKU_IMAGE_EXTRACT_FILES_SCRIPT = <HaikuImage>haiku.image-extract-files ;
-MakeLocate $(HAIKU_IMAGE_MAKE_DIRS_SCRIPT) $(HAIKU_IMAGE_COPY_FILES_SCRIPT)
-       $(HAIKU_IMAGE_EXTRACT_FILES_SCRIPT) : $(HAIKU_OUTPUT_DIR) ;
-
-CreateHaikuImageMakeDirectoriesScript $(HAIKU_IMAGE_MAKE_DIRS_SCRIPT) ;
-CreateHaikuImageCopyFilesScript $(HAIKU_IMAGE_COPY_FILES_SCRIPT) ;
-CreateHaikuImageExtractFilesScript $(HAIKU_IMAGE_EXTRACT_FILES_SCRIPT) ;
-
-# Convenience wrapper rule around BuildHaikuImage.
-rule _BuildHaikuImage image : isImage : isVMwareImage
-{
-       # _BuildHaikuImage <image target> : <isImage> : <isVMwareImage> ;
-       #
-
-       # build the image
-       # HAIKU_IMAGE_EARLY_USER_SCRIPTS, HAIKU_IMAGE_LATE_USER_SCRIPTS can be
-       # specified by the user.
-       BuildHaikuImage $(image) :
-               $(HAIKU_IMAGE_INIT_VARIABLES_SCRIPT)
-               $(HAIKU_IMAGE_EARLY_USER_SCRIPTS)
-               $(HAIKU_IMAGE_MAKE_DIRS_SCRIPT)
-               $(HAIKU_IMAGE_COPY_FILES_SCRIPT)
-               $(HAIKU_IMAGE_EXTRACT_FILES_SCRIPT)
-               $(HAIKU_IMAGE_LATE_USER_SCRIPTS)
-               : $(isImage)
-               : $(isVMwareImage)
-       ;
-
-       # remove the scripts we have generated
-       RmTemps $(image) :
-               $(HAIKU_IMAGE_INIT_VARIABLES_SCRIPT)
-               $(HAIKU_IMAGE_MAKE_DIRS_SCRIPT)
-               $(HAIKU_IMAGE_COPY_FILES_SCRIPT)
-               $(HAIKU_IMAGE_EXTRACT_FILES_SCRIPT)
-       ;
-}
-
-# build the image
-_BuildHaikuImage $(HAIKU_IMAGE) : true ;
-NotFile haiku-image ;
-Depends haiku-image : $(HAIKU_IMAGE) ;
-
-
-# install Haiku into a directory
-NotFile install-haiku ;
-_BuildHaikuImage install-haiku : 0 ;
-
-
-# build the VMware image
-HAIKU_VMWARE_IMAGE_NAME ?= $(HAIKU_DEFAULT_VMWARE_IMAGE_NAME) ;
-HAIKU_VMWARE_IMAGE = $(HAIKU_VMWARE_IMAGE_NAME) ;
-MakeLocate $(HAIKU_VMWARE_IMAGE) : $(HAIKU_IMAGE_DIR) ;
-
-_BuildHaikuImage $(HAIKU_VMWARE_IMAGE) : true : true ;
-NotFile haiku-vmware-image ;
-Depends haiku-vmware-image : $(HAIKU_VMWARE_IMAGE) ;
-
-# Execute post-image user config rules.
-UserBuildConfigRulePostImage ;

############################################################################

Revision:    hrev46117
Commit:      6eb7e259e9c9dfa1a88cf9cf388c0f3589512531
URL:         http://cgit.haiku-os.org/haiku/commit/?id=6eb7e25
Author:      Ingo Weinhold <ingo_weinhold@xxxxxx>
Date:        Sat Sep 28 14:38:41 2013 UTC

Ticket:      https://dev.haiku-os.org/ticket/8288

libpackage_build: undefined weak symbols are unsupported

... also for gcc 4 (#8288), so we have to use the dlopen() method
always when building on Haiku. Fixes the build on gcc 4 Haiku.

----------------------------------------------------------------------------

diff --git a/src/kits/package/solver/LibsolvSolver.cpp 
b/src/kits/package/solver/LibsolvSolver.cpp
index 604efc4..a3ecbb7 100644
--- a/src/kits/package/solver/LibsolvSolver.cpp
+++ b/src/kits/package/solver/LibsolvSolver.cpp
@@ -38,7 +38,7 @@
 // abort()s. Obviously that isn't good behavior for a library.
 
 
-#ifdef HAIKU_TARGET_PLATFORM_HAIKU
+#ifdef __HAIKU__
 
 
 BSolver*
diff --git a/src/kits/package/solver/Solver.cpp 
b/src/kits/package/solver/Solver.cpp
index 3c16485..e6984cd 100644
--- a/src/kits/package/solver/Solver.cpp
+++ b/src/kits/package/solver/Solver.cpp
@@ -13,7 +13,7 @@
 typedef BPackageKit::BSolver* CreateSolverFunction();
 
 
-#if defined(HAIKU_TARGET_PLATFORM_HAIKU) || __GNUC__ == 2
+#ifdef __HAIKU__
 
 
 #include <dlfcn.h>
@@ -28,7 +28,7 @@ static pthread_once_t sLoadLibsolvSolverAddOnInitOnce = 
PTHREAD_ONCE_INIT;
 static void
 load_libsolv_solver_add_on()
 {
-#if defined(HAIKU_TARGET_PLATFORM_HAIKU) || __GNUC__ == 2
+#ifdef HAIKU_TARGET_PLATFORM_HAIKU
        void* imageHandle = dlopen("libpackage-add-on-libsolv.so", 0);
 #else
        void* imageHandle = dlopen("libpackage-add-on-libsolv_build.so", 0);
@@ -68,7 +68,7 @@ BSolver::~BSolver()
 /*static*/ status_t
 BSolver::Create(BSolver*& _solver)
 {
-#if defined(HAIKU_TARGET_PLATFORM_HAIKU) || __GNUC__ == 2
+#ifdef __HAIKU__
        pthread_once(&sLoadLibsolvSolverAddOnInitOnce, 
&load_libsolv_solver_add_on);
 #endif
        if (sCreateSolver == NULL)


Other related posts:

  • » [haiku-commits] haiku: hrev46117 - build/jam - ingo_weinhold