From 614d2fec699c594b1a3a25c973e0b5150302ff0e Mon Sep 17 00:00:00 2001 From: root Date: Tue, 18 Jun 2013 01:11:38 -0700 Subject: Tue Jun 18 01:11:08 PDT 2013 --- core/efibootmgr/PKGBUILD | 49 +++++++++++++++++ core/efibootmgr/efibootmgr-tilt_slashes-func.patch | 61 ++++++++++++++++++++++ 2 files changed, 110 insertions(+) create mode 100755 core/efibootmgr/PKGBUILD create mode 100644 core/efibootmgr/efibootmgr-tilt_slashes-func.patch (limited to 'core/efibootmgr') diff --git a/core/efibootmgr/PKGBUILD b/core/efibootmgr/PKGBUILD new file mode 100755 index 000000000..2a42dea3a --- /dev/null +++ b/core/efibootmgr/PKGBUILD @@ -0,0 +1,49 @@ +# $Id: PKGBUILD 188652 2013-06-17 10:52:28Z tpowa $ +# Maintainer: Tobias Powalowski +# Contributor : Murtuza Akhtari +# Contributor: Keshav P R + +pkgname=efibootmgr +pkgver=0.6.0 +pkgrel=3 +pkgdesc="Tool to modify UEFI Firmware Boot Manager Variables." +arch=('i686' 'x86_64') +url="http://linux.dell.com/efibootmgr/" +license=('GPL2') +depends=('zlib' 'pciutils') +makedepends=() +provides=() +options=(strip purge docs zipman !emptydirs) + +source=("http://linux.dell.com/efibootmgr/permalink/${pkgname}-${pkgver}.tar.gz" + "efibootmgr-tilt_slashes-func.patch" +) + +build () { + rm -rf ${srcdir}/efibootmgr-${pkgver}_build/ || true + + cp -r ${srcdir}/efibootmgr-${pkgver} ${srcdir}/efibootmgr-${pkgver}_build + + cd ${srcdir}/efibootmgr-${pkgver}_build/ + patch -Np1 -i ${srcdir}/efibootmgr-tilt_slashes-func.patch + echo + + CFLAGS= make + echo + +} + + +package() { + + mkdir -p ${pkgdir}/usr/bin/ + mkdir -p ${pkgdir}/usr/share/man/man8/ + + cd ${srcdir}/efibootmgr-${pkgver}_build/ + + install -D -m755 ${srcdir}/efibootmgr-${pkgver}_build/src/efibootmgr/efibootmgr ${pkgdir}/usr/bin/efibootmgr + install -D -m644 ${srcdir}/efibootmgr-${pkgver}_build/src/man/man8/efibootmgr.8 ${pkgdir}/usr/share/man/man8/efibootmgr.8 + +} +md5sums=('9e9a31d79e579644de83a14139b66d10' + '3622c0e978cf859cae60803a6b6a0c5e') diff --git a/core/efibootmgr/efibootmgr-tilt_slashes-func.patch b/core/efibootmgr/efibootmgr-tilt_slashes-func.patch new file mode 100644 index 000000000..ce857bb3c --- /dev/null +++ b/core/efibootmgr/efibootmgr-tilt_slashes-func.patch @@ -0,0 +1,61 @@ +diff --git a/src/efibootmgr/efibootmgr.c b/src/efibootmgr/efibootmgr.c +index 236365a..9883961 100644 +--- a/src/efibootmgr/efibootmgr.c ++++ b/src/efibootmgr/efibootmgr.c +@@ -803,6 +803,7 @@ usage() + printf("\t-V | --version return version and exit\n"); + printf("\t-w | --write-signature write unique sig to MBR if needed\n"); + printf("\t-@ | --append-binary-args file append extra args from file (use \"-\" for stdin)\n"); ++ printf("\t | --help show help/usage\n"); + } + + static void +@@ -863,6 +864,7 @@ parse_opts(int argc, char **argv) + {"version", no_argument, 0, 'V'}, + {"write-signature", no_argument, 0, 'w'}, + {"append-binary-args", required_argument, 0, '@'}, ++ {"help", no_argument, 0, 2}, + {0, 0, 0, 0} + }; + +@@ -1014,6 +1016,10 @@ parse_opts(int argc, char **argv) + opts.write_signature = 1; + break; + ++ case 2: ++ usage(); ++ exit(1); ++ + default: + usage(); + exit(1); +diff --git a/src/lib/efi.c b/src/lib/efi.c +index a4ce5cf..8ef8be8 100644 +--- a/src/lib/efi.c ++++ b/src/lib/efi.c +@@ -70,6 +70,16 @@ efi_guid_unparse(efi_guid_t *guid, char *out) + return out; + } + ++char * ++tilt_slashes(char *s) ++{ ++ char *p; ++ for (p = s; *p; p++) ++ if (*p == '/') ++ *p = '\\'; ++ return s; ++} ++ + void + set_fs_kernel_calls() + { +@@ -535,7 +545,7 @@ char *make_disk_load_option(char *p, char *disk) + signature, + mbr_type, signature_type); + +- efichar_from_char(os_loader_path, opts.loader, sizeof(os_loader_path)); ++ efichar_from_char(os_loader_path, tilt_slashes(opts.loader), sizeof(os_loader_path)); + p += make_file_path_device_path (p, os_loader_path); + p += make_end_device_path (p); + -- cgit v1.2.3-54-g00ecf