OptionalBuildFeatures -> BuildFeatures, make use of new rules

Got rid of X86_ONLY and friends in HaikuImage, FloppyBootImage, etc.
Instead we use build feature specification annotated lists with
FFilterByBuildFeatures (either explicitly or implicitly where passing
the list directly to the image rules).

I just translated the variables to the respective annotatation in most
cases, though in some cases different annotation would be more correct
(e.g. for the OpenGL stuff).

Provides a simple framework for addressing #3798. The interested reader
may add the build features and add/adjust the annotations accordingly.
This commit is contained in:
Ingo Weinhold
2012-12-09 04:07:48 +01:00
parent 33c254876c
commit f0cacbb32b
12 changed files with 191 additions and 216 deletions
+2 -2
View File
@@ -135,13 +135,13 @@ if $(HAIKU_ADD_OPTIONAL_PACKAGES) {
} }
# Prepare the optional build features before parsing the Jamfile tree. # Prepare the optional build features before parsing the Jamfile tree.
include [ FDirName $(HAIKU_BUILD_RULES_DIR) OptionalBuildFeatures ] ; include [ FDirName $(HAIKU_BUILD_RULES_DIR) BuildFeatures ] ;
# Include packages that are required by all images. # Include packages that are required by all images.
AddOptionalHaikuImagePackages MandatoryPackages ; AddOptionalHaikuImagePackages MandatoryPackages ;
# If enabled, make sure that OpenSSL is added to the image. # If enabled, make sure that OpenSSL is added to the image.
if $(HAIKU_OPENSSL_ENABLED) { if $(HAIKU_BUILD_FEATURE_OPENSSL_ENABLED) {
AddOptionalHaikuImagePackages OpenSSL ; AddOptionalHaikuImagePackages OpenSSL ;
} }
@@ -1,6 +1,12 @@
# This file contains setup for features that can optionally be used for the # This file contains setup for build features that are not available for all
# build. For features that require downloading a zip file from somewhere it is # architectures/setups or that are optional for the build. For features that
# likely the same file use for an optional package. # require downloading a zip file from somewhere it is likely the same file used
# for an optional package.
# Add the target architecture as a build feature.
EnableBuildFeatures $(HAIKU_ARCH) ;
# Detect a hybrid GCC2/GCC4 image and disable the checks for unavailable GCC4 # Detect a hybrid GCC2/GCC4 image and disable the checks for unavailable GCC4
# packages. (It does not matter if a package was built with either compiler, # packages. (It does not matter if a package was built with either compiler,
@@ -56,9 +62,10 @@ if $(HAIKU_BUILD_FEATURE_SSL) {
: extracted-openssl : extracted-openssl
] ; ] ;
HAIKU_OPENSSL_ENABLED = 1 ;
HAIKU_OPENSSL_HEADERS HAIKU_OPENSSL_HEADERS
= [ FDirName $(HAIKU_OPENSSL_DIR) common include ] ; = [ FDirName $(HAIKU_OPENSSL_DIR) common include ] ;
EnableBuildFeatures openssl ;
} }
} }
@@ -72,7 +79,7 @@ HAIKU_ICU_PPC_PACKAGE = icu-4.8.1-ppc-2011-08-20.zip ;
HAIKU_ICU_ARM_PACKAGE = icu-4.8.1.1-arm-2012-11-21.zip ; HAIKU_ICU_ARM_PACKAGE = icu-4.8.1.1-arm-2012-11-21.zip ;
HAIKU_ICU_X86_64_PACKAGE = icu-4.8.1.1-x86_64-2012-07-30.zip ; HAIKU_ICU_X86_64_PACKAGE = icu-4.8.1.1-x86_64-2012-07-30.zip ;
if $(TARGET_ARCH) = ppc || $(TARGET_ARCH) = x86 || $(TARGET_ARCH) = arm || $(TARGET_ARCH) = x86_64 { if $(TARGET_ARCH) in arm ppc x86 x86_64 {
local icu_package ; local icu_package ;
if $(TARGET_ARCH) = ppc { if $(TARGET_ARCH) = ppc {
icu_package = $(HAIKU_ICU_PPC_PACKAGE) ; icu_package = $(HAIKU_ICU_PPC_PACKAGE) ;
@@ -140,6 +147,8 @@ if $(TARGET_ARCH) = ppc || $(TARGET_ARCH) = x86 || $(TARGET_ARCH) = arm || $(TAR
HAIKU_ICU_HEADERS HAIKU_ICU_HEADERS
= [ FDirName $(HAIKU_ICU_DEVEL_DIR) develop headers 3rdparty ] ; = [ FDirName $(HAIKU_ICU_DEVEL_DIR) develop headers 3rdparty ] ;
EnableBuildFeatures icu ;
} else { } else {
Echo "ICU not available for $(TARGET_ARCH)" ; Echo "ICU not available for $(TARGET_ARCH)" ;
} }
@@ -184,6 +193,8 @@ if $(HAIKU_BUILD_FEATURE_CLUCENE) {
HAIKU_CLUCENE_HEADERS HAIKU_CLUCENE_HEADERS
= [ FDirName $(HAIKU_CLUCENE_DIR) common include ] ; = [ FDirName $(HAIKU_CLUCENE_DIR) common include ] ;
EnableBuildFeatures clucene ;
} }
} }
@@ -206,6 +217,8 @@ if $(TARGET_ARCH) = x86 {
HAIKU_GLU_LIBS = [ ExtractArchive $(HAIKU_GLU_DIR) HAIKU_GLU_LIBS = [ ExtractArchive $(HAIKU_GLU_DIR)
: system/lib/libGLU.a : $(zipFile) : extracted-glu ] ; : system/lib/libGLU.a : $(zipFile) : extracted-glu ] ;
HAIKU_GLU_HEADERS = [ FDirName $(HAIKU_GLU_DIR) develop headers os opengl ] ; HAIKU_GLU_HEADERS = [ FDirName $(HAIKU_GLU_DIR) develop headers os opengl ] ;
EnableBuildFeatures glu ;
} else { } else {
Echo "GLU not yet available on $(TARGET_ARCH)" ; Echo "GLU not yet available on $(TARGET_ARCH)" ;
} }
@@ -247,6 +260,7 @@ if $(TARGET_ARCH) = x86 {
Depends $(HAIKU_MESA_HEADERS_DEPENDENCY) : $(HAIKU_GLU_HEADERS_DEPENDENCY) ; Depends $(HAIKU_MESA_HEADERS_DEPENDENCY) : $(HAIKU_GLU_HEADERS_DEPENDENCY) ;
Depends $(HAIKU_MESA_LIBS) : $(HAIKU_GLU_LIBS) ; Depends $(HAIKU_MESA_LIBS) : $(HAIKU_GLU_LIBS) ;
EnableBuildFeatures mesa ;
} else { } else {
Echo "Mesa 3D rendering support not available on $(TARGET_ARCH)" ; Echo "Mesa 3D rendering support not available on $(TARGET_ARCH)" ;
} }
@@ -369,6 +383,7 @@ if $(TARGET_ARCH) = x86 {
HAIKU_LIBOGG_HEADERS = [ FDirName $(HAIKU_LIBOGG_DIR) common include ] ; HAIKU_LIBOGG_HEADERS = [ FDirName $(HAIKU_LIBOGG_DIR) common include ] ;
HAIKU_LIBVPX_HEADERS = [ FDirName $(HAIKU_LIBVPX_DIR) common include ] ; HAIKU_LIBVPX_HEADERS = [ FDirName $(HAIKU_LIBVPX_DIR) common include ] ;
EnableBuildFeatures ffmpeg ;
} else { } else {
Echo "FFMpeg support not available on $(TARGET_ARCH)" ; Echo "FFMpeg support not available on $(TARGET_ARCH)" ;
} }
@@ -401,6 +416,7 @@ if $(TARGET_ARCH) = x86 {
HAIKU_MIKMOD_HEADERS = [ FDirName $(HAIKU_MIKMOD_DIR) common include ] ; HAIKU_MIKMOD_HEADERS = [ FDirName $(HAIKU_MIKMOD_DIR) common include ] ;
EnableBuildFeatures mikmod ;
} else { } else {
Echo "MikMod support not available on $(TARGET_ARCH)" ; Echo "MikMod support not available on $(TARGET_ARCH)" ;
} }
@@ -448,6 +464,8 @@ if $(TARGET_ARCH) = ppc || $(TARGET_ARCH) = x86 || $(TARGET_ARCH) = x86_64 || $(
HAIKU_FREETYPE_HEADERS = [ FDirName $(HAIKU_FREETYPE_DIR) develop HAIKU_FREETYPE_HEADERS = [ FDirName $(HAIKU_FREETYPE_DIR) develop
headers 3rdparty ] [ FDirName $(HAIKU_FREETYPE_DIR) develop headers 3rdparty ] [ FDirName $(HAIKU_FREETYPE_DIR) develop
headers 3rdparty freetype2 ] ; headers 3rdparty freetype2 ] ;
EnableBuildFeatures freetype ;
} else { } else {
Echo "Freetype support not available on $(TARGET_ARCH)" ; Echo "Freetype support not available on $(TARGET_ARCH)" ;
} }
@@ -492,6 +510,8 @@ if $(HAIKU_BUILD_FEATURE_TAGLIB) {
HAIKU_TAGLIB_HEADERS HAIKU_TAGLIB_HEADERS
= [ FDirName $(HAIKU_TAGLIB_DIR) common include taglib ] ; = [ FDirName $(HAIKU_TAGLIB_DIR) common include taglib ] ;
EnableBuildFeatures taglib ;
} }
} }
@@ -535,6 +555,8 @@ if $(HAIKU_BUILD_FEATURE_WEBKIT) {
] ; ] ;
HAIKU_WEBKIT_HEADERS = [ FDirName $(HAIKU_WEBKIT_DIR) include ] ; HAIKU_WEBKIT_HEADERS = [ FDirName $(HAIKU_WEBKIT_DIR) include ] ;
EnableBuildFeatures webkit ;
} }
} }
@@ -578,13 +600,15 @@ if $(TARGET_ARCH) = ppc || $(TARGET_ARCH) = x86 || $(TARGET_ARCH) = x86_64 || $(
HAIKU_LIBPNG_CURRENT_LINK = libpng15.so.15 ; HAIKU_LIBPNG_CURRENT_LINK = libpng15.so.15 ;
HAIKU_LIBPNG_HEADERS = [ FDirName $(HAIKU_LIBPNG_DIR) common include ] ; HAIKU_LIBPNG_HEADERS = [ FDirName $(HAIKU_LIBPNG_DIR) common include ] ;
EnableBuildFeatures libpng ;
} else { } else {
Echo "libpng support not available on $(TARGET_ARCH)" ; Echo "libpng support not available on $(TARGET_ARCH)" ;
} }
# jpeg # jpeg
local jpegBaseURL = $(baseURL)/lib ; local jpegBaseURL = $(baseURL)/lib ;
if $(TARGET_ARCH) = ppc || $(TARGET_ARCH) = x86 || $(TARGET_ARCH) = x86_64 || $(TARGET_ARCH) = arm { if $(TARGET_ARCH) in arm ppc x86 x86_64 {
if $(TARGET_ARCH) = arm { if $(TARGET_ARCH) = arm {
HAIKU_JPEG_FILE = jpeg-8d-arm-2012-11-21.zip ; HAIKU_JPEG_FILE = jpeg-8d-arm-2012-11-21.zip ;
} else if $(TARGET_ARCH) = ppc { } else if $(TARGET_ARCH) = ppc {
@@ -622,6 +646,8 @@ if $(TARGET_ARCH) = ppc || $(TARGET_ARCH) = x86 || $(TARGET_ARCH) = x86_64 || $(
HAIKU_JPEG_CURRENT_LINK = libjpeg.so.8 ; HAIKU_JPEG_CURRENT_LINK = libjpeg.so.8 ;
HAIKU_JPEG_HEADERS = [ FDirName $(HAIKU_JPEG_DIR) common include ] ; HAIKU_JPEG_HEADERS = [ FDirName $(HAIKU_JPEG_DIR) common include ] ;
EnableBuildFeatures libjpeg ;
} else { } else {
Echo "jpeg support not available on $(TARGET_ARCH)" ; Echo "jpeg support not available on $(TARGET_ARCH)" ;
} }
@@ -666,6 +692,23 @@ if $(TARGET_ARCH) = ppc || $(TARGET_ARCH) = x86 || $(TARGET_ARCH) = x86_64 || $(
HAIKU_ZLIB_CURRENT_LINK = libz.so.1 ; HAIKU_ZLIB_CURRENT_LINK = libz.so.1 ;
HAIKU_ZLIB_HEADERS = [ FDirName $(HAIKU_ZLIB_DIR) common include ] ; HAIKU_ZLIB_HEADERS = [ FDirName $(HAIKU_ZLIB_DIR) common include ] ;
EnableBuildFeatures zlib ;
} else { } else {
Echo "zlib support not available on $(TARGET_ARCH)" ; Echo "zlib support not available on $(TARGET_ARCH)" ;
} }
# GPL add-ons
if $(HAIKU_INCLUDE_GPL_ADDONS) = 1 {
EnableBuildFeatures gpl ;
}
# ATA vs. IDE
#HACK: remove when old ide code is removed!
if $(HAIKU_ATA_STACK) = 1 {
EnableBuildFeatures ata ;
} else {
EnableBuildFeatures ide ;
}
+14 -37
View File
@@ -1,32 +1,8 @@
# This file defines what ends up in the floppy boot image and it executes the # This file defines what ends up in the floppy boot image and it executes the
# rules building the image. # rules building the image.
local X86_ONLY = ;
local PPC_ONLY = ;
local ARM_ONLY = ;
if $(TARGET_ARCH) = x86 || $(TARGET_ARCH) = x86_64 {
X86_ONLY = "" ;
} else if $(TARGET_ARCH) = ppc {
X86_ONLY = ;
} else if $(TARGET_ARCH) = m68k {
X86_ONLY = ;
} else if $(TARGET_ARCH) = arm {
ARM_ONLY = "" ;
}
local GPL_ONLY = ;
if $(HAIKU_INCLUDE_GPL_ADDONS) = 1 {
GPL_ONLY = "" ;
}
#HACK: remove when old ide code is removed! #HACK: remove when old ide code is removed!
local ATA_ONLY = ;
local IDE_ONLY = ;
if $(HAIKU_ATA_STACK) = 1 {
ATA_ONLY = "" ;
} else {
IDE_ONLY = "" ;
}
local NET_BOOT = 0 ; local NET_BOOT = 0 ;
local USB_BOOT = 1 ; local USB_BOOT = 1 ;
@@ -49,9 +25,10 @@ if $(NET_BOOT) = 1 {
; ;
} }
SYSTEM_ADD_ONS_BUS_MANAGERS = $(X86_ONLY)acpi $(ATA_ONLY)ata config_manager dpc pci SYSTEM_ADD_ONS_BUS_MANAGERS = [ FFilterByBuildFeatures
$(IDE_ONLY)ide $(X86_ONLY)isa scsi $(USB_ONLY)usb acpi@x86 ata@ata config_manager dpc pci
; ide@ide isa@x86 scsi $(USB_ONLY)usb
] ;
SYSTEM_ADD_ONS_FILE_SYSTEMS = bfs iso9660 attribute_overlay write_overlay ; SYSTEM_ADD_ONS_FILE_SYSTEMS = bfs iso9660 attribute_overlay write_overlay ;
@@ -87,11 +64,11 @@ if $(TARGET_ARCH) = x86_64 {
if $(HAIKU_ATA_STACK) = 1 { if $(HAIKU_ATA_STACK) = 1 {
AddFilesToFloppyBootArchive system add-ons kernel busses ata AddFilesToFloppyBootArchive system add-ons kernel busses ata
: generic_ide_pci $(X86_ONLY)ide_isa silicon_image_3112 legacy_sata : generic_ide_pci ide_isa@x86 silicon_image_3112 legacy_sata
it8211 ; it8211 ;
} else { } else {
AddFilesToFloppyBootArchive system add-ons kernel busses ide AddFilesToFloppyBootArchive system add-ons kernel busses ide
: generic_ide_pci $(X86_ONLY)ide_isa silicon_image_3112 legacy_sata : generic_ide_pci ide_isa@x86 silicon_image_3112 legacy_sata
it8211 ; it8211 ;
} }
@@ -101,11 +78,11 @@ if $(TARGET_ARCH) = x86_64 {
AddFilesToFloppyBootArchive system add-ons kernel file_systems AddFilesToFloppyBootArchive system add-ons kernel file_systems
: $(SYSTEM_ADD_ONS_FILE_SYSTEMS) ; : $(SYSTEM_ADD_ONS_FILE_SYSTEMS) ;
AddFilesToFloppyBootArchive system add-ons kernel generic AddFilesToFloppyBootArchive system add-ons kernel generic
: $(ATA_ONLY)ata_adapter $(IDE_ONLY)ide_adapter locked_pool scsi_periph ; : ata_adapter@ata ide_adapter@ide locked_pool scsi_periph ;
AddFilesToFloppyBootArchive system add-ons kernel partitioning_systems AddFilesToFloppyBootArchive system add-ons kernel partitioning_systems
: intel session ; : intel session ;
AddFilesToFloppyBootArchive system add-ons kernel interrupt_controllers AddFilesToFloppyBootArchive system add-ons kernel interrupt_controllers
: $(PPC_ONLY)openpic ; : openpic@ppc ;
if $(USB_BOOT) = 1 { if $(USB_BOOT) = 1 {
AddFilesToFloppyBootArchive system add-ons kernel busses usb AddFilesToFloppyBootArchive system add-ons kernel busses usb
@@ -118,7 +95,7 @@ if $(TARGET_ARCH) = x86_64 {
# drivers # drivers
AddNewDriversToFloppyBootArchive disk scsi : scsi_cd scsi_disk ; AddNewDriversToFloppyBootArchive disk scsi : scsi_cd scsi_disk ;
AddNewDriversToFloppyBootArchive disk : $(ARM_ONLY)norflash ; AddNewDriversToFloppyBootArchive disk : norflash@arm ;
if $(USB_BOOT) = 1 { if $(USB_BOOT) = 1 {
AddDriversToFloppyBootArchive disk usb : usb_disk ; AddDriversToFloppyBootArchive disk usb : usb_disk ;
} }
@@ -166,13 +143,13 @@ if $(TARGET_ARCH) = x86_64 {
} else { } else {
AddBootModuleSymlinksToFloppyBootArchive AddBootModuleSymlinksToFloppyBootArchive
$(SYSTEM_ADD_ONS_BUS_MANAGERS) $(SYSTEM_ADD_ONS_BUS_MANAGERS)
$(PPC_ONLY)openpic openpic@ppc
$(ATA_ONLY)ata_adapter $(IDE_ONLY)ide_adapter locked_pool scsi_periph ata_adapter@ata ide_adapter@ide locked_pool scsi_periph
$(X86_ONLY)generic_x86 generic_x86@x86
ahci generic_ide_pci $(X86_ONLY)ide_isa silicon_image_3112 legacy_sata ahci generic_ide_pci ide_isa@x86 silicon_image_3112 legacy_sata
it8211 it8211
$(USB_ONLY)<usb>uhci $(USB_ONLY)<usb>ohci $(USB_ONLY)<usb>ehci $(USB_ONLY)<usb>uhci $(USB_ONLY)<usb>ohci $(USB_ONLY)<usb>ehci
scsi_cd scsi_disk $(USB_ONLY)usb_disk $(ARM_ONLY)norflash scsi_cd scsi_disk $(USB_ONLY)usb_disk norflash@arm
intel session intel session
$(SYSTEM_ADD_ONS_FILE_SYSTEMS) $(SYSTEM_ADD_ONS_FILE_SYSTEMS)
$(BOOT_ADD_ONS_NET) $(BOOT_ADD_ONS_NET)
+6 -18
View File
@@ -5,19 +5,6 @@
# This is only temporary while x86_64 is still a work in progress, so I can # This is only temporary while x86_64 is still a work in progress, so I can
# easily add things to the image as I port them. # easily add things to the image as I port them.
local GPL_ONLY = ;
if $(HAIKU_INCLUDE_GPL_ADDONS) = 1 {
GPL_ONLY = "" ;
}
#HACK: remove when old ide code is removed!
local ATA_ONLY = ;
local IDE_ONLY = ;
if $(HAIKU_ATA_STACK) = 1 {
ATA_ONLY = "" ;
} else {
IDE_ONLY = "" ;
}
SYSTEM_BIN = "[" addattr base64 basename bash beep cal cat catattr checkfs SYSTEM_BIN = "[" addattr base64 basename bash beep cal cat catattr checkfs
chgrp chmod chown chroot cksum clear clockconfig cmp collectcatkeys comm chgrp chmod chown chroot cksum clear clockconfig cmp collectcatkeys comm
@@ -85,8 +72,9 @@ SYSTEM_ADD_ONS_DRIVERS_NET = 3com atheros813x ar81xx attansic_l1 attansic_l2
via_rhine wb840 via_rhine wb840
; ;
SYSTEM_ADD_ONS_BUS_MANAGERS = $(ATA_ONLY)ata pci ps2 isa scsi config_manager SYSTEM_ADD_ONS_BUS_MANAGERS = [ FFilterByBuildFeatures
usb ; ata@ata pci ps2 isa scsi config_manager usb
] ;
SYSTEM_ADD_ONS_FILE_SYSTEMS = bfs iso9660 attribute_overlay write_overlay ; SYSTEM_ADD_ONS_FILE_SYSTEMS = bfs iso9660 attribute_overlay write_overlay ;
# modules # modules
@@ -107,7 +95,7 @@ AddFilesToHaikuImage system add-ons kernel debugger
AddFilesToHaikuImage system add-ons kernel file_systems AddFilesToHaikuImage system add-ons kernel file_systems
: $(SYSTEM_ADD_ONS_FILE_SYSTEMS) ; : $(SYSTEM_ADD_ONS_FILE_SYSTEMS) ;
AddFilesToHaikuImage system add-ons kernel generic AddFilesToHaikuImage system add-ons kernel generic
: $(ATA_ONLY)ata_adapter bios dpc locked_pool scsi_periph <module>tty ; : ata_adapter@ata bios dpc locked_pool scsi_periph <module>tty ;
AddFilesToHaikuImage system add-ons kernel partitioning_systems AddFilesToHaikuImage system add-ons kernel partitioning_systems
: intel session ; : intel session ;
@@ -174,7 +162,7 @@ AddFilesToHaikuImage system bin : install-wifi-firmwares.sh ;
# Add the files to be used by installoptionalpackage. # Add the files to be used by installoptionalpackage.
AddDirectoryToHaikuImage common data optional-packages ; AddDirectoryToHaikuImage common data optional-packages ;
local optional-pkg-files = OptionalBuildFeatures OptionalPackageDependencies local optional-pkg-files = BuildFeatures OptionalPackageDependencies
OptionalPackages OptionalLibPackages ; OptionalPackages OptionalLibPackages ;
for name in $(optional-pkg-files) { for name in $(optional-pkg-files) {
local file = [ FDirName $(HAIKU_TOP) build jam $(name) ] ; local file = [ FDirName $(HAIKU_TOP) build jam $(name) ] ;
@@ -358,7 +346,7 @@ AddFilesToHaikuImage system : haiku_loader ;
# boot module links # boot module links
AddBootModuleSymlinksToHaikuImage AddBootModuleSymlinksToHaikuImage
$(ATA_ONLY)ata pci config_manager dpc scsi usb $(ATA_ONLY)ata_adapter ata@ata pci config_manager dpc scsi usb ata_adapter@ata
locked_pool scsi_periph ahci generic_ide_pci legacy_sata locked_pool scsi_periph ahci generic_ide_pci legacy_sata
<usb>uhci <usb>ohci <usb>ehci <usb>uhci <usb>ohci <usb>ehci
scsi_cd scsi_disk usb_disk scsi_cd scsi_disk usb_disk
+91 -109
View File
@@ -2,35 +2,9 @@
# installation directory) and it executes the rules building the image # installation directory) and it executes the rules building the image
# (respectively installing the files in the installation directory). # (respectively installing the files in the installation directory).
local X86_ONLY = ;
local PPC_ONLY = ;
local M68K_ONLY = ;
local ARM_ONLY = ;
if $(TARGET_ARCH) = x86 {
X86_ONLY = "" ;
} else if $(TARGET_ARCH) = ppc {
PPC_ONLY = "" ;
} else if $(TARGET_ARCH) = m68k {
M68K_ONLY = "" ;
} else if $(TARGET_ARCH) = arm {
ARM_ONLY = "" ;
}
local GPL_ONLY = ; SYSTEM_BIN = [ FFilterByBuildFeatures
if $(HAIKU_INCLUDE_GPL_ADDONS) = 1 { "[" addattr alert arp base64 basename bash bc beep bfsinfo
GPL_ONLY = "" ;
}
#HACK: remove when old ide code is removed!
local ATA_ONLY = ;
local IDE_ONLY = ;
if $(HAIKU_ATA_STACK) = 1 {
ATA_ONLY = "" ;
} else {
IDE_ONLY = "" ;
}
SYSTEM_BIN = "[" addattr alert arp base64 basename bash bc beep bfsinfo
cal cat catattr checkfs checkitout chgrp chmod chop chown chroot cksum clear cal cat catattr checkfs checkitout chgrp chmod chop chown chroot cksum clear
clockconfig cmp collectcatkeys comm compress copyattr CortexAddOnHost cp clockconfig cmp collectcatkeys comm compress copyattr CortexAddOnHost cp
csplit cut date dc dd desklink df diff diff3 dircolors dirname csplit cut date dc dd desklink df diff diff3 dircolors dirname
@@ -38,10 +12,10 @@ SYSTEM_BIN = "[" addattr alert arp base64 basename bash bc beep bfsinfo
echo eject env error expand expr echo eject env error expand expr
factor false fdinfo ffm filepanel find finddir fmt fold fortune frcode factor false fdinfo ffm filepanel find finddir fmt fold fortune frcode
ftp ftpd funzip fwcontrol ftp ftpd funzip fwcontrol
gawk $(X86_ONLY)gdb getlimits grep groups gzip gzexe gawk gdb@x86 getlimits grep groups gzip gzexe
hd head hey hostname hd head hey hostname
id ident ifconfig <bin>install installsound iroster isvolume id ident ifconfig <bin>install installsound iroster isvolume
$(IDE_ONLY)ideinfo $(IDE_ONLY)idestatus ideinfo@ide idestatus@ide
join kernel_debugger keymap kill join kernel_debugger keymap kill
less lessecho lesskey link linkcatkeys listarea listattr listimage listdev less lessecho lesskey link linkcatkeys listarea listattr listimage listdev
listport listres listsem listusb ln locale locate logger login logname ls listport listres listsem listusb ln locale locate logger login logname ls
@@ -64,38 +38,41 @@ SYSTEM_BIN = "[" addattr alert arp base64 basename bash bc beep bfsinfo
uname unchop unexpand unmount uniq unlink unrar unshar unzip unzipsfx uname unchop unexpand unmount uniq unlink unrar unshar unzip unzipsfx
<bin>updatedb uptime urlwrapper useradd uudecode uuencode <bin>updatedb uptime urlwrapper useradd uudecode uuencode
vdir version vmstat vdir version vmstat
waitfor watch wc wget whoami $(X86_ONLY)writembr xargs xres yes waitfor watch wc wget whoami writembr@x86 xargs xres yes
zdiff zforce zgrep zip zipcloak <bin>zipgrep zipnote zipsplit zmore znew zdiff zforce zgrep zip zipcloak <bin>zipgrep zipnote zipsplit zmore znew
; ] ;
SYSTEM_APPS = AboutSystem ActivityMonitor $(X86_ONLY)BootManager CharacterMap SYSTEM_APPS = [ FFilterByBuildFeatures
AboutSystem ActivityMonitor BootManager@x86 CharacterMap
CodyCam DeskCalc Devices DiskProbe DiskUsage DriveSetup CDPlayer Expander CodyCam DeskCalc Devices DiskProbe DiskUsage DriveSetup CDPlayer Expander
$(X86_ONLY)GLInfo Icon-O-Matic Installer LaunchBox Magnify Mail GLInfo@x86 Icon-O-Matic Installer LaunchBox Magnify Mail
MediaConverter MediaPlayer MidiPlayer NetworkStatus PackageInstaller People MediaConverter MediaPlayer MidiPlayer NetworkStatus PackageInstaller People
PoorMan PowerStatus ProcessController Screenshot ShowImage SoundRecorder PoorMan PowerStatus ProcessController Screenshot ShowImage SoundRecorder
StyledEdit Terminal TextSearch TV WebWatch Workspaces StyledEdit Terminal TextSearch TV WebWatch Workspaces
; ] ;
SYSTEM_PREFERENCES = Appearance Backgrounds CPUFrequency DataTranslations SYSTEM_PREFERENCES = [ FFilterByBuildFeatures
Appearance Backgrounds CPUFrequency DataTranslations
<preference>Deskbar E-mail FileTypes Keyboard Keymap Locale Media <preference>Deskbar E-mail FileTypes Keyboard Keymap Locale Media
Mouse Network Notifications Printers Screen ScreenSaver Mouse Network Notifications Printers Screen ScreenSaver
Shortcuts Sounds Time Touchpad <preference>Tracker VirtualMemory Shortcuts Sounds Time Touchpad <preference>Tracker VirtualMemory
; ] ;
SYSTEM_DEMOS = BSnow Chart Clock Cortex FontDemo $(X86_ONLY)GLTeapot SYSTEM_DEMOS = [ FFilterByBuildFeatures
$(HAIKU_INCLUDE_TRADEMARKS)$(X86_ONLY)Haiku3d Mandelbrot OverlayImage Pairs BSnow Chart Clock Cortex FontDemo GLTeapot@x86
$(HAIKU_INCLUDE_TRADEMARKS)Haiku3d@x86 Mandelbrot OverlayImage Pairs
Playground Pulse Sudoku Playground Pulse Sudoku
; ] ;
SYSTEM_LIBS = SYSTEM_LIBS = [ FFilterByBuildFeatures
libbe.so libbsd.so libbnetapi.so libbe.so libbsd.so libbnetapi.so
libdebug.so libdevice.so libdebug.so libdevice.so
libgame.so $(X86_ONLY)libGL.so $(X86_ONLY)libglut.so libgame.so libGL.so@x86 libglut.so@x86
libgnu.so libmail.so libmedia.so libmidi.so libmidi2.so libgnu.so libmail.so libmedia.so libmidi.so libmidi2.so
libnetwork.so libnetwork.so
<revisioned>libroot.so libroot-addon-icu.so <revisioned>libroot.so libroot-addon-icu.so
libscreensaver.so libscreensaver.so
libtextencoding.so libtiff.so libtracker.so libtranslation.so libtextencoding.so libtiff.so libtracker.so libtranslation.so
$(HAIKU_SHARED_LIBSTDC++) $(HAIKU_SHARED_LIBSUPC++) $(HAIKU_SHARED_LIBSTDC++) $(HAIKU_SHARED_LIBSUPC++)
; ] ;
PRIVATE_SYSTEM_LIBS = PRIVATE_SYSTEM_LIBS = [ FFilterByBuildFeatures
$(HAIKU_JPEG_CURRENT_LIB) $(HAIKU_JPEG_CURRENT_LIB)
$(HAIKU_LIBPNG_CURRENT_LIB) $(HAIKU_LIBPNG_CURRENT_LIB)
$(HAIKU_ZLIB_CURRENT_LIB) $(HAIKU_ZLIB_CURRENT_LIB)
@@ -103,11 +80,13 @@ PRIVATE_SYSTEM_LIBS =
libalm.so libalm.so
libfluidsynth.so libfluidsynth.so
libilmimf.so libilmimf.so
; ] ;
SYSTEM_SERVERS = app_server cddb_daemon debug_server input_server mail_daemon SYSTEM_SERVERS = [ FFilterByBuildFeatures
app_server cddb_daemon debug_server input_server mail_daemon
media_addon_server media_server midi_server mount_server net_server media_addon_server media_server midi_server mount_server net_server
notification_server power_daemon print_server print_addon_server registrar syslog_daemon notification_server power_daemon print_server print_addon_server registrar
; syslog_daemon
] ;
SYSTEM_NETWORK_DEVICES = ethernet loopback ; SYSTEM_NETWORK_DEVICES = ethernet loopback ;
SYSTEM_NETWORK_DATALINK_PROTOCOLS = ethernet_frame <module>arp loopback_frame SYSTEM_NETWORK_DATALINK_PROTOCOLS = ethernet_frame <module>arp loopback_frame
@@ -115,17 +94,14 @@ SYSTEM_NETWORK_DATALINK_PROTOCOLS = ethernet_frame <module>arp loopback_frame
#SYSTEM_NETWORK_PPP = ipcp modem pap pppoe ; #SYSTEM_NETWORK_PPP = ipcp modem pap pppoe ;
SYSTEM_NETWORK_PROTOCOLS = ipv4 tcp udp icmp unix icmp6 ipv6 ; SYSTEM_NETWORK_PROTOCOLS = ipv4 tcp udp icmp unix icmp6 ipv6 ;
SYSTEM_ADD_ONS_ACCELERANTS = $(X86_ONLY)radeon.accelerant SYSTEM_ADD_ONS_ACCELERANTS = [ FFilterByBuildFeatures
$(X86_ONLY)nvidia.accelerant $(X86_ONLY)matrox.accelerant x86 @{
$(X86_ONLY)neomagic.accelerant $(X86_ONLY)intel_extreme.accelerant 3dfx.accelerant ati.accelerant matrox.accelerant neomagic.accelerant
$(X86_ONLY)s3.accelerant $(X86_ONLY)vesa.accelerant nvidia.accelerant intel_810.accelerant intel_extreme.accelerant
$(X86_ONLY)ati.accelerant radeon.accelerant radeon_hd.accelerant s3.accelerant vesa.accelerant
$(X86_ONLY)3dfx.accelerant #via.accelerant vmware.accelerant
$(X86_ONLY)radeon_hd.accelerant }@ # x86
$(X86_ONLY)intel_810.accelerant ] ;
#$(X86_ONLY)via.accelerant
#$(X86_ONLY)vmware.accelerant
;
SYSTEM_ADD_ONS_TRANSLATORS = BMPTranslator EXRTranslator GIFTranslator SYSTEM_ADD_ONS_TRANSLATORS = BMPTranslator EXRTranslator GIFTranslator
HVIFTranslator ICOTranslator JPEGTranslator JPEG2000Translator HVIFTranslator ICOTranslator JPEGTranslator JPEG2000Translator
PCXTranslator PNGTranslator PPMTranslator PCXTranslator PNGTranslator PPMTranslator
@@ -133,9 +109,10 @@ SYSTEM_ADD_ONS_TRANSLATORS = BMPTranslator EXRTranslator GIFTranslator
TIFFTranslator WebPTranslator WonderBrushTranslator ICNSTranslator TIFFTranslator WebPTranslator WonderBrushTranslator ICNSTranslator
; ;
SYSTEM_ADD_ONS_LOCALE_CATALOGS = <catalog-addon>plaintext ; SYSTEM_ADD_ONS_LOCALE_CATALOGS = <catalog-addon>plaintext ;
SYSTEM_ADD_ONS_MEDIA = cortex_audioadapter.media_addon SYSTEM_ADD_ONS_MEDIA = [ FFilterByBuildFeatures
cortex_audioadapter.media_addon
cortex_flanger.media_addon cortex_flanger.media_addon
$(X86_ONLY)dvb.media_addon dvb.media_addon@x86
hmulti_audio.media_addon hmulti_audio.media_addon
mixer.media_addon mixer.media_addon
opensound.media_addon opensound.media_addon
@@ -147,8 +124,10 @@ SYSTEM_ADD_ONS_MEDIA = cortex_audioadapter.media_addon
#legacy.media_addon #legacy.media_addon
equalizer.media_addon equalizer.media_addon
vst_host.media_addon vst_host.media_addon
; ] ;
SYSTEM_ADD_ONS_MEDIA_PLUGINS = $(X86_ONLY)ffmpeg raw_decoder ; SYSTEM_ADD_ONS_MEDIA_PLUGINS = [ FFilterByBuildFeatures
ffmpeg@ffmpeg raw_decoder
] ;
SYSTEM_ADD_ONS_PRINT = SYSTEM_ADD_ONS_PRINT =
Canon\ LIPS3\ Compatible Canon\ LIPS3\ Compatible
Canon\ LIPS4\ Compatible Canon\ LIPS4\ Compatible
@@ -163,40 +142,45 @@ SYSTEM_ADD_ONS_PRINT_TRANSPORT = HP\ JetDirect IPP LPR
# Parallel\ Port # Parallel\ Port
Print\ To\ File Serial\ Port USB\ Port Print\ To\ File Serial\ Port USB\ Port
; ;
SYSTEM_ADD_ONS_SCREENSAVERS = Butterfly DebugNow $(X86_ONLY)Flurry SYSTEM_ADD_ONS_SCREENSAVERS = [ FFilterByBuildFeatures
$(X86_ONLY)GLife $(HAIKU_INCLUDE_TRADEMARKS)Haiku Icons IFS Leaves Butterfly DebugNow Flurry@x86
Message Spider ; GLife@x86 $(HAIKU_INCLUDE_TRADEMARKS)Haiku Icons IFS Leaves
Message Spider
] ;
SYSTEM_ADD_ONS_DRIVERS_AUDIO = auich auvia echo3g emuxki hda ice1712 sis7018 ; 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_AUDIO_OLD = ; #cmedia usb_audio ;
SYSTEM_ADD_ONS_DRIVERS_GRAPHICS = $(X86_ONLY)radeon $(X86_ONLY)nvidia SYSTEM_ADD_ONS_DRIVERS_GRAPHICS = [ FFilterByBuildFeatures
$(X86_ONLY)neomagic $(X86_ONLY)matrox $(X86_ONLY)intel_extreme x86 @{
$(X86_ONLY)s3 $(X86_ONLY)vesa #$(X86_ONLY)via #$(X86_ONLY)vmware ati 3dfx intel_810 intel_extreme matrox neomagic nvidia radeon radeon_hd
$(X86_ONLY)ati $(X86_ONLY)3dfx $(X86_ONLY)radeon_hd s3 vesa #via vmware
$(X86_ONLY)intel_810 }@ # x86
; ] ;
SYSTEM_ADD_ONS_DRIVERS_MIDI = emuxki ice1712 usb_midi ; SYSTEM_ADD_ONS_DRIVERS_MIDI = emuxki ice1712 usb_midi ;
SYSTEM_ADD_ONS_DRIVERS_NET = $(X86_ONLY)3com $(X86_ONLY)atheros813x SYSTEM_ADD_ONS_DRIVERS_NET = [ FFilterByBuildFeatures
$(X86_ONLY)ar81xx $(X86_ONLY)attansic_l1 $(X86_ONLY)attansic_l2 x86 @{
$(X86_ONLY)broadcom440x $(X86_ONLY)broadcom570x $(X86_ONLY)dec21xxx etherpci 3com atheros813x ar81xx attansic_l1 attansic_l2 broadcom440x
$(X86_ONLY)ipro100 $(X86_ONLY)ipro1000 $(X86_ONLY)jmicron2x0 broadcom570x dec21xxx ipro100 ipro1000 jmicron2x0 marvell_yukon nforce
$(X86_ONLY)marvell_yukon $(X86_ONLY)nforce $(X86_ONLY)pcnet pegasus pcnet rtl8139 rtl81xx sis19x syskonnect via_rhine vt612x
$(X86_ONLY)rtl8139 $(X86_ONLY)rtl81xx $(X86_ONLY)sis19x sis900 }@ # x86
$(X86_ONLY)syskonnect usb_davicom usb_asix usb_ecm $(X86_ONLY)via_rhine
$(X86_ONLY)vt612x wb840 etherpci pegasus sis900 usb_davicom usb_asix usb_ecm wb840
# WLAN drivers # WLAN drivers
$(X86_ONLY)aironetwifi $(X86_ONLY)atheroswifi $(X86_ONLY)broadcom43xx x86 @{
$(X86_ONLY)iprowifi2100 $(X86_ONLY)iprowifi2200 $(X86_ONLY)iprowifi3945 aironetwifi atheroswifi broadcom43xx
$(X86_ONLY)iprowifi4965 $(X86_ONLY)marvell88w8363 $(X86_ONLY)marvell88w8335 iprowifi2100 iprowifi2200 iprowifi3945
$(X86_ONLY)ralink2860 $(X86_ONLY)ralinkwifi $(X86_ONLY)wavelanwifi iprowifi4965 marvell88w8363 marvell88w8335
ralink2860 ralinkwifi wavelanwifi
}@ # x86
# WWAN drivers # WWAN drivers
#$(GPL_ONLY)usb_beceemwmx #usb_beceemwmx@gpl
; ] ;
SYSTEM_ADD_ONS_DRIVERS_POWER = $(X86_ONLY)acpi_button ; SYSTEM_ADD_ONS_DRIVERS_POWER = [ FFilterByBuildFeatures acpi_button@x86 ] ;
SYSTEM_ADD_ONS_BUS_MANAGERS = $(ATA_ONLY)ata pci $(X86_ONLY)ps2 $(X86_ONLY)isa SYSTEM_ADD_ONS_BUS_MANAGERS = [ FFilterByBuildFeatures
$(IDE_ONLY)ide scsi config_manager agp_gart usb firewire $(X86_ONLY)acpi ata@ata pci ps2@x86 isa@x86
; ide@ide scsi config_manager agp_gart usb firewire acpi@x86
] ;
SYSTEM_ADD_ONS_FILE_SYSTEMS = bfs btrfs cdda exfat ext2 fat iso9660 nfs SYSTEM_ADD_ONS_FILE_SYSTEMS = bfs btrfs cdda exfat ext2 fat iso9660 nfs
attribute_overlay write_overlay ntfs reiserfs udf googlefs ; attribute_overlay write_overlay ntfs reiserfs udf googlefs ;
@@ -223,16 +207,14 @@ for driver in $(SYSTEM_ADD_ONS_DRIVERS_NET) {
AddFilesToHaikuImage system add-ons kernel bus_managers AddFilesToHaikuImage system add-ons kernel bus_managers
: $(SYSTEM_ADD_ONS_BUS_MANAGERS) ; : $(SYSTEM_ADD_ONS_BUS_MANAGERS) ;
AddFilesToHaikuImage system add-ons kernel busses agp_gart AddFilesToHaikuImage system add-ons kernel busses agp_gart
: $(X86_ONLY)<agp_gart>intel ; : <agp_gart>intel@x86 ;
if $(HAIKU_ATA_STACK) = 1 { if $(HAIKU_ATA_STACK) = 1 {
AddFilesToHaikuImage system add-ons kernel busses ata AddFilesToHaikuImage system add-ons kernel busses ata
: generic_ide_pci it8211 legacy_sata silicon_image_3112 : generic_ide_pci it8211 legacy_sata silicon_image_3112 ide_isa@x86 ;
$(X86_ONLY)ide_isa ;
} else { } else {
AddFilesToHaikuImage system add-ons kernel busses ide AddFilesToHaikuImage system add-ons kernel busses ide
: generic_ide_pci it8211 legacy_sata silicon_image_3112 : generic_ide_pci it8211 legacy_sata silicon_image_3112 ide_isa@x86 ;
$(X86_ONLY)ide_isa ;
} }
AddFilesToHaikuImage system add-ons kernel busses scsi AddFilesToHaikuImage system add-ons kernel busses scsi
@@ -241,18 +223,18 @@ AddFilesToHaikuImage system add-ons kernel busses usb
: <usb>uhci <usb>ohci <usb>ehci ; : <usb>uhci <usb>ohci <usb>ehci ;
AddFilesToHaikuImage system add-ons kernel console : vga_text ; AddFilesToHaikuImage system add-ons kernel console : vga_text ;
AddFilesToHaikuImage system add-ons kernel debugger AddFilesToHaikuImage system add-ons kernel debugger
: <kdebug>demangle $(X86_ONLY)<kdebug>disasm <kdebug>hangman : <kdebug>demangle <kdebug>disasm@x86 <kdebug>hangman
<kdebug>invalidate_on_exit <kdebug>usb_keyboard <kdebug>qrencode <kdebug>invalidate_on_exit <kdebug>usb_keyboard <kdebug>qrencode
<kdebug>run_on_exit ; <kdebug>run_on_exit ;
AddFilesToHaikuImage system add-ons kernel file_systems AddFilesToHaikuImage system add-ons kernel file_systems
: $(SYSTEM_ADD_ONS_FILE_SYSTEMS) ; : $(SYSTEM_ADD_ONS_FILE_SYSTEMS) ;
AddFilesToHaikuImage system add-ons kernel generic AddFilesToHaikuImage system add-ons kernel generic
: $(ATA_ONLY)ata_adapter $(X86_ONLY)bios dpc $(IDE_ONLY)ide_adapter : ata_adapter@ata bios@x86 dpc ide_adapter@ide
locked_pool mpu401 scsi_periph <module>tty ; #$(X86_ONLY)cpuidle ; locked_pool mpu401 scsi_periph <module>tty ; #cpuidle@x86 ;
AddFilesToHaikuImage system add-ons kernel partitioning_systems AddFilesToHaikuImage system add-ons kernel partitioning_systems
: amiga_rdb apple efi_gpt intel session ; : amiga_rdb apple efi_gpt intel session ;
AddFilesToHaikuImage system add-ons kernel interrupt_controllers AddFilesToHaikuImage system add-ons kernel interrupt_controllers
: $(PPC_ONLY)openpic ; : openpic@ppc ;
if $(TARGET_ARCH) = x86 { if $(TARGET_ARCH) = x86 {
AddFilesToHaikuImage system add-ons kernel cpu : generic_x86 ; AddFilesToHaikuImage system add-ons kernel cpu : generic_x86 ;
@@ -260,9 +242,9 @@ if $(TARGET_ARCH) = x86 {
# drivers # drivers
AddNewDriversToHaikuImage disk scsi : scsi_cd scsi_disk ; AddNewDriversToHaikuImage disk scsi : scsi_cd scsi_disk ;
AddNewDriversToHaikuImage power : $(X86_ONLY)enhanced_speedstep ; AddNewDriversToHaikuImage power : enhanced_speedstep@x86 ;
AddNewDriversToHaikuImage power : $(X86_ONLY)acpi_battery ; AddNewDriversToHaikuImage power : acpi_battery@x86 ;
#AddNewDriversToHaikuImage power : $(X86_ONLY)x86_cpuidle ; #AddNewDriversToHaikuImage power : x86_cpuidle@x86 ;
# legacy drivers # legacy drivers
AddDriversToHaikuImage : console dprintf null AddDriversToHaikuImage : console dprintf null
@@ -271,7 +253,7 @@ AddDriversToHaikuImage audio hmulti : $(SYSTEM_ADD_ONS_DRIVERS_AUDIO) ;
AddDriversToHaikuImage audio old : $(SYSTEM_ADD_ONS_DRIVERS_AUDIO_OLD) ; AddDriversToHaikuImage audio old : $(SYSTEM_ADD_ONS_DRIVERS_AUDIO_OLD) ;
AddDriversToHaikuImage midi : $(SYSTEM_ADD_ONS_DRIVERS_MIDI) ; AddDriversToHaikuImage midi : $(SYSTEM_ADD_ONS_DRIVERS_MIDI) ;
AddDriversToHaikuImage bus : usb_raw fw_raw ; AddDriversToHaikuImage bus : usb_raw fw_raw ;
AddDriversToHaikuImage disk floppy : $(X86_ONLY)pc_floppy ; AddDriversToHaikuImage disk floppy : pc_floppy@x86 ;
AddDriversToHaikuImage disk usb : usb_disk ; AddDriversToHaikuImage disk usb : usb_disk ;
AddDriversToHaikuImage disk usb : usb_floppy ; AddDriversToHaikuImage disk usb : usb_floppy ;
AddDriversToHaikuImage printer usb : usb_printer ; AddDriversToHaikuImage printer usb : usb_printer ;
@@ -393,7 +375,7 @@ AddSymlinkToHaikuImage home Desktop
# Add the files to be used by installoptionalpackage. # Add the files to be used by installoptionalpackage.
AddDirectoryToHaikuImage common data optional-packages ; AddDirectoryToHaikuImage common data optional-packages ;
local optional-pkg-files = OptionalBuildFeatures OptionalPackageDependencies local optional-pkg-files = BuildFeatures OptionalPackageDependencies
OptionalPackages OptionalLibPackages ; OptionalPackages OptionalLibPackages ;
for name in $(optional-pkg-files) { for name in $(optional-pkg-files) {
local file = [ FDirName $(HAIKU_TOP) build jam $(name) ] ; local file = [ FDirName $(HAIKU_TOP) build jam $(name) ] ;
@@ -622,12 +604,12 @@ AddFilesToHaikuImage system : haiku_loader ;
# boot module links # boot module links
AddBootModuleSymlinksToHaikuImage AddBootModuleSymlinksToHaikuImage
$(X86_ONLY)acpi $(ATA_ONLY)ata pci $(X86_ONLY)isa config_manager dpc acpi@x86 ata@ata pci isa@x86 config_manager dpc
$(IDE_ONLY)ide scsi usb ide@ide scsi usb
$(PPC_ONLY)openpic openpic@ppc
$(ATA_ONLY)ata_adapter $(IDE_ONLY)ide_adapter locked_pool scsi_periph ata_adapter@ata ide_adapter@ide locked_pool scsi_periph
ahci generic_ide_pci it8211 legacy_sata silicon_image_3112 ahci generic_ide_pci it8211 legacy_sata silicon_image_3112
$(X86_ONLY)ide_isa ide_isa@x86
<usb>uhci <usb>ohci <usb>ehci <usb>uhci <usb>ohci <usb>ehci
scsi_cd scsi_disk usb_disk scsi_cd scsi_disk usb_disk
efi_gpt efi_gpt
+23 -38
View File
@@ -1,43 +1,28 @@
# This file defines what ends up in the network boot archive and it executes the # This file defines what ends up in the network boot archive and it executes the
# rules building the archive. # rules building the archive.
local X86_ONLY = ;
local PPC_ONLY = ;
if $(TARGET_ARCH) = x86 {
X86_ONLY = "" ;
} else if $(TARGET_ARCH) = ppc {
X86_ONLY = ;
}
local GPL_ONLY = ;
if $(HAIKU_INCLUDE_GPL_ADDONS) = 1 {
GPL_ONLY = "" ;
}
#HACK: remove when old ide code is removed!
local ATA_ONLY = ;
local IDE_ONLY = ;
if $(HAIKU_ATA_STACK) = 1 {
ATA_ONLY = "" ;
} else {
IDE_ONLY = "" ;
}
SYSTEM_NETWORK_DEVICES = ethernet loopback ; SYSTEM_NETWORK_DEVICES = ethernet loopback ;
SYSTEM_NETWORK_DATALINK_PROTOCOLS = ethernet_frame <module>arp loopback_frame ; SYSTEM_NETWORK_DATALINK_PROTOCOLS = ethernet_frame <module>arp loopback_frame ;
SYSTEM_NETWORK_PROTOCOLS = ipv4 tcp udp icmp unix ; SYSTEM_NETWORK_PROTOCOLS = ipv4 tcp udp icmp unix ;
SYSTEM_ADD_ONS_DRIVERS_NET = $(X86_ONLY)3com $(X86_ONLY)atheros813x SYSTEM_ADD_ONS_DRIVERS_NET = [ FFilterByBuildFeatures
$(X86_ONLY)broadcom440x $(X86_ONLY)broadcom570x etherpci $(X86_ONLY)ipro1000 x86 @{
pegasus $(X86_ONLY)rtl8139 rtl8169 $(X86_ONLY)rtl81xx sis900 3com atheros813x
$(X86_ONLY)via_rhine wb840 $(X86_ONLY)ipro100 $(X86_ONLY)nforce broadcom440x broadcom570x ipro1000
rtl8139 rtl81xx
via_rhine ipro100 nforce
marvell_yukon syskonnect
attansic_l2 ar81xx
}@ # x86
etherpci pegasus rtl8169 sis900 usb_ecm wb840
#vlance #vlance
$(X86_ONLY)marvell_yukon $(X86_ONLY)syskonnect ] ;
$(X86_ONLY)attansic_l2 $(X86_ONLY)ar81xx usb_ecm SYSTEM_ADD_ONS_BUS_MANAGERS = [ FFilterByBuildFeatures
; pci isa@x86 ide@ide ata@ata
SYSTEM_ADD_ONS_BUS_MANAGERS = pci $(X86_ONLY)isa $(IDE_ONLY)ide $(ATA_ONLY)ata
scsi config_manager agp_gart scsi config_manager agp_gart
; ] ;
SYSTEM_ADD_ONS_FILE_SYSTEMS = bfs fat iso9660 ; SYSTEM_ADD_ONS_FILE_SYSTEMS = bfs fat iso9660 ;
@@ -45,20 +30,20 @@ SYSTEM_ADD_ONS_FILE_SYSTEMS = bfs fat iso9660 ;
AddFilesToNetBootArchive system add-ons kernel bus_managers AddFilesToNetBootArchive system add-ons kernel bus_managers
: $(SYSTEM_ADD_ONS_BUS_MANAGERS) ; : $(SYSTEM_ADD_ONS_BUS_MANAGERS) ;
AddFilesToNetBootArchive system add-ons kernel busses agp_gart AddFilesToNetBootArchive system add-ons kernel busses agp_gart
: $(X86_ONLY)<agp_gart>intel ; : <agp_gart>intel@x86 ;
AddFilesToNetBootArchive system add-ons kernel busses ide AddFilesToNetBootArchive system add-ons kernel busses ide
: generic_ide_pci $(X86_ONLY)ide_isa silicon_image_3112 ; : generic_ide_pci ide_isa@x86 silicon_image_3112 ;
AddFilesToNetBootArchive system add-ons kernel busses scsi AddFilesToNetBootArchive system add-ons kernel busses scsi
: ahci ; : ahci ;
AddFilesToNetBootArchive system add-ons kernel console : vga_text ; AddFilesToNetBootArchive system add-ons kernel console : vga_text ;
AddFilesToNetBootArchive system add-ons kernel file_systems AddFilesToNetBootArchive system add-ons kernel file_systems
: $(SYSTEM_ADD_ONS_FILE_SYSTEMS) ; : $(SYSTEM_ADD_ONS_FILE_SYSTEMS) ;
AddFilesToNetBootArchive system add-ons kernel generic AddFilesToNetBootArchive system add-ons kernel generic
: $(IDE_ONLY)ide_adapter $(ATA_ONLY)ata_adapter locked_pool scsi_periph ; : ide_adapter@ide ata_adapter@ata locked_pool scsi_periph ;
AddFilesToNetBootArchive system add-ons kernel partitioning_systems AddFilesToNetBootArchive system add-ons kernel partitioning_systems
: intel session ; : intel session ;
AddFilesToNetBootArchive system add-ons kernel interrupt_controllers AddFilesToNetBootArchive system add-ons kernel interrupt_controllers
: $(PPC_ONLY)openpic ; : openpic@ppc ;
if $(TARGET_ARCH) = x86 { if $(TARGET_ARCH) = x86 {
AddFilesToNetBootArchive system add-ons kernel cpu : generic_x86 ; AddFilesToNetBootArchive system add-ons kernel cpu : generic_x86 ;
@@ -96,12 +81,12 @@ AddFilesToNetBootArchive system add-ons kernel network protocols
# boot module links # boot module links
AddBootModuleSymlinksToNetBootArchive AddBootModuleSymlinksToNetBootArchive
$(SYSTEM_ADD_ONS_BUS_MANAGERS) $(SYSTEM_ADD_ONS_BUS_MANAGERS)
ahci generic_ide_pci $(X86_ONLY)ide_isa silicon_image_3112 ahci generic_ide_pci ide_isa@x86 silicon_image_3112
$(SYSTEM_ADD_ONS_FILE_SYSTEMS) $(SYSTEM_ADD_ONS_FILE_SYSTEMS)
$(IDE_ONLY)ide_adapter $(ATA_ONLY)ata_adapter locked_pool scsi_periph ide_adapter@ide ata_adapter@ata locked_pool scsi_periph
intel session intel session
$(PPC_ONLY)openpic openpic@ppc
$(X86_ONLY)generic_x86 generic_x86@x86
# nbd # nbd
remote_disk remote_disk
$(SYSTEM_ADD_ONS_DRIVERS_NET) $(SYSTEM_ADD_ONS_DRIVERS_NET)
@@ -31,7 +31,7 @@ local sources =
AddResources IMAP : IMAP.rdef ; AddResources IMAP : IMAP.rdef ;
if $(HAIKU_OPENSSL_ENABLED) { if $(HAIKU_BUILD_FEATURE_OPENSSL_ENABLED) {
SubDirC++Flags -DUSE_SSL ; SubDirC++Flags -DUSE_SSL ;
SetupFeatureObjectsDir ssl ; SetupFeatureObjectsDir ssl ;
} else { } else {
@@ -17,7 +17,7 @@ local sources =
; ;
# use OpenSSL, if enabled # use OpenSSL, if enabled
if $(HAIKU_OPENSSL_ENABLED) { if $(HAIKU_BUILD_FEATURE_OPENSSL_ENABLED) {
SubDirC++Flags -DUSE_SSL ; SubDirC++Flags -DUSE_SSL ;
SubDirSysHdrs $(HAIKU_OPENSSL_HEADERS) ; SubDirSysHdrs $(HAIKU_OPENSSL_HEADERS) ;
Includes [ FGristFiles $(sources) ] : $(HAIKU_OPENSSL_HEADERS_DEPENDENCY) ; Includes [ FGristFiles $(sources) ] : $(HAIKU_OPENSSL_HEADERS_DEPENDENCY) ;
@@ -13,7 +13,7 @@ local sources =
; ;
# use OpenSSL, if enabled # use OpenSSL, if enabled
if $(HAIKU_OPENSSL_ENABLED) { if $(HAIKU_BUILD_FEATURE_OPENSSL_ENABLED) {
SubDirC++Flags -DUSE_SSL ; SubDirC++Flags -DUSE_SSL ;
SubDirSysHdrs $(HAIKU_OPENSSL_HEADERS) ; SubDirSysHdrs $(HAIKU_OPENSSL_HEADERS) ;
Includes [ FGristFiles $(sources) ] : $(HAIKU_OPENSSL_HEADERS_DEPENDENCY) ; Includes [ FGristFiles $(sources) ] : $(HAIKU_OPENSSL_HEADERS_DEPENDENCY) ;
+1 -1
View File
@@ -12,7 +12,7 @@ SubDirSysHdrs [ FDirName $(SUBDIR) md5 ] ;
# use OpenSSL, if enabled # use OpenSSL, if enabled
local sslSources ; local sslSources ;
if $(HAIKU_OPENSSL_ENABLED) { if $(HAIKU_BUILD_FEATURE_OPENSSL_ENABLED) {
SubDirCcFlags -DHAVE_LIBSSL ; SubDirCcFlags -DHAVE_LIBSSL ;
SubDirSysHdrs $(HAIKU_OPENSSL_HEADERS) ; SubDirSysHdrs $(HAIKU_OPENSSL_HEADERS) ;
sslSources = openssl.c ; sslSources = openssl.c ;
+1 -1
View File
@@ -36,7 +36,7 @@ local sources =
# use OpenSSL, if enabled # use OpenSSL, if enabled
if $(HAIKU_OPENSSL_ENABLED) { if $(HAIKU_BUILD_FEATURE_OPENSSL_ENABLED) {
SubDirC++Flags -DUSE_SSL ; SubDirC++Flags -DUSE_SSL ;
SubDirSysHdrs $(HAIKU_OPENSSL_HEADERS) ; SubDirSysHdrs $(HAIKU_OPENSSL_HEADERS) ;
Includes [ FGristFiles $(sources) ] : $(HAIKU_OPENSSL_HEADERS_DEPENDENCY) ; Includes [ FGristFiles $(sources) ] : $(HAIKU_OPENSSL_HEADERS_DEPENDENCY) ;
+1 -1
View File
@@ -7,7 +7,7 @@ UseHeaders [ FDirName $(HAIKU_TOP) src libs compat freebsd_network compat ]
UseHeaders [ FDirName $(HAIKU_TOP) src libs compat freebsd_wlan ] : true ; UseHeaders [ FDirName $(HAIKU_TOP) src libs compat freebsd_wlan ] : true ;
local sslSources ; local sslSources ;
if $(HAIKU_OPENSSL_ENABLED) { if $(HAIKU_BUILD_FEATURE_OPENSSL_ENABLED) {
SubDirC++Flags -DOPENSSL_ENABLED ; SubDirC++Flags -DOPENSSL_ENABLED ;
SubDirSysHdrs $(HAIKU_OPENSSL_HEADERS) ; SubDirSysHdrs $(HAIKU_OPENSSL_HEADERS) ;
sslSources = SSL.cpp ; sslSources = SSL.cpp ;