diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2018-04-22 14:25:03 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2018-04-22 14:25:03 +0100 |
commit | 5e8702bcbbed438e6c6cce023e7ef0cc9baa3e02 (patch) | |
tree | b041acef19bb9ae66c228d5c9d34d1e00aeb2b95 /sys-boot/elilo | |
parent | 5cfef3c94cd7e82136c69a0322f5ba21f7e64632 (diff) |
gentoo resync : 22.04.2018
Diffstat (limited to 'sys-boot/elilo')
-rw-r--r-- | sys-boot/elilo/Manifest | 2 | ||||
-rw-r--r-- | sys-boot/elilo/elilo-3.16-r2.ebuild | 88 | ||||
-rw-r--r-- | sys-boot/elilo/files/elilo-3.16-gnu-efi-3.0.6-ia64.patch | 112 |
3 files changed, 202 insertions, 0 deletions
diff --git a/sys-boot/elilo/Manifest b/sys-boot/elilo/Manifest index c992abd5fc68..fbcfff01d234 100644 --- a/sys-boot/elilo/Manifest +++ b/sys-boot/elilo/Manifest @@ -1,4 +1,5 @@ AUX elilo-3.16-elilo-loop.patch 299 BLAKE2B 5fe27b5b89d18adace762e2691854140437c5d33281d8b4e6573303b9d80913fa59283ae231213dda985dc9751c019db0a070e77284c56ed3871d799897b3c69 SHA512 6480d3e9403bc54b4a923e77df049eeb42929020f222450e32c12d4dcb09b098aa52924be0ebdda95e01ee8d0ced624ec96c3977cc1213b66dc5a8639797bc20 +AUX elilo-3.16-gnu-efi-3.0.6-ia64.patch 3796 BLAKE2B 9008b004b24b390f46d6b05cf9e9ae0627d4ed930b9965d0295e700ea0c7617f2ac3e1da0b583ab931e8a7bffc0bf8452eb19318d7d1d256a5d4781cde4e710e SHA512 c2ec3ba0d2f5ee3447363a44d9d7863eb323095c40f72243241f608437fd9e2b17ee603666a1103f14a0c66cae025e8f9be09c27d8fb57554f480209a02f39e5 AUX elilo.conf.sample 150 BLAKE2B d823113e1fcdaf08398f09b6fe9b4b2284004be2886799a69fd776bfaab194413c51969c65d1d81607c0a46699e84132b88bdd2a82f6f41a65ae6fbb061d9356 SHA512 3f99527724759f5c03a5f244b957bc6d50ca378f2b66cbcb19f73fa721d2fd76119ae90669e4cce045f5bc66a80d46b21e76e8c4895d23b22df23ec69262b0e0 AUX elilo.sh-chkspace.patch 833 BLAKE2B 72d99e45c6deff5262ea02bc8417e77e9e1158e5ef921d142f6ea941fc2c2da1b9f3624bd1e9ca6f9debe63f174d0ee55536bd295706c59dc197227739c03316 SHA512 063131fd53866e717d87a4ca23e5f4143cb166480d89312bbf9f5be9540e29930794657f1eb2709559435abceb415b7775e049a1f8d410ae5007dc967fbf9224 AUX elilo.sh-vmm.patch 2099 BLAKE2B 8bfca9c76e9dc5232e3602013103dc3e26bc29f880287f1204d429878b0e13cc95ff005934bbf06c9f848cd8c7d7a0162e52c827e1ceaa8809d28864e16712ca SHA512 2bbeca88b38790b3821e4ba54c46d194fbb776cf56788634e91da91e028fedb81a38928d0dbbb503cdf1a047c281800aea1d56a2eae47953dbc2203d795862cc @@ -13,6 +14,7 @@ DIST elilo_3.6-1.diff.gz 14944 BLAKE2B c982bce4610168408c57beaeca70f7c2be130a75e EBUILD elilo-3.10.ebuild 1881 BLAKE2B c4fc100d3f8cf5a91a577a84aa96f0e015c006cf45bfe8d979c95dec896c11862e2d8280490fa77e7cb2ed3dc078bec6f02a058c8d13bff79529526fb6c0f4c6 SHA512 40c43228a756ed0ffe1b6ee0e7ca1a15dd4eeae4ef11533e7604f1f9bc25a3395048721403abb84bf1bbe97652da0d8b2992e80698e49e0135f8f2e3804f40c6 EBUILD elilo-3.12.ebuild 1875 BLAKE2B e3bf5b05fa281d2ecc388b3b94143f196a780bd4bc9f156055959a9076a71fe4f9b909bf212ce225b1c616883b1c127a24f5e3140d30d2c89e32f42c6f970eec SHA512 e1133533b8727e744457086550771ead877279a919676006562d38e0a6e2949f2d95eb828d1664b3f726d072a83b184ea32632785df92d20b9f5d09cb0914c57 EBUILD elilo-3.16-r1.ebuild 2022 BLAKE2B 2b7e34a158bbb348c1468d1e79bfccf885f8479f0d209a36e1f9fff334d52fb5eadbb98082ad75b44e5cae50bc2909fb710aab42fee9f54a7c9e73be7e7faa9f SHA512 428ff3638702d11ff93a19c6b3aeca9c9dab556773a6b6a6b3632ed240ae64a3c6269e48f1466dbaf58ebc23c2eb340cbd98c50b0f7a5b45c3224a17b7ed4110 +EBUILD elilo-3.16-r2.ebuild 2073 BLAKE2B 36d1aaeb7f0487c73589774c46f7940a0385c18a770cdff502a8dc1d26f2220c7a8dac12e2c999cbde93b2611fe93ec4e29e3a5ee6545ed4acdbd603032269e9 SHA512 cdd0938ec31a04ce2d61a8bc482a9ea2cc4be13bbd194150ea2d86756563b9f807457a393325f2e64b6303e03cfbd757cbd62ed331451e71b5ee2f50bd881bee EBUILD elilo-3.16.ebuild 2032 BLAKE2B 12c7a08970bcb568944607fb6f9066d6b4bd19dda8a956f0f98480ddae577dab1cba0566b39c4214fd50b618c6df6d797957cafa7f40ccc1d70540dd7d642f3b SHA512 3eefb2956ce6cd1f5322c7ef537fb04fb9518ffb294361c0a449154adf11729ec7999167754cd034cfcbadb16616324c6866f8356e72e73e4aaf52a4e4f77398 EBUILD elilo-3.6_p20060314.ebuild 2290 BLAKE2B b47fe3063eb438f8dcf7ce47b500ecd4fcc8e79bd5f560e052c5662d127fdc640d68cb20e06250b8286285f97fac04331ad52d66e588b3baeaa2790b2464ede1 SHA512 4eb9e60abbec84dbe1a65138feb2ff0411faf54144549a4bff521aa867833cb211457589bc457cac072061714197b77abaf4267e3f21b6af591878114dd1b5ff MISC metadata.xml 337 BLAKE2B 7c9b3e56e9680252631db0691b3acfc2a2cbfee80c42af709979085124a35bb9d184e58de3ef4f88b2f3e6cc873b4ef2bd285ce3fc2645aaa9ae869c3b729d87 SHA512 13691bef927bf7f8a4a6d0640d38dabb53fdae1d8bd986c5fe73c1643e2bdbaaac50bfe864e2185a584fa6265a3197afc5273b60b70675481cef61706dde8d87 diff --git a/sys-boot/elilo/elilo-3.16-r2.ebuild b/sys-boot/elilo/elilo-3.16-r2.ebuild new file mode 100644 index 000000000000..840e7f568f8e --- /dev/null +++ b/sys-boot/elilo/elilo-3.16-r2.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit toolchain-funcs eutils multilib + +DESCRIPTION="Linux boot loader for EFI-based systems such as IA-64" +HOMEPAGE="https://sourceforge.net/projects/elilo/" +SRC_URI="mirror://sourceforge/elilo/${P}-all.tar.gz + mirror://debian/pool/main/e/elilo/elilo_3.14-3.debian.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ia64 ~x86" +IUSE="" + +# gnu-efi contains only static libs, so there's no run-time dep on it +DEPEND=">=sys-boot/gnu-efi-3.0g + dev-util/patchutils" +# dosfstools[compat] to enable 'dosfsck' symlink +RDEPEND="sys-boot/efibootmgr + sys-fs/dosfstools[compat]" + +S="${WORKDIR}/${P}-source" + +PATCHES=( + "${FILESDIR}"/${PN}-3.16-elilo-loop.patch #299665 + "${FILESDIR}"/${PN}-3.16-gnu-efi-3.0.6-ia64.patch +) + +src_unpack() { + unpack ${A} ./${P}-source.tar.gz + mv debian "${S}"/ || die +} + +src_prepare() { + default + + case $(tc-arch) in + ia64) iarch=ia64 ;; + x86) iarch=ia32 ;; + amd64) iarch=x86_64 ;; + *) die "unknown architecture: $(tc-arch)" ;; + esac + + # Now Gentooize it. + sed -i \ + -e '1s:/bin/sh:/bin/bash:' \ + -e "s:##VERSION##:${PV}:" \ + -e 's:Debian GNU/:Gentoo :g' \ + -e 's:Debian:Gentoo:g' \ + -e 's:debian:gentoo:g' \ + -e "s:dpkg --print-architecture:echo ${iarch}:" \ + debian/elilo.sh || die +} + +src_compile() { + # "prefix" on the next line specifies where to find gcc, as, ld, + # etc. It's not the usual meaning of "prefix". By blanking it we + # allow PATH to be searched. + local libdir="${SYSROOT}${EPREFIX}/usr/$(get_libdir)" + emake -j1 \ + prefix= \ + AS="$(tc-getAS)" \ + CC="$(tc-getCC)" \ + LD="$(tc-getLD)" \ + HOSTARCH=${iarch} \ + ARCH=${iarch} \ + EFIINC="${SYSROOT}${EPREFIX}/usr/include/efi" \ + GNUEFILIB="${libdir}" \ + EFILIB="${libdir}" \ + EFICRT0="${libdir}" +} + +src_install() { + exeinto /usr/lib/elilo + doexe elilo.efi + + newsbin debian/elilo.sh elilo + dosbin tools/eliloalt + + insinto /etc + newins "${FILESDIR}"/elilo.conf.sample elilo.conf + + dodoc docs/* "${FILESDIR}"/elilo.conf.sample + doman debian/*.[0-9] +} diff --git a/sys-boot/elilo/files/elilo-3.16-gnu-efi-3.0.6-ia64.patch b/sys-boot/elilo/files/elilo-3.16-gnu-efi-3.0.6-ia64.patch new file mode 100644 index 000000000000..21f10f316441 --- /dev/null +++ b/sys-boot/elilo/files/elilo-3.16-gnu-efi-3.0.6-ia64.patch @@ -0,0 +1,112 @@ +Disambiguate setpjmp()/longjmp()/jmp_buf across elilo copy and gnu-efi-3.0.6. + +In order not to chang the behaviour I'm keeping elilo's implementation +as the jmp_buf passing ABI is slightly different scross the two. + + setjmp.h:25:14: error: conflicting types for 'jmp_buf' + typedef long jmp_buf[_JBLEN] __attribute__ ((aligned (16))); /* guarantees 128-bit alignment! */ + ^~~~~~~ + In file included from /usr/include/efi/efisetjmp.h:5:0, + from /usr/include/efi/efi.h:60, + from gzip.c:29: + /usr/include/efi/ia64/efisetjmp_arch.h:45:23: note: previous declaration of 'jmp_buf' was here + } ALIGN(JMPBUF_ALIGN) jmp_buf; + ^~~~~~~ +diff --git a/ia64/gzip.c b/ia64/gzip.c +index cc0c943..e2d40f6 100644 +--- a/ia64/gzip.c ++++ b/ia64/gzip.c +@@ -138,3 +138,3 @@ static void error(char *m); + +-static jmp_buf jbuf; ++static jmp_buf_ia64_elilo jbuf; + static int error_return; +@@ -598,3 +598,3 @@ load_abort: + error_return = ELILO_LOAD_ABORTED; +- longjmp(jbuf, 1); ++ longjmp_ia64_elilo(jbuf, 1); + } +@@ -606,3 +606,3 @@ error(char *x) + /* will eventually exit with error from gunzip() */ +- longjmp(jbuf,1); ++ longjmp_ia64_elilo(jbuf,1); + } +@@ -645,3 +645,3 @@ gunzip_kernel(fops_fd_t fd, kdesc_t *kd) + +- if (setjmp(jbuf) == 1) goto error; ++ if (setjmp_ia64_elilo(jbuf) == 1) goto error; + +diff --git a/ia64/longjmp.S b/ia64/longjmp.S +index 23dec86..5341632 100644 +--- a/ia64/longjmp.S ++++ b/ia64/longjmp.S +@@ -18,5 +18,5 @@ + +- Note that __sigsetjmp() did NOT flush the register stack. Instead, +- we do it here since __longjmp() is usually much less frequently +- invoked than __sigsetjmp(). The only difficulty is that __sigsetjmp() ++ Note that __sigsetjmp_ia64_elilo() did NOT flush the register stack. Instead, ++ we do it here since __longjmp_ia64_elilo() is usually much less frequently ++ invoked than __sigsetjmp(). The only difficulty is that __sigsetjmp_ia64_elilo() + didn't (and wouldn't be able to) save ar.rnat either. This is a problem +@@ -40,8 +40,8 @@ + +- /* __longjmp(__jmp_buf buf, int val) */ ++ /* __longjmp_ia64_elilo(__jmp_buf_ia64_elilo buf, int val) */ + + .text +- .global longjmp +- .proc longjmp +-longjmp: ++ .global longjmp_ia64_elilo ++ .proc longjmp_ia64_elilo ++longjmp_ia64_elilo: + alloc r8=ar.pfs,2,1,0,0 +@@ -161,2 +161,2 @@ longjmp: + br.ret.dptk.few rp +- .endp longjmp ++ .endp longjmp_ia64_elilo +diff --git a/ia64/setjmp.S b/ia64/setjmp.S +index 4c83d03..57f5542 100644 +--- a/ia64/setjmp.S ++++ b/ia64/setjmp.S +@@ -70,14 +70,14 @@ + .text +- .global setjmp +- .proc setjmp +-setjmp: ++ .global setjmp_ia64_elilo ++ .proc setjmp_ia64_elilo ++setjmp_ia64_elilo: + alloc r8=ar.pfs,2,0,0,0 + mov in1=1 +- br.cond.sptk.many __sigsetjmp +- .endp setjmp ++ br.cond.sptk.many __sigsetjmp_ia64_elilo ++ .endp setjmp_ia64_elilo + +- /* __sigsetjmp(__jmp_buf buf, int savemask) */ ++ /* __sigsetjmp_ia64_elilo(__jmp_buf buf, int savemask) */ + +- .proc __sigsetjmp +-__sigsetjmp: ++ .proc __sigsetjmp_ia64_elilo ++__sigsetjmp_ia64_elilo: + //.prologue ASM_UNW_PRLG_RP|ASM_UNW_PRLG_PFS, ASM_UNW_PRLG_GRSAVE(2) +@@ -173,2 +173,2 @@ __sigsetjmp: + +- .endp __sigsetjmp ++ .endp __sigsetjmp_ia64_elilo +diff --git a/ia64/setjmp.h b/ia64/setjmp.h +index 91bbfc1..f9e654d 100644 +--- a/ia64/setjmp.h ++++ b/ia64/setjmp.h +@@ -24,5 +24,5 @@ + /* the __jmp_buf element type should be __float80 per ABI... */ +-typedef long jmp_buf[_JBLEN] __attribute__ ((aligned (16))); /* guarantees 128-bit alignment! */ ++typedef long jmp_buf_ia64_elilo[_JBLEN] __attribute__ ((aligned (16))); /* guarantees 128-bit alignment! */ + +-extern int setjmp (jmp_buf __env); +-extern void longjmp (jmp_buf __env, int __val); ++extern int setjmp_ia64_elilo (jmp_buf_ia64_elilo __env); ++extern void longjmp_ia64_elilo (jmp_buf_ia64_elilo __env, int __val); |