commit:     a1392fec2498c7ac20c7af05ce143f6a767ef6f0
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Nov  7 07:18:11 2019 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Nov  7 07:18:11 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a1392fec

sys-boot/syslinux: Revert "Drop old (EAPI 0)"

Removed one version too many.

Reverts: c2bee80a1c812e65f094acd3861c6a00b279f56d
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 sys-boot/syslinux/Manifest                        |  2 +
 sys-boot/syslinux/files/syslinux-4.05-nopie.patch | 12 ++++
 sys-boot/syslinux/syslinux-4.07.ebuild            | 70 +++++++++++++++++++
 sys-boot/syslinux/syslinux-5.10.ebuild            | 82 +++++++++++++++++++++++
 4 files changed, 166 insertions(+)

diff --git a/sys-boot/syslinux/Manifest b/sys-boot/syslinux/Manifest
index d67d42371b9..f247daa7748 100644
--- a/sys-boot/syslinux/Manifest
+++ b/sys-boot/syslinux/Manifest
@@ -1,2 +1,4 @@
+DIST syslinux-4.07.tar.bz2 5761877 BLAKE2B 
2fe28f268f896601a045564b1e3dde618d57ebf4098d007f7e45119ad019fa88221658608f88e55d4d09cd297140427cdeaf03a40a2341d732064a0630fe92b5
 SHA512 
8efbd14803ec74c5ee699a754b4727e4b975c08afd4dbb39f4b7ccdb90743e4459cd4609c6f1065c7b7efaa26c9d465806254891795d363758f35a2fe5704ae5
+DIST syslinux-5.10.tar.xz 5315660 BLAKE2B 
19d6861bb6220fe57e12d8d6118d37b197c3c771e4d2e7a51ce7db39219e3c837e6d1543d7a3927820f3a34da34ce849f9badbaf9cd83cb5ee24fd5ed7b705f2
 SHA512 
56422e14b4aa53ca1a5811da0582dbbb349aa52b9e78868bbedc24c67ef2420c4d0ac63fd68c7f0adc2c22606196276265d503b5b6f9d3d796d9ce42845bbdb5
 DIST syslinux-6.03.tar.xz 6855224 BLAKE2B 
9caccf8bed4e3c3e87393c9dc8f3b3d267c14469bbf8135a648ea41d8a43a4aedbf2b007c6b9a6853de8866152f5bc33e5ea85fca1db86c5f2fac88d97189b0f
 SHA512 
dd2b2916962b9e93bc1e714182e3ca2a727a229b8afabe913050bcfdd43ee2af51ee3acf79121d8c20caf434583efaa7f3196871e0e07c04d82191323a50fe31
 DIST syslinux-6.04-pre1.tar.xz 5283272 BLAKE2B 
800e5977ed13b26a1756c33d8625e850631b642e26a86e3328196ddd998596693c3a26db0ada4c0ba78a4ba692a1cc01886b6eb693d877ddafcfb325ecdeb639
 SHA512 
7927dd39be8e2dcf4138a6fea33def67d19d938379d694f15b48fdd2f5924c028b7a9e7bd71d0c7c6630c203e9e2a54296628e530632ad5e6f55b1ebefe8fc98

diff --git a/sys-boot/syslinux/files/syslinux-4.05-nopie.patch 
b/sys-boot/syslinux/files/syslinux-4.05-nopie.patch
new file mode 100644
index 00000000000..b50b6b47689
--- /dev/null
+++ b/sys-boot/syslinux/files/syslinux-4.05-nopie.patch
@@ -0,0 +1,12 @@
+diff -ur a/mk/com32.mk b/mk/com32.mk
+--- a/mk/com32.mk      2011-12-09 19:28:17.000000000 +0100
++++ b/mk/com32.mk      2011-12-18 18:22:11.032342645 +0100
+@@ -24,6 +24,8 @@
+ GCCOPT += $(call gcc_ok,-freg-struct-return,)
+ GCCOPT += -mregparm=3 -DREGPARM=3 -march=i386 -Os
+ GCCOPT += $(call gcc_ok,-fPIE,-fPIC)
++GCCOPT += $(call gcc_ok,-nopie,)
++GCCOPT += $(call gcc_ok,-fno-pie,)
+ GCCOPT += $(call gcc_ok,-fno-exceptions,)
+ GCCOPT += $(call gcc_ok,-fno-asynchronous-unwind-tables,)
+ GCCOPT += $(call gcc_ok,-fno-strict-aliasing,)

