public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/musl:master commit in: dev-scheme/guile/, dev-scheme/guile/files/
@ 2015-06-13 23:54 Anthony G. Basile
  0 siblings, 0 replies; only message in thread
From: Anthony G. Basile @ 2015-06-13 23:54 UTC (permalink / raw
  To: gentoo-commits

commit:     31d586ddded6d32a8134c03e1db5816c26b18e13
Author:     Anthony G. Basile <blueness <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 13 23:41:44 2015 +0000
Commit:     Anthony G. Basile <blueness <AT> gentoo <DOT> org>
CommitDate: Sat Jun 13 23:52:58 2015 +0000
URL:        https://gitweb.gentoo.org/proj/musl.git/commit/?id=31d586dd

Revert "dev-scheme/guile: tree version works"

This reverts commit 8849de643d2bb28aa34ed52a10ad50eff6d52ce1.

This breaks the compilation of autogen-5.18.1 which is the current
stable version in the tree.  5.18.4 is okay but still unstable.  We
can remove the overlay version of guile when 5.81.4 goes stable.

See: https://bugs.gentoo.org/show_bug.cgi?id=493464

 dev-scheme/guile/Manifest                          |   8 ++
 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-gcc46.patch     |  39 +++++++
 .../guile/files/guile-1.8.8-makeinfo-5.patch       |  71 +++++++++++++
 dev-scheme/guile/files/guile-1.8.8-os_dep.patch    |  10 ++
 dev-scheme/guile/guile-1.8.8-r99.ebuild            | 113 +++++++++++++++++++++
 dev-scheme/guile/metadata.xml                      |  18 ++++
 8 files changed, 274 insertions(+)

diff --git a/dev-scheme/guile/Manifest b/dev-scheme/guile/Manifest
new file mode 100644
index 0000000..8a638ca
--- /dev/null
+++ b/dev-scheme/guile/Manifest
@@ -0,0 +1,8 @@
+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-makeinfo-5.patch 2361 SHA256 f1bfbe27280f6105735a2b4f0cf7883a9a825d4df756b74663112612b7a72438 SHA512 a69ed6cf2fd87c6f3d61cc914eed960fcdebaa151778b1ecf04f1774e6dddf07d17bf90fb3243a08e8c231e391843201d0ba26debedef33199d8dd75f8cbcd09 WHIRLPOOL c392c00f99d68cba17db8f14c68dc153f9cf146a3a6e197c4101959e93eb634a451cf8cdf957216f1c24fafcebf377a93e81682d5c0692506a0dd4c7ac00fa48
+AUX guile-1.8.8-os_dep.patch 440 SHA256 e4b54c94aa2087495dc0b4a93e004cc053e5018bbb556c8ea5b674977ea31a52 SHA512 df1681a3e311de4c3f7d4097ab4f92990d1a36f4f47507e967252039479822be9a82d64d483b0f1025c3ecf0ff070d8c7a30ccc4ef0d19db0895f5b9622019c7 WHIRLPOOL 412b0509fdc78b8bd28ee6236c94ed213c95b1da4a666ac1cfef824746ab7dae5cc10bc159d38070c8a17e3363b8f289f27bb6804f50870936ba939116b88a13
+DIST guile-1.8.8.tar.gz 3956654 SHA256 c3471fed2e72e5b04ad133bbaaf16369e8360283679bcf19800bc1b381024050 SHA512 ede6feb90cd419d8763feb8c5169275490a653919573c4dfced025b74cf591072b3a10ffb9a3f6ee3fe7b0a0956ffcf434e0859b421455c8349cea56bf427db0 WHIRLPOOL 104810030b5dae16805595a5b398e5a7e600771b64b08d5ff686036e2f273dcec3829a16e4cdb1dbb9db5813f2e225476f83e0535a789bc570fc2fc15a76dbe2
+EBUILD guile-1.8.8-r99.ebuild 2887 SHA256 e41d065f3078343f312b15e604b32ebce47be2498741d60ad56892761355085d SHA512 c431c0de268aa5ecdfa86eb910e954cffebe4dc408c8107ebbe6011c64f9250617541a70a07ebbf5bffc86d0ae5025ebb3f470c689f4815c59403ca5bb653cd3 WHIRLPOOL 1e6844b0ee7f5d8a85d039d1a5459051c840363b840ac81785bc6fb5802b58c88efbc8ccf14f0a736f8704fd0b319faf2a01e92115e5b24b03e759e7b36a3111
+MISC metadata.xml 939 SHA256 bec92c2558ecc371364a598a582a19b43dff9a809fe732d150e9b209b76f17ca SHA512 ca2dd2db48025f250b4ddaeea40a6119c00bdbc7c6d8167f274fffa9155ae64083a3ccb1cff272abd3cdfc108f555f9f04beb10532ce7174db50ce96d0a4f1eb WHIRLPOOL 75f94d8db3b573829322c06a6a388775cb9b6302624c345f492a650b6ac644d2a48021b16b436786e138eb8753f9ed3354df4e5944bd92f2a3b7b4819ff91155

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-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 <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-os_dep.patch b/dev-scheme/guile/files/guile-1.8.8-os_dep.patch
new file mode 100644
index 0000000..9fab8da
--- /dev/null
+++ b/dev-scheme/guile/files/guile-1.8.8-os_dep.patch
@@ -0,0 +1,10 @@
+--- a/guile-1.8.8/libguile/gc_os_dep.c
++++ b/guile-1.8.8/libguile/gc_os_dep.c
+@@ -1472,6 +1472,7 @@
+ 	  /* has the right declaration for glibc 2.1.			*/
+ #         include <sigcontext.h>
+ #       endif /* 0 == __GLIBC_MINOR__ */
++#     elif 1
+ #     else /* not 2 <= __GLIBC__ */
+         /* libc5 doesn't have <sigcontext.h>: go directly with the kernel   */
+         /* one.  Check LINUX_VERSION_CODE to see which we should reference. */

diff --git a/dev-scheme/guile/guile-1.8.8-r99.ebuild b/dev-scheme/guile/guile-1.8.8-r99.ebuild
new file mode 100644
index 0000000..abfa46e
--- /dev/null
+++ b/dev-scheme/guile/guile-1.8.8-r99.ebuild
@@ -0,0 +1,113 @@
+# 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="amd64 arm ~mips ppc x86"
+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}-os_dep.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
+	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
+}

diff --git a/dev-scheme/guile/metadata.xml b/dev-scheme/guile/metadata.xml
new file mode 100644
index 0000000..a3d993d
--- /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>


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2015-06-13 23:55 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-13 23:54 [gentoo-commits] proj/musl:master commit in: dev-scheme/guile/, dev-scheme/guile/files/ Anthony G. Basile

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox