Skip to content

philmd/edk2-docker

aarch64_builds
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code
This branch is 8 commits behind 3mdeb:master.

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 

edk2-docker

This container aim to provide portable and host independent compilation environment for edk2 Open Source reference implementation of UEFI and PI specifications.

Usage

docker pull 3mdeb/edk2

Build

git clone https://github.com/3mdeb/edk2-docker.git
cd edk2-docker
docker build -t 3mdeb/edk2:latest .

Building firmware for MinnowBoard Turbot

Note that edk2-platforms is actively developed and may require different versions of binary objects in the future. Check MinnowBoard Max/Turbot - UEFI Firmware for the latest version. Do not forget to change the directory name in docker command accordingly.

$ docker pull 3mdeb/edk2
$ git clone https://github.com/tianocore/edk2.git -b vUDK2017
$ git clone https://github.com/tianocore/edk2-platforms.git -b devel-MinnowBoardMax-UDK2017
$ wget https://firmware.intel.com/sites/default/files/minnowboard_max-1.00-binary.objects.zip
$ unzip minnowboard_max-1.00-binary.objects.zip
$ cd edk2/CryptoPkg/Library/OpensslLib
$ git clone -b OpenSSL_1_1_0e https://github.com/openssl/openssl openssl
$ cd ../../../..
$ docker run --rm -it -w /home/edk2 -v $PWD/edk2:/home/edk2/edk2 \
-v $PWD/edk2-platforms:/home/edk2/edk2-platforms \
-v $PWD/MinnowBoard_MAX-1.00-Binary.Objects:/home/edk2/silicon \
-v ${CCACHE_DIR:-$HOME/.ccache}:/home/edk2/.ccache \
3mdeb/edk2 /bin/bash
(docker)$ cd edk2-platforms/Vlv2TbltDevicePkg/
(docker)$ . Build_IFWI.sh MNW2 Debug

Building firmware for QEMU AArch64

$ docker pull 3mdeb/edk2
$ git clone https://github.com/tianocore/edk2.git
$ git clone https://github.com/tianocore/edk2-platforms.git
$ git clone -b OpenSSL_1_1_0-stable https://github.com/openssl/openssl edk2/CryptoPkg/Library/OpensslLib/openssl
$ docker run --rm -it -w /home/edk2/edk2 -v $PWD/edk2:/home/edk2/edk2 \
-v $PWD/edk2-platforms:/home/edk2/edk2-platforms \
-v ${CCACHE_DIR:-$HOME/.ccache}:/home/edk2/.ccache \
3mdeb/edk2 /bin/bash
(docker)$ . edksetup.sh
(docker)$ make -C BaseTools
(docker)$ GCC5_AARCH64_PREFIX=aarch64-linux-gnu- build -a AARCH64 -t GCC5 -p ArmVirtPkg/ArmVirtQemu.dsc

Building firmware for Versatile Express ARM

$ docker pull 3mdeb/edk2
$ git clone https://github.com/tianocore/edk2.git
$ git clone https://github.com/tianocore/edk2-platforms.git
$ git clone -b OpenSSL_1_1_0-stable https://github.com/openssl/openssl edk2/CryptoPkg/Library/OpensslLib/openssl
$ docker run --rm -it -w /home/edk2/edk2 -v $PWD/edk2:/home/edk2/edk2 \
-v $PWD/edk2-platforms:/home/edk2/edk2-platforms \
-v ${CCACHE_DIR:-$HOME/.ccache}:/home/edk2/.ccache \
3mdeb/edk2 /bin/bash
(docker)$ . edksetup.sh
(docker)$ make -C BaseTools
(docker)$ export PACKAGES_PATH=/home/edk2/edk2:/home/edk2/edk2-platforms
(docker)$ GCC5_ARM_PREFIX=arm-linux-gnueabihf- build -a ARM -t GCC5 -p Platform/ARM/VExpressPkg/ArmVExpress-CTA15-A7.dsc

About

Docker container for building EDK2 UEFI Open Source reference implementation

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 76.6%
  • Dockerfile 23.4%