summaryrefslogtreecommitdiff
path: root/dev-scheme
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-08-19 12:25:21 +0100
committerV3n3RiX <venerix@koprulu.sector>2024-08-19 12:25:21 +0100
commit1f3e27f8fde0df9246ce9151ced7d2dd4e96cb07 (patch)
tree2ccd1e9121906f2bccf218e14e3ca943a2b84bf3 /dev-scheme
parent16be64511bd21e32a29645b49e37611507709790 (diff)
gentoo auto-resync : 19:08:2024 - 12:25:21
Diffstat (limited to 'dev-scheme')
-rw-r--r--dev-scheme/Manifest.gzbin9641 -> 9826 bytes
-rw-r--r--dev-scheme/guile-commonmark/Manifest3
-rw-r--r--dev-scheme/guile-commonmark/guile-commonmark-0.1.2_pre20240803.ebuild29
-rw-r--r--dev-scheme/guile-commonmark/metadata.xml15
-rw-r--r--dev-scheme/guile-reader/Manifest3
-rw-r--r--dev-scheme/guile-reader/files/guile-reader-0.6.3-implicit-fn-decl.patch25
-rw-r--r--dev-scheme/guile-reader/files/guile-reader-0.6.3-slot.patch66
-rw-r--r--dev-scheme/guile-reader/guile-reader-0.6.3-r100.ebuild60
-rw-r--r--dev-scheme/guile/Manifest6
-rw-r--r--dev-scheme/guile/guile-2.2.7-r100.ebuild93
-rw-r--r--dev-scheme/guile/guile-3.0.10-r100.ebuild91
-rw-r--r--dev-scheme/guile/guile-3.0.10.ebuild2
-rw-r--r--dev-scheme/guile/metadata.xml9
-rw-r--r--dev-scheme/slib/Manifest2
-rw-r--r--dev-scheme/slib/slib-3.3.1-r100.ebuild123
15 files changed, 524 insertions, 3 deletions
diff --git a/dev-scheme/Manifest.gz b/dev-scheme/Manifest.gz
index 87ceb540a783..ce8d895880a4 100644
--- a/dev-scheme/Manifest.gz
+++ b/dev-scheme/Manifest.gz
Binary files differ
diff --git a/dev-scheme/guile-commonmark/Manifest b/dev-scheme/guile-commonmark/Manifest
new file mode 100644
index 000000000000..544f13212241
--- /dev/null
+++ b/dev-scheme/guile-commonmark/Manifest
@@ -0,0 +1,3 @@
+DIST guile-commonmark-0.1.2_pre20240803.tar.gz 81148 BLAKE2B 0468e49cb58da59bb2e4ea7d372abcc7d9cbc09d05156d9b276057f42b84cbeb7fbcd61b6f406e4e532f2e834682b943a7365de87a901b385daa582d6fa6c11d SHA512 3c89495f201421b9326b8fbb54b92e554136429f6e2817be5ed99a465ced36f63b2446b46760e4eb303bc03d5d630410492994e1cb593b9c803686d7811c4e3d
+EBUILD guile-commonmark-0.1.2_pre20240803.ebuild 635 BLAKE2B c340edaff9d5e24e2519bfc8bcff4f5bf16236fd7e14a7195831d4d58f40a4c2073ea1a3b7e39b8555a9a767df0988aeb78d68397af7f1c0c042fae868201e29 SHA512 bbf2d3a84cbc69475097048c98beb7eac07b1e8f88edaeabc930f3e6126687f651a7b38618602284df7f53cad1843072d48cf08d57899b04863d16cd63440ab0
+MISC metadata.xml 502 BLAKE2B 8640d637c6c0811ee2e6b02d25913a3187e87701e97e9246f02292426d9726d3ecd72357fa5bd2f22d4bb2a77377e6697f7b99236764b93a7e9c89430bcd19d9 SHA512 18b9e84a39065047e2efef2aa32f6fdbabb09303ec363e174f92ccf096b4dfec751e6a1692fcf4ea2390b830c99ae53341a46e6366776b852c2af1caa9e4fc7e
diff --git a/dev-scheme/guile-commonmark/guile-commonmark-0.1.2_pre20240803.ebuild b/dev-scheme/guile-commonmark/guile-commonmark-0.1.2_pre20240803.ebuild
new file mode 100644
index 000000000000..dc73ecc8f843
--- /dev/null
+++ b/dev-scheme/guile-commonmark/guile-commonmark-0.1.2_pre20240803.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+GUILE_COMPAT=( 2-2 3-0 )
+inherit guile autotools
+
+MY_COMMIT=538ffea25ca69d9f3ee17033534ba03cc27ba468
+
+DESCRIPTION="Implementation of CommonMark for Guile"
+HOMEPAGE="https://github.com/OrangeShark/guile-commonmark"
+SRC_URI="https://github.com/OrangeShark/${PN}/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${MY_COMMIT}"
+
+LICENSE="LGPL-3+"
+SLOT="0"
+KEYWORDS="~amd64"
+REQUIRED_USE="${GUILE_REQUIRED_USE}"
+
+RDEPEND="${GUILE_DEPS}"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ default
+
+ guile_src_prepare
+ eautoreconf
+}
diff --git a/dev-scheme/guile-commonmark/metadata.xml b/dev-scheme/guile-commonmark/metadata.xml
new file mode 100644
index 000000000000..8bf01c4d6ab3
--- /dev/null
+++ b/dev-scheme/guile-commonmark/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>arsen@gentoo.org</email>
+ <description>Arsen Arsenović</description>
+ </maintainer>
+ <maintainer type="project">
+ <email>scheme@gentoo.org</email>
+ <description>Gentoo Scheme Project</description>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">OrangeShark/guile-commonmark</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-scheme/guile-reader/Manifest b/dev-scheme/guile-reader/Manifest
index 4069ea1f2e75..3938c7dcf8a9 100644
--- a/dev-scheme/guile-reader/Manifest
+++ b/dev-scheme/guile-reader/Manifest
@@ -1,3 +1,6 @@
+AUX guile-reader-0.6.3-implicit-fn-decl.patch 575 BLAKE2B d17a505c89dee960f502121767a6c1ef6dbdfc71337793a364311b376960f8ff018e402c8af321cd18d906cd76f1712b22856f1bc8a139d66583d503b662d7c4 SHA512 435fba6516a874f6a026efda551b5fa5274da2f933234c7ae18d942d296524dfdff1aa2b76889381a55b7293f03e92b3b9eb2ea5c41c88e15fdf25c11874dff4
+AUX guile-reader-0.6.3-slot.patch 2063 BLAKE2B 1beb4f6ecbb4a2c4754cdcf47ed4979f07bdb6192f8e0d4cf0c72cef5a2557ed2ca3e3802881ccdd491d57172ba04cd7c149c0f06fcf3d5b672688ac2974c4dc SHA512 220ee0c67695a59e43b57bcf5ab69ef1bae001feb5338f79e235b6e609d49f25d727f4a6c38e8228b94c3606225419f900135edbe81223a7e4c32c326dcc6dac
DIST guile-reader-0.6.3.tar.gz 691612 BLAKE2B 504152d3a194705435efa4e2d2b51fd1bc22a998161b09ef0157c13bf46ef593be0101d6b72e197818a8ba18406db0de518423a168d36f54616dfcd4e807f3b9 SHA512 0f9f47ee5f24ebb79894863ac96d63b0c7d2801020a212c59d11c7685ff4006a646be988a696a9b623dc0e0605f46d4a9a8680bfabd299878e41eab92e75efd5
+EBUILD guile-reader-0.6.3-r100.ebuild 1177 BLAKE2B 6ed5864e7039bf88c3332594a6781875beb472e2963d0cdc6914359108caecd82578f5a4428b9f828feaef17aa1fc7cf8e64611a9777d533c114ea9cd9eeee56 SHA512 930db18afdbf4f4e10a92a13620502ce387d604aee075f601344cded9e478ac17d337a5acbdcc3c65ccffe2ab241a6d2831c5d3618c2e92e9fa4330ed1f4f013
EBUILD guile-reader-0.6.3-r2.ebuild 922 BLAKE2B 7c44f6612f62fcec444c201c43fb8108c049921cf4b4aeee86d9bb669a34d8320ef7826b44c298293b385f0a7b4350fbd70ab27f855c566adc5fbeaaab7719cc SHA512 c0e045e2b2377497391335e2627564c04405b6e77c9fa47690a3f32964b91def212d2e9faf3d5d304d2c14768d2275cc218af887efc035dbc883ba21ad86e291
MISC metadata.xml 974 BLAKE2B 1ae5959d148b9110d539b6399d77b5c54d873423ea79e33533353133c2d4c4adccc63213ad22c15ea0d4bbee47e82f8f5ac507757f6de903f2b6305dab42c46b SHA512 eb374317ab6b7b81f34241f454ece70defe34c319c1266b7eaf03502f96f77b4200cf1762a035c26f67d86bea43db633c6375528c49d7260c3114ff469709c44
diff --git a/dev-scheme/guile-reader/files/guile-reader-0.6.3-implicit-fn-decl.patch b/dev-scheme/guile-reader/files/guile-reader-0.6.3-implicit-fn-decl.patch
new file mode 100644
index 000000000000..f09f3055c0a6
--- /dev/null
+++ b/dev-scheme/guile-reader/files/guile-reader-0.6.3-implicit-fn-decl.patch
@@ -0,0 +1,25 @@
+From d4ff9b9e4c64f7e60c95676ec74c49b12b20ad3b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@gentoo.org>
+Date: Sat, 3 Aug 2024 18:28:51 +0200
+Subject: [PATCH 1/2] add missing include
+
+fixes an implicit function declaration
+---
+ src/compat.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/compat.c b/src/compat.c
+index 943c7f9..9b15b31 100644
+--- a/src/compat.c
++++ b/src/compat.c
+@@ -21,6 +21,7 @@
+ #endif
+
+ #include <libguile.h>
++#include <libguile/deprecation.h>
+ #include <compat.h>
+ #include <string.h>
+ #include <stdio.h>
+--
+2.45.2
+
diff --git a/dev-scheme/guile-reader/files/guile-reader-0.6.3-slot.patch b/dev-scheme/guile-reader/files/guile-reader-0.6.3-slot.patch
new file mode 100644
index 000000000000..79df5bebb546
--- /dev/null
+++ b/dev-scheme/guile-reader/files/guile-reader-0.6.3-slot.patch
@@ -0,0 +1,66 @@
+From d75f6155c5ff58ac2b3fee311f7056e01b1b6981 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Arsen=20Arsenovi=C4=87?= <arsen@aarsen.me>
+Date: Sat, 3 Aug 2024 18:29:21 +0200
+Subject: [PATCH 2/2] use the guile extension directory for libguile-reader.so
+
+this directory is slotted, and so, allows parallel installation.
+---
+ configure.ac | 2 ++
+ modules/Makefile.am | 3 ++-
+ modules/system/reader.in | 2 +-
+ src/Makefile.am | 2 +-
+ 4 files changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index c34e4dd..2ddd308 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -114,6 +114,8 @@ fi
+ AC_PATH_PROGS([GUILD], [guild guile-tools])
+ GUILE_SITE_DIR
+
++AC_SUBST([guileextdir], ["${GUILE_EXTENSION}"])
++
+ clean_LIBS="$LIBS"
+ clean_CFLAGS="$CFLAGS"
+ LIBS="$LIBS $GUILE_LIBS"
+diff --git a/modules/Makefile.am b/modules/Makefile.am
+index 25f2499..b0d4fd4 100644
+--- a/modules/Makefile.am
++++ b/modules/Makefile.am
+@@ -13,7 +13,8 @@ nobase_nodist_guilemodule_DATA = \
+
+ .in.scm:
+ $(AM_V_GEN)$(MKDIR_P) `dirname "$@"` ; \
+- $(SED) -e 's|[@]libdir[@]|$(libdir)|g' < "$<" > "$@.tmp" ; \
++ $(SED) -e 's|[@]guileextdir[@]|$(guileextdir)|g' \
++ < "$<" > "$@.tmp" ; \
+ mv "$@.tmp" "$@"
+
+ if HAVE_GUILE2
+diff --git a/modules/system/reader.in b/modules/system/reader.in
+index fbef2ac..cd23ba7 100644
+--- a/modules/system/reader.in
++++ b/modules/system/reader.in
+@@ -58,7 +58,7 @@
+
+ (define %libguile-reader
+ (string-append (or (getenv "GUILE_READER_LIBDIR")
+- "@libdir@")
++ "@guileextdir@")
+ "/libguile-reader"))
+
+ (load-extension %libguile-reader "scm_reader_init_bindings")
+diff --git a/src/Makefile.am b/src/Makefile.am
+index e029bac..71294c2 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -1,4 +1,4 @@
+-lib_LTLIBRARIES = libguile-reader.la
++guileext_LTLIBRARIES = libguile-reader.la
+ libguile_reader_la_SOURCES = reader.c token-readers.c reader-lib.c compat.c
+ libguile_reader_la_LDFLAGS = -module -version-info 1:0:0 $(GUILE_LDFLAGS)
+
+--
+2.45.2
+
diff --git a/dev-scheme/guile-reader/guile-reader-0.6.3-r100.ebuild b/dev-scheme/guile-reader/guile-reader-0.6.3-r100.ebuild
new file mode 100644
index 000000000000..5374e0aaaa63
--- /dev/null
+++ b/dev-scheme/guile-reader/guile-reader-0.6.3-r100.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+GUILE_COMPAT=( 2-2 3-0 )
+inherit guile autotools
+
+DESCRIPTION="Simple framework for building readers for GNU Guile"
+HOMEPAGE="https://www.nongnu.org/guile-reader/"
+SRC_URI="mirror://nongnu/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+REQUIRED_USE="${GUILE_REQUIRED_USE}"
+
+RDEPEND="${GUILE_DEPS}"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-util/gperf"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.6.3-implicit-fn-decl.patch"
+ "${FILESDIR}/${PN}-0.6.3-slot.patch"
+)
+
+src_prepare() {
+ default
+
+ eautoreconf
+
+ guile_bump_sources
+}
+
+configure_one_src() {
+ local -x guile_snarf="${GUILESNARF}"
+ # We don't have lightning packaged and, naturally, guile-reader has
+ # no --with-... for it. Suppress the automagic.
+ econf \
+ ac_cv_header_lightning_h=no
+}
+
+src_configure() {
+ guile_foreach_impl configure_one_src
+}
+
+compile_one_src() {
+ # Makefile appears to be missing seemingly all dependencies.
+ emake -j1 --shuffle=none
+}
+
+src_compile() {
+ guile_foreach_impl compile_one_src
+}
+
+src_install() {
+ guile_src_install
+
+ find "${ED}" -type f -name '*.la' -delete || die
+}
diff --git a/dev-scheme/guile/Manifest b/dev-scheme/guile/Manifest
index 4f1f347260e4..ec328a2637df 100644
--- a/dev-scheme/guile/Manifest
+++ b/dev-scheme/guile/Manifest
@@ -17,7 +17,9 @@ DIST guile-3.0.10.tar.xz 5802280 BLAKE2B 2b41f1afb282eb4672f5aca5b044f47a1250974
DIST guile-3.0.9.tar.xz 5750636 BLAKE2B 693f189bda52468d989f27c9482b515b8a14ed814d6e4a9a988d7a03d9789903a568b41c5e3ae524b3a51cc635693cd20245b2017efabb9774be59c298823083 SHA512 a1e47a60a654f26edc57b3a34d943e15a055fc85c3cc764e912be23a80d56534b16f3512d7c7bc426f24a0cac1fcc9556802ac248f10c1fbdde51cd1e24afaf2
EBUILD guile-1.8.8-r4.ebuild 3093 BLAKE2B 22de2f4fb4bbdb99cbcefbe740a1a19565f925baa3d7fe8cfe4e601f0d498236823b3ab0b4cb05aec088dd1c67391869f850fee54967c1484ba34cb684ae077e SHA512 f1de3ea647c208028a529a83ecd62cc84e728538b229ffd57fc32f97af1edfe556cda41c45e1a2e549ae3a8b91253d0498084fa4c698daaac221ba27fbe030fe
EBUILD guile-2.2.7-r1.ebuild 2153 BLAKE2B 15c8f851508b2a76a2f58e1cb1a183b09cb081f4c41b05f8709df2e41c11bfe197fd5cddefc5c1f125d75c8dd5bb7e70f6cf2026114cdecb965c9979c971f9e2 SHA512 f3d58eed30c24bf96faf65a4cd07d11105bda4632f59bdc919fd6568029e76786f47834db1890b2f43003f6fe9b5af82e7358a7b78f68e3a2d67931d28d56f61
+EBUILD guile-2.2.7-r100.ebuild 2572 BLAKE2B 1c315e3feff304f9a0cb0c6e52022450c0687c89ad230b5d638663e1b4e9626d6f2f2b5bd8d737317b54e67f2035f2809187c6819eed5470dfe69c676f6dac38 SHA512 f7df0de1b2696baba8cbff7c25811e446edebedc78127752bb15319dd6220765fd31b57ef169c5b5be3752b4468984bbb18d862ed49029fdf55841ca98b1d9e7
EBUILD guile-2.2.7-r2.ebuild 2306 BLAKE2B b211ec6990b4bbaf54a626800ff2616a0ee8ff758f684c8ff4b879ce408ef82751a24efa91b1fc8560525e1118f5baf6ba44c2c14266272784ba52060a129631 SHA512 ba61fbc87a1cc061fde07b95d1da6107b299a7294e6219815e11295cc24f16642ee742fe3b90424d069152f634fae88e2e3714e1fca8091cdaf6565b7bae3772
-EBUILD guile-3.0.10.ebuild 2157 BLAKE2B 90caed9523271c6da94cf9adf507c4eded321664e6d81fa548a7621c90ad055c3aa220a0383bed797603d828dc647589f3e61a9078831b9b1fe78ea34d1c21ea SHA512 c18ded13e7dc2cc3741d3855242888e510979f50a05109ee3a29ee1f17a53d33ac751de4538dc24ec189df4006aeff3ca4b5bcd1634c89a8586505fa234effd0
+EBUILD guile-3.0.10-r100.ebuild 2476 BLAKE2B 907d538589e8d956ff5be800de2af97928d12b093edfd0dfa36eaacf1f2922295052122b74100e8c6943438ebb30cb50e3f716329fc2190052930d5980e3c065 SHA512 fb24cf4f1fe10bbcdf0f876d1de85381206cbffa0cfdd96541461a16c2f0ee8f7bf7ed744dbc5c13af41548fa92ed0aa4e33ebbfeca010910bc60a028a62cbc3
+EBUILD guile-3.0.10.ebuild 2159 BLAKE2B e74912b908dd00bd77ee35d7192229e7f1d7a46e7f1343ecd5fcb238d6b41b9ccb48b154705a90f9fd3c4293caad7e68d329420124d5183660ddd599c9217d31 SHA512 177ba9d58b9e46362a3786bfbb7f2bb80c581728f7d0cae4541c4c3be57cadb17289f8a83a8d05986dd5972d1eac466ce82d015c19b5de555f97f1661c270704
EBUILD guile-3.0.9.ebuild 2157 BLAKE2B 90caed9523271c6da94cf9adf507c4eded321664e6d81fa548a7621c90ad055c3aa220a0383bed797603d828dc647589f3e61a9078831b9b1fe78ea34d1c21ea SHA512 c18ded13e7dc2cc3741d3855242888e510979f50a05109ee3a29ee1f17a53d33ac751de4538dc24ec189df4006aeff3ca4b5bcd1634c89a8586505fa234effd0
-MISC metadata.xml 1215 BLAKE2B cb546c1bfb71222500e0a78ba2d745a8ead21610ce8d66215e0230ea0249a2ecfd8fa42437d44e8d7eef6e0c64cf0100cbbdd9b580b88afa11274986fa49e712 SHA512 54b7513aeafafef02c9fafcba5c1c645fb163d43b03e253f278ebb9f198ce255171b61a6b847415652a8dabeaa2fb34fa226bd49b02bb2c2dcdeae00c6e3babe
+MISC metadata.xml 1423 BLAKE2B 1e1d2bc292338c5cab820a087f22fd4bd9517b85a6a1d52175cc666f329a2ce1f9cfcea6da01a02328395e15b0dbcb91e755fa8dde6709d1bbc47a0b34bb1e22 SHA512 013db66fb8ed106d739faad36c5b2014917526791839ea1e9bb9d4f588de666eb9a662dd5550be7f781a3346314d885742586ce9382d6745b3f7a9c1e9c37cc7
diff --git a/dev-scheme/guile/guile-2.2.7-r100.ebuild b/dev-scheme/guile/guile-2.2.7-r100.ebuild
new file mode 100644
index 000000000000..ad6818be8c55
--- /dev/null
+++ b/dev-scheme/guile/guile-2.2.7-r100.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+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="$(ver_cut 1-2)" # See (guile)Parallel Installations.
+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 +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/libltdl:=
+ dev-libs/libunistring:0=
+ sys-libs/ncurses:0=
+ sys-libs/readline:0=
+ virtual/libcrypt:=
+ !dev-scheme/guile:12
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ dev-build/libtool
+ sys-devel/gettext
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.2.3-gentoo-sandbox.patch"
+ "${FILESDIR}/${PN}-2.2.7-stack-up.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_configure() {
+ # see bug #676468
+ mv prebuilt/32-bit-big-endian{,.broken} || die
+
+ econf \
+ --program-suffix="-${SLOT}" \
+ --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
+
+ # 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
+
+ find "${D}" -name '*.la' -delete || die
+
+ # Move the pkg-config files to guile-data. In future versions, this
+ # should be handled by --with-pkgconfigdir (patch waiting on
+ # upstream).
+ local pcdir=/usr/share/guile-data/"${SLOT}"
+ mkdir -p "${ED}${pcdir}" || die
+ mv "${ED}"/usr/share/aclocal/guile{,-"${SLOT}"}.m4 || die
+ mv "${ED}"/usr/$(get_libdir)/pkgconfig/ \
+ "${ED}/${pcdir}" || die
+
+ newenvd - "50guile${SLOT}" <<-EOF
+ PKG_CONFIG_PATH="${pcdir}/pkgconfig"
+ EOF
+}
diff --git a/dev-scheme/guile/guile-3.0.10-r100.ebuild b/dev-scheme/guile/guile-3.0.10-r100.ebuild
new file mode 100644
index 000000000000..027d50d2cadf
--- /dev/null
+++ b/dev-scheme/guile/guile-3.0.10-r100.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+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="$(ver_cut 1-2)" # See (guile)Parallel Installations.
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~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:=
+ !dev-scheme/guile:12
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ dev-build/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 )
+
+# Where to install data files.
+GUILE_DATA="${PREFIX}/usr/share/guile-data/${SLOT}"
+GUILE_PCDIR="/usr/share/guile-data/${SLOT}/pkgconfig"
+
+src_configure() {
+ # see bug #676468
+ mv prebuilt/32-bit-big-endian{,.broken} || die
+
+ local -a myconf=(
+ --program-suffix="-${SLOT}"
+ --infodir="${GUILE_DATA}/info"
+ --with-pkgconfigdir="${GUILE_PCDIR}"
+
+ --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
+
+ mv "${ED}"/usr/share/aclocal/guile{,-"${SLOT}"}.m4 || die
+ find "${ED}" -name '*.la' -delete || die
+
+ newenvd - "50guile${SLOT}" <<-EOF
+ PKG_CONFIG_PATH="${GUILE_PCDIR}"
+ EOF
+}
diff --git a/dev-scheme/guile/guile-3.0.10.ebuild b/dev-scheme/guile/guile-3.0.10.ebuild
index 5d10f39559f3..25b528640471 100644
--- a/dev-scheme/guile/guile-3.0.10.ebuild
+++ b/dev-scheme/guile/guile-3.0.10.ebuild
@@ -64,7 +64,7 @@ src_configure() {
$(use_enable regex)
$(use_with threads)
)
- econf ${myconf[@]}
+ econf "${myconf[@]}"
}
src_install() {
diff --git a/dev-scheme/guile/metadata.xml b/dev-scheme/guile/metadata.xml
index 0ec99201052d..fc7f82d4b3b9 100644
--- a/dev-scheme/guile/metadata.xml
+++ b/dev-scheme/guile/metadata.xml
@@ -20,4 +20,13 @@ Guile is a library designed to help programmers create flexible applications. Us
<doc>https://www.gnu.org/software/guile/manual/html_node/index.html</doc>
<remote-id type="savannah">guile</remote-id>
</upstream>
+ <slots>
+ <!-- See (guile)Parallel Installations. -->
+ <slot name="3.0">
+ Guile effective version 3.0.
+ </slot>
+ <slot name="2.2">
+ Guile effective version 2.2.
+ </slot>
+ </slots>
</pkgmetadata>
diff --git a/dev-scheme/slib/Manifest b/dev-scheme/slib/Manifest
index ad00419f1dff..56721cdff515 100644
--- a/dev-scheme/slib/Manifest
+++ b/dev-scheme/slib/Manifest
@@ -2,5 +2,7 @@ AUX 50slib 39 BLAKE2B a7e221f173cfc2b24c72f047130e6b4c289533a22dc7d59fca49a147ed
AUX slib-3.2.5-fix-makefile-guile.patch 882 BLAKE2B 6e9c80b476cafa24477aae5b30e8c35f116cfbd0261f06b15672e39cc94e2ef6cb116104a41e5c0f1ebcb887664d9f43ec6c5b21ab3286d5a33c56d081ca9a4b SHA512 74997578edd5472f084a3b899c4e11b67432a4776bce6a19cbd4300316bf413f38374711a9a5cd3c10cd6cac01cb6d337d6f2ad18236bc4747c0bccf88948e3a
AUX slib-3.2.5-fix-paths.patch 1627 BLAKE2B bea0c823ca1f4e006953128cb5fe2886f5e84efbcf2d1ee32c801524d3bbbaf65899853c476697b501673501b112e7bd9382f7e372d27745cd190d3fa66a0bd4 SHA512 bdd667f20ca0ef57707a4df379186b58ef5ffab38e61a7e8e4ef697d7a90ebbafa8e4ca1f887d87520290656f2445fe1a9f4bd4e22634587908f70059dde0f30
DIST slib-3b5.zip 1105432 BLAKE2B ae9a6bb34b318875048fad05403a90342b070770013ecd8b022846dc3c43c708511ce6f8ec2be6da2329b01dcc1ed0a641bf68569fd022bb4e2187e20efac0b0 SHA512 f6ebf163fe34498141ab61b6887a9a5db8f2fe0aef1f6c70a7a5783dde6d1268d7e724bc340b73b36189b09013e7079584e0af74f0876e5ebfa46b53d847923e
+DIST slib-3c1.zip 1108203 BLAKE2B 86c38a6ce6936bd1e8b2e3f52fdd3e2e05ba1bb86a611aca7f66a5d65095c81774444459f23f47dd8d01c808ea40c2052d07587c73ffca010f50f5415b2beaf0 SHA512 a6559c3a58ebadfd9efa52391573af375ff142e21e3eface4df346ca7ba7a66a15883596a7a58f6d7f97143729de5022c04d864d90c8a1b3b158b23fbeac8911
EBUILD slib-3.2.5-r2.ebuild 2639 BLAKE2B 92063f2b93464cd545edc7165a8a1adf4da678766aa73dc21000bcc4a9288a0420d0a6bb878ae08b103460011da1b9fcee2eee6e49a642d10cfa1e7479227128 SHA512 bf7c1a44da68ffa07f0c695029e45b723c866cf413b594915c32f2a1177c2e9982b12c0d1e87ee347626f2004dcbe7f938e30472663ed88550ba60d938a559ad
+EBUILD slib-3.3.1-r100.ebuild 2810 BLAKE2B 3765907c03448c74e86e44510e42a7e659aae13e96d5a05c325f2f84bf5a379f751f6ad8176f807030619d0501a980d2e1e7db6dec3502373f19449e4e841b46 SHA512 3a1f177f34d67e36588c1e77b4ea692a5f300aff7cc4ba7d6db41e53e75c384a38a60f55aea23136f369eb0cb44f80a8158652970d708bf2b4cf815c4abb15dd
MISC metadata.xml 581 BLAKE2B ce1522831adc36b4f5adc45aa3fded28ace2913a530a30df36d4e35fe53a023f969e124a5270bfbe336dc81f13cca1d4a93565655cb61a6c1f0ad52b967363ae SHA512 3b45d61e0477e55831649e4ccc01112e1d61c3fc4792a723b05bef91ed521e08bb3af6ed63b5009eded639824ba37e5ae8232383aa461d5f43841619175f6422
diff --git a/dev-scheme/slib/slib-3.3.1-r100.ebuild b/dev-scheme/slib/slib-3.3.1-r100.ebuild
new file mode 100644
index 000000000000..b1b5e37bde1a
--- /dev/null
+++ b/dev-scheme/slib/slib-3.3.1-r100.ebuild
@@ -0,0 +1,123 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+GUILE_COMPAT=( 2-2 3-0 )
+inherit guile
+
+#version magic thanks to masterdriverz and UberLord using bash array instead of tr
+trarr="0abcdefghi"
+MY_PV="$(ver_cut 1)${trarr:$(ver_cut 2):1}$(ver_cut 3)"
+
+DESCRIPTION="Portable Scheme library for all standard Scheme implementations"
+HOMEPAGE="http://people.csail.mit.edu/jaffer/SLIB"
+SRC_URI="http://groups.csail.mit.edu/mac/ftpdir/scm/${PN}-${MY_PV}.zip"
+S="${WORKDIR}"/${PN}
+
+LICENSE="public-domain BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="gambit scm"
+RESTRICT="mirror"
+REQUIRED_USE="${GUILE_REQUIRED_USE}"
+
+RDEPEND="
+ ${GUILE_DEPS}
+ gambit? ( dev-scheme/gambit )
+ scm? ( dev-scheme/scm )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ sys-apps/texinfo
+ app-arch/unzip
+"
+
+DOCS=( ANNOUNCE COPYING FAQ README ChangeLog slib.{txt,html} )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.2.5-fix-paths.patch
+)
+
+src_configure() {
+ ./configure \
+ --prefix=/usr \
+ --libdir=/usr/share \
+ || die
+}
+
+src_compile() {
+ default
+
+ makeinfo -o slib.txt --plaintext --force slib.texi || die
+ makeinfo -o slib.html --html --no-split --force slib.texi || die
+}
+
+_new_catalog() {
+ if [[ ${1} != @(guile|scm) ]] then
+ echo -n "(load \"${ROOT}/usr/share/slib/${1}.init\")" || die
+ fi
+ echo " (require 'new-catalog) (slib:report-version)" || die
+}
+
+guile_generate_catalog() {
+ # FIXME(arsen): we need to also compile the .go files..
+ local gpath="${ED}/$(${GUILE} -c '(display (%library-dir))')"
+ local -x GUILE_IMPLEMENTATION_PATH="${gpath}"
+ assert "Could not determine the library directory"
+ mkdir -p "${gpath}" || die
+ ln -sr "${ED}/usr/share/slib" "${GUILE_IMPLEMENTATION_PATH}/slib" \
+ || die
+ "${GUILE}" --no-auto-compile \
+ -L "${gpath}" \
+ -c "
+ (use-modules (ice-9 slib))
+ (require 'new-catalog)
+ "
+ assert "Failed to generate catalogs for Guile"
+}
+
+src_install() {
+ # core
+ insinto /usr/share/${PN}
+ doins *.{dat,init,ps,scm}
+ exeinto /usr/share/${PN}
+ doexe *.sh
+
+ # bin
+ dodir /usr/bin/
+ dosym -r /usr/share/${PN}/${PN}.sh /usr/bin/${PN}
+
+ # env
+ doenvd "${FILESDIR}"/50slib
+
+ # backwards compatibility
+ dodir /usr/lib/
+ dosym -r /usr/share/${PN}/ /usr/lib/${PN}
+
+ # docs
+ doinfo slib.info
+ doman slib.1
+ einstalldocs
+
+ local -x SCHEME_LIBRARY_PATH="${ED}"/usr/share/slib/
+
+ # catalogs
+ einfo "Updating implementation catalogs.."
+ guile_foreach_impl guile_generate_catalog
+
+ # broken as for now
+ # if use elk ; then
+ # echo "$(_new_catalog elk)" | elk -l -
+ # fi
+
+ if use gambit ; then
+ local -x GAMBIT_IMPLEMENTATION_PATH="${ED}"/usr/share/gambc/
+ mkdir -p "${ED}"/usr/share/gambc || die
+ gsi -e "$(_new_catalog gambit)" || die
+ fi
+
+ if use scm ; then
+ scm -e "$(_new_catalog scm)" || die
+ fi
+}