Beginnings of support for building a bootstrap Haiku image
Copy: * packages: Haiku -> HaikuBootstrap * images: HaikuImage -> HaikuImageBootstrap ... and remove some unncessary content. Setting the jam variable HAIKU_BOOTSTRAP_BUILD enables using the bootstrap files.
This commit is contained in:
@@ -7,12 +7,20 @@ Depends files : doc_files ;
|
|||||||
include [ FDirName $(HAIKU_BUILD_RULES_DIR) BuildFeatures ] ;
|
include [ FDirName $(HAIKU_BUILD_RULES_DIR) BuildFeatures ] ;
|
||||||
|
|
||||||
# Include packages that are required by all images.
|
# Include packages that are required by all images.
|
||||||
AddHaikuImagePackages
|
if $(HAIKU_BOOTSTRAP_BUILD) {
|
||||||
bzip2 ctags ffmpeg freetype glu grep icu jpeg libpng libsolv mesa sed tar
|
AddHaikuImagePackages
|
||||||
zlib
|
bzip2 freetype glu grep icu libsolv mesa sed tar zlib
|
||||||
:
|
:
|
||||||
system
|
system
|
||||||
;
|
;
|
||||||
|
} else {
|
||||||
|
AddHaikuImagePackages
|
||||||
|
bzip2 ctags ffmpeg freetype glu grep icu jpeg libpng libsolv mesa sed
|
||||||
|
tar zlib
|
||||||
|
:
|
||||||
|
system
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
# If enabled, make sure that OpenSSL is added to the image.
|
# If enabled, make sure that OpenSSL is added to the image.
|
||||||
if $(HAIKU_BUILD_FEATURE_OPENSSL_ENABLED) {
|
if $(HAIKU_BUILD_FEATURE_OPENSSL_ENABLED) {
|
||||||
@@ -42,7 +50,11 @@ SubDir HAIKU_TOP ;
|
|||||||
UserBuildConfigRulePostBuildTargets ;
|
UserBuildConfigRulePostBuildTargets ;
|
||||||
|
|
||||||
# specify the Haiku image and network boot archive contents
|
# specify the Haiku image and network boot archive contents
|
||||||
include [ FDirName $(HAIKU_BUILD_RULES_DIR) images HaikuImage ] ;
|
if $(HAIKU_BOOTSTRAP_BUILD) {
|
||||||
|
include [ FDirName $(HAIKU_BUILD_RULES_DIR) images HaikuImageBootstrap ] ;
|
||||||
|
} else {
|
||||||
|
include [ FDirName $(HAIKU_BUILD_RULES_DIR) images HaikuImage ] ;
|
||||||
|
}
|
||||||
include [ FDirName $(HAIKU_BUILD_RULES_DIR) images NetBootArchive ] ;
|
include [ FDirName $(HAIKU_BUILD_RULES_DIR) images NetBootArchive ] ;
|
||||||
include [ FDirName $(HAIKU_BUILD_RULES_DIR) images FloppyBootImage ] ;
|
include [ FDirName $(HAIKU_BUILD_RULES_DIR) images FloppyBootImage ] ;
|
||||||
include [ FDirName $(HAIKU_BUILD_RULES_DIR) images CDBootImage ] ;
|
include [ FDirName $(HAIKU_BUILD_RULES_DIR) images CDBootImage ] ;
|
||||||
|
|||||||
@@ -1,14 +1,20 @@
|
|||||||
# The packages we build. Each is defined in its own file in the packages/
|
# The packages we build. Each is defined in its own file in the packages/
|
||||||
# subdirectory.
|
# subdirectory.
|
||||||
local packages =
|
local packages =
|
||||||
Haiku
|
|
||||||
HaikuCrossDevel
|
HaikuCrossDevel
|
||||||
HaikuDevel
|
HaikuDevel
|
||||||
HaikuLoader
|
HaikuLoader
|
||||||
HaikuUserguide
|
HaikuUserguide
|
||||||
HaikuWelcome
|
HaikuWelcome
|
||||||
MakefileEngine
|
MakefileEngine
|
||||||
;
|
;
|
||||||
|
|
||||||
|
if $(HAIKU_BOOTSTRAP_BUILD) {
|
||||||
|
packages += HaikuBootstrap ;
|
||||||
|
} else {
|
||||||
|
packages += Haiku ;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
packages = $(packages:G=package-rules) ;
|
packages = $(packages:G=package-rules) ;
|
||||||
SEARCH on $(packages) = [ FDirName $(HAIKU_BUILD_RULES_DIR) packages ] ;
|
SEARCH on $(packages) = [ FDirName $(HAIKU_BUILD_RULES_DIR) packages ] ;
|
||||||
|
|||||||
@@ -0,0 +1,234 @@
|
|||||||
|
# This file defines what ends up on the Haiku bootstrap 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 fmt fold
|
||||||
|
fortune frcode ftp ftpd funzip
|
||||||
|
gawk gdb@x86 getlimits groups gzip gzexe
|
||||||
|
hd head hey hostname
|
||||||
|
id ident ifconfig <bin>install 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
|
||||||
|
makebootable md5sum merge message mimeset mkdir
|
||||||
|
mkfifo mkfs mkindex mktemp modifiers mount mountvolume mv
|
||||||
|
netcat netstat nl nohup notify nproc
|
||||||
|
od open
|
||||||
|
package package_repo passwd paste patch pathchk pc ping ping6 pkgman
|
||||||
|
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 sdiff setmime settype
|
||||||
|
setversion setvolume seq sha1sum sha256sum shar shred shuf shutdown sleep
|
||||||
|
sort split stat strace stty su sum sync sysinfo
|
||||||
|
tac tail tcpdump tcptester tee telnet telnetd test timeout top touch
|
||||||
|
tput tr traceroute 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 CharacterMap
|
||||||
|
DeskCalc Devices DiskProbe DiskUsage DriveSetup Debugger
|
||||||
|
Expander Installer LaunchBox
|
||||||
|
NetworkStatus PackageInstaller
|
||||||
|
PowerStatus ProcessController ShowImage
|
||||||
|
StyledEdit Terminal TextSearch Workspaces
|
||||||
|
] ;
|
||||||
|
SYSTEM_PREFERENCES = [ FFilterByBuildFeatures
|
||||||
|
Appearance Backgrounds CPUFrequency
|
||||||
|
<preference>Deskbar FileTypes Keyboard Keymap Locale
|
||||||
|
Mouse Network Notifications Screen ScreenSaver
|
||||||
|
Shortcuts Time Touchpad <preference>Tracker VirtualMemory
|
||||||
|
] ;
|
||||||
|
SYSTEM_DEMOS = ;
|
||||||
|
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
|
||||||
|
libpackage.so
|
||||||
|
<revisioned>libroot.so
|
||||||
|
libscreensaver.so
|
||||||
|
libtextencoding.so libtiff.so libtracker.so libtranslation.so
|
||||||
|
$(HAIKU_SHARED_LIBSTDC++) $(HAIKU_SHARED_LIBSUPC++)
|
||||||
|
] ;
|
||||||
|
PRIVATE_SYSTEM_LIBS = [ FFilterByBuildFeatures
|
||||||
|
libalm.so
|
||||||
|
# libfluidsynth.so
|
||||||
|
# libilmimf.so
|
||||||
|
libpackage-add-on-libsolv.so
|
||||||
|
libroot-addon-icu.so
|
||||||
|
] ;
|
||||||
|
SYSTEM_SERVERS = [ FFilterByBuildFeatures
|
||||||
|
app_server debug_server dns_resolver_server input_server
|
||||||
|
keystore_server media_addon_server
|
||||||
|
mount_server net_server notification_server
|
||||||
|
package_daemon power_daemon registrar
|
||||||
|
syslog_daemon
|
||||||
|
] ;
|
||||||
|
|
||||||
|
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
|
||||||
|
}@ # x86,x86_64
|
||||||
|
x86 @{
|
||||||
|
3dfx.accelerant ati.accelerant matrox.accelerant neomagic.accelerant
|
||||||
|
nvidia.accelerant intel_810.accelerant intel_extreme.accelerant
|
||||||
|
radeon.accelerant radeon_hd.accelerant s3.accelerant
|
||||||
|
#via.accelerant vmware.accelerant
|
||||||
|
}@ # x86
|
||||||
|
] ;
|
||||||
|
SYSTEM_ADD_ONS_TRANSLATORS = ;
|
||||||
|
SYSTEM_ADD_ONS_LOCALE_CATALOGS = <catalog-addon>plaintext ;
|
||||||
|
SYSTEM_ADD_ONS_MEDIA = ;
|
||||||
|
SYSTEM_ADD_ONS_MEDIA_PLUGINS = ;
|
||||||
|
SYSTEM_ADD_ONS_PRINT = ;
|
||||||
|
SYSTEM_ADD_ONS_PRINT_TRANSPORT = ;
|
||||||
|
SYSTEM_ADD_ONS_SCREENSAVERS = ;
|
||||||
|
SYSTEM_ADD_ONS_DRIVERS_AUDIO = ;
|
||||||
|
SYSTEM_ADD_ONS_DRIVERS_AUDIO_OLD = ;
|
||||||
|
SYSTEM_ADD_ONS_DRIVERS_GRAPHICS = [ FFilterByBuildFeatures
|
||||||
|
x86,x86_64 @{
|
||||||
|
vesa
|
||||||
|
}@ # x86,x86_64
|
||||||
|
x86 @{
|
||||||
|
ati 3dfx intel_810 intel_extreme matrox neomagic nvidia radeon radeon_hd
|
||||||
|
s3 #via vmware
|
||||||
|
}@ # x86
|
||||||
|
] ;
|
||||||
|
SYSTEM_ADD_ONS_DRIVERS_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 usb firewire@x86 acpi@x86
|
||||||
|
] ;
|
||||||
|
SYSTEM_ADD_ONS_FILE_SYSTEMS = bfs bindfs btrfs exfat ext2 fat iso9660
|
||||||
|
attribute_overlay write_overlay ntfs packagefs reiserfs@x86 udf ;
|
||||||
|
|
||||||
|
|
||||||
|
# build the haiku system packages and add them
|
||||||
|
include [ FDirName $(HAIKU_BUILD_RULES_DIR) HaikuPackages ] ;
|
||||||
|
|
||||||
|
AddPackageFilesToHaikuImage system : haiku.hpkg ;
|
||||||
|
AddPackageFilesToHaikuImage system : haiku_loader.hpkg ;
|
||||||
|
|
||||||
|
|
||||||
|
AddSymlinkToHaikuImage home Desktop : /boot/home : Home ;
|
||||||
|
|
||||||
|
# global settings when a package is installed in ~/config
|
||||||
|
AddDirectoryToHaikuImage home config settings global ;
|
||||||
|
|
||||||
|
|
||||||
|
# scripts and data files
|
||||||
|
local userBootScripts = UserBootscript UserSetupEnvironment.sample ;
|
||||||
|
SEARCH on $(userBootScripts) = [ FDirName $(HAIKU_TOP) data config boot ] ;
|
||||||
|
AddFilesToHaikuImage home config settings boot : $(userBootScripts) ;
|
||||||
|
|
||||||
|
# Add boot launch directory
|
||||||
|
AddDirectoryToHaikuImage home config settings boot launch ;
|
||||||
|
|
||||||
|
# Add Tracker New Templates
|
||||||
|
AddFilesToHaikuImage home config settings Tracker "Tracker New Templates"
|
||||||
|
:
|
||||||
|
"<tracker-new-templates>C++ header"
|
||||||
|
"<tracker-new-templates>C++ source"
|
||||||
|
"<tracker-new-templates>makefile"
|
||||||
|
"<tracker-new-templates>text file"
|
||||||
|
;
|
||||||
|
|
||||||
|
local etcDir = [ FDirName $(HAIKU_TOP) data etc ] ;
|
||||||
|
local etcFiles = inputrc profile ;
|
||||||
|
etcFiles = $(etcFiles:G=etc) ;
|
||||||
|
SEARCH on $(etcFiles) = $(etcDir) ;
|
||||||
|
etcFiles += <etc>termcap <etc>sysless <etc>sysless.in ;
|
||||||
|
AddFilesToHaikuImage common settings etc : $(etcFiles) ;
|
||||||
|
|
||||||
|
local profileFiles = [ Glob $(etcDir)/profile.d : *.sh ] ;
|
||||||
|
profileFiles = $(profileFiles:G=profile-d) ;
|
||||||
|
AddDirectoryToHaikuImage common settings etc profile.d ;
|
||||||
|
AddFilesToHaikuImage common settings etc profile.d : $(profileFiles) ;
|
||||||
|
|
||||||
|
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) ;
|
||||||
|
|
||||||
|
# fresh install indicator file for the post install scripts
|
||||||
|
SEARCH on <post-install>fresh_install
|
||||||
|
= [ FDirName $(HAIKU_TOP) data common settings ] ;
|
||||||
|
AddFilesToHaikuImage common settings : <post-install>fresh_install ;
|
||||||
|
|
||||||
|
# create directories that will remain empty
|
||||||
|
AddDirectoryToHaikuImage common cache tmp ;
|
||||||
|
AddDirectoryToHaikuImage common non-packaged ;
|
||||||
|
AddDirectoryToHaikuImage common var empty ;
|
||||||
|
AddDirectoryToHaikuImage common var log ;
|
||||||
|
AddDirectoryToHaikuImage home Desktop ;
|
||||||
|
AddDirectoryToHaikuImage home mail ;
|
||||||
|
|
||||||
|
AddDirectoryToHaikuImage home config non-packaged bin ;
|
||||||
|
AddDirectoryToHaikuImage home config non-packaged lib ;
|
||||||
|
AddDirectoryToHaikuImage home config non-packaged add-ons kernel drivers bin ;
|
||||||
|
AddDirectoryToHaikuImage home config non-packaged add-ons kernel drivers dev ;
|
||||||
|
AddDirectoryToHaikuImage home config non-packaged add-ons input_server devices ;
|
||||||
|
AddDirectoryToHaikuImage home config non-packaged add-ons input_server filters ;
|
||||||
|
AddDirectoryToHaikuImage home config non-packaged add-ons input_server methods ;
|
||||||
|
AddDirectoryToHaikuImage home config non-packaged add-ons media plugins ;
|
||||||
|
AddDirectoryToHaikuImage home config non-packaged add-ons Tracker ;
|
||||||
|
AddDirectoryToHaikuImage home config non-packaged add-ons Print ;
|
||||||
|
AddDirectoryToHaikuImage home config non-packaged add-ons Screen\ Savers ;
|
||||||
|
AddDirectoryToHaikuImage home config non-packaged add-ons Translators ;
|
||||||
|
|
||||||
|
|
||||||
|
include [ FDirName $(HAIKU_BUILD_RULES_DIR) images HaikuImageCommon ] ;
|
||||||
@@ -0,0 +1,314 @@
|
|||||||
|
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 $(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 $(driver) : $(packages[1]) : $(archive)
|
||||||
|
: $(extract) ;
|
||||||
|
packages = $(packages[2-]) ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# modules
|
||||||
|
AddFilesToPackage add-ons kernel bus_managers : $(SYSTEM_ADD_ONS_BUS_MANAGERS) ;
|
||||||
|
AddFilesToPackage add-ons kernel busses agp_gart : <agp_gart>intel@x86 ;
|
||||||
|
|
||||||
|
if $(HAIKU_ATA_STACK) = 1 {
|
||||||
|
AddFilesToPackage add-ons kernel busses ata
|
||||||
|
: generic_ide_pci it8211 legacy_sata silicon_image_3112 ide_isa@x86 ;
|
||||||
|
} else {
|
||||||
|
AddFilesToPackage add-ons kernel busses ide
|
||||||
|
: generic_ide_pci it8211 legacy_sata silicon_image_3112 ide_isa@x86 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
AddFilesToPackage add-ons kernel busses scsi : ahci ;
|
||||||
|
AddFilesToPackage add-ons kernel busses usb : <usb>uhci <usb>ohci <usb>ehci ;
|
||||||
|
AddFilesToPackage add-ons kernel console : vga_text ;
|
||||||
|
AddFilesToPackage add-ons kernel debugger
|
||||||
|
: <kdebug>demangle <kdebug>disasm@x86 <kdebug>hangman
|
||||||
|
<kdebug>invalidate_on_exit <kdebug>usb_keyboard <kdebug>qrencode
|
||||||
|
<kdebug>run_on_exit ;
|
||||||
|
AddFilesToPackage add-ons kernel file_systems : $(SYSTEM_ADD_ONS_FILE_SYSTEMS) ;
|
||||||
|
AddFilesToPackage add-ons kernel generic
|
||||||
|
: ata_adapter@ata bios@x86,x86_64 dpc ide_adapter@ide
|
||||||
|
locked_pool mpu401 scsi_periph <module>tty ;
|
||||||
|
AddFilesToPackage add-ons kernel partitioning_systems
|
||||||
|
: amiga_rdb apple efi_gpt intel session ;
|
||||||
|
AddFilesToPackage add-ons kernel interrupt_controllers : openpic@ppc ;
|
||||||
|
|
||||||
|
if $(TARGET_ARCH) = x86 || $(TARGET_ARCH) = x86_64 {
|
||||||
|
AddFilesToPackage add-ons kernel cpu : generic_x86 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
# drivers
|
||||||
|
AddNewDriversToPackage disk scsi : scsi_cd scsi_disk ;
|
||||||
|
AddNewDriversToPackage power : enhanced_speedstep@x86 ;
|
||||||
|
AddNewDriversToPackage power : acpi_battery@x86 ;
|
||||||
|
#AddNewDriversToPackage display : display_controls@x86 ;
|
||||||
|
|
||||||
|
# legacy drivers
|
||||||
|
AddDriversToPackage : console dprintf null random <driver>tty
|
||||||
|
zero ;
|
||||||
|
AddDriversToPackage audio hmulti : $(SYSTEM_ADD_ONS_DRIVERS_AUDIO) ;
|
||||||
|
AddDriversToPackage audio old : $(SYSTEM_ADD_ONS_DRIVERS_AUDIO_OLD) ;
|
||||||
|
AddDriversToPackage midi : $(SYSTEM_ADD_ONS_DRIVERS_MIDI) ;
|
||||||
|
AddDriversToPackage bus : usb_raw fw_raw@x86 ;
|
||||||
|
AddDriversToPackage disk floppy : pc_floppy@x86 ;
|
||||||
|
AddDriversToPackage disk usb : usb_disk ;
|
||||||
|
AddDriversToPackage disk usb : usb_floppy ;
|
||||||
|
AddDriversToPackage printer usb : usb_printer ;
|
||||||
|
AddDriversToPackage disk virtual : nbd ;
|
||||||
|
AddDriversToPackage graphics : $(SYSTEM_ADD_ONS_DRIVERS_GRAPHICS) ;
|
||||||
|
AddDriversToPackage input : ps2_hid usb_hid wacom ;
|
||||||
|
AddDriversToPackage misc : <driver>poke <driver>mem ;
|
||||||
|
AddDriversToPackage net : $(SYSTEM_ADD_ONS_DRIVERS_NET) ;
|
||||||
|
AddDriversToPackage ports : usb_serial ;
|
||||||
|
AddDriversToPackage power : $(SYSTEM_ADD_ONS_DRIVERS_POWER) ;
|
||||||
|
|
||||||
|
# kernel
|
||||||
|
AddFilesToPackage : <revisioned>kernel_$(TARGET_ARCH) ;
|
||||||
|
|
||||||
|
# libs
|
||||||
|
AddLibrariesToPackage 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 lib : libnetwork.so : $(lib) ;
|
||||||
|
}
|
||||||
|
|
||||||
|
AddSymlinkToPackage lib : libbnetapi.so : libnetapi.so ;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
SYSTEM_LIBS_ALIASES =
|
||||||
|
$(SYSTEM_LIBS_LIBNETWORK_ALIASES)
|
||||||
|
libnetapi.so
|
||||||
|
;
|
||||||
|
|
||||||
|
# servers
|
||||||
|
AddFilesToPackage servers : $(SYSTEM_SERVERS) ;
|
||||||
|
|
||||||
|
# apps
|
||||||
|
AddFilesToPackage : runtime_loader Deskbar Tracker ;
|
||||||
|
AddFilesToPackage bin : $(SYSTEM_BIN) consoled ;
|
||||||
|
AddFilesToPackage apps : $(SYSTEM_APPS) ;
|
||||||
|
AddFilesToPackage preferences : $(SYSTEM_PREFERENCES) ;
|
||||||
|
AddFilesToPackage demos : $(SYSTEM_DEMOS) ;
|
||||||
|
|
||||||
|
SEARCH on which = [ FDirName $(HAIKU_TOP) data bin ] ;
|
||||||
|
AddFilesToPackage bin : which ;
|
||||||
|
SEARCH on install-wifi-firmwares.sh = [ FDirName $(HAIKU_TOP) data bin ] ;
|
||||||
|
AddFilesToPackage bin : install-wifi-firmwares.sh ;
|
||||||
|
|
||||||
|
AddSymlinkToPackage bin : bash : sh ;
|
||||||
|
AddSymlinkToPackage bin : trash : untrash ;
|
||||||
|
AddSymlinkToPackage bin : less : more ;
|
||||||
|
AddSymlinkToPackage bin : gzip : gunzip ;
|
||||||
|
AddSymlinkToPackage bin : gzip : zcat ;
|
||||||
|
AddSymlinkToPackage bin : zdiff : zcmp ;
|
||||||
|
AddSymlinkToPackage bin : unzip : zipinfo ;
|
||||||
|
AddSymlinkToPackage 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 ] ;
|
||||||
|
AddFilesToPackage boot : $(bootScripts) ;
|
||||||
|
|
||||||
|
# post install scripts
|
||||||
|
local postInstallFiles = default_deskbar_items.sh ;
|
||||||
|
postInstallFiles = $(postInstallFiles:G=post-install) ;
|
||||||
|
SEARCH on $(postInstallFiles)
|
||||||
|
= [ FDirName $(HAIKU_TOP) data common boot post_install ] ;
|
||||||
|
AddFilesToPackage boot post-install : $(postInstallFiles) ;
|
||||||
|
|
||||||
|
local fortuneFiles = [ Glob $(HAIKU_TOP)/data/system/data/fortunes
|
||||||
|
: [a-zA-Z0-9]* ] ;
|
||||||
|
fortuneFiles = $(fortuneFiles:G=data!fortunes) ;
|
||||||
|
AddFilesToPackage 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 data fonts psfonts : $(psFonts) ;
|
||||||
|
AddFilesToPackage data fonts ttfonts : $(ttFonts) ;
|
||||||
|
|
||||||
|
local keymapFiles = [ Glob [ FDirName $(HAIKU_TOP) src data keymaps ]
|
||||||
|
: *.keymap ] ;
|
||||||
|
keymapFiles = $(keymapFiles:BG=keymap) ;
|
||||||
|
AddFilesToPackage data Keymaps : $(keymapFiles) ;
|
||||||
|
AddSymlinkToPackage data Keymaps : Swedish : Finnish ;
|
||||||
|
AddSymlinkToPackage data Keymaps : Slovene : Croatian ;
|
||||||
|
AddSymlinkToPackage 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) ;
|
||||||
|
AddFilesToPackage 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) ;
|
||||||
|
AddFilesToPackage 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) ;
|
||||||
|
AddFilesToPackage data KeyboardLayouts ThinkPad
|
||||||
|
: $(thinkPadFiles) ;
|
||||||
|
|
||||||
|
# boot module links
|
||||||
|
AddBootModuleSymlinksToPackage
|
||||||
|
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
|
||||||
|
efi_gpt
|
||||||
|
intel
|
||||||
|
bfs packagefs
|
||||||
|
;
|
||||||
|
|
||||||
|
# add-ons
|
||||||
|
AddFilesToPackage add-ons accelerants : $(SYSTEM_ADD_ONS_ACCELERANTS) ;
|
||||||
|
AddFilesToPackage add-ons Translators : $(SYSTEM_ADD_ONS_TRANSLATORS) ;
|
||||||
|
AddFilesToPackage add-ons locale catalogs : $(SYSTEM_ADD_ONS_LOCALE_CATALOGS) ;
|
||||||
|
|
||||||
|
AddFilesToPackage add-ons opengl :
|
||||||
|
x86 @{
|
||||||
|
Legacy\ Software\ Rasterizer@gcc2
|
||||||
|
Software\ Rasterizer@!gcc2
|
||||||
|
}@ # x86
|
||||||
|
;
|
||||||
|
|
||||||
|
AddFilesToPackage add-ons Tracker
|
||||||
|
: FileType-F Mark\ as… Mark\ as\ Read-R Open\ Target\ Folder-O
|
||||||
|
Open\ Terminal-T ZipOMatic-Z ;
|
||||||
|
AddSymlinkToPackage add-ons Tracker
|
||||||
|
: /boot/system/preferences/Backgrounds : Background-B ;
|
||||||
|
AddSymlinkToPackage add-ons Tracker
|
||||||
|
: /boot/system/apps/TextSearch : TextSearch-G ;
|
||||||
|
AddSymlinkToPackage add-ons Tracker
|
||||||
|
: /boot/system/apps/DiskUsage : DiskUsage-I ;
|
||||||
|
|
||||||
|
AddFilesToPackage add-ons input_server devices
|
||||||
|
: <input>keyboard <input>mouse <input>tablet <input>wacom ;
|
||||||
|
AddFilesToPackage add-ons input_server filters
|
||||||
|
: screen_saver shortcut_catcher ;
|
||||||
|
|
||||||
|
AddFilesToPackage add-ons kernel network : <net>notifications stack ;
|
||||||
|
AddFilesToPackage add-ons kernel network : dns_resolver ;
|
||||||
|
AddFilesToPackage add-ons kernel network devices : $(SYSTEM_NETWORK_DEVICES) ;
|
||||||
|
AddFilesToPackage add-ons kernel network datalink_protocols
|
||||||
|
: $(SYSTEM_NETWORK_DATALINK_PROTOCOLS) ;
|
||||||
|
AddFilesToPackage add-ons kernel network ppp: $(SYSTEM_NETWORK_PPP) ;
|
||||||
|
AddFilesToPackage add-ons kernel network protocols
|
||||||
|
: $(SYSTEM_NETWORK_PROTOCOLS) ;
|
||||||
|
|
||||||
|
AddFilesToPackage add-ons disk_systems
|
||||||
|
: <disk_system>intel <disk_system>gpt <disk_system>bfs <disk_system>ntfs ;
|
||||||
|
|
||||||
|
|
||||||
|
# the MIME DB
|
||||||
|
CopyDirectoryToPackage data : <mimedb>mime_db : : : isTarget ;
|
||||||
|
|
||||||
|
|
||||||
|
# Deskbar menu symlinks
|
||||||
|
|
||||||
|
# "Applications" links
|
||||||
|
DESKBAR_APPLICATIONS = ActivityMonitor CharacterMap DeskCalc
|
||||||
|
Devices DiskProbe DriveSetup DiskUsage Expander Installer
|
||||||
|
StyledEdit Terminal
|
||||||
|
;
|
||||||
|
local linkTarget ;
|
||||||
|
for linkTarget in $(DESKBAR_APPLICATIONS) {
|
||||||
|
AddSymlinkToPackage data deskbar menu Applications
|
||||||
|
: ../../../../apps/$(linkTarget) : $(linkTarget) ;
|
||||||
|
}
|
||||||
|
|
||||||
|
# "Desktop applets" links
|
||||||
|
DESKBAR_DESKTOP_APPLETS = LaunchBox NetworkStatus PowerStatus ProcessController
|
||||||
|
Workspaces
|
||||||
|
;
|
||||||
|
for linkTarget in $(DESKBAR_DESKTOP_APPLETS) {
|
||||||
|
AddSymlinkToPackage data deskbar menu Desktop\ applets
|
||||||
|
: ../../../../apps/$(linkTarget) : $(linkTarget) ;
|
||||||
|
}
|
||||||
|
|
||||||
|
# "Preferences" links
|
||||||
|
AddDirectoryToPackage data deskbar menu Preferences ;
|
||||||
|
DESKBAR_PREFERENCES = $(SYSTEM_PREFERENCES:B) ;
|
||||||
|
for linkTarget in $(DESKBAR_PREFERENCES) {
|
||||||
|
AddSymlinkToPackage data deskbar menu Preferences
|
||||||
|
: ../../../../preferences/$(linkTarget)
|
||||||
|
: $(linkTarget) ;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Deskbar menu entries file
|
||||||
|
AddFilesToPackage data deskbar : <deskbar>menu_entries ;
|
||||||
|
|
||||||
|
|
||||||
|
# licenses
|
||||||
|
CopyDirectoryToPackage data
|
||||||
|
: [ FDirName $(HAIKU_TOP) data system data licenses ]
|
||||||
|
: licenses ;
|
||||||
|
|
||||||
|
# Copy documentation as per DiskUsage's license requirement.
|
||||||
|
CopyDirectoryToPackage documentation
|
||||||
|
: [ FDirName $(HAIKU_TOP) docs apps diskusage ]
|
||||||
|
: diskusage ;
|
||||||
|
|
||||||
|
|
||||||
|
BuildHaikuPackage $(haikuPackage) : haiku ;
|
||||||
Reference in New Issue
Block a user