app-misc/linux-logo: set CC and flags directly in configure
authorBernard Cafarelli <voyageur@gentoo.org>
Thu, 23 Apr 2020 21:44:26 +0000 (23:44 +0200)
committerBernard Cafarelli <voyageur@gentoo.org>
Thu, 23 Apr 2020 21:55:47 +0000 (23:55 +0200)
Previously, this was set only from src_compile(), which can cause
incorrcet flags being added at configure run (custom script)

Closes: https://bugs.gentoo.org/718370
Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Bernard Cafarelli <voyageur@gentoo.org>
app-misc/linux-logo/files/linux-logo-5.11-configure.patch [new file with mode: 0644]
app-misc/linux-logo/linux-logo-5.11-r5.ebuild [new file with mode: 0644]

diff --git a/app-misc/linux-logo/files/linux-logo-5.11-configure.patch b/app-misc/linux-logo/files/linux-logo-5.11-configure.patch
new file mode 100644 (file)
index 0000000..a699db0
--- /dev/null
@@ -0,0 +1,78 @@
+diff -Naur linux_logo-5.11.orig/configure linux_logo-5.11/configure
+--- linux_logo-5.11.orig/configure     2010-02-19 23:47:46.000000000 +0100
++++ linux_logo-5.11/configure  2020-04-23 23:35:47.468728737 +0200
+@@ -41,31 +41,8 @@
+    XGETTEXT=xgettext
+ fi
+-which gcc
+-GCC_MISSING=$?
+-
+-if [ $GCC_MISSING -eq 1 ]; then
+-   which cc
+-   CC_MISSING=$?
+-   if [ $CC_MISSING -eq 1 ]; then
+-      echo "C compiler not found!"
+-   else
+-      CC=cc   
+-   fi
+-else
+-   CC=gcc
+-fi
+-
+ LIBSYSINFO=libsysinfo-0.2.2
+-LDFLAGS=""
+-
+-if [ $CC = gcc ]; then
+-   CFLAGS="-Wall -O2"
+-else
+-   CFLAGS="-O2"
+-fi   
+-
+ $CROSS$CC $CFLAGS -c intl_test.c 
+ INTL_MISSING=$?
+diff -Naur linux_logo-5.11.orig/libsysinfo-0.2.2/configure linux_logo-5.11/libsysinfo-0.2.2/configure
+--- linux_logo-5.11.orig/libsysinfo-0.2.2/configure    2009-06-05 20:53:44.000000000 +0200
++++ linux_logo-5.11/libsysinfo-0.2.2/configure 2020-04-23 23:39:32.874812532 +0200
+@@ -15,39 +15,6 @@
+ PREFIX=/usr/local
+ INSTALL=`which install`
+-which gcc
+-GCC_MISSING=$?
+-
+-if [ $GCC_MISSING -eq 1 ]; then
+-   which cc
+-   CC_MISSING=$?
+-   if [ $CC_MISSING -eq 1 ]; then
+-      echo "C compiler not found!"
+-   else
+-      CC=cc   
+-   fi
+-else
+-   CC=gcc
+-fi
+-
+-which ar
+-AR_MISSING=$?
+-
+-if [ $AR_MISSING -eq 0 ]; then
+-   AR=ar
+-fi
+-
+-
+-if [ $OS = SunOS ]; then
+-   AR=/usr/ccs/bin/ar
+-fi
+-   
+-if [ $CC = gcc ]; then
+-   CFLAGS="-Wall -O2"
+-else
+-   CFLAGS="-O2"
+-fi   
+-
+ LIBSYSINFO_INCLUDE="-I.."
+ LFLAGS=""
diff --git a/app-misc/linux-logo/linux-logo-5.11-r5.ebuild b/app-misc/linux-logo/linux-logo-5.11-r5.ebuild
new file mode 100644 (file)
index 0000000..f63e15d
--- /dev/null
@@ -0,0 +1,80 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs systemd
+
+MY_P=${PN/-/_}-${PV}
+DESCRIPTION="A utility that displays an ANSI/ASCII logo and some system information"
+HOMEPAGE="http://www.deater.net/weave/vmwprod/linux_logo/"
+SRC_URI="http://www.deater.net/weave/vmwprod/linux_logo/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="nls"
+
+RDEPEND="nls? ( virtual/libintl )"
+DEPEND="${RDEPEND}"
+BDEPEND="nls? ( sys-devel/gettext )"
+
+PATCHES=(
+       "${FILESDIR}"/"${P}"-add-aarch64-support.patch
+       "${FILESDIR}"/"${P}"-configure.patch
+)
+
+DOCS=( BUGS README README.CUSTOM_LOGOS TODO USAGE LINUX_LOGO.FAQ )
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+       cp "${FILESDIR}"/logo-config "${S}/logo_config" || die
+       cp "${FILESDIR}"/linux_logo_creator "${S}/" || die
+       cp "${FILESDIR}"/linux-logo.service "${S}/" || die
+       cp "${FILESDIR}"/gentoo-*.logo "${S}"/logos/ || die
+
+       # Remove warn_unused_result warning
+       sed -i -e 's/FILE \*fff;/FILE \*fff;\n   char *stemp;/' \
+               -e 's/fgets/stemp=fgets/' "${S}"/load_logo.c || die
+       default
+}
+
+src_configure() {
+       ARCH="" CC="$(tc-getCC)" AR="$(tc-getAR)" LDFLAGS="${LDFLAGS}" \
+               ./configure --prefix="${ED}"/usr || die
+}
+
+src_install() {
+       default
+
+       dobin "${FILESDIR}"/linux_logo_creator
+       newinitd "${FILESDIR}"/${PN}.init.d ${PN}
+       newconfd "${FILESDIR}"/${P}.conf ${PN}
+
+       # systemd support
+       systemd_newunit "${FILESDIR}/linux-logo.service" "linux-logo.service"
+}
+
+pkg_postinst() {
+       echo
+       elog "Linux_logo ebuild for Gentoo comes with two Gentoo logos."
+       elog ""
+       elog "To display the first Gentoo logo type: linux_logo -L gentoo"
+       elog "To display the second Gentoo logo type: linux_logo -L gentoo-alt"
+       elog "To display all the logos available type: linux_logo -L list."
+       elog ""
+       elog "To start linux_logo on boot, please type:"
+       elog "   rc-update add linux-logo default"
+       elog "or for systemd"
+       elog "   systemctl enable linux-logo.service"
+       elog "which uses the settings found in"
+       elog "   /etc/conf.d/linux-logo"
+       echo
+}
+
+pkg_prerm() {
+       # Restore issue files
+       mv /etc/issue.linux-logo.backup /etc/issue 2> /dev/null
+       mv /etc/issue.net.linux-logo.backup /etc/issue.net 2> /dev/null
+}