public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: sys-boot/elilo/, sys-boot/elilo/files/
@ 2015-12-28 19:13 Mike Frysinger
  0 siblings, 0 replies; 3+ messages in thread
From: Mike Frysinger @ 2015-12-28 19:13 UTC (permalink / raw
  To: gentoo-commits

commit:     b6344f771c7953a9cda0765ea27e701c117f2cd1
Author:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Mon Dec 28 19:07:27 2015 +0000
Commit:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Mon Dec 28 19:07:27 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b6344f77

sys-boot/elilo: fix elilo script error #299665

 sys-boot/elilo/elilo-3.16.ebuild                 |  2 ++
 sys-boot/elilo/files/elilo-3.16-elilo-loop.patch | 15 +++++++++++++++
 2 files changed, 17 insertions(+)

diff --git a/sys-boot/elilo/elilo-3.16.ebuild b/sys-boot/elilo/elilo-3.16.ebuild
index cefd571..472488d 100644
--- a/sys-boot/elilo/elilo-3.16.ebuild
+++ b/sys-boot/elilo/elilo-3.16.ebuild
@@ -30,6 +30,8 @@ src_unpack() {
 }
 
 src_prepare() {
+	epatch "${FILESDIR}"/${PN}-3.16-elilo-loop.patch #299665
+
 	# The patches Debian had were merged upstream.
 	#epatch debian/patches/*.diff
 

diff --git a/sys-boot/elilo/files/elilo-3.16-elilo-loop.patch b/sys-boot/elilo/files/elilo-3.16-elilo-loop.patch
new file mode 100644
index 0000000..b574c29
--- /dev/null
+++ b/sys-boot/elilo/files/elilo-3.16-elilo-loop.patch
@@ -0,0 +1,15 @@
+https://bugs.gentoo.org/299665
+
+patch by Dennis Schridde <devurandom@gmx.net>
+
+--- a/debian/elilo.sh
++++ b/debian/elilo.sh
+@@ -321,6 +321,8 @@
+ 
+ mnt()
+ {
++    local loop
++
+     ## we can even create bootstrap filesystem images directly if you
+     ## ever wanted too.
+     if [ -f "$boot" ] ; then


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-boot/elilo/, sys-boot/elilo/files/
@ 2018-10-01 22:35 Sergei Trofimovich
  0 siblings, 0 replies; 3+ messages in thread
From: Sergei Trofimovich @ 2018-10-01 22:35 UTC (permalink / raw
  To: gentoo-commits

commit:     e8e25b692b8ae413127a7766ae5c66461b33a864
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Mon Oct  1 22:34:49 2018 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Mon Oct  1 22:35:31 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e8e25b69

sys-boot/elilo: fix build failure against gnu-efi-3.0.8

Build failed as:
> ./../fs/../strops.h:30:16: error: conflicting types for 'StrnCpy'
> extern CHAR16 *StrnCpy(OUT CHAR16 *dst, IN const CHAR16 *src, UINTN count);
>                 ^~~~~~~

Work it around by renaming local 'StrnCpy' definition to 'elilo_StrnCpy'.

Reported-by: Bill Glessner
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
Package-Manager: Portage-2.3.50, Repoman-2.3.11

 sys-boot/elilo/elilo-3.16-r3.ebuild                | 89 ++++++++++++++++++++++
 .../elilo/files/elilo-3.16-strncpy-clash.patch     | 23 ++++++
 2 files changed, 112 insertions(+)

diff --git a/sys-boot/elilo/elilo-3.16-r3.ebuild b/sys-boot/elilo/elilo-3.16-r3.ebuild
new file mode 100644
index 00000000000..de13af20f9a
--- /dev/null
+++ b/sys-boot/elilo/elilo-3.16-r3.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2018 Gentoo Authors
+# 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
+	"${FILESDIR}"/${PN}-3.16-strncpy-clash.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-strncpy-clash.patch b/sys-boot/elilo/files/elilo-3.16-strncpy-clash.patch
new file mode 100644
index 00000000000..fb2f6878be0
--- /dev/null
+++ b/sys-boot/elilo/files/elilo-3.16-strncpy-clash.patch
@@ -0,0 +1,23 @@
+gnu-efi-3.0.8 added StrnCpy. This caused conflict with elilo's definition:
+  ./../fs/../strops.h:30:16: error: conflicting types for 'StrnCpy'
+  extern CHAR16 *StrnCpy(OUT CHAR16 *dst, IN const CHAR16 *src, UINTN count);
+                  ^~~~~~~
+
+Work it around by always using private copy.
+
+Reported-by: Bill Glessner
+--- a/strops.h
++++ b/strops.h
+@@ -29,3 +29,4 @@
+ extern CHAR16 *StrChr(IN const CHAR16 *s, const CHAR16 c);
++#define StrnCpy elilo_StrnCpy
+ extern CHAR16 *StrnCpy(OUT CHAR16 *dst, IN const CHAR16 *src, UINTN count);
+ extern CHAR8 *StrnXCpy(OUT CHAR8 *dst, IN const CHAR16 *src, UINTN count);
+--- a/strops.c
++++ b/strops.c
+@@ -27,4 +27,6 @@
+ #include <efilib.h>
+ 
++#include "strops.h"
++
+ //#define CHAR_NULL    (CHAR16)'\0'


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-boot/elilo/, sys-boot/elilo/files/
@ 2020-09-27  8:31 Sergei Trofimovich
  0 siblings, 0 replies; 3+ messages in thread
From: Sergei Trofimovich @ 2020-09-27  8:31 UTC (permalink / raw
  To: gentoo-commits

commit:     d32794f6d9f1b9aafa7b89b9162eb1b7083252b6
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 27 08:31:35 2020 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sun Sep 27 08:31:52 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d32794f6

sys-boot/elilo: pass *FLAGS to eliloalt

The primary build target is a PE-EFI target.
But auxiliary binaries are native binaries.

Provide NATIVE_* variables to pass native opt flags.

Reported-by: Agostino Sarubbo
Closes: https://bugs.gentoo.org/744931
Package-Manager: Portage-3.0.8, Repoman-3.0.1
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 sys-boot/elilo/elilo-3.16-r4.ebuild         | 93 +++++++++++++++++++++++++++++
 sys-boot/elilo/files/elilo-3.16-FLAGS.patch | 19 ++++++
 2 files changed, 112 insertions(+)

diff --git a/sys-boot/elilo/elilo-3.16-r4.ebuild b/sys-boot/elilo/elilo-3.16-r4.ebuild
new file mode 100644
index 00000000000..c4cd5a90dd8
--- /dev/null
+++ b/sys-boot/elilo/elilo-3.16-r4.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2020 Gentoo Authors
+# 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
+	"${FILESDIR}"/${PN}-3.16-strncpy-clash.patch
+	"${FILESDIR}"/${PN}-3.16-FLAGS.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)" \
+		OBJCOPY="$(tc-getOBJCOPY)" \
+		HOSTARCH=${iarch} \
+		ARCH=${iarch} \
+		EFIINC="${SYSROOT}${EPREFIX}/usr/include/efi" \
+		GNUEFILIB="${libdir}" \
+		EFILIB="${libdir}" \
+		EFICRT0="${libdir}" \
+		NATIVE_CFLAGS="${CFLAGS}" \
+		NATIVE_LDFLAGS="${LDFLAGS}"
+}
+
+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-FLAGS.patch b/sys-boot/elilo/files/elilo-3.16-FLAGS.patch
new file mode 100644
index 00000000000..a77e44d0b18
--- /dev/null
+++ b/sys-boot/elilo/files/elilo-3.16-FLAGS.patch
@@ -0,0 +1,19 @@
+eliloalt is a rare native tool. Allow user to explicitly pass
+standart optimization flags via
+    $ make NATIIVE_CFLAGS=${CFLAGS} NATIVE_LDFLAGS
+https://bugs.gentoo.org/744931
+--- a/tools/Makefile
++++ b/tools/Makefile
+@@ -42,10 +42,10 @@ all: $(TARGET)
+ # redefine local rule (we build a Linux/ia64 binary here)
+ #
+ %.o: %.c 
+-	$(CC) $(OPTIMFLAGS) $(DEBUGFLAGS) -c $< -o $@
++	$(CC) $(OPTIMFLAGS) $(NATIVE_CFLAGS) $(DEBUGFLAGS) -c $< -o $@
+ 
+ $(TARGET):  %:%.o 
+-	$(CC) -o $@ $(OPTIMFLAGS) $(DEBUGFLAGS) $^
++	$(CC) -o $@ $(OPTIMFLAGS) $(NATIVE_CFLAGS) $(NATIVE_LDFLAGS) $(DEBUGFLAGS) $^
+ 
+ clean:
+ 	$(RM) -f $(TARGET) $(FILES)


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2020-09-27  8:32 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-10-01 22:35 [gentoo-commits] repo/gentoo:master commit in: sys-boot/elilo/, sys-boot/elilo/files/ Sergei Trofimovich
  -- strict thread matches above, loose matches on Subject: below --
2020-09-27  8:31 Sergei Trofimovich
2015-12-28 19:13 Mike Frysinger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox