Package rule: introduce current package notion

The HaikuPackage rule now sets the variable
HAIKU_CURRENTLY_BUILT_HAIKU_PACKAGE to the given package and all
*ToPackage rules use that instead of a parameter. This saves passing the
package in each of those rule invocations.
This commit is contained in:
Ingo Weinhold 2011-06-18 02:19:53 +02:00
parent dcdeed6176
commit 2bda1e84fe
2 changed files with 160 additions and 188 deletions

View File

@ -8,107 +8,92 @@ for driver in $(SYSTEM_ADD_ONS_DRIVERS_NET) {
local archive = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_ARCHIVE) ] ; local archive = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_ARCHIVE) ] ;
local extract = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_DO_EXTRACT) ] ; local extract = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_DO_EXTRACT) ] ;
if $(archive) { if $(archive) {
AddWifiFirmwareToPackage $(haikuPackage) : $(driver) : $(package) AddWifiFirmwareToPackage $(driver) : $(package) : $(archive)
: $(archive) : $(extract) ; : $(extract) ;
} }
local packages = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_PACKAGES) ] ; local packages = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_PACKAGES) ] ;
local archives = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_ARCHIVES) ] ; local archives = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_ARCHIVES) ] ;
for archive in $(archives) { for archive in $(archives) {
AddWifiFirmwareToPackage $(haikuPackage) : $(driver) : $(packages[1]) AddWifiFirmwareToPackage $(driver) : $(packages[1]) : $(archive)
: $(archive) : $(extract) ; : $(extract) ;
packages = $(packages[2-]) ; packages = $(packages[2-]) ;
} }
} }
# modules # modules
AddFilesToPackage $(haikuPackage) : add-ons kernel bus_managers AddFilesToPackage add-ons kernel bus_managers : $(SYSTEM_ADD_ONS_BUS_MANAGERS) ;
: $(SYSTEM_ADD_ONS_BUS_MANAGERS) ; AddFilesToPackage add-ons kernel busses agp_gart : $(X86_ONLY)<agp_gart>intel ;
AddFilesToPackage $(haikuPackage) : add-ons kernel busses agp_gart
: $(X86_ONLY)<agp_gart>intel ;
if $(HAIKU_ATA_STACK) = 1 { if $(HAIKU_ATA_STACK) = 1 {
AddFilesToPackage $(haikuPackage) : add-ons kernel busses ata AddFilesToPackage add-ons kernel busses ata
: generic_ide_pci it8211 legacy_sata silicon_image_3112 : generic_ide_pci it8211 legacy_sata silicon_image_3112
$(X86_ONLY)ide_isa ; $(X86_ONLY)ide_isa ;
} else { } else {
AddFilesToPackage $(haikuPackage) : add-ons kernel busses ide AddFilesToPackage add-ons kernel busses ide
: generic_ide_pci it8211 legacy_sata silicon_image_3112 : generic_ide_pci it8211 legacy_sata silicon_image_3112
$(X86_ONLY)ide_isa ; $(X86_ONLY)ide_isa ;
} }
AddFilesToPackage $(haikuPackage) : add-ons kernel busses scsi AddFilesToPackage add-ons kernel busses scsi : ahci ;
: ahci ; AddFilesToPackage add-ons kernel busses usb : <usb>uhci <usb>ohci <usb>ehci ;
AddFilesToPackage $(haikuPackage) : add-ons kernel busses usb AddFilesToPackage add-ons kernel console : vga_text ;
: <usb>uhci <usb>ohci <usb>ehci ; AddFilesToPackage add-ons kernel debugger
AddFilesToPackage $(haikuPackage) : add-ons kernel console
: vga_text ;
AddFilesToPackage $(haikuPackage) : add-ons kernel debugger
: <kdebug>demangle $(X86_ONLY)<kdebug>disasm : <kdebug>demangle $(X86_ONLY)<kdebug>disasm
<kdebug>invalidate_on_exit <kdebug>usb_keyboard <kdebug>run_on_exit ; <kdebug>invalidate_on_exit <kdebug>usb_keyboard <kdebug>run_on_exit ;
AddFilesToPackage $(haikuPackage) : add-ons kernel file_systems AddFilesToPackage add-ons kernel file_systems : $(SYSTEM_ADD_ONS_FILE_SYSTEMS) ;
: $(SYSTEM_ADD_ONS_FILE_SYSTEMS) ; AddFilesToPackage add-ons kernel generic
AddFilesToPackage $(haikuPackage) : add-ons kernel generic
: $(ATA_ONLY)ata_adapter dpc $(IDE_ONLY)ide_adapter locked_pool mpu401 : $(ATA_ONLY)ata_adapter dpc $(IDE_ONLY)ide_adapter locked_pool mpu401
scsi_periph <module>tty ; scsi_periph <module>tty ;
AddFilesToPackage $(haikuPackage) : add-ons kernel partitioning_systems AddFilesToPackage add-ons kernel partitioning_systems
: amiga_rdb apple efi_gpt intel session ; : amiga_rdb apple efi_gpt intel session ;
AddFilesToPackage $(haikuPackage) : add-ons kernel interrupt_controllers AddFilesToPackage add-ons kernel interrupt_controllers : $(PPC_ONLY)openpic ;
: $(PPC_ONLY)openpic ;
if $(TARGET_ARCH) = x86 { if $(TARGET_ARCH) = x86 {
AddFilesToPackage $(haikuPackage) : add-ons kernel cpu : generic_x86 ; AddFilesToPackage add-ons kernel cpu : generic_x86 ;
} }
# drivers # drivers
AddNewDriversToPackage $(haikuPackage) : disk scsi : scsi_cd scsi_disk ; AddNewDriversToPackage disk scsi : scsi_cd scsi_disk ;
AddNewDriversToPackage $(haikuPackage) : power : $(X86_ONLY)enhanced_speedstep ; AddNewDriversToPackage power : $(X86_ONLY)enhanced_speedstep ;
AddNewDriversToPackage $(haikuPackage) : power : $(X86_ONLY)acpi_battery ; AddNewDriversToPackage power : $(X86_ONLY)acpi_battery ;
# legacy drivers # legacy drivers
AddDriversToPackage $(haikuPackage) : AddDriversToPackage : console dprintf null random <driver>tty
: console dprintf null random <driver>tty zero ; zero ;
AddDriversToPackage $(haikuPackage) : audio hmulti AddDriversToPackage audio hmulti : $(SYSTEM_ADD_ONS_DRIVERS_AUDIO) ;
: $(SYSTEM_ADD_ONS_DRIVERS_AUDIO) ; AddDriversToPackage audio old : $(SYSTEM_ADD_ONS_DRIVERS_AUDIO_OLD) ;
AddDriversToPackage $(haikuPackage) : audio old AddDriversToPackage midi : $(SYSTEM_ADD_ONS_DRIVERS_MIDI) ;
: $(SYSTEM_ADD_ONS_DRIVERS_AUDIO_OLD) ; AddDriversToPackage bus : usb_raw fw_raw ;
AddDriversToPackage $(haikuPackage) : midi AddDriversToPackage disk floppy : $(X86_ONLY)pc_floppy ;
: $(SYSTEM_ADD_ONS_DRIVERS_MIDI) ; AddDriversToPackage disk usb : usb_disk ;
AddDriversToPackage $(haikuPackage) : bus : usb_raw fw_raw ; AddDriversToPackage disk usb : usb_floppy ;
AddDriversToPackage $(haikuPackage) : disk floppy : $(X86_ONLY)pc_floppy ; AddDriversToPackage printer usb : usb_printer ;
AddDriversToPackage $(haikuPackage) : disk usb : usb_disk ; AddDriversToPackage disk virtual : nbd ;
AddDriversToPackage $(haikuPackage) : disk usb : usb_floppy ; AddDriversToPackage dvb : cx23882 ;
AddDriversToPackage $(haikuPackage) : printer usb : usb_printer ; AddDriversToPackage graphics : $(SYSTEM_ADD_ONS_DRIVERS_GRAPHICS) ;
AddDriversToPackage $(haikuPackage) : disk virtual : nbd ; AddDriversToPackage input : ps2_hid usb_hid wacom ;
AddDriversToPackage $(haikuPackage) : dvb : cx23882 ; AddDriversToPackage misc : <driver>poke <driver>mem ;
AddDriversToPackage $(haikuPackage) : graphics AddDriversToPackage net : $(SYSTEM_ADD_ONS_DRIVERS_NET) ;
: $(SYSTEM_ADD_ONS_DRIVERS_GRAPHICS) ; AddDriversToPackage ports : usb_serial ;
AddDriversToPackage $(haikuPackage) : input : ps2_hid usb_hid wacom ; #AddDriversToPackage power : $(SYSTEM_ADD_ONS_DRIVERS_POWER) ;
AddDriversToPackage $(haikuPackage) : misc : <driver>poke <driver>mem ;
AddDriversToPackage $(haikuPackage) : net
: $(SYSTEM_ADD_ONS_DRIVERS_NET) ;
AddDriversToPackage $(haikuPackage) : ports : usb_serial ;
#AddDriversToPackage $(haikuPackage) : power
# : $(SYSTEM_ADD_ONS_DRIVERS_POWER) ;
# kernel # kernel
AddFilesToPackage $(haikuPackage) : : <revisioned>kernel_$(TARGET_ARCH) ; AddFilesToPackage : <revisioned>kernel_$(TARGET_ARCH) ;
# libs # libs
AddLibrariesToPackage $(haikuPackage) : lib AddLibrariesToPackage lib : $(SYSTEM_LIBS) $(PRIVATE_SYSTEM_LIBS) ;
: $(SYSTEM_LIBS) $(PRIVATE_SYSTEM_LIBS) ;
# libnetwork.so replaces quite a few libraries # libnetwork.so replaces quite a few libraries
SYSTEM_LIBS_LIBNETWORK_ALIASES SYSTEM_LIBS_LIBNETWORK_ALIASES = libsocket.so libbind.so libnet.so ;
= libsocket.so libbind.so libnet.so ;
if $(HAIKU_GCC_VERSION[1]) = 2 { if $(HAIKU_GCC_VERSION[1]) = 2 {
local lib ; local lib ;
for lib in $(SYSTEM_LIBS_LIBNETWORK_ALIASES) { for lib in $(SYSTEM_LIBS_LIBNETWORK_ALIASES) {
AddSymlinkToPackage $(haikuPackage) : lib : libnetwork.so : $(lib) ; AddSymlinkToPackage lib : libnetwork.so : $(lib) ;
} }
AddSymlinkToPackage $(haikuPackage) : lib : libbnetapi.so : libnetapi.so ; AddSymlinkToPackage lib : libbnetapi.so : libnetapi.so ;
} }
@ -119,7 +104,7 @@ SYSTEM_LIBS_LIBGL_ALIASES
if $(TARGET_ARCH) = x86 { if $(TARGET_ARCH) = x86 {
local lib ; local lib ;
for lib in $(SYSTEM_LIBS_LIBGL_ALIASES) { for lib in $(SYSTEM_LIBS_LIBGL_ALIASES) {
AddSymlinkToPackage $(haikuPackage) : lib : libGL.so : $(lib) ; AddSymlinkToPackage lib : libGL.so : $(lib) ;
} }
} }
@ -130,108 +115,102 @@ SYSTEM_LIBS_ALIASES =
; ;
# servers # servers
AddFilesToPackage $(haikuPackage) : servers : $(SYSTEM_SERVERS) ; AddFilesToPackage servers : $(SYSTEM_SERVERS) ;
# apps # apps
AddFilesToPackage $(haikuPackage) : : runtime_loader ; AddFilesToPackage : runtime_loader ;
AddFilesToPackage $(haikuPackage) : : Deskbar Tracker ; AddFilesToPackage : Deskbar Tracker ;
AddFilesToPackage $(haikuPackage) : bin : $(SYSTEM_BIN) consoled ; AddFilesToPackage bin : $(SYSTEM_BIN) consoled ;
AddFilesToPackage $(haikuPackage) : apps : $(SYSTEM_APPS) ; AddFilesToPackage apps : $(SYSTEM_APPS) ;
AddFilesToPackage $(haikuPackage) : preferences : $(SYSTEM_PREFERENCES) ; AddFilesToPackage preferences : $(SYSTEM_PREFERENCES) ;
AddFilesToPackage $(haikuPackage) : demos : $(SYSTEM_DEMOS) ; AddFilesToPackage demos : $(SYSTEM_DEMOS) ;
SEARCH on which = [ FDirName $(HAIKU_TOP) data bin ] ; SEARCH on which = [ FDirName $(HAIKU_TOP) data bin ] ;
AddFilesToPackage $(haikuPackage) : bin : which ; AddFilesToPackage bin : which ;
SEARCH on installoptionalpackage = [ FDirName $(HAIKU_TOP) data bin ] ; SEARCH on installoptionalpackage = [ FDirName $(HAIKU_TOP) data bin ] ;
AddFilesToPackage $(haikuPackage) : bin : installoptionalpackage ; AddFilesToPackage bin : installoptionalpackage ;
SEARCH on install-wifi-firmwares.sh = [ FDirName $(HAIKU_TOP) data bin ] ; SEARCH on install-wifi-firmwares.sh = [ FDirName $(HAIKU_TOP) data bin ] ;
AddFilesToPackage $(haikuPackage) : bin : install-wifi-firmwares.sh ; AddFilesToPackage bin : install-wifi-firmwares.sh ;
AddSymlinkToPackage $(haikuPackage) : bin : bash : sh ; AddSymlinkToPackage bin : bash : sh ;
AddSymlinkToPackage $(haikuPackage) : bin : trash : untrash ; AddSymlinkToPackage bin : trash : untrash ;
AddSymlinkToPackage $(haikuPackage) : bin : bzip2 : bunzip2 ; AddSymlinkToPackage bin : bzip2 : bunzip2 ;
AddSymlinkToPackage $(haikuPackage) : bin : less : more ; AddSymlinkToPackage bin : less : more ;
AddSymlinkToPackage $(haikuPackage) : bin : gzip : gunzip ; AddSymlinkToPackage bin : gzip : gunzip ;
AddSymlinkToPackage $(haikuPackage) : bin : gzip : zcat ; AddSymlinkToPackage bin : gzip : zcat ;
AddSymlinkToPackage $(haikuPackage) : bin : zdiff : zcmp ; AddSymlinkToPackage bin : zdiff : zcmp ;
AddSymlinkToPackage $(haikuPackage) : bin : unzip : zipinfo ; AddSymlinkToPackage bin : unzip : zipinfo ;
AddSymlinkToPackage $(haikuPackage) : bin : gawk : awk ; AddSymlinkToPackage bin : gawk : awk ;
AddSymlinkToPackage $(haikuPackage) : bin : grep : egrep ; AddSymlinkToPackage bin : grep : egrep ;
AddSymlinkToPackage $(haikuPackage) : bin : grep : fgrep ; AddSymlinkToPackage bin : grep : fgrep ;
# scripts and data files # scripts and data files
local bootScripts = Bootscript Bootscript.cd SetupEnvironment Netscript local bootScripts = Bootscript Bootscript.cd SetupEnvironment Netscript
InstallerInitScript InstallerFinishScript ; InstallerInitScript InstallerFinishScript ;
SEARCH on $(bootScripts) = [ FDirName $(HAIKU_TOP) data system boot ] ; SEARCH on $(bootScripts) = [ FDirName $(HAIKU_TOP) data system boot ] ;
AddFilesToPackage $(haikuPackage) : boot : $(bootScripts) ; AddFilesToPackage boot : $(bootScripts) ;
# artwork and sounds # artwork and sounds
local logoArtwork = local logoArtwork =
$(HAIKU_INCLUDE_TRADEMARKS)"HAIKU logo - white on blue - big.png" $(HAIKU_INCLUDE_TRADEMARKS)"HAIKU logo - white on blue - big.png"
$(HAIKU_INCLUDE_TRADEMARKS)"HAIKU logo - white on blue - normal.png" ; $(HAIKU_INCLUDE_TRADEMARKS)"HAIKU logo - white on blue - normal.png" ;
SEARCH on $(logoArtwork) = [ FDirName $(HAIKU_TOP) data artwork ] ; SEARCH on $(logoArtwork) = [ FDirName $(HAIKU_TOP) data artwork ] ;
AddFilesToPackage $(haikuPackage) : data artwork : $(logoArtwork) ; AddFilesToPackage data artwork : $(logoArtwork) ;
AddDirectoryToPackage $(haikuPackage) : data sounds ; AddDirectoryToPackage data sounds ;
# Mail spell check dictionaries # Mail spell check dictionaries
local spellFiles = words geekspeak ; local spellFiles = words geekspeak ;
spellFiles = $(spellFiles:G=spell) ; spellFiles = $(spellFiles:G=spell) ;
SEARCH on $(spellFiles) = [ FDirName $(HAIKU_TOP) src apps mail ] ; SEARCH on $(spellFiles) = [ FDirName $(HAIKU_TOP) src apps mail ] ;
AddFilesToPackage $(haikuPackage) : data spell_check word_dictionary AddFilesToPackage data spell_check word_dictionary : $(spellFiles) ;
: $(spellFiles) ;
local dataFiles = teapot.data ; local dataFiles = teapot.data ;
dataFiles = $(dataFiles:G=data) ; dataFiles = $(dataFiles:G=data) ;
SEARCH on $(dataFiles) = [ FDirName $(HAIKU_TOP) data system data ] ; SEARCH on $(dataFiles) = [ FDirName $(HAIKU_TOP) data system data ] ;
AddFilesToPackage $(haikuPackage) : data : $(dataFiles) ; AddFilesToPackage data : $(dataFiles) ;
local fortuneFiles = [ Glob $(HAIKU_TOP)/data/system/data/fortunes local fortuneFiles = [ Glob $(HAIKU_TOP)/data/system/data/fortunes
: [a-zA-Z0-9]* ] ; : [a-zA-Z0-9]* ] ;
fortuneFiles = $(fortuneFiles:G=data!fortunes) ; fortuneFiles = $(fortuneFiles:G=data!fortunes) ;
AddFilesToPackage $(haikuPackage) : data fortunes : $(fortuneFiles) ; AddFilesToPackage data fortunes : $(fortuneFiles) ;
local fontDir = [ FDirName $(HAIKU_TOP) data system data fonts ] ; local fontDir = [ FDirName $(HAIKU_TOP) data system data fonts ] ;
local psFonts = [ Glob $(fontDir)/psfonts : *.afm *.pfb ] ; local psFonts = [ Glob $(fontDir)/psfonts : *.afm *.pfb ] ;
local ttFonts = [ Glob $(fontDir)/ttfonts : *.ttf ] ; local ttFonts = [ Glob $(fontDir)/ttfonts : *.ttf ] ;
AddFilesToPackage $(haikuPackage) : data fonts psfonts : $(psFonts) ; AddFilesToPackage data fonts psfonts : $(psFonts) ;
AddFilesToPackage $(haikuPackage) : data fonts ttfonts : $(ttFonts) ; AddFilesToPackage data fonts ttfonts : $(ttFonts) ;
local cannaDir = [ FDirName $(HAIKU_TOP) data system data Canna ] ; local cannaDir = [ FDirName $(HAIKU_TOP) data system data Canna ] ;
local cannaDefault = [ Glob $(cannaDir)/default : *.canna *.gz ] ; local cannaDefault = [ Glob $(cannaDir)/default : *.canna *.gz ] ;
local cannaDic = [ Glob $(cannaDir)/dic : *.cbp ] ; local cannaDic = [ Glob $(cannaDir)/dic : *.cbp ] ;
local cannaDicCanna = [ Glob $(cannaDir)/dic/canna local cannaDicCanna = [ Glob $(cannaDir)/dic/canna
: *.cld *.ctd *.cbd *.dir ] ; : *.cld *.ctd *.cbd *.dir ] ;
AddFilesToPackage $(haikuPackage) : data Canna default AddFilesToPackage data Canna default : $(cannaDefault) ;
: $(cannaDefault) ; AddFilesToPackage data Canna dic : $(cannaDic) ;
AddFilesToPackage $(haikuPackage) : data Canna dic : $(cannaDic) ; AddFilesToPackage data Canna dic canna : $(cannaDicCanna) ;
AddFilesToPackage $(haikuPackage) : data Canna dic canna AddDirectoryToPackage data Canna dic group ;
: $(cannaDicCanna) ; AddDirectoryToPackage data Canna dic user ;
AddDirectoryToPackage $(haikuPackage) : data Canna dic group ;
AddDirectoryToPackage $(haikuPackage) : data Canna dic user ;
local keymapFiles = [ Glob [ FDirName $(HAIKU_TOP) src data keymaps ] local keymapFiles = [ Glob [ FDirName $(HAIKU_TOP) src data keymaps ]
: *.keymap ] ; : *.keymap ] ;
keymapFiles = $(keymapFiles:BG=keymap) ; keymapFiles = $(keymapFiles:BG=keymap) ;
AddFilesToPackage $(haikuPackage) : data Keymaps : $(keymapFiles) ; AddFilesToPackage data Keymaps : $(keymapFiles) ;
AddSymlinkToPackage $(haikuPackage) : data Keymaps : Swedish AddSymlinkToPackage data Keymaps : Swedish : Finnish ;
: Finnish ; AddSymlinkToPackage data Keymaps : Slovene : Croatian ;
AddSymlinkToPackage $(haikuPackage) : data Keymaps : Slovene AddSymlinkToPackage data Keymaps : US-International : Brazilian ;
: Croatian ;
AddSymlinkToPackage $(haikuPackage) : data Keymaps : US-International
: Brazilian ;
local keyboardLayoutsDir local keyboardLayoutsDir
= [ FDirName $(HAIKU_TOP) data system data KeyboardLayouts ] ; = [ FDirName $(HAIKU_TOP) data system data KeyboardLayouts ] ;
local keyboardLayouts = [ Glob $(keyboardLayoutsDir) : [^.]* ] ; local keyboardLayouts = [ Glob $(keyboardLayoutsDir) : [^.]* ] ;
AddFilesToPackage $(haikuPackage) : data KeyboardLayouts : $(keyboardLayouts) ; AddFilesToPackage data KeyboardLayouts : $(keyboardLayouts) ;
# boot loader # boot loader
AddFilesToPackage $(haikuPackage) : : haiku_loader ; AddFilesToPackage : haiku_loader ;
# boot module links # boot module links
AddBootModuleSymlinksToPackage $(haikuPackage) : AddBootModuleSymlinksToPackage
$(X86_ONLY)acpi $(ATA_ONLY)ata pci $(X86_ONLY)isa config_manager dpc $(X86_ONLY)acpi $(ATA_ONLY)ata pci $(X86_ONLY)isa config_manager dpc
$(IDE_ONLY)ide scsi usb $(IDE_ONLY)ide scsi usb
$(PPC_ONLY)openpic $(PPC_ONLY)openpic
@ -245,88 +224,75 @@ AddBootModuleSymlinksToPackage $(haikuPackage) :
; ;
# add-ons # add-ons
AddFilesToPackage $(haikuPackage) : add-ons accelerants AddFilesToPackage add-ons accelerants : $(SYSTEM_ADD_ONS_ACCELERANTS) ;
: $(SYSTEM_ADD_ONS_ACCELERANTS) ; AddFilesToPackage add-ons opengl : Mesa\ Software\ Renderer ;
AddFilesToPackage $(haikuPackage) : add-ons opengl AddFilesToPackage add-ons Translators : $(SYSTEM_ADD_ONS_TRANSLATORS) ;
: Mesa\ Software\ Renderer ; AddFilesToPackage add-ons locale catalogs : $(SYSTEM_ADD_ONS_LOCALE_CATALOGS) ;
AddFilesToPackage $(haikuPackage) : add-ons Translators
: $(SYSTEM_ADD_ONS_TRANSLATORS) ; AddFilesToPackage add-ons mail_daemon inbound_protocols : POP3 IMAP ;
AddFilesToPackage $(haikuPackage) : add-ons locale catalogs AddFilesToPackage add-ons mail_daemon outbound_protocols : SMTP ;
: $(SYSTEM_ADD_ONS_LOCALE_CATALOGS) ; AddFilesToPackage add-ons mail_daemon inbound_filters
AddFilesToPackage $(haikuPackage) : add-ons locale catalogs
: $(SYSTEM_ADD_ONS_LOCALE_CATALOGS) ;
AddFilesToPackage $(haikuPackage) : add-ons mail_daemon inbound_protocols
: POP3 IMAP ;
AddFilesToPackage $(haikuPackage) : add-ons mail_daemon outbound_protocols
: SMTP ;
AddFilesToPackage $(haikuPackage) : add-ons mail_daemon inbound_filters
: MatchHeader SpamFilter NewMailNotification ; : MatchHeader SpamFilter NewMailNotification ;
AddFilesToPackage $(haikuPackage) : add-ons mail_daemon outbound_filters AddFilesToPackage add-ons mail_daemon outbound_filters : Fortune ;
: Fortune ;
AddFilesToPackage $(haikuPackage) : add-ons media : $(SYSTEM_ADD_ONS_MEDIA) ; AddFilesToPackage add-ons media : $(SYSTEM_ADD_ONS_MEDIA) ;
AddFilesToPackage $(haikuPackage) : add-ons media plugins AddFilesToPackage add-ons media plugins : $(SYSTEM_ADD_ONS_MEDIA_PLUGINS) ;
: $(SYSTEM_ADD_ONS_MEDIA_PLUGINS) ; AddFilesToPackage add-ons Tracker
AddFilesToPackage $(haikuPackage) : add-ons Tracker
: FileType-F Mark\ as… Mark\ as\ Read-R Open\ Target\ Folder-O : FileType-F Mark\ as… Mark\ as\ Read-R Open\ Target\ Folder-O
Open\ Terminal-T ZipOMatic-Z ; Open\ Terminal-T ZipOMatic-Z ;
AddSymlinkToPackage $(haikuPackage) : add-ons Tracker AddSymlinkToPackage add-ons Tracker
: /boot/system/preferences/Backgrounds : Background-B ; : /boot/system/preferences/Backgrounds : Background-B ;
AddSymlinkToPackage $(haikuPackage) : add-ons Tracker AddSymlinkToPackage add-ons Tracker
: /boot/system/apps/TextSearch : TextSearch-G ; : /boot/system/apps/TextSearch : TextSearch-G ;
AddSymlinkToPackage $(haikuPackage) : add-ons Tracker AddSymlinkToPackage add-ons Tracker
: /boot/system/apps/DiskUsage : DiskUsage-I ; : /boot/system/apps/DiskUsage : DiskUsage-I ;
AddFilesToPackage $(haikuPackage) : add-ons input_server devices AddFilesToPackage add-ons input_server devices
: <input>keyboard <input>mouse <input>tablet <input>wacom ; : <input>keyboard <input>mouse <input>tablet <input>wacom ;
AddFilesToPackage $(haikuPackage) : add-ons input_server filters AddFilesToPackage add-ons input_server filters
: screen_saver shortcut_catcher ; : screen_saver shortcut_catcher ;
AddFilesToPackage $(haikuPackage) : add-ons kernel network AddFilesToPackage add-ons kernel network
: <net>notifications stack ; : <net>notifications stack ;
AddFilesToPackage $(haikuPackage) : add-ons kernel network devices AddFilesToPackage add-ons kernel network devices
: $(SYSTEM_NETWORK_DEVICES) ; : $(SYSTEM_NETWORK_DEVICES) ;
AddFilesToPackage $(haikuPackage) : add-ons kernel network datalink_protocols AddFilesToPackage add-ons kernel network datalink_protocols
: $(SYSTEM_NETWORK_DATALINK_PROTOCOLS) ; : $(SYSTEM_NETWORK_DATALINK_PROTOCOLS) ;
AddFilesToPackage $(haikuPackage) : add-ons kernel network ppp AddFilesToPackage add-ons kernel network ppp: $(SYSTEM_NETWORK_PPP) ;
: $(SYSTEM_NETWORK_PPP) ; AddFilesToPackage add-ons kernel network protocols
AddFilesToPackage $(haikuPackage) : add-ons kernel network protocols
: $(SYSTEM_NETWORK_PROTOCOLS) ; : $(SYSTEM_NETWORK_PROTOCOLS) ;
AddFilesToPackage $(haikuPackage) : add-ons Print AddFilesToPackage add-ons Print : $(SYSTEM_ADD_ONS_PRINT) ;
: $(SYSTEM_ADD_ONS_PRINT) ; AddFilesToPackage add-ons Print transport
AddFilesToPackage $(haikuPackage) : add-ons Print transport
: $(SYSTEM_ADD_ONS_PRINT_TRANSPORT) ; : $(SYSTEM_ADD_ONS_PRINT_TRANSPORT) ;
AddFilesToPackage $(haikuPackage) : add-ons Screen\ Savers AddFilesToPackage add-ons Screen\ Savers : $(SYSTEM_ADD_ONS_SCREENSAVERS) ;
: $(SYSTEM_ADD_ONS_SCREENSAVERS) ;
AddFilesToPackage $(haikuPackage) : add-ons disk_systems AddFilesToPackage add-ons disk_systems : <disk_system>intel <disk_system>bfs ;
: <disk_system>intel <disk_system>bfs ;
AddDirectoryToPackage $(haikuPackage) : data synth ; AddDirectoryToPackage data synth ;
AddDirectoryToPackage $(haikuPackage) : add-ons input_server methods ; AddDirectoryToPackage add-ons input_server methods ;
# optional # optional
# TODO: We should probably build another package that can be installed, if # TODO: We should probably build another package (including the data files
# desired. # above) that can be installed, if desired.
AddFilesToPackage $(haikuPackage) : optional add-ons input_server methods AddFilesToPackage optional add-ons input_server methods : canna ;
: canna ;
# PDF Writer enconding files # PDF Writer enconding files
CopyDirectoryToPackage $(haikuPackage) : data CopyDirectoryToPackage data
: [ FDirName $(HAIKU_TOP) src add-ons print drivers pdf encoding ] : [ FDirName $(HAIKU_TOP) src add-ons print drivers pdf encoding ]
: "PDF Writer" : -x .svn -x Jamfile ; : "PDF Writer" : -x .svn -x Jamfile ;
# licenses # licenses
CopyDirectoryToPackage $(haikuPackage) : data CopyDirectoryToPackage data
: [ FDirName $(HAIKU_TOP) data system data licenses ] : [ FDirName $(HAIKU_TOP) data system data licenses ]
: licenses : -x .svn ; : licenses : -x .svn ;
# Copy documentation as per DiskUsage's license requirement. # Copy documentation as per DiskUsage's license requirement.
CopyDirectoryToPackage $(haikuPackage) : documentation CopyDirectoryToPackage documentation
: [ FDirName $(HAIKU_TOP) docs apps diskusage ] : [ FDirName $(HAIKU_TOP) docs apps diskusage ]
: diskusage : -x .svn ; : diskusage : -x .svn ;
# Copy documentation as per PDFlib Lite's license requirement. # Copy documentation as per PDFlib Lite's license requirement.
CopyDirectoryToPackage $(haikuPackage) : documentation CopyDirectoryToPackage documentation
: [ FDirName $(HAIKU_TOP) src libs pdflib doc ] : [ FDirName $(HAIKU_TOP) src libs pdflib doc ]
: pdflib : -x .svn ; : pdflib : -x .svn ;

