diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /dev-scheme/guile | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.xz |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'dev-scheme/guile')
-rw-r--r-- | dev-scheme/guile/Manifest | 2 | ||||
-rw-r--r-- | dev-scheme/guile/files/50guile-gentoo.el | 1 | ||||
-rw-r--r-- | dev-scheme/guile/files/guile-1.8.8-fix_guile-config.patch | 14 | ||||
-rw-r--r-- | dev-scheme/guile/files/guile-1.8.8-gcc46.patch | 39 | ||||
-rw-r--r-- | dev-scheme/guile/files/guile-1.8.8-gtexinfo-5.patch | 15 | ||||
-rw-r--r-- | dev-scheme/guile/files/guile-1.8.8-makeinfo-5.patch | 71 | ||||
-rw-r--r-- | dev-scheme/guile/guile-1.8.8-r1.ebuild | 114 | ||||
-rw-r--r-- | dev-scheme/guile/guile-2.0.0.ebuild | 101 | ||||
-rw-r--r-- | dev-scheme/guile/metadata.xml | 18 |
9 files changed, 375 insertions, 0 deletions
diff --git a/dev-scheme/guile/Manifest b/dev-scheme/guile/Manifest new file mode 100644 index 00000000000..2b9298ceaad --- /dev/null +++ b/dev-scheme/guile/Manifest @@ -0,0 +1,2 @@ +DIST guile-1.8.8.tar.gz 3956654 SHA256 c3471fed2e72e5b04ad133bbaaf16369e8360283679bcf19800bc1b381024050 SHA512 ede6feb90cd419d8763feb8c5169275490a653919573c4dfced025b74cf591072b3a10ffb9a3f6ee3fe7b0a0956ffcf434e0859b421455c8349cea56bf427db0 WHIRLPOOL 104810030b5dae16805595a5b398e5a7e600771b64b08d5ff686036e2f273dcec3829a16e4cdb1dbb9db5813f2e225476f83e0535a789bc570fc2fc15a76dbe2 +DIST guile-2.0.0.tar.gz 5564966 SHA256 7ba4ebd54d5b16840424172a14b2d10c76821bda9336fab5055b29fc288ec67b SHA512 44b5b703455eed28fc3981a067d8e0afd47b73bceb4d161c8d1db763db59adeb4add661424a41691bd00c7f4c54c5b02fefe9cd6cf94250eabab04848a2db3b2 WHIRLPOOL 066fcec5cffc217e233eb7c83eaef4fbbdaac7ada15acef5ebb2fbb937b8060c795a365bdc4c361965e452258db6d87bc637706370d951a2ed57f7337c52c06c diff --git a/dev-scheme/guile/files/50guile-gentoo.el b/dev-scheme/guile/files/50guile-gentoo.el new file mode 100644 index 00000000000..431f7e90ae7 --- /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 00000000000..2b04426ebd9 --- /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 00000000000..b06a0e59eb1 --- /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-gtexinfo-5.patch b/dev-scheme/guile/files/guile-1.8.8-gtexinfo-5.patch new file mode 100644 index 00000000000..d7fbda15c10 --- /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 00000000000..9f3a02c18c6 --- /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/guile-1.8.8-r1.ebuild b/dev-scheme/guile/guile-1.8.8-r1.ebuild new file mode 100644 index 00000000000..ffee62922f7 --- /dev/null +++ b/dev-scheme/guile/guile-1.8.8-r1.ebuild @@ -0,0 +1,114 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +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 arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~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 )" + +RDEPEND=" + >=dev-libs/gmp-4.1 + >=sys-devel/libtool-1.5.6 + sys-devel/gettext + emacs? ( virtual/emacs )" +DEPEND="${RDEPEND} + sys-apps/texinfo" + +# 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" \ + "${FILESDIR}/${P}-gtexinfo-5.patch" + sed \ + -e "s/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/g" \ + -e "/AM_PROG_CC_STDC/d" \ + -i guile-readline/configure.in + 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 + + # 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 + + 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 + + # 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 +} diff --git a/dev-scheme/guile/guile-2.0.0.ebuild b/dev-scheme/guile/guile-2.0.0.ebuild new file mode 100644 index 00000000000..e83a05bf7e9 --- /dev/null +++ b/dev-scheme/guile/guile-2.0.0.ebuild @@ -0,0 +1,101 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=3 +inherit eutils flag-o-matic elisp-common + +DESCRIPTION="GNU Ubiquitous Intelligent Language for Extensions" +HOMEPAGE="http://www.gnu.org/software/guile/" +SRC_URI="mirror://gnu/guile/${P}.tar.gz" + +LICENSE="LGPL-3" +KEYWORDS="~amd64" +IUSE="networking +regex +deprecated emacs nls debug-freelist debug-malloc debug +threads" + +RDEPEND=" + dev-libs/gmp + >=sys-devel/libtool-1.5.6 + sys-devel/gettext + virtual/pkgconfig + dev-libs/libunistring + >=dev-libs/boehm-gc-7.0[threads?] + virtual/libffi + emacs? ( virtual/emacs )" +DEPEND="${RDEPEND} + sys-apps/texinfo" + +SLOT="2" +MAJOR="2.0" + +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_enable deprecated) \ + $(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 + # make + # 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 +} diff --git a/dev-scheme/guile/metadata.xml b/dev-scheme/guile/metadata.xml new file mode 100644 index 00000000000..a3d993de70d --- /dev/null +++ b/dev-scheme/guile/metadata.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>scheme</herd> + <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> |