summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Brannon <teiresias@gentoo.org>2014-03-18 03:18:02 +0000
committerChristopher Brannon <teiresias@gentoo.org>2014-03-18 03:18:02 +0000
commitdbd8cc031b9c7d99c892e64cf6c3e192a4a88a0f (patch)
treecf6dc1f8adf245cafb7d760f72da3fd192e9b5c5 /dev-scheme
parentCleanup old. Fixes bug #500252. (diff)
downloadgentoo-2-dbd8cc031b9c7d99c892e64cf6c3e192a4a88a0f.tar.gz
gentoo-2-dbd8cc031b9c7d99c892e64cf6c3e192a4a88a0f.tar.bz2
gentoo-2-dbd8cc031b9c7d99c892e64cf6c3e192a4a88a0f.zip
New upstream release: 1.9.1.
(Portage version: 2.2.7/cvs/Linux x86_64, signed Manifest commit with key 0x6521e06d)
Diffstat (limited to 'dev-scheme')
-rw-r--r--dev-scheme/scheme48/ChangeLog10
-rw-r--r--dev-scheme/scheme48/files/scheme48-1.9.1-implicit-decl.patch97
-rw-r--r--dev-scheme/scheme48/scheme48-1.9.1.ebuild73
3 files changed, 178 insertions, 2 deletions
diff --git a/dev-scheme/scheme48/ChangeLog b/dev-scheme/scheme48/ChangeLog
index 37d21ebde64c..838c7b13b15d 100644
--- a/dev-scheme/scheme48/ChangeLog
+++ b/dev-scheme/scheme48/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for dev-scheme/scheme48
-# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-scheme/scheme48/ChangeLog,v 1.16 2012/12/20 21:52:03 pacho Exp $
+# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/dev-scheme/scheme48/ChangeLog,v 1.17 2014/03/18 03:18:02 teiresias Exp $
+
+*scheme48-1.9.1 (17 Mar 2014)
+
+ 17 Mar 2014; Christopher Brannon <teiresias@gentoo.org>
+ +scheme48-1.9.1.ebuild, +files/scheme48-1.9.1-implicit-decl.patch:
+ New upstream version, 1.9.1.
20 Dec 2012; Pacho Ramos <pacho@gentoo.org> metadata.xml:
Drop maintainer, bug #81411
diff --git a/dev-scheme/scheme48/files/scheme48-1.9.1-implicit-decl.patch b/dev-scheme/scheme48/files/scheme48-1.9.1-implicit-decl.patch
new file mode 100644
index 000000000000..60b2818e5181
--- /dev/null
+++ b/dev-scheme/scheme48/files/scheme48-1.9.1-implicit-decl.patch
@@ -0,0 +1,97 @@
+diff -r e16eb4429221 -r 125a138e07ed c/unix.h
+--- a/c/unix.h Sun Mar 16 22:30:45 2014 -0700
++++ b/c/unix.h Mon Mar 17 11:22:54 2014 +0100
+@@ -25,7 +25,7 @@
+ if (STATUS != NULL) \
+ break; \
+ else if (errno != EINTR) \
+- s48_os_error(NULL, errno, 0); } \
++ s48_os_error_2(call, NULL, errno, 0); } \
+ } while (0)
+
+ #define RETRY_OR_RAISE_NEG(STATUS, CALL) \
+@@ -35,7 +35,7 @@
+ if (STATUS >= 0) \
+ break; \
+ else if (errno != EINTR) \
+- s48_os_error(NULL, errno, 0); } \
++ s48_os_error_2(call, NULL, errno, 0); } \
+ } while (0)
+
+
+diff -r e16eb4429221 -r 125a138e07ed c/unix/fd-io.c
+--- a/c/unix/fd-io.c Sun Mar 16 22:30:45 2014 -0700
++++ b/c/unix/fd-io.c Mon Mar 17 11:22:54 2014 +0100
+@@ -323,21 +323,6 @@
+ * one.
+ */
+
+-s48_value
+-s48_add_channel(s48_value mode, s48_value id, long fd)
+-{
+- if (mode == S48_CHANNEL_STATUS_OUTPUT
+- && fd != 1
+- && fd != 2) {
+- int flags;
+- RETRY_OR_RAISE_NEG(flags, fcntl(fd, F_GETFL));
+- if ((flags & O_NONBLOCK) == 0)
+- fprintf(stderr,
+- "Warning: output channel file descriptor %d is not non-blocking\n",
+- (int) fd); }
+- return s48_really_add_channel(mode, id, fd);
+-}
+-
+ s48_ref_t
+ s48_add_channel_2(s48_call_t call, s48_ref_t mode, s48_ref_t id, long fd)
+ {
+diff -r e16eb4429221 -r 125a138e07ed c/win32/fd-io.c
+--- a/c/win32/fd-io.c Sun Mar 16 22:30:45 2014 -0700
++++ b/c/win32/fd-io.c Mon Mar 17 11:22:54 2014 +0100
+@@ -1211,13 +1211,6 @@
+ * one.
+ */
+
+-s48_value
+-s48_add_channel(s48_value mode, s48_value id, long fd)
+-{
+- /* back to the VM */
+- return s48_really_add_channel(mode, id, fd);
+-}
+-
+ s48_ref_t
+ s48_add_channel_2(s48_call_t call, s48_ref_t mode, s48_ref_t id, long fd)
+ {
+diff -r 98197bf570a4 -r e16eb4429221 c/main.c
+--- a/c/main.c Sun Mar 02 16:50:12 2014 +0100
++++ b/c/main.c Sun Mar 16 22:30:45 2014 -0700
+@@ -5,6 +5,7 @@
+ */
+
+ extern long s48_initialize(int *argc, char ***argv);
++extern long s48_call_startup_procedure(char **, long);
+
+ int
+ main(int argc, char **argv)
+diff -r 98197bf570a4 -r e16eb4429221 c/posix/proc.c
+--- a/c/posix/proc.c Sun Mar 02 16:50:12 2014 +0100
++++ b/c/posix/proc.c Sun Mar 16 22:30:45 2014 -0700
+@@ -9,6 +9,7 @@
+ * Scheme 48/POSIX process environment interface
+ */
+
++#define _GNU_SOURCE
+ #include <stdio.h>
+ #include <errno.h>
+ #include <string.h>
+diff -r 98197bf570a4 -r e16eb4429221 c/unix/socket.c
+--- a/c/unix/socket.c Sun Mar 02 16:50:12 2014 +0100
++++ b/c/unix/socket.c Sun Mar 16 22:30:45 2014 -0700
+@@ -11,6 +11,7 @@
+
+ #include <sys/types.h>
+ #include <sys/socket.h>
++#include <unistd.h>
+ #include <errno.h>
+ #include <fcntl.h>
+ #include <stdlib.h>
+
diff --git a/dev-scheme/scheme48/scheme48-1.9.1.ebuild b/dev-scheme/scheme48/scheme48-1.9.1.ebuild
new file mode 100644
index 000000000000..0198266cfe3d
--- /dev/null
+++ b/dev-scheme/scheme48/scheme48-1.9.1.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-scheme/scheme48/scheme48-1.9.1.ebuild,v 1.1 2014/03/18 03:18:02 teiresias Exp $
+
+EAPI=5
+inherit elisp-common multilib eutils flag-o-matic
+
+DESCRIPTION="Scheme48 is an implementation of the Scheme Programming Language."
+HOMEPAGE="http://www.s48.org/"
+SRC_URI="http://www.s48.org/${PV}/${P}.tgz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~x86 ~amd64 ~amd64-linux ~x86-linux ~x86-macos"
+IUSE="doc emacs"
+
+DEPEND="emacs? ( virtual/emacs )"
+RDEPEND="${DEPEND}"
+SITEFILE=50scheme48-gentoo.el
+
+src_prepare() {
+ # Patch available upstream. It can go away next version.
+ epatch "${FILESDIR}/${P}-implicit-decl.patch"
+}
+
+src_configure() {
+ append-cflags -fno-strict-aliasing
+ econf --docdir=/usr/share/doc/${P}
+}
+
+src_compile() {
+ emake
+ if use emacs; then
+ elisp-compile "${S}"/emacs/cmuscheme48.el
+ fi
+}
+
+src_install() {
+ # weird parallel failures!
+ emake -j1 DESTDIR="${D}" install
+
+ if use emacs; then
+ elisp-install ${PN} emacs/cmuscheme48.el emacs/*.elc
+ elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+ fi
+
+ dodoc README
+ if use doc; then
+ dodoc doc/*.txt
+ docinto src
+ dodoc doc/src/*
+ pushd "${ED}/usr/share/doc/${P}" > /dev/null
+ install -dm755 html
+ mv *.html *.css *.gif html/
+ popd > /dev/null
+ else
+ pushd "${ED}/usr/share/doc/${P}" > /dev/null
+ rm -f *.html *.css *.gif
+ rm -f manu*
+ popd > /dev/null
+ fi
+
+ #this symlink clashes with gambit
+ rm "${ED}"/usr/bin/scheme-r5rs || die
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}