EFI: Initial test EFI application
commit211483cb512baaca8b17e0112a360b5a17cde0ca
authorFredrik Holmqvist <fredrik.holmqvist@gmail.com>
Thu, 14 Apr 2016 07:15:55 +0000 (14 19:15 +1200)
committerJessica Hamilton <jessica.l.hamilton@gmail.com>
Fri, 2 Sep 2016 07:02:29 +0000 (2 19:02 +1200)
treeb713fa66025f8ed60dd0af8bda852cb2f8b6e4ac
parent20e11028aa31e17ff6f4a08f288afa0e703cc6f2
EFI: Initial test EFI application

* Only set HAIKU_BOOT_PLATFORM to bios_ia32 if not defined
* Add gnuefi build feature
* Introduce BOOT_LDFLAGS, and move options for passing to linker
  into ArchitectureSetup
* x86_64 compile fixes for warnings in boot loader
* loader/elf.cpp: don't include ELF32 support when targeting EFI
* relocation_func.cpp: copy of the relocation code from gnuefi
  to make _relocate extern "C", and avoid including <efilib.h>
* boot_loader_efi.ld: copy of gnuefi's elf_x86_64_efi.lds,
  modified to include support for C++ constructors, etc. Keep in
  sync with the gnuefi package

Signed-off-by: Jessica Hamilton <jessica.l.hamilton@gmail.com>
27 files changed:
build/jam/ArchitectureRules
build/jam/BootRules
build/jam/BuildFeatures
build/jam/BuildSetup
build/jam/repositories/HaikuPorts/x86_64 [changed mode: 0755->0644]
headers/private/kernel/boot/platform/efi/platform_kernel_args.h [new file with mode: 0644]
headers/private/kernel/boot/platform/efi/platform_stage2_args.h [new file with mode: 0644]
src/system/boot/Jamfile
src/system/boot/arch/x86/Jamfile
src/system/boot/loader/Jamfile
src/system/boot/loader/elf.cpp
src/system/boot/loader/file_systems/amiga_ffs/File.cpp
src/system/boot/loader/file_systems/amiga_ffs/amiga_ffs.cpp
src/system/boot/loader/file_systems/bfs/Stream.cpp
src/system/boot/loader/file_systems/bfs/bfs.cpp
src/system/boot/loader/file_systems/fat/Stream.cpp
src/system/boot/loader/file_systems/packagefs/packagefs.cpp
src/system/boot/loader/load_driver_settings.cpp
src/system/boot/loader/loader.cpp
src/system/boot/loader/net/RemoteDisk.cpp
src/system/boot/loader/partitions.cpp
src/system/boot/loader/vfs.cpp
src/system/boot/platform/efi/Jamfile [new file with mode: 0644]
src/system/boot/platform/efi/arch/x86_64/relocation_func.cpp [new file with mode: 0644]
src/system/boot/platform/efi/start.c [new file with mode: 0644]
src/system/kernel/arch/x86/arch_elf.cpp
src/system/ldscripts/x86_64/boot_loader_efi.ld [new file with mode: 0644]