diff options
author | Keshav Amburay | 2014-04-19 13:02:31 -0400 |
---|---|---|
committer | Keshav Amburay | 2014-04-20 20:15:03 -0400 |
commit | 0f5578e24f5e86f89022fc8fe1bbe253f0c70079 (patch) | |
tree | c78c0052613ba2cd5e80b0671dcea17162fbe159 | |
parent | e9f0faf164c1821c14bfa850abac43712cb7ea91 (diff) | |
download | aur-0f5578e24f5e86f89022fc8fe1bbe253f0c70079.tar.gz |
Fix Vfrcompiler issue - building now
-rw-r--r-- | .SRCINFO | 4 | ||||
-rw-r--r-- | PKGBUILD | 19 | ||||
-rw-r--r-- | edk2-basetools-fix-vfrcompiler.patch | 40 | ||||
-rw-r--r-- | ovmf.install | 15 |
4 files changed, 65 insertions, 13 deletions
@@ -1,6 +1,6 @@ pkgbase = ovmf-svn pkgdesc = UEFI Firmware (OVMF) with Secure Boot Support - for Virtual Machines (QEMU) - from Tianocore EDK2 - SVN Version - pkgver = 15280 + pkgver = 15476 pkgrel = 1 url = http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=OVMF install = ovmf.install @@ -21,6 +21,7 @@ pkgbase = ovmf-svn options = docs options = !makeflags source = http://www.openssl.org/source/openssl-0.9.8w.tar.gz + source = edk2-basetools-fix-vfrcompiler.patch source = tianocore-edk2-svn_BaseTools::svn+https://svn.code.sf.net/p/edk2/code/trunk/edk2/BaseTools source = tianocore-edk2-svn_MdePkg::svn+https://svn.code.sf.net/p/edk2/code/trunk/edk2/MdePkg source = tianocore-edk2-svn_MdeModulePkg::svn+https://svn.code.sf.net/p/edk2/code/trunk/edk2/MdeModulePkg @@ -35,6 +36,7 @@ pkgbase = ovmf-svn source = tianocore-edk2-svn_FatBinPkg::svn+https://svn.code.sf.net/p/edk2/code/trunk/edk2/FatBinPkg source = tianocore-edk2-svn_OvmfPkg::svn+https://svn.code.sf.net/p/edk2/code/trunk/edk2/OvmfPkg sha1sums = 6dd276534f87aaca4bee679537fef3aaa6b43069 + sha1sums = 63a8b1e9ac54035ffc98f5c61ea3b71361a5634e sha1sums = SKIP sha1sums = SKIP sha1sums = SKIP @@ -24,7 +24,7 @@ _OPENSSL_VERSION="0.9.8w" _pkgname="ovmf" pkgname="${_pkgname}-svn" -pkgver=15280 +pkgver=15476 pkgrel=1 pkgdesc="UEFI Firmware (OVMF) with Secure Boot Support - for Virtual Machines (QEMU) - from Tianocore EDK2 - SVN Version" url="http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=OVMF" @@ -40,7 +40,8 @@ provides=('ovmf' 'ovmf-tianocore-edk2' 'ovmf-tianocore-edk2-svn') install="${_pkgname}.install" -source=("http://www.openssl.org/source/openssl-${_OPENSSL_VERSION}.tar.gz") +source=("http://www.openssl.org/source/openssl-${_OPENSSL_VERSION}.tar.gz" + 'edk2-basetools-fix-vfrcompiler.patch') for _DIR_ in BaseTools MdePkg MdeModulePkg IntelFrameworkPkg IntelFrameworkModulePkg ; do source+=("${_TIANO_DIR_}_${_DIR_}::svn+${_TIANOCORE_SVN_URL}/${_DIR_}") @@ -51,6 +52,7 @@ for _DIR_ in PcAtChipsetPkg UefiCpuPkg OptionRomPkg CryptoPkg SecurityPkg ShellP done sha1sums=('6dd276534f87aaca4bee679537fef3aaa6b43069' + '63a8b1e9ac54035ffc98f5c61ea3b71361a5634e' 'SKIP' 'SKIP' 'SKIP' @@ -115,6 +117,10 @@ _prepare_tianocore_sources() { mkdir -p "${_UDK_DIR}/Conf/" mkdir -p "${_UDK_DIR}/Build/" + msg "Fix EDK2 Basetools VfrCompiler issue" + patch -Np1 --binary -i "${srcdir}/edk2-basetools-fix-vfrcompiler.patch" || true + echo + msg "Use python2 for UDK BaseTools" sed 's|python |python2 |g' -i "${EDK_TOOLS_PATH}/BinWrappers/PosixLike"/* || true sed 's|python |python2 |g' -i "${EDK_TOOLS_PATH}/Tests/GNUmakefile" @@ -217,15 +223,14 @@ package() { _setup_env_vars + install -d "${pkgdir}/usr/share/ovmf/" + if [[ "${CARCH}" == "x86_64" ]]; then msg "Install the OVMF X64 image" - install -d "${pkgdir}/usr/share/ovmf/x86_64" - install -D -m0644 "${_UDK_DIR}/Build/${_UDK_OVMF_X64_PKG}/${_UDK_TARGET}_${_COMPILER}/FV/OVMF.fd" "${pkgdir}/usr/share/ovmf/x86_64/ovmf.bin" + install -D -m0644 "${_UDK_DIR}/Build/${_UDK_OVMF_X64_PKG}/${_UDK_TARGET}_${_COMPILER}/FV/OVMF.fd" "${pkgdir}/usr/share/ovmf/ovmf_x64.bin" fi msg "Install the OVMF IA32 image" - install -d "${pkgdir}/usr/share/ovmf/ia32" - install -D -m0644 "${_UDK_DIR}/Build/${_UDK_OVMF_IA32_PKG}/${_UDK_TARGET}_${_COMPILER}/FV/OVMF.fd" "${pkgdir}/usr/share/ovmf/ia32/ovmf.bin" - + install -D -m0644 "${_UDK_DIR}/Build/${_UDK_OVMF_IA32_PKG}/${_UDK_TARGET}_${_COMPILER}/FV/OVMF.fd" "${pkgdir}/usr/share/ovmf/ovmf_ia32.bin" } diff --git a/edk2-basetools-fix-vfrcompiler.patch b/edk2-basetools-fix-vfrcompiler.patch new file mode 100644 index 000000000000..6ac119e4aa68 --- /dev/null +++ b/edk2-basetools-fix-vfrcompiler.patch @@ -0,0 +1,40 @@ +From: Reza Jelveh <reza.jel...@tuhh.de>
+
+Contributed-under: TianoCore Contribution Agreement 1.0
+Signed-off-by: Reza Jelveh <reza.jel...@tuhh.de>
+---
+ BaseTools/Source/C/VfrCompile/VfrCompiler.cpp | 2 ++
+ BaseTools/Source/C/VfrCompile/VfrCompiler.h | 3 ++-
+ 2 files changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/BaseTools/Source/C/VfrCompile/VfrCompiler.cpp
+b/BaseTools/Source/C/VfrCompile/VfrCompiler.cpp
+index dd34a1b..ee10605 100644
+--- a/BaseTools/Source/C/VfrCompile/VfrCompiler.cpp
++++ b/BaseTools/Source/C/VfrCompile/VfrCompiler.cpp
+@@ -372,6 +372,8 @@ CVfrCompiler::CVfrCompiler (
+ mPreProcessCmd = (CHAR8 *) PREPROCESSOR_COMMAND;
+ mPreProcessOpt = (CHAR8 *) PREPROCESSOR_OPTIONS;
+
++ SET_RUN_STATUS (STATUS_STARTED);
++
+ OptionInitialization(Argc, Argv);
+
+ if ((IS_RUN_STATUS(STATUS_FAILED)) || (IS_RUN_STATUS(STATUS_DEAD))) {
+diff --git a/BaseTools/Source/C/VfrCompile/VfrCompiler.h
+b/BaseTools/Source/C/VfrCompile/VfrCompiler.h
+index ea20bbc..3261e9c 100644
+--- a/BaseTools/Source/C/VfrCompile/VfrCompiler.h
++++ b/BaseTools/Source/C/VfrCompile/VfrCompiler.h
+@@ -60,7 +60,8 @@ typedef struct {
+ } OPTIONS;
+
+ typedef enum {
+- STATUS_INITIALIZED = 1,
++ STATUS_STARTED = 0,
++ STATUS_INITIALIZED,
+ STATUS_PREPROCESSED,
+ STATUS_COMPILEED,
+ STATUS_GENBINARY,
+--
+1.9.2
diff --git a/ovmf.install b/ovmf.install index 3d98e218eb34..1408dd1c4c9b 100644 --- a/ovmf.install +++ b/ovmf.install @@ -2,18 +2,23 @@ post_install() { cat << EOF - NOTE: The OVMF X64 image has been moved to /usr/share/ovmf/x86_64/ovmf.bin + NOTE: + The OVMF X64 UEFI image has been moved to /usr/share/ovmf/ovmf_x64.bin + The OVMF IA32 UEFI image has been moved to /usr/share/ovmf/ovmf_ia32.bin OVMF now support NV VAR storage within the OVMF image if QEMU flash (-pflash) is supported This requires write access by QEMU to the OVMF image For more info see http://sourceforge.net/p/tianocore/edk2/ci/e58e5bcd23badac8ef91d3bcc73baac3ca27e2ae/ - To test OVMF X64 in QEMU (use >= v1.5), run: + To test OVMF X64 in QEMU (use v1.5+) run: - \$ cp /usr/share/ovmf/x86_64/ovmf.bin ~/ovmf.bin - \$ qemu-system-x86_64 -enable-kvm -net none -m 1024 -pflash ~/ovmf.bin + \$ cp /usr/share/ovmf/ovmf_x64.bin ~/ovmf_x64.bin + \$ qemu-system-x86_64 -enable-kvm -net none -m 1500 -pflash ~/ovmf_x64.bin - NOTE: The command is not -bios , it is -pflash now + To test OVMF IA32 in QEMU (use v1.5+) run: + + \$ cp /usr/share/ovmf/ovmf_ia32.bin ~/ovmf_ia32.bin + \$ qemu-system-i386 -enable-kvm -net none -m 1024 -pflash ~/ovmf_ia32.bin EOF |