edk2: 202305 -> 202308

This bumps EDK2 to latest stable: https://github.com/tianocore/edk2/releases/tag/edk2-stable202308

OpenSSL 3 is unbundled in this version bump because we cannot trust EDK2
to do stable releases at each OpenSSL bump alas.
This commit is contained in:
Raito Bezarius 2023-09-02 19:39:52 +02:00
parent f626102605
commit d7e18eea0a

View File

@ -2,6 +2,7 @@
, clangStdenv
, fetchFromGitHub
, fetchpatch
, runCommand
, libuuid
, python3
, bc
@ -28,9 +29,9 @@ buildType = if stdenv.isDarwin then
else
"GCC5";
edk2 = stdenv.mkDerivation {
edk2 = stdenv.mkDerivation rec {
pname = "edk2";
version = "202305";
version = "202308";
patches = [
# pass targetPrefix as an env var
@ -40,15 +41,24 @@ edk2 = stdenv.mkDerivation {
})
];
# submodules
src = fetchFromGitHub {
srcWithVendoring = fetchFromGitHub {
owner = "tianocore";
repo = "edk2";
rev = "edk2-stable${edk2.version}";
fetchSubmodules = true;
hash = "sha256-htOvV43Hw5K05g0SF3po69HncLyma3BtgpqYSdzRG4s=";
hash = "sha256-Eoi1xf/hw/Knr7n0f0rgVof7wTgrHkmvV4eJjJV1NhM=";
};
# We don't want EDK2 to keep track of OpenSSL,
# they're frankly bad at it.
src = runCommand "edk2-unvendored-src" { } ''
cp --no-preserve=mode -r ${srcWithVendoring} $out
rm -rf $out/CryptoPkg/Library/OpensslLib/openssl
mkdir -p $out/CryptoPkg/Library/OpensslLib/openssl
tar --strip-components=1 -xf ${buildPackages.openssl.src} -C $out/CryptoPkg/Library/OpensslLib/openssl
chmod -R +w $out/
'';
nativeBuildInputs = [ pythonEnv ];
depsBuildBuild = [ buildPackages.stdenv.cc buildPackages.util-linux buildPackages.bash ];
strictDeps = true;
@ -69,6 +79,7 @@ edk2 = stdenv.mkDerivation {
# patchShebangs fails to see these when cross compiling
for i in $out/BaseTools/BinWrappers/PosixLike/*; do
substituteInPlace $i --replace '/usr/bin/env bash' ${buildPackages.bash}/bin/bash
chmod +x "$i"
done
'';