summaryrefslogtreecommitdiff
path: root/dev-scheme/guile
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-02-12 09:56:54 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-02-12 09:56:54 +0000
commitebc282ef4dfa408accac685565b8ee5f6faec119 (patch)
treec0a4f713228cda0ab17eed46f0bb7ca8cb8be2f6 /dev-scheme/guile
parent6c8694a707151d59555b0e4e48235f085ce166c3 (diff)
gentoo auto-resync : 12:02:2023 - 09:56:54
Diffstat (limited to 'dev-scheme/guile')
-rw-r--r--dev-scheme/guile/Manifest10
-rw-r--r--dev-scheme/guile/files/guile-2-snarf.patch47
-rw-r--r--dev-scheme/guile/files/guile-2.0.14-configure-clang16.patch71
-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/guile-2.0.14-r5.ebuild92
-rw-r--r--dev-scheme/guile/guile-3.0.9.ebuild81
-rw-r--r--dev-scheme/guile/metadata.xml1
8 files changed, 85 insertions, 318 deletions
diff --git a/dev-scheme/guile/Manifest b/dev-scheme/guile/Manifest
index c88e092a65bb..4ca75af8ff9f 100644
--- a/dev-scheme/guile/Manifest
+++ b/dev-scheme/guile/Manifest
@@ -9,19 +9,15 @@ AUX guile-1.8.8-readline.patch 953 BLAKE2B e08c20d919b3659f8f4b2bcee26b12d43f2b9
AUX guile-1.8.8-sandbox.patch 514 BLAKE2B d47f7a6ffc4e67cec738e963ff2ec7c3bfa600992cb49eee6fff248d340811695905a02907ddb8444b6a1d6c8541af1824b0348bbf8230f4e3dba6d4317dad32 SHA512 6786c4c8254ebf0dbfe69402f4781151fcecec0fad8b282b831cb0300721ef22b8c11d4feecbe30643e3783d488c53e3f1158c0b0c76f6beda15fd7c0d6515db
AUX guile-1.8.8-texinfo-6.7.patch 1243 BLAKE2B fe485bcfd807394797b9561f95151a458fc4c6397c5903c9d17204dd5f485b28600ca6004de76c89ad3807bad4c84b2eaa1bda5fe13d0b763bf5b70c1157a0ff SHA512 85136f0997c4da3c7f7831fdf85ea790c1083fd373617111b78e17bb5559e8333e70da22cfd9f4109f9ad9026f30d408864b3c84d13cf2c5164d990c2a8c1754
AUX guile-1.8.8-tinfo.patch 450 BLAKE2B 0dcf1728e30034f1e612d666b07cdbf2147dbbe8151a23479d1519f4bc55a0fcf83c37e545592c2a2fb7c7426f026ae3fac0f08d3a36248cd8b27c3d9ae8a618 SHA512 0ea33680a57b1adb0821bd00cd73955e8c2fd5f31c4bd20a291c3e4fbb6a3dd9e2f4977b135f05fa3e2b65b1f5e0f5253db642e7b0b0fcd2e78ff8b6dd1cf37a
-AUX guile-2-snarf.patch 1274 BLAKE2B e9efdd1e14560579131ecff748add4f97de730678e6f766681be72f95bf99ab36edd8bc7279701084d13f3fa762968af814760bcf9b8778c73c956c282bb3c93 SHA512 49d015b08d0bcf5d27aa43d4a595b2ccb4366dffe0f5d159162c8c7747fb9fdbe84056a737f3c81a6e39281d91109bfa4aa98c85dd0e757c17ab668a1dd46f24
-AUX guile-2.0.14-configure-clang16.patch 2083 BLAKE2B db51de35520459eef3b66102a77afbcc492f2762e5629c5c63239dff9169f51104dbbadbedccfbdb3c83b051bd80ec82807f7a4e0ba1d43cc4c292b6a5d3ecc6 SHA512 40b1f6c4f2a04da26ceb0ffb6d016476b673d142ce465895c4fc241b24cb4dc0f3b0e759d51817f9cad27cea7c9cb56dc38507312f28af27daed6f362c70bb4c
-AUX guile-2.0.14-darwin.patch 1026 BLAKE2B 9193732cfb74931f7bf8e9b55c5c9dd2621ef6271c8d18190e0ed94d90decde85272f271bbbe7d3c4dd0dd509e51fae3f7f0af42872a0b9ebb87396c9e69a9d2 SHA512 151d19f171656105d87336f81dd8c34273d07a3e88aa03ac5ca8d640c79ab317a90ef06097858bf627e4666fba747faea45237c73e7bc6462d19d8f0d1904d53
-AUX guile-2.0.14-ia64-fix-crash-thread-context-switch.patch 2426 BLAKE2B 5b2073a3780794e9466d8e5434ab98a91a821408ab792abbfaf61d09c95e113b99746b0da850115b4534bda00b1313cef5bb9b08c90c8bf9a04c81b1eb78faa3 SHA512 082f98ac4ee2f40dd3762006bf5c43022088b2286c9a8d63ae9e234d3c8527f3afcfba8076e0c8578e7fbed257294db6ce1a4513661b89f821579dc121d449ae
AUX guile-2.2.3-gentoo-sandbox.patch 361 BLAKE2B 997d4cec108f302f34b42c59c78d420c858f964b8587bed523d95fadedbf9981dd9c196934299413db9c23e940a4b88e798e4fff65cdea1507968494338313ba SHA512 450f44cbd2b3f0c7c02963c35e58e8d0e4a7192239993215b69713d8a1109692ab1e153efe685c27681069477a56e7bc52b34ebd8717a2c8695be8c6b8abe673
AUX guile-2.2.7-stack-up.patch 568 BLAKE2B 11f19c9e657b9b23c033e0edac9d06fcaa2f56f69230d526fc42eed6050022395599855015539c32ed83b6e3f5c8a94744ff6ef50b3c9284818d0d8f725f18b6 SHA512 f312e4e5d8d3781efb6fe65f4ec94431d8b19a7ac3e3e9e461748c60643088237e570314e74b5253418a01b129586465ed43107463d8de182e362393f75073bd
AUX guile-3.0.8-configure-clang16.patch 867 BLAKE2B 19c86cf32920b99f0dd1f4e8d862e259e542c3494dcd84df5a1b29b13e754226b1cac9130b823a18f2a0cc1f31f7faca3dd8d0789b867cd8cacea03142f5ac9b SHA512 d9713c992ee798e25152b47a89a682de5fc40afc6ba22b064350d373163730e5b9ed34a00647b9af20d7b4e73c6a59cfab183c8e27ff719c39fd22e29abdd16c
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
EBUILD guile-1.8.8-r4.ebuild 3108 BLAKE2B 6cdae9c84f0696c792b2c8a13856853e700ffc5d4ebf123d2ea50d8a03a42d8ee671da91c21e652da878dd404a95a7b6e0904622717369696724f1afc1029375 SHA512 42a2b19d45dd284877b4f88f487eaaf45997c6df9d0a007d2832215b9d25a34ffda9f51c3ad72d2d8df10cd6085179845ef18e04712e32ecb098d3153fc9525b
-EBUILD guile-2.0.14-r5.ebuild 2403 BLAKE2B 2c6cd345ea0f7402724ddcd4b74df9ea26d3ccde3e01eb9d2f56ae314fdf2bd7fff9551aab9b00cd9ec2b19c99356d556476782c3c1e60f0fd448e88d93737fe SHA512 b4e3337089b4096480733fab0e877ff5a77a8d1c13bcf20c3321d1925b2701e18cc07d0fdd45407361b0cc3c16a4e7b5d27d220577c36330a329d77bae0a2921
EBUILD guile-2.2.7-r1.ebuild 2153 BLAKE2B c89758d4351f7259ec7d711de043741687ef6f7ebe32e64676d2d259226816daa941d23b438eb4e43b2cf02472b67a1514e08f81385f128a82281c8dab64a6b0 SHA512 9d076d43e33ef88c28855e86e6a170fb32ed177252f402602dbc3a97f28276bb4c378ffd0e4db59f3b480edde7dfbf5cf1d92dd8e69cf6245c4a392305f09a77
EBUILD guile-3.0.8-r1.ebuild 2262 BLAKE2B 0db49bfac869d5e2b488d087404eb7d9cf0a066d0524e7bd0689f84438a3e045916367576e49476a2183e80e922f2aa9dfd0df02ec684df074f31c1369985e77 SHA512 c05b39baad6594368a2412dcf8a23e5713c3e01a5f8d1151370efb0e531c2b52c97f06522c5b956d1e0b4979d3100fec3b245e182be6a438f1d145b400f49134
-MISC metadata.xml 1137 BLAKE2B a7804962f0827541dd7e1d10d962700f32734d5dd4f04688c1f07838109ecf68f68d3601f86786a893c6c68c1f8d5144e254d4c82fcad53f6edc12bba9f6cc51 SHA512 5bb0ed15c972f967899c24e290550fb10bb830222dce3890413d9978870d0f00942ebfec738372418958ee99048017ebd25e8fc4c6d175027eef1448bc12384a
+EBUILD guile-3.0.9.ebuild 2144 BLAKE2B 7e96a9290a29dd00669a4acd0e4aa726adc7e4f07138318680a5bf806dc2e7e96476a06a6c596a5f69cb5cba4fde28e852c93c1309e1340486e875eb190cd46f SHA512 60c0073838557d4dbc55628f9a7c27314b8290080e18c3dcc41a81c119ff59b17522ff2df933c3cf327e5a158a2fee0ee743685da527f8589797444b7b66fd84
+MISC metadata.xml 1215 BLAKE2B cb546c1bfb71222500e0a78ba2d745a8ead21610ce8d66215e0230ea0249a2ecfd8fa42437d44e8d7eef6e0c64cf0100cbbdd9b580b88afa11274986fa49e712 SHA512 54b7513aeafafef02c9fafcba5c1c645fb163d43b03e253f278ebb9f198ce255171b61a6b847415652a8dabeaa2fb34fa226bd49b02bb2c2dcdeae00c6e3babe
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-configure-clang16.patch b/dev-scheme/guile/files/guile-2.0.14-configure-clang16.patch
deleted file mode 100644
index 361cc01b97c0..000000000000
--- a/dev-scheme/guile/files/guile-2.0.14-configure-clang16.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-https://src.fedoraproject.org/rpms/guile/c/7fcab121be7d2bc8e3e48d0da476127b86cec90c?branch=rawhide
-
-These issues have already been fixed upstream via gnulib imports:
-
-commit 7e641595cd9b45ce7339e21c20a8ab81af9278f6
-Author: Andy Wingo <wingo@pobox.com>
-Date: Wed Feb 15 21:41:24 2017 +0100
-
- Update Gnulib to v0.1-1157-gb03f418.
-
-commit a91b95cca2d397c84f8b9bbd602d40209a7092ce
-Author: Andy Wingo <wingo@pobox.com>
-Date: Wed Jan 20 21:52:54 2021 +0100
-
- Update Gnulib to v0.1-4379-g2ef5a9b4b
-
- Also bump required autoconf version to 2.64, as required by Gnulib.
-
---- a/m4/link.m4
-+++ b/m4/link.m4
-@@ -22,6 +22,7 @@ AC_DEFUN([gl_FUNC_LINK],
- AC_RUN_IFELSE(
- [AC_LANG_PROGRAM(
- [[#include <unistd.h>
-+ #include <stdio.h>
- ]],
- [[int result = 0;
- if (!link ("conftest.a", "conftest.b/"))
---- a/m4/round.m4
-+++ b/m4/round.m4
-@@ -57,7 +57,7 @@ int main()
- * (double) (1U << ((DBL_MANT_DIG + 3) / 5))
- * (double) (1U << ((DBL_MANT_DIG + 4) / 5));
- volatile double x = 0.5 - 0.5 / TWO_MANT_DIG;
-- exit (x < 0.5 && round (x) != 0.0);
-+ return x < 0.5 && round (x) != 0.0;
- }]])], [gl_cv_func_round_works=yes], [gl_cv_func_round_works=no],
- [case "$host_os" in
- netbsd* | aix*) gl_cv_func_round_works="guessing no";;
-
-
-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/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/guile-2.0.14-r5.ebuild b/dev-scheme/guile/guile-2.0.14-r5.ebuild
deleted file mode 100644
index 2ea5568add42..000000000000
--- a/dev-scheme/guile/guile-2.0.14-r5.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 1999-2023 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"
-
-# guile generates ELF files without use of C or machine code
-# It's a false positive. bug #677600
-QA_PREBUILT='*[.]go'
-
-DOCS=( GUILE-VERSION HACKING README )
-
-PATCHES=(
- "${FILESDIR}/${PN}-2-snarf.patch"
- "${FILESDIR}/${P}-darwin.patch"
- "${FILESDIR}/${P}-ia64-fix-crash-thread-context-switch.patch"
- "${FILESDIR}/${P}-configure-clang16.patch"
-)
-
-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.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>