b0944c78b0
* All packaging architecture dependent variables do now have a respective suffix and are set up for each configured packaging architecture, save for the kernel and boot loader variables, which are still only set up for the primary architecture. For convenience TARGET_PACKAGING_ARCH, TARGET_ARCH, TARGET_LIBSUPC++, and TARGET_LIBSTDC++ are set to the respective values for the primary packaging architecture by default. * Introduce a set of MultiArch* rules to help with building targets for multiple packaging architectures. Generally the respective targets are (additionally) gristed with the packaging architecture. For libraries the additional grist is usually omitted for the primary architecture (e.g. libroot.so and <x86>libroot.so for x86_gcc2/x86 hybrid), so that Jamfiles for targets built only for the primary architecture don't need to be changed. * Add multi-arch build support for all targets needed for the stage 1 cross devel package as well as for libbe (untested).
323 lines
12 KiB
Plaintext
323 lines
12 KiB
Plaintext
# 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
|
|
package package_repo passwd paste patch pathchk pc ping ping6 pkgman 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 sha256sum 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
|
|
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 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
|
|
libpackage.so
|
|
<revisioned>libroot.so
|
|
libscreensaver.so
|
|
libtextencoding.so libtiff.so libtracker.so libtranslation.so
|
|
$(HAIKU_SHARED_LIBSTDC++_$(HAIKU_PACKAGING_ARCH))
|
|
$(HAIKU_SHARED_LIBSUPC++_$(HAIKU_PACKAGING_ARCH))
|
|
] ;
|
|
PRIVATE_SYSTEM_LIBS = [ FFilterByBuildFeatures
|
|
libalm.so
|
|
libfluidsynth.so
|
|
libilmimf.so
|
|
libpackage-add-on-libsolv.so
|
|
libroot-addon-icu.so
|
|
] ;
|
|
SYSTEM_SERVERS = [ FFilterByBuildFeatures
|
|
app_server cddb_daemon debug_server dns_resolver_server input_server
|
|
keystore_server mail_daemon media_addon_server media_server midi_server
|
|
mount_server net_server nfs4_idmapper_server notification_server
|
|
package_daemon power_daemon print_server print_addon_server 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 = 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
|
|
}@ # 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 = 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 usb firewire@x86 acpi@x86
|
|
virtio
|
|
] ;
|
|
SYSTEM_ADD_ONS_FILE_SYSTEMS = bfs bindfs btrfs cdda exfat ext2 fat iso9660 nfs
|
|
nfs4 attribute_overlay write_overlay ntfs packagefs reiserfs@x86 udf
|
|
googlefs ;
|
|
|
|
|
|
# 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 ;
|
|
|
|
# Mailbox folders and symlink
|
|
AddDirectoryToHaikuImage home mail draft ;
|
|
AddDirectoryToHaikuImage home mail in ;
|
|
AddDirectoryToHaikuImage home mail out ;
|
|
|
|
# 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 mail provider infos.
|
|
AddFilesToHaikuImage home config settings Mail ProviderInfo :
|
|
$(HAIKU_PROVIDER_INFOS) ;
|
|
|
|
# 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 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 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 ;
|
|
|
|
# decorators
|
|
AddDirectoryToHaikuImage home config non-packaged add-ons decorators ;
|
|
#AddFilesToHaikuImage home config add-ons decorators : ;
|
|
|
|
# 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 ;
|
|
|
|
# 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 ;
|
|
|
|
# dvb channel settings
|
|
CopyDirectoryToHaikuImage home config settings Media
|
|
: [ FDirName $(HAIKU_TOP) data settings media dvb ]
|
|
: dvb : -x Jamfile ;
|
|
|
|
# repository config files
|
|
local repository ;
|
|
for repository in $(HAIKU_REPOSITORIES) {
|
|
AddFilesToHaikuImage common settings package-repositories
|
|
: [ on $(repository) return $(HAIKU_REPOSITORY_CONFIG_FILE) ]
|
|
: $(repository:G=) ;
|
|
}
|
|
|
|
|
|
include [ FDirName $(HAIKU_BUILD_RULES_DIR) images HaikuImageCommon ] ;
|