Remove build/jam/HaikuImage
Apparently accidentally reintroduced with the merge.
This commit is contained in:
parent
52b81e5a60
commit
ef6f476892
@ -1,993 +0,0 @@
|
||||
# This file defines what ends up on the Haiku image (respectively in the Haiku
|
||||
# installation directory) and it executes the rules building the image
|
||||
# (respectively installing the files in the installation directory).
|
||||
|
||||
|
||||
SYSTEM_BIN = [ FFilterByBuildFeatures
|
||||
"["
|
||||
addattr alert arp
|
||||
base64 basename bash bc beep bfsinfo
|
||||
cal cat catattr checkfs checkitout chgrp chmod chop chown chroot cksum clear
|
||||
clockconfig cmp collectcatkeys comm compress copyattr CortexAddOnHost cp
|
||||
csplit cut date dc dd desklink df diff diff3 dircolors dirname
|
||||
diskimage draggers driveinfo dstcheck du dumpcatalog
|
||||
echo eject env error expand expr
|
||||
factor false fdinfo ffm filepanel find finddir FirstBootPrompt fmt fold
|
||||
fortune frcode ftp ftpd funzip fwcontrol
|
||||
gawk gdb@x86 getlimits groups gzip gzexe
|
||||
hd head hey hostname
|
||||
id ident ifconfig <bin>install installsound iroster isvolume
|
||||
ideinfo@ide idestatus@ide
|
||||
join kernel_debugger keymap keystore kill
|
||||
less lessecho lesskey link linkcatkeys listarea listattr listimage listdev
|
||||
listport listres listsem listusb ln locale locate logger login logname ls
|
||||
lsindex
|
||||
mail2mbox makebootable mbox2mail md5sum merge message mimeset mkdos mkdir
|
||||
mkfifo mkfs mkindex mktemp modifiers mount mount_nfs mountvolume mv
|
||||
netcat netstat nl nohup notify nproc
|
||||
od open
|
||||
passwd paste patch pathchk pc ping ping6 play playfile playsound playwav
|
||||
pr prio printenv printf profile ps ptx pwd
|
||||
query quit
|
||||
rc readlink reindex release renice rlog rm rmattr rmindex rmdir roster
|
||||
route
|
||||
safemode screen_blanker screenmode screenshot sdiff setdecor setmime settype
|
||||
setversion setvolume seq sha1sum shar shred shuf shutdown sleep sort
|
||||
spamdbm split stat strace stty su sum sync sysinfo
|
||||
tac tail tcpdump tcptester tee telnet telnetd test timeout top touch
|
||||
<ncurses>tput tr traceroute translate trash true truncate tsort tty
|
||||
uname unchop unexpand unmount uniq unlink unshar unzip unzipsfx
|
||||
<bin>updatedb uptime urlwrapper useradd uudecode uuencode
|
||||
vdir version vmstat
|
||||
waitfor watch wc wget whoami writembr@x86 xargs xres
|
||||
yes
|
||||
zdiff zforce zgrep zip zipcloak <bin>zipgrep zipnote zipsplit zmore znew
|
||||
] ;
|
||||
|
||||
SYSTEM_APPS = [ FFilterByBuildFeatures
|
||||
AboutSystem ActivityMonitor BootManager@x86 CDPlayer CharacterMap
|
||||
CodyCam Debugger DeskCalc Devices DiskProbe DiskUsage DriveSetup
|
||||
Expander GLInfo@x86 Icon-O-Matic Installer LaunchBox Magnify Mail
|
||||
MediaConverter MediaPlayer MidiPlayer NetworkStatus PackageInstaller People
|
||||
PoorMan PowerStatus ProcessController Screenshot ShowImage SoundRecorder
|
||||
StyledEdit Terminal TextSearch TV WebWatch Workspaces
|
||||
] ;
|
||||
SYSTEM_PREFERENCES = [ FFilterByBuildFeatures
|
||||
Appearance Backgrounds CPUFrequency DataTranslations
|
||||
<preference>Deskbar E-mail FileTypes Keyboard Keymap Locale Media
|
||||
Mouse Network Notifications Printers Screen ScreenSaver
|
||||
Shortcuts Sounds Time Touchpad <preference>Tracker VirtualMemory
|
||||
] ;
|
||||
SYSTEM_DEMOS = [ FFilterByBuildFeatures
|
||||
BSnow Chart Clock Cortex FontDemo GLTeapot@x86
|
||||
$(HAIKU_INCLUDE_TRADEMARKS)Haiku3d@x86 Mandelbrot OverlayImage PatchBay
|
||||
Pairs Playground Pulse Sudoku
|
||||
] ;
|
||||
SYSTEM_LIBS = [ FFilterByBuildFeatures
|
||||
libbe.so libbsd.so libbnetapi.so
|
||||
libdebug.so libdevice.so
|
||||
libgame.so libGL.so@x86 libglut.so@x86
|
||||
libgnu.so libmail.so libmedia.so libmidi.so libmidi2.so
|
||||
libnetwork.so
|
||||
<revisioned>libroot.so libroot-addon-icu.so
|
||||
libscreensaver.so
|
||||
libtextencoding.so libtiff.so libtracker.so libtranslation.so
|
||||
$(HAIKU_SHARED_LIBSTDC++) $(HAIKU_SHARED_LIBSUPC++)
|
||||
] ;
|
||||
PRIVATE_SYSTEM_LIBS = [ FFilterByBuildFeatures
|
||||
$(HAIKU_JPEG_CURRENT_LIB)
|
||||
$(HAIKU_LIBPNG_CURRENT_LIB)
|
||||
$(HAIKU_ZLIB_CURRENT_LIB)
|
||||
$(HAIKU_FREETYPE_CURRENT_LIB)
|
||||
libalm.so
|
||||
libfluidsynth.so
|
||||
libilmimf.so
|
||||
] ;
|
||||
SYSTEM_SERVERS = [ FFilterByBuildFeatures
|
||||
app_server cddb_daemon debug_server input_server keystore_server mail_daemon
|
||||
media_addon_server media_server midi_server mount_server net_server
|
||||
notification_server power_daemon print_server print_addon_server registrar
|
||||
syslog_daemon dns_resolver_server nfs4_idmapper_server
|
||||
] ;
|
||||
|
||||
SYSTEM_NETWORK_DEVICES = ethernet loopback ;
|
||||
SYSTEM_NETWORK_DATALINK_PROTOCOLS = ethernet_frame <module>arp loopback_frame
|
||||
ipv6_datagram ;
|
||||
#SYSTEM_NETWORK_PPP = ipcp modem pap pppoe ;
|
||||
SYSTEM_NETWORK_PROTOCOLS = ipv4 tcp udp icmp unix icmp6 ipv6 ;
|
||||
|
||||
SYSTEM_ADD_ONS_ACCELERANTS = [ FFilterByBuildFeatures
|
||||
x86,x86_64 @{
|
||||
vesa.accelerant intel_extreme.accelerant
|
||||
}@ # x86,x86_64
|
||||
x86 @{
|
||||
3dfx.accelerant ati.accelerant matrox.accelerant neomagic.accelerant
|
||||
nvidia.accelerant intel_810.accelerant
|
||||
radeon.accelerant radeon_hd.accelerant s3.accelerant
|
||||
#via.accelerant vmware.accelerant
|
||||
}@ # x86
|
||||
] ;
|
||||
SYSTEM_ADD_ONS_TRANSLATORS = BMPTranslator EXRTranslator GIFTranslator
|
||||
HVIFTranslator ICOTranslator JPEGTranslator JPEG2000Translator
|
||||
PCXTranslator PNGTranslator PPMTranslator
|
||||
RAWTranslator RTFTranslator SGITranslator STXTTranslator TGATranslator
|
||||
TIFFTranslator WebPTranslator WonderBrushTranslator ICNSTranslator
|
||||
;
|
||||
SYSTEM_ADD_ONS_LOCALE_CATALOGS = <catalog-addon>plaintext ;
|
||||
SYSTEM_ADD_ONS_MEDIA = [ FFilterByBuildFeatures
|
||||
cortex_audioadapter.media_addon
|
||||
cortex_flanger.media_addon
|
||||
dvb.media_addon@x86
|
||||
hmulti_audio.media_addon
|
||||
mixer.media_addon
|
||||
opensound.media_addon
|
||||
tone_producer_demo.media_addon
|
||||
usb_webcam.media_addon
|
||||
video_producer_demo.media_addon
|
||||
video_window_demo.media_addon
|
||||
firewire_dv.media_addon@x86
|
||||
#legacy.media_addon
|
||||
equalizer.media_addon
|
||||
vst_host.media_addon
|
||||
] ;
|
||||
SYSTEM_ADD_ONS_MEDIA_PLUGINS = [ FFilterByBuildFeatures
|
||||
ffmpeg@ffmpeg raw_decoder
|
||||
] ;
|
||||
SYSTEM_ADD_ONS_PRINT =
|
||||
Canon\ LIPS3\ Compatible
|
||||
Canon\ LIPS4\ Compatible
|
||||
Gutenprint
|
||||
PCL5\ Compatible
|
||||
PCL6\ Compatible
|
||||
PDF\ Writer
|
||||
PS\ Compatible
|
||||
Preview
|
||||
;
|
||||
SYSTEM_ADD_ONS_PRINT_TRANSPORT = HP\ JetDirect IPP LPR
|
||||
# Parallel\ Port
|
||||
Print\ To\ File Serial\ Port USB\ Port
|
||||
;
|
||||
SYSTEM_ADD_ONS_SCREENSAVERS = [ FFilterByBuildFeatures
|
||||
Butterfly DebugNow Flurry@x86
|
||||
GLife@x86 $(HAIKU_INCLUDE_TRADEMARKS)Haiku Icons IFS Leaves
|
||||
Message Spider Gravity@x86
|
||||
] ;
|
||||
SYSTEM_ADD_ONS_DRIVERS_AUDIO = auich auvia echo3g emuxki hda ice1712 sis7018 ;
|
||||
SYSTEM_ADD_ONS_DRIVERS_AUDIO_OLD = ; #cmedia usb_audio ;
|
||||
SYSTEM_ADD_ONS_DRIVERS_GRAPHICS = [ FFilterByBuildFeatures
|
||||
x86,x86_64 @{
|
||||
vesa intel_extreme
|
||||
}@ # x86,x86_64
|
||||
x86 @{
|
||||
ati 3dfx intel_810 matrox neomagic nvidia radeon radeon_hd
|
||||
s3 #via vmware
|
||||
}@ # x86
|
||||
] ;
|
||||
SYSTEM_ADD_ONS_DRIVERS_MIDI = emuxki ice1712 usb_midi ;
|
||||
SYSTEM_ADD_ONS_DRIVERS_NET = [ FFilterByBuildFeatures
|
||||
x86,x86_64 @{
|
||||
3com atheros813x ar81xx attansic_l1 attansic_l2 broadcom440x
|
||||
broadcom570x dec21xxx ipro100 ipro1000 jmicron2x0 marvell_yukon nforce
|
||||
pcnet rtl8139 rtl81xx sis19x syskonnect via_rhine vt612x
|
||||
}@ # x86_64
|
||||
|
||||
etherpci pegasus sis900 usb_davicom usb_asix usb_ecm wb840
|
||||
|
||||
# WLAN drivers
|
||||
x86 @{
|
||||
aironetwifi atheroswifi broadcom43xx
|
||||
iprowifi2100 iprowifi2200 iprowifi3945
|
||||
iprowifi4965 marvell88w8363 marvell88w8335
|
||||
ralinkwifi wavelanwifi
|
||||
}@ # x86
|
||||
|
||||
# WWAN drivers
|
||||
#usb_beceemwmx@gpl
|
||||
] ;
|
||||
SYSTEM_ADD_ONS_DRIVERS_POWER = [ FFilterByBuildFeatures acpi_button@x86 ] ;
|
||||
SYSTEM_ADD_ONS_BUS_MANAGERS = [ FFilterByBuildFeatures
|
||||
ata@ata pci ps2@x86,x86_64 isa@x86,x86_64
|
||||
ide@ide scsi config_manager agp_gart@x86,x86_64 usb firewire@x86 acpi@x86
|
||||
virtio random
|
||||
] ;
|
||||
SYSTEM_ADD_ONS_FILE_SYSTEMS = bfs btrfs cdda exfat ext2 fat iso9660 nfs nfs4
|
||||
attribute_overlay write_overlay ntfs reiserfs@x86 udf googlefs ;
|
||||
|
||||
# wifi firmware
|
||||
for driver in $(SYSTEM_ADD_ONS_DRIVERS_NET) {
|
||||
local package = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_PACKAGE) ] ;
|
||||
local archive = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_ARCHIVE) ] ;
|
||||
local extract = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_DO_EXTRACT) ] ;
|
||||
if $(archive) {
|
||||
AddWifiFirmwareToHaikuImage $(driver) : $(package) : $(archive)
|
||||
: $(extract) ;
|
||||
}
|
||||
local packages = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_PACKAGES) ] ;
|
||||
local archives = [ on $(driver) return $(HAIKU_WIFI_FIRMWARE_ARCHIVES) ] ;
|
||||
for archive in $(archives) {
|
||||
AddWifiFirmwareToHaikuImage $(driver) : $(packages[1]) : $(archive)
|
||||
: $(extract) ;
|
||||
packages = $(packages[2-]) ;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# modules
|
||||
AddFilesToHaikuImage system add-ons kernel bus_managers
|
||||
: $(SYSTEM_ADD_ONS_BUS_MANAGERS) ;
|
||||
AddFilesToHaikuImage system add-ons kernel busses agp_gart
|
||||
: <agp_gart>intel@x86,x86_64 ;
|
||||
|
||||
if $(HAIKU_ATA_STACK) = 1 {
|
||||
AddFilesToHaikuImage system add-ons kernel busses ata
|
||||
: generic_ide_pci it8211 legacy_sata silicon_image_3112 ide_isa@x86 ;
|
||||
} else {
|
||||
AddFilesToHaikuImage system add-ons kernel busses ide
|
||||
: generic_ide_pci it8211 legacy_sata silicon_image_3112 ide_isa@x86 ;
|
||||
}
|
||||
|
||||
AddFilesToHaikuImage system add-ons kernel busses random
|
||||
: virtio_rng ;
|
||||
AddFilesToHaikuImage system add-ons kernel busses scsi
|
||||
: ahci virtio_scsi ;
|
||||
AddFilesToHaikuImage system add-ons kernel busses usb
|
||||
: <usb>uhci <usb>ohci <usb>ehci ;
|
||||
AddFilesToHaikuImage system add-ons kernel busses virtio
|
||||
: virtio_pci ;
|
||||
AddFilesToHaikuImage system add-ons kernel console : vga_text ;
|
||||
AddFilesToHaikuImage system add-ons kernel debugger
|
||||
: <kdebug>demangle <kdebug>disasm@x86 <kdebug>hangman
|
||||
<kdebug>invalidate_on_exit <kdebug>usb_keyboard <kdebug>qrencode
|
||||
<kdebug>run_on_exit ;
|
||||
AddFilesToHaikuImage system add-ons kernel file_systems
|
||||
: $(SYSTEM_ADD_ONS_FILE_SYSTEMS) ;
|
||||
AddFilesToHaikuImage system add-ons kernel generic
|
||||
: ata_adapter@ata bios@x86,x86_64 dpc ide_adapter@ide
|
||||
locked_pool mpu401 scsi_periph <module>tty ;
|
||||
AddFilesToHaikuImage system add-ons kernel partitioning_systems
|
||||
: amiga_rdb apple efi_gpt intel session ;
|
||||
AddFilesToHaikuImage system add-ons kernel interrupt_controllers
|
||||
: openpic@ppc ;
|
||||
|
||||
if $(TARGET_ARCH) = x86 || $(TARGET_ARCH) = x86_64 {
|
||||
AddFilesToHaikuImage system add-ons kernel cpu : generic_x86 ;
|
||||
}
|
||||
|
||||
# drivers
|
||||
AddNewDriversToHaikuImage disk scsi : scsi_cd scsi_disk ;
|
||||
AddNewDriversToHaikuImage disk virtual : virtio_block ;
|
||||
AddNewDriversToHaikuImage power : enhanced_speedstep@x86 ;
|
||||
AddNewDriversToHaikuImage power : acpi_battery@x86 ;
|
||||
#AddNewDriversToHaikuImage display : display_controls@x86 ;
|
||||
|
||||
# legacy drivers
|
||||
AddDriversToHaikuImage : console dprintf null
|
||||
<driver>tty zero ;
|
||||
AddDriversToHaikuImage audio hmulti : $(SYSTEM_ADD_ONS_DRIVERS_AUDIO) ;
|
||||
AddDriversToHaikuImage audio old : $(SYSTEM_ADD_ONS_DRIVERS_AUDIO_OLD) ;
|
||||
AddDriversToHaikuImage midi : $(SYSTEM_ADD_ONS_DRIVERS_MIDI) ;
|
||||
AddDriversToHaikuImage bus : usb_raw fw_raw@x86 ;
|
||||
AddDriversToHaikuImage disk floppy : pc_floppy@x86 ;
|
||||
AddDriversToHaikuImage disk usb : usb_disk ;
|
||||
AddDriversToHaikuImage disk usb : usb_floppy ;
|
||||
AddDriversToHaikuImage printer usb : usb_printer ;
|
||||
AddDriversToHaikuImage disk virtual : nbd ;
|
||||
AddDriversToHaikuImage dvb : cx23882 ;
|
||||
AddDriversToHaikuImage graphics : $(SYSTEM_ADD_ONS_DRIVERS_GRAPHICS) ;
|
||||
AddDriversToHaikuImage input : ps2_hid usb_hid wacom ;
|
||||
AddDriversToHaikuImage misc : <driver>poke <driver>mem ;
|
||||
AddDriversToHaikuImage net : $(SYSTEM_ADD_ONS_DRIVERS_NET) ;
|
||||
AddDriversToHaikuImage ports : usb_serial ;
|
||||
AddDriversToHaikuImage power : $(SYSTEM_ADD_ONS_DRIVERS_POWER) ;
|
||||
|
||||
# kernel
|
||||
AddFilesToHaikuImage system : <revisioned>kernel_$(TARGET_ARCH) ;
|
||||
|
||||
# libs
|
||||
AddLibrariesToHaikuHybridImage system lib
|
||||
: $(SYSTEM_LIBS) $(PRIVATE_SYSTEM_LIBS) ;
|
||||
|
||||
# libnetwork.so replaces quite a few libraries
|
||||
SYSTEM_LIBS_LIBNETWORK_ALIASES
|
||||
= libsocket.so libbind.so libnet.so ;
|
||||
|
||||
if $(HAIKU_GCC_VERSION[1]) = 2 {
|
||||
local lib ;
|
||||
for lib in $(SYSTEM_LIBS_LIBNETWORK_ALIASES) {
|
||||
AddSymlinkToHaikuHybridImage system lib : libnetwork.so : $(lib)
|
||||
: : true ;
|
||||
}
|
||||
|
||||
AddSymlinkToHaikuHybridImage system lib : libbnetapi.so : libnetapi.so
|
||||
: : true ;
|
||||
}
|
||||
|
||||
|
||||
# libGL.so has GLU (like BeOS) built-in
|
||||
SYSTEM_LIBS_LIBGL_ALIASES = libGLU.so ;
|
||||
|
||||
if $(TARGET_ARCH) = x86 {
|
||||
local lib ;
|
||||
for lib in $(SYSTEM_LIBS_LIBGL_ALIASES) {
|
||||
AddSymlinkToHaikuHybridImage system lib : libGL.so : $(lib) : : true ;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
SYSTEM_LIBS_ALIASES =
|
||||
$(SYSTEM_LIBS_LIBNETWORK_ALIASES)
|
||||
libnetapi.so
|
||||
$(SYSTEM_LIBS_LIBGL_ALIASES)
|
||||
;
|
||||
|
||||
OPTIONAL_LIBS_ALIASES =
|
||||
libfreetype.so
|
||||
libjpeg.so
|
||||
libpng.so
|
||||
libz.so
|
||||
;
|
||||
|
||||
# libfreetype.so links to the current freetype lib
|
||||
AddSymlinkToHaikuHybridImage system lib : $(HAIKU_FREETYPE_CURRENT_LIB:BS)
|
||||
: $(HAIKU_FREETYPE_CURRENT_LINK) : : true ;
|
||||
AddSymlinkToHaikuHybridImage system lib : $(HAIKU_FREETYPE_CURRENT_LINK)
|
||||
: libfreetype.so : : true ;
|
||||
|
||||
# libpng.so links to the current libpng
|
||||
AddSymlinkToHaikuHybridImage system lib : $(HAIKU_LIBPNG_CURRENT_LIB:BS)
|
||||
: $(HAIKU_LIBPNG_CURRENT_LINK) : : true ;
|
||||
AddSymlinkToHaikuHybridImage system lib : $(HAIKU_LIBPNG_CURRENT_LINK)
|
||||
: libpng.so : : true ;
|
||||
|
||||
# libjpeg.so links to the current libjpeg
|
||||
AddSymlinkToHaikuHybridImage system lib : $(HAIKU_JPEG_CURRENT_LIB:BS)
|
||||
: $(HAIKU_JPEG_CURRENT_LINK) : : true ;
|
||||
AddSymlinkToHaikuHybridImage system lib : $(HAIKU_JPEG_CURRENT_LINK)
|
||||
: libjpeg.so : : true ;
|
||||
|
||||
# zlib.so links to the current zlib
|
||||
AddSymlinkToHaikuHybridImage system lib : $(HAIKU_ZLIB_CURRENT_LIB:BS)
|
||||
: $(HAIKU_ZLIB_CURRENT_LINK) : : true ;
|
||||
AddSymlinkToHaikuHybridImage system lib : $(HAIKU_ZLIB_CURRENT_LINK)
|
||||
: libz.so : : true ;
|
||||
|
||||
# servers
|
||||
AddFilesToHaikuImage system servers : $(SYSTEM_SERVERS) ;
|
||||
|
||||
# apps
|
||||
AddFilesToHaikuImage system : runtime_loader Deskbar Tracker ;
|
||||
AddFilesToHaikuImage system bin : $(SYSTEM_BIN) consoled ;
|
||||
AddFilesToHaikuImage system apps : $(SYSTEM_APPS) ;
|
||||
AddFilesToHaikuImage system preferences : $(SYSTEM_PREFERENCES) ;
|
||||
AddFilesToHaikuImage system demos : $(SYSTEM_DEMOS) ;
|
||||
|
||||
SEARCH on which = [ FDirName $(HAIKU_TOP) data bin ] ;
|
||||
AddFilesToHaikuImage system bin : which ;
|
||||
SEARCH on installoptionalpackage = [ FDirName $(HAIKU_TOP) data bin ] ;
|
||||
AddFilesToHaikuImage system bin : installoptionalpackage ;
|
||||
SEARCH on install-wifi-firmwares.sh = [ FDirName $(HAIKU_TOP) data bin ] ;
|
||||
AddFilesToHaikuImage system bin : install-wifi-firmwares.sh ;
|
||||
SEARCH on welcome = [ FDirName $(HAIKU_TOP) data bin ] ;
|
||||
AddFilesToHaikuImage system bin : welcome ;
|
||||
AddSymlinkToHaikuImage home Desktop
|
||||
: /boot/system/bin/welcome : Welcome ;
|
||||
SEARCH on userguide = [ FDirName $(HAIKU_TOP) data bin ] ;
|
||||
AddFilesToHaikuImage system bin : userguide ;
|
||||
AddSymlinkToHaikuImage home Desktop
|
||||
: /boot/system/bin/userguide : User\ Guide ;
|
||||
|
||||
# Add the files to be used by installoptionalpackage.
|
||||
AddDirectoryToHaikuImage common data optional-packages ;
|
||||
local optional-pkg-files = BuildFeatures OptionalPackageDependencies
|
||||
OptionalPackages OptionalLibPackages ;
|
||||
for name in $(optional-pkg-files) {
|
||||
local file = [ FDirName $(HAIKU_TOP) build jam $(name) ] ;
|
||||
AddFilesToHaikuImage common data optional-packages : $(file) ;
|
||||
}
|
||||
AddInstalledPackagesFileToHaikuImage ;
|
||||
|
||||
AddSymlinkToHaikuImage system bin : bash : sh ;
|
||||
AddSymlinkToHaikuImage system bin : trash : untrash ;
|
||||
|
||||
AddSymlinkToHaikuImage home Desktop : /boot/home : Home ;
|
||||
|
||||
# Mailbox folders and symlink
|
||||
AddDirectoryToHaikuImage home mail draft ;
|
||||
AddDirectoryToHaikuImage home mail in ;
|
||||
AddDirectoryToHaikuImage home mail out ;
|
||||
|
||||
AddSymlinkToHaikuImage home config : settings/deskbar : be ;
|
||||
# Deskbar Application links
|
||||
AddDirectoryToHaikuImage home config settings deskbar Applications ;
|
||||
DESKBAR_APPLICATIONS = ActivityMonitor CharacterMap CodyCam CDPlayer DeskCalc
|
||||
Devices DiskProbe DriveSetup DiskUsage Expander Icon-O-Matic Installer
|
||||
Magnify Mail MediaConverter MediaPlayer MidiPlayer People PoorMan
|
||||
Screenshot SoundRecorder StyledEdit Terminal TV
|
||||
;
|
||||
local linkTarget ;
|
||||
for linkTarget in $(DESKBAR_APPLICATIONS) {
|
||||
AddSymlinkToHaikuImage home config settings deskbar Applications
|
||||
: /boot/system/apps/$(linkTarget) : $(linkTarget) ;
|
||||
}
|
||||
|
||||
# Deskbar Desktop applets links
|
||||
AddDirectoryToHaikuImage home config settings deskbar Desktop\ applets ;
|
||||
DESKBAR_DESKTOP_APPLETS = LaunchBox NetworkStatus PowerStatus ProcessController
|
||||
Workspaces
|
||||
;
|
||||
for linkTarget in $(DESKBAR_DESKTOP_APPLETS) {
|
||||
AddSymlinkToHaikuImage home config settings deskbar Desktop\ applets
|
||||
: /boot/system/apps/$(linkTarget) : $(linkTarget) ;
|
||||
}
|
||||
|
||||
# Deskbar Preferences links
|
||||
AddDirectoryToHaikuImage home config settings deskbar Preferences ;
|
||||
DESKBAR_PREFERENCES = $(SYSTEM_PREFERENCES:B) ;
|
||||
for linkTarget in $(DESKBAR_PREFERENCES) {
|
||||
AddSymlinkToHaikuImage home config settings deskbar Preferences
|
||||
: /boot/system/preferences/$(linkTarget)
|
||||
: $(linkTarget) ;
|
||||
}
|
||||
|
||||
# Deskbar Demo links
|
||||
AddDirectoryToHaikuImage home config settings deskbar Demos ;
|
||||
for linkTarget in $(SYSTEM_DEMOS) {
|
||||
AddSymlinkToHaikuImage home config settings deskbar Demos
|
||||
: /boot/system/demos/$(linkTarget) : $(linkTarget) ;
|
||||
}
|
||||
|
||||
AddSymlinkToHaikuImage system bin : less : more ;
|
||||
AddSymlinkToHaikuImage system bin : gzip : gunzip ;
|
||||
AddSymlinkToHaikuImage system bin : gzip : zcat ;
|
||||
AddSymlinkToHaikuImage system bin : zdiff : zcmp ;
|
||||
AddSymlinkToHaikuImage system bin : unzip : zipinfo ;
|
||||
AddSymlinkToHaikuImage system bin : gawk : awk ;
|
||||
|
||||
|
||||
# scripts and data files
|
||||
local bootScripts = Bootscript Bootscript.cd SetupEnvironment Netscript
|
||||
InstallerInitScript InstallerFinishScript ;
|
||||
SEARCH on $(bootScripts) = [ FDirName $(HAIKU_TOP) data system boot ] ;
|
||||
AddFilesToHaikuImage system boot : $(bootScripts) ;
|
||||
|
||||
local userBootScripts = UserBootscript UserSetupEnvironment.sample ;
|
||||
SEARCH on $(userBootScripts) = [ FDirName $(HAIKU_TOP) data config boot ] ;
|
||||
AddFilesToHaikuImage home config boot : $(userBootScripts) ;
|
||||
|
||||
# Add boot launch directory
|
||||
AddDirectoryToHaikuImage home config boot launch ;
|
||||
|
||||
local logoArtwork =
|
||||
$(HAIKU_INCLUDE_TRADEMARKS)"HAIKU logo - white on blue - big.png"
|
||||
$(HAIKU_INCLUDE_TRADEMARKS)"HAIKU logo - white on blue - normal.png" ;
|
||||
SEARCH on $(logoArtwork) = [ FDirName $(HAIKU_TOP) data artwork ] ;
|
||||
AddFilesToHaikuImage system data artwork : $(logoArtwork) ;
|
||||
|
||||
AddDirectoryToHaikuImage system data sounds ;
|
||||
|
||||
# Add mail provider infos.
|
||||
AddFilesToHaikuImage home config settings Mail ProviderInfo :
|
||||
$(HAIKU_PROVIDER_INFOS) ;
|
||||
|
||||
# Mail spell check dictionaries
|
||||
local spellFiles = words geekspeak ;
|
||||
spellFiles = $(spellFiles:G=spell) ;
|
||||
SEARCH on $(spellFiles)
|
||||
= [ FDirName $(HAIKU_TOP) src apps mail ] ;
|
||||
AddFilesToHaikuImage system data spell_check word_dictionary : $(spellFiles) ;
|
||||
|
||||
local etcDir = [ FDirName $(HAIKU_TOP) data etc ] ;
|
||||
local etcFiles = inputrc profile ;
|
||||
etcFiles = $(etcFiles:G=etc) ;
|
||||
SEARCH on $(etcFiles) = [ FDirName $(etcDir) ] ;
|
||||
etcFiles += <etc>termcap <etc>sysless <etc>sysless.in ;
|
||||
AddFilesToHaikuImage common etc : $(etcFiles) ;
|
||||
|
||||
local profileFiles = [ Glob $(etcDir)/profile.d : *.sh ] ;
|
||||
profileFiles = $(profileFiles:G=profile-d) ;
|
||||
AddDirectoryToHaikuImage common etc profile.d ;
|
||||
AddFilesToHaikuImage common etc profile.d : $(profileFiles) ;
|
||||
|
||||
#local bashCompletionFiles = [ Glob $(etcDir)/bash_completion.d : * ] ;
|
||||
#local bashCompletionHelperFiles
|
||||
# = [ Glob $(etcDir)/bash_completion.d/helpers : * ] ;
|
||||
#bashCompletionFiles = $(bashCompletionFiles:G=bash-completion) ;
|
||||
#bashCompletionHelperFiles = $(bashCompletionHelperFiles:G=bash-completion-hlp) ;
|
||||
#AddDirectoryToHaikuImage common etc bash_completion.d ;
|
||||
#AddDirectoryToHaikuImage common etc bash_completion.d helpers ;
|
||||
#AddFilesToHaikuImage common etc bash_completion.d : $(bashCompletionFiles) ;
|
||||
#AddFilesToHaikuImage common etc bash_completion.d helpers
|
||||
# : $(bashCompletionHelperFiles) ;
|
||||
|
||||
local fortuneFiles = [ Glob $(HAIKU_TOP)/data/system/data/fortunes
|
||||
: [a-zA-Z0-9]* ] ;
|
||||
fortuneFiles = $(fortuneFiles:G=data!fortunes) ;
|
||||
AddFilesToHaikuImage system data fortunes : $(fortuneFiles) ;
|
||||
|
||||
local fontDir = [ FDirName $(HAIKU_TOP) data system data fonts ] ;
|
||||
local psFonts = [ Glob $(fontDir)/psfonts : *.afm *.pfb ] ;
|
||||
local ttFonts = [ Glob $(fontDir)/ttfonts : *.ttf ] ;
|
||||
AddFilesToHaikuImage system data fonts psfonts : $(psFonts) ;
|
||||
AddFilesToHaikuImage system data fonts ttfonts : $(ttFonts) ;
|
||||
|
||||
local cannaDir = [ FDirName $(HAIKU_TOP) data system data Canna ] ;
|
||||
local cannaDefault = [ Glob $(cannaDir)/default : *.canna *.gz ] ;
|
||||
local cannaDic = [ Glob $(cannaDir)/dic : *.cbp ] ;
|
||||
local cannaDicCanna = [ Glob $(cannaDir)/dic/canna
|
||||
: *.cld *.ctd *.cbd *.dir ] ;
|
||||
AddFilesToHaikuImage system data Canna default : $(cannaDefault) ;
|
||||
AddFilesToHaikuImage system data Canna dic : $(cannaDic) ;
|
||||
AddFilesToHaikuImage system data Canna dic canna : $(cannaDicCanna) ;
|
||||
AddDirectoryToHaikuImage system data Canna dic group ;
|
||||
AddDirectoryToHaikuImage system data Canna dic user ;
|
||||
|
||||
local keymapFiles = [ Glob [ FDirName $(HAIKU_TOP) src data keymaps ]
|
||||
: *.keymap ] ;
|
||||
keymapFiles = $(keymapFiles:BG=keymap) ;
|
||||
AddFilesToHaikuImage system data Keymaps : $(keymapFiles) ;
|
||||
AddSymlinkToHaikuImage system data Keymaps : Swedish : Finnish ;
|
||||
AddSymlinkToHaikuImage system data Keymaps : Slovene : Croatian ;
|
||||
AddSymlinkToHaikuImage system data Keymaps : US-International : Brazilian ;
|
||||
|
||||
# Copy keyboard layout files to the image one-by-one.
|
||||
local keyboardLayoutsDir
|
||||
= [ FDirName $(HAIKU_TOP) data system data KeyboardLayouts ] ;
|
||||
local keyboardLayoutFiles =
|
||||
"Generic 104-key"
|
||||
"Generic 105-key International"
|
||||
"Kinesis Advantage"
|
||||
"Kinesis Ergo Elan International"
|
||||
"TypeMatrix 2030" ;
|
||||
keyboardLayoutFiles = $(keyboardLayoutFiles:G=keyboard-layout) ;
|
||||
SEARCH on $(keyboardLayoutFiles) = $(keyboardLayoutsDir) ;
|
||||
AddFilesToHaikuImage system data KeyboardLayouts
|
||||
: $(keyboardLayoutFiles) ;
|
||||
|
||||
# Add Apple Aluminum keyboard layout files to the image in an Apple Aluminum
|
||||
# subdirectory. The subdirectory is turned into a submenu in the Layout menu
|
||||
# of the Keymap preference app.
|
||||
local appleAluminumDir
|
||||
= [ FDirName $(HAIKU_TOP) data system data KeyboardLayouts
|
||||
Apple\ Aluminum ] ;
|
||||
local appleAluminumFiles =
|
||||
"Apple Aluminium Extended International"
|
||||
"Apple Aluminium International"
|
||||
"Apple Aluminum (US)"
|
||||
"Apple Aluminum Extended (US)" ;
|
||||
appleAluminumFiles = $(appleAluminumFiles:G=keyboard-layout) ;
|
||||
SEARCH on $(appleAluminumFiles) = $(appleAluminumDir) ;
|
||||
AddFilesToHaikuImage system data KeyboardLayouts Apple\ Aluminum
|
||||
: $(appleAluminumFiles) ;
|
||||
|
||||
# Add ThinkPad keyboard layout files to the image in a ThinkPad
|
||||
# subdirectory. The subdirectory is turned into a submenu in the Layout menu
|
||||
# of the Keymap preference app.
|
||||
local thinkpadDir
|
||||
= [ FDirName $(HAIKU_TOP) data system data KeyboardLayouts ThinkPad ] ;
|
||||
local thinkPadFiles =
|
||||
"ThinkPad (US)"
|
||||
"ThinkPad International"
|
||||
"ThinkPad T400s (US)"
|
||||
"ThinkPad T400s International"
|
||||
"ThinkPad X1 (US)"
|
||||
"ThinkPad X1 International"
|
||||
"ThinkPad X100e (US)"
|
||||
"ThinkPad X100e International" ;
|
||||
thinkPadFiles = $(thinkPadFiles:G=keyboard-layout) ;
|
||||
SEARCH on $(thinkPadFiles) = $(thinkpadDir) ;
|
||||
AddFilesToHaikuImage system data KeyboardLayouts ThinkPad
|
||||
: $(thinkPadFiles) ;
|
||||
|
||||
local driverSettingsFiles = <driver-settings>kernel ;
|
||||
SEARCH on $(driverSettingsFiles)
|
||||
= [ FDirName $(HAIKU_TOP) data settings kernel drivers ] ;
|
||||
AddFilesToHaikuImage home config settings kernel drivers
|
||||
: $(driverSettingsFiles) ;
|
||||
|
||||
local networkSettingsFiles = <network-settings>services ;
|
||||
SEARCH on $(networkSettingsFiles)
|
||||
= [ FDirName $(HAIKU_TOP) data settings network ] ;
|
||||
AddFilesToHaikuImage common settings network : $(networkSettingsFiles) ;
|
||||
|
||||
# post install scripts and fresh install indicator file
|
||||
local postInstallFiles = add_catalog_entry_attributes.sh
|
||||
default_deskbar_items.sh mime_update.sh ;
|
||||
postInstallFiles = $(postInstallFiles:G=post-install) ;
|
||||
SEARCH on $(postInstallFiles)
|
||||
= [ FDirName $(HAIKU_TOP) data common boot post_install ] ;
|
||||
SEARCH on <post-install>fresh_install
|
||||
= [ FDirName $(HAIKU_TOP) data common settings ] ;
|
||||
AddFilesToHaikuImage common boot post_install : $(postInstallFiles) ;
|
||||
AddFilesToHaikuImage common settings : <post-install>fresh_install ;
|
||||
|
||||
# boot loader
|
||||
AddFilesToHaikuImage system : haiku_loader ;
|
||||
|
||||
# boot module links
|
||||
AddBootModuleSymlinksToHaikuImage
|
||||
acpi@x86 ata@ata pci isa@x86 config_manager dpc
|
||||
ide@ide scsi usb
|
||||
openpic@ppc
|
||||
ata_adapter@ata ide_adapter@ide locked_pool scsi_periph
|
||||
ahci generic_ide_pci it8211 legacy_sata silicon_image_3112
|
||||
ide_isa@x86
|
||||
<usb>uhci <usb>ohci <usb>ehci
|
||||
scsi_cd scsi_disk usb_disk
|
||||
virtio virtio_pci virtio_block virtio_scsi
|
||||
efi_gpt
|
||||
intel
|
||||
bfs
|
||||
;
|
||||
|
||||
# add-ons
|
||||
AddFilesToHaikuImage system add-ons accelerants
|
||||
: $(SYSTEM_ADD_ONS_ACCELERANTS) ;
|
||||
|
||||
# OpenGL renderers
|
||||
if $(TARGET_ARCH) = x86 {
|
||||
if $(HAIKU_GCC_VERSION[1]) = 2 {
|
||||
AddFilesToHaikuHybridImage system add-ons opengl
|
||||
: Legacy\ Software\ Rasterizer : : true ;
|
||||
} else {
|
||||
AddFilesToHaikuHybridImage system add-ons opengl
|
||||
: Software\ Rasterizer : : true ;
|
||||
# Future Gallium3d
|
||||
}
|
||||
}
|
||||
|
||||
AddFilesToHaikuHybridImage system add-ons Translators
|
||||
: $(SYSTEM_ADD_ONS_TRANSLATORS) : : true ;
|
||||
AddFilesToHaikuImage system add-ons locale catalogs
|
||||
: $(SYSTEM_ADD_ONS_LOCALE_CATALOGS) ;
|
||||
AddFilesToHaikuHybridImage system add-ons locale catalogs
|
||||
: $(SYSTEM_ADD_ONS_LOCALE_CATALOGS) : : true ;
|
||||
AddFilesToHaikuImage system add-ons mail_daemon inbound_protocols : POP3 IMAP ;
|
||||
AddFilesToHaikuImage system add-ons mail_daemon outbound_protocols : SMTP ;
|
||||
AddFilesToHaikuImage system add-ons mail_daemon inbound_filters
|
||||
: MatchHeader SpamFilter NewMailNotification ;
|
||||
AddFilesToHaikuImage system add-ons mail_daemon outbound_filters : Fortune ;
|
||||
AddFilesToHaikuImage system add-ons media : $(SYSTEM_ADD_ONS_MEDIA) ;
|
||||
AddFilesToHaikuImage system add-ons media plugins
|
||||
: $(SYSTEM_ADD_ONS_MEDIA_PLUGINS) ;
|
||||
AddFilesToHaikuImage system add-ons Tracker
|
||||
: FileType Mark\ as… Mark\ as\ Read Open\ Target\ Folder
|
||||
Open\ Terminal ZipOMatic ;
|
||||
AddSymlinkToHaikuImage system add-ons Tracker
|
||||
: /boot/system/preferences/Backgrounds : Background ;
|
||||
AddSymlinkToHaikuImage system add-ons Tracker
|
||||
: /boot/system/apps/TextSearch : TextSearch ;
|
||||
AddSymlinkToHaikuImage system add-ons Tracker
|
||||
: /boot/system/apps/DiskUsage : DiskUsage ;
|
||||
AddFilesToHaikuImage system add-ons input_server devices
|
||||
: <input>keyboard <input>mouse <input>tablet <input>wacom ;
|
||||
AddFilesToHaikuImage system add-ons input_server filters
|
||||
: screen_saver shortcut_catcher ;
|
||||
AddFilesToHaikuImage system add-ons kernel network
|
||||
: <net>notifications stack ;
|
||||
AddFilesToHaikuImage system add-ons kernel network : dns_resolver ;
|
||||
AddFilesToHaikuImage system add-ons kernel network devices
|
||||
: $(SYSTEM_NETWORK_DEVICES) ;
|
||||
AddFilesToHaikuImage system add-ons kernel network datalink_protocols
|
||||
: $(SYSTEM_NETWORK_DATALINK_PROTOCOLS) ;
|
||||
AddFilesToHaikuImage system add-ons kernel network ppp
|
||||
: $(SYSTEM_NETWORK_PPP) ;
|
||||
AddFilesToHaikuImage system add-ons kernel network protocols
|
||||
: $(SYSTEM_NETWORK_PROTOCOLS) ;
|
||||
AddFilesToHaikuImage system add-ons Print : $(SYSTEM_ADD_ONS_PRINT) ;
|
||||
AddFilesToHaikuImage system add-ons Print transport
|
||||
: $(SYSTEM_ADD_ONS_PRINT_TRANSPORT) ;
|
||||
AddFilesToHaikuImage system add-ons Screen\ Savers
|
||||
: $(SYSTEM_ADD_ONS_SCREENSAVERS) ;
|
||||
|
||||
AddFilesToHaikuImage system add-ons disk_systems
|
||||
: <disk_system>intel <disk_system>gpt <disk_system>bfs <disk_system>ntfs ;
|
||||
|
||||
# decorators
|
||||
AddDirectoryToHaikuImage home config add-ons decorators ;
|
||||
#AddFilesToHaikuImage home config add-ons decorators : ;
|
||||
|
||||
# create directories that will remain empty
|
||||
AddDirectoryToHaikuImage common bin ;
|
||||
AddDirectoryToHaikuImage common include ;
|
||||
AddDirectoryToHaikuImage common lib ;
|
||||
AddDirectoryToHaikuImage home Desktop ;
|
||||
AddDirectoryToHaikuImage home config bin ;
|
||||
AddDirectoryToHaikuImage home config lib ;
|
||||
AddDirectoryToHaikuImage home mail ;
|
||||
AddDirectoryToHaikuImage common var empty ;
|
||||
AddDirectoryToHaikuImage common var log ;
|
||||
AddDirectoryToHaikuImage common cache tmp ;
|
||||
|
||||
AddDirectoryToHaikuImage home config add-ons kernel drivers bin ;
|
||||
AddDirectoryToHaikuImage home config add-ons kernel drivers dev ;
|
||||
AddDirectoryToHaikuImage home config add-ons input_server devices ;
|
||||
AddDirectoryToHaikuImage home config add-ons input_server filters ;
|
||||
AddDirectoryToHaikuImage home config add-ons input_server methods ;
|
||||
AddDirectoryToHaikuImage home config add-ons media plugins ;
|
||||
AddDirectoryToHaikuImage home config add-ons Tracker ;
|
||||
AddDirectoryToHaikuImage home config add-ons Print ;
|
||||
AddDirectoryToHaikuImage home config add-ons Screen\ Savers ;
|
||||
AddDirectoryToHaikuImage home config add-ons Translators ;
|
||||
AddDirectoryToHaikuImage system data synth ;
|
||||
AddDirectoryToHaikuImage system add-ons input_server methods ;
|
||||
|
||||
# optional
|
||||
AddFilesToHaikuImage optional system add-ons input_server methods : canna ;
|
||||
|
||||
# printers
|
||||
AddDirectoryToHaikuImage home config settings printers Preview
|
||||
: home-config-settings-printers-preview.rdef ;
|
||||
AddDirectoryToHaikuImage home config settings printers "Save as PDF"
|
||||
: home-config-settings-printers-save-as-pdf.rdef ;
|
||||
|
||||
# PDF Writer enconding files
|
||||
CopyDirectoryToHaikuImage system data
|
||||
: [ FDirName $(HAIKU_TOP) src add-ons print drivers pdf encoding ]
|
||||
: "PDF Writer" : -x Jamfile ;
|
||||
|
||||
# Gutenprint data files
|
||||
CopyDirectoryToHaikuImage system data
|
||||
: [ FDirName $(HAIKU_TOP) src libs print libgutenprint src xml ]
|
||||
: gutenprint : -x *.c -x Makefile.am -x Makefile.in ;
|
||||
|
||||
# dvb channel settings
|
||||
CopyDirectoryToHaikuImage home config settings Media
|
||||
: [ FDirName $(HAIKU_TOP) data settings media dvb ]
|
||||
: dvb : -x Jamfile ;
|
||||
|
||||
# licenses
|
||||
CopyDirectoryToHaikuImage system data
|
||||
: [ FDirName $(HAIKU_TOP) data system data licenses ]
|
||||
: licenses ;
|
||||
|
||||
# Copy documentation as per DiskUsage's license requirement.
|
||||
CopyDirectoryToHaikuImage system documentation
|
||||
: [ FDirName $(HAIKU_TOP) docs apps diskusage ]
|
||||
: diskusage ;
|
||||
|
||||
# Copy documentation as per PDFlib Lite's license requirement.
|
||||
CopyDirectoryToHaikuImage system documentation
|
||||
: [ FDirName $(HAIKU_TOP) src libs pdflib doc ]
|
||||
: pdflib ;
|
||||
|
||||
# Copy sample programs as per PDFlib Lite's license requirement.
|
||||
CopyDirectoryToHaikuImage develop sample-code
|
||||
: [ FDirName $(HAIKU_TOP) src libs pdflib bind pdflib ]
|
||||
: pdflib ;
|
||||
|
||||
# Copy OpenGL kit headers into image
|
||||
if $(TARGET_ARCH) = x86 {
|
||||
CopyDirectoryToHaikuImage develop headers os opengl
|
||||
: [ FDirName $(HAIKU_MESA_HEADERS) GL ] ;
|
||||
CopyDirectoryToHaikuImage develop headers os opengl
|
||||
: [ FDirName $(HAIKU_GLU_HEADERS) GL ] ;
|
||||
}
|
||||
|
||||
#pragma mark - Optional Packages
|
||||
|
||||
|
||||
HAIKU_IMAGE_OPTIONAL_PACKAGE_DESCRIPTIONS = ;
|
||||
|
||||
include [ FDirName $(HAIKU_BUILD_RULES_DIR) OptionalPackages ] ;
|
||||
include [ FDirName $(HAIKU_BUILD_RULES_DIR) OptionalTestPackages ] ;
|
||||
include [ FDirName $(HAIKU_BUILD_RULES_DIR) OptionalLibPackages ] ;
|
||||
|
||||
local optionalPackageDescriptions ;
|
||||
if $(HAIKU_IMAGE_OPTIONAL_PACKAGE_DESCRIPTIONS) {
|
||||
optionalPackageDescriptions = <haiku-image>optional_package_descriptions ;
|
||||
MakeLocate $(optionalPackageDescriptions)
|
||||
: $(HAIKU_COMMON_PLATFORM_OBJECT_DIR) ;
|
||||
|
||||
Depends $(optionalPackageDescriptions)
|
||||
: $(HAIKU_IMAGE_OPTIONAL_PACKAGE_DESCRIPTIONS) ;
|
||||
|
||||
actions together BuildOptionalPackageDescriptions
|
||||
{
|
||||
cat $(2) > $(1)
|
||||
}
|
||||
|
||||
BuildOptionalPackageDescriptions $(optionalPackageDescriptions)
|
||||
: $(HAIKU_IMAGE_OPTIONAL_PACKAGE_DESCRIPTIONS) ;
|
||||
}
|
||||
|
||||
|
||||
#pragma mark - Alternative GCC Libraries
|
||||
|
||||
|
||||
# We build a zip archive containing the libraries built with the alternative
|
||||
# GCC and unzip onto our image. Building the archive is done by a sub-jam.
|
||||
include [ FDirName $(HAIKU_BUILD_RULES_DIR) AlternativeGCCArchive ] ;
|
||||
|
||||
if $(HAIKU_ADD_ALTERNATIVE_GCC_LIBS) = 1
|
||||
&& $(HAIKU_ALTERNATIVE_GCC_OUTPUT_DIR) {
|
||||
# let another jam build a zip with the system libraries
|
||||
rule InvokeSubJam target : directory : jamLine
|
||||
{
|
||||
DIRECTORY on $(target) = $(directory) ;
|
||||
COMMAND_LINE on $(target) = $(jamLine) ;
|
||||
local optionalPackages = $(HAIKU_ADDED_OPTIONAL_PACKAGES:J=/) ;
|
||||
OPTIONAL_PACKAGES on $(target) = $(optionalPackages:E="") ;
|
||||
Always $(target) ;
|
||||
InvokeSubJam1 $(target) ;
|
||||
}
|
||||
|
||||
actions InvokeSubJam1
|
||||
{
|
||||
cd $(DIRECTORY)
|
||||
export HAIKU_IGNORE_USER_BUILD_CONFIG=1
|
||||
export HAIKU_ADD_OPTIONAL_PACKAGES=$(OPTIONAL_PACKAGES)
|
||||
export HAIKU_PRIMARY_GCC=$(HAIKU_GCC_VERSION[1])
|
||||
# NOTE: depending on when InvokeSubJam is called, you may end up with
|
||||
# 2 * n - 1 jobs in total.
|
||||
$(JAM:E=jam) -q -j$(JAMJOBS) $(COMMAND_LINE) ;
|
||||
}
|
||||
|
||||
local otherAlternativeSystemLibsZip
|
||||
= <other-image>alternative_system_libs.zip ;
|
||||
MakeLocate $(otherAlternativeSystemLibsZip)
|
||||
: $(HAIKU_ALTERNATIVE_GCC_OUTPUT_DIR) ;
|
||||
|
||||
InvokeSubJam $(otherAlternativeSystemLibsZip)
|
||||
: $(HAIKU_ALTERNATIVE_GCC_OUTPUT_DIR)
|
||||
: "haiku-alternative-gcc-archive" ;
|
||||
|
||||
# install the alternative libs in the right directory
|
||||
ExtractArchiveToHaikuImage : $(otherAlternativeSystemLibsZip) ;
|
||||
}
|
||||
|
||||
|
||||
#pragma mark - User/Group Setup
|
||||
|
||||
|
||||
# add the root user and the root and users groups
|
||||
AddUserToHaikuImage $(HAIKU_ROOT_USER_NAME:E=baron) : 0 : 0 : /boot/home
|
||||
: /bin/bash : $(HAIKU_ROOT_USER_REAL_NAME:E="Root User") ;
|
||||
AddGroupToHaikuImage root : 0 : ;
|
||||
AddGroupToHaikuImage users : 100 : ;
|
||||
|
||||
|
||||
#pragma mark - Host Name
|
||||
|
||||
|
||||
if $(HAIKU_IMAGE_HOST_NAME) {
|
||||
actions BuildHaikuImageHostnameFile
|
||||
{
|
||||
echo "$(HAIKU_IMAGE_HOST_NAME)" > $(1)
|
||||
}
|
||||
|
||||
local file = <haiku-image>hostname ;
|
||||
Always $(file) ;
|
||||
MakeLocate $(file) : $(HAIKU_COMMON_PLATFORM_OBJECT_DIR) ;
|
||||
BuildHaikuImageHostnameFile $(file) ;
|
||||
AddFilesToHaikuImage common settings network : $(file) ;
|
||||
}
|
||||
|
||||
|
||||
#pragma mark - Build The Image
|
||||
|
||||
|
||||
# Execute pre-image user config rules.
|
||||
UserBuildConfigRulePreImage ;
|
||||
|
||||
# Set image name and directory defaults and locate the image.
|
||||
HAIKU_IMAGE_NAME ?= $(HAIKU_DEFAULT_IMAGE_NAME) ;
|
||||
HAIKU_IMAGE_DIR ?= $(HAIKU_DEFAULT_IMAGE_DIR) ;
|
||||
HAIKU_IMAGE = $(HAIKU_IMAGE_NAME) ;
|
||||
HAIKU_IMAGE_SIZE ?= $(HAIKU_DEFAULT_IMAGE_SIZE) ; # 300 MB
|
||||
HAIKU_IMAGE_LABEL ?= $(HAIKU_DEFAULT_IMAGE_LABEL) ;
|
||||
MakeLocate $(HAIKU_IMAGE) : $(HAIKU_IMAGE_DIR) ;
|
||||
|
||||
# Set the default installation directory.
|
||||
HAIKU_INSTALL_DIR ?= $(HAIKU_DEFAULT_INSTALL_DIR) ;
|
||||
|
||||
# the pseudo target all image contents is attached to
|
||||
NotFile $(HAIKU_IMAGE_CONTAINER_NAME) ;
|
||||
|
||||
# Detect a hybrid GCC2/GCC4 image.
|
||||
local isHybridBuild ;
|
||||
if $(HAIKU_ADD_ALTERNATIVE_GCC_LIBS) = 1
|
||||
&& $(HAIKU_ALTERNATIVE_GCC_OUTPUT_DIR) {
|
||||
isHybridBuild = 1 ;
|
||||
}
|
||||
|
||||
# prepare the script that initializes the shell variables
|
||||
HAIKU_IMAGE_INIT_VARIABLES_SCRIPT = <HaikuImage>haiku.image-init-vars ;
|
||||
local script = $(HAIKU_IMAGE_INIT_VARIABLES_SCRIPT) ;
|
||||
MakeLocate $(script) : $(HAIKU_OUTPUT_DIR) ;
|
||||
Always $(script) ;
|
||||
|
||||
AddVariableToScript $(script) : sourceDir : $(HAIKU_TOP) ;
|
||||
AddVariableToScript $(script) : outputDir : $(HAIKU_OUTPUT_DIR) ;
|
||||
AddVariableToScript $(script) : tmpDir : $(HAIKU_TMP_DIR) ;
|
||||
AddVariableToScript $(script) : installDir : $(HAIKU_INSTALL_DIR) ;
|
||||
#AddVariableToScript $(script) : isImage : 1 ;
|
||||
AddVariableToScript $(script) : imageSize : $(HAIKU_IMAGE_SIZE) ;
|
||||
AddVariableToScript $(script) : imageLabel : $(HAIKU_IMAGE_LABEL) ;
|
||||
AddVariableToScript $(script) : addBuildCompatibilityLibDir
|
||||
: $(HOST_ADD_BUILD_COMPATIBILITY_LIB_DIR) ;
|
||||
AddVariableToScript $(script) : dontClearImage : $(HAIKU_DONT_CLEAR_IMAGE) ;
|
||||
AddVariableToScript $(script) : updateOnly : [ IsUpdateHaikuImageOnly ] ;
|
||||
AddTargetVariableToScript $(script) : <build>addattr ;
|
||||
AddTargetVariableToScript $(script) : <build>bfs_shell : bfsShell ;
|
||||
AddTargetVariableToScript $(script) : <build>fs_shell_command : fsShellCommand ;
|
||||
AddTargetVariableToScript $(script) : <build>copyattr ;
|
||||
AddTargetVariableToScript $(script) : <build>create_image : createImage ;
|
||||
AddTargetVariableToScript $(script) : <build>makebootable ;
|
||||
AddTargetVariableToScript $(script) : <build>rc ;
|
||||
AddTargetVariableToScript $(script) : <build>resattr ;
|
||||
AddTargetVariableToScript $(script) : <build>unzip ;
|
||||
AddTargetVariableToScript $(script) : <build>vmdkimage ;
|
||||
AddVariableToScript $(script) : stripCommand : $(HAIKU_STRIP) ;
|
||||
if $(HOST_RM_ATTRS_TARGET) {
|
||||
AddTargetVariableToScript $(script) : $(HOST_RM_ATTRS_TARGET) : rmAttrs ;
|
||||
} else {
|
||||
AddVariableToScript $(script) : rmAttrs : rm ;
|
||||
}
|
||||
if $(optionalPackageDescriptions) {
|
||||
AddTargetVariableToScript $(script) : $(optionalPackageDescriptions)
|
||||
: optionalPackageDescriptions ;
|
||||
}
|
||||
|
||||
|
||||
# create the other scripts
|
||||
HAIKU_IMAGE_MAKE_DIRS_SCRIPT = <HaikuImage>haiku.image-make-dirs ;
|
||||
HAIKU_IMAGE_COPY_FILES_SCRIPT = <HaikuImage>haiku.image-copy-files ;
|
||||
HAIKU_IMAGE_EXTRACT_FILES_SCRIPT = <HaikuImage>haiku.image-extract-files ;
|
||||
MakeLocate $(HAIKU_IMAGE_MAKE_DIRS_SCRIPT) $(HAIKU_IMAGE_COPY_FILES_SCRIPT)
|
||||
$(HAIKU_IMAGE_EXTRACT_FILES_SCRIPT) : $(HAIKU_OUTPUT_DIR) ;
|
||||
|
||||
CreateHaikuImageMakeDirectoriesScript $(HAIKU_IMAGE_MAKE_DIRS_SCRIPT) ;
|
||||
CreateHaikuImageCopyFilesScript $(HAIKU_IMAGE_COPY_FILES_SCRIPT) ;
|
||||
CreateHaikuImageExtractFilesScript $(HAIKU_IMAGE_EXTRACT_FILES_SCRIPT) ;
|
||||
|
||||
# Convenience wrapper rule around BuildHaikuImage.
|
||||
rule _BuildHaikuImage image : isImage : isVMwareImage
|
||||
{
|
||||
# _BuildHaikuImage <image target> : <isImage> : <isVMwareImage> ;
|
||||
#
|
||||
|
||||
# build the image
|
||||
# HAIKU_IMAGE_EARLY_USER_SCRIPTS, HAIKU_IMAGE_LATE_USER_SCRIPTS can be
|
||||
# specified by the user.
|
||||
BuildHaikuImage $(image) :
|
||||
$(HAIKU_IMAGE_INIT_VARIABLES_SCRIPT)
|
||||
$(HAIKU_IMAGE_EARLY_USER_SCRIPTS)
|
||||
$(HAIKU_IMAGE_MAKE_DIRS_SCRIPT)
|
||||
$(HAIKU_IMAGE_COPY_FILES_SCRIPT)
|
||||
$(HAIKU_IMAGE_EXTRACT_FILES_SCRIPT)
|
||||
$(HAIKU_IMAGE_LATE_USER_SCRIPTS)
|
||||
: $(isImage)
|
||||
: $(isVMwareImage)
|
||||
;
|
||||
|
||||
# remove the scripts we have generated
|
||||
RmTemps $(image) :
|
||||
$(HAIKU_IMAGE_INIT_VARIABLES_SCRIPT)
|
||||
$(HAIKU_IMAGE_MAKE_DIRS_SCRIPT)
|
||||
$(HAIKU_IMAGE_COPY_FILES_SCRIPT)
|
||||
$(HAIKU_IMAGE_EXTRACT_FILES_SCRIPT)
|
||||
;
|
||||
}
|
||||
|
||||
# build the image
|
||||
_BuildHaikuImage $(HAIKU_IMAGE) : true ;
|
||||
NotFile haiku-image ;
|
||||
Depends haiku-image : $(HAIKU_IMAGE) ;
|
||||
|
||||
|
||||
# install Haiku into a directory
|
||||
NotFile install-haiku ;
|
||||
_BuildHaikuImage install-haiku : 0 ;
|
||||
|
||||
|
||||
# build the VMware image
|
||||
HAIKU_VMWARE_IMAGE_NAME ?= $(HAIKU_DEFAULT_VMWARE_IMAGE_NAME) ;
|
||||
HAIKU_VMWARE_IMAGE = $(HAIKU_VMWARE_IMAGE_NAME) ;
|
||||
MakeLocate $(HAIKU_VMWARE_IMAGE) : $(HAIKU_IMAGE_DIR) ;
|
||||
|
||||
_BuildHaikuImage $(HAIKU_VMWARE_IMAGE) : true : true ;
|
||||
NotFile haiku-vmware-image ;
|
||||
Depends haiku-vmware-image : $(HAIKU_VMWARE_IMAGE) ;
|
||||
|
||||
# Execute post-image user config rules.
|
||||
UserBuildConfigRulePostImage ;
|
Loading…
x
Reference in New Issue
Block a user