diff --git a/build/jam/BuildSetup b/build/jam/BuildSetup index c962832147..b416107de4 100644 --- a/build/jam/BuildSetup +++ b/build/jam/BuildSetup @@ -1139,6 +1139,13 @@ HAIKU_TMP_DIR ?= [ FDirName $(HAIKU_OUTPUT_DIR) tmp ] ; HAIKU_PACKAGE_DIR ?= [ FDirName $(HAIKU_OUTPUT_DIR) packages ] ; HAIKU_PACKAGE_OBJECT_DIR ?= [ FDirName $(HAIKU_OBJECT_DIR) packages ] ; + # TODO: Remove those together with the obsolete package rules! + +HAIKU_PACKAGES_DIR = [ FDirName $(TARGET_COMMON_DEBUG_OBJECT_DIR) + packages ] ; +HAIKU_PACKAGES_BUILD_DIR = [ FDirName $(TARGET_COMMON_DEBUG_OBJECT_DIR) + packages_build ] ; +HAIKU_PACKAGE_INFOS_DIR = [ FDirName $(HAIKU_TOP) src data package_infos ] ; TARGET_TEST_DIR ?= [ FDirName $(HAIKU_TEST_DIR) $(TARGET_PLATFORM) ] ; diff --git a/build/jam/HaikuImage b/build/jam/HaikuImage index 6ab711fe84..26d1af4565 100644 --- a/build/jam/HaikuImage +++ b/build/jam/HaikuImage @@ -194,153 +194,9 @@ SYSTEM_ADD_ONS_BUS_MANAGERS = $(ATA_ONLY)ata pci $(X86_ONLY)ps2 $(X86_ONLY)isa SYSTEM_ADD_ONS_FILE_SYSTEMS = bfs bindfs btrfs cdda exfat ext2 fat iso9660 nfs attribute_overlay write_overlay ntfs packagefs reiserfs 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-]) ; - } -} +include [ FDirName $(HAIKU_BUILD_RULES_DIR) HaikuPackages ] ; -# modules -AddFilesToHaikuImage system add-ons kernel bus_managers - : $(SYSTEM_ADD_ONS_BUS_MANAGERS) ; -AddFilesToHaikuImage system add-ons kernel busses agp_gart - : $(X86_ONLY)intel ; - -if $(HAIKU_ATA_STACK) = 1 { - AddFilesToHaikuImage system add-ons kernel busses ata - : generic_ide_pci it8211 legacy_sata silicon_image_3112 - $(X86_ONLY)ide_isa ; -} else { - AddFilesToHaikuImage system add-ons kernel busses ide - : generic_ide_pci it8211 legacy_sata silicon_image_3112 - $(X86_ONLY)ide_isa ; -} - -AddFilesToHaikuImage system add-ons kernel busses scsi - : ahci ; -AddFilesToHaikuImage system add-ons kernel busses usb - : uhci ohci ehci ; -AddFilesToHaikuImage system add-ons kernel console - : vga_text ; -AddFilesToHaikuImage system add-ons kernel debugger - : demangle $(X86_ONLY)disasm - invalidate_on_exit usb_keyboard run_on_exit ; -AddFilesToHaikuImage system add-ons kernel file_systems - : $(SYSTEM_ADD_ONS_FILE_SYSTEMS) ; -AddFilesToHaikuImage system add-ons kernel generic - : $(ATA_ONLY)ata_adapter dpc $(IDE_ONLY)ide_adapter locked_pool mpu401 - scsi_periph tty ; -AddFilesToHaikuImage - system add-ons kernel partitioning_systems - : amiga_rdb apple efi_gpt intel session ; -AddFilesToHaikuImage - system add-ons kernel interrupt_controllers - : $(PPC_ONLY)openpic ; - -if $(TARGET_ARCH) = x86 { - AddFilesToHaikuImage system add-ons kernel cpu - : generic_x86 ; -} - -# drivers -AddNewDriversToHaikuImage disk scsi : scsi_cd scsi_disk ; -AddNewDriversToHaikuImage power : $(X86_ONLY)enhanced_speedstep ; -AddNewDriversToHaikuImage power : $(X86_ONLY)acpi_battery ; - -# legacy drivers -AddDriversToHaikuImage : console dprintf null - random 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 ; -AddDriversToHaikuImage disk floppy : $(X86_ONLY)pc_floppy ; -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 : poke mem ; -AddDriversToHaikuImage net : $(SYSTEM_ADD_ONS_DRIVERS_NET) ; -AddDriversToHaikuImage ports : usb_serial ; -#AddDriversToHaikuImage power : $(SYSTEM_ADD_ONS_DRIVERS_POWER) ; - -# kernel -AddFilesToHaikuImage system - : kernel_$(TARGET_ARCH) ; - -# libs -AddLibrariesToHaikuImage 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) { - AddSymlinkToHaikuImage system lib - : libnetwork.so : $(lib) ; - } - - AddSymlinkToHaikuImage system lib : libbnetapi.so - : libnetapi.so ; -} - - -# libGL.so has GLU (like BeOS) *and* GLUT API built-in -SYSTEM_LIBS_LIBGL_ALIASES - = libGLU.so libglut.so ; - -if $(TARGET_ARCH) = x86 { - local lib ; - for lib in $(SYSTEM_LIBS_LIBGL_ALIASES) { - AddSymlinkToHaikuImage system lib - : libGL.so : $(lib) ; - } -} - -SYSTEM_LIBS_ALIASES = - $(SYSTEM_LIBS_LIBNETWORK_ALIASES) - libnetapi.so - $(SYSTEM_LIBS_LIBGL_ALIASES) -; - -# servers -AddFilesToHaikuImage system servers : $(SYSTEM_SERVERS) ; - -# apps -AddFilesToHaikuImage system : runtime_loader ; -AddFilesToHaikuImage system : 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 ; # TODO: remove! # Add the files to be used by installoptionalpackage. @@ -354,9 +210,6 @@ for name in $(optional-pkg-files) { } AddInstalledPackagesFileToHaikuImage ; -AddSymlinkToHaikuImage system bin : bash : sh ; -AddSymlinkToHaikuImage system bin : trash : untrash ; - AddSymlinkToHaikuImage home Desktop : /boot/home : Home ; # Mailbox folders and symlink @@ -404,23 +257,8 @@ for linkTarget in $(SYSTEM_DEMOS) { : /boot/system/demos/$(linkTarget) : $(linkTarget) ; } -AddSymlinkToHaikuImage system bin : bzip2 : bunzip2 ; -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 ; -AddSymlinkToHaikuImage system bin : grep : egrep ; -AddSymlinkToHaikuImage system bin : grep : fgrep ; - # 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) ; @@ -428,37 +266,21 @@ 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) ] ; +SEARCH on $(etcFiles) = $(etcDir) ; etcFiles += termcap sysless sysless.in ; AddFilesToHaikuImage common settings 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) ; +AddDirectoryToHaikuImage common settings etc profile.d ; +AddFilesToHaikuImage common settings etc profile.d : $(profileFiles) ; #local bashCompletionFiles = [ Glob $(etcDir)/bash_completion.d : * ] ; #local bashCompletionHelperFiles @@ -471,52 +293,6 @@ AddFilesToHaikuImage common etc profile.d : $(profileFiles) ; #AddFilesToHaikuImage common etc bash_completion.d helpers # : $(bashCompletionHelperFiles) ; -local dataFiles = teapot.data ; -dataFiles = $(dataFiles:G=data) ; -SEARCH on $(dataFiles) = [ FDirName $(HAIKU_TOP) data system data ] ; -AddFilesToHaikuImage system data : $(dataFiles) ; - -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 ; - -local keyboardLayoutsDir - = [ FDirName $(HAIKU_TOP) data system data KeyboardLayouts ] ; -local keyboardLayouts = [ Glob $(keyboardLayoutsDir) : [^.]* ] ; -AddFilesToHaikuImage system data KeyboardLayouts - : $(keyboardLayouts) ; - local driverSettingsFiles = kernel ; SEARCH on $(driverSettingsFiles) = [ FDirName $(HAIKU_TOP) data settings kernel drivers ] ; @@ -543,80 +319,6 @@ AddFilesToHaikuImage common settings : fresh_install ; # boot loader AddFilesToHaikuImage system : haiku_loader ; -# boot module links -AddBootModuleSymlinksToHaikuImage - $(X86_ONLY)acpi $(ATA_ONLY)ata pci $(X86_ONLY)isa config_manager dpc - $(IDE_ONLY)ide scsi usb - $(PPC_ONLY)openpic - $(ATA_ONLY)ata_adapter $(IDE_ONLY)ide_adapter locked_pool scsi_periph - ahci generic_ide_pci it8211 legacy_sata silicon_image_3112 - $(X86_ONLY)ide_isa - uhci ohci ehci - scsi_cd scsi_disk usb_disk - intel - bfs -; - -# add-ons -AddFilesToHaikuImage system add-ons accelerants - : $(SYSTEM_ADD_ONS_ACCELERANTS) ; -AddFilesToHaikuImage system add-ons opengl - : Mesa\ Software\ Renderer ; -AddFilesToHaikuImage system add-ons Translators - : $(SYSTEM_ADD_ONS_TRANSLATORS) ; -AddFilesToHaikuImage system add-ons locale catalogs - : $(SYSTEM_ADD_ONS_LOCALE_CATALOGS) ; -AddFilesToHaikuImage system add-ons locale catalogs - : $(SYSTEM_ADD_ONS_LOCALE_CATALOGS) ; -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-F Mark\ as… Mark\ as\ Read-R Open\ Target\ Folder-O - Open\ Terminal-T ZipOMatic-Z ; -AddSymlinkToHaikuImage system add-ons Tracker - : /boot/system/preferences/Backgrounds : Background-B ; -AddSymlinkToHaikuImage system add-ons Tracker - : /boot/system/apps/TextSearch : TextSearch-G ; -AddSymlinkToHaikuImage system add-ons Tracker - : /boot/system/apps/DiskUsage : DiskUsage-I ; -AddFilesToHaikuImage system add-ons input_server devices - : keyboard mouse tablet wacom ; -AddFilesToHaikuImage system add-ons input_server filters - : screen_saver shortcut_catcher ; -AddFilesToHaikuImage system add-ons kernel network - : notifications stack ; -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 - : intel bfs ; - # decorators AddDirectoryToHaikuImage home config add-ons decorators ; AddFilesToHaikuImage home config add-ons decorators : @@ -646,11 +348,6 @@ 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 @@ -658,11 +355,6 @@ AddDirectoryToHaikuImage home config settings printers Preview 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 .svn -x Jamfile ; - # Gutenprint data files CopyDirectoryToHaikuImage common data : [ FDirName $(HAIKU_TOP) src libs print libgutenprint src xml ] @@ -673,21 +365,6 @@ CopyDirectoryToHaikuImage home config settings Media : [ FDirName $(HAIKU_TOP) data settings media dvb ] : dvb : -x .svn -x Jamfile ; -# licenses -CopyDirectoryToHaikuImage system data - : [ FDirName $(HAIKU_TOP) data system data licenses ] - : licenses : -x .svn ; - -# Copy documentation as per DiskUsage's license requirement. -CopyDirectoryToHaikuImage system documentation - : [ FDirName $(HAIKU_TOP) docs apps diskusage ] - : diskusage : -x .svn ; - -# Copy documentation as per PDFlib Lite's license requirement. -CopyDirectoryToHaikuImage system documentation - : [ FDirName $(HAIKU_TOP) src libs pdflib doc ] - : pdflib : -x .svn ; - # Copy sample programs as per PDFlib Lite's license requirement. CopyDirectoryToHaikuImage develop sample-code : [ FDirName $(HAIKU_TOP) src libs pdflib bind pdflib ] diff --git a/build/jam/HaikuPackages b/build/jam/HaikuPackages new file mode 100644 index 0000000000..8bb519a3f6 --- /dev/null +++ b/build/jam/HaikuPackages @@ -0,0 +1,345 @@ +local haikuPackage = haiku.hpkg ; +HaikuPackage $(haikuPackage) ; + + +# 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) { + AddWifiFirmwareToPackage $(haikuPackage) : $(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) { + AddWifiFirmwareToPackage $(haikuPackage) : $(driver) : $(packages[1]) + : $(archive) : $(extract) ; + packages = $(packages[2-]) ; + } +} + + +# modules +AddFilesToPackage $(haikuPackage) : system add-ons kernel bus_managers + : $(SYSTEM_ADD_ONS_BUS_MANAGERS) ; +AddFilesToPackage $(haikuPackage) : system add-ons kernel busses agp_gart + : $(X86_ONLY)intel ; + +if $(HAIKU_ATA_STACK) = 1 { + AddFilesToPackage $(haikuPackage) : system add-ons kernel busses ata + : generic_ide_pci it8211 legacy_sata silicon_image_3112 + $(X86_ONLY)ide_isa ; +} else { + AddFilesToPackage $(haikuPackage) : system add-ons kernel busses ide + : generic_ide_pci it8211 legacy_sata silicon_image_3112 + $(X86_ONLY)ide_isa ; +} + +AddFilesToPackage $(haikuPackage) : system add-ons kernel busses scsi + : ahci ; +AddFilesToPackage $(haikuPackage) : system add-ons kernel busses usb + : uhci ohci ehci ; +AddFilesToPackage $(haikuPackage) : system add-ons kernel console + : vga_text ; +AddFilesToPackage $(haikuPackage) : system add-ons kernel debugger + : demangle $(X86_ONLY)disasm + invalidate_on_exit usb_keyboard run_on_exit ; +AddFilesToPackage $(haikuPackage) : system add-ons kernel file_systems + : $(SYSTEM_ADD_ONS_FILE_SYSTEMS) ; +AddFilesToPackage $(haikuPackage) : system add-ons kernel generic + : $(ATA_ONLY)ata_adapter dpc $(IDE_ONLY)ide_adapter locked_pool mpu401 + scsi_periph tty ; +AddFilesToPackage $(haikuPackage) : + system add-ons kernel partitioning_systems + : amiga_rdb apple efi_gpt intel session ; +AddFilesToPackage $(haikuPackage) : + system add-ons kernel interrupt_controllers + : $(PPC_ONLY)openpic ; + +if $(TARGET_ARCH) = x86 { + AddFilesToPackage $(haikuPackage) : system add-ons kernel cpu + : generic_x86 ; +} + +# drivers +AddNewDriversToPackage $(haikuPackage) : disk scsi : scsi_cd scsi_disk ; +AddNewDriversToPackage $(haikuPackage) : power : $(X86_ONLY)enhanced_speedstep ; +AddNewDriversToPackage $(haikuPackage) : power : $(X86_ONLY)acpi_battery ; + +# legacy drivers +AddDriversToPackage $(haikuPackage) : + : console dprintf null random tty zero ; +AddDriversToPackage $(haikuPackage) : audio hmulti + : $(SYSTEM_ADD_ONS_DRIVERS_AUDIO) ; +AddDriversToPackage $(haikuPackage) : audio old + : $(SYSTEM_ADD_ONS_DRIVERS_AUDIO_OLD) ; +AddDriversToPackage $(haikuPackage) : midi + : $(SYSTEM_ADD_ONS_DRIVERS_MIDI) ; +AddDriversToPackage $(haikuPackage) : bus : usb_raw fw_raw ; +AddDriversToPackage $(haikuPackage) : disk floppy : $(X86_ONLY)pc_floppy ; +AddDriversToPackage $(haikuPackage) : disk usb : usb_disk ; +AddDriversToPackage $(haikuPackage) : disk usb : usb_floppy ; +AddDriversToPackage $(haikuPackage) : printer usb : usb_printer ; +AddDriversToPackage $(haikuPackage) : disk virtual : nbd ; +AddDriversToPackage $(haikuPackage) : dvb : cx23882 ; +AddDriversToPackage $(haikuPackage) : graphics + : $(SYSTEM_ADD_ONS_DRIVERS_GRAPHICS) ; +AddDriversToPackage $(haikuPackage) : input : ps2_hid usb_hid wacom ; +AddDriversToPackage $(haikuPackage) : misc : poke mem ; +AddDriversToPackage $(haikuPackage) : net + : $(SYSTEM_ADD_ONS_DRIVERS_NET) ; +AddDriversToPackage $(haikuPackage) : ports : usb_serial ; +#AddDriversToPackage $(haikuPackage) : power +# : $(SYSTEM_ADD_ONS_DRIVERS_POWER) ; + +# kernel +AddFilesToPackage $(haikuPackage) : system + : kernel_$(TARGET_ARCH) ; + +# libs +AddLibrariesToPackage $(haikuPackage) : 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) { + AddSymlinkToPackage $(haikuPackage) : system lib + : libnetwork.so : $(lib) ; + } + + AddSymlinkToPackage $(haikuPackage) : system lib : libbnetapi.so + : libnetapi.so ; +} + + +# libGL.so has GLU (like BeOS) *and* GLUT API built-in +SYSTEM_LIBS_LIBGL_ALIASES + = libGLU.so libglut.so ; + +if $(TARGET_ARCH) = x86 { + local lib ; + for lib in $(SYSTEM_LIBS_LIBGL_ALIASES) { + AddSymlinkToPackage $(haikuPackage) : system lib : libGL.so : $(lib) ; + } +} + +SYSTEM_LIBS_ALIASES = + $(SYSTEM_LIBS_LIBNETWORK_ALIASES) + libnetapi.so + $(SYSTEM_LIBS_LIBGL_ALIASES) +; + +# servers +AddFilesToPackage $(haikuPackage) : system servers : $(SYSTEM_SERVERS) ; + +# apps +AddFilesToPackage $(haikuPackage) : system : runtime_loader ; +AddFilesToPackage $(haikuPackage) : system : Deskbar Tracker ; +AddFilesToPackage $(haikuPackage) : system bin : $(SYSTEM_BIN) consoled ; +AddFilesToPackage $(haikuPackage) : system apps : $(SYSTEM_APPS) ; +AddFilesToPackage $(haikuPackage) : system preferences + : $(SYSTEM_PREFERENCES) ; +AddFilesToPackage $(haikuPackage) : system demos : $(SYSTEM_DEMOS) ; + +SEARCH on which = [ FDirName $(HAIKU_TOP) data bin ] ; +AddFilesToPackage $(haikuPackage) : system bin : which ; +SEARCH on installoptionalpackage = [ FDirName $(HAIKU_TOP) data bin ] ; +AddFilesToPackage $(haikuPackage) : system bin : installoptionalpackage ; +SEARCH on install-wifi-firmwares.sh = [ FDirName $(HAIKU_TOP) data bin ] ; +AddFilesToPackage $(haikuPackage) : system bin : install-wifi-firmwares.sh ; + +AddSymlinkToPackage $(haikuPackage) : system bin : bash : sh ; +AddSymlinkToPackage $(haikuPackage) : system bin : trash : untrash ; + +AddSymlinkToPackage $(haikuPackage) : system bin : bzip2 : bunzip2 ; +AddSymlinkToPackage $(haikuPackage) : system bin : less : more ; +AddSymlinkToPackage $(haikuPackage) : system bin : gzip : gunzip ; +AddSymlinkToPackage $(haikuPackage) : system bin : gzip : zcat ; +AddSymlinkToPackage $(haikuPackage) : system bin : zdiff : zcmp ; +AddSymlinkToPackage $(haikuPackage) : system bin : unzip : zipinfo ; +AddSymlinkToPackage $(haikuPackage) : system bin : gawk : awk ; +AddSymlinkToPackage $(haikuPackage) : system bin : grep : egrep ; +AddSymlinkToPackage $(haikuPackage) : system bin : grep : fgrep ; + +# scripts and data files +local bootScripts = Bootscript Bootscript.cd SetupEnvironment Netscript + InstallerInitScript InstallerFinishScript ; +SEARCH on $(bootScripts) = [ FDirName $(HAIKU_TOP) data system boot ] ; +AddFilesToPackage $(haikuPackage) : system boot : $(bootScripts) ; + +# artwork and sounds +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 ] ; +AddFilesToPackage $(haikuPackage) : system data artwork : $(logoArtwork) ; + +AddDirectoryToPackage $(haikuPackage) : system data sounds ; + +# Mail spell check dictionaries +local spellFiles = words geekspeak ; +spellFiles = $(spellFiles:G=spell) ; +SEARCH on $(spellFiles) = [ FDirName $(HAIKU_TOP) src apps mail ] ; +AddFilesToPackage $(haikuPackage) : system data spell_check word_dictionary + : $(spellFiles) ; + +local dataFiles = teapot.data ; +dataFiles = $(dataFiles:G=data) ; +SEARCH on $(dataFiles) = [ FDirName $(HAIKU_TOP) data system data ] ; +AddFilesToPackage $(haikuPackage) : system data : $(dataFiles) ; + +local fortuneFiles = [ Glob $(HAIKU_TOP)/data/system/data/fortunes + : [a-zA-Z0-9]* ] ; +fortuneFiles = $(fortuneFiles:G=data!fortunes) ; +AddFilesToPackage $(haikuPackage) : 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 ] ; +AddFilesToPackage $(haikuPackage) : system data fonts psfonts : $(psFonts) ; +AddFilesToPackage $(haikuPackage) : 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 ] ; +AddFilesToPackage $(haikuPackage) : system data Canna default + : $(cannaDefault) ; +AddFilesToPackage $(haikuPackage) : system data Canna dic : $(cannaDic) ; +AddFilesToPackage $(haikuPackage) : system data Canna dic canna + : $(cannaDicCanna) ; +AddDirectoryToPackage $(haikuPackage) : system data Canna dic group ; +AddDirectoryToPackage $(haikuPackage) : system data Canna dic user ; + +local keymapFiles = [ Glob [ FDirName $(HAIKU_TOP) src data keymaps ] + : *.keymap ] ; +keymapFiles = $(keymapFiles:BG=keymap) ; +AddFilesToPackage $(haikuPackage) : system data Keymaps : $(keymapFiles) ; +AddSymlinkToPackage $(haikuPackage) : system data Keymaps : Swedish + : Finnish ; +AddSymlinkToPackage $(haikuPackage) : system data Keymaps : Slovene + : Croatian ; +AddSymlinkToPackage $(haikuPackage) : system data Keymaps : US-International + : Brazilian ; + +local keyboardLayoutsDir + = [ FDirName $(HAIKU_TOP) data system data KeyboardLayouts ] ; +local keyboardLayouts = [ Glob $(keyboardLayoutsDir) : [^.]* ] ; +AddFilesToPackage $(haikuPackage) : system data KeyboardLayouts + : $(keyboardLayouts) ; + +# boot loader +AddFilesToPackage $(haikuPackage) : system : haiku_loader ; + +# boot module links +AddBootModuleSymlinksToPackage $(haikuPackage) : + $(X86_ONLY)acpi $(ATA_ONLY)ata pci $(X86_ONLY)isa config_manager dpc + $(IDE_ONLY)ide scsi usb + $(PPC_ONLY)openpic + $(ATA_ONLY)ata_adapter $(IDE_ONLY)ide_adapter locked_pool scsi_periph + ahci generic_ide_pci it8211 legacy_sata silicon_image_3112 + $(X86_ONLY)ide_isa + uhci ohci ehci + scsi_cd scsi_disk usb_disk + intel + bfs +; + +# add-ons +AddFilesToPackage $(haikuPackage) : system add-ons accelerants + : $(SYSTEM_ADD_ONS_ACCELERANTS) ; +AddFilesToPackage $(haikuPackage) : system add-ons opengl + : Mesa\ Software\ Renderer ; +AddFilesToPackage $(haikuPackage) : system add-ons Translators + : $(SYSTEM_ADD_ONS_TRANSLATORS) ; +AddFilesToPackage $(haikuPackage) : system add-ons locale catalogs + : $(SYSTEM_ADD_ONS_LOCALE_CATALOGS) ; +AddFilesToPackage $(haikuPackage) : system add-ons locale catalogs + : $(SYSTEM_ADD_ONS_LOCALE_CATALOGS) ; +AddFilesToPackage $(haikuPackage) : + system add-ons mail_daemon inbound_protocols + : POP3 IMAP ; +AddFilesToPackage $(haikuPackage) : + system add-ons mail_daemon outbound_protocols : SMTP ; +AddFilesToPackage $(haikuPackage) : + system add-ons mail_daemon inbound_filters + : MatchHeader SpamFilter NewMailNotification ; +AddFilesToPackage $(haikuPackage) : + system add-ons mail_daemon outbound_filters + : Fortune ; +AddFilesToPackage $(haikuPackage) : system add-ons media + : $(SYSTEM_ADD_ONS_MEDIA) ; +AddFilesToPackage $(haikuPackage) : system add-ons media plugins + : $(SYSTEM_ADD_ONS_MEDIA_PLUGINS) ; +AddFilesToPackage $(haikuPackage) : system add-ons Tracker + : FileType-F Mark\ as… Mark\ as\ Read-R Open\ Target\ Folder-O + Open\ Terminal-T ZipOMatic-Z ; +AddSymlinkToPackage $(haikuPackage) : system add-ons Tracker + : /boot/system/preferences/Backgrounds : Background-B ; +AddSymlinkToPackage $(haikuPackage) : system add-ons Tracker + : /boot/system/apps/TextSearch : TextSearch-G ; +AddSymlinkToPackage $(haikuPackage) : system add-ons Tracker + : /boot/system/apps/DiskUsage : DiskUsage-I ; +AddFilesToPackage $(haikuPackage) : system add-ons input_server devices + : keyboard mouse tablet wacom ; +AddFilesToPackage $(haikuPackage) : system add-ons input_server filters + : screen_saver shortcut_catcher ; +AddFilesToPackage $(haikuPackage) : system add-ons kernel network + : notifications stack ; +AddFilesToPackage $(haikuPackage) : system add-ons kernel network devices + : $(SYSTEM_NETWORK_DEVICES) ; +AddFilesToPackage $(haikuPackage) : + system add-ons kernel network datalink_protocols + : $(SYSTEM_NETWORK_DATALINK_PROTOCOLS) ; +AddFilesToPackage $(haikuPackage) : system add-ons kernel network ppp + : $(SYSTEM_NETWORK_PPP) ; +AddFilesToPackage $(haikuPackage) : system add-ons kernel network protocols + : $(SYSTEM_NETWORK_PROTOCOLS) ; +AddFilesToPackage $(haikuPackage) : system add-ons Print + : $(SYSTEM_ADD_ONS_PRINT) ; +AddFilesToPackage $(haikuPackage) : system add-ons Print transport + : $(SYSTEM_ADD_ONS_PRINT_TRANSPORT) ; +AddFilesToPackage $(haikuPackage) : system add-ons Screen\ Savers + : $(SYSTEM_ADD_ONS_SCREENSAVERS) ; + +AddFilesToPackage $(haikuPackage) : system add-ons disk_systems + : intel bfs ; + + +AddDirectoryToPackage $(haikuPackage) : system data synth ; +AddDirectoryToPackage $(haikuPackage) : system add-ons input_server methods ; + +# optional +AddFilesToPackage $(haikuPackage) : optional system add-ons input_server methods + : canna ; + + +# PDF Writer enconding files +CopyDirectoryToPackage $(haikuPackage) : system data + : [ FDirName $(HAIKU_TOP) src add-ons print drivers pdf encoding ] + : "PDF Writer" : -x .svn -x Jamfile ; + +# licenses +CopyDirectoryToPackage $(haikuPackage) : system data + : [ FDirName $(HAIKU_TOP) data system data licenses ] + : licenses : -x .svn ; + +# Copy documentation as per DiskUsage's license requirement. +CopyDirectoryToPackage $(haikuPackage) : system documentation + : [ FDirName $(HAIKU_TOP) docs apps diskusage ] + : diskusage : -x .svn ; + +# Copy documentation as per PDFlib Lite's license requirement. +CopyDirectoryToPackage $(haikuPackage) : system documentation + : [ FDirName $(HAIKU_TOP) src libs pdflib doc ] + : pdflib : -x .svn ; + + +BuildHaikuPackage $(haikuPackage) : haiku ; diff --git a/build/jam/PackageRules b/build/jam/PackageRules index a155d47967..1413209300 100644 --- a/build/jam/PackageRules +++ b/build/jam/PackageRules @@ -40,7 +40,7 @@ rule FPackageConfigSubPath } else { configSubPath = $(TARGET_PLATFORM) $(TARGET_ARCH) ; } - + if $(DEBUG) = 0 { configSubPath += release ; } else { @@ -120,7 +120,7 @@ rule PackageSymLink local packagename = $(1) ; local symlinkPath = $(2) ; local symlinkTarget = $(3) ; - + local configSubPath = [ FPackageConfigSubPath $(packagename) ] ; local symlinkDir = [ FReverse $(symlinkPath) ] ; @@ -159,7 +159,7 @@ rule PackageDriverSymLink { # PackageDriverSymLink : ; # : Package name. - # : Path components relative to the + # : Path components relative to the # /boot/home/config/add-ons/kernel/drivers/dev directory, e.g. # "graphics mga.driver" (no quotation, of course). # @@ -248,3 +248,179 @@ actions together LinkInstallZip { ln -sf "`pwd`/$(2)" "$(1)" ; } + + +# TODO: The stuff above should be moved (Copy) or removed (the rest). + + +#pragma mark - Haiku Packages + + +rule FHaikuPackageGrist package +{ + local grist = [ Match "<(.*)>" : $(package:G) ] ; + return hpkg_$(grist:E="")_$(package:G=) ; +} + + +rule HaikuPackage package +{ + local grist = [ FHaikuPackageGrist $(package) ] ; + + HAIKU_CONTAINER_GRIST on $(package) = $(grist) ; + HAIKU_INCLUDE_IN_CONTAINER_VAR on $(package) + = $(grist)_HAIKU_INCLUDE_IN_PACKAGE ; + HAIKU_INSTALL_TARGETS_VAR on $(package) + = $(grist)_HAIKU_PACKAGE_INSTALL_TARGETS ; +} + + +rule BuildHaikuPackage package : packageInfo +{ + local grist = [ FHaikuPackageGrist $(package) ] ; + + local tempDir = [ FDirName $(HAIKU_PACKAGES_BUILD_DIR) $(grist) ] ; + local scriptDir = [ FDirName $(tempDir) scripts ] ; + + # locate the package and package info + MakeLocate $(package) : $(HAIKU_PACKAGES_DIR) ; + SEARCH on $(packageInfo) += $(HAIKU_PACKAGE_INFOS_DIR) ; + LocalDepends $(package) : $(packageInfo) ; + + # prepare the script that initializes the shell variables + local initVariablesScript = <$(grist)>haiku.package-init-vars ; + MakeLocate $(initVariablesScript) : $(scriptDir) ; + Always $(initVariablesScript) ; + + local script = $(initVariablesScript) ; + AddVariableToScript $(script) : sourceDir : $(HAIKU_TOP) ; + AddVariableToScript $(script) : outputDir : $(HAIKU_OUTPUT_DIR) ; + AddVariableToScript $(script) : tmpDir : $(tempDir) ; + AddVariableToScript $(script) : addBuildCompatibilityLibDir + : $(HOST_ADD_BUILD_COMPATIBILITY_LIB_DIR) ; + AddTargetVariableToScript $(script) : addattr ; + AddTargetVariableToScript $(script) : copyattr ; + AddTargetVariableToScript $(script) : package ; + AddTargetVariableToScript $(script) : rc ; + AddTargetVariableToScript $(script) : resattr ; + AddTargetVariableToScript $(script) : unzip ; + if $(HOST_RM_ATTRS_TARGET) { + AddTargetVariableToScript $(script) : $(HOST_RM_ATTRS_TARGET) + : rmAttrs ; + } else { + AddVariableToScript $(script) : rmAttrs : rm ; + } + + # create the other scripts + local makeDirsScript = <$(grist)>haiku.package-make-dirs ; + local copyFilesScript = <$(grist)>haiku.package-copy-files ; + + MakeLocate $(makeDirsScript) $(copyFilesScript) : $(scriptDir) ; + + CreateContainerMakeDirectoriesScript $(package) : $(makeDirsScript) ; + CreateContainerCopyFilesScript $(package) : $(copyFilesScript) ; + + local scripts = $(initVariablesScript) $(makeDirsScript) + $(copyFilesScript) ; + + # call the build actions + local mainScript = build_haiku_package ; + SEARCH on $(mainScript) = [ FDirName $(HAIKU_TOP) build scripts ] ; + + LocalDepends $(package) : $(mainScript) $(scripts) ; + BuildHaikuPackage1 $(package) : $(mainScript) $(packageInfo) $(scripts) ; +} + + +actions BuildHaikuPackage1 +{ + $(2[1]) "$(1)" "$(2[2])" $(2[3-]) +} + + +rule AddDirectoryToPackage package : directoryTokens : attributeFiles +{ + local dir = [ AddDirectoryToContainer $(package) : $(directoryTokens) ] ; + local grist = [ FHaikuPackageGrist $(package) ] ; + + if $(attributeFiles) { + SEARCH on $(attributeFiles) + += [ FDirName $(HAIKU_TOP) data package_directories $(grist) ] ; + ATTRIBUTE_FILES on $(dir) += $(attributeFiles) ; + } + + return $(dir) ; +} + + +rule AddFilesToPackage package : directory : targets : destName +{ + AddFilesToContainer $(package) : $(directory) : $(targets) : $(destName) ; +} + + +rule AddSymlinkToPackage package : directoryTokens : linkTarget : linkName +{ + linkTarget = $(linkTarget:J=/) ; + + AddSymlinkToContainer $(package) : $(directoryTokens) : $(linkTarget) + : $(linkName) ; +} + + +rule CopyDirectoryToPackage package : directoryTokens : sourceDirectory + : targetDirectoryName : excludePatterns : alwaysUpdate +{ + CopyDirectoryToContainer $(package) : $(directoryTokens) + : $(sourceDirectory) : $(targetDirectoryName) : $(excludePatterns) + : $(alwaysUpdate) ; +} + + +rule AddHeaderDirectoryToPackage package : dirTokens : dirName : alwaysUpdate +{ + AddHeaderDirectoryToContainer $(package) : $(dirTokens) : $(dirName) + : $(alwaysUpdate) ; +} + + +rule AddWifiFirmwareToPackage package : driver : subDirToExtract : archive + : extract +{ + AddWifiFirmwareToContainer $(package) : $(driver) : $(subDirToExtract) + : $(archive) : $(extract) ; +} + + +rule ExtractArchiveToPackage package : dirTokens : archiveFile : alwaysUpdate + : extractedSubDir +{ + # TODO: Update support? + ExtractArchiveToContainer $(package) : $(dirTokens) : $(archiveFile) + : $(extractedSubDir) ; +} + + +rule AddDriversToPackage package : relativeDirectoryTokens : targets +{ + AddDriversToContainer $(package) : $(relativeDirectoryTokens) : $(targets) ; +} + + +rule AddNewDriversToPackage package : relativeDirectoryTokens : targets +{ + AddNewDriversToContainer $(package) : $(relativeDirectoryTokens) + : $(targets) ; +} + + +rule AddBootModuleSymlinksToPackage package : targets +{ + AddBootModuleSymlinksToContainer $(package) : $(targets) ; +} + + +rule AddLibrariesToPackage package : directory : libs +{ + AddLibrariesToContainer $(package) : $(directory) : $(libs) ; +} diff --git a/build/scripts/build_haiku_image b/build/scripts/build_haiku_image index 1d2aed0647..1025c4bf7b 100755 --- a/build/scripts/build_haiku_image +++ b/build/scripts/build_haiku_image @@ -331,16 +331,18 @@ fi # ! updateOnly # add the concatenated copyrights as an attribute to AboutSystem +# TODO: That might not be necessary, when all third-party software everything +# is packaged. Though we might not package everything. -if [ ! $updateOnly ]; then - if [ -f $copyrightsFile ]; then - copyrightAttrs=$tmpDir/copyrightAttrs - $rmAttrs -f $copyrightAttrs - touch $copyrightAttrs - $addattr -f $copyrightsFile COPYRIGHTS $copyrightAttrs - $copyAttrs ${sPrefix}$copyrightAttrs ${tPrefix}system/apps/AboutSystem - fi -fi +# if [ ! $updateOnly ]; then +# if [ -f $copyrightsFile ]; then +# copyrightAttrs=$tmpDir/copyrightAttrs +# $rmAttrs -f $copyrightAttrs +# touch $copyrightAttrs +# $addattr -f $copyrightsFile COPYRIGHTS $copyrightAttrs +# $copyAttrs ${sPrefix}$copyrightAttrs ${tPrefix}system/apps/AboutSystem +# fi +# fi if [ $isCD ]; then # generate the attribute stores diff --git a/build/scripts/build_haiku_package b/build/scripts/build_haiku_package new file mode 100755 index 0000000000..2b326d55d8 --- /dev/null +++ b/build/scripts/build_haiku_package @@ -0,0 +1,66 @@ +#!/bin/sh +set -o errexit + +# The first argument is the shell script that initializes the variables: +# sourceDir +# outputDir +# tmpDir +# addBuildCompatibilityLibDir +# +# addattr +# copyattr +# package +# rc +# rmAttrs +# unzip +# + +if [ $# -le 1 ]; then + echo "$0: Missing parameters!" >&2 + exit 1 +fi + +packagePath="$1" +packageInfoPath="$2" +shift 2 +echo "Building package $1 with info $2..." + +if [ $# -gt 0 ]; then + . $1 + shift +fi + +# this adds the build library dir to LD_LIBRARY_PATH +eval "$addBuildCompatibilityLibDir" + + +# make a clean contents dir +contentsDir="$tmpDir/contents" +$rmAttrs -rf "$contentsDir" +mkdir -p "$contentsDir" + + +# map the shell commands +sPrefix= +tPrefix="$contentsDir/" +cd=cd +scd=: +cp="$copyattr -d" +copyAttrs="$copyattr" +ln=ln +mkdir=mkdir +rm=$rmAttrs +mkindex=mkindex + + +# execute the scripts preparing the package contents +while [ $# -gt 0 ]; do + . $1 + shift +done + + +# create the package +cp "$packageInfoPath" "$contentsDir/.PackageInfo" +rm -f "$packagePath" +$package create -C "$contentsDir" "$packagePath" diff --git a/src/data/package_infos/haiku b/src/data/package_infos/haiku new file mode 100644 index 0000000000..4c2db1e64f --- /dev/null +++ b/src/data/package_infos/haiku @@ -0,0 +1,19 @@ +name = Haiku +version = 1-1 +architecture = x86 +summary = "The Haiku base system" +description = "The Haiku base system includes all system core software, like +boot loader, kernel, the system libraries, servers, and applications." + +packager = "Ingo Weinhold " +vendor = "Haiku Project" + +copyright = "2001-2011 Haiku, Inc. et al" +licenses = [ "MIT" ] + +provides = [ + haiku +] + +requires = [ +]