summaryrefslogtreecommitdiff
path: root/extra/gnu-efi-libs
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-09-27 00:42:08 -0700
committerroot <root@rshg054.dnsready.net>2012-09-27 00:42:08 -0700
commitbd8faf795abf6d91abdc52bc968829cc2efae4bb (patch)
treec073a5288d3917e9aa98d3762479ad083c5ceafe /extra/gnu-efi-libs
parent483f8b3ac46ac2d40e8cc2f9c25365741bebc791 (diff)
Thu Sep 27 00:42:07 PDT 2012
Diffstat (limited to 'extra/gnu-efi-libs')
-rw-r--r--extra/gnu-efi-libs/PKGBUILD75
1 files changed, 75 insertions, 0 deletions
diff --git a/extra/gnu-efi-libs/PKGBUILD b/extra/gnu-efi-libs/PKGBUILD
new file mode 100644
index 000000000..f71cd69b5
--- /dev/null
+++ b/extra/gnu-efi-libs/PKGBUILD
@@ -0,0 +1,75 @@
+# $Id: PKGBUILD 167140 2012-09-26 06:30:46Z tpowa $
+# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
+# Maintainer : Keshav P R <(the.ridikulus.rat) (aatt) (gemmaeiil) (ddoott) (ccoomm)>
+# Contributor: Alessio 'mOLOk' Bolognino <themolok@gmail.com>
+
+_pkgver="3.0"
+pkgname="gnu-efi-libs"
+pkgver="${_pkgver}q"
+pkgrel="1"
+pkgdesc="Library for building x86_64 and i386 UEFI Applications using GNU toolchain"
+url="http://sourceforge.net/projects/gnu-efi/"
+license=('GPL')
+arch=('i686' 'x86_64')
+makedepends=('pciutils')
+if [[ "${CARCH}" == "x86_64" ]]; then
+ makedepends+=('lib32-glibc')
+fi
+conflicts=('gnu-efi')
+provides=('gnu-efi')
+replaces=('gnu-efi')
+options=('!strip' '!makeflags')
+source=("http://download.sourceforge.net/gnu-efi/gnu-efi_${pkgver}.orig.tar.gz")
+sha1sums=('99d29be5fd17dfca762cf0e265477862c21d63bb')
+
+_build_gnu-efi-libs-x86_64() {
+ cp -r "${srcdir}/gnu-efi-${_pkgver}" "${srcdir}/gnu-efi-${_pkgver}-x86_64"
+ cd "${srcdir}/gnu-efi-${_pkgver}-x86_64/"
+ ARCH="x86_64" make
+ ARCH="x86_64" make -C apps all
+}
+
+_build_gnu-efi-libs-i386() {
+ cp -r "${srcdir}/gnu-efi-${_pkgver}" "${srcdir}/gnu-efi-${_pkgver}-i386"
+ cd "${srcdir}/gnu-efi-${_pkgver}-i386/"
+ ARCH="ia32" make
+ ARCH="ia32" make -C apps all
+}
+
+build() {
+ ## Fix Makefiles to enable compile for both UEFI arch
+ sed 's|INSTALLROOT=/usr/local|INSTALLROOT ?= /usr/lib|g' -i "${srcdir}/gnu-efi-${_pkgver}/Make.defaults"
+ sed 's|LIBDIR=lib|LIBDIR ?= lib|g' -i "${srcdir}/gnu-efi-${_pkgver}/Make.defaults"
+ sed 's|ARCH :=|ARCH ?=|g' -i "${srcdir}/gnu-efi-${_pkgver}/Make.defaults"
+ sed 's|-fno-strict-aliasing|-fno-strict-aliasing -fno-stack-protector|g' -i "${srcdir}/gnu-efi-${_pkgver}/Make.defaults"
+ if [[ "${CARCH}" == "x86_64" ]]; then
+ _build_gnu-efi-libs-x86_64
+ fi
+ _build_gnu-efi-libs-i386
+}
+
+_package_gnu-efi-libs-x86_64() {
+ cd "${srcdir}/gnu-efi-${_pkgver}-x86_64/"
+ make ARCH="x86_64" INSTALLROOT="${pkgdir}/usr/" LIBDIR="lib" install
+ install -d "${pkgdir}/usr/share/gnu-efi/x86_64/"
+ install -D -m0644 "${srcdir}/gnu-efi-${_pkgver}-x86_64/apps"/*.efi "${pkgdir}/usr/share/gnu-efi/x86_64/"
+}
+
+_package_gnu-efi-libs-i386() {
+ cd "${srcdir}/gnu-efi-${_pkgver}-i386/"
+ make ARCH="ia32" INSTALLROOT="${pkgdir}/usr/" LIBDIR="${_LIBDIR32}" install
+ install -d "${pkgdir}/usr/share/gnu-efi/i386/"
+ install -D -m0644 "${srcdir}/gnu-efi-${_pkgver}-i386/apps"/*.efi "${pkgdir}/usr/share/gnu-efi/i386/"
+}
+
+package() {
+ if [[ "${CARCH}" == "x86_64" ]]; then
+ _package_gnu-efi-libs-x86_64
+
+ _LIBDIR32="lib32"
+ _package_gnu-efi-libs-i386
+ else
+ _LIBDIR32="lib"
+ _package_gnu-efi-libs-i386
+ fi
+}