1local architecture = $(HAIKU_PACKAGING_ARCHS[1]) ; 2 3 4local haikuPackage = haiku.hpkg ; 5HaikuPackage $(haikuPackage) ; 6 7 8# wifi firmware 9local driver ; 10for driver in $(SYSTEM_ADD_ONS_DRIVERS_NET) { 11 local package = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_PACKAGE) ] ; 12 local archive = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_ARCHIVE) ] ; 13 local extract = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_DO_EXTRACT) ] ; 14 if $(archive) { 15 AddWifiFirmwareToPackage $(driver) : $(package) : $(archive) 16 : $(extract) ; 17 } 18 local packages = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_PACKAGES) ] ; 19 local archives = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_ARCHIVES) ] ; 20 local archive ; 21 for archive in $(archives) { 22 AddWifiFirmwareToPackage $(driver) : $(packages[1]) : $(archive) 23 : $(extract) ; 24 packages = $(packages[2-]) ; 25 } 26} 27 28 29# modules 30AddFilesToPackage add-ons kernel bus_managers : $(SYSTEM_ADD_ONS_BUS_MANAGERS) ; 31AddFilesToPackage add-ons kernel busses agp_gart : <agp_gart>intel@x86,x86_64 ; 32 33AddFilesToPackage add-ons kernel busses ata 34 : generic_ide_pci it8211 legacy_sata silicon_image_3112 highpoint_ide_pci ide_isa@x86 ; 35 36AddFilesToPackage add-ons kernel busses scsi : ahci virtio_scsi ; 37AddFilesToPackage add-ons kernel busses usb : <usb>uhci <usb>ohci <usb>ehci ; 38AddFilesToPackage add-ons kernel busses virtio : virtio_pci ; 39AddFilesToPackage add-ons kernel console : vga_text ; 40AddFilesToPackage add-ons kernel debugger 41 : <kdebug>demangle <kdebug>disasm@x86 #<kdebug>hangman 42 <kdebug>invalidate_on_exit <kdebug>usb_keyboard 43 <kdebug>run_on_exit ; 44AddFilesToPackage add-ons kernel file_systems : $(SYSTEM_ADD_ONS_FILE_SYSTEMS) ; 45AddFilesToPackage add-ons kernel generic 46 : ata_adapter bios@x86,x86_64 dpc 47 locked_pool mpu401 scsi_periph <module>tty ; 48AddFilesToPackage add-ons kernel partitioning_systems 49 : amiga_rdb@m68k apple@ppc efi_gpt intel session ; 50AddFilesToPackage add-ons kernel interrupt_controllers : openpic@ppc ; 51AddFilesToPackage add-ons kernel power cpufreq : intel_pstates@x86,x86_64 ; 52AddFilesToPackage add-ons kernel power cpuidle : intel_cstates@x86,x86_64 ; 53 54if $(TARGET_ARCH) = x86 || $(TARGET_ARCH) = x86_64 { 55 AddFilesToPackage add-ons kernel cpu : generic_x86 ; 56} 57 58# drivers 59AddNewDriversToPackage disk scsi : scsi_cd scsi_disk ; 60AddNewDriversToPackage disk virtual : ram_disk virtio_block ; 61AddNewDriversToPackage power : acpi_battery@x86 ; 62AddNewDriversToPackage network : virtio_net ; 63#AddNewDriversToPackage display : display_adapter@x86 ; 64 65# legacy drivers 66AddDriversToPackage : console dprintf null random <driver>tty 67 zero ; 68AddDriversToPackage audio hmulti : $(SYSTEM_ADD_ONS_DRIVERS_AUDIO) ; 69AddDriversToPackage audio old : $(SYSTEM_ADD_ONS_DRIVERS_AUDIO_OLD) ; 70AddDriversToPackage midi : $(SYSTEM_ADD_ONS_DRIVERS_MIDI) ; 71AddDriversToPackage bus : usb_raw ; 72AddDriversToPackage disk floppy : pc_floppy@x86 ; 73AddDriversToPackage disk usb : usb_disk ; 74AddDriversToPackage disk virtual : nbd ; 75AddDriversToPackage graphics : $(SYSTEM_ADD_ONS_DRIVERS_GRAPHICS) ; 76AddDriversToPackage input : ps2_hid usb_hid wacom ; 77AddDriversToPackage misc : <driver>poke <driver>mem ; 78AddDriversToPackage net : $(SYSTEM_ADD_ONS_DRIVERS_NET) ; 79AddDriversToPackage ports : pc_serial usb_serial ; 80AddDriversToPackage power : $(SYSTEM_ADD_ONS_DRIVERS_POWER) ; 81 82# kernel 83AddFilesToPackage : <revisioned>kernel_$(TARGET_ARCH) ; 84 85# libs 86AddLibrariesToPackage lib 87 : [ HaikuImageGetSystemLibs ] [ HaikuImageGetPrivateSystemLibs ] ; 88 89# libnetwork.so replaces quite a few libraries 90if $(HAIKU_CC_IS_LEGACY_GCC_$(architecture)) = 1 { 91 local libNetworkAliases = libsocket.so libbind.so libnet.so ; 92 local lib ; 93 for lib in $(libNetworkAliases) { 94 AddSymlinkToPackage lib : libnetwork.so : $(lib) ; 95 } 96 97 AddSymlinkToPackage lib : libbnetapi.so : libnetapi.so ; 98} 99 100 101# servers 102AddFilesToPackage servers : $(SYSTEM_SERVERS) ; 103 104# apps 105AddFilesToPackage : runtime_loader Deskbar Tracker ; 106AddFilesToPackage bin : $(SYSTEM_BIN) consoled ; 107AddFilesToPackage apps : $(SYSTEM_APPS) ; 108AddFilesToPackage preferences : $(SYSTEM_PREFERENCES) ; 109AddFilesToPackage demos : $(SYSTEM_DEMOS) ; 110 111SEARCH on install-wifi-firmwares.sh = [ FDirName $(HAIKU_TOP) data bin ] ; 112AddFilesToPackage bin : install-wifi-firmwares.sh ; 113 114AddSymlinkToPackage bin : trash : untrash ; 115AddSymlinkToPackage bin : less : more ; 116 117# scripts and data files 118local bootScripts = PostInstallScript SetupEnvironment ; 119SEARCH on $(bootScripts) = [ FDirName $(HAIKU_TOP) data system boot ] ; 120AddFilesToPackage boot : $(bootScripts) ; 121 122local launchScripts = <data!launch>system ; 123SEARCH on $(launchScripts) = [ FDirName $(HAIKU_TOP) data launch ] ; 124AddFilesToPackage data launch : $(launchScripts) ; 125 126local userLaunchScripts = <data!launch>user <data!launch>bootstrap ; 127SEARCH on $(userLaunchScripts) = [ FDirName $(HAIKU_TOP) data launch ] ; 128AddFilesToPackage data user_launch : $(userLaunchScripts) ; 129 130# first login scripts 131local firstLoginFiles = default_deskbar_items.sh ; 132firstLoginFiles = $(firstLoginFiles:G=first-login) ; 133SEARCH on $(firstLoginFiles) 134 = [ FDirName $(HAIKU_TOP) data system boot first_login ] ; 135AddFilesToPackage boot first_login : $(firstLoginFiles) ; 136 137local fortuneFiles = [ Glob $(HAIKU_TOP)/data/system/data/fortunes 138 : [a-zA-Z0-9]* ] ; 139fortuneFiles = $(fortuneFiles:G=data!fortunes) ; 140AddFilesToPackage data fortunes : $(fortuneFiles) ; 141 142local fontDir = [ FDirName $(HAIKU_TOP) data system data fonts ] ; 143local psFonts = [ Glob $(fontDir)/psfonts : *.afm *.pfb ] ; 144AddFilesToPackage data fonts psfonts : $(psFonts) ; 145 146# keymaps 147AddFilesToPackage data Keymaps : $(HAIKU_KEYMAP_FILES) ; 148local keymapAlias ; 149for keymapAlias in $(HAIKU_KEYMAP_ALIASES) { 150 local aliasedTo = [ on $(keymapAlias) return $(HAIKU_KEYMAP_FILE) ] ; 151 AddSymlinkToPackage data Keymaps : $(aliasedTo:BSM) : $(keymapAlias:BSM) ; 152} 153 154# keyboard layouts 155AddFilesToPackage data KeyboardLayouts 156 : $(HAIKU_KEYBOARD_LAYOUT_FILES) ; 157AddFilesToPackage data KeyboardLayouts Apple\ Aluminum 158 : $(HAIKU_APPLE_ALUMINUM_KEYBOARD_LAYOUT_FILES) ; 159AddFilesToPackage data KeyboardLayouts ThinkPad 160 : $(HAIKU_THINKPAD_KEYBOARD_LAYOUT_FILES) ; 161 162# boot module links 163AddBootModuleSymlinksToPackage 164 acpi@x86,x86_64 ata pci isa@x86,x86_64 config_manager dpc 165 scsi usb 166 openpic@ppc 167 ata_adapter locked_pool scsi_periph 168 ahci generic_ide_pci it8211 legacy_sata silicon_image_3112 169 highpoint_ide_pci 170 ide_isa@x86 171 <usb>uhci <usb>ohci <usb>ehci 172 scsi_cd scsi_disk usb_disk 173 virtio virtio_pci virtio_block virtio_scsi 174 efi_gpt 175 intel 176 bfs packagefs 177; 178 179# add-ons 180AddFilesToPackage add-ons accelerants : $(SYSTEM_ADD_ONS_ACCELERANTS) ; 181AddFilesToPackage add-ons Translators : $(SYSTEM_ADD_ONS_TRANSLATORS) ; 182AddFilesToPackage add-ons locale catalogs : $(SYSTEM_ADD_ONS_LOCALE_CATALOGS) ; 183 184AddFilesToPackage add-ons Tracker 185 : FileType Mark\ as… Mark\ as\ Read Open\ Target\ Folder 186 Open\ Terminal ZipOMatic ; 187AddSymlinkToPackage add-ons Tracker 188 : /boot/system/preferences/Backgrounds : Background-B ; 189AddSymlinkToPackage add-ons Tracker 190 : /boot/system/apps/TextSearch : TextSearch-G ; 191AddSymlinkToPackage add-ons Tracker 192 : /boot/system/apps/DiskUsage : DiskUsage-I ; 193 194AddFilesToPackage add-ons input_server devices 195 : <input>keyboard <input>mouse <input>tablet <input>wacom ; 196AddFilesToPackage add-ons input_server filters 197 : switch_workspace ; 198 199AddFilesToPackage add-ons kernel network : <net>notifications stack ; 200AddFilesToPackage add-ons kernel network : dns_resolver ; 201AddFilesToPackage add-ons kernel network devices : $(SYSTEM_NETWORK_DEVICES) ; 202AddFilesToPackage add-ons kernel network datalink_protocols 203 : $(SYSTEM_NETWORK_DATALINK_PROTOCOLS) ; 204AddFilesToPackage add-ons kernel network ppp : $(SYSTEM_NETWORK_PPP) ; 205AddFilesToPackage add-ons kernel network protocols 206 : $(SYSTEM_NETWORK_PROTOCOLS) ; 207 208AddFilesToPackage add-ons disk_systems 209 : <disk_system>intel <disk_system>gpt <disk_system>bfs <disk_system>ntfs ; 210 211 212# the MIME DB 213CopyDirectoryToPackage data : <mimedb>mime_db : : : isTarget ; 214 215 216# Deskbar menu symlinks 217 218# "Applications" links 219DESKBAR_APPLICATIONS = ActivityMonitor CharacterMap DeskCalc 220 Devices DiskProbe DriveSetup DiskUsage Expander Installer 221 StyledEdit Terminal 222; 223local linkTarget ; 224for linkTarget in $(DESKBAR_APPLICATIONS) { 225 AddSymlinkToPackage data deskbar menu Applications 226 : ../../../../apps/$(linkTarget) : $(linkTarget) ; 227} 228 229# "Desktop applets" links 230DESKBAR_DESKTOP_APPLETS = LaunchBox NetworkStatus PowerStatus ProcessController 231 Workspaces 232; 233for linkTarget in $(DESKBAR_DESKTOP_APPLETS) { 234 AddSymlinkToPackage data deskbar menu Desktop\ applets 235 : ../../../../apps/$(linkTarget) : $(linkTarget) ; 236} 237 238# "Preferences" links 239AddDirectoryToPackage data deskbar menu Preferences ; 240DESKBAR_PREFERENCES = $(SYSTEM_PREFERENCES:B) ; 241for linkTarget in $(DESKBAR_PREFERENCES) { 242 AddSymlinkToPackage data deskbar menu Preferences 243 : ../../../../preferences/$(linkTarget) 244 : $(linkTarget) ; 245} 246 247# Deskbar menu entries file 248AddFilesToPackage data deskbar : <deskbar>menu_entries ; 249 250 251# licenses 252CopyDirectoryToPackage data 253 : [ FDirName $(HAIKU_TOP) data system data licenses ] 254 : licenses ; 255 256# netresolv support files 257CopyDirectoryToPackage data 258 : [ FDirName $(HAIKU_TOP) data system data network ] 259 : network ; 260 261# Copy documentation as per DiskUsage's license requirement. 262CopyDirectoryToPackage documentation 263 : [ FDirName $(HAIKU_TOP) docs apps diskusage ] 264 : diskusage ; 265 266 267BuildHaikuPackage $(haikuPackage) : haiku ; 268