Package Details: edk2-armvirt-git r29698.6062002bd5-1

Git Clone URL: https://aur.archlinux.org/edk2-git.git (read-only, click to copy)
Package Base: edk2-git
Description: Firmware for Virtual Machines (aarch64)
Upstream URL: https://github.com/tianocore/tianocore.github.io/wiki/ArmVirtPkg
Licenses: BSD
Submitter: markzz
Maintainer: markzz
Last Packager: markzz
Votes: 32
Popularity: 0.87
First Submitted: 2022-01-12 20:51 (UTC)
Last Updated: 2022-01-12 20:51 (UTC)

Pinned Comments

Latest Comments

Holo commented on 2022-04-22 06:41 (UTC)

This no longer compiles. Same issue as the comment below by "AkechiShiro". I've tried editing the PKGBUILD file so we cd into "edk2" rather than "edk2-git" but no luck due to patches not being able to apply (I don't think the patch "edk2-git-202102-brotli-1.0.9.patch" is required anymore?).

I've had more success compiling by hand.

AkechiShiro commented on 2022-03-07 04:42 (UTC)

Hi,

At the moment, the build fails with this error :

==> Verifying source file signatures with gpg...
    openssl-1.1.1l.tar.gz ... Passed
==> Removing existing $srcdir/ directory...
==> Extracting sources...
  -> Creating working copy of edk2 git repo...
Cloning into 'edk2'...
done.
Updating files: 100% (8323/8323), done.
Switched to a new branch 'makepkg'
  -> Extracting openssl-1.1.1l.tar.gz with bsdtar
  -> Extracting brotli-1.0.9.tar.gz with bsdtar
==> Starting prepare()...
/home/xxxxx/.cache/paru/clone/edk2-git/PKGBUILD: line 75: cd: edk2-git: No such file or directory
==> ERROR: A failure occurred in prepare().
    Aborting...
error: failed to build 'edk2-git-r29698.6062002bd5-1 (edk2-ovmf-git)': 
error: packages failed to build: edk2-git-r29698.6062002bd5-1 (edk2-ovmf-git)

Maybe due to upstream changes ?

ulidtko commented on 2022-01-13 10:16 (UTC)

Great news, markzz! Looking forward to an updated build.

My rant below boils down to what the package provides. At time of writing, it only provided 2 files, OVMF_CODE.fd and OVMF_VARS.fd.

That isn't super-useful; what would be, is a single merged firmware file OVMF.fd ready to boot into QEMU with no fuzz.

markzz commented on 2022-01-12 20:40 (UTC)

Soon I'll be uploading an edk2-git set of packages that will replace this one. It should address some of the concerns below this comment.

realkstrawn93: This was due to edk2 being incompatible with Arch's version of brotli, which should be fixed in the new pkgbase.

Also, ulidtko, I never cared what every whatever thing on the internet says, you need to use your own brain. I know for a fact that this package worked back when it built properly. :)

realkstrawn93 commented on 2021-11-05 04:14 (UTC)

Getting the following build failure:

brotli/c/dec/decode.c:2034:14: error: argument 4 of type ‘uint8_t ’ {aka ‘unsigned char ’} declared as a pointer [-Werror=vla-parameter]

My guess is that it's an upstream bug, but it's a showstopper nonetheless.

ulidtko commented on 2021-05-04 16:16 (UTC)

Can you please fix this so that it produces a single OVMF.fd file? Not (only) a pair of ovmf_{code,vars}_x64.bin like it does now.

Every damn readme, wiki, gist & blogpost says basically "just pass -bios /path/to/OVMF.fd & bob's your uncle, qemu runs uefi". Well. No such thing here.

I guess it's something extremely trivial, prolly just concatenation of two files (in the right order) -- but, all these .fdf & .dsc & obscure build workspaces and whatnot are extremely confusing. I don't need to learn all this to simply test if my usb stick will boot. A single ready-to-use file would help a lot.

For now, I've uninstalled this package and switched to extra/edk2-ovmf instead. It does provide both OVMF_CODE.fd and OVMF_VARS.fd -- but also a single OVMF.fd which Simply Works with Qemu.

AbrarSyed commented on 2019-07-12 07:36 (UTC) (edited on 2019-07-12 07:39 (UTC) by AbrarSyed)

Since this conflicts with extra/ovmf, it would be nice if it deposited the files in the same location so that I didn't have to modify my qemu config. A Simple symbolic link could do the trick, or installation to both locations?

package() {
  install -D -m644 "${srcdir}"/edk2/Build/OvmfX64/RELEASE_${_toolchain_opt}/FV/OVMF_CODE.fd "${pkgdir}"/usr/share/ovmf/ovmf_code_x64.bin
  install -D -m644 "${srcdir}"/edk2/Build/OvmfX64/RELEASE_${_toolchain_opt}/FV/OVMF_VARS.fd "${pkgdir}"/usr/share/ovmf/ovmf_vars_x64.bin
  install -D -m644 "${srcdir}"/edk2/OvmfPkg/License.txt "${pkgdir}"/usr/share/licenses/ovmf/License.txt

  # symlink
  mkdir -p "${pkgdir}"/usr/share/ovmf/x64
  ln -s /usr/share/ovmf/ovmf_code_x64.bin "${pkgdir}"/usr/share/ovmf/x64/OVMF_CODE.fd
  ln -s /usr/share/ovmf/ovmf_vars_x64.bin "${pkgdir}"/usr/share/ovmf/x64/OVMF_VARS.fd

  # or install to 2 spots
  install -D -m644 "${srcdir}"/edk2/Build/OvmfX64/RELEASE_${_toolchain_opt}/FV/OVMF_CODE.fd "${pkgdir}"/usr/share/ovmf/x64/OVMF_CODE.fd
  install -D -m644 "${srcdir}"/edk2/Build/OvmfX64/RELEASE_${_toolchain_opt}/FV/OVMF_VARS.fd "${pkgdir}"/usr/share/ovmf/x64/OVMF_VARS.fd
}

newsboost commented on 2019-06-23 13:44 (UTC) (edited on 2019-06-23 13:52 (UTC) by newsboost)

Hmm... The upstream URL points to something that says: "Whoops, we can't find that page"... I'm a bit confused about which of these packages to use for my virtual (Windows 10) machine:

aur/edk2-ovmf 20180815-1 (+9 0.01%) (Out-of-date 2019-05-23) 
   EDK2 ovmf firmware from Fedora 29 rpm
aur/ovmf-git 1:r25361.514c55c185-1 (+31 0.00%) (Installed: 1:r25460.83463154af-1)
   Tianocore UEFI firmware for qemu.
extra/ovmf 1:r25737.89910a39dc-1 (1.3 MiB 2.0 MiB) 
   Tianocore UEFI firmware for qemu.

I previously used aur/edk2-ovmf, but now it says out-of-date since about a month ago, so I'm wondering if I should just use ovmf-git and if that's safe (I have the impression that extra/ovmf is too old)...? Anyway, I would have no doubts continuing to use edk2-ovmf, if it wasn't flagged as out-of-date, for the past month...

JuniorJPDJ commented on 2019-01-14 13:26 (UTC)

markzz: thank you very much :)

markzz commented on 2019-01-14 01:16 (UTC)

JuniorJPDJ: Updated to fix this. In the future, if there's an issue with the build like this, please flag the PKGBUILD as out-of-date so that it will be apparent when I log into the AUR interface.

JuniorJPDJ commented on 2019-01-04 20:42 (UTC) (edited on 2019-01-04 20:43 (UTC) by JuniorJPDJ)

@assimilat thanks, it fixes build for me

