summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-scheme')
-rw-r--r--dev-scheme/bigloo/bigloo-4.4c_p4-r5.ebuild (renamed from dev-scheme/bigloo/bigloo-4.4c_p4-r3.ebuild)5
-rw-r--r--dev-scheme/fibers/Manifest1
-rw-r--r--dev-scheme/fibers/fibers-1.2.0.ebuild39
-rw-r--r--dev-scheme/fibers/metadata.xml22
-rw-r--r--dev-scheme/goosh/goosh-1.3-r1.ebuild4
-rw-r--r--dev-scheme/guile-gnutls/Manifest1
-rw-r--r--dev-scheme/guile-gnutls/guile-gnutls-3.7.11-r1.ebuild41
-rw-r--r--dev-scheme/guile-gnutls/metadata.xml14
-rw-r--r--dev-scheme/guile-json/Manifest2
-rw-r--r--dev-scheme/guile-json/guile-json-4.7.3.ebuild (renamed from dev-scheme/guile-json/guile-json-4.7.0.ebuild)0
-rw-r--r--dev-scheme/guile-json/metadata.xml12
-rw-r--r--dev-scheme/guile-libyaml/guile-libyaml-20211124.ebuild9
-rw-r--r--dev-scheme/guile-ncurses/Manifest1
-rw-r--r--dev-scheme/guile-ncurses/guile-ncurses-3.1.ebuild74
-rw-r--r--dev-scheme/guile-ssh/Manifest2
-rw-r--r--dev-scheme/guile-ssh/files/guile-ssh-0.16.0-musl.patch10
-rw-r--r--dev-scheme/guile-ssh/files/guile-ssh-0.16.2-tests.patch18
-rw-r--r--dev-scheme/guile-ssh/guile-ssh-0.16.0-r1.ebuild8
-rw-r--r--dev-scheme/guile-ssh/guile-ssh-0.16.2.ebuild48
-rw-r--r--dev-scheme/guile-ssh/guile-ssh-0.16.3.ebuild48
-rw-r--r--dev-scheme/guile/Manifest2
-rw-r--r--dev-scheme/guile/files/guile-2-snarf.patch47
-rw-r--r--dev-scheme/guile/files/guile-2.0.14-darwin.patch38
-rw-r--r--dev-scheme/guile/files/guile-2.0.14-ia64-fix-crash-thread-context-switch.patch63
-rw-r--r--dev-scheme/guile/files/guile-3.0.8-configure-clang16.patch32
-rw-r--r--dev-scheme/guile/guile-2.0.14-r4.ebuild91
-rw-r--r--dev-scheme/guile/guile-3.0.8-r1.ebuild (renamed from dev-scheme/guile/guile-3.0.8.ebuild)20
-rw-r--r--dev-scheme/guile/guile-3.0.9.ebuild81
-rw-r--r--dev-scheme/guile/metadata.xml1
-rw-r--r--dev-scheme/mit-scheme/Manifest1
-rw-r--r--dev-scheme/mit-scheme/files/mit-scheme-11.2-implicit-int.patch19
-rw-r--r--dev-scheme/mit-scheme/metadata.xml1
-rw-r--r--dev-scheme/mit-scheme/mit-scheme-11.2.ebuild9
-rw-r--r--dev-scheme/mit-scheme/mit-scheme-12.1.ebuild76
-rw-r--r--dev-scheme/owl-lisp/Manifest1
-rw-r--r--dev-scheme/owl-lisp/owl-lisp-0.2.1.ebuild41
-rw-r--r--dev-scheme/racket/Manifest4
-rw-r--r--dev-scheme/racket/files/racket-8.4-ncurses.patch154
-rw-r--r--dev-scheme/racket/racket-8.6.ebuild4
-rw-r--r--dev-scheme/racket/racket-8.7.ebuild2
-rw-r--r--dev-scheme/racket/racket-8.8.ebuild (renamed from dev-scheme/racket/racket-8.4-r1.ebuild)71
-rw-r--r--dev-scheme/scm/files/scm-5.5.6-ncurses.patch11
-rw-r--r--dev-scheme/scm/scm-5.5.6-r4.ebuild8
-rw-r--r--dev-scheme/scsh-lib/Manifest2
-rw-r--r--dev-scheme/scsh-lib/files/scsh-lib-0.7-Makefile.in-LDFLAGS.patch18
-rw-r--r--dev-scheme/scsh-lib/metadata.xml25
-rw-r--r--dev-scheme/scsh-lib/scsh-lib-0.7_pre20160820.ebuild62
-rw-r--r--dev-scheme/skribilo/Manifest1
-rw-r--r--dev-scheme/skribilo/skribilo-0.10.0.ebuild78
-rw-r--r--dev-scheme/stklos/metadata.xml4
50 files changed, 769 insertions, 557 deletions
diff --git a/dev-scheme/bigloo/bigloo-4.4c_p4-r3.ebuild b/dev-scheme/bigloo/bigloo-4.4c_p4-r5.ebuild
index 9e7c5157fb76..c1d2c93aafbb 100644
--- a/dev-scheme/bigloo/bigloo-4.4c_p4-r3.ebuild
+++ b/dev-scheme/bigloo/bigloo-4.4c_p4-r5.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -188,6 +188,9 @@ src_install() {
fi
einstalldocs
+
+ # Remove static libs, bug #890820, #891041
+ find "${ED}" -name "*.a" -delete || die
}
pkg_postinst() {
diff --git a/dev-scheme/fibers/Manifest b/dev-scheme/fibers/Manifest
new file mode 100644
index 000000000000..fa9b8cd04f82
--- /dev/null
+++ b/dev-scheme/fibers/Manifest
@@ -0,0 +1 @@
+DIST fibers-1.2.0.tar.gz 104975 BLAKE2B d43175eeb03bf8ed1100e948423e0e7abb5ae1d859f3d4dd82f775b7b0ff477d99d1d2fffd9ccf0a1c19ab398f33eb1d7cefad30ba1991a63a63755ae38e6f07 SHA512 3113e287ab2b09c54c14a5c4d2b0330fcfc96281ec6f234655acadfb5a3c0a2872b602089e4fa025f42ba52749e71121062057029097f0957d71e97c0e4e9c71
diff --git a/dev-scheme/fibers/fibers-1.2.0.ebuild b/dev-scheme/fibers/fibers-1.2.0.ebuild
new file mode 100644
index 000000000000..ca3a3103affc
--- /dev/null
+++ b/dev-scheme/fibers/fibers-1.2.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Lightweight concurrency facility for Guile Scheme"
+HOMEPAGE="https://github.com/wingo/fibers/
+ https://github.com/wingo/fibers/wiki/Manual/"
+SRC_URI="https://github.com/wingo/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="LGPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+RESTRICT="strip"
+
+RDEPEND=">=dev-scheme/guile-2.1.7:="
+DEPEND="${RDEPEND}"
+
+# guile generates ELF files without use of C or machine code
+# It's a portage's false positive. bug #677600
+QA_PREBUILT='*[.]go'
+
+src_prepare() {
+ default
+
+ # http://debbugs.gnu.org/cgi/bugreport.cgi?bug=38112
+ find "${S}" -name "*.scm" -exec touch {} + || die
+
+ eautoreconf
+}
+
+src_install() {
+ default
+
+ find "${D}" -name "*.la" -delete || die
+}
diff --git a/dev-scheme/fibers/metadata.xml b/dev-scheme/fibers/metadata.xml
new file mode 100644
index 000000000000..c95b5f88b1d8
--- /dev/null
+++ b/dev-scheme/fibers/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+
+<pkgmetadata>
+ <maintainer type="project">
+ <email>scheme@gentoo.org</email>
+ <name>Gentoo Scheme Project</name>
+ </maintainer>
+ <longdescription>
+ Fibers is a Guile library that implements a a lightweight concurrency
+ facility, inspired by systems like Concurrent ML, Go, and Erlang. A fiber
+ is like a "goroutine" from the Go language: a lightweight thread-like
+ abstraction. Systems built with Fibers can scale up to millions of
+ concurrent fibers, tens of thousands of concurrent socket connections, and
+ many parallel cores. The Fibers library also provides Concurrent ML-like
+ channels for communication between fibers.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://gitlab.com/wingo/fibers/-/issues/</bugs-to>
+ <remote-id type="github">wingo/fibers</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-scheme/goosh/goosh-1.3-r1.ebuild b/dev-scheme/goosh/goosh-1.3-r1.ebuild
index 01bb323d6b44..a1f69d69f98d 100644
--- a/dev-scheme/goosh/goosh-1.3-r1.ebuild
+++ b/dev-scheme/goosh/goosh-1.3-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -9,7 +9,7 @@ SRC_URI="http://arglist.com/guile/${P}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~ppc x86"
+KEYWORDS="~amd64 ~ppc ~riscv x86"
IUSE=""
RDEPEND=">=dev-scheme/guile-1.6"
diff --git a/dev-scheme/guile-gnutls/Manifest b/dev-scheme/guile-gnutls/Manifest
new file mode 100644
index 000000000000..2759a66e202d
--- /dev/null
+++ b/dev-scheme/guile-gnutls/Manifest
@@ -0,0 +1 @@
+DIST guile-gnutls-3.7.11.tar.gz 684772 BLAKE2B 518d46fdc6f24cae03216205ffd010e45a9c38c6f8d0f6b7021df74308bb24706772174b6e8078057d20b06f7c81a4fe42b388c309ce463ad044f194ea33cbc6 SHA512 bdd7e0dc97939ef792facde0038062ffc4f6a8d2495eb57d08b774b774a4edd7259de46d3a86de2a36c0ed5027889ffa91f2edce2289e5932f16a421870693d7
diff --git a/dev-scheme/guile-gnutls/guile-gnutls-3.7.11-r1.ebuild b/dev-scheme/guile-gnutls/guile-gnutls-3.7.11-r1.ebuild
new file mode 100644
index 000000000000..e9ae1e1a51dd
--- /dev/null
+++ b/dev-scheme/guile-gnutls/guile-gnutls-3.7.11-r1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Guile-GnuTLS provides Guile bindings for the GnuTLS library"
+HOMEPAGE="https://gnutls.gitlab.io/guile/manual/
+ https://gitlab.com/gnutls/guile/"
+SRC_URI="https://gitlab.com/gnutls/guile/uploads/56e18069ab63ca67d61aecb6b2697ec1/${P}.tar.gz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+RESTRICT="strip"
+
+RDEPEND="
+ >=dev-scheme/guile-2.0.0:=
+ net-libs/gnutls:=[-guile(-)]
+"
+DEPEND="${RDEPEND}"
+
+# guile generates ELF files without use of C or machine code
+# It's a portage's false positive. bug #677600
+QA_PREBUILT='*[.]go'
+
+src_prepare() {
+ default
+
+ # http://debbugs.gnu.org/cgi/bugreport.cgi?bug=38112
+ find "${S}" -name "*.scm" -exec touch {} + || die
+}
+
+src_configure() {
+ econf --disable-srp-authentication # bug #894050
+}
+
+src_install() {
+ default
+
+ find "${ED}" -type f -name "*.la" -delete || die
+}
diff --git a/dev-scheme/guile-gnutls/metadata.xml b/dev-scheme/guile-gnutls/metadata.xml
new file mode 100644
index 000000000000..27e88176a131
--- /dev/null
+++ b/dev-scheme/guile-gnutls/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+
+<pkgmetadata>
+ <maintainer type="project">
+ <email>scheme@gentoo.org</email>
+ <name>Gentoo Scheme Project</name>
+ </maintainer>
+ <upstream>
+ <doc>https://gnutls.gitlab.io/guile/manual/</doc>
+ <bugs-to>https://gitlab.com/gnutls/guile/-/issues/</bugs-to>
+ <remote-id type="gitlab">gnutls/guile</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-scheme/guile-json/Manifest b/dev-scheme/guile-json/Manifest
index dc0163b1c368..f687399862ff 100644
--- a/dev-scheme/guile-json/Manifest
+++ b/dev-scheme/guile-json/Manifest
@@ -1,3 +1,3 @@
-DIST guile-json-4.7.0.tar.gz 164524 BLAKE2B 70edfa44622889d8cce85395e8b68aee4c696bee414d352866bae129ba803ed27a075d9b4273bc0cc9f6135a84062cc5f24ec1f08eb85f73e9475d5b19fd3e90 SHA512 5400fbd8a2c3bcdebec306808dad7c9e2e3401baea501dc9b50186f6f9dfcaf4f3fb8ee0c3662f08aff7dda7ba355a8cdb90cfd3457e0a575fff9884a8345b09
DIST guile-json-4.7.1.tar.gz 162507 BLAKE2B ea2fe55fb9ddb8783c6260ecb80f882c811fd313781d57b2ebe73f553c666996778d91bf7cd00725165540069763922317e4595b6c97fa7ac2f5c793c11d2a23 SHA512 f96ca819ffebf8e736cb4e28ee8c6e80c5a7f6f2a064897a4dd7094e3e4b879ba7cd5780778c4dce0db4a938b7603d3352f4a30aab9cd35f47d7ff1c1e3208ac
DIST guile-json-4.7.2.tar.gz 164331 BLAKE2B 82ebcddd8106cee6c8a6676fc6ffa82f77de90cb33df6f052a6f5448e79e99d1728046111a636cb876a255ddbec3e740b0e9b32c91efaedf53b169e878a1c9f9 SHA512 f717e4554a2c816bf5b62931a561181c693bb8ae460c2c12e08d4c2d2bf7eb5734b69c1e4b236a0ba685d0db734b510a4c3c3e8134f3def42be8841fdb684b57
+DIST guile-json-4.7.3.tar.gz 164453 BLAKE2B 4cc85677eaab3753f6e2a3b7aa93a6e98bfd11e4b54886b7ddd37f4ff9006bc2f62a36228ca2989a77fab2363e60cd44b1d3985eb884139e6e1a6e1eb1469d60 SHA512 d2d22cd3962e7379c2cbe0b9220ddeaa1989c22cd757577302490b269aa52e2d9e3174f1c9ed22ad68bc0c5a1bb82d2fee354b2888d84372eed613e15b9803d1
diff --git a/dev-scheme/guile-json/guile-json-4.7.0.ebuild b/dev-scheme/guile-json/guile-json-4.7.3.ebuild
index d2e78a2618c3..d2e78a2618c3 100644
--- a/dev-scheme/guile-json/guile-json-4.7.0.ebuild
+++ b/dev-scheme/guile-json/guile-json-4.7.3.ebuild
diff --git a/dev-scheme/guile-json/metadata.xml b/dev-scheme/guile-json/metadata.xml
index 3f8eb92a383b..a50f4150f4e5 100644
--- a/dev-scheme/guile-json/metadata.xml
+++ b/dev-scheme/guile-json/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+
<pkgmetadata>
-<maintainer type="project">
- <email>scheme@gentoo.org</email>
- <name>Gentoo Scheme Project</name>
-</maintainer>
+ <maintainer type="project">
+ <email>scheme@gentoo.org</email>
+ <name>Gentoo Scheme Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="savannah-nongnu">guile-json</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-scheme/guile-libyaml/guile-libyaml-20211124.ebuild b/dev-scheme/guile-libyaml/guile-libyaml-20211124.ebuild
index 36fd680e32a4..9a9d84dc8e24 100644
--- a/dev-scheme/guile-libyaml/guile-libyaml-20211124.ebuild
+++ b/dev-scheme/guile-libyaml/guile-libyaml-20211124.ebuild
@@ -1,14 +1,15 @@
-# Copyright 2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-H=2bdacb72a65ab63264b2edc9dac9692df7ec9b3e
+[[ ${PV} == 20211124 ]] && COMMIT=2bdacb72a65ab63264b2edc9dac9692df7ec9b3e
DESCRIPTION="Simple yaml module for Guile using the ffi-helper from nyacc"
HOMEPAGE="https://github.com/mwette/guile-libyaml/"
-SRC_URI="https://github.com/mwette/${PN}/archive/${H}.tar.gz -> ${P}.tar.gz"
-S="${WORKDIR}/${PN}-${H}"
+SRC_URI="https://github.com/mwette/${PN}/archive/${COMMIT}.tar.gz
+ -> ${P}.tar.gz"
+S="${WORKDIR}"/${PN}-${COMMIT}
LICENSE="LGPL-3+"
SLOT="0"
diff --git a/dev-scheme/guile-ncurses/Manifest b/dev-scheme/guile-ncurses/Manifest
index dbe232479180..5b3628129a54 100644
--- a/dev-scheme/guile-ncurses/Manifest
+++ b/dev-scheme/guile-ncurses/Manifest
@@ -1 +1,2 @@
DIST guile-ncurses-3.0.tar.gz 910030 BLAKE2B e7bfa1e7c7ff8fd4e8b653a5bcada99f8f047142322e4abb946cd42b27bd1d2014f904b5a73d5356ad95bec1c394d0b76ad06204a7d117ab4c2e9a3181633fa2 SHA512 6f36ec57b1835dc90f6691243e3b627e067522c78ea620fc109bf270016034842a933c2d9e09c1a3998a740ae17cb1b7ae291d3e4c578c54128eae4c88a450ac
+DIST guile-ncurses-3.1.tar.gz 921257 BLAKE2B 26ee97ac62ae7877ecf4cce9d798f7afadc98cbba914da1c802321bf83572e5bfe9775e6e3739bbe849cde9843998aca001b6753bde9d5fbb48c4d70133740f9 SHA512 c43264cfb0cc9fe658f7ddd53bb3dfc6c7636ecaf9b8f3f416d449e6463e38061faf419b43d91775dd9642a904055122e7992c16dea1532de6229fcfa68e292f
diff --git a/dev-scheme/guile-ncurses/guile-ncurses-3.1.ebuild b/dev-scheme/guile-ncurses/guile-ncurses-3.1.ebuild
new file mode 100644
index 000000000000..1c6d6d5cbd41
--- /dev/null
+++ b/dev-scheme/guile-ncurses/guile-ncurses-3.1.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Guile FFI to ncurses library for text-based console UI"
+HOMEPAGE="https://www.gnu.org/software/guile-ncurses/"
+SRC_URI="mirror://gnu/guile-ncurses/${P}.tar.gz"
+
+LICENSE="LGPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+RESTRICT="strip"
+
+RDEPEND="
+ >=dev-scheme/guile-2.0.0:=
+ sys-libs/ncurses:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="sys-apps/texinfo"
+
+# guile generates ELF files without use of C or machine code
+# It's a portage's false positive. bug #677600
+QA_PREBUILT='*[.]go'
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.0-slibtool.patch # bug #843416
+)
+
+src_prepare() {
+ default
+
+ # http://debbugs.gnu.org/cgi/bugreport.cgi?bug=38112
+ find "${S}" -name "*.scm" -exec touch {} + || die
+
+ # Remove bad tests
+ # > In procedure list-ref: Wrong type argument in position 1: #f
+ local -a bad_tests=(
+ curs_attr_attr_off_underline
+ curs_attr_attr_on_blink
+ curs_attr_attr_on_bold
+ curs_attr_attr_on_dim
+ curs_attr_attr_on_invis
+ curs_attr_attr_on_protect
+ curs_attr_attr_on_reverse
+ curs_attr_attr_on_standout
+ curs_attr_attr_on_underline
+ curs_attr_attr_set
+ curs_attr_attr_set_normal
+ curs_attr_standend
+ curs_attr_standout
+ curs_bkgd_bkgd
+ curs_bkgd_bkgdset
+ termios_speed
+ )
+ local bad_test
+ for bad_test in "${bad_tests[@]}" ; do
+ echo "#t" > test/${bad_test}.scm || die
+ done
+
+ eautoreconf # 843560
+}
+
+src_test() {
+ emake check
+}
+
+src_install() {
+ default
+
+ find "${ED}" -type f -name '*.la' -delete || die
+}
diff --git a/dev-scheme/guile-ssh/Manifest b/dev-scheme/guile-ssh/Manifest
index ae7ce983d90e..06d5cfba150d 100644
--- a/dev-scheme/guile-ssh/Manifest
+++ b/dev-scheme/guile-ssh/Manifest
@@ -1 +1,3 @@
DIST guile-ssh-0.16.0.tar.gz 522003 BLAKE2B dfa6011bb8b220b9a365fde832434eca0c26b58361a919b36228a95a7b042eb68ef7a0d5aa4b0360119983dc63fe65175ae67fe74da38e90ca19a3914f3d6b07 SHA512 195d763e49fd2506c50fea25606ec1873e3c950851f0be0f91fd73842acb9104c89baa1c69daccc7b28b6504a4aa1648a4c049991a63ecf7336c03c48d23e570
+DIST guile-ssh-0.16.2.tar.gz 523528 BLAKE2B 1cf513a5c77f5ea622c80ce96f8a8b3b2a83e371f1d44bb236a65a6b50e3edfd1096a1b2971a45a1df35bb90d611104214caae49f70ec4c5d96a137d66a28d37 SHA512 7a8143e408c91779591b32a50f2fceb3348bcdf92e810cf6dd70e0e9777229277bb26ba87b0a1f79590ed136aedb06661ce77bad577fb56187af324d209a552d
+DIST guile-ssh-0.16.3.tar.gz 524546 BLAKE2B e8cbe500493d80962f31b1d9ab97f5dc45c2e3612f419244528676b6cc3cf517a7dd84022b84356b0da456cdca404cca3ee25bef1762da9f0e126e086f34a721 SHA512 7b66dd5a29d47f3f7beaefb6576f74f62fe30736ddf97870a72612b44a608d61edd5ba9bc520e577b6f19a9de9044743e880601bae26b9645dafbef2c3134609
diff --git a/dev-scheme/guile-ssh/files/guile-ssh-0.16.0-musl.patch b/dev-scheme/guile-ssh/files/guile-ssh-0.16.0-musl.patch
new file mode 100644
index 000000000000..6ac51126ebc8
--- /dev/null
+++ b/dev-scheme/guile-ssh/files/guile-ssh-0.16.0-musl.patch
@@ -0,0 +1,10 @@
+--- a/libguile-ssh/log.c
++++ b/libguile-ssh/log.c
+@@ -29,7 +29,6 @@
+ #include <stdio.h> /* DEBUG */
+ #include <unistd.h> /* DEBUG */
+
+-#include <execinfo.h>
+ #include <stdlib.h>
+ #include <stdio.h>
+
diff --git a/dev-scheme/guile-ssh/files/guile-ssh-0.16.2-tests.patch b/dev-scheme/guile-ssh/files/guile-ssh-0.16.2-tests.patch
new file mode 100644
index 000000000000..071ef5add279
--- /dev/null
+++ b/dev-scheme/guile-ssh/files/guile-ssh-0.16.2-tests.patch
@@ -0,0 +1,18 @@
+--- a/tests/Makefile.am
++++ b/tests/Makefile.am
+@@ -23,15 +23,12 @@ if !CROSS_COMPILING
+
+ SCM_TESTS = \
+ log.scm \
+- version.scm \
+- server.scm \
+ session.scm \
+ client-server.scm \
+ popen.scm \
+ shell.scm \
+ server-client.scm \
+ sssh-ssshd.scm \
+- key.scm \
+ tunnel.scm \
+ dist.scm
+
diff --git a/dev-scheme/guile-ssh/guile-ssh-0.16.0-r1.ebuild b/dev-scheme/guile-ssh/guile-ssh-0.16.0-r1.ebuild
index fe67b2f16774..009a47427955 100644
--- a/dev-scheme/guile-ssh/guile-ssh-0.16.0-r1.ebuild
+++ b/dev-scheme/guile-ssh/guile-ssh-0.16.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -14,6 +14,7 @@ SRC_URI="https://github.com/artyom-poptsov/${PN}/archive/v${PV}.tar.gz
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~amd64 ~x86"
+RESTRICT="strip"
RDEPEND="
>=dev-scheme/guile-2.0.0:=
@@ -22,7 +23,10 @@ RDEPEND="
DEPEND="${RDEPEND}"
DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
-PATCHES=( "${FILESDIR}"/${P}-tests.patch )
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.16.0-musl.patch
+ "${FILESDIR}"/${P}-tests.patch
+)
# guile generates ELF files without use of C or machine code
# It's a portage's false positive. bug #677600
diff --git a/dev-scheme/guile-ssh/guile-ssh-0.16.2.ebuild b/dev-scheme/guile-ssh/guile-ssh-0.16.2.ebuild
new file mode 100644
index 000000000000..009a47427955
--- /dev/null
+++ b/dev-scheme/guile-ssh/guile-ssh-0.16.2.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Library providing access to the SSH protocol for GNU Guile"
+HOMEPAGE="https://memory-heap.org/~avp/projects/guile-ssh/
+ https://github.com/artyom-poptsov/guile-ssh/"
+SRC_URI="https://github.com/artyom-poptsov/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+RESTRICT="strip"
+
+RDEPEND="
+ >=dev-scheme/guile-2.0.0:=
+ net-libs/libssh:0=[server,sftp]
+"
+DEPEND="${RDEPEND}"
+
+DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.16.0-musl.patch
+ "${FILESDIR}"/${P}-tests.patch
+)
+
+# guile generates ELF files without use of C or machine code
+# It's a portage's false positive. bug #677600
+QA_PREBUILT='*[.]go'
+
+src_prepare() {
+ default
+
+ # http://debbugs.gnu.org/cgi/bugreport.cgi?bug=38112
+ find "${S}" -name "*.scm" -exec touch {} + || die
+
+ eautoreconf
+}
+
+src_install() {
+ default
+
+ find "${ED}" -name "*.la" -delete || die
+}
diff --git a/dev-scheme/guile-ssh/guile-ssh-0.16.3.ebuild b/dev-scheme/guile-ssh/guile-ssh-0.16.3.ebuild
new file mode 100644
index 000000000000..08853faeea69
--- /dev/null
+++ b/dev-scheme/guile-ssh/guile-ssh-0.16.3.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Library providing access to the SSH protocol for GNU Guile"
+HOMEPAGE="https://memory-heap.org/~avp/projects/guile-ssh/
+ https://github.com/artyom-poptsov/guile-ssh/"
+SRC_URI="https://github.com/artyom-poptsov/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+RESTRICT="strip"
+
+RDEPEND="
+ >=dev-scheme/guile-2.0.0:=
+ net-libs/libssh:0=[server,sftp]
+"
+DEPEND="${RDEPEND}"
+
+DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.16.0-musl.patch
+ "${FILESDIR}"/${PN}-0.16.2-tests.patch
+)
+
+# guile generates ELF files without use of C or machine code
+# It's a portage's false positive. bug #677600
+QA_PREBUILT='*[.]go'
+
+src_prepare() {
+ default
+
+ # http://debbugs.gnu.org/cgi/bugreport.cgi?bug=38112
+ find "${S}" -name "*.scm" -exec touch {} + || die
+
+ eautoreconf
+}
+
+src_install() {
+ default
+
+ find "${ED}" -name "*.la" -delete || die
+}
diff --git a/dev-scheme/guile/Manifest b/dev-scheme/guile/Manifest
index c5f222adf318..87382b204a05 100644
--- a/dev-scheme/guile/Manifest
+++ b/dev-scheme/guile/Manifest
@@ -1,4 +1,4 @@
DIST guile-1.8.8.tar.gz 3956654 BLAKE2B 4820d635ac2c57526c0c03f3e0e6e4ac4276533ea8db15e6d1b759c33edec094a1a4bdc3e09ccae61f1b271d63565063746feea242a90c18cd575775444a42ef SHA512 ede6feb90cd419d8763feb8c5169275490a653919573c4dfced025b74cf591072b3a10ffb9a3f6ee3fe7b0a0956ffcf434e0859b421455c8349cea56bf427db0
-DIST guile-2.0.14.tar.xz 4615196 BLAKE2B 97e26635c941309b713b632371bc9df7361d3d7d524af3d2c67275f3151dc9c51bd774155bd3c1caf6950d4e839afe8b019f553b5a7223c447bb19c8a97d608c SHA512 2cad60ab8aa77be44bc4988eaa3a2f0652637f315322abd6011c18f1800c3a461eefa15a14fd54d0d48031b093bc56dfc6cd15dc0a8260b97b40521bff793db6
DIST guile-2.2.7.tar.xz 10881984 BLAKE2B e2b1fe7cb010371beaaf32f8f173397c90fd291ed7d5835b9d976f37fd133254841b4179bd1e1cd02e604c7befcab6c25f85d20ba0850f96978f7c32ca1fe6d8 SHA512 6f60b3489e26f5ff32b55c89316cdcdbf3ec1f4344726006e445f24098c922c50becdc748f1b66d2b271dc002e409ee6210bf85da779cee1f68c9111b3b5c543
DIST guile-3.0.8.tar.xz 6200072 BLAKE2B 6ab6bfd18889d0d263e5e06ff1284ec025437e53541eb8e9632bd345fda34e394b2228661e9319e8a4e87fd8c675605184b290d875c5c1bbc20bf8c4d32a92b7 SHA512 5d1d93e3e22c524ea3c2fe28cf3c343ab8ba99bf5c7b8750c4ebcaf556ae21485fb99e5ccc50c4b07037cdc678552557753d67ef2c93d8c1b62603e1809418f6
+DIST guile-3.0.9.tar.xz 5750636 BLAKE2B 693f189bda52468d989f27c9482b515b8a14ed814d6e4a9a988d7a03d9789903a568b41c5e3ae524b3a51cc635693cd20245b2017efabb9774be59c298823083 SHA512 a1e47a60a654f26edc57b3a34d943e15a055fc85c3cc764e912be23a80d56534b16f3512d7c7bc426f24a0cac1fcc9556802ac248f10c1fbdde51cd1e24afaf2
diff --git a/dev-scheme/guile/files/guile-2-snarf.patch b/dev-scheme/guile/files/guile-2-snarf.patch
deleted file mode 100644
index c6ab5cd48cd6..000000000000
--- a/dev-scheme/guile/files/guile-2-snarf.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From f775ab3654357fcaad294b95efb0b1c16de1eda8 Mon Sep 17 00:00:00 2001
-From: Sergei Trofimovich <slyfox@gentoo.org>
-Date: Sun, 19 Feb 2017 22:58:40 +0000
-Subject: guile-snarf: skip -g* arguments to avoid build failure
-
-* libguile/guile-snarf.in: skip -g* arguments to avoid failure on
- -ggdb3.
-
-Bug: https://bugs.gentoo.org/608190
-Bug: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=25803
-Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
----
- libguile/guile-snarf.in | 16 ++++++++++++++--
- 1 file changed, 14 insertions(+), 2 deletions(-)
-
-diff --git a/libguile/guile-snarf.in b/libguile/guile-snarf.in
-index 47bbc04..22dc1d3 100644
---- a/libguile/guile-snarf.in
-+++ b/libguile/guile-snarf.in
-@@ -95,10 +95,22 @@ if [ x"$CPP" = x ] ; then cpp="@CPP@" ; else cpp="$CPP" ; fi
-
- trap "rm -rf $tempdir" 0 1 2 15
-
-+# filter out -g* flags from commandline
-+# as some flags like -ggdb3 cause CPP
-+
-+cpp_args=""
-+for arg in "$@"
-+do
-+ case "$arg" in
-+ -g*) ;; # skip debug flag
-+ *) cpp_args="$cpp_args $arg" ;;
-+ esac
-+done
-+
- if [ ! "$outfile" = "-" ] ; then
-- modern_snarf "$@" > $outfile
-+ modern_snarf $cpp_args > $outfile
- else
-- modern_snarf "$@"
-+ modern_snarf $cpp_args
- fi
-
- # zonk outfile if errors occurred
---
-cgit v1.0-41-gc330
-
diff --git a/dev-scheme/guile/files/guile-2.0.14-darwin.patch b/dev-scheme/guile/files/guile-2.0.14-darwin.patch
deleted file mode 100644
index 17741ae352c2..000000000000
--- a/dev-scheme/guile/files/guile-2.0.14-darwin.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-fix compilation on Darwin
-
-https://debbugs.gnu.org/cgi/bugreport.cgi?bug=24862#23
-https://bugs.gentoo.org/show_bug.cgi?id=612338
-
---- guile-2.0.14/libguile/filesys.c
-+++ guile-2.0.14/libguile/filesys.c
-@@ -1486,6 +1486,9 @@
- mode_bits = scm_i_mode_bits (mode);
- }
-
-+#ifdef __APPLE__
-+ open_flags &= O_APPEND|O_SHLOCK|O_EXLOCK|O_CLOEXEC;
-+#endif
- SCM_SYSCALL (rv = mkostemp (c_tmpl, open_flags));
- if (rv == -1)
- SCM_SYSERROR;
---- guile-2.0.14/libguile/stime.c
-+++ guile-2.0.14/libguile/stime.c
-@@ -830,6 +830,10 @@
-
- #ifdef HAVE_POSIX_CPUTIME
- {
-+#ifdef __APPLE__
-+ if (clock_gettime (CLOCK_PROCESS_CPUTIME_ID, &posix_run_time_base) == 0)
-+ get_internal_run_time = get_internal_run_time_posix_timer;
-+#else
- clockid_t dummy;
-
- /* Only use the _POSIX_CPUTIME clock if it's going to work across
-@@ -839,6 +843,7 @@
- get_internal_run_time = get_internal_run_time_posix_timer;
- else
- errno = 0;
-+#endif
- }
- #endif /* HAVE_POSIX_CPUTIME */
- #endif /* HAVE_CLOCKTIME */
diff --git a/dev-scheme/guile/files/guile-2.0.14-ia64-fix-crash-thread-context-switch.patch b/dev-scheme/guile/files/guile-2.0.14-ia64-fix-crash-thread-context-switch.patch
deleted file mode 100644
index c2f136ddd104..000000000000
--- a/dev-scheme/guile/files/guile-2.0.14-ia64-fix-crash-thread-context-switch.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From f92888853439a8ded221f3423865c78de2a96a14 Mon Sep 17 00:00:00 2001
-From: Sergei Trofimovich <slyfox@gentoo.org>
-Date: Sun, 5 Nov 2017 09:30:45 +0000
-Subject: ia64: Fix crash in thread context switch.
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Fixes <https://bugs.gnu.org/29151> and <https://bugs.gentoo.org/613986>.
-
-Backtrace looks like that:
-
- Program terminated with signal SIGSEGV, Segmentation fault.
- #0 0x200000000014a5c0 in scm_ia64_longjmp (JB=0x6000000000817020, VAL=1) at continuations.c:372
- 372 t->pending_rbs_continuation->backing_store,
- [Current thread is 1 (Thread 0x2000000000049340 (LWP 8190))]
- (gdb) bt
- #0 0x200000000014a5c0 in scm_ia64_longjmp (JB=0x6000000000817020, VAL=1) at continuations.c:372
- #1 0x2000000000148e00 in scm_c_abort (vm=0x60000000000edea0, tag=0x6000000000795ba0, n=0, argv=0x60000fffff7f0ce0, cookie=-1) at control.c:239
- #2 0x2000000000149070 in scm_at_abort (tag=0x6000000000795ba0, args=0x304) at control.c:258
- (gdb) print t
- $2 = (scm_i_thread *) 0x6000000000068000
- (gdb) print t->pending_rbs_continuation
- $3 = (scm_t_contregs *) 0xffeb
-
-The problem here is the value of 't->pending_rbs_continuation' pointer.
-It's supposed to poin to a register stack pointer or be NULL if not yet
-backed up.
-
-The problem is it is never initialized to NULL at creation time and
-contained garbage on stack. Sometimes people are lucky and have zeros
-on stack and guile works. But sometimes there is something and guile
-crashes.
-
-The fix is trivial: initialize 'pending_rbs_continuation = NULL'
-at thread registration time (the same way other threads are registered).
-
-Reported-by: Matt Turner
-
-* libguile/threads.c (guilify_self_1): Initialize pending_rbs_continuation
-to avoid crash on ia64.
-
-Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
-Signed-off-by: Ludovic Court├Ęs <ludo@gnu.org>
----
- libguile/threads.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/libguile/threads.c b/libguile/threads.c
-index 9ceb5b8..770f62c 100644
---- a/libguile/threads.c
-+++ b/libguile/threads.c
-@@ -395,6 +395,7 @@ guilify_self_1 (struct GC_stack_base *base, int needs_unregister)
- t.base = base->mem_base;
- #ifdef __ia64__
- t.register_backing_store_base = base->reg_base;
-+ t.pending_rbs_continuation = 0;
- #endif
- t.continuation_root = SCM_EOL;
- t.continuation_base = t.base;
---
-cgit v1.0-41-gc330
-
diff --git a/dev-scheme/guile/files/guile-3.0.8-configure-clang16.patch b/dev-scheme/guile/files/guile-3.0.8-configure-clang16.patch
new file mode 100644
index 000000000000..6a4cc770dfae
--- /dev/null
+++ b/dev-scheme/guile/files/guile-3.0.8-configure-clang16.patch
@@ -0,0 +1,32 @@
+https://src.fedoraproject.org/rpms/guile30/c/47f608ff4988547350e722606890698e3ec59e95?branch=rawhide
+
+Avoid implicit ints in the guile_cv_localtime_cache check. It cause
+the check to always fail with strict(er) C99 compilers that do not
+support implicit int.
+
+Submitted upstream:
+
+ <https://lists.gnu.org/archive/html/bug-guile/2022-12/msg00017.html>
+ <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=60022>
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -1086,7 +1086,7 @@ AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <time.h>
+ # include <stdlib.h>
+ #endif
+ extern char **environ;
+-unset_TZ ()
++int unset_TZ ()
+ {
+ char **from, **to;
+ for (to = from = environ; (*to = *from); from++)
+@@ -1095,7 +1095,7 @@ unset_TZ ()
+ }
+ char TZ_GMT0[] = "TZ=GMT0";
+ char TZ_PST8[] = "TZ=PST8";
+-main()
++int main()
+ {
+ time_t now = time ((time_t *) 0);
+ int hour_GMT0, hour_unset;
+
diff --git a/dev-scheme/guile/guile-2.0.14-r4.ebuild b/dev-scheme/guile/guile-2.0.14-r4.ebuild
deleted file mode 100644
index 0eb8e1fedb21..000000000000
--- a/dev-scheme/guile/guile-2.0.14-r4.ebuild
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit flag-o-matic autotools
-
-DESCRIPTION="GNU Ubiquitous Intelligent Language for Extensions"
-HOMEPAGE="https://www.gnu.org/software/guile/"
-SRC_URI="mirror://gnu/guile/${P}.tar.xz"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
-LICENSE="LGPL-3+"
-IUSE="debug debug-malloc +deprecated +networking +nls +regex +threads" # upstream recommended +networking +nls
-# emacs useflag removal not working
-
-REQUIRED_USE="regex" # workaround for bug 596322
-RESTRICT="strip"
-
-RDEPEND="
- >=dev-libs/boehm-gc-7.0:=[threads?]
- dev-libs/gmp:=
- dev-libs/libffi:=
- dev-libs/libltdl:=
- dev-libs/libunistring:0=
- sys-devel/libtool
- sys-libs/ncurses:0=
- sys-libs/readline:0=
- virtual/libcrypt:="
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- sys-apps/texinfo
- sys-devel/gettext"
-
-SLOT="12/22" # subslot is soname version
-MAJOR="2.0"
-
-PATCHES=(
- "${FILESDIR}/${PN}-2-snarf.patch"
- "${FILESDIR}/${P}-darwin.patch"
- "${FILESDIR}/${P}-ia64-fix-crash-thread-context-switch.patch"
-)
-
-# guile generates ELF files without use of C or machine code
-# It's a portage's false positive. bug #677600
-QA_PREBUILT='*[.]go'
-
-DOCS=( GUILE-VERSION HACKING README )
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- # see bug #178499
- filter-flags -ftree-vectorize
-
- econf \
- --disable-error-on-warning \
- --disable-rpath \
- --disable-static \
- --enable-posix \
- --without-libgmp-prefix \
- --without-libiconv-prefix \
- --without-libintl-prefix \
- --without-libltdl-prefix \
- --without-libreadline-prefix \
- --without-libunistring-prefix \
- $(use_enable debug guile-debug) \
- $(use_enable debug-malloc) \
- $(use_enable deprecated) \
- $(use_enable networking) \
- $(use_enable nls) \
- $(use_enable regex) \
- $(use_with threads)
-}
-
-src_install() {
- default
- find "${ED}" -name '*.la' -delete || die
-
- # From Novell
- # https://bugzilla.novell.com/show_bug.cgi?id=874028#c0
- dodir /usr/share/gdb/auto-load/$(get_libdir)
- mv "${ED}"/usr/$(get_libdir)/libguile-*-gdb.scm "${ED}"/usr/share/gdb/auto-load/$(get_libdir) || die
-
- # necessary for registering slib, see bug 206896
- keepdir /usr/share/guile/site
-
- # Dark magic necessary for some deps
- dosym libguile-2.0.so /usr/$(get_libdir)/libguile.so
-}
diff --git a/dev-scheme/guile/guile-3.0.8.ebuild b/dev-scheme/guile/guile-3.0.8-r1.ebuild
index ae641ae3cfb4..9b6beb93e876 100644
--- a/dev-scheme/guile/guile-3.0.8.ebuild
+++ b/dev-scheme/guile/guile-3.0.8-r1.ebuild
@@ -1,8 +1,10 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
+inherit autotools
+
MAJOR="3.0"
DESCRIPTION="GNU Ubiquitous Intelligent Language for Extensions"
HOMEPAGE="https://www.gnu.org/software/guile/"
@@ -31,15 +33,23 @@ BDEPEND="
sys-devel/libtool
sys-devel/gettext"
+# guile generates ELF files without use of C or machine code
+# It's false positive. bug #677600
+QA_PREBUILT='*[.]go'
+
+DOCS=( GUILE-VERSION HACKING README )
+
PATCHES=(
"${FILESDIR}/${PN}-2.2.3-gentoo-sandbox.patch"
+ "${FILESDIR}/${P}-configure-clang16.patch"
)
-# guile generates ELF files without use of C or machine code
-# It's a portage's false positive. bug #677600
-QA_PREBUILT='*[.]go'
+src_prepare() {
+ default
-DOCS=( GUILE-VERSION HACKING README )
+ # Can drop once guile-3.0.8-configure-clang16.patch merged
+ eautoreconf
+}
src_configure() {
# see bug #676468
diff --git a/dev-scheme/guile/guile-3.0.9.ebuild b/dev-scheme/guile/guile-3.0.9.ebuild
new file mode 100644
index 000000000000..5d056fe7b783
--- /dev/null
+++ b/dev-scheme/guile/guile-3.0.9.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MAJOR="3.0"
+DESCRIPTION="GNU Ubiquitous Intelligent Language for Extensions"
+HOMEPAGE="https://www.gnu.org/software/guile/"
+SRC_URI="mirror://gnu/guile/${P}.tar.xz"
+
+LICENSE="LGPL-3+"
+SLOT="12/3.0-1" # libguile-2.2.so.1 => 2.2-1
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+
+IUSE="debug debug-malloc +deprecated +jit +networking +nls +regex +threads" # upstream recommended +networking +nls
+REQUIRED_USE="regex" # workaround for bug #596322
+RESTRICT="strip"
+
+RDEPEND="
+ >=dev-libs/boehm-gc-7.0[threads?]
+ dev-libs/gmp:=
+ dev-libs/libffi:=
+ dev-libs/libatomic_ops
+ dev-libs/libunistring:=
+ sys-libs/ncurses:=
+ sys-libs/readline:=
+ virtual/libcrypt:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ sys-devel/libtool
+ sys-devel/gettext
+"
+
+# guile generates ELF files without use of C or machine code
+# It's false positive. bug #677600
+QA_PREBUILT='*[.]go'
+
+DOCS=( ABOUT-NLS AUTHORS ChangeLog GUILE-VERSION HACKING NEWS README THANKS )
+
+PATCHES=( "${FILESDIR}"/${PN}-2.2.3-gentoo-sandbox.patch )
+
+src_configure() {
+ # see bug #676468
+ mv prebuilt/32-bit-big-endian{,.broken} || die
+
+ local -a myconf=(
+ --disable-error-on-warning
+ --disable-rpath
+ --disable-lto
+ --enable-posix
+ --without-libgmp-prefix
+ --without-libiconv-prefix
+ --without-libintl-prefix
+ --without-libreadline-prefix
+ --without-libunistring-prefix
+ $(use_enable debug guile-debug)
+ $(use_enable debug-malloc)
+ $(use_enable deprecated)
+ $(use_enable jit)
+ $(use_enable networking)
+ $(use_enable nls)
+ $(use_enable regex)
+ $(use_with threads)
+ )
+ econf ${myconf[@]}
+}
+
+src_install() {
+ default
+
+ # From Novell https://bugzilla.novell.com/show_bug.cgi?id=874028#c0
+ dodir /usr/share/gdb/auto-load/$(get_libdir)
+ mv "${ED}"/usr/$(get_libdir)/libguile-*-gdb.scm "${ED}"/usr/share/gdb/auto-load/$(get_libdir) || die
+
+ # necessary for registering slib, see bug #206896
+ keepdir /usr/share/guile/site
+
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/dev-scheme/guile/metadata.xml b/dev-scheme/guile/metadata.xml
index eb3a100fb5dd..0ec99201052d 100644
--- a/dev-scheme/guile/metadata.xml
+++ b/dev-scheme/guile/metadata.xml
@@ -17,6 +17,7 @@ Guile is a library designed to help programmers create flexible applications. Us
<flag name="regex"> Include regular expression interfaces</flag>
</use>
<upstream>
+ <doc>https://www.gnu.org/software/guile/manual/html_node/index.html</doc>
<remote-id type="savannah">guile</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-scheme/mit-scheme/Manifest b/dev-scheme/mit-scheme/Manifest
index e5c650ce3768..4ae3264b230c 100644
--- a/dev-scheme/mit-scheme/Manifest
+++ b/dev-scheme/mit-scheme/Manifest
@@ -1 +1,2 @@
DIST mit-scheme-11.2-svm1-64le.tar.gz 73077951 BLAKE2B 0e6741103c7a96f665e643fe6cab1a52bebcc8549845bf592029f73bbc9518937f45ccbac39e14d29b05b26f602ce810ae3f01030b0afb88560970ad3bb1f6dd SHA512 0bf2e8b1710a87da775b8fca53df808e23e45f6e6310a78b507fa87cd340c051cdf2ffe74268e9f6fc7bf3eaaa9321c2fc016e675fb41e59f648d1e69a1e8458
+DIST mit-scheme-12.1-svm1-64le.tar.gz 88542947 BLAKE2B 07278da41c250924ff833933b7015e865a4dc8feea11a4e1b1647818cacf03fc25878cbe0aca3a8cf08adad5487c0f7aa5e5beb111ed46d09e8473ee01490eca SHA512 07e49b0f3919ad4ed85696766697615dc1720b4278c61d4aa6c3a1a92966d1e6fc7c9c7ca7db395d4e4279c5464639c80503bf4f6a8e51d2e951edc85a453dc9
diff --git a/dev-scheme/mit-scheme/files/mit-scheme-11.2-implicit-int.patch b/dev-scheme/mit-scheme/files/mit-scheme-11.2-implicit-int.patch
new file mode 100644
index 000000000000..545ec49494f2
--- /dev/null
+++ b/dev-scheme/mit-scheme/files/mit-scheme-11.2-implicit-int.patch
@@ -0,0 +1,19 @@
+--- a/lib/include/termcap.c
++++ b/lib/include/termcap.c
+@@ -144,7 +144,7 @@ int bufsize = 128;
+ # define NULL 0
+ #endif
+
+-static
++static void
+ memory_out ()
+ {
+ write (2, "Virtual memory exhausted\n", 25);
+@@ -328,6 +328,7 @@ tgetst1 (ptr, area)
+
+ char PC;
+
++void
+ tputs (string, nlines, outfun)
+ char *string;
+ int nlines;
diff --git a/dev-scheme/mit-scheme/metadata.xml b/dev-scheme/mit-scheme/metadata.xml
index c9a9415a00c7..eb1d673ea3c3 100644
--- a/dev-scheme/mit-scheme/metadata.xml
+++ b/dev-scheme/mit-scheme/metadata.xml
@@ -17,5 +17,6 @@
</use>
<upstream>
<bugs-to>https://savannah.gnu.org/bugs/?group=mit-scheme</bugs-to>
+ <remote-id type="savannah">mit-scheme</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-scheme/mit-scheme/mit-scheme-11.2.ebuild b/dev-scheme/mit-scheme/mit-scheme-11.2.ebuild
index 3983d9d42651..723378e963db 100644
--- a/dev-scheme/mit-scheme/mit-scheme-11.2.ebuild
+++ b/dev-scheme/mit-scheme/mit-scheme-11.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -13,7 +13,7 @@ S="${S}"/src
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64" # Additionally arm64 is officially supported.
+KEYWORDS="amd64" # Additionally arm64 is officially supported.
IUSE="blowfish gdbm gui postgres"
RDEPEND="
@@ -24,7 +24,10 @@ RDEPEND="
"
DEPEND="${RDEPEND}"
-PATCHES=( "${FILESDIR}"/${P}-no-Werror.patch )
+PATCHES=(
+ "${FILESDIR}"/${P}-no-Werror.patch
+ "${FILESDIR}"/${P}-implicit-int.patch
+)
src_configure() {
local myconf=(
diff --git a/dev-scheme/mit-scheme/mit-scheme-12.1.ebuild b/dev-scheme/mit-scheme/mit-scheme-12.1.ebuild
new file mode 100644
index 000000000000..bae59266c121
--- /dev/null
+++ b/dev-scheme/mit-scheme/mit-scheme-12.1.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit wrapper
+
+DESCRIPTION="Scheme interpreter, compiler, debugger and runtime library"
+HOMEPAGE="https://www.gnu.org/software/mit-scheme/
+ https://savannah.gnu.org/projects/mit-scheme/"
+SRC_URI="https://ftp.gnu.org/gnu/${PN}/stable.pkg/${PV}/${P}-svm1-64le.tar.gz"
+S="${S}"/src
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64" # Additionally arm64 is officially supported.
+IUSE="blowfish gdbm gui postgres"
+
+RDEPEND="
+ blowfish? ( dev-libs/openssl:= )
+ gdbm? ( sys-libs/gdbm:= )
+ gui? ( x11-libs/libX11 )
+ postgres? ( dev-db/postgresql:* )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-11.2-no-Werror.patch
+ "${FILESDIR}"/${PN}-11.2-implicit-int.patch
+)
+
+src_configure() {
+ local -a myconf=(
+ --disable-mcrypt
+ $(use_enable blowfish)
+ $(use_enable gdbm)
+ $(use_enable gui edwin)
+ $(use_enable gui imail)
+ $(use_enable gui x11)
+ $(use_enable postgres pgsql)
+ $(use_with gui x)
+ )
+ econf ${myconf[@]}
+}
+
+src_compile() {
+ # Compile the "microcode" first, bug #879901
+ emake -C microcode
+
+ # Fails with multiple make-jobs, at least it compiles relatively fast.
+ emake -j1
+}
+
+# Tests that theoretically fail (still passes):
+# microcode/test-flonum-except
+# runtime/test-arith
+# runtime/test-flonum
+# runtime/test-flonum.bin
+# runtime/test-flonum.com
+
+src_test() {
+ FAST=y emake check -j1
+}
+
+src_install() {
+ default
+
+ # Create the edwin launcher.
+ use gui && make_wrapper mit-scheme-edwin "mit-scheme --edit"
+
+ # Remove "scheme" symlink to not "discriminate" any other implementations.
+ rm "${ED}"/usr/bin/scheme || die
+
+ # Remove libtool files.
+ find "${ED}" -type f -name "*.la" -delete || die
+}
diff --git a/dev-scheme/owl-lisp/Manifest b/dev-scheme/owl-lisp/Manifest
index 0a54360a4209..a6a70e785bed 100644
--- a/dev-scheme/owl-lisp/Manifest
+++ b/dev-scheme/owl-lisp/Manifest
@@ -1 +1,2 @@
+DIST owl-v0.2.1.tar.bz2 456751 BLAKE2B 15447cc71b633a97f48086a986c8015f1bc5664b993faa7f4537878fefb805d824c49174ef5a225e4cc870bb4c5b8d256cb887c83eba58d67c64bf5db6d2d7f9 SHA512 b69296e9be60ea4e8103c8100de9d02d00fc50e13624c87c1c4a78852b58aea403459f8b4a2f88826630e7204d58d522b58df489ce194c04e9424186309f5c8e
DIST owl-v0.2.tar.gz 515574 BLAKE2B 054a06d33554cc31f5e1c756bf3ff5ea4fb5cec220048fb939aa9dcd19c586cef54ae8ddc80e1ee8befedfa2e42fc1bf9ea4bcfe37e6743154ff678346444e87 SHA512 f0dc4badc84be1ebd1ad8f6a84c8fc292449b0f66a9416f202f9010e89aa2971c6470599173db67bf3db3e4b6a61d777ee369eda76fa7c42114748e8fe48b7b2
diff --git a/dev-scheme/owl-lisp/owl-lisp-0.2.1.ebuild b/dev-scheme/owl-lisp/owl-lisp-0.2.1.ebuild
new file mode 100644
index 000000000000..9a3d4efc4581
--- /dev/null
+++ b/dev-scheme/owl-lisp/owl-lisp-0.2.1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# NOTICE: Because it is "purely functional" it is not scheme-compatible ootb
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Purely functional dialect of Scheme"
+HOMEPAGE="https://haltp.org/posts/owl.html"
+
+if [[ "${PV}" == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://gitlab.com/owl-lisp/owl.git"
+else
+ SRC_URI="https://gitlab.com/owl-lisp/owl/-/archive/v${PV}/owl-v${PV}.tar.bz2"
+ KEYWORDS="~amd64"
+ S="${WORKDIR}/owl-v${PV}"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+
+src_prepare() {
+ default
+
+ sed -i 's|make bin/vm|$(MAKE) bin/vm|g' "${S}"/Makefile || die
+}
+
+src_compile(){
+ emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" owl
+}
+
+src_install() {
+ einstalldocs
+
+ dobin "${S}"/bin/ol
+ newbin "${S}"/bin/vm ovm
+ doman "${S}"/doc/*.1
+}
diff --git a/dev-scheme/racket/Manifest b/dev-scheme/racket/Manifest
index 9c0918b515d1..aee9a267d9fa 100644
--- a/dev-scheme/racket/Manifest
+++ b/dev-scheme/racket/Manifest
@@ -1,8 +1,8 @@
-DIST racket-8.4-src-builtpkgs.tgz 151809822 BLAKE2B c42f7943975a6f91a03ef0f668d218571dfc4159eac5a5722b9513b978413a9617b4e1bf3ccabef051014311ecf51fdc80d7563942e9e645c442ddfc4995a308 SHA512 afd9f357673a28ac5e4529ea0879a4edc3dbffc5b8627aa3553f1caf867be3296b94620dc2d86b8bb3f0c7ec7743d0057ce897c5caa705e02f2cc469ce4c7116
DIST racket-8.5-src-builtpkgs.tgz 152548446 BLAKE2B ef914d742b3b949ecd7a1f817900add3ede874d7bd4dbe195c2ab69826d938c3ac81b883bc57d938908bc1f9e96faeaa25cb4dedf85288c580b7a89d62ec970a SHA512 4714599cbe10247cad119cc4073d80329d77c845d92b3741d35a9c88cc6395dc3d6f08ace8f606c3e39840f7071789ea953e3b6548da04fd7dfaa72a4368a7ae
DIST racket-8.6-src-builtpkgs.tgz 154505661 BLAKE2B ab788ae3e5175024ec75fa0c34297616ab4dcc1bb6f62d4ff4623dc2dd699d63eb9b24238407a854b03210f21fefd02680dc29931ed9d146920ae32472196e32 SHA512 c2948164463fb59a2d6f1b5188cee7634da190ea40bd19f5a88ef466ccdf07da03503b6a1f00e327a66c31b862048bcd5b047f7c586ea0d26e23397ee5ee7682
DIST racket-8.7-src-builtpkgs.tgz 156337131 BLAKE2B a323683b6fd6d39473ab3eaeea24d175e12f8e36b9103849ec0730757b9c3d32f2e84ab8a9bde7fa834e2c6cf709e2531ab15e36e2694c5843b3b0bb41e909f8 SHA512 4c01001be49271e5536d24257c36bc57b16ff2cbf14eb59208b2939f4d14b5f58028cd1f643d49497eb8bffa84e5847f761171c951e006c278cf5d8ffafdd73e
-DIST racket-minimal-8.4-src-builtpkgs.tgz 21279666 BLAKE2B 25d5eb405cedaa9cadfa776c4dd66b87f1641c86b638110f1a3a788465aaf573f5f8054e1e6913e6c0123840a1a2f64d5855db5f52acace3475b91d095272a76 SHA512 92433c08508cfb1bdb9093e5c7c726630826e9046de02fcb3d402f3dd76aa98fc2d9a5d09515d44e7a50eab0e38d963d2202f48a44741c3cf7fe8e47d9404e63
+DIST racket-8.8-src-builtpkgs.tgz 156581446 BLAKE2B 0539f72822f32293905b69645c9e764e9485fa557b8ff4626b1f7c5bfeda2a7d7101c31933023aeb962f48e7b215883d245ec844372a4eb13703b466a5b1acdb SHA512 0d9efd1ab678b01192d704f674fdff7c48f0a65f9e0308662903e33d9c425064e6b8b5f9e374f5dac787425e85630c23bb1c6c8ff46b7fec3f457bedaaf200f8
DIST racket-minimal-8.5-src-builtpkgs.tgz 21390850 BLAKE2B 7bcd8c409203f71b3a49cd7e4a34159ef62fcc61b8fb66e976bfc0938ac54b7bc475e6aff59796b9c01ee324eb0d88bd68340c787f728a3739a57e879e731bfb SHA512 e0dec1038f33dbe3dfbbeba05cb24829e4b0c4223c5326cd26f920c736171e3b47b457236a06c9c57b6ebc82d17b022fba6558e3c94315b75469a2130b6fd375
DIST racket-minimal-8.6-src-builtpkgs.tgz 22396113 BLAKE2B e8c09da9aef52566746def36823e736e07990ba703d8440a3d067cbeeb43c8d026469c1d4b7d9ad2a423766692b81d6efa400c55512450621acd624d23b1b193 SHA512 695f9be11cab2cf84d1c16b322feb6c4552bf05edbfd901e91fa9532ef52339a6463d8327f4ae4c704cd2e8d67e69c2333bc13b1c862bbe565af00b407debee8
DIST racket-minimal-8.7-src-builtpkgs.tgz 22795747 BLAKE2B 3f0194ffff3f3a9ea383ddd6c447a8d56d8cf4fb029c77bf9e8733570ca59244afd321541e7506ca11bc8b09f4c56dd3e26cd01d22caa7f3f36bd5af29c861a6 SHA512 b60472160b41a070a4aa74265e6319da4e80c6e58ac3152a30dfa3398f457c6579384de62b66dcb7a7ead68f72f787c41eae65325cdc1ae928b54a90d0a25f05
+DIST racket-minimal-8.8-src-builtpkgs.tgz 22857907 BLAKE2B 8612b82adcbc29b3054aa543447c64fd36356e283c48d28bd4c3c5f4a20f51fa8f58a8c3226094b81293c6b051325d3a96a9125ef96174ca5cef74390c954367 SHA512 be0e7fead1704693c30b0814d9d601a7f2bdfdf5b58e902c4b8dc787a5341f4432ea9f8fc6b5910d1751333bbb9868a55d8f1cffe036521a09805084fc093fdc
diff --git a/dev-scheme/racket/files/racket-8.4-ncurses.patch b/dev-scheme/racket/files/racket-8.4-ncurses.patch
deleted file mode 100644
index 4bf429d82daa..000000000000
--- a/dev-scheme/racket/files/racket-8.4-ncurses.patch
+++ /dev/null
@@ -1,154 +0,0 @@
-From 683388b0fcc8d0cc386e0ab749bcbba7cea18c8f Mon Sep 17 00:00:00 2001
-From: Matthew Flatt <mflatt@racket-lang.org>
-Date: Mon, 14 Feb 2022 06:26:25 -0700
-Subject: [PATCH] configure: try -ltinfo as curses linking flag
-
----
- ac/curses.m4 | 21 +++++++++++++++++++--
- bc/configure | 34 +++++++++++++++++++++++++++++++++-
- cs/c/configure | 34 +++++++++++++++++++++++++++++++++-
- 3 files changed, 85 insertions(+), 4 deletions(-)
-
-diff --git a/ac/curses.m4 b/ac/curses.m4
-index 25b0f1f99a3..d713c990949 100644
---- a/ac/curses.m4
-+++ b/ac/curses.m4
-@@ -22,7 +22,7 @@ if test "${skip_curses_check}" = "no" ; then
- if test "${enable_curses}" = "no" ; then
- if test "${enable_portable}" = "yes" ; then
- if test "${curses_portable_link}" != "" ; then
-- # Try adding portabel link flags
-+ # Try adding portable link flags
- ORIG_LIBS="$LIBS"
- ORIG_CPPFLAGS="$CPPFLAGS"
- ORIG_PREFLAGS="$PREFLAGS"
-@@ -62,7 +62,24 @@ if test "${skip_curses_check}" = "no" ; then
- LIBS="$ORIG_LIBS"
- curses_lib_flag=""
- fi
-- fi
-+ fi
-+ if test "${enable_curses}" = "no" ; then
-+ # Try adding -lncurses -ltinfo
-+ ORIG_LIBS="$LIBS"
-+ curses_lib_flag=" -lncurses -ltinfo"
-+ LIBS="$LIBS $curses_lib_flag"
-+ AC_TRY_LINK(
-+ [#include <curses.h>]
-+ [#include <term.h>],
-+[ int errret; ]
-+[ setupterm("", 0, &errret);]
-+ return 0;
-+ , enable_curses=yes, enable_curses=no)
-+ if test "${enable_curses}" = "no" ; then
-+ LIBS="$ORIG_LIBS"
-+ curses_lib_flag=""
-+ fi
-+ fi
- fi
- fi
- fi
-diff --git a/bc/configure b/bc/configure
-index 543fab87411..132d2dedd6c 100755
---- a/bc/configure
-+++ b/bc/configure
-@@ -5991,7 +5991,7 @@ rm -f core conftest.err conftest.$ac_objext \
- if test "${enable_curses}" = "no" ; then
- if test "${enable_portable}" = "yes" ; then
- if test "${curses_portable_link}" != "" ; then
-- # Try adding portabel link flags
-+ # Try adding portable link flags
- ORIG_LIBS="$LIBS"
- ORIG_CPPFLAGS="$CPPFLAGS"
- ORIG_PREFLAGS="$PREFLAGS"
-@@ -6055,6 +6055,38 @@ if ac_fn_c_try_link "$LINENO"; then :
- else
- enable_curses=no
- fi
-+rm -f core conftest.err conftest.$ac_objext \
-+ conftest$ac_exeext conftest.$ac_ext
-+ if test "${enable_curses}" = "no" ; then
-+ LIBS="$ORIG_LIBS"
-+ curses_lib_flag=""
-+ fi
-+ fi
-+ if test "${enable_curses}" = "no" ; then
-+ # Try adding -lncurses -ltinfo
-+ ORIG_LIBS="$LIBS"
-+ curses_lib_flag=" -lncurses -ltinfo"
-+ LIBS="$LIBS $curses_lib_flag"
-+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-+/* end confdefs.h. */
-+#include <curses.h>
-+ #include <term.h>
-+int
-+main ()
-+{
-+ int errret;
-+ setupterm("", 0, &errret);
-+ return 0;
-+
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+if ac_fn_c_try_link "$LINENO"; then :
-+ enable_curses=yes
-+else
-+ enable_curses=no
-+fi
- rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- if test "${enable_curses}" = "no" ; then
-diff --git a/cs/c/configure b/cs/c/configure
-index db2132b7f4d..2ec78292f56 100755
---- a/cs/c/configure
-+++ b/cs/c/configure
-@@ -5635,7 +5635,7 @@ rm -f core conftest.err conftest.$ac_objext \
- if test "${enable_curses}" = "no" ; then
- if test "${enable_portable}" = "yes" ; then
- if test "${curses_portable_link}" != "" ; then
-- # Try adding portabel link flags
-+ # Try adding portable link flags
- ORIG_LIBS="$LIBS"
- ORIG_CPPFLAGS="$CPPFLAGS"
- ORIG_PREFLAGS="$PREFLAGS"
-@@ -5699,6 +5699,38 @@ if ac_fn_c_try_link "$LINENO"; then :
- else
- enable_curses=no
- fi
-+rm -f core conftest.err conftest.$ac_objext \
-+ conftest$ac_exeext conftest.$ac_ext
-+ if test "${enable_curses}" = "no" ; then
-+ LIBS="$ORIG_LIBS"
-+ curses_lib_flag=""
-+ fi
-+ fi
-+ if test "${enable_curses}" = "no" ; then
-+ # Try adding -lncurses -ltinfo
-+ ORIG_LIBS="$LIBS"
-+ curses_lib_flag=" -lncurses -ltinfo"
-+ LIBS="$LIBS $curses_lib_flag"
-+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-+/* end confdefs.h. */
-+#include <curses.h>
-+ #include <term.h>
-+int
-+main ()
-+{
-+ int errret;
-+ setupterm("", 0, &errret);
-+ return 0;
-+
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+if ac_fn_c_try_link "$LINENO"; then :
-+ enable_curses=yes
-+else
-+ enable_curses=no
-+fi
- rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- if test "${enable_curses}" = "no" ; then
diff --git a/dev-scheme/racket/racket-8.6.ebuild b/dev-scheme/racket/racket-8.6.ebuild
index f33c2c116b51..28e562b9b989 100644
--- a/dev-scheme/racket/racket-8.6.ebuild
+++ b/dev-scheme/racket/racket-8.6.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -24,7 +24,7 @@ LICENSE="
# PV == SLOT but this has to be checked carefully and in cases
# where we use _p, _pre, etc it will have to be set manually.
SLOT="0/${PV}"
-KEYWORDS="amd64 ~arm ~ppc ~ppc64 x86"
+KEYWORDS="amd64 ~arm ~ppc ppc64 x86"
IUSE="+chez +doc +futures iconv +jit minimal ncurses +places +threads"
# See bug #809785 re chez/threads
REQUIRED_USE="chez? ( futures places ) futures? ( jit threads ) places? ( threads )"
diff --git a/dev-scheme/racket/racket-8.7.ebuild b/dev-scheme/racket/racket-8.7.ebuild
index 6cd3f9300d24..c1aa334b4e61 100644
--- a/dev-scheme/racket/racket-8.7.ebuild
+++ b/dev-scheme/racket/racket-8.7.ebuild
@@ -25,7 +25,7 @@ LICENSE="
# PV == SLOT but this has to be checked carefully and in cases
# where we use _p, _pre, etc it will have to be set manually.
SLOT="0/${PV}"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+KEYWORDS="amd64 ~arm ~ppc ~ppc64 x86"
IUSE="+chez +doc +futures iconv +jit minimal ncurses +places +threads"
# See bug #809785 re chez/threads
REQUIRED_USE="chez? ( futures places ) futures? ( jit threads ) places? ( threads )"
diff --git a/dev-scheme/racket/racket-8.4-r1.ebuild b/dev-scheme/racket/racket-8.8.ebuild
index 21f19f5a855e..aea3f9340d79 100644
--- a/dev-scheme/racket/racket-8.4-r1.ebuild
+++ b/dev-scheme/racket/racket-8.8.ebuild
@@ -1,17 +1,18 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-inherit desktop optfeature readme.gentoo-r1
+inherit desktop optfeature toolchain-funcs readme.gentoo-r1
DESCRIPTION="General purpose, multi-paradigm Lisp-Scheme programming language"
-HOMEPAGE="https://racket-lang.org/"
+HOMEPAGE="https://racket-lang.org/
+ https://github.com/racket/racket/"
SRC_URI="
minimal? ( https://download.racket-lang.org/installers/${PV}/${PN}-minimal-${PV}-src-builtpkgs.tgz )
!minimal? ( https://download.racket-lang.org/installers/${PV}/${P}-src-builtpkgs.tgz )
"
-S="${WORKDIR}/${P}/src"
+S="${WORKDIR}"/${P}/src
# See https://blog.racket-lang.org/2019/11/completing-racket-s-relicensing-effort.html
LICENSE="
@@ -24,25 +25,18 @@ LICENSE="
# PV == SLOT but this has to be checked carefully and in cases
# where we use _p, _pre, etc it will have to be set manually.
SLOT="0/${PV}"
-KEYWORDS="amd64 ~arm ~ppc ~ppc64 x86"
-IUSE="+chez +doc +futures +jit minimal ncurses +places +threads"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE="+chez +doc +futures iconv +jit minimal ncurses +places +threads"
# See bug #809785 re chez/threads
REQUIRED_USE="chez? ( futures places ) futures? ( jit threads ) places? ( threads )"
-DEPEND="
+RDEPEND="
!dev-tex/slatex
dev-db/sqlite:3
dev-libs/libffi:=
ncurses? ( sys-libs/ncurses:= )
"
-RDEPEND="${DEPEND}"
-
-# Backports that will be probably available in next release (8.5)
-PATCHES=(
- # Pick correct ncurses library
- # https://github.com/racket/racket/commit/683388b0fcc8d0cc386e0ab749bcbba7cea18c8f
- "${FILESDIR}"/${P}-ncurses.patch
-)
+DEPEND="${RDEPEND}"
# "mred" and "mzscheme" are binaries generated by Racket, not CC
QA_FLAGS_IGNORED="usr/bin/mred usr/bin/mzscheme"
@@ -62,16 +56,25 @@ PKGDB=(
)
src_prepare() {
- # Prepare the environment
+ # Prepare the environment.
unset PLTADDONDIR PLTCOLLECTS PLTCONFIGDIR PLTUSERHOME
default
- # Remove bundled libffi
- rm -r ./bc/foreign/libffi || die "failed to remove bundled libffi"
+ # Remove bundled libffi.
+ rm -r "${S}"/bc/foreign/libffi || die "failed to remove bundled libffi"
}
src_configure() {
+ # Compilation of Zuo does not respect the autoconf configuration.
+ tc-export CC
+
+ einfo "Configuring Zuo in ${S}/zuo"
+ pushd "${S}"/zuo >/dev/null || die
+ econf
+ popd >/dev/null || die
+
+ einfo "Configuring Racket in ${S}"
# Libtool:
# According to vapier, we should use the bundled libtool
# such that we don't preclude cross-compile.
@@ -82,13 +85,14 @@ src_configure() {
# --enable-libs & --disable-shared is the way to build
# .a files that are needed to embed Racket into programs
# https://docs.racket-lang.org/inside/cs-embedding.html
- local myconf=(
+ local -a myconf=(
--disable-shared
--disable-strip
- --docdir="${EPREFIX}/usr/share/doc/${PF}"
+ --docdir="${EPREFIX}"/usr/share/doc/${PF}
--enable-libs
$(usex chez "--enable-cs --enable-csonly" "--enable-bc --enable-bconly")
$(use_enable doc docs)
+ $(use_enable iconv)
$(use_enable ncurses curses)
)
# Some options are togglable only for the BC version (are forced in CS)
@@ -105,18 +109,27 @@ src_configure() {
econf "${myconf[@]}"
}
+src_compile() {
+ # Compile Racket.
+ CC_FOR_BUILD="$(tc-getCC)" default
+
+ # Recompile Zuo with optimizations.
+ emake -C zuo
+}
+
src_install() {
+ # Install Racket.
default
- # Install Racket boot files
- use chez && emake -C "${S}"/cs/c DESTDIR="${ED}" unix-install-boot-files
+ # Install Zuo.
+ emake -C zuo DESTDIR="${ED}" install
- # raco needs decompressed files for packages doc installation bug 662424
+ # raco needs decompressed files for packages doc installation, bug #662424
use doc && docompress -x /usr/share/doc/${PF}
- # Create missing desktop files and icon
+ # Create missing desktop files and icon.
if ! use minimal ; then
- newicon "${ED}/usr/share/racket/drracket-exe-icon.png" "racket.png"
+ newicon "${ED}"/usr/share/racket/drracket-exe-icon.png racket.png
make_desktop_entry "gracket" "GRacket" "racket" "Development;Education;"
make_desktop_entry "plt-games" "PLT Games" "racket" "Education;Game;"
fi
@@ -127,7 +140,7 @@ src_install() {
pkg_preinst() {
# If we are merging the same SLOT check if package
# database files exist and do not overwrite them
- if has_version "${CATEGORY}/${PN}:${SLOT}" ; then
+ if has_version ${CATEGORY}/${PN}:${SLOT} ; then
echo "We are installing the same SLOT: ${SLOT}"
local rktd
for rktd in "${PKGDB[@]}" ; do
@@ -142,11 +155,15 @@ pkg_preinst() {
fi
}
+get_outsiders() {
+ racket -l raco -- pkg show -i | grep 'link' | sed 's|link.*||g'
+}
+
pkg_postinst() {
# If we have any pkgs not included in Racket main distribution (outsiders),
# then we have to re-setup them or during installation other pkgs will want
# to recompile parts of "outsider" pkgs they depend upon (and fail).
- local outsiders=( $(raco pkg show -i | grep 'link' | sed 's|link.*||g') )
+ local -a outsiders=( $(get_outsiders) )
if [[ -n "${outsiders[@]}" ]] ; then
ebegin "Running \"raco setup\" for outsider packages"
echo "Outsiders: ${outsiders[@]}"
diff --git a/dev-scheme/scm/files/scm-5.5.6-ncurses.patch b/dev-scheme/scm/files/scm-5.5.6-ncurses.patch
new file mode 100644
index 000000000000..59b353ebd88e
--- /dev/null
+++ b/dev-scheme/scm/files/scm-5.5.6-ncurses.patch
@@ -0,0 +1,11 @@
+--- a/build.scm
++++ b/build.scm
+@@ -565,7 +565,7 @@
+ (regex linux "" "" #f () ())
+ (graphics linux "-I/usr/include/X11 -DX11" "-L/usr/X11R6/lib -lX11"
+ "/usr/X11R6/lib/libX11.so" () ())
+- (curses linux "" "-lcurses" "/lib/libncurses.so" () ())
++ (curses linux "" "-lncurses" "/lib/libncurses.so" () ())
+ (nostart linux "" "" #f () ())
+ (dump linux "" "" #f ("unexelf.c" "gmalloc.c") ())
+
diff --git a/dev-scheme/scm/scm-5.5.6-r4.ebuild b/dev-scheme/scm/scm-5.5.6-r4.ebuild
index 0a286fe7cd04..bce8f81d2491 100644
--- a/dev-scheme/scm/scm-5.5.6-r4.ebuild
+++ b/dev-scheme/scm/scm-5.5.6-r4.ebuild
@@ -27,8 +27,11 @@ DEPEND=">=dev-scheme/slib-3.1.5
readline? ( sys-libs/libtermcap-compat )"
RDEPEND="${DEPEND}"
-PATCHES=( "${FILESDIR}/${P}-multiplefixes.patch"
- "${FILESDIR}/${P}-respect-ldflags.patch" )
+PATCHES=(
+ "${FILESDIR}"/${P}-multiplefixes.patch
+ "${FILESDIR}"/${P}-ncurses.patch
+ "${FILESDIR}"/${P}-respect-ldflags.patch
+)
src_prepare() {
default
@@ -36,6 +39,7 @@ src_prepare() {
sed \
-e "s|\"gcc\"|\"$(tc-getCC)\"|g" \
-e "s|\"ld\"|\"$(tc-getLD)\"|g" \
+ -e "s|\"-shared\"|\"-shared ${LDFLAGS}\"|g" \
-i ./build.scm || die
}
diff --git a/dev-scheme/scsh-lib/Manifest b/dev-scheme/scsh-lib/Manifest
deleted file mode 100644
index 46f6cec80c7d..000000000000
--- a/dev-scheme/scsh-lib/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST scsh-0.7_pre20160820.tar.gz 227203 BLAKE2B 888a52a4866bfe4f8245fff4ca449a82cd67485aa8a3e8f67d20805f7120e62ed8dd37b7fe6139712652785d0d9f064bbeab0010722e9ce0b58bc59e44b054b3 SHA512 e2c223f64eb2a19dde19382dacad01aa04f8faabeeb15e1c1b3e28b2f675f4184825372f7aa281141797cd56f5ef999b4977dd7e68ae0a3b23631fd76182fba1
-DIST scsh-0.7_pre20160820_rx.tar.gz 46869 BLAKE2B 4be965c558cc21bde5fc24dee2ddc68a3e1d83d6b9701a7e484eb47c928ecdedfa896b944bbb1d709d014d9848a066a67a0d53f6dd86f435ea665ef99da1d40e SHA512 bc300f596b611ae296327b3046aa01cfb6b2be182c69abfe56e3e504573607d3dee55723b1d48951aa8534f450a0184fc7da0c1370fcffb9adba866ace3665b4
diff --git a/dev-scheme/scsh-lib/files/scsh-lib-0.7-Makefile.in-LDFLAGS.patch b/dev-scheme/scsh-lib/files/scsh-lib-0.7-Makefile.in-LDFLAGS.patch
deleted file mode 100644
index b2431c908922..000000000000
--- a/dev-scheme/scsh-lib/files/scsh-lib-0.7-Makefile.in-LDFLAGS.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -126,13 +126,13 @@ SCHEME = scheme/command-line.scm \
- rx/regress.scm
-
- go: c/scsh-tramp.c
-- $(CC) -o $@ $(CFLAGS) \
-+ $(CC) -o $@ $(CFLAGS) $(CPPLAGS) $(LDFLAGS) \
- -DVM=\"$(SCHEME48VM)\" \
- -DIMAGE=\"scsh.image\" \
- $(srcdir)/c/scsh-tramp.c
-
- scsh: c/scsh-tramp.c
-- $(CC) -o $@ $(CFLAGS) \
-+ $(CC) -o $@ $(CFLAGS) $(CPPLAGS) $(LDFLAGS) \
- -DVM=\"$(SCHEME48VM)\" \
- -DIMAGE=\"$(LIB)/scsh.image\" \
- $(srcdir)/c/scsh-tramp.c
diff --git a/dev-scheme/scsh-lib/metadata.xml b/dev-scheme/scsh-lib/metadata.xml
deleted file mode 100644
index 22eefaa8cb02..000000000000
--- a/dev-scheme/scsh-lib/metadata.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
-
-<pkgmetadata>
- <maintainer type="project">
- <email>scheme@gentoo.org</email>
- <name>Gentoo Scheme Project</name>
- </maintainer>
- <longdescription>
- Scsh has two main components: a process notation for running programs
- and setting up pipelines and redirections, and a complete syscall
- library for low-level access to the operating system, i.e. to POSIX,
- the least common denominator of more or less all Unices, plus widely
- supported extensions such as symbolic links and BSD sockets.
-
- Moreover, scsh provides an awk facility for pattern-directed
- computation over streams of records, a rich facility for matching
- regular-expression patterns in strings, event-based interrupt
- handling, user-level threads, a futuristic module system, and an
- interactive environment.
-
- Scsh comes with extensive documentation describing these and other
- features.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-scheme/scsh-lib/scsh-lib-0.7_pre20160820.ebuild b/dev-scheme/scsh-lib/scsh-lib-0.7_pre20160820.ebuild
deleted file mode 100644
index 1765e54f8190..000000000000
--- a/dev-scheme/scsh-lib/scsh-lib-0.7_pre20160820.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# For snapshots: keep the hashes in sync with app-shells/scsh
-SCSH_H=114432435e4eadd54334df6b37fcae505079b49f
-RX_H=d3231ad13de2b44e3ee173b1c9d09ff165e8b6d5
-
-# compatible scheme48 version
-SCHEME48V=1.9.2
-
-inherit autotools
-
-DESCRIPTION="Unix shell embedded in Scheme (libraries and launcher)"
-HOMEPAGE="https://www.scsh.net/"
-SRC_URI="
- https://github.com/scheme/scsh/archive/${SCSH_H}.tar.gz -> scsh-${PV}.tar.gz
- https://github.com/scheme/rx/archive/${RX_H}.tar.gz -> scsh-${PV}_rx.tar.gz
-"
-S="${WORKDIR}/scsh-${SCSH_H}"
-
-RESTRICT="test"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-# older versions were in conflict with scheme48's files, on the other hand,
-# new 2016 version uses scheme48
-RDEPEND="~dev-scheme/scheme48-${SCHEME48V}"
-DEPEND="${RDEPEND}"
-
-PATCHES=( "${FILESDIR}"/${PN}-0.7-Makefile.in-LDFLAGS.patch )
-
-src_unpack() {
- unpack scsh-${PV}.tar.gz
-
- tar xf "${DISTDIR}/scsh-${PV}_rx.tar.gz" --strip-components 1 -C "${S}/rx/" ||
- die "Failed to unpack scsh-${PV}_rx.tar.gz"
-}
-
-src_prepare() {
- SCHEME48VM=/usr/$(get_libdir)/scheme48-${SCHEME48V}/scheme48vm
- export SCHEME48VM
-
- default
- eautoreconf
-}
-
-src_configure() {
- econf --with-scheme48=${SCHEME48VM}
-}
-
-src_compile() {
- emake SCHEME48VM=${SCHEME48VM}
-}
-
-src_install() {
- emake SCHEME48VM=${SCHEME48VM} DESTDIR="${D}" enough dirs install-scsh
-
- rm "${D}"/usr/bin/scsh || die
-}
diff --git a/dev-scheme/skribilo/Manifest b/dev-scheme/skribilo/Manifest
index 05c302b07b86..636037f62b4e 100644
--- a/dev-scheme/skribilo/Manifest
+++ b/dev-scheme/skribilo/Manifest
@@ -1 +1,2 @@
+DIST skribilo-0.10.0.tar.gz 1535043 BLAKE2B 4bfa666f942150aa3d44bfea4a6d9bebcee1a48b7b5b04e0c13ff6f34150e0b9d633d13df27b2aaa4497d51050cd4ab5b5ac0fb5ffe7c1e3fbd66dc9242e5916 SHA512 97c4a08c83fb47759e9c8b83e53438561a77c41bfc655083938546f65be7e8a647d38bc3bf231996822ed1200915fd0691102c1e0d4c02fef499a9b99b2b844e
DIST skribilo-0.9.5.tar.gz 1520763 BLAKE2B c624174a29cb7eb7236b8de506ade00c58fdd895807bd3e052872b7d950be9106daef6015c34ff8b5e7888b43383cbfa5c29c62835d02121cac19062985c6032 SHA512 22dff4523039792bd3662f9f1302569bfb83d92b7106ae22b8926e264b00932ea50ab753bb83aed499d0aa651d0fe99fdfd28b83956ec3ad84b81078391fe014
diff --git a/dev-scheme/skribilo/skribilo-0.10.0.ebuild b/dev-scheme/skribilo/skribilo-0.10.0.ebuild
new file mode 100644
index 000000000000..a0e2b7ae3df6
--- /dev/null
+++ b/dev-scheme/skribilo/skribilo-0.10.0.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit elisp-common
+
+DESCRIPTION="Document production tool written in Guile Scheme"
+HOMEPAGE="https://www.nongnu.org/skribilo/"
+SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="emacs"
+RESTRICT="strip test" # tests fail, seem broken
+
+RDEPEND="
+ app-text/ghostscript-gpl
+ media-gfx/imagemagick
+
+ >=dev-scheme/guile-2.0.0:=
+ dev-scheme/guile-lib
+ dev-scheme/guile-reader
+"
+DEPEND="${RDEPEND}"
+BDEPEND="emacs? ( >=app-editors/emacs-23.1:* )"
+
+# guile generates ELF files without use of C or machine code
+# It's a portage's false positive. bug #677600
+QA_PREBUILT='*[.]go'
+
+SITEFILE="50${PN}-gentoo.el"
+
+src_prepare() {
+ default
+
+ # http://debbugs.gnu.org/cgi/bugreport.cgi?bug=38112
+ find "${S}" -name "*.scm" -exec touch {} + || die
+}
+
+src_configure() {
+ if ! use emacs ; then
+ export EMACS="no"
+ export EMACSLOADPATH="/dev/null"
+ fi
+
+ econf
+}
+
+src_compile() {
+ default
+
+ use emacs && elisp-compile ./emacs/*.el
+}
+
+src_install() {
+ default
+
+ if use emacs ; then
+ elisp-install ${PN} ./emacs/*.el{,c}
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ else
+ local emacsd="${D}"/usr/share/emacs
+ if [[ -d "${emacsd}" ]] ; then
+ echo "Building without Emacs support but ${emacsd} found! Removing."
+ rm -r "${emacsd}" || die
+ fi
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-scheme/stklos/metadata.xml b/dev-scheme/stklos/metadata.xml
index aaf615253e8c..267080d36fd9 100644
--- a/dev-scheme/stklos/metadata.xml
+++ b/dev-scheme/stklos/metadata.xml
@@ -12,4 +12,8 @@
Virtual Machine. STklos can also be compiled as a library and
embedded in an application.
</longdescription>
+ <upstream>
+ <remote-id type="github">egallesio/STklos</remote-id>
+ <remote-id type="gitlab">Gallesio/STklos</remote-id>
+ </upstream>
</pkgmetadata>