/OvmfDarwinPkg

OVMF clone with macOS guests support and free HFS+ driver

Primary LanguageCOtherNOASSERTION

Build

OvmfDarwinPkg

OVMF clone that provides macOS guests support with no third-party bootloaders

Build notes

Check EDK II documentation to prepare the environment (iasl, nasm required). All the OVMF manuals are compatible with this package. Build tested on edk2-stable202105 version.

Run this script to perform everything in one command:

# Build defaults - DEBUG,X64,XCODE5(macOS)/GCC5(Linux)
$ ./builduefi.sh 

Or use Docker container as build environment:

# Just a 'builduefi.sh' wrapper
$ ./dockerbuild.sh 

More examples:

# Show help
$ ./builduefi.sh -help

# Switch target to RELEASE
$ ./builduefi.sh -buildRelease

# How to pass other build arguments 
$ ./builduefi.sh -D DEBUG_ON_SERIAL_PORT

Binaries will be placed in Build/ directory. The script is a wrapper for EDK build:

# Simplified './builduefi.sh'
# PWD - ../../OvmfDarwinPkg

# Setup EDK II
git clone https://github.com/tianocore/edk2.git edk2
cd edk2
git checkout edk2-stable202008
git submodule update --init
make -C BaseTools
cd -

# Create symbolic links to packages
ln -s $PWD edk2/OvmfDarwinPkg
ln -s $PWD/LegacyPackages/IntelFrameworkPkg edk2/IntelFrameworkPkg
ln -s $PWD/LegacyPackages/IntelFrameworkModulePkg edk2/IntelFrameworkModulePkg

# Build
cd edk2
source edksetup.sh

# macOS
build -a X64 -t XCODE5 -p OvmfDarwinPkg/OvmfDarwinPkgX64.dsc -b DEBUG

# Linux
build -a X64 -t GCC5 -p OvmfDarwinPkg/OvmfDarwinPkgX64.dsc -b DEBUG

Added components