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)