commit:     cb8174bfa872071c73e3c5c6ea1e8ac8b83321b9
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jun 15 19:53:16 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jun 15 19:53:16 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cb8174bf

x11-plugins/asclock: fix build with lld

Closes: https://bugs.gentoo.org/732412
Signed-off-by: Sam James <sam <AT> gentoo.org>

 x11-plugins/asclock/asclock-2.0.12-r4.ebuild       | 74 ++++++++++++++++++++++
 .../asclock-2.0.12-fix-implicit-func-decl.patch    | 13 ++++
 2 files changed, 87 insertions(+)

diff --git a/x11-plugins/asclock/asclock-2.0.12-r4.ebuild 
b/x11-plugins/asclock/asclock-2.0.12-r4.ebuild
new file mode 100644
index 000000000000..4d5b8555b83d
--- /dev/null
+++ b/x11-plugins/asclock/asclock-2.0.12-r4.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo toolchain-funcs
+
+DESCRIPTION="Clock applet for AfterStep"
+HOMEPAGE="http://tigr.net/afterstep/applets/";
+SRC_URI="http://www.tigr.net/afterstep/download/asclock/${P}.tar.gz";
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~mips ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris"
+
+DEPEND="x11-libs/libXpm"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-gcc41.patch
+       "${FILESDIR}"/${P}-fno-common.patch
+       "${FILESDIR}"/${P}-fix-implicit-func-decl.patch
+)
+
+src_prepare() {
+       default
+
+       ln -s themes/classic default_theme || die
+}
+
+src_configure() {
+       :;
+}
+
+src_compile() {
+       local x
+
+       # Will break Solaris
+       [[ ${CHOST} == *-linux-gnu ]] && CFLAGS="${CFLAGS} \
+               -Dlinux \
+               -D_POSIX_C_SOURCE=199309L \
+               -D_POSIX_SOURCE \
+               -D_XOPEN_SOURCE"
+
+       for x in asclock parser symbols config; do
+               edo $(tc-getCC) \
+                       ${CPPFLAGS} ${CFLAGS} ${ASFLAGS} \
+                       -I"${EPREFIX}"/usr/include \
+                       -D_BSD_SOURCE \
+                       -D_SVID_SOURCE \
+                       -DFUNCPROTO=15 \
+                       -DNARROWPROTO \
+                       -c -o ${x}.o ${x}.c
+       done
+
+       edo $(tc-getCC) \
+               ${LDFLAGS} \
+               -o asclock \
+               asclock.o parser.o symbols.o config.o \
+               -L"${ESYSROOT}/usr/$(get_libdir)" \
+               -L"${ESYSROOT}"/usr/lib/X11 \
+               -lXpm -lXext -lX11
+}
+
+src_install() {
+       dobin asclock
+       local themesdir="/usr/share/${PN}/themes"
+       insinto ${themesdir}
+       doins -r themes/*
+       dodoc README README.THEMES TODO
+       cd "${ED}"/${themesdir} || die
+       rm Freeamp/Makefile{,.*} || die
+       ln -s classic default_theme || die
+}

diff --git 
a/x11-plugins/asclock/files/asclock-2.0.12-fix-implicit-func-decl.patch 
b/x11-plugins/asclock/files/asclock-2.0.12-fix-implicit-func-decl.patch
new file mode 100644
index 000000000000..b0379a396129
--- /dev/null
+++ b/x11-plugins/asclock/files/asclock-2.0.12-fix-implicit-func-decl.patch
@@ -0,0 +1,13 @@
+diff --git a/asclock.h b/asclock.h
+index 7580df8..ec6883b 100644
+--- a/asclock.h
++++ b/asclock.h
+@@ -137,6 +137,8 @@ extern char *hour_map;
+ extern char *min_map;
+ extern char *sec_map;
+ 
++int mytime();
++
+ /********* symbols.c ***************/
+ void init_symbols();
+ void postconfig();

Reply via email to