@markzz can you add this to PKGBUILD?

assimilat commented on 2019-01-03 16:52 (UTC) (edited on 2019-01-03 16:52 (UTC) by assimilat)

JuniorJPDJ- fixed the "error 000E: File/directory not found in workspace" error by adding this to the end of the prepare funct:

cd "${srcdir}/edk2"
git submodule update --init --recursive

JuniorJPDJ commented on 2018-11-25 22:00 (UTC) (edited on 2018-11-25 22:03 (UTC) by JuniorJPDJ)

The package stopped building for me a while ago.

The error I'm getting:

----------------------------------------------------------------------
Ran 262 tests in 1.688s

OK
make[1]: Leaving directory '/home/juniorjpdj/.cache/yay/ovmf-git/src/edk2/BaseTools/Tests'
make: Leaving directory '/home/juniorjpdj/.cache/yay/ovmf-git/src/edk2/BaseTools'
WORKSPACE: /home/juniorjpdj/.cache/yay/ovmf-git/src/edk2
EDK_TOOLS_PATH: /home/juniorjpdj/.cache/yay/ovmf-git/src/edk2/BaseTools
CONF_PATH: /home/juniorjpdj/.cache/yay/ovmf-git/src/edk2/Conf
Copying $EDK_TOOLS_PATH/Conf/build_rule.template
     to /home/juniorjpdj/.cache/yay/ovmf-git/src/edk2/Conf/build_rule.txt
Copying $EDK_TOOLS_PATH/Conf/tools_def.template
     to /home/juniorjpdj/.cache/yay/ovmf-git/src/edk2/Conf/tools_def.txt
Copying $EDK_TOOLS_PATH/Conf/target.template
     to /home/juniorjpdj/.cache/yay/ovmf-git/src/edk2/Conf/target.txt
Build environment: Linux-4.19.2-arch1-1-ARCH-x86_64-with-glibc2.2.5
Build start time: 22:57:04, Nov.25 2018

WORKSPACE        = /home/juniorjpdj/.cache/yay/ovmf-git/src/edk2
ECP_SOURCE       = /home/juniorjpdj/.cache/yay/ovmf-git/src/edk2/EdkCompatibilityPkg
EDK_SOURCE       = /home/juniorjpdj/.cache/yay/ovmf-git/src/edk2/EdkCompatibilityPkg
EFI_SOURCE       = /home/juniorjpdj/.cache/yay/ovmf-git/src/edk2/EdkCompatibilityPkg
EDK_TOOLS_PATH   = /home/juniorjpdj/.cache/yay/ovmf-git/src/edk2/BaseTools
CONF_PATH        = /home/juniorjpdj/.cache/yay/ovmf-git/src/edk2/Conf


Architecture(s)  = X64
Build target     = RELEASE
Toolchain        = GCC5

Active Platform          = /home/juniorjpdj/.cache/yay/ovmf-git/src/edk2/OvmfPkg/OvmfPkgX64.dsc
Flash Image Definition   = /home/juniorjpdj/.cache/yay/ovmf-git/src/edk2/OvmfPkg/OvmfPkgX64.fdf

Processing meta-data ......

build.py...
/home/juniorjpdj/.cache/yay/ovmf-git/src/edk2/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf(31): error 000E: File/directory not found in workspace
        /home/juniorjpdj/.cache/yay/ovmf-git/src/edk2/CryptoPkg/Library/OpensslLib/openssl/e_os.h


- Failed -
Build end time: 22:57:12, Nov.25 2018
Build total time: 00:00:07

markzz commented on 2017-12-31 01:47 (UTC) (edited on 2017-12-31 01:49 (UTC) by markzz)

HCF: You don't need it. Read the wiki.

I redid the PKGBUILD to closely resemble the one on the official repositories. The only change is the branch. This is why the directories changed and the ovmf_x64.bin file is no longer packaged. If you want the file back, you can modify the PKGBUILD to your liking.

HCF commented on 2017-12-31 00:16 (UTC)

The newest commit doesn't work without modifications.

FYI: Paths have changed from '/usr/share/ovmf/x64/' to '/usr/share/ovmf/'

==========

Problem: ovmf_x64.bin is not specified in PKGBUILD and thus does not get installed/compiled

Solution: Add 'install -D -m644 "${srcdir}"/edk2/Build/OvmfX64/RELEASE_${_toolchain_opt}/FV/OVMF.fd "${pkgdir}"/usr/share/ovmf/ovmf_x64.bin' before line 58 in PKGBUILD.

brenix commented on 2017-12-27 18:01 (UTC)

FYI - Build is failing using openssl-1.1.0e. Changing it to use openssl-1.1.0g fixes it for me, so I believe they've included support for the newer version.

JuniorJPDJ commented on 2017-12-22 03:05 (UTC)

dominicm: It's not being detected, because path changed, there is x64 folder at end ;D I had same problem 10 seconds ago

dominicm commented on 2017-12-07 10:37 (UTC) (edited on 2017-12-07 10:42 (UTC) by dominicm)

Install failed on a clean arch installation and like you said other commenters also have the same issue. Editing out the lines relating to IA32 did work but then why not remove those lines in the package? The whole point of AUR is to make it easy to install packages. If the package is broken it should be fixed or removed as not to waste people's time. Also no matter what I cannot get libvirt to detect ovmf, not sure if it might be related to this package or not but it worked for me in the past with identical config.

markzz commented on 2017-12-06 19:17 (UTC)

dominicm: Could be an issue with the PKGBUILD, but AUR helpers aren't officially supported, so if it builds in a clean chroot, there's nothing I can do for you. I will investigate though, and if you can/are willing, can you build with makepkg it better yet, in a clean chroot to see if it does build.

It looks to me like you are ignoring the comments labeling the IA32 part to be broken and I encourage you to read the comments and do what they suggest.

dominicm commented on 2017-12-06 17:46 (UTC)

The package worked in the past but now the install fails with both packer and yaourt. Pretty useless to have a AUR package that can't be install automatically...

build.py... : error F002: Failed to build module /tmp/yaourt-tmp-dom/aur-ovmf-git/src/edk2/OvmfPkg/Sec/SecMain.inf [IA32, GCC49, RELEASE]

==> ERROR: A failure occurred in build(). Aborting... ==> ERROR: Makepkg was unable to build ovmf-git.

Vaporeon commented on 2017-10-22 20:37 (UTC)

Honestly this package should be in a state where is builds without modification by default. Can you please change the package to omit IA32 binaries and update it again when the issue is fixed by upstream?

markzz commented on 2017-09-09 22:27 (UTC) (edited on 2017-09-09 22:28 (UTC) by markzz)

It looks like there's an issue with building IA32 binaries and exists with the official ovmf package as well. At this time, I would advise just commenting out the IA32 stuff like asura states. Unflagged package.

markzz commented on 2017-09-09 22:07 (UTC)

It doesn't. It links properly to a mailing list.

zman0900 commented on 2017-09-09 22:04 (UTC)

Wtf? Why does that link redirect to some random Twitter account about terrorist stuff?

markzz commented on 2017-09-09 22:03 (UTC)