View File

@ -272,6 +272,8 @@ rule HaikuPackage package
= $(grist)_HAIKU_INCLUDE_IN_PACKAGE ; = $(grist)_HAIKU_INCLUDE_IN_PACKAGE ;
HAIKU_INSTALL_TARGETS_VAR on $(package) HAIKU_INSTALL_TARGETS_VAR on $(package)
= $(grist)_HAIKU_PACKAGE_INSTALL_TARGETS ; = $(grist)_HAIKU_PACKAGE_INSTALL_TARGETS ;
HAIKU_CURRENTLY_BUILT_HAIKU_PACKAGE = $(package) ;
} }
@ -338,81 +340,85 @@ actions BuildHaikuPackage1
} }
rule AddDirectoryToPackage package : directoryTokens : attributeFiles rule AddDirectoryToPackage directoryTokens : attributeFiles
{ {
return [ AddDirectoryToContainer $(package) return [ AddDirectoryToContainer $(HAIKU_CURRENTLY_BUILT_HAIKU_PACKAGE)
: $(directoryTokens) : $(attributeFiles) ] ; : $(directoryTokens) : $(attributeFiles) ] ;
} }
rule AddFilesToPackage package : directory : targets : destName rule AddFilesToPackage directory : targets : destName
{ {
AddFilesToContainer $(package) : $(directory) : $(targets) : $(destName) ; AddFilesToContainer $(HAIKU_CURRENTLY_BUILT_HAIKU_PACKAGE) : $(directory)
: $(targets) : $(destName) ;
} }
rule AddSymlinkToPackage package : directoryTokens : linkTarget : linkName rule AddSymlinkToPackage directoryTokens : linkTarget : linkName
{ {
linkTarget = $(linkTarget:J=/) ; linkTarget = $(linkTarget:J=/) ;
AddSymlinkToContainer $(package) : $(directoryTokens) : $(linkTarget) AddSymlinkToContainer $(HAIKU_CURRENTLY_BUILT_HAIKU_PACKAGE)
: $(linkName) ; : $(directoryTokens) : $(linkTarget) : $(linkName) ;
} }
rule CopyDirectoryToPackage package : directoryTokens : sourceDirectory rule CopyDirectoryToPackage directoryTokens : sourceDirectory
: targetDirectoryName : excludePatterns : alwaysUpdate : targetDirectoryName : excludePatterns : alwaysUpdate
{ {
CopyDirectoryToContainer $(package) : $(directoryTokens) CopyDirectoryToContainer $(HAIKU_CURRENTLY_BUILT_HAIKU_PACKAGE)
: $(sourceDirectory) : $(targetDirectoryName) : $(excludePatterns) : $(directoryTokens) : $(sourceDirectory) : $(targetDirectoryName)
: $(alwaysUpdate) ; : $(excludePatterns) : $(alwaysUpdate) ;
} }
rule AddHeaderDirectoryToPackage package : dirTokens : dirName : alwaysUpdate rule AddHeaderDirectoryToPackage dirTokens : dirName : alwaysUpdate
{ {
AddHeaderDirectoryToContainer $(package) : $(dirTokens) : $(dirName) AddHeaderDirectoryToContainer $(HAIKU_CURRENTLY_BUILT_HAIKU_PACKAGE)
: $(alwaysUpdate) ; : $(dirTokens) : $(dirName) : $(alwaysUpdate) ;
} }
rule AddWifiFirmwareToPackage package : driver : subDirToExtract : archive rule AddWifiFirmwareToPackage driver : subDirToExtract : archive
: extract : extract
{ {
AddWifiFirmwareToContainer $(package) : $(driver) : $(subDirToExtract) AddWifiFirmwareToContainer $(HAIKU_CURRENTLY_BUILT_HAIKU_PACKAGE)
: $(archive) : $(extract) ; : $(driver) : $(subDirToExtract) : $(archive) : $(extract) ;
} }
rule ExtractArchiveToPackage package : dirTokens : archiveFile : alwaysUpdate rule ExtractArchiveToPackage dirTokens : archiveFile : alwaysUpdate
: extractedSubDir : extractedSubDir
{ {
# TODO: Update support? # TODO: Update support?
ExtractArchiveToContainer $(package) : $(dirTokens) : $(archiveFile) ExtractArchiveToContainer $(HAIKU_CURRENTLY_BUILT_HAIKU_PACKAGE)
: $(extractedSubDir) ; : $(dirTokens) : $(archiveFile) : $(extractedSubDir) ;
} }
rule AddDriversToPackage package : relativeDirectoryTokens : targets rule AddDriversToPackage relativeDirectoryTokens : targets
{ {
AddDriversToContainer $(package) : $(relativeDirectoryTokens) : $(targets) ; AddDriversToContainer $(HAIKU_CURRENTLY_BUILT_HAIKU_PACKAGE)
: $(relativeDirectoryTokens) : $(targets) ;
} }
rule AddNewDriversToPackage package : relativeDirectoryTokens : targets rule AddNewDriversToPackage relativeDirectoryTokens : targets
{ {
AddNewDriversToContainer $(package) : $(relativeDirectoryTokens) AddNewDriversToContainer $(HAIKU_CURRENTLY_BUILT_HAIKU_PACKAGE)
: $(relativeDirectoryTokens) : $(targets) ;
}
rule AddBootModuleSymlinksToPackage targets
{
AddBootModuleSymlinksToContainer $(HAIKU_CURRENTLY_BUILT_HAIKU_PACKAGE)
: $(targets) ; : $(targets) ;
} }
rule AddBootModuleSymlinksToPackage package : targets rule AddLibrariesToPackage directory : libs
{ {
AddBootModuleSymlinksToContainer $(package) : $(targets) ; AddLibrariesToContainer $(HAIKU_CURRENTLY_BUILT_HAIKU_PACKAGE)
} : $(directory) : $(libs) ;
rule AddLibrariesToPackage package : directory : libs
{
AddLibrariesToContainer $(package) : $(directory) : $(libs) ;
} }