diff --git a/sys-boot/syslinux/syslinux-4.07.ebuild 
b/sys-boot/syslinux/syslinux-4.07.ebuild
new file mode 100644
index 00000000000..021f559c7eb
--- /dev/null
+++ b/sys-boot/syslinux/syslinux-4.07.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=0
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="SYSLINUX, PXELINUX, ISOLINUX, EXTLINUX and MEMDISK bootloaders"
+HOMEPAGE="https://syslinux.zytor.com/";
+SRC_URI="https://www.kernel.org/pub/linux/utils/boot/syslinux/${PV:0:1}.xx/${P/_/-}.tar.bz2";
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="-* amd64 x86"
+IUSE="custom-cflags"
+
+RDEPEND="sys-fs/mtools
+               dev-perl/Crypt-PasswdMD5
+               dev-perl/Digest-SHA1"
+DEPEND="${RDEPEND}
+       dev-lang/nasm
+       virtual/os-headers"
+
+S=${WORKDIR}/${P/_/-}
+
+# This ebuild is a departure from the old way of rebuilding everything in 
syslinux
+# This departure is necessary since hpa doesn't support the rebuilding of 
anything other
+# than the installers.
+
+# removed all the unpack/patching stuff since we aren't rebuilding the core 
stuff anymore
+
+src_unpack() {
+       unpack ${A}
+       cd "${S}"
+       # Fix building on hardened
+       epatch "${FILESDIR}"/${PN}-4.05-nopie.patch
+
+       rm -f gethostip #bug 137081
+
+       # Don't prestrip or override user LDFLAGS, bug #305783
+       local SYSLINUX_MAKEFILES="extlinux/Makefile linux/Makefile 
mtools/Makefile \
+               sample/Makefile utils/Makefile"
+       sed -i ${SYSLINUX_MAKEFILES} -e '/^LDFLAGS/d' || die "sed failed"
+
+       if use custom-cflags; then
+               sed -i ${SYSLINUX_MAKEFILES} \
+                       -e 's|-g -Os||g' \
+                       -e 's|-Os||g' \
+                       -e 's|CFLAGS[[:space:]]\+=|CFLAGS +=|g' \
+                       || die "sed custom-cflags failed"
+       else
+               QA_FLAGS_IGNORED="
+                       /sbin/extlinux
+                       /usr/bin/memdiskfind
+                       /usr/bin/gethostip
+                       /usr/bin/isohybrid
+                       /usr/bin/syslinux
+                       "
+       fi
+
+}
+
+src_compile() {
+       emake CC="$(tc-getCC)" installer || die
+}
+
+src_install() {
+       emake INSTALLSUBDIRS=utils INSTALLROOT="${D}" MANDIR=/usr/share/man 
install || die
+       dodoc README NEWS doc/*.txt || die
+}

diff --git a/sys-boot/syslinux/syslinux-5.10.ebuild 
b/sys-boot/syslinux/syslinux-5.10.ebuild
new file mode 100644
index 00000000000..bc99bbf6c4e
--- /dev/null
+++ b/sys-boot/syslinux/syslinux-5.10.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="SYSLINUX, PXELINUX, ISOLINUX, EXTLINUX and MEMDISK bootloaders"
+HOMEPAGE="https://www.syslinux.org/";
+SRC_URI="https://www.kernel.org/pub/linux/utils/boot/syslinux/${PV:0:1}.xx/${P/_/-}.tar.xz";
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="-* amd64 x86"
+IUSE="custom-cflags"
+
+RDEPEND="sys-fs/mtools
+               dev-perl/Crypt-PasswdMD5
+               dev-perl/Digest-SHA1"
+DEPEND="${RDEPEND}
+       dev-lang/nasm
+       virtual/os-headers"
+
+S=${WORKDIR}/${P/_/-}
+
+# This ebuild is a departure from the old way of rebuilding everything in 
syslinux
+# This departure is necessary since hpa doesn't support the rebuilding of 
anything other
+# than the installers.
+
+# These are executables which come precompiled and are run by the boot loader
+QA_PREBUILT="usr/share/${PN}/*.c32"
+
+# removed all the unpack/patching stuff since we aren't rebuilding the core 
stuff anymore
+
+src_prepare() {
+       # Fix building on hardened
+       epatch "${FILESDIR}"/${PN}-4.05-nopie.patch
+
+       rm -f gethostip #bug 137081
+
+       # Don't prestrip or override user LDFLAGS, bug #305783
+       local SYSLINUX_MAKEFILES="extlinux/Makefile linux/Makefile 
mtools/Makefile \
+               sample/Makefile utils/Makefile"
+       sed -i ${SYSLINUX_MAKEFILES} -e '/^LDFLAGS/d' || die "sed failed"
+
+       if use custom-cflags; then
+               sed -i ${SYSLINUX_MAKEFILES} \
+                       -e 's|-g -Os||g' \
+                       -e 's|-Os||g' \
+                       -e 's|CFLAGS[[:space:]]\+=|CFLAGS +=|g' \
+                       || die "sed custom-cflags failed"
+       else
+               QA_FLAGS_IGNORED="
+                       /sbin/extlinux
+                       /usr/bin/memdiskfind
+                       /usr/bin/gethostip
+                       /usr/bin/isohybrid
+                       /usr/bin/syslinux
+                       "
+       fi
+
+}
+
+src_compile() {
+       emake CC="$(tc-getCC)" installer
+}
+
+src_install() {
+       emake INSTALLSUBDIRS=utils INSTALLROOT="${D}" MANDIR=/usr/share/man 
install
+       dodoc README NEWS doc/*.txt
+}
+
+pkg_postinst() {
+       # print warning for users upgrading from the previous stable version
+       if has 4.07 ${REPLACING_VERSIONS}; then
+               ewarn "syslinux now uses dynamically linked ELF executables. 
Before you reboot,"
+               ewarn "ensure that needed dependencies are fulfilled. For 
example, run from your"
+               ewarn "syslinux directory:"
+               ewarn
+               ewarn "LD_LIBRARY_PATH=\".\" ldd menu.c32"
+       fi
+}

Reply via email to