commit:     3c7e26f26d949b30b0cecbea5f9706591d191d34
Author:     Brahmajit Das <brahmajit.xyz <AT> gmail <DOT> com>
AuthorDate: Wed Apr 24 13:23:24 2024 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Wed Apr 24 17:10:49 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3c7e26f2

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 <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/36397
Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 dev-scheme/elk/elk-3.99.8-r2.ebuild                | 45 ++++++++++++++++++++++
 .../elk/files/elk-3.99.8-c99-build-fix.patch       | 33 ++++++++++++++++
 2 files changed, 78 insertions(+)

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
+  */

Reply via email to