summaryrefslogtreecommitdiff
path: root/dev-scheme/guile
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /dev-scheme/guile
reinit the tree, so we can have metadata
Diffstat (limited to 'dev-scheme/guile')
-rw-r--r--dev-scheme/guile/Manifest21
-rw-r--r--dev-scheme/guile/files/50guile-gentoo.el1
-rw-r--r--dev-scheme/guile/files/guile-1.8.8-fix_guile-config.patch14
-rw-r--r--dev-scheme/guile/files/guile-1.8.8-gcc46.patch39
-rw-r--r--dev-scheme/guile/files/guile-1.8.8-gcc5.patch15
-rw-r--r--dev-scheme/guile/files/guile-1.8.8-gtexinfo-5.patch15
-rw-r--r--dev-scheme/guile/files/guile-1.8.8-makeinfo-5.patch71
-rw-r--r--dev-scheme/guile/files/guile-1.8.8-mkdir-mask.patch35
-rw-r--r--dev-scheme/guile/files/guile-1.8.8-readline.patch34
-rw-r--r--dev-scheme/guile/files/guile-1.8.8-sandbox.patch15
-rw-r--r--dev-scheme/guile/files/guile-1.8.8-tinfo.patch15
-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/guile-1.8.8-r3.ebuild118
-rw-r--r--dev-scheme/guile/guile-2.0.13-r2.ebuild80
-rw-r--r--dev-scheme/guile/guile-2.0.14-r2.ebuild85
-rw-r--r--dev-scheme/guile/metadata.xml21
17 files changed, 664 insertions, 0 deletions
diff --git a/dev-scheme/guile/Manifest b/dev-scheme/guile/Manifest
new file mode 100644
index 000000000000..96ceffbc8290
--- /dev/null
+++ b/dev-scheme/guile/Manifest
@@ -0,0 +1,21 @@
+AUX 50guile-gentoo.el 38 SHA256 f34ea07a3270a25cce3430e4781df47d9903052c9f3a4ea24efb64b1e63bd115 SHA512 5c00bcabe2d7cc03013dc7a54b2c653940c08098ca5646d7c73624cb1ca04376ae9dcf88a7166b1925c69f0c5d192d90f6bd790fdef8ed8c3b0f9d163c987da5 WHIRLPOOL cc5e2fd5081f5fb0018e1fa461c0802c7c90891accc55c02c2935dd3d413c5f8941e918af9341040526b037be4c34dab26008dfca91c153c11fca41338f77c14
+AUX guile-1.8.8-fix_guile-config.patch 494 SHA256 08e4d837a663fc27b037e64f8dd89d89ababb3ed13f1e7845109a0f901f3b0c4 SHA512 3ef2bcb31d5b80dfa2f23b8802b98af713230e59aafe773ca3fd847fbdc7759ebb2d19cead1b6b362a6fa504dfff0c2036d5359aa82b601d664eb2a49a98c970 WHIRLPOOL f6ccd01b09a7aab46fab36464ab49539c9dddb954cc2d1ed709074175273df306d8527bae0d3d83f212903693af00fdf087533611ea416036b1c557ebc0fd283
+AUX guile-1.8.8-gcc46.patch 1004 SHA256 9f11b3095ed4aa622a58e3a0805e49f56c258e81c9813c5053cea980cd93948b SHA512 0ace93548dde387c344e13f083d79227cd09506e0cf58ac0892f25c43bfcefe9071e83912b921fba120262884fa92aaabe4d07f8337d89b6da73f0f2c077dcfa WHIRLPOOL cf2ff22da564656387c7a42985d8c4fd004ff411739e1a081f71931c458287bf1166079f5a39b842f7e8b988e62e24e04d541e125340f0256c62b23de602d80b
+AUX guile-1.8.8-gcc5.patch 575 SHA256 4e9a1da6b8d68636f07a6ff33e071be1ef57e67e2191d7d7410fc50ec63472ac SHA512 844a585679f8d1cbdbe9c4c7c5feb21ebca095a522d75db264c0f4c244153a1435a01647955fc98a0743fec48aeac28c1570dbce78bfd026544addba945a1cee WHIRLPOOL 73742a12d87c1ca11327bb7f9d391394bdb9a6eeb1ad8c7e95b9201812b080c8e408c5b0428309896ee21fff302b01e1fa5bf7a75b0a48bde10fb34443599b97
+AUX guile-1.8.8-gtexinfo-5.patch 460 SHA256 bae4abbfb50e895ff12d7d49192b64e64be4ca270d424a59ad209c0c67bc281f SHA512 19185a96bb6dcf7f1cac1908633d65d8cb673148469553cce4099256d05a94688834a61ddc0a18957f9fe253fffb2821817b4b29a4a604e8c152debb6e3323a6 WHIRLPOOL 2c0249fae9e0197cddca53d84743f9134e6e7f15f3862953f3fc36d4554f6539f80e2d67cc604c6c25c099e5667512f4fc6204e091142d5af07e2943c4f34a96
+AUX guile-1.8.8-makeinfo-5.patch 2361 SHA256 f1bfbe27280f6105735a2b4f0cf7883a9a825d4df756b74663112612b7a72438 SHA512 a69ed6cf2fd87c6f3d61cc914eed960fcdebaa151778b1ecf04f1774e6dddf07d17bf90fb3243a08e8c231e391843201d0ba26debedef33199d8dd75f8cbcd09 WHIRLPOOL c392c00f99d68cba17db8f14c68dc153f9cf146a3a6e197c4101959e93eb634a451cf8cdf957216f1c24fafcebf377a93e81682d5c0692506a0dd4c7ac00fa48
+AUX guile-1.8.8-mkdir-mask.patch 1300 SHA256 005fb7443f6daa49ceed237ce486a33bfac0092724df69c84d65e0c5bb87ddf0 SHA512 e02fa50af16fb545b26560064cc7adb19caf523691dfb22044c1e01fe9c98c42804c3d13ac28d65cb61bf7667fb0f1d4aa703949cea321d382b871abd083454e WHIRLPOOL e125edc37ef68524632cecd5a0d61b2f5e59368549c189aa4d4177965ba28ce1be8e71b02c85cc58242e7fd28a22d5cdb957cacb4faba40b7d6d434ac874aa40
+AUX guile-1.8.8-readline.patch 953 SHA256 1c33023ccaa03c204e74fbe2cb3cff9d7948fa3bdc3a9e4b820af0076617f40c SHA512 e86e6e7f035f9ff9d541b44987d7cb0e5a1f80f62b7b4a112dc933f5831b90a33b506c6601165e957a3973c38ca56d0e84eafaa76c78ae5db26d7887669f1443 WHIRLPOOL a865c1b517c0c77cb8d23cceb1a7f2f9f29826f14ea8d97ce7e6eacf93d83ea94f731a54066cccbb7da4fba77b76181e358988cc85855417496efa88c19e4e10
+AUX guile-1.8.8-sandbox.patch 514 SHA256 ad20e02a81b7d0a6d9246e7b1d59be9da1e2c897bebaf26a9780466bb37908a8 SHA512 6786c4c8254ebf0dbfe69402f4781151fcecec0fad8b282b831cb0300721ef22b8c11d4feecbe30643e3783d488c53e3f1158c0b0c76f6beda15fd7c0d6515db WHIRLPOOL eb8944149c2fe2e1eb0863c61e71b44e0aa13e7b8bd11c16ea69ab1949e80ca6af8e1ba4988f75b80c1128c37b1a32b8c07b8e0ce2e3ab68b7a756709d682acb
+AUX guile-1.8.8-tinfo.patch 450 SHA256 ec01f6b9f8c5571f78b8332d31cc5d8df187d9929fe233b68617fe362337a498 SHA512 0ea33680a57b1adb0821bd00cd73955e8c2fd5f31c4bd20a291c3e4fbb6a3dd9e2f4977b135f05fa3e2b65b1f5e0f5253db642e7b0b0fcd2e78ff8b6dd1cf37a WHIRLPOOL 6f806c6efb52f5a5d039faa0435054d2e1f9f090e523c6c31d00342c043454b375695ce27f32212baaf0da59a2034bc53278ada1b64e2b11d34ee72a089f546b
+AUX guile-2-snarf.patch 1274 SHA256 2052353c3b2386db0e9066bb901c3a0a9b0e7c013f4d70b80d37d931b2f49b3b SHA512 49d015b08d0bcf5d27aa43d4a595b2ccb4366dffe0f5d159162c8c7747fb9fdbe84056a737f3c81a6e39281d91109bfa4aa98c85dd0e757c17ab668a1dd46f24 WHIRLPOOL 8df318b529809e96c5a78e2306760f1dddd466d89e85ed556cf166a62db30f1bae9c904c4746b302d982dc0a575e9a8d5b790d0a0efcbe8980560677b9802871
+AUX guile-2.0.14-darwin.patch 1026 SHA256 e86a1cc6a7fa5dcb988515c4f0a1cb54a83c398c6548e8051df6d837ed9bfd6c SHA512 151d19f171656105d87336f81dd8c34273d07a3e88aa03ac5ca8d640c79ab317a90ef06097858bf627e4666fba747faea45237c73e7bc6462d19d8f0d1904d53 WHIRLPOOL 0a48b56d9f88b51cb7f6a25062f4508de9ab635972581d23d0c4d116585482e4150075b2a82612747f68cc1282649e49776d972997e4ab5c9f8211e8f30401f1
+DIST guile-1.8.8.tar.gz 3956654 SHA256 c3471fed2e72e5b04ad133bbaaf16369e8360283679bcf19800bc1b381024050 SHA512 ede6feb90cd419d8763feb8c5169275490a653919573c4dfced025b74cf591072b3a10ffb9a3f6ee3fe7b0a0956ffcf434e0859b421455c8349cea56bf427db0 WHIRLPOOL 104810030b5dae16805595a5b398e5a7e600771b64b08d5ff686036e2f273dcec3829a16e4cdb1dbb9db5813f2e225476f83e0535a789bc570fc2fc15a76dbe2
+DIST guile-2.0.13.tar.gz 7808173 SHA256 ee8073c4582bb4f06412452fdf5dd185aae607441f1313c824f44bdd668b0bde SHA512 79fd5fda5064331eb687934ec3eaf07943f5b23bd05fbce23ab5ee3698864250b33746e33b8f074692b56f7b428dac42ed5d3f5b9dc17d171aa6dfadc1625b00 WHIRLPOOL 5f8b8e0f0e5fd2cde8fd4b1ca89ebe0231dd5f746945d71412a9d1ce57094013882972d9791511ef47e9bf1f2e9eff77a515dab8b4a6c0316122cb9ef49b5a7d
+DIST guile-2.0.14.tar.gz 7823099 SHA256 8aeb2f353881282fe01694cce76bb72f7ffdd296a12c7a1a39255c27b0dfe5f1 SHA512 d69c9bdf589fedcc227f3203012f6ed11c327cef3a0147d8e016fe276abecdb4272625efe1d0c7aa68219fe8f29bbced44089a4b479e4eafe01976c6b2b83633 WHIRLPOOL 3b355f40b47c940bf9330a3521447efd2da7c7c9c3615c208513e36fec937c06a9f307fb2c59d652c09e6e0e13e858d7ef7949efbe32d530431a7aace3d9a165
+EBUILD guile-1.8.8-r3.ebuild 3106 SHA256 5b96f889b86a292377f5110833697e2c8269587f908405197794f83b5b14cc7d SHA512 e83ecd2c5939e940a0b7203bb9e1cdb0e38dac1533d3652155fcfbaaa5009cc243859c800214e4aa0512efba87ccaa08f451fda236dfa3cf7f26897b1f9cfcb8 WHIRLPOOL cced4b16ee3171785b8954eadbb1e520787d9e3645d34decb4cf9ebaf1eea1389f8c38c39d4ab0f7e7970170df15d159338266e94ff56f861e3aec838d8af9ea
+EBUILD guile-2.0.13-r2.ebuild 2105 SHA256 64704b91a7603590285796971ec407f368d3ca73a54a794cac02744cf5e80d27 SHA512 0224ae401033f3bd36aa935984d84021ceddb8aea3bba2da79de6320efc7c6b14035b8e26bebffa1413d42e7b0f6512ba7235007917f181c62329abfee697bb0 WHIRLPOOL 8ca3738e6e10064a181ed40b7879729575694ed5f8901d892889a3c09becf298c1c420116c63c2b4536e2fa44868b1bea63451eca5193adf8fa8e9653a4904ed
+EBUILD guile-2.0.14-r2.ebuild 2189 SHA256 244be4dadd7b7647c0fe997f0b8210c97bc93a237e783cf30cf339a28f3f944a SHA512 3c22360885f09151cd646a23bf08bb83e21d2490ca1a6e9b2a6f59b05cf28fa15c3cd2080fefdc4aa05ef6ebc9ea2a11c2dad91eb37cb50967b21169ec121966 WHIRLPOOL 1873f11865ce97bb1346fc41839d5b5de6b768fc34c8e9aa616688b17691fcdce99446d5df22158341153af72aa99af395e004e76c5e94d76e1062938e7818d1
+MISC ChangeLog 10652 SHA256 5adb43044ea52ee805d186486a220bd365c3ba525697b50085983c1b6534bf4d SHA512 57ba3249328fd951875e24eba573ac934fbfdfa87ed84e7c34ba67d563bf17313b48cecf13946f48df33e9030d974b98f55d2bb60531b98faea70e9a415f5fc1 WHIRLPOOL 1168b383d6adacc0abbd91b4e0c2f8054478809802f21b0dd0ca14052b1391edc2046d3e69888612047d908c6f24e533ace2fb5aa25dbab3816a1f331fc5caf7
+MISC ChangeLog-2015 26392 SHA256 db7962030cf1210197f46edfd6ad83fcaad857e35d6f556c2632c20cb34322ec SHA512 fa75004987d940fb823a330cd2c7e32618e20982eb72d2b71bc4d919a37051a6a6cee81cd89ebeda97873fbcad838a74f296bc6ed223a608e98194a1c42c762c WHIRLPOOL cd68fb5a938ad7a98438f5e2f34ed0482830f2509f8bedf0ca5bd1684316b8e9d5b2f6d1dc3b19e4eedb401667489161f1877c83a6d23cc1d425a062340b3cb8
+MISC metadata.xml 1040 SHA256 a39b8cf38ffdbf8a5d6e2a302ee3b661bb7680f15c51f93ae9ac40eab70ca72b SHA512 6c44b82f0c361f23d377e34fd88249c4e601b215c1bb183afb8cac27bf105b314d5138877b05bf3144a3c60f5b240e4e76ca3fabf151e1182cc913825a093cf3 WHIRLPOOL 6003d8faba29536e6a44b854082ce41ae28fea03552809f6ad7b34023755f81b8156148fc7616c8ba7a9ee8eb917de257434f87084b66c6e0107afcace974f52
diff --git a/dev-scheme/guile/files/50guile-gentoo.el b/dev-scheme/guile/files/50guile-gentoo.el
new file mode 100644
index 000000000000..431f7e90ae73
--- /dev/null
+++ b/dev-scheme/guile/files/50guile-gentoo.el
@@ -0,0 +1 @@
+(add-to-list 'load-path "@SITELISP@")
diff --git a/dev-scheme/guile/files/guile-1.8.8-fix_guile-config.patch b/dev-scheme/guile/files/guile-1.8.8-fix_guile-config.patch
new file mode 100644
index 000000000000..2b04426ebd96
--- /dev/null
+++ b/dev-scheme/guile/files/guile-1.8.8-fix_guile-config.patch
@@ -0,0 +1,14 @@
+diff -ruN 1/configure.in 2/configure.in
+--- 1/configure.in 2010-12-13 17:24:39.000000000 +0000
++++ 2/configure.in 2011-04-29 11:53:39.000000000 +0000
+@@ -1522,8 +1522,8 @@
+ #######################################################################
+
+ dnl Tell guile-config what flags guile users should compile and link with.
+-GUILE_LIBS="$LDFLAGS $LIBS"
+-GUILE_CFLAGS="$CPPFLAGS $PTHREAD_CFLAGS"
++GUILE_LIBS="$LIBS"
++GUILE_CFLAGS="$PTHREAD_CFLAGS"
+ AC_SUBST(GUILE_LIBS)
+ AC_SUBST(GUILE_CFLAGS)
+
diff --git a/dev-scheme/guile/files/guile-1.8.8-gcc46.patch b/dev-scheme/guile/files/guile-1.8.8-gcc46.patch
new file mode 100644
index 000000000000..b06a0e59eb14
--- /dev/null
+++ b/dev-scheme/guile/files/guile-1.8.8-gcc46.patch
@@ -0,0 +1,39 @@
+Backported upstream patch to fix SIGSEGV with gcc-4.6
+
+http://git.savannah.gnu.org/cgit/guile.git/commit/?h=branch_release-1-8&id=62bc1072c19e81bb0f9e42a5034e7ab8c27d3b94
+https://bugs.gentoo.org/show_bug.cgi?id=424475
+--- a/configure.in
++++ b/configure.in
+@@ -1199,23 +1199,20 @@
+ AC_RUN_IFELSE([AC_LANG_SOURCE(
+ [AC_INCLUDES_DEFAULT
+ int
+-find_stack_direction ()
++find_stack_direction (int *addr, int depth)
+ {
+- static char *addr = 0;
+- auto char dummy;
+- if (addr == 0)
+- {
+- addr = &dummy;
+- return find_stack_direction ();
+- }
+- else
+- return (&dummy > addr) ? 1 : -1;
++ int dir, dummy = 0;
++ if (! addr)
++ addr = &dummy;
++ *addr = addr < &dummy ? 1 : addr == &dummy ? 0 : -1;
++ dir = depth ? find_stack_direction (addr, depth - 1) : 0;
++ return dir + dummy;
+ }
+
+ int
+-main ()
++main (int argc, char **argv)
+ {
+- return find_stack_direction () < 0;
++ return find_stack_direction (0, argc + !argv + 20) < 0;
+ }])],
+ [SCM_I_GSC_STACK_GROWS_UP=1],
+ [],
diff --git a/dev-scheme/guile/files/guile-1.8.8-gcc5.patch b/dev-scheme/guile/files/guile-1.8.8-gcc5.patch
new file mode 100644
index 000000000000..742ea0ba9de2
--- /dev/null
+++ b/dev-scheme/guile/files/guile-1.8.8-gcc5.patch
@@ -0,0 +1,15 @@
+Preprocessor changes in GCC 5 cause guile-snarf to output garbage.
+
+https://bugs.gentoo.org/560736
+
+--- a/libguile/guile-snarf.in
++++ b/libguile/guile-snarf.in
+@@ -50,7 +50,7 @@
+ ## Apparently, AIX's preprocessor is unhappy if you try to #include an
+ ## empty file.
+ echo "/* cpp arguments: $@ */" ;
+- ${cpp} -DSCM_MAGIC_SNARF_INITS -DSCM_MAGIC_SNARFER "$@" > ${temp} && cpp_ok_p=true
++ ${cpp} -P -DSCM_MAGIC_SNARF_INITS -DSCM_MAGIC_SNARFER "$@" > ${temp} && cpp_ok_p=true
+ grep "^ *\^ *\^" ${temp} | sed -e "s/^ *\^ *\^//" -e "s/\^\ *:\ *\^.*/;/"
+ }
+
diff --git a/dev-scheme/guile/files/guile-1.8.8-gtexinfo-5.patch b/dev-scheme/guile/files/guile-1.8.8-gtexinfo-5.patch
new file mode 100644
index 000000000000..d7fbda15c101
--- /dev/null
+++ b/dev-scheme/guile/files/guile-1.8.8-gtexinfo-5.patch
@@ -0,0 +1,15 @@
+$NetBSD: patch-doc_tutorial_guile-tut.texi,v 1.1 2013/11/30 07:06:25 dsainty Exp $
+
+Compatibility with gtexinfo 5.2
+
+--- doc/tutorial/guile-tut.texi 2010-12-14 06:24:39.000000000 +1300
++++ doc/tutorial/guile-tut.texi 2013-11-30 19:44:28.304575529 +1300
+@@ -446,7 +446,7 @@
+ Schemer} from that list.}
+
+
+-@subsection Hello World
++@section Hello World
+ @cindex hello world
+
+ Our first program is the typical Scheme "hello world" program. Put the \ No newline at end of file
diff --git a/dev-scheme/guile/files/guile-1.8.8-makeinfo-5.patch b/dev-scheme/guile/files/guile-1.8.8-makeinfo-5.patch
new file mode 100644
index 000000000000..9f3a02c18c65
--- /dev/null
+++ b/dev-scheme/guile/files/guile-1.8.8-makeinfo-5.patch
@@ -0,0 +1,71 @@
+From 937da0f2604ea208ec56517c5a41e582f316a246 Mon Sep 17 00:00:00 2001
+From: Cyprien Nicolas <cyp@fulax.fr>
+Date: Thu, 18 Apr 2013 23:45:23 +0200
+Subject: [PATCH] Fix texinfo files for makeinfo-5.1
+
+---
+ doc/ref/api-options.texi | 2 +-
+ doc/ref/api-utility.texi | 2 +-
+ doc/ref/fdl.texi | 2 +-
+ doc/ref/gh.texi | 4 ++--
+ 4 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/doc/ref/api-options.texi b/doc/ref/api-options.texi
+index 7b7a6e0..6ce7291 100644
+--- a/doc/ref/api-options.texi
++++ b/doc/ref/api-options.texi
+@@ -377,9 +377,9 @@ configure @emph{reading}, @emph{printing}, @emph{debugging} or
+ * User level options interfaces::
+ * Reader options::
+ * Printing options::
+-* Debugger options::
+ * Evaluator options::
+ * Evaluator trap options::
++* Debugger options::
+ * Examples of option use::
+ @end menu
+
+diff --git a/doc/ref/api-utility.texi b/doc/ref/api-utility.texi
+index 4a90212..9a4f3cc 100644
+--- a/doc/ref/api-utility.texi
++++ b/doc/ref/api-utility.texi
+@@ -657,7 +657,7 @@ Return 1 if @var{x} is a Scheme-level hook, 0 otherwise.
+ @end deftypefn
+
+
+-@subsubsection Handling Scheme-level hooks from C code
++@subsubheading Handling Scheme-level hooks from C code
+
+ Here is an example of how to handle Scheme-level hooks from C code using
+ the above functions.
+diff --git a/doc/ref/fdl.texi b/doc/ref/fdl.texi
+index 17fe148..4866055 100644
+--- a/doc/ref/fdl.texi
++++ b/doc/ref/fdl.texi
+@@ -408,7 +408,7 @@ as a draft) by the Free Software Foundation.
+ @end enumerate
+
+ @page
+-@appendixsubsec ADDENDUM: How to use this License for your documents
++@appendixsec ADDENDUM: How to use this License for your documents
+
+ To use this License in a document you have written, include a copy of
+ the License in the document and put the following copyright and
+diff --git a/doc/ref/gh.texi b/doc/ref/gh.texi
+index 95dfd92..bbd3af1 100644
+--- a/doc/ref/gh.texi
++++ b/doc/ref/gh.texi
+@@ -995,8 +995,8 @@ These correspond to the Scheme @code{(cons a b)} and @code{(list l0 l1
+
+ @deftypefun SCM gh_car (SCM @var{obj})
+ @deftypefunx SCM gh_cdr (SCM @var{obj})
+-@dots{}
+-
++@deftypefunx SCM gh_c[ad][ad]r (SCM @var{obj})
++@deftypefunx SCM gh_c[ad][ad][ad]r (SCM @var{obj})
+ @deftypefunx SCM gh_c[ad][ad][ad][ad]r (SCM @var{obj})
+ These correspond to the Scheme @code{(caadar ls)} procedures etc @dots{}
+ @end deftypefun
+--
+1.8.2.1
+
diff --git a/dev-scheme/guile/files/guile-1.8.8-mkdir-mask.patch b/dev-scheme/guile/files/guile-1.8.8-mkdir-mask.patch
new file mode 100644
index 000000000000..7d1c703835f1
--- /dev/null
+++ b/dev-scheme/guile/files/guile-1.8.8-mkdir-mask.patch
@@ -0,0 +1,35 @@
+--- a/libguile/filesys.c 2016-11-05 15:03:52.131894648 +0100
++++ b/libguile/filesys.c 2016-11-05 15:07:13.275894481 +0100
+@@ -791,24 +791,18 @@
+ SCM_DEFINE (scm_mkdir, "mkdir", 1, 1, 0,
+ (SCM path, SCM mode),
+ "Create a new directory named by @var{path}. If @var{mode} is omitted\n"
+- "then the permissions of the directory file are set using the current\n"
+- "umask. Otherwise they are set to the decimal value specified with\n"
+- "@var{mode}. The return value is unspecified.")
++ "then the permissions of the directory are set to @code{#o777}\n"
++ "masked with the current umask (@pxref{Processes, @code{umask}}).\n"
++ "Otherwise they are set to the value specified with @var{mode}.\n"
++ "The return value is unspecified.")
+ #define FUNC_NAME s_scm_mkdir
+ {
+ int rv;
+- mode_t mask;
++ mode_t c_mode;
+
+- if (SCM_UNBNDP (mode))
+- {
+- mask = umask (0);
+- umask (mask);
+- STRING_SYSCALL (path, c_path, rv = mkdir (c_path, 0777 ^ mask));
+- }
+- else
+- {
+- STRING_SYSCALL (path, c_path, rv = mkdir (c_path, scm_to_uint (mode)));
+- }
++ c_mode = SCM_UNBNDP (mode) ? 0777 : scm_to_uint (mode);
++
++ STRING_SYSCALL (path, c_path, rv = mkdir (c_path, c_mode));
+ if (rv != 0)
+ SCM_SYSERROR;
+ return SCM_UNSPECIFIED;
diff --git a/dev-scheme/guile/files/guile-1.8.8-readline.patch b/dev-scheme/guile/files/guile-1.8.8-readline.patch
new file mode 100644
index 000000000000..68f64c528a4b
--- /dev/null
+++ b/dev-scheme/guile/files/guile-1.8.8-readline.patch
@@ -0,0 +1,34 @@
+Make guile-readline optional
+
+https://bugs.gentoo.org/392553
+
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -24,7 +24,7 @@
+ #
+ AUTOMAKE_OPTIONS = 1.10
+
+-SUBDIRS = oop libguile ice-9 guile-config guile-readline emacs \
++SUBDIRS = oop libguile ice-9 guile-config @GUILE_READLINE@ emacs \
+ scripts srfi doc examples test-suite benchmark-suite lang am
+
+ bin_SCRIPTS = guile-tools
+--- a/configure.in
++++ b/configure.in
+@@ -57,7 +57,15 @@ AH_TOP(/*GUILE_CONFIGURE_COPYRIGHT*/)
+ #
+ #--------------------------------------------------------------------
+
+-AC_CONFIG_SUBDIRS(guile-readline)
++GUILE_READLINE=
++AC_ARG_ENABLE([readline],
++ [AS_HELP_STRING([--disable-readline],
++ [disable building guile-readline])],
++ if test "x$enable_readline" != xno; then
++ AC_CONFIG_SUBDIRS([guile-readline])
++ GUILE_READLINE="guile-readline"
++ fi)
++AC_SUBST([GUILE_READLINE])
+
+ #--------------------------------------------------------------------
+
diff --git a/dev-scheme/guile/files/guile-1.8.8-sandbox.patch b/dev-scheme/guile/files/guile-1.8.8-sandbox.patch
new file mode 100644
index 000000000000..70d752fdae97
--- /dev/null
+++ b/dev-scheme/guile/files/guile-1.8.8-sandbox.patch
@@ -0,0 +1,15 @@
+Prevent sandbox violation when installing
+
+https://bugs.gentoo.org/521546
+
+--- a/guile-config/Makefile.am
++++ b/guile-config/Makefile.am
+@@ -39,8 +39,3 @@ guile-config: guile-config.in ${top_builddir}/libguile/libpath.h
+ -e s:@-GUILE_VERSION-@:${GUILE_VERSION}:
+ chmod +x guile-config.tmp
+ mv guile-config.tmp guile-config
+-
+-## Get rid of any copies of the configuration script under the old
+-## name, so people don't end up running ancient copies of it.
+-install-exec-local:
+- rm -f ${bindir}/build-guile
diff --git a/dev-scheme/guile/files/guile-1.8.8-tinfo.patch b/dev-scheme/guile/files/guile-1.8.8-tinfo.patch
new file mode 100644
index 000000000000..6c4d0116246e
--- /dev/null
+++ b/dev-scheme/guile/files/guile-1.8.8-tinfo.patch
@@ -0,0 +1,15 @@
+With ncurses[tinfo] tgoto will be in libtinfo
+
+https://bugs.gentoo.org/539316
+
+--- a/guile-readline/configure.in
++++ b/guile-readline/configure.in
+@@ -33,7 +33,7 @@ if test "$MINGW32" = "yes" ; then
+ fi
+ AC_SUBST(EXTRA_DEFS)
+
+-for termlib in ncurses curses termcap terminfo termlib ; do
++for termlib in ncurses curses termcap terminfo termlib tinfo ; do
+ AC_CHECK_LIB(${termlib}, tgoto,
+ [LIBS="-l${termlib} $LIBS"; break])
+ done
diff --git a/dev-scheme/guile/files/guile-2-snarf.patch b/dev-scheme/guile/files/guile-2-snarf.patch
new file mode 100644
index 000000000000..c6ab5cd48cd6
--- /dev/null
+++ b/dev-scheme/guile/files/guile-2-snarf.patch
@@ -0,0 +1,47 @@
+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
new file mode 100644
index 000000000000..17741ae352c2
--- /dev/null
+++ b/dev-scheme/guile/files/guile-2.0.14-darwin.patch
@@ -0,0 +1,38 @@
+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/guile-1.8.8-r3.ebuild b/dev-scheme/guile/guile-1.8.8-r3.ebuild
new file mode 100644
index 000000000000..c2740abb37d5
--- /dev/null
+++ b/dev-scheme/guile/guile-1.8.8-r3.ebuild
@@ -0,0 +1,118 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils autotools flag-o-matic elisp-common
+
+DESCRIPTION="Scheme interpreter"
+HOMEPAGE="https://www.gnu.org/software/guile/"
+SRC_URI="mirror://gnu/guile/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="debug debug-freelist debug-malloc +deprecated discouraged emacs networking nls readline +regex +threads"
+
+RESTRICT="!regex? ( test )"
+
+RDEPEND="
+ >=dev-libs/gmp-4.1:0=
+ dev-libs/libltdl:0=
+ sys-devel/gettext
+ sys-libs/ncurses:0=
+ emacs? ( virtual/emacs )
+ readline? ( sys-libs/readline:0= )"
+DEPEND="${RDEPEND}
+ sys-apps/texinfo
+ sys-devel/libtool"
+
+# Guile seems to contain some slotting support, /usr/share/guile/ is slotted,
+# but there are lots of collisions. Most in /usr/share/libguile. Therefore
+# I'm slotting this in the same slot as guile-1.6* for now.
+SLOT="12/8"
+MAJOR="1.8"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-fix_guile-config.patch" \
+ "${FILESDIR}/${P}-gcc46.patch" \
+ "${FILESDIR}/${P}-gcc5.patch" \
+ "${FILESDIR}/${P}-makeinfo-5.patch" \
+ "${FILESDIR}/${P}-gtexinfo-5.patch" \
+ "${FILESDIR}/${P}-readline.patch" \
+ "${FILESDIR}/${P}-tinfo.patch" \
+ "${FILESDIR}/${P}-sandbox.patch" \
+ "${FILESDIR}/${P}-mkdir-mask.patch"
+
+ sed \
+ -e "s/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/g" \
+ -e "/AM_PROG_CC_STDC/d" \
+ -i guile-readline/configure.in || die
+
+ epatch_user
+
+ mv "${S}"/configure.{in,ac} || die
+ mv "${S}"/guile-readline/configure.{in,ac} || die
+
+ eautoreconf
+}
+
+src_configure() {
+ # see bug #178499
+ filter-flags -ftree-vectorize
+
+ #will fail for me if posix is disabled or without modules -- hkBst
+ econf \
+ --disable-error-on-warning \
+ --disable-static \
+ --enable-posix \
+ $(use_enable networking) \
+ $(use_enable readline) \
+ $(use_enable regex) \
+ $(use deprecated || use_enable discouraged) \
+ $(use_enable deprecated) \
+ $(use_enable emacs elisp) \
+ $(use_enable nls) \
+ --disable-rpath \
+ $(use_enable debug-freelist) \
+ $(use_enable debug-malloc) \
+ $(use_enable debug guile-debug) \
+ $(use_with threads) \
+ --with-modules \
+ EMACS=no
+}
+
+src_compile() {
+ emake
+
+ # Above we have disabled the build system's Emacs support;
+ # for USE=emacs we compile (and install) the files manually
+ if use emacs; then
+ cd emacs || die
+ elisp-compile *.el || die
+ fi
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ dodoc AUTHORS ChangeLog GUILE-VERSION HACKING NEWS README THANKS
+
+ # texmacs needs this, closing bug #23493
+ dodir /etc/env.d
+ echo "GUILE_LOAD_PATH=\"${EPREFIX}/usr/share/guile/${MAJOR}\"" > "${ED}"/etc/env.d/50guile || die
+
+ # necessary for registering slib, see bug 206896
+ keepdir /usr/share/guile/site
+
+ if use emacs; then
+ elisp-install ${PN} emacs/*.{el,elc} || die
+ elisp-site-file-install "${FILESDIR}/50${PN}-gentoo.el" || die
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-scheme/guile/guile-2.0.13-r2.ebuild b/dev-scheme/guile/guile-2.0.13-r2.ebuild
new file mode 100644
index 000000000000..c5974166eba0
--- /dev/null
+++ b/dev-scheme/guile/guile-2.0.13-r2.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2017 Gentoo Foundation
+# 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.gz"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+LICENSE="LGPL-3+"
+IUSE="debug debug-malloc +deprecated +networking +nls +regex +threads" # upstream recommended +networking +nls
+# emacs useflag removal not working
+
+# workaround for bug 596322
+REQUIRED_USE="regex"
+
+RDEPEND="
+ >=dev-libs/boehm-gc-7.0[threads?]
+ dev-libs/gmp:=
+ virtual/libffi
+ dev-libs/libltdl:=
+ dev-libs/libunistring:0=
+ sys-devel/libtool
+ sys-libs/ncurses:0=
+ sys-libs/readline:0="
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ sys-apps/texinfo
+ sys-devel/gettext"
+
+SLOT="12/22" # subslot is soname version
+MAJOR="2.0"
+
+DOCS=( GUILE-VERSION HACKING README )
+
+PATCHES=( "${FILESDIR}/${PN}-2-snarf.patch" )
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ # see bug #178499
+ filter-flags -ftree-vectorize
+
+ econf \
+ --disable-error-on-warning \
+ --disable-rpath \
+ --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
+
+ # 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-2.0.14-r2.ebuild b/dev-scheme/guile/guile-2.0.14-r2.ebuild
new file mode 100644
index 000000000000..37a3cd3ede72
--- /dev/null
+++ b/dev-scheme/guile/guile-2.0.14-r2.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit flag-o-matic autotools ltprune
+
+DESCRIPTION="GNU Ubiquitous Intelligent Language for Extensions"
+HOMEPAGE="https://www.gnu.org/software/guile/"
+SRC_URI="mirror://gnu/guile/${P}.tar.gz"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+LICENSE="LGPL-3+"
+IUSE="debug debug-malloc +deprecated +networking +nls +regex +threads" # upstream recommended +networking +nls
+# emacs useflag removal not working
+
+# workaround for bug 596322
+REQUIRED_USE="regex"
+
+RDEPEND="
+ >=dev-libs/boehm-gc-7.0[threads?]
+ dev-libs/gmp:=
+ virtual/libffi
+ dev-libs/libltdl:=
+ dev-libs/libunistring:0=
+ sys-devel/libtool
+ sys-libs/ncurses:0=
+ sys-libs/readline:0="
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ sys-apps/texinfo
+ sys-devel/gettext"
+
+SLOT="12/22" # subslot is soname version
+MAJOR="2.0"
+
+DOCS=( GUILE-VERSION HACKING README )
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2-snarf.patch"
+ "${FILESDIR}/${P}-darwin.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
+ prune_libtool_files
+
+ # 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/metadata.xml b/dev-scheme/guile/metadata.xml
new file mode 100644
index 000000000000..02c7884936bb
--- /dev/null
+++ b/dev-scheme/guile/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>scheme@gentoo.org</email>
+ <name>Gentoo Scheme Project</name>
+ </maintainer>
+ <longdescription lang="en">
+Guile is a library designed to help programmers create flexible applications. Using Guile in an application allows programmers to write plug-ins, or modules (there are many names, but the concept is essentially the same) and users to use them to have an application fit their needs.
+ </longdescription>
+ <use>
+ <flag name="debug-freelist">Include garbage collector freelist debugging
+ code</flag>
+ <flag name="debug-malloc">Include malloc debugging code</flag>
+ <flag name="deprecated">Enable deprecated features</flag>
+ <flag name="discouraged"> (implied by deprecated) enable merely discouraged
+ features</flag>
+ <flag name="networking">Include networking interfaces</flag>
+ <flag name="regex"> Include regular expression interfaces</flag>
+ </use>
+</pkgmetadata>