From eaf47caad608ed2bedd8a0979ca0b7ca7d60067d Mon Sep 17 00:00:00 2001 From: Dustin Polke Date: Sun, 7 Jul 2013 13:30:51 +0200 Subject: [dev-scheme/guile] Copy ebuild for 1.8.8 from portage and add a modified version of the fix_test patch. Drop old. --- dev-scheme/guile/ChangeLog | 11 +- dev-scheme/guile/Manifest | 14 ++- dev-scheme/guile/files/50guile-gentoo.el | 1 + .../guile/files/guile-1.8.8-fix_guile-config.patch | 14 +++ dev-scheme/guile/files/guile-1.8.8-fix_tests.patch | 11 ++ dev-scheme/guile/files/guile-1.8.8-gcc46.patch | 39 +++++++ .../guile/files/guile-1.8.8-makeinfo-5.patch | 71 +++++++++++++ dev-scheme/guile/files/guile-fix_tests.patch | 34 ------ dev-scheme/guile/guile-1.8.5-r1.ebuild | 116 --------------------- dev-scheme/guile/guile-1.8.8-r1.ebuild | 115 ++++++++++++++++++++ 10 files changed, 270 insertions(+), 156 deletions(-) create mode 100644 dev-scheme/guile/files/50guile-gentoo.el create mode 100644 dev-scheme/guile/files/guile-1.8.8-fix_guile-config.patch create mode 100644 dev-scheme/guile/files/guile-1.8.8-fix_tests.patch create mode 100644 dev-scheme/guile/files/guile-1.8.8-gcc46.patch create mode 100644 dev-scheme/guile/files/guile-1.8.8-makeinfo-5.patch delete mode 100644 dev-scheme/guile/files/guile-fix_tests.patch delete mode 100644 dev-scheme/guile/guile-1.8.5-r1.ebuild create mode 100644 dev-scheme/guile/guile-1.8.8-r1.ebuild (limited to 'dev-scheme') diff --git a/dev-scheme/guile/ChangeLog b/dev-scheme/guile/ChangeLog index 3eba0c6..aea912e 100644 --- a/dev-scheme/guile/ChangeLog +++ b/dev-scheme/guile/ChangeLog @@ -1,7 +1,16 @@ # ChangeLog for dev-scheme/guile -# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 +# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 # $Header$ +*guile-1.8.8-r1 (07 Jul 2013) + + 07 Jul 2013; Dustin Polke +files/50guile-gentoo.el, + -guile-1.8.5-r1.ebuild, +guile-1.8.8-r1.ebuild, + +files/guile-1.8.8-fix_guile-config.patch, + +files/guile-1.8.8-fix_tests.patch, +files/guile-1.8.8-gcc46.patch, + +files/guile-1.8.8-makeinfo-5.patch, -files/guile-fix_tests.patch: + Copy guile-1.8.8-r1,v 1.16 and add a modified patch to fix tests. Drop old. + *guile-1.8.5-r1 (19 Apr 2010) 19 Apr 2010; Dustin Polke diff --git a/dev-scheme/guile/Manifest b/dev-scheme/guile/Manifest index 1e95540..b6e9be7 100644 --- a/dev-scheme/guile/Manifest +++ b/dev-scheme/guile/Manifest @@ -1,5 +1,9 @@ -AUX guile-fix_tests.patch 1217 RMD160 e12a0b170d58aa1058b9e78bbf00b98c6e495f71 SHA1 4c0368dcae6deda84da442293509646828f8ada7 SHA256 8ed774a7f7a95b3597b4c8df2bd73bb33a3b08d543fbbeffb050eb4bb51c8ac3 -DIST guile-1.8.5.tar.gz 3933369 RMD160 7f8ab70e1c524f7c20a65977b13c2575eeb61655 SHA1 3ef611cf5c4998a5bdfc7935765bb68730038614 SHA256 e2f63d2d445ffeb072638eab885b1a629e372d1db711c8afb26a62bc56096289 -EBUILD guile-1.8.5-r1.ebuild 3053 RMD160 17d61237613d301e6c1bfa7b2ce876b5c3957b00 SHA1 cc8a6cf997814143b6b19f28e9a1e6b6e7dead10 SHA256 407741e41bd81ee140f99c82e7fd7a3bf0aa31dd5d04cfb903f7a0a83c7f39f2 -MISC ChangeLog 310 RMD160 714b81075de2634a1a0a4676b48ca99316f23e4a SHA1 650849821f38729f6d43b5954b2be3cc31276deb SHA256 6175a11f723b13eba841ee11262338170a9fc14b53edf0148d4f5abba6e710a2 -MISC metadata.xml 971 RMD160 f78fa5af7ed9a77524e46393d6f7894fe6ca3902 SHA1 5ed2212cf23c7e5a092087f6a1b2142c5c263acd SHA256 c9470da1e8f108d90495e368399011296c30bb68d614cee77b09d80f2deca938 +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-fix_tests.patch 343 SHA256 a3c03d808d05879bd9f4270d877d97ed548042055f0df8663ed020afa6960470 SHA512 72ed52417450cbf54963acb4898c79e598e5d34852df49587556ff3670e291b1d82765e6416d41b2f11fb7d0800ca34a76d153b46abc93df71efe2a57d81b0bd WHIRLPOOL 2afe2fbc9763f6a483e0729dfa96fced7401c2c502bce4065b08e8db0045a885e11d5613dd17a2deb7ab97c09c719e37958838be36068868b1aa1b52dcd2a999 +AUX guile-1.8.8-gcc46.patch 1004 SHA256 9f11b3095ed4aa622a58e3a0805e49f56c258e81c9813c5053cea980cd93948b SHA512 0ace93548dde387c344e13f083d79227cd09506e0cf58ac0892f25c43bfcefe9071e83912b921fba120262884fa92aaabe4d07f8337d89b6da73f0f2c077dcfa WHIRLPOOL cf2ff22da564656387c7a42985d8c4fd004ff411739e1a081f71931c458287bf1166079f5a39b842f7e8b988e62e24e04d541e125340f0256c62b23de602d80b +AUX guile-1.8.8-makeinfo-5.patch 2361 SHA256 f1bfbe27280f6105735a2b4f0cf7883a9a825d4df756b74663112612b7a72438 SHA512 a69ed6cf2fd87c6f3d61cc914eed960fcdebaa151778b1ecf04f1774e6dddf07d17bf90fb3243a08e8c231e391843201d0ba26debedef33199d8dd75f8cbcd09 WHIRLPOOL c392c00f99d68cba17db8f14c68dc153f9cf146a3a6e197c4101959e93eb634a451cf8cdf957216f1c24fafcebf377a93e81682d5c0692506a0dd4c7ac00fa48 +DIST guile-1.8.8.tar.gz 3956654 SHA256 c3471fed2e72e5b04ad133bbaaf16369e8360283679bcf19800bc1b381024050 SHA512 ede6feb90cd419d8763feb8c5169275490a653919573c4dfced025b74cf591072b3a10ffb9a3f6ee3fe7b0a0956ffcf434e0859b421455c8349cea56bf427db0 WHIRLPOOL 104810030b5dae16805595a5b398e5a7e600771b64b08d5ff686036e2f273dcec3829a16e4cdb1dbb9db5813f2e225476f83e0535a789bc570fc2fc15a76dbe2 +EBUILD guile-1.8.8-r1.ebuild 3080 SHA256 6a03c8f56128f23ec704585df025339ab64270cef0a804414465c3417e1b24b7 SHA512 ee3a8ddaf0c8a9f7b1aee733227ef5596acc909cde93aceabe0c13093adda1ee2fdc058a457c9f76b8dcee29e7dd9af9bc3f4d079ace60e35b5866d6981ea0a8 WHIRLPOOL da6e58a577d3b9be80f57618259b2ab1ee6aa513e78d1d1228a19c8e6033af3369207f603142cc26effb05f9d62a05f1988db841be3ae2f9c918bdce5e66ff8b +MISC ChangeLog 723 SHA256 2350632b97fa88344c2eaa3ce36f6da4fe668280cc01449d6172233b7d920bc8 SHA512 7233b9dd7b77dda15cc4ce81b627378695c89e14ee0ef83cf6c1b230e4b7ba00b4debb49f22f647ab16ec2358bb83828a6baacd20cbd9a16e77c46b48aa9b7dd WHIRLPOOL 1c8993734c19dc8579082b95841c88b3f50439b53c5127790108b7975606a8b2e2faf04a5a73a6322a955bae986ff1db44e6f21fec413fa1ccdd6dcc61439f5f +MISC metadata.xml 971 SHA256 c9470da1e8f108d90495e368399011296c30bb68d614cee77b09d80f2deca938 SHA512 785babbeedf104fa47e76e75deacd5062cafa55ae2628b58f47110dee745cc155f48e8681e965ead383b711cb69dbe10aa21750242685377fc50646eea69aac4 WHIRLPOOL 606d88e0a4ac6e35d61acb1a0c96dfb45600811ceedc79d8c3897f2a18bb2db3695c4344b06ee84e660d2f0328a643ea2fe8a02a85e8b579265bbedc99ddd949 diff --git a/dev-scheme/guile/files/50guile-gentoo.el b/dev-scheme/guile/files/50guile-gentoo.el new file mode 100644 index 0000000..431f7e9 --- /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 0000000..2b04426 --- /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-fix_tests.patch b/dev-scheme/guile/files/guile-1.8.8-fix_tests.patch new file mode 100644 index 0000000..702f78f --- /dev/null +++ b/dev-scheme/guile/files/guile-1.8.8-fix_tests.patch @@ -0,0 +1,11 @@ +--- test-suite/standalone/Makefile.am.orig ++++ test-suite/standalone/Makefile.am +@@ -30,7 +30,7 @@ EXTRA_DIST = + + TESTS_ENVIRONMENT = \ + builddir="$(builddir)" \ +- "${top_builddir}/pre-inst-guile-env" ++ GUILE_AUTO_COMPILE=0 "${top_builddir}/pre-inst-guile-env" + + test_cflags = \ + -I$(top_srcdir)/test-suite/standalone \ 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 0000000..b06a0e5 --- /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-makeinfo-5.patch b/dev-scheme/guile/files/guile-1.8.8-makeinfo-5.patch new file mode 100644 index 0000000..9f3a02c --- /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 +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-fix_tests.patch b/dev-scheme/guile/files/guile-fix_tests.patch deleted file mode 100644 index ffe76fa..0000000 --- a/dev-scheme/guile/files/guile-fix_tests.patch +++ /dev/null @@ -1,34 +0,0 @@ -diff -Naur guile-1.8.7.orig/test-suite/standalone/Makefile.am guile-1.8.7/test-suite/standalone/Makefile.am ---- guile-1.8.7.orig/test-suite/standalone/Makefile.am 2009-07-03 19:19:00.000000000 -0300 -+++ guile-1.8.7/test-suite/standalone/Makefile.am 2009-12-13 14:42:35.000000000 -0300 -@@ -28,7 +28,9 @@ - BUILT_SOURCES = - EXTRA_DIST = - --TESTS_ENVIRONMENT = "${top_builddir}/pre-inst-guile-env" -+TESTS_ENVIRONMENT = \ -+builddir="$(builddir)" \ -+GUILE_AUTO_COMPILE=0 "${top_builddir}/pre-inst-guile-env" - - test_cflags = \ - -I$(top_srcdir)/test-suite/standalone \ -diff -Naur guile-1.8.7.orig/test-suite/standalone/test-asmobs guile-1.8.7/test-suite/standalone/test-asmobs ---- guile-1.8.7.orig/test-suite/standalone/test-asmobs 2009-06-26 17:21:50.000000000 -0300 -+++ guile-1.8.7/test-suite/standalone/test-asmobs 2009-12-13 14:41:42.000000000 -0300 -@@ -2,7 +2,8 @@ - exec guile -q -s "$0" "$@" - !# - --(load-extension "libtest-asmobs" "libtest_asmobs_init") -+(load-extension (string-append (getenv "builddir") "/libtest-asmobs") -+ "libtest_asmobs_init") - - (define (test x v) - (if v -@@ -114,4 +115,4 @@ - - ;; Local Variables: - ;; mode: scheme --;; End: -\ No newline at end of file -+;; End: diff --git a/dev-scheme/guile/guile-1.8.5-r1.ebuild b/dev-scheme/guile/guile-1.8.5-r1.ebuild deleted file mode 100644 index f742b83..0000000 --- a/dev-scheme/guile/guile-1.8.5-r1.ebuild +++ /dev/null @@ -1,116 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-scheme/guile/guile-1.8.5-r1.ebuild,v 1.11 2009/10/19 00:32:29 vapier Exp $ - -EAPI=1 -inherit eutils autotools flag-o-matic elisp-common - -DESCRIPTION="Scheme interpreter" -HOMEPAGE="http://www.gnu.org/software/guile/" -SRC_URI="mirror://gnu/guile/${P}.tar.gz" - -LICENSE="LGPL-2.1" -KEYWORDS="~alpha amd64 arm hppa ~ia64 ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd" -RESTRICT="!regex? ( test )" - -DEPEND=">=dev-libs/gmp-4.1 - >=sys-devel/libtool-1.5.6 - sys-devel/gettext - emacs? ( virtual/emacs )" - -# 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" -MAJOR="1.8" - -IUSE="networking +regex discouraged +deprecated elisp emacs nls debug-freelist debug-malloc debug +threads" - -src_unpack() { - unpack ${A}; cd "${S}" - - sed "s_sleep 999_sleep 1_" -i test-suite/tests/popen.test - -# cp configure.in configure.in.old - - #for libtool-2.2*, bug 212723 - sed 's/AC_CONFIG_MACRO_DIR(\[m4\])/AC_CONFIG_MACRO_DIR(\[guile-config\])/' -i configure.in - -# diff -u configure.in.old configure.in - - # Fix tests, upstream patch, see bug 295093 - epatch "${FILESDIR}/${PN}-fix_tests.patch" - eautoreconf -} - -src_compile() { - # 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 regex) \ - $(use deprecated || use_enable discouraged) \ - $(use_enable deprecated) \ - $(use_enable 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 - - emake || die "make failed" - - # 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 - elisp-compile *.el || die "elisp-compile failed" - fi -} - -src_install() { - einstall || die "install failed" - - dodoc AUTHORS ChangeLog GUILE-VERSION HACKING NEWS README THANKS - - # texmacs needs this, closing bug #23493 - dodir /etc/env.d - echo "GUILE_LOAD_PATH=\"/usr/share/guile/${MAJOR}\"" > "${D}"/etc/env.d/50guile - - # necessary for registering slib, see bug 206896 - keepdir /usr/share/guile/site - - if use emacs; then - elisp-install ${PN} emacs/*.{el,elc} || die "elisp-install failed" - elisp-site-file-install "${FILESDIR}/50${PN}-gentoo.el" \ - || die "elisp-site-file-install failed" - fi -} - -pkg_postinst() { - [ "${ROOT}" == "/" ] && pkg_config - use emacs && elisp-site-regen -} - -pkg_postrm() { - use emacs && elisp-site-regen -} - -pkg_config() { - if has_version dev-scheme/slib; then - einfo "Registering slib with guile" - install_slib_for_guile - fi -} - -_pkg_prerm() { - rm -f "${ROOT}"/usr/share/guile/site/slibcat -} diff --git a/dev-scheme/guile/guile-1.8.8-r1.ebuild b/dev-scheme/guile/guile-1.8.8-r1.ebuild new file mode 100644 index 0000000..9d9e9e9 --- /dev/null +++ b/dev-scheme/guile/guile-1.8.8-r1.ebuild @@ -0,0 +1,115 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-scheme/guile/guile-1.8.8-r1.ebuild,v 1.16 2013/04/24 22:53:08 pchrist Exp $ + +EAPI=3 +inherit eutils autotools flag-o-matic elisp-common + +DESCRIPTION="Scheme interpreter" +HOMEPAGE="http://www.gnu.org/software/guile/" +SRC_URI="mirror://gnu/guile/${P}.tar.gz" + +LICENSE="LGPL-2.1" +KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" +IUSE="networking +regex discouraged +deprecated emacs nls debug-freelist debug-malloc debug +threads" +RESTRICT="!regex? ( test )" + +DEPEND=" + >=dev-libs/gmp-4.1 + >=sys-devel/libtool-1.5.6 + sys-devel/gettext + emacs? ( virtual/emacs )" +RDEPEND="${DEPEND}" + +# 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" +MAJOR="1.8" + +src_prepare() { + epatch "${FILESDIR}/${P}-fix_guile-config.patch" \ + "${FILESDIR}/${P}-gcc46.patch" \ + "${FILESDIR}/${P}-makeinfo-5.patch" + sed \ + -e "s/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/g" \ + -e "/AM_PROG_CC_STDC/d" \ + -i guile-readline/configure.in + + # Fix tests, upstream patch, see bug 295093 + epatch "${FILESDIR}/${P}-fix_tests.patch" + 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 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 || die "make failed" + + # 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 + elisp-compile *.el || die + fi +} + +src_install() { + einstall || die "install failed" + + dodoc AUTHORS ChangeLog GUILE-VERSION HACKING NEWS README THANKS || die + + # texmacs needs this, closing bug #23493 + dodir /etc/env.d + echo "GUILE_LOAD_PATH=\"${EPREFIX}/usr/share/guile/${MAJOR}\"" > "${ED}"/etc/env.d/50guile + + # 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() { + [ "${EROOT}" == "/" ] && pkg_config + use emacs && elisp-site-regen +} + +pkg_postrm() { + use emacs && elisp-site-regen +} + +pkg_config() { + if has_version dev-scheme/slib; then + einfo "Registering slib with guile" + install_slib_for_guile + fi +} + +_pkg_prerm() { + rm -f "${EROOT}"/usr/share/guile/site/slibcat +} -- cgit v1.2.3-18-g5258