diff options
author | Marijn Schouten <hkbst@gentoo.org> | 2008-04-25 23:22:03 +0000 |
---|---|---|
committer | Marijn Schouten <hkbst@gentoo.org> | 2008-04-25 23:22:03 +0000 |
commit | 614260ea29e0b212c280df015efd160796a0c30f (patch) | |
tree | 244ecc54973224e8fceb3a609ed1168768001b25 /dev-scheme/guile | |
parent | changing metadata (diff) | |
download | gentoo-2-614260ea29e0b212c280df015efd160796a0c30f.tar.gz gentoo-2-614260ea29e0b212c280df015efd160796a0c30f.tar.bz2 gentoo-2-614260ea29e0b212c280df015efd160796a0c30f.zip |
add fixes for libtool-2.2 bug 212723 and gcc-4.3, bug 214787
(Portage version: 2.1.5_rc6)
Diffstat (limited to 'dev-scheme/guile')
-rw-r--r-- | dev-scheme/guile/ChangeLog | 8 | ||||
-rw-r--r-- | dev-scheme/guile/files/gcc-4.3.patch | 87 | ||||
-rw-r--r-- | dev-scheme/guile/guile-1.8.4-r1.ebuild | 88 |
3 files changed, 182 insertions, 1 deletions
diff --git a/dev-scheme/guile/ChangeLog b/dev-scheme/guile/ChangeLog index af09ec5847ec..1f01ca655411 100644 --- a/dev-scheme/guile/ChangeLog +++ b/dev-scheme/guile/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for dev-scheme/guile # Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-scheme/guile/ChangeLog,v 1.56 2008/04/17 18:33:51 nixnut Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-scheme/guile/ChangeLog,v 1.57 2008/04/25 23:22:02 hkbst Exp $ + +*guile-1.8.4-r1 (25 Apr 2008) + + 25 Apr 2008; Marijn Schouten <hkBst@gentoo.org> +files/gcc-4.3.patch, + +guile-1.8.4-r1.ebuild: + add fixes for libtool-2.2 bug 212723 and gcc-4.3, bug 214787 17 Apr 2008; nixnut <nixnut@gentoo.org> guile-1.8.4.ebuild: Stable on ppc wrt bug 217410 diff --git a/dev-scheme/guile/files/gcc-4.3.patch b/dev-scheme/guile/files/gcc-4.3.patch new file mode 100644 index 000000000000..35ac8b149339 --- /dev/null +++ b/dev-scheme/guile/files/gcc-4.3.patch @@ -0,0 +1,87 @@ +diff -urN guile-1.8-1.8.3+1.old/libguile/c-tokenize.c guile-1.8-1.8.3+1/libguile/c-tokenize.c +--- guile-1.8-1.8.3+1.old/libguile/c-tokenize.c 2007-06-13 22:00:56.000000000 +0000 ++++ guile-1.8-1.8.3+1/libguile/c-tokenize.c 2008-02-23 01:40:11.000000000 +0000 +@@ -579,6 +579,8 @@ + #include <stdlib.h> + #include <string.h> + ++#define YY_NO_INPUT ++ + int yylex(void); + + int yyget_lineno (void); +diff -urN guile-1.8-1.8.3+1.old/libguile/c-tokenize.lex guile-1.8-1.8.3+1/libguile/c-tokenize.lex +--- guile-1.8-1.8.3+1.old/libguile/c-tokenize.lex 2007-05-09 20:22:03.000000000 +0000 ++++ guile-1.8-1.8.3+1/libguile/c-tokenize.lex 2008-02-23 01:39:42.000000000 +0000 +@@ -18,7 +18,9 @@ + #include <stdio.h> + #include <stdlib.h> + #include <string.h> +- ++ ++#define YY_NO_INPUT ++ + int yylex(void); + + int yyget_lineno (void); +diff -urN guile-1.8-1.8.3+1.old/libguile/inline.h guile-1.8-1.8.3+1/libguile/inline.h +--- guile-1.8-1.8.3+1.old/libguile/inline.h 2007-05-09 20:22:03.000000000 +0000 ++++ guile-1.8-1.8.3+1/libguile/inline.h 2008-02-23 01:43:22.000000000 +0000 +@@ -55,6 +55,12 @@ + extern unsigned scm_newcell2_count; + extern unsigned scm_newcell_count; + ++#ifdef __GNUC_STDC_INLINE__ ++#define SCM_C_GNU_INLINE SCM_C_INLINE __attribute__((__gnu_inline__)) ++#else ++#define SCM_C_GNU_INLINE SCM_C_INLINE ++#endif ++ + #if defined SCM_C_INLINE && ! defined SCM_INLINE_C_INCLUDING_INLINE_H + /* definitely inlining */ + #ifdef __GNUC__ +@@ -62,7 +68,7 @@ + #else + static + #endif +-SCM_C_INLINE ++SCM_C_GNU_INLINE + #endif + SCM + scm_cell (scm_t_bits car, scm_t_bits cdr) +@@ -138,7 +144,7 @@ + #else + static + #endif +-SCM_C_INLINE ++SCM_C_GNU_INLINE + #endif + SCM + scm_double_cell (scm_t_bits car, scm_t_bits cbr, +@@ -213,7 +219,7 @@ + #else + static + #endif +-SCM_C_INLINE ++SCM_C_GNU_INLINE + #endif + SCM + scm_array_handle_ref (scm_t_array_handle *h, ssize_t p) +@@ -228,7 +234,7 @@ + #else + static + #endif +-SCM_C_INLINE ++SCM_C_GNU_INLINE + #endif + void + scm_array_handle_set (scm_t_array_handle *h, ssize_t p, SCM v) +@@ -243,7 +249,7 @@ + #else + static + #endif +-SCM_C_INLINE ++SCM_C_GNU_INLINE + #endif + int + scm_is_pair (SCM x) diff --git a/dev-scheme/guile/guile-1.8.4-r1.ebuild b/dev-scheme/guile/guile-1.8.4-r1.ebuild new file mode 100644 index 000000000000..1996f808a965 --- /dev/null +++ b/dev-scheme/guile/guile-1.8.4-r1.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-scheme/guile/guile-1.8.4-r1.ebuild,v 1.1 2008/04/25 23:22:02 hkbst Exp $ + +inherit eutils autotools flag-o-matic + +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" + +# 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 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 + + #bug 214787 + epatch "${FILESDIR}"/gcc-4.3.patch + + #for libtool-2.2*, bug 212723 + 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 + + emake || die "make failed" +} + +src_install() { + einstall || die "install failed" + + dodoc AUTHORS ChangeLog GUILE-VERSION HACKING NEWS README SNAPSHOTS 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 +} + +pkg_postinst() { + [ "${ROOT}" == "/" ] && pkg_config +} + +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 +} |