Skip to content

OVMF clone with macOS guests support and free HFS+ driver

License

Notifications You must be signed in to change notification settings

shchuko/OvmfDarwinPkg

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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