summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrahmajit Das <brahmajit.xyz@gmail.com>2024-04-24 13:23:24 +0000
committerMaciej Barć <xgqt@gentoo.org>2024-04-24 19:10:49 +0200
commit3c7e26f26d949b30b0cecbea5f9706591d191d34 (patch)
tree986fec64aef72b9b0bc75c86f4cfe4e096dd081b /dev-scheme
parentsys-apps/polychromatic: sync live 9999 version (diff)
downloadgentoo-3c7e26f26d949b30b0cecbea5f9706591d191d34.tar.gz
gentoo-3c7e26f26d949b30b0cecbea5f9706591d191d34.tar.bz2
gentoo-3c7e26f26d949b30b0cecbea5f9706591d191d34.zip
dev-scheme/elk: dev-scheme/elk: Fix passing of incompatible pointer type
And other C99 build fixes, along with updating EAPI 7 -> 8 Closes: https://bugs.gentoo.org/928675 Signed-off-by: Brahmajit Das <brahmajit.xyz@gmail.com> Closes: https://github.com/gentoo/gentoo/pull/36397 Signed-off-by: Maciej Barć <xgqt@gentoo.org>
Diffstat (limited to 'dev-scheme')
-rw-r--r--dev-scheme/elk/elk-3.99.8-r2.ebuild45
-rw-r--r--dev-scheme/elk/files/elk-3.99.8-c99-build-fix.patch33
2 files changed, 78 insertions, 0 deletions
diff --git a/dev-scheme/elk/elk-3.99.8-r2.ebuild b/dev-scheme/elk/elk-3.99.8-r2.ebuild
new file mode 100644
index 000000000000..218b1be74615
--- /dev/null
+++ b/dev-scheme/elk/elk-3.99.8-r2.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Scheme implementation designed to be embeddable extension to C/C++ applications"
+HOMEPAGE="http://sam.zoy.org/elk/"
+SRC_URI="http://sam.zoy.org/elk/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-implicit-int-incompat-ptr.patch
+ "${FILESDIR}"/${P}-implicit-function.patch
+ "${FILESDIR}"/${P}-c99-build-fix.patch
+)
+
+src_configure() {
+ econf --disable-static
+}
+
+src_compile() {
+ # parallel build is broken
+ emake -j1
+}
+
+# tests are run automatically during make and fail with default src_test
+src_test() {
+ echo "Tests already run during compile"
+}
+
+src_install() {
+ # parallel install is broken
+ emake -j1 DESTDIR="${D}" \
+ docsdir="${EPREFIX}"/usr/share/doc/${PF} \
+ examplesdir="${EPREFIX}"/usr/share/doc/${PF}/examples \
+ install
+ einstalldocs
+ docompress -x /usr/share/doc/${PF}
+
+ # no static archives
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/dev-scheme/elk/files/elk-3.99.8-c99-build-fix.patch b/dev-scheme/elk/files/elk-3.99.8-c99-build-fix.patch
new file mode 100644
index 000000000000..d29ef92d911f
--- /dev/null
+++ b/dev-scheme/elk/files/elk-3.99.8-c99-build-fix.patch
@@ -0,0 +1,33 @@
+https://bugs.gentoo.org/928675
+--- a/lib/xwidgets/xaw/list.c
++++ b/lib/xwidgets/xaw/list.c
+@@ -2,15 +2,15 @@
+ #include <X11/Xaw/List.h>
+
+
+-static const char **Get_List (Object x) {
++static char **Get_List (Object x) {
+ register int i, n;
+ register char *s;
+- register const char **l;
++ register char **l;
+ Alloca_Begin;
+
+ Check_List (x);
+ n = Fast_Length (x);
+- l = (const char **)XtMalloc ((n+1) * sizeof (char *));
++ l = (char **)XtMalloc ((n+1) * sizeof (char *));
+ for (i = 0; i < n; i++, x = Cdr (x)) {
+ Get_Strsym_Stack (Car (x), s);
+ l[i] = XtNewString (s);
+--- a/include/extern.h
++++ b/include/extern.h
+@@ -442,7 +442,7 @@ extern Object P_String_Fill (Object, Object);
+ extern Object P_Substringp (Object, Object);
+ extern Object P_CI_Substringp (Object, Object);
+ extern int String_Getc (Object);
+-extern void String_Ungetc (Object, register int);
++extern void String_Ungetc (Object, int);
+
+ /* Symbols, variables, frequently used Scheme objects
+ */