25a7b01d15
Additional changes: * Add src/system/kernel/lib/zlib, which builds a kernel version of zlib, needed by packagefs. * BuildFeatures: Add a build feature "gcc2" to allow for easier checks. * Referenceable.cpp: Include <OS.h> instead of <debugger.h>. The latter is not needed and prevents building for the build platform. * zlib/zutil.h: Fix gcc 2 build. We really should use the external package instead. Conflicts: .gitignore build/jam/BuildSetup build/jam/FileRules build/jam/FloppyBootImage build/jam/HaikuImage build/jam/ImageRules build/jam/KernelRules build/jam/NetBootArchive build/jam/OptionalBuildFeatures build/jam/OptionalLibPackages build/jam/OptionalPackageDependencies build/jam/OptionalPackages build/scripts/build_haiku_image configure data/bin/installoptionalpackage data/system/boot/Bootscript headers/os/app/Message.h headers/os/package/PackageInfo.h headers/os/package/PackageInfoAttributes.h headers/os/package/PackageInfoSet.h headers/os/package/PackageRoster.h headers/os/package/PackageVersion.h headers/os/package/hpkg/PackageInfoAttributeValue.h headers/os/storage/FindDirectory.h headers/os/storage/Node.h headers/os/support/StringList.h headers/private/system/directories.h src/add-ons/kernel/drivers/audio/ac97/es1370/Jamfile src/add-ons/kernel/file_systems/packagefs/AttributeIndex.cpp src/add-ons/kernel/file_systems/packagefs/Jamfile src/add-ons/kernel/file_systems/packagefs/Package.cpp src/add-ons/kernel/file_systems/packagefs/Package.h src/add-ons/kernel/file_systems/packagefs/PackageDomain.cpp src/add-ons/kernel/file_systems/packagefs/PackageDomain.h src/add-ons/kernel/file_systems/packagefs/PackageFSRoot.cpp src/add-ons/kernel/file_systems/packagefs/PackageLinkDirectory.cpp src/add-ons/kernel/file_systems/packagefs/PackageLinkDirectory.h src/add-ons/kernel/file_systems/packagefs/PackageLinkSymlink.cpp src/add-ons/kernel/file_systems/packagefs/PackageLinkSymlink.h src/add-ons/kernel/file_systems/packagefs/PackageLinksDirectory.cpp src/add-ons/kernel/file_systems/packagefs/PackageNode.h src/add-ons/kernel/file_systems/packagefs/ResolvableFamily.cpp src/add-ons/kernel/file_systems/packagefs/Version.cpp src/add-ons/kernel/file_systems/packagefs/Version.h src/add-ons/kernel/file_systems/packagefs/Volume.cpp src/add-ons/kernel/file_systems/packagefs/Volume.h src/add-ons/kernel/file_systems/packagefs/kernel_interface.cpp src/add-ons/kernel/file_systems/userlandfs/shared/driver_settings.c src/apps/deskbar/BarApp.cpp src/apps/deskbar/BarMenuBar.cpp src/apps/deskbar/BarMenuBar.h src/apps/deskbar/BarView.cpp src/apps/deskbar/BarView.h src/apps/deskbar/BarWindow.cpp src/apps/deskbar/BarWindow.h src/apps/deskbar/DeskbarMenu.cpp src/apps/deskbar/DeskbarMenu.h src/apps/deskbar/DeskbarUtils.cpp src/apps/deskbar/DeskbarUtils.h src/apps/deskbar/ExpandoMenuBar.cpp src/apps/deskbar/ExpandoMenuBar.h src/apps/deskbar/TeamMenu.cpp src/apps/processcontroller/ProcessController.cpp src/apps/remotedesktop/RemoteDesktop.cpp src/bin/bash/config-top.h src/bin/finddir.c src/bin/package/Jamfile src/bin/package/command_add.cpp src/bin/package/command_create.cpp src/bin/package/command_list.cpp src/bin/package_repo/command_list.cpp src/bin/pkgman/command_refresh.cpp src/build/libbe/support/Jamfile src/build/libpackage/Jamfile src/build/libroot/Jamfile src/build/libroot/fs.cpp src/build/libroot/remapped_functions.h src/kits/locale/MutableLocaleRoster.cpp src/kits/opengl/GLRendererRoster.cpp src/kits/package/PackageInfo.cpp src/kits/package/PackageInfoSet.cpp src/kits/package/PackageRoster.cpp src/kits/package/PackageVersion.cpp src/kits/package/RepositoryCache.cpp src/kits/package/hpkg/PackageWriterImpl.cpp src/kits/package/hpkg/ReaderImplBase.cpp src/kits/package/hpkg/WriterImplBase.cpp src/kits/print/PrintTransport.cpp src/kits/print/Printer.cpp src/kits/screensaver/ScreenSaverRunner.cpp src/kits/support/StringList.cpp src/kits/tracker/ContainerWindow.cpp src/kits/tracker/DeskWindow.cpp src/kits/tracker/PoseView.cpp src/libs/print/libprint/Transport.cpp src/preferences/printers/AddPrinterDialog.cpp src/preferences/screensaver/ScreenSaverWindow.cpp src/servers/debug/DebugServer.cpp src/servers/input/AddOnManager.cpp src/servers/media_addon/MediaAddonServer.cpp src/system/boot/Jamfile src/system/boot/loader/Jamfile src/system/boot/loader/loader.cpp src/system/boot/loader/vfs.cpp src/system/kernel/fs/vfs.cpp src/system/kernel/fs/vfs_boot.cpp src/system/libroot/os/find_directory.cpp src/system/runtime_loader/runtime_loader.cpp src/tools/package/Jamfile
151 lines
4.5 KiB
Plaintext
151 lines
4.5 KiB
Plaintext
# This file defines what ends up in the network boot archive and it executes the
|
|
# rules building the archive.
|
|
|
|
|
|
SYSTEM_NETWORK_DEVICES = ethernet loopback ;
|
|
SYSTEM_NETWORK_DATALINK_PROTOCOLS = ethernet_frame <module>arp loopback_frame ;
|
|
SYSTEM_NETWORK_PROTOCOLS = ipv4 tcp udp icmp unix ;
|
|
|
|
SYSTEM_ADD_ONS_DRIVERS_NET = [ FFilterByBuildFeatures
|
|
x86 @{
|
|
3com atheros813x
|
|
broadcom440x broadcom570x ipro1000
|
|
rtl8139 rtl81xx
|
|
via_rhine ipro100 nforce
|
|
marvell_yukon syskonnect
|
|
attansic_l2 ar81xx
|
|
}@ # x86
|
|
|
|
etherpci pegasus rtl8169 sis900 usb_ecm wb840
|
|
#vlance
|
|
] ;
|
|
SYSTEM_ADD_ONS_BUS_MANAGERS = [ FFilterByBuildFeatures
|
|
pci isa@x86 ide@ide ata@ata
|
|
scsi config_manager agp_gart
|
|
] ;
|
|
SYSTEM_ADD_ONS_FILE_SYSTEMS = bfs fat iso9660 ;
|
|
|
|
|
|
# modules
|
|
AddFilesToNetBootArchive system add-ons kernel bus_managers
|
|
: $(SYSTEM_ADD_ONS_BUS_MANAGERS) ;
|
|
AddFilesToNetBootArchive system add-ons kernel busses agp_gart
|
|
: <agp_gart>intel@x86 ;
|
|
AddFilesToNetBootArchive system add-ons kernel busses ide
|
|
: generic_ide_pci ide_isa@x86 silicon_image_3112 ;
|
|
AddFilesToNetBootArchive system add-ons kernel busses scsi
|
|
: ahci ;
|
|
AddFilesToNetBootArchive system add-ons kernel console
|
|
: vga_text ;
|
|
AddFilesToNetBootArchive system add-ons kernel file_systems
|
|
: $(SYSTEM_ADD_ONS_FILE_SYSTEMS) ;
|
|
AddFilesToNetBootArchive system add-ons kernel generic
|
|
: ide_adapter@ide ata_adapter@ata locked_pool scsi_periph ;
|
|
AddFilesToNetBootArchive system add-ons kernel partitioning_systems
|
|
: intel session ;
|
|
AddFilesToNetBootArchive system add-ons kernel interrupt_controllers
|
|
: openpic@ppc ;
|
|
|
|
if $(TARGET_ARCH) = x86 {
|
|
AddFilesToNetBootArchive system add-ons kernel cpu
|
|
: generic_x86 ;
|
|
}
|
|
|
|
# drivers
|
|
AddNewDriversToNetBootArchive disk scsi : scsi_cd scsi_disk ;
|
|
#AddDriversToNetBootArchive disk virtual : nbd ;
|
|
AddDriversToNetBootArchive disk virtual : remote_disk ;
|
|
AddDriversToNetBootArchive net : $(SYSTEM_ADD_ONS_DRIVERS_NET) ;
|
|
|
|
# kernel
|
|
AddFilesToNetBootArchive system
|
|
: <revisioned>kernel_$(TARGET_ARCH) ;
|
|
|
|
# scripts and data files
|
|
|
|
local driverSettingsFiles = <driver-settings>kernel ;
|
|
SEARCH on $(driverSettingsFiles)
|
|
= [ FDirName $(HAIKU_TOP) data settings kernel drivers ] ;
|
|
AddFilesToNetBootArchive home config settings kernel drivers
|
|
: $(driverSettingsFiles) ;
|
|
|
|
# add-ons
|
|
AddFilesToNetBootArchive system add-ons kernel network
|
|
: <net>notifications stack ;
|
|
AddFilesToNetBootArchive system add-ons kernel network devices
|
|
: $(SYSTEM_NETWORK_DEVICES) ;
|
|
AddFilesToNetBootArchive
|
|
system add-ons kernel network datalink_protocols
|
|
: $(SYSTEM_NETWORK_DATALINK_PROTOCOLS) ;
|
|
AddFilesToNetBootArchive system add-ons kernel network ppp
|
|
: $(SYSTEM_NETWORK_PPP) ;
|
|
AddFilesToNetBootArchive
|
|
system add-ons kernel network protocols
|
|
: $(SYSTEM_NETWORK_PROTOCOLS) ;
|
|
|
|
# boot module links
|
|
AddBootModuleSymlinksToNetBootArchive
|
|
$(SYSTEM_ADD_ONS_BUS_MANAGERS)
|
|
ahci generic_ide_pci ide_isa@x86 silicon_image_3112
|
|
$(SYSTEM_ADD_ONS_FILE_SYSTEMS)
|
|
ide_adapter@ide ata_adapter@ata locked_pool scsi_periph
|
|
intel session
|
|
openpic@ppc
|
|
generic_x86@x86
|
|
# nbd
|
|
remote_disk
|
|
$(SYSTEM_ADD_ONS_DRIVERS_NET)
|
|
stack
|
|
$(SYSTEM_NETWORK_DEVICES)
|
|
$(SYSTEM_NETWORK_DATALINK_PROTOCOLS)
|
|
$(SYSTEM_NETWORK_PPP)
|
|
$(SYSTEM_NETWORK_PROTOCOLS)
|
|
;
|
|
|
|
|
|
#pragma mark - Build The Archive
|
|
|
|
# archive target
|
|
HAIKU_NET_BOOT_ARCHIVE = haiku-netboot.tgz ;
|
|
MakeLocate $(HAIKU_NET_BOOT_ARCHIVE) : $(HAIKU_OUTPUT_DIR) ;
|
|
|
|
# the pseudo target all archive contents is attached to
|
|
NotFile $(HAIKU_NET_BOOT_ARCHIVE_CONTAINER_NAME) ;
|
|
|
|
# prepare the script that initializes the shell variables
|
|
local initVarsScript = <NetBootArchive>haiku-netboot-init-vars ;
|
|
local script = $(initVarsScript) ;
|
|
MakeLocate $(script) : $(HAIKU_OUTPUT_DIR) ;
|
|
Always $(script) ;
|
|
|
|
AddVariableToScript $(script) : tmpDir : $(HAIKU_TMP_DIR) ;
|
|
AddVariableToScript $(script) : addBuildCompatibilityLibDir
|
|
: $(HOST_ADD_BUILD_COMPATIBILITY_LIB_DIR) ;
|
|
AddTargetVariableToScript $(script) : <build>copyattr ;
|
|
|
|
# create the other scripts
|
|
local makeDirsScript = <NetBootArchive>haiku-netboot-make-dirs ;
|
|
local copyFilesScript = <NetBootArchive>haiku-netboot-copy-files ;
|
|
MakeLocate $(makeDirsScript) $(copyFilesScript) : $(HAIKU_OUTPUT_DIR) ;
|
|
|
|
CreateNetBootArchiveMakeDirectoriesScript $(makeDirsScript) ;
|
|
CreateNetBootArchiveCopyFilesScript $(copyFilesScript) ;
|
|
|
|
# build the archive
|
|
|
|
BuildNetBootArchive $(HAIKU_NET_BOOT_ARCHIVE) :
|
|
$(initVarsScript)
|
|
$(makeDirsScript)
|
|
$(copyFilesScript)
|
|
;
|
|
|
|
# remove the scripts we have generated
|
|
RmTemps $(HAIKU_NET_BOOT_ARCHIVE) :
|
|
$(initVarsScript)
|
|
$(makeDirsScript)
|
|
$(copyFilesScript)
|
|
;
|
|
|
|
NotFile haiku-netboot-archive ;
|
|
Depends haiku-netboot-archive : $(HAIKU_NET_BOOT_ARCHIVE) ;
|