commit:     c65a1ab094bb97a6403ad018d8ce0c8b253e5006
Author:     Robin H. Johnson <robbat2 <AT> gentoo <DOT> org>
AuthorDate: Sun Jun 16 19:15:35 2019 +0000
Commit:     Robin H. Johnson <robbat2 <AT> gentoo <DOT> org>
CommitDate: Sun Jun 16 19:17:14 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c65a1ab0

sys-boot/mbr-gpt: EAPI7, fixups

This is a very niche package, but still useful and needed to boot some
old hardware.

Fixes: https://bugs.gentoo.org/429396
Fixes: https://bugs.gentoo.org/371333
Package-Manager: Portage-2.3.67, Repoman-2.3.12
Signed-off-by: Robin H. Johnson <robbat2 <AT> gentoo.org>

 ...br-gpt-0.0.1.ebuild => mbr-gpt-0.0.1-r1.ebuild} | 32 ++++++++++++++--------
 sys-boot/mbr-gpt/metadata.xml                      |  4 +++
 2 files changed, 24 insertions(+), 12 deletions(-)

diff --git a/sys-boot/mbr-gpt/mbr-gpt-0.0.1.ebuild 
b/sys-boot/mbr-gpt/mbr-gpt-0.0.1-r1.ebuild
similarity index 64%
rename from sys-boot/mbr-gpt/mbr-gpt-0.0.1.ebuild
rename to sys-boot/mbr-gpt/mbr-gpt-0.0.1-r1.ebuild
index 034062e6513..915fc0e5dd5 100644
--- a/sys-boot/mbr-gpt/mbr-gpt-0.0.1.ebuild
+++ b/sys-boot/mbr-gpt/mbr-gpt-0.0.1-r1.ebuild
@@ -1,30 +1,36 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=0
+EAPI=7
 
 inherit eutils flag-o-matic
 
 DESCRIPTION="An MBR that can handle BIOS-based boot on GPT"
 MY_P="${PN}_${PV}"
-HOMEPAGE="http://aybabtu.com/mbr-gpt/";
-SRC_URI="http://aybabtu.com/mbr-gpt/${MY_P}.tar.gz";
-LICENSE="GPL-2"
+HOMEPAGE="https://web.archive.org/web/20080704173538/http://aybabtu.com/mbr-gpt/";
+SRC_URI="https://dev.gentoo.org/~robbat2/distfiles/${MY_P}.tar.gz";
+LICENSE="GPL-3"
 SLOT="0"
 # This should probably NEVER go to stable. It's crazy advanced dangerous magic.
 # It's also pure ASM, so not suitable for elsewhere anyway.
-KEYWORDS="~x86 ~amd64"
+# Please don't remove it, robbat2 has a box that depends on it for # booting!
+KEYWORDS="~amd64 ~x86"
 IUSE=""
 # It only depends on binutils/gcc/make, and doesn't link against libc even.
 DEPEND=""
 RDEPEND=""
 
 # It's a mostly an MBR block and it does use the executable stack.
-QA_WX_LOAD="usr/sbin/boot.elf"
+QA_WX_LOAD="usr/lib/$PN/boot.elf"
+QA_PRESTRIPPED="${QA_WX_LOAD}"
+QA_FLAGS_IGNORED="${QA_WX_LOAD}"
 
-src_unpack() {
-       unpack ${A}
-       cd "${S}"
+# Don't strip it either; this binary reboots your host!
+RESTRICT="binchecks strip"
+
+src_prepare() {
+       default
+       # Messy upstream
        emake clean
 
        # Need to build it 32-bit for the MBR
@@ -39,9 +45,11 @@ src_compile() {
 src_install() {
        # get_libdir is not correct here. We want this to go into a 32-bit 
library
        # location.
-       insinto /usr/lib/mbr-gpt/
+       insinto /usr/lib/$PN
        doins mbr
-       dosbin boot.elf
+       exeinto /usr/lib/$PN
+       exeopts -m 700
+       doexe boot.elf
        dodoc AUTHORS
 }
 

diff --git a/sys-boot/mbr-gpt/metadata.xml b/sys-boot/mbr-gpt/metadata.xml
index 9590fe15fc0..92a82843d1a 100644
--- a/sys-boot/mbr-gpt/metadata.xml
+++ b/sys-boot/mbr-gpt/metadata.xml
@@ -8,4 +8,8 @@
        <email>base-sys...@gentoo.org</email>
        <name>Gentoo Base System</name>
 </maintainer>
+<longdescription lang="en">
+       Bootable MBR including fake partition records, for legacy BIOS without 
any GPT support, and usable without hybrid disk layouts.
+       Install directly at the start of a disk, create GPT, ensure at least 
one partition has GUID set to BIOS Boot Partition 
(21686148-6449-6e6f-744e-656564454649).
+</longdescription>
 </pkgmetadata>

Reply via email to