The PKGBUILD automatically grabs the most up to date master branch. as for it not working with qemu 2.10.0, I use a build from April and it seems to work just fine. More information about -git packages are in the wiki. I did however notice that the 32-bit binary is having issues building and I am looking into it (it's most likely the compiler variable).

mastersplinter77 commented on 2017-09-09 21:51 (UTC)

This version does not work with latest qemu 2.10.0... Could you please update PKGBUILD to the latest branch? Bug: https://www.mail-archive.com/qemu-devel@nongnu.org/msg479186.html

asura commented on 2017-08-25 11:29 (UTC) (edited on 2017-08-25 11:37 (UTC) by asura)

abrilevskiy: These error occur from building the ia32 OVMF binary. If you are only interested in the 64-bit version then you can skip building them. If so: In the PKGBUILD remove the lines msg "Compile OVMF IA32 binary" "${_UDK_DIR}/OvmfPkg/build.sh" -a "IA32" -b "${_UDK_TARGET}" -t "${_COMPILER}" -D "SECURE_BOOT_ENABLE=TRUE" -D "FD_SIZE_2MB" --enable-flash echo and 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_ia32.bin" install -D -m0644 "${_UDK_DIR}/Build/${_UDK_OVMF_IA32_PKG}/${_UDK_TARGET}_${_COMPILER}/FV/OVMF_CODE.fd" "${pkgdir}/usr/share/ovmf/ia32/ovmf_code_ia32.bin" install -D -m0644 "${_UDK_DIR}/Build/${_UDK_OVMF_IA32_PKG}/${_UDK_TARGET}_${_COMPILER}/FV/OVMF_VARS.fd" "${pkgdir}/usr/share/ovmf/ia32/ovmf_vars_ia32.bin" Then you can at least get the x64 binaries until this package is fixed.

abrilevskiy commented on 2017-08-09 21:35 (UTC)

cp -f /tmp/yaourt-tmp-abrilevskiy/aur-ovmf-git/src/edk2/Build/OvmfIa32/RELEASE_GCC49/IA32/OvmfPkg/Sec/SecMain/DEBUG/SecMain.debug /tmp/yaourt-tmp-abrilevskiy/aur-ovmf-git/src/edk2/Build/OvmfIa32/RELEASE_GCC49/IA32/SecMain.debug "GenFw" -e SEC -o /tmp/yaourt-tmp-abrilevskiy/aur-ovmf-git/src/edk2/Build/OvmfIa32/RELEASE_GCC49/IA32/OvmfPkg/Sec/SecMain/DEBUG/SecMain.efi /tmp/yaourt-tmp-abrilevskiy/aur-ovmf-git/src/edk2/Build/OvmfIa32/RELEASE_GCC49/IA32/OvmfPkg/Sec/SecMain/DEBUG/SecMain.dll GenFw: ERROR 3000: Invalid /tmp/yaourt-tmp-abrilevskiy/aur-ovmf-git/src/edk2/Build/OvmfIa32/RELEASE_GCC49/IA32/OvmfPkg/Sec/SecMain/DEBUG/SecMain.dll unsupported ELF EM_386 relocation 0xa. GenFw: ERROR 3000: Invalid /tmp/yaourt-tmp-abrilevskiy/aur-ovmf-git/src/edk2/Build/OvmfIa32/RELEASE_GCC49/IA32/OvmfPkg/Sec/SecMain/DEBUG/SecMain.dll unsupported ELF EM_386 relocation 0x4. GenFw: ERROR 3000: Invalid /tmp/yaourt-tmp-abrilevskiy/aur-ovmf-git/src/edk2/Build/OvmfIa32/RELEASE_GCC49/IA32/OvmfPkg/Sec/SecMain/DEBUG/SecMain.dll unsupported ELF EM_386 relocation 0x4. GenFw: ERROR 3000: Invalid /tmp/yaourt-tmp-abrilevskiy/aur-ovmf-git/src/edk2/Build/OvmfIa32/RELEASE_GCC49/IA32/OvmfPkg/Sec/SecMain/DEBUG/SecMain.dll unsupported ELF EM_386 relocation 0x4. GenFw: ERROR 3000: Invalid /tmp/yaourt-tmp-abrilevskiy/aur-ovmf-git/src/edk2/Build/OvmfIa32/RELEASE_GCC49/IA32/OvmfPkg/Sec/SecMain/DEBUG/SecMain.dll unsupported ELF EM_386 relocation 0x4. GenFw: ERROR 3000: Invalid /tmp/yaourt-tmp-abrilevskiy/aur-ovmf-git/src/edk2/Build/OvmfIa32/RELEASE_GCC49/IA32/OvmfPkg/Sec/SecMain/DEBUG/SecMain.dll unsupported ELF EM_386 relocation 0x4. GenFw: ERROR 3000: Invalid /tmp/yaourt-tmp-abrilevskiy/aur-ovmf-git/src/edk2/Build/OvmfIa32/RELEASE_GCC49/IA32/OvmfPkg/Sec/SecMain/DEBUG/SecMain.dll unsupported ELF EM_386 relocation 0x4. GenFw: ERROR 3000: Invalid /tmp/yaourt-tmp-abrilevskiy/aur-ovmf-git/src/edk2/Build/OvmfIa32/RELEASE_GCC49/IA32/OvmfPkg/Sec/SecMain/DEBUG/SecMain.dll unsupported ELF EM_386 relocation 0x4. GenFw: ERROR 3000: Invalid /tmp/yaourt-tmp-abrilevskiy/aur-ovmf-git/src/edk2/Build/OvmfIa32/RELEASE_GCC49/IA32/OvmfPkg/Sec/SecMain/DEBUG/SecMain.dll unsupported ELF EM_386 relocation 0x4. GenFw: ERROR 3000: Invalid /tmp/yaourt-tmp-abrilevskiy/aur-ovmf-git/src/edk2/Build/OvmfIa32/RELEASE_GCC49/IA32/OvmfPkg/Sec/SecMain/DEBUG/SecMain.dll unsupported ELF EM_386 relocation 0x4. GenFw: ERROR 3000: Invalid /tmp/yaourt-tmp-abrilevskiy/aur-ovmf-git/src/edk2/Build/OvmfIa32/RELEASE_GCC49/IA32/OvmfPkg/Sec/SecMain/DEBUG/SecMain.dll unsupported ELF EM_386 relocation 0xa. GenFw: ERROR 3000: Invalid

markzz commented on 2017-04-12 06:24 (UTC)

Nevermind, updated and builds in a clean chroot.

markzz commented on 2017-04-12 05:59 (UTC)

Imagine that, the instructions in the git repository are very clear... I should have this fixed sometime this week.

lineks commented on 2017-04-08 18:40 (UTC) (edited on 2017-04-08 18:44 (UTC) by lineks)

markzz: Commenting out all build/install instructions related to Openssl did not solve the problem for me. However, I might have missed one, but did not have time to review the PKGBUILD again. However, considering the developers' guide on how to install OpenSSL for UEFI Building and jgreever's comment, updating openssl to 1.1.0e and changing the directory name should be the first step (https://github.com/tianocore/edk2/blob/master/CryptoPkg/Library/OpensslLib/OpenSSL-HOWTO.txt) Then the PKGBUILD needs to be updated as well, of course.

markzz commented on 2017-04-05 18:01 (UTC)

jgreever: From your changes, did you test and see if the result works as expected?

exceptionptr commented on 2017-04-01 01:21 (UTC) (edited on 2017-04-01 01:22 (UTC) by exceptionptr)

Not the best fix but until a proper update will be provided this should work: Update PKGBUILD: Line 45: -source=("${_TIANO_DIR_}::git+https://github.com/tianocore/edk2.git#branch=master" Line 45: +source=("${_TIANO_DIR_}::git+https://github.com/tianocore/edk2.git#commit=14e3b94964ae953b6e1dbc672218edf5e5b26bbe"

Coolguy3289 commented on 2017-03-31 20:22 (UTC)

Getting the Same Error...Any ETA on an update?

jgreever commented on 2017-03-30 08:30 (UTC)

patch: **** Can't open patch file ovmf-git/src/edk2/CryptoPkg/Library/OpensslLib/EDKII_openssl-1.0.2k.patch : No such file or directory New: openssl-1.1.0e.tar.gz SHA1: 8bbbaf36feffadd3cb9110912a8192e665ebca4b Changing values in PKGBUILD, however, did not seem to fix the issue for me. Ended up commenting out all instances to the openssl build/install in PKGBUILD, changed the ovmf-git/src/edk2/CryptoPkg/Library/OpensslLib/openssl-1.1.0e to just openssl, went back and ran makepkg and everything seemed to work perfectly from there.

markzz commented on 2017-03-02 23:13 (UTC)

In the future, just flag the package out of date with the comment and I'll take care of it.

chapatt commented on 2017-03-02 18:59 (UTC)

The newest OpenSSL LTS branch release is 1.0.2k Please update the PKGBUILD: -_OPENSSL_VERSION="1.0.2j" +_OPENSSL_VERSION="1.0.2k" - 'bdfbdb416942f666865fa48fe13c2d0e588df54f') + '5f26a624479c51847ebd2f22bb9f84b3b44dcb44')

electricprism commented on 2017-02-24 08:05 (UTC)

This package when added to virt-manager has a corrupt UEFI menu and lists no boot devices. I was able to use the RPM firmware here manually to get the devices to show up. https://www.kraxel.org/repos/jenkins/edk2/

zhangyoufu commented on 2016-10-04 11:38 (UTC)

The --enable-flash parameter seems to control the way build.sh invokes QEMU, and is useless for OVMF building.

zhangyoufu commented on 2016-10-04 10:58 (UTC)

What about using TOOL_CHAIN_TAG = GCC5 instead of "Fix GCC Warning as error"?

smbullet commented on 2016-10-01 19:49 (UTC)

This PKGBUILD should work for the meantime: http://pastebin.com/X5uwJPi5

markzz commented on 2016-10-01 18:20 (UTC)

Flag it out of date if the PKGBUILD is out of date. Also there's *nothing* preventing you from updating the script yourself in the meantime.

z3ntu commented on 2016-10-01 17:31 (UTC)

patch: **** Can't open patch file /aur/packages/ovmf-git/src/edk2/CryptoPkg/Library/OpensslLib/EDKII_openssl-1.0.2h.patch : No such file or directory @markzz !

dullin commented on 2016-09-30 05:30 (UTC)

There's a new version of openssl-1.0.2j and the files for 1.0.2h are now missing. We need to update the version and SHA1 in the PKGBUILD to fix it.

hydranix commented on 2016-08-24 06:20 (UTC) (edited on 2016-08-24 06:25 (UTC) by hydranix)

I believe the problems building may be caused by community/hardening-wrapper Removing the hardening-wrapper package fixed many build issues in AUR packages for me, including this one. Need confirmation though.

markzz commented on 2016-07-30 03:28 (UTC)

lucasheringer: Some people have issues building this on some configurations. I'm not sure what's causing these, but try building the package in a clean chroot. You can find information on how to do this on the wiki.

newsboost commented on 2016-07-30 03:25 (UTC)

Hi lucasheringer, I can say that this seemed to work very well, at my location: "packer -S ovmf-git". It finished up with "==> Finished making: ovmf-git 19546.92e9b9f-1 (Sat Jul 30 05:22:06 CEST 2016)". Not sure what you've done wrong, though... Assume you have everything updated...

lucasheringer commented on 2016-07-25 19:14 (UTC)

Not building for me: /usr/bin/ld: GnuGenBootSector.o: relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC GnuGenBootSector.o: error adding symbols: Bad value collect2: error: ld returned 1 exit status make[2]: *** [../Makefiles/app.makefile:24: ../bin/GnuGenBootSector] Error 1 make[2]: Leaving directory '/tmp/yaourt-tmp-lucas/aur-ovmf-git/src/edk2/BaseTools/Source/C/GnuGenBootSector' make[1]: *** [GNUmakefile:79: GnuGenBootSector] Error 2 make[1]: Leaving directory '/tmp/yaourt-tmp-lucas/aur-ovmf-git/src/edk2/BaseTools/Source/C' make: *** [GNUmakefile:25: Source/C] Error 2 make: Leaving directory '/tmp/yaourt-tmp-lucas/aur-ovmf-git/src/edk2/BaseTools'

markzz commented on 2016-07-23 14:54 (UTC) (edited on 2016-07-23 15:03 (UTC) by markzz)

electricprism: Would you kindly put that on pastebin or gist and then link to it rather than putting it in the comments? Plus all you have to do is remove the gcc6 patch and change the OpenSSL version, nothing fancy needed for changing the checkout version.

electricprism commented on 2016-07-22 06:23 (UTC)

@plpn - thank you it worked. Here's how to patch and build to anyone who needs it #--------------------------------------------------- # Create Directory mkdir -p ~/Workspace/ovmf-git # Enter Directory cd ~/Workspace/ovmf-git # PKGBUILD wget https://aur.archlinux.org/cgit/aur.git/plain/PKGBUILD?h=ovmf-git mv PKGBUILD?h=ovmf-git PKGBUILD # gcc-6.0.patch wget https://aur.archlinux.org/cgit/aur.git/plain/gcc-6.0.patch?h=ovmf-git mv gcc-6.0.patch?h=ovmf-git gcc-6.0.patch # ovmf.install wget https://aur.archlinux.org/cgit/aur.git/plain/ovmf.install?h=ovmf-git mv ovmf.install?h=ovmf-git ovmf.install # Download the Patch wget http://pastebin.com/raw/c4LHdKux # Apply the Patch patch < c4LHdKux # Make Package makepkg -s # Install pacman -U ovmf-git-19358.179bcd3-1-x86_64.pkg.tar.xz #--------------------------------------------------- pacman -Ql ovmf-git

plonqor commented on 2016-07-22 03:11 (UTC)

Thanks @plpn, your patch worked for me.

z3ntu commented on 2016-07-21 14:58 (UTC)

Same patch: **** Can't open patch file /aur/packages/ovmf-git/src/edk2/CryptoPkg/Library/OpensslLib/EDKII_openssl-1.0.2g.patch : No such file or directory

plpn commented on 2016-07-20 18:06 (UTC)

EDK2 git was updated and breaks some patching.. pasted patch to reset to working EDK2 revision here: http://pastebin.com/c4LHdKux

markzz commented on 2016-06-30 15:20 (UTC)

Have you tried compiling in a clean chroot?

Sandman007 commented on 2016-06-30 12:15 (UTC)

This really needs to get fixed. I can't compile this which has brought my project to a screeching halt. If someone could show me how install this manually that would be great!

dequis commented on 2016-05-24 00:01 (UTC)

Yeah just tried and also builds fine in a clean chroot, but not outside. Weird. I don't have time to track it down, I ran out of weekend. >Also, the other ovmf packages could just be installing files in different places than this one does This ovmf-git package and the debian/redhat packages have both CODE and VARS files. The [extra] package only provides /usr/share/ovmf/ovmf_{ia32,x64}.bin and ovmf-bin only provides /usr/share/ovmf/bios.bin Not entirely sure what all of this means in the context of UEFI, and this is kinda offtopic since this package does things right as far as i know. (I ended up extracting them from a rpm in https://www.kraxel.org/repos/jenkins/edk2/)

markzz commented on 2016-05-22 23:56 (UTC)

It builds fine in a clean chroot. I have uploaded the output of `makechrootpkg' [1] and the .BUILDINFO [2] file in the resulting package. [1] https://gist.github.com/markzz/481b981e0c441da29d9fd165bdc6100c [2] https://gist.github.com/markzz/36011436447c35e34716b3cd19b55b6b

SpaceCadet commented on 2016-05-22 23:09 (UTC) (edited on 2016-05-22 23:20 (UTC) by SpaceCadet)

Not building for me, thought it might have something to do with gcc-multilib, but even after replacing that with non-multilib gcc it's still not building. Looks like the same error dequis is getting. ../Makefiles/app.makefile:24: recipe for target '../bin/GnuGenBootSector' failed make[2]: *** [../bin/GnuGenBootSector] Error 1 make[2]: Leaving directory '/tmp/yaourt-tmp-sh/aur-ovmf-git/src/edk2/BaseTools/Source/C/GnuGenBootSector' GNUmakefile:79: recipe for target 'GnuGenBootSector' failed make[1]: *** [GnuGenBootSector] Error 2 make[1]: Leaving directory '/tmp/yaourt-tmp-sh/aur-ovmf-git/src/edk2/BaseTools/Source/C' GNUmakefile:25: recipe for target 'Source/C' failed make: *** [Source/C] Error 2 make: Leaving directory '/tmp/yaourt-tmp-sh/aur-ovmf-git/src/edk2/BaseTools' ==> ERROR: A failure occurred in build(). Aborting... ==> ERROR: Makepkg was unable to build ovmf-git. In addition, the other ovmf packages do not include ovmf_vars_x64.bin, which is needed for setting up UEFI boot for qemu. (Probably, anyways, I'm also just following the guide.)

markzz commented on 2016-05-22 20:52 (UTC) (edited on 2016-05-22 20:54 (UTC) by markzz)

I can confirm this package compiles in a clean chroot. Also, the other ovmf packages could just be installing files in different places than this one does. Probably running a find command could find the files mentioned in the guide you're talking about.

dequis commented on 2016-05-22 04:34 (UTC)

Doesn't build for me. Also, how come neither the 'ovmf' package in extra or 'ovmf-bin' in AUR seem to have the files mentioned in the "pci passthrough with ovmf" guides? make[2]: Entering directory '/home/dx/test/asd/feature/ovmf-git/src/edk2/BaseTools/Source/C/GnuGenBootSector' mkdir ../bin cc -c -MD -fshort-wchar -fno-strict-aliasing -Wall -Wno-error -Wno-unused-but-set-variable -Wno-deprecated-declarations -nostdlib -c -g -I .. -I ../Include/Common -I ../Include/ -I ../Include/IndustryStandard -I ../Common/ -I .. -I . -I ../Include/X64/ GnuGenBootSector.c -o GnuGenBootSector.o cc -o ../bin/GnuGenBootSector GnuGenBootSector.o -L../libs -lCommon /usr/bin/ld: GnuGenBootSector.o: relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC GnuGenBootSector.o: error adding symbols: Bad value collect2: error: ld returned 1 exit status ../Makefiles/app.makefile:24: recipe for target '../bin/GnuGenBootSector' failed

dhummel commented on 2016-05-20 17:54 (UTC)

Thanks again! I haven't tested the produced firmwares yet, but it does compile now without errors.

markzz commented on 2016-05-20 17:32 (UTC) (edited on 2016-05-20 17:32 (UTC) by markzz)

Okay, I uploaded a new PKGBUILD with a patch included for gcc 6. If there are more problems, let me know!

dhummel commented on 2016-05-20 16:54 (UTC)

Thank you, markzz, for maintaining this package. By the way, I completely forgot to specify which build.sh file (there are currently 2) I was referring to, I made the modification to this one: https://github.com/tianocore/edk2/blob/master/OvmfPkg/build.sh -> ./edk2/OvmfPkg/build.sh

markzz commented on 2016-05-20 16:28 (UTC) (edited on 2016-05-20 16:47 (UTC) by markzz)

I'll make the change tonight. Thanks, dhummel. Also, zigarrre, what sense is there to NOT have dll files? O.o

dhummel commented on 2016-05-20 15:41 (UTC)

I think the problem is that the default installed GCC is now greater than 5.*.* and the build.sh script isn't aware of this and therefore assumes GCC44 is being targeted. Here's what I did, just adding "|6.*.*" to the end of the case statement for GCC49 seemed to fix the issue. @@ -95,7 +95,7 @@ case `uname` in 4.8.*) TARGET_TOOLS=GCC48 ;; - 4.9.*|4.1[0-9].*|5.*.*) + 4.9.*|4.1[0-9].*|5.*.*|6.*.*) TARGET_TOOLS=GCC49 ;; *)

zigarrre commented on 2016-05-14 15:42 (UTC)

Doesn't currently build. I'm not sure if it's an Upstream problem or not so i thought I report it here first. It seems a bit strange that it builds DLLs what sense do they make on Linux? These are the lines where the errors start until the build fails: GNUmakefile:403: recipe for target '/home/rrr/Downloads/ovmf-git/src/edk2/Build/OvmfX64/RELEASE_GCC49/X64/MdeModulePkg/Application/UiApp/UiApp/DEBUG/UiApp.dll' failed make: *** [/home/rrr/Downloads/ovmf-git/src/edk2/Build/OvmfX64/RELEASE_GCC49/X64/MdeModulePkg/Application/UiApp/UiApp/DEBUG/UiApp.dll] Error 1 build.py... : error 7000: Failed to execute command make tbuild [/home/rrr/Downloads/ovmf-git/src/edk2/Build/OvmfX64/RELEASE_GCC49/X64/MdeModulePkg/Application/UiApp/UiApp] build.py... : error F002: Failed to build module /home/rrr/Downloads/ovmf-git/src/edk2/MdeModulePkg/Application/UiApp/UiApp.inf [X64, GCC49, RELEASE] - Failed -

ridikulusrat commented on 2016-03-23 00:06 (UTC)

Due to work and other life commitments, I am unable to devote time to maintain this package. Orphaned.

zman0900 commented on 2016-03-14 12:26 (UTC)

openssl patch command also changed: http://pastebin.com/nHCE3izd

Amadren commented on 2016-03-05 14:26 (UTC)

Openssl version outdated, please update it

jaksi commented on 2016-02-15 14:38 (UTC)

@CyberShadow: This is a source package, the RPMs are prebuilt. Other than that, they're the same, as far as I can tell. I've successfully used both versions to achieve GPU passthrough using OVMF as a firmware.

CyberShadow commented on 2016-02-15 12:06 (UTC)

Hi, does anyone know how these are different from https://www.kraxel.org/repos/jenkins/edk2/ (which is mentioned on https://wiki.archlinux.org/index.php/PCI_passthrough_via_OVMF)?

jaksi commented on 2016-02-14 20:53 (UTC)

openssl-1.0.2e is no longer available, please upgrade the package and use 1.0.2f

miffe commented on 2016-01-15 14:54 (UTC)

Please change to arch=('any')

levifig commented on 2015-12-15 12:23 (UTC) (edited on 2015-12-15 15:48 (UTC) by levifig)

@krefik: how do I apply those changes on my local repo? Thanks. :) UPDATE: `patch -i patch_file` (from pastebin, minus the first line) ^^ Running into issues patching PKGBUILD using the pastebin though... :( Already added the whitespace before unchanged lines (not present in the pastebin) but my latest error is on line 755: `patch: **** malformed patch at line 755: @@ -40,38 +40,16 @@`. Any help would be greatly appreciated (or an updated PKGBUILD... :p) UPDATE2: Had to edit a bunch of the patch file to make it work. Ended up just patching PKGBUILD manually. Ran into tons of other issues (e.g. git clone of edk2 repo is coming as refs not actual files, latest edk2 commits are updated to 1.0.2e already, can't build still) Could really use just the final compiled files of this thing at this point... -_-

krefik commented on 2015-12-06 15:20 (UTC) (edited on 2015-12-07 21:56 (UTC) by Xyne)

Update to openssl 1.0.2e and new repo structure: *modedit by Xyne* Use a pastebin next time to post code, command output, etc. (see https://wiki.archlinux.org/index.php/AUR#Feedback) I have copied your original comment here: http://pastebin.com/Mw0Gfm4c

robled commented on 2015-07-21 07:22 (UTC)

The SVN repo is down (sourceforge).

freswa commented on 2015-07-19 13:11 (UTC)

Please push openssl to version 1.0.2d

freswa commented on 2015-06-17 01:05 (UTC)

Current PKGBUILD does not work for me. Need to change _OPENSSL_VERSION to 1.0.2c to match the bundled patch.

TripleSpeeder commented on 2015-06-12 09:35 (UTC)

Tried again this morning and the problem seems to be fixed already upstream :)

ridikulusrat commented on 2015-06-11 18:58 (UTC)

@TripleSpeeder: Please report upstream. While I understand how the build system works and thus can maintain this PKGBUILD, I do not know the actual internals of ovmf to comment on its source code or build issues.

TripleSpeeder commented on 2015-06-11 18:14 (UTC)

Build is failing: build.py... : error C0DE: Unknown fatal error when processing [/home/michael/dev/ovmf-svn/src/tianocore-edk2-svn_build/PcAtChipsetPkg/PcAtChipsetPkg.dec] (Please send email to edk2-devel@lists.sourceforge.net for help, attaching following call stack trace!) (Python 2.7.10 on linux2) Traceback (most recent call last): File "/home/michael/dev/ovmf-svn/src/tianocore-edk2-svn_build/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", line 2032, in Main MyBuild.Launch() File "/home/michael/dev/ovmf-svn/src/tianocore-edk2-svn_build/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", line 1788, in Launch self._MultiThreadBuildPlatform() File "/home/michael/dev/ovmf-svn/src/tianocore-edk2-svn_build/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", line 1583, in _MultiThreadBuildPlatform self.Progress File "/home/michael/dev/ovmf-svn/src/tianocore-edk2-svn_build/BaseTools/Source/Python/AutoGen/AutoGen.py", line 175, in __new__ if not AutoGenObject._Init(Workspace, MetaFile, Target, Toolchain, Arch, *args, **kwargs): File "/home/michael/dev/ovmf-svn/src/tianocore-edk2-svn_build/BaseTools/Source/Python/AutoGen/AutoGen.py", line 357, in _Init for Pcd in Pkg.Pcds: File "/home/michael/dev/ovmf-svn/src/tianocore-edk2-svn_build/BaseTools/Source/Python/Workspace/WorkspaceDatabase.py", line 1487, in _GetPcds self._Pcds.update(self._GetPcd(MODEL_PCD_FIXED_AT_BUILD)) File "/home/michael/dev/ovmf-svn/src/tianocore-edk2-svn_build/BaseTools/Source/Python/Workspace/WorkspaceDatabase.py", line 1521, in _GetPcd validateranges, validlists, expressions = self._RawData.GetValidExpression(TokenSpaceGuid, PcdCName) File "/home/michael/dev/ovmf-svn/src/tianocore-edk2-svn_build/BaseTools/Source/Python/Workspace/MetaFileParser.py", line 380, in GetValidExpression return self._Table.GetValidExpression(TokenSpaceGuid, PcdCName) File "/home/michael/dev/ovmf-svn/src/tianocore-edk2-svn_build/BaseTools/Source/Python/Workspace/MetaFileTable.py", line 246, in GetValidExpression expressions.append(comment.split("|")[1].strip()) IndexError: list index out of range Something to report upstream or a package problem?

HLFH commented on 2015-03-26 10:34 (UTC)

0. Thanks wmarler 1. Replace it by 0.9.8zf 2. Replace the sha1 by 3f2f4ca864b13a237ae063cd34d01bbdbc8f108f 3. Do not remove the patch!

wmarler commented on 2015-03-26 05:16 (UTC)

Ok, just changing the openSSL version & the sha1 sum fixed things. Flagging out of date in case you don't see these comments ;-).

wmarler commented on 2015-03-26 05:10 (UTC)

Ah, there's now a new OpenSSL version: https://www.openssl.org/source/openssl-0.9.8zf.tar.gz 3f2f4ca864b13a237ae063cd34d01bbdbc8f108f Maybe the patch is no longer necessary?

wmarler commented on 2015-03-26 05:06 (UTC)

I ran into this error when running makepkg -s: ... ==> Prepare OpenSSL 0.9.8ze Sources ==> Download OpenSSL 0.9.8ze Sources ==> Apply EDK2 Patch for OpenSSL 0.9.8ze patch: **** Can't open patch file /home/will/builds/ovmf-svn/src/tianocore-edk2-svn_build/CryptoPkg/Library/OpensslLib/EDKII_openssl-0.9.8ze.patch : No such file or directory ==> ERROR: A failure occurred in prepare(). Aborting...

ephreal commented on 2015-01-22 20:14 (UTC)

openssl has updated to a newer patch version. For those making the file now, modifying both the SHA sum to 'cbfbda630b3ad6d89a15a80c0dc15ebce2c1b7b2' and the _OPENSSL_VERSION variable to "0.9.8ze" will allow the install to continue with the newer openssl. More modifications may be necessary to keep the PKGBUILD scrip installing cleanly with the older package.

FredBezies commented on 2014-10-22 16:12 (UTC)

Official homepage : http://tianocore.github.io/ovmf/

swiftgeek commented on 2014-07-23 01:00 (UTC)

Works for me, thx ;) Now the only missing tianocore thingie for me is DUET (from current sources)

ackalker commented on 2014-05-23 20:45 (UTC)

Oobviously my comments below are related to FredBezies' build failure, which I also experienced when manually building. Perhaps the build will also work with GCC 4.7 or GCC 4.8, haven't tested because I haven't the time to build them right now. It's worth a try, though.

ackalker commented on 2014-05-23 20:34 (UTC)

OvmPkg -> OvmfPkg, $ build.sh qemu -> $ ./build.sh qemu # obviously :-)

ackalker commented on 2014-05-23 20:29 (UTC)

All is not lost! :-) I've been able to manually build and boot OVMF successfully on Qemu. Here's the shorty of what I did (it can be adapted easily to this PKGBUILD). Note that I was both lazy and in a hurry, so it isn't beautiful but it worked :-): - Make sure that GCC 4.6 is available (I used gcc46-multilib package from AUR, 'cause I happened to have it installed (I'm the maintainer, wink, nod)) - Fetch edk2 mirror Git repository from https://github.com/tianocore/edk2 - $ cd edk2 - Setup virtualenv for python2 - in the file BaseTools/Conf/tools_def.template, search for "GCC46", replace all relevant references to "gcc" with "gcc-4.6" (yes, I know that that's an ugly hack, but it was quick!) - $ cd OvmPkg - In the file build.sh, search for "gcc_version", replace the reference to "gcc" with "gcc-4.6" - $ build.sh qemu Voilá, boot away. No issues with help text btw.

FredBezies commented on 2014-05-05 11:24 (UTC)

Here is my crash log : "/usr/bin/ld" -o /home/fred/ovmf-svn/src/tianocore-edk2-svn_build/Build/OvmfX64/RELEASE_GCC48/X64/OvmfPkg/AcpiTables/AcpiTables/OUTPUT/./Madt.dll -nostdlib -n -q --gc-sections --script=/home/fred/ovmf-svn/src/tianocore-edk2-svn_build/BaseTools/Scripts/gcc4.4-ld-script --entry ReferenceAcpiTable -u ReferenceAcpiTable -m elf_x86_64 /home/fred/ovmf-svn/src/tianocore-edk2-svn_build/Build/OvmfX64/RELEASE_GCC48/X64/OvmfPkg/AcpiTables/AcpiTables/OUTPUT/./Madt.obj "GenFw" -o /home/fred/ovmf-svn/src/tianocore-edk2-svn_build/Build/OvmfX64/RELEASE_GCC48/X64/OvmfPkg/AcpiTables/AcpiTables/OUTPUT/./Madt.acpi -c /home/fred/ovmf-svn/src/tianocore-edk2-svn_build/Build/OvmfX64/RELEASE_GCC48/X64/OvmfPkg/AcpiTables/AcpiTables/OUTPUT/./Madt.dll GenFw: ERROR 3000: Invalid make: *** [/home/fred/ovmf-svn/src/tianocore-edk2-svn_build/Build/OvmfX64/RELEASE_GCC48/X64/OvmfPkg/AcpiTables/AcpiTables/OUTPUT/Madt.acpi] Error 2 Unsupported section alignment. GNUmakefile:322: recipe for target '/home/fred/ovmf-svn/src/tianocore-edk2-svn_build/Build/OvmfX64/RELEASE_GCC48/X64/OvmfPkg/AcpiTables/AcpiTables/OUTPUT/Madt.acpi' failed build.py... : error 7000: Failed to execute command make tbuild [/home/fred/ovmf-svn/src/tianocore-edk2-svn_build/Build/OvmfX64/RELEASE_GCC48/X64/OvmfPkg/AcpiTables/AcpiTables] build.py... : error F002: Failed to build module /home/fred/ovmf-svn/src/tianocore-edk2-svn_build/OvmfPkg/AcpiTables/AcpiTables.inf [X64, GCC48, RELEASE] - Failed - Build end time: 13:18:30, May.05 2014 Build total time: 00:01:57 Revision : 15495 gcc ? 4.9.0

timebomb commented on 2014-04-01 17:04 (UTC)

i don't really understand why you don't have that problem, but here's a bugfix https://gist.github.com/2761745d5ed7a89d8d3f

lersek_RH commented on 2014-03-17 18:33 (UTC)

re sanerb / 2014-02-19 19:29 The error message captured in this comment seems impossible, hence something probably happens with undefined behavior. If you're still suspicious of the earlier memcpy() thing (overlapping regions etc), here's a debug patch, but it doesn't fire on my end. Don't forget to rebuild VfrCompile with make -C "$EDK_TOOLS_PATH". From 4680e08ee2fbb88bb37e4ab8d946ec28acce2b2f Mon Sep 17 00:00:00 2001 From: Laszlo Ersek <lersek@redhat.com> Date: Mon, 17 Mar 2014 19:14:46 +0100 Subject: [PATCH] VfrCompile: debug overlapping memcpy()s Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> --- BaseTools/Source/C/VfrCompile/GNUmakefile | 2 +- BaseTools/Source/C/VfrCompile/VfrUtilityLib.cpp | 34 +++++++++++++++++++++++++ 2 files changed, 35 insertions(+), 1 deletion(-) diff --git a/BaseTools/Source/C/VfrCompile/GNUmakefile b/BaseTools/Source/C/VfrCompile/GNUmakefile index 82005e1..0d679a7 100644 --- a/BaseTools/Source/C/VfrCompile/GNUmakefile +++ b/BaseTools/Source/C/VfrCompile/GNUmakefile @@ -24,7 +24,7 @@ TOOL_INCLUDE = -I Pccts/h OBJECTS = AParser.o DLexerBase.o ATokenBuffer.o EfiVfrParser.o VfrLexer.o VfrSyntax.o \ VfrFormPkg.o VfrError.o VfrUtilityLib.o VfrCompiler.o -VFR_CPPFLAGS = -DPCCTS_USE_NAMESPACE_STD $(CPPFLAGS) +VFR_CPPFLAGS = -DPCCTS_USE_NAMESPACE_STD $(CPPFLAGS) -g3 LINKER = $(CXX) diff --git a/BaseTools/Source/C/VfrCompile/VfrUtilityLib.cpp b/BaseTools/Source/C/VfrCompile/VfrUtilityLib.cpp index 7c1383e..8d80d9b 100644 --- a/BaseTools/Source/C/VfrCompile/VfrUtilityLib.cpp +++ b/BaseTools/Source/C/VfrCompile/VfrUtilityLib.cpp @@ -18,6 +18,40 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. #include "VfrUtilityLib.h" #include "VfrFormPkg.h" +#include <string.h> +#include <stdint.h> +#include <assert.h> +#include <execinfo.h> +#include <unistd.h> + +#define NFRAMES 32 + +void * +memcpy(void *dest, const void *src, size_t n) +{ + uintptr_t s, d; + + s = (uintptr_t)src; + d = (uintptr_t)dest; + assert(n <= (uintptr_t)-1); + assert(s <= (uintptr_t)-1 - n); + assert(d <= (uintptr_t)-1 - n); + + if (s + n > d && d + n > s) { + void *frames[NFRAMES]; + int nframes; + + nframes = backtrace(frames, NFRAMES); + assert(nframes > 0); + assert(nframes < NFRAMES); + + fprintf(stderr, "memcpy(%p, %p, 0x%zx) overlap:\n", dest, src, n); + backtrace_symbols_fd(frames, nframes, STDERR_FILENO); + } + + return memmove(dest, src, n); +} + VOID CVfrBinaryOutput::WriteLine ( IN FILE *pFile, -- 1.8.3.1

sanerb commented on 2014-02-23 05:05 (UTC)

haven't tried it yet, but worth a look: https://aur.archlinux.org/packages/freeswitch-git/ comment: The mod_v8 python build error can be mitigated by creating a custom /usr/local/bin/python file as detailed in the Arch wiki https://wiki.archlinux.org/index.php/Python#Dealing_with_version_problem_in_build_scripts Modify this line case "$script" in (/path/to/project1/*|/path/to/project2/*|/path/to/project3*) So it looks something like this case "$script" in (/tmp/*|/home/username/Downloads/freeswitch-git/*) The first path (/tmp/*) to is to make it work with AUR utils such as packer-color. The second path would be to change the active version of python if you wanted to build freeswitch-git using makepkg at path /home/username/Downloads/freeswitch-git/* since it seems to be build.py that's failing, perhaps this is a python2 vs python3 thing.

sanerb commented on 2014-02-19 19:29 (UTC)

this error continues to occur even with a fresh building dir and source fetch: "VfrCompile" -l -n --string-db /var/abs/local/yaourtbuild/ovmf-svn/src/tianocore-edk2-svn_build/Build/OvmfX64/RELEASE_GCC48/X64/IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe/OUTPUT/BdsDxeStrDefs.hpk --output-directory /var/abs/local/yaourtbuild/ovmf-svn/src/tianocore-edk2-svn_build/Build/OvmfX64/RELEASE_GCC48/X64/IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe/DEBUG/DeviceMngr /var/abs/local/yaourtbuild/ovmf-svn/src/tianocore-edk2-svn_build/Build/OvmfX64/RELEASE_GCC48/X64/IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe/OUTPUT/DeviceManagerVfr.i VfrCompile: ERROR 0003: Error parsing compile error in file (null) make: *** [/var/abs/local/yaourtbuild/ovmf-svn/src/tianocore-edk2-svn_build/Build/OvmfX64/RELEASE_GCC48/X64/IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe/DEBUG/DeviceMngr/DeviceManagerVfr.c] Error 2 GNUmakefile:920: recipe for target '/var/abs/local/yaourtbuild/ovmf-svn/src/tianocore-edk2-svn_build/Build/OvmfX64/RELEASE_GCC48/X64/IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe/DEBUG/DeviceMngr/DeviceManagerVfr.c' failed build.py... : error 7000: Failed to execute command make tbuild [/var/abs/local/yaourtbuild/ovmf-svn/src/tianocore-edk2-svn_build/Build/OvmfX64/RELEASE_GCC48/X64/IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe] build.py... : error F002: Failed to build module /var/abs/local/yaourtbuild/ovmf-svn/src/tianocore-edk2-svn_build/IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf [X64, GCC48, RELEASE] - Failed - Build end time: 14:21:38, Feb.19 2014 Build total time: 00:01:33 ==> ERROR: A failure occurred in build(). Aborting... ==> ERROR: Makepkg was unable to build ovmf-svn. ==> Restart building ovmf-svn ? [y/N] ==> --------------------------------- ==> i suspect it may be due to upstream as it seems a similar issue happened with a (very much so) earlier version in the same file (DeviceManagerVfr.c): http://feishare.com/efimail/messages/20081205-2046-Re__Edk2_Dev__Trouble_building_the_TOT_tools-_Andrew_J__Fish_.html their bug tracker (via trac) is here: http://sourceforge.net/apps/trac/edk2/report/1?asc=0&sort=created&USER=anonymous i haven't submitted a report, however, as i'm not entirely sure what's going on with this failure. i'd encourage someone a bit more familiar with EDKII to submit one though.

hugg commented on 2014-02-11 04:05 (UTC)

I couldn't get this to build using yaourt or with makepkg. "VfrCompile" -l -n --string-db /var/abs/local/yaourt-tmp/yaourt-tmp-hugg/aur-ovmf-svn/src/tianocore-edk2-svn_build/Build/OvmfX64/RELEASE_GCC48/X64/IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe/OUTPUT/BdsDxeStrDefs.hpk --output-directory /var/abs/local/yaourt-tmp/yaourt-tmp-hugg/aur-ovmf-svn/src/tianocore-edk2-svn_build/Build/OvmfX64/RELEASE_GCC48/X64/IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe/DEBUG/DeviceMngr /var/abs/local/yaourt-tmp/yaourt-tmp-hugg/aur-ovmf-svn/src/tianocore-edk2-svn_build/Build/OvmfX64/RELEASE_GCC48/X64/IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe/OUTPUT/DeviceManagerVfr.i VfrCompile: ERROR 0003: Error parsing compile error in file (null) make: *** [/var/abs/local/yaourt-tmp/yaourt-tmp-hugg/aur-ovmf-svn/src/tianocore-edk2-svn_build/Build/OvmfX64/RELEASE_GCC48/X64/IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe/DEBUG/DeviceMngr/DeviceManagerVfr.c] Error 2 GNUmakefile:920: recipe for target '/var/abs/local/yaourt-tmp/yaourt-tmp-hugg/aur-ovmf-svn/src/tianocore-edk2-svn_build/Build/OvmfX64/RELEASE_GCC48/X64/IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe/DEBUG/DeviceMngr/DeviceManagerVfr.c' failed build.py... : error 7000: Failed to execute command make tbuild [/var/abs/local/yaourt-tmp/yaourt-tmp-hugg/aur-ovmf-svn/src/tianocore-edk2-svn_build/Build/OvmfX64/RELEASE_GCC48/X64/IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe] build.py... : error F002: Failed to build module /var/abs/local/yaourt-tmp/yaourt-tmp-hugg/aur-ovmf-svn/src/tianocore-edk2-svn_build/IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf [X64, GCC48, RELEASE] - Failed - Build end time: 22:58:42, Feb.10 2014 Build total time: 00:01:58 ==> ERROR: A failure occurred in build(). Aborting... FAIL: 2

ridikulusrat commented on 2013-08-25 07:25 (UTC)

@mazieres: There have been a few changes in UEFI Shell and OVMF recently. The help "-" issue and "map" command issues might be due to the changes. I suggest contacting tianocore devs in edk2-devel ML.

FredBezies commented on 2013-08-25 07:01 (UTC)

Crashing on start with qemu 1.6 and qemu-git : qemu-system-x86_64 -enable-kvm -net none -m 1024 -bios /usr/share/ovmf/x86_64/bios.bin KVM internal error. Suberror: 1 emulation failure EAX=c0000033 EBX=fffe60e4 ECX=c0000080 EDX=00000000 ESI=fffe62c4 EDI=00005042 EBP=fffe6000 ESP=00000000 EIP=ffffff26 EFL=00000082 [--S----] CPL=0 II=0 A20=1 SMM=0 HLT=0 ES =0008 00000000 ffffffff 00c09300 DPL=0 DS [-WA] CS =0010 00000000 ffffffff 00c09b00 DPL=0 CS32 [-RA] SS =0008 00000000 ffffffff 00c09300 DPL=0 DS [-WA] DS =0008 00000000 ffffffff 00c09300 DPL=0 DS [-WA] FS =0008 00000000 ffffffff 00c09300 DPL=0 DS [-WA] GS =0008 00000000 ffffffff 00c09300 DPL=0 DS [-WA] LDT=0000 00000000 0000ffff 00008200 DPL=0 LDT TR =0000 00000000 0000ffff 00008b00 DPL=0 TSS64-busy GDT= 00000000ffffff80 0000001f IDT= 0000000000000000 0000ffff CR0=c0000033 CR2=0000000000000000 CR3=00000000ffffe000 CR4=00000660 DR0=0000000000000000 DR1=0000000000000000 DR2=0000000000000000 DR3=0000000000000000 DR6=00000000ffff0ff0 DR7=0000000000000400 EFER=0000000000000500 Code=00 c0 0f 32 0f ba e8 08 0f 30 0f 20 c0 0f ba e8 1f 0f 22 c0 <ea> 2d ff ff ff 18 00 e9 93 00 00 00 fa bb 00 f0 8e db bb 6c ff 2e 66 0f 01 17 66 b8 23 00

mazieres commented on 2013-08-18 18:57 (UTC)

For some reason, the help summary in the efi shell does not work with this package. If I used ovmf-bin, it works fine. But if I boot this version and get into the efi shell, typing "help" just produces a bunch of blank lines with "-" in the middle. I can still get help on individual topics, just not the list of commands. Very annoying. I suspect this has something to do with display colors or something falling back to black on black. I can say "help * -usage -b" so as to see all the commands, but that's a lot less readable than the default help, so I'm having trouble finding the new commands. In particular, compared to the shell in ovmf-bin, the "map" command does not display all the mappings. For example, I can't figure out how to discover the name of the EFI system partition. With the ovmf-bin shell, the command "map" shows fs0, but such an entry is missing from the output of this shell. I assume there's some other command now, but can't figure out what it is.

ridikulusrat commented on 2013-07-15 13:50 (UTC)

@wuischke: 'iasl' added to makedepends.

wuischke commented on 2013-07-15 10:41 (UTC)

Hi ridikulus_rat, thanks for maintaining this package! Could you please add iasl to make-depends? It would not build for me unless I install this package.

oskude commented on 2013-06-23 11:43 (UTC)

sure, is disowned.