summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorKeshav Amburay2014-04-19 13:02:31 -0400
committerKeshav Amburay2014-04-20 20:15:03 -0400
commit0f5578e24f5e86f89022fc8fe1bbe253f0c70079 (patch)
treec78c0052613ba2cd5e80b0671dcea17162fbe159
parente9f0faf164c1821c14bfa850abac43712cb7ea91 (diff)
downloadaur-0f5578e24f5e86f89022fc8fe1bbe253f0c70079.tar.gz
Fix Vfrcompiler issue - building now
-rw-r--r--.SRCINFO4
-rw-r--r--PKGBUILD19
-rw-r--r--edk2-basetools-fix-vfrcompiler.patch40
-rw-r--r--ovmf.install15
4 files changed, 65 insertions, 13 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 8264edda8d39..be36d102d508 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -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
diff --git a/PKGBUILD b/PKGBUILD
index c9ef0f4e13b1..20a9959a86bb 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -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