summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPanagiotis Christopoulos <pchrist@gentoo.org>2008-06-01 17:37:27 +0000
committerPanagiotis Christopoulos <pchrist@gentoo.org>2008-06-01 17:37:27 +0000
commit588c3ec618bd5f867746aff153cd00a58ecdd959 (patch)
tree66668d389ebb89596cb50839d5c56767ee4bd290 /dev-scheme/stalin
parentstable x86, bug 224019 (diff)
downloadhistorical-588c3ec618bd5f867746aff153cd00a58ecdd959.tar.gz
historical-588c3ec618bd5f867746aff153cd00a58ecdd959.tar.bz2
historical-588c3ec618bd5f867746aff153cd00a58ecdd959.zip
Initial port of dev-scheme/stalin, version 0.11. Updated and moved from the overlay to the main tree
Package-Manager: portage-2.1.5.2
Diffstat (limited to 'dev-scheme/stalin')
-rw-r--r--dev-scheme/stalin/ChangeLog11
-rw-r--r--dev-scheme/stalin/Manifest4
-rw-r--r--dev-scheme/stalin/metadata.xml16
-rw-r--r--dev-scheme/stalin/stalin-0.11.ebuild85
4 files changed, 116 insertions, 0 deletions
diff --git a/dev-scheme/stalin/ChangeLog b/dev-scheme/stalin/ChangeLog
new file mode 100644
index 000000000000..62fdf3908cfd
--- /dev/null
+++ b/dev-scheme/stalin/ChangeLog
@@ -0,0 +1,11 @@
+# ChangeLog for dev-scheme/stalin
+# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/dev-scheme/stalin/ChangeLog,v 1.1 2008/06/01 17:37:27 pchrist Exp $
+
+*stalin-0.11 (01 Jun 2008)
+
+ 01 Jun 2008; Panagiotis Christopoulos <pchrist@gentoo.org>
+ +stalin-0.11.ebuild:
+ Initial port of dev-scheme/stalin, version 0.11. Updated and moved from
+ the overlay to the main tree
+
diff --git a/dev-scheme/stalin/Manifest b/dev-scheme/stalin/Manifest
new file mode 100644
index 000000000000..1869399d0b5a
--- /dev/null
+++ b/dev-scheme/stalin/Manifest
@@ -0,0 +1,4 @@
+DIST stalin-0.11.tgz 5392735 RMD160 5276dce6ae27e495eb27a1a79e8f3b22e26e112f SHA1 f1e6107685c9070c84cb9002030b06a9814337c9 SHA256 95eafb4fa870cb93f5d79b8935c42664cf54f227b2c7eacf7b55b06b33e1e3fe
+EBUILD stalin-0.11.ebuild 2488 RMD160 5c346fa398ad8794d52eeaa5458681cc58e1c5e5 SHA1 c89ae340e741584931151e3203adea8f06ead0b1 SHA256 cadf2c38bcf44cf86ee4f965875e5cbaab2dfdbf05c66745eaea74cf690afc49
+MISC ChangeLog 426 RMD160 cc299acb914d06f4072f023eb23ad040d5f2d6a8 SHA1 8d9896d52fc0e26eaf6a0ab413258f0ad0dcda50 SHA256 ba2b2ff178922cd2ee3922b59cbb3e8adbde199b83f7b29485b935b3c454c0f8
+MISC metadata.xml 552 RMD160 8f82f788aa693fa7818afe71a57b4ce91c8e0b97 SHA1 0b63c10ab0a791bee89a268132b7653cfdc56128 SHA256 c1426710f72a427a727ba4cfc25562f739feb396e6cf48dd3f60b21ed69af61e
diff --git a/dev-scheme/stalin/metadata.xml b/dev-scheme/stalin/metadata.xml
new file mode 100644
index 000000000000..2a1ff0f8a0dc
--- /dev/null
+++ b/dev-scheme/stalin/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>scheme</herd>
+ <maintainer>
+ <email>pchrist@gentoo.org</email>
+ <name>Panagiotis Christopoulos</name>
+ </maintainer>
+ <longdescription lang="en">
+ Stalin is an aggressively optimizing Scheme compiler. It is the most
+ highly optimizing Scheme compiler, and in fact one of the most highly
+ optimizing compilers of any sort for any language. It was written by
+ Jeffrey M. Siskind.
+ </longdescription>
+</pkgmetadata>
+
diff --git a/dev-scheme/stalin/stalin-0.11.ebuild b/dev-scheme/stalin/stalin-0.11.ebuild
new file mode 100644
index 000000000000..f26671cdc6c6
--- /dev/null
+++ b/dev-scheme/stalin/stalin-0.11.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-scheme/stalin/stalin-0.11.ebuild,v 1.1 2008/06/01 17:37:27 pchrist Exp $
+
+inherit eutils
+
+DESCRIPTION="An aggressively optimizing Scheme compiler."
+HOMEPAGE="http://community.schemewiki.org/?Stalin"
+SRC_URI="ftp://ftp.ecn.purdue.edu/qobi/${P}.tgz"
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~x86"
+IUSE=""
+RESTRICT="strip"
+RDEPEND="x11-libs/libX11"
+DEPEND="${RDEPEND}"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ sed -i -e 's/-O3 -fomit-frame-pointer/$(CFLAGS)/' makefile
+}
+
+pkg_setup() {
+ ewarn "Stalin is an ugly beast, which will eat all your memory and stress your"
+ ewarn "processor to levels you have never experienced. If you want to abort,"
+ ewarn "please do it now. You have been warned."
+ epause 10
+}
+
+src_compile() {
+ einfo "Beginning of stalin's compilation process. It may take several minutes."
+ ./build || die "Stalin's compilation failed"
+}
+
+src_test() {
+ einfo "This may take REALLY much time and requires"
+ einfo "possibly more than 2Gb of RAM+swap."
+ cd benchmarks
+ ./compile-and-run-stalin-old-benchmarks || die "old benchmarks failed"
+ #./compile-and-run-stalin-bcl-benchmarks || die "bcl bechmarks failed"
+ #./compile-and-run-stalin-fdlcc-benchmarks || die "fdlcc benchmarks failed"
+}
+
+src_install() {
+ pushd include
+ dodir /usr/include/${PN}
+ insinto /usr/include/${PN}
+ doins gc.h gc_config_macros.h
+ dodir /usr/lib/${PN}
+ insinto /usr/lib/${PN}
+ doins libgc.a libstalin.a stalin stalin-architecture-name \
+ stalin.architectures QobiScheme.sc xlib.sc xlib-original.sc \
+ Scheme-to-C-compatibility.sc
+ fperms 755 /usr/lib/${PN}/stalin \
+ /usr/lib/${PN}/stalin-architecture-name
+ popd
+(
+cat <<'EOF'
+#!/bin/bash
+
+exec /usr/lib/stalin/stalin -I /usr/include/stalin \
+-I /usr/lib/stalin -copt -fno-strict-aliasing $@
+
+EOF
+) > stalin
+ exeinto /usr/bin
+ doexe stalin
+ doman stalin.1
+ dodoc ANNOUNCEMENT MORE README
+ pushd benchmarks
+ sed -i -e 's/..\/stalin/stalin/' make-hello
+ dodoc hello.sc make-hello
+ popd
+}
+
+pkg_postinst() {
+ elog "In ${ROOT}/usr/share/doc/${PF} you will find the make-hello and"
+ elog "hello.sc files(compressed). If you put them in the same directory"
+ elog "and run make.hello, it will produce a \"hello\" executable."
+ elog "The \"make-hello\" file can be used as an example of how to use"
+ elog "stalin to compile code and create efficient executables. "
+ elog "man stalin , for documentation"
+}
+