summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPanagiotis Christopoulos <pchrist@gentoo.org>2011-02-08 01:54:43 +0000
committerPanagiotis Christopoulos <pchrist@gentoo.org>2011-02-08 01:54:43 +0000
commitc8eea9d4d7a05a4a61fd4d4b56a7e2fe48b4c4b9 (patch)
tree02d985bf6135f68c2dc19e6b4f56ca22e54a8c2a /dev-lisp/sbcl
parent*portage-2.2.0_alpha22 (08 Feb 2011) (diff)
downloadgentoo-2-c8eea9d4d7a05a4a61fd4d4b56a7e2fe48b4c4b9.tar.gz
gentoo-2-c8eea9d4d7a05a4a61fd4d4b56a7e2fe48b4c4b9.tar.bz2
gentoo-2-c8eea9d4d7a05a4a61fd4d4b56a7e2fe48b4c4b9.zip
Version bump by Stelian Ionescu <sionescu+gentoo at cddr.org>, fixes bug #154887, bug #338949 and build system (see patch). Many thanks to Stelian.
Diffstat (limited to 'dev-lisp/sbcl')
-rw-r--r--dev-lisp/sbcl/ChangeLog12
-rw-r--r--dev-lisp/sbcl/Manifest21
-rw-r--r--dev-lisp/sbcl/files/sbcl-1.0.45-fix_install_man.patch12
-rw-r--r--dev-lisp/sbcl/files/sbcl-1.0.45-fix_linux-os-c.patch14
-rw-r--r--dev-lisp/sbcl/metadata.xml10
-rw-r--r--dev-lisp/sbcl/sbcl-1.0.45.ebuild184
6 files changed, 239 insertions, 14 deletions
diff --git a/dev-lisp/sbcl/ChangeLog b/dev-lisp/sbcl/ChangeLog
index f308e62337b6..50d25bb8b57a 100644
--- a/dev-lisp/sbcl/ChangeLog
+++ b/dev-lisp/sbcl/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for dev-lisp/sbcl
-# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/ChangeLog,v 1.168 2010/12/17 20:19:14 ulm Exp $
+# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/ChangeLog,v 1.169 2011/02/08 01:54:43 pchrist Exp $
+
+*sbcl-1.0.45 (08 Feb 2011)
+
+ 08 Feb 2011; Panagiotis Christopoulos <pchrist@gentoo.org>
+ +sbcl-1.0.45.ebuild, +files/sbcl-1.0.45-fix_install_man.patch,
+ +files/sbcl-1.0.45-fix_linux-os-c.patch, metadata.xml:
+ Version bump by Stelian Ionescu <sionescu+gentoo at cddr.org>, fixes bug
+ #154887, bug #338949 and build system (see patch). Many thanks to Stelian.
17 Dec 2010; Ulrich Mueller <ulm@gentoo.org> sbcl-1.0.19.ebuild,
sbcl-1.0.26-r10.ebuild, sbcl-1.0.27-r10.ebuild, sbcl-1.0.28.ebuild,
diff --git a/dev-lisp/sbcl/Manifest b/dev-lisp/sbcl/Manifest
index 0a31f696375d..a40e357faa9e 100644
--- a/dev-lisp/sbcl/Manifest
+++ b/dev-lisp/sbcl/Manifest
@@ -1,8 +1,7 @@
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
AUX disable-tests-gentoo.patch 2398 RMD160 65a45c07af77b042da859fb00d6f19c7d3354289 SHA1 3f970fdc360b081e51b82a92debd5b2522b73707 SHA256 503fb71f962097025375cdbb6e2a80d734f107d7c13148319f7cf9170a6f65d2
AUX sbcl-1.0.36-fix_linux-os-c.patch 418 RMD160 558a7cc1c212729e39f746d7db9cc7324d23a64f SHA1 5ff812499525ec51c0debdac78fc6d39bc4d55a0 SHA256 50b310b3d72b380b91828730a5539638decb6a4df6d28f93dff84ddad824b2ae
+AUX sbcl-1.0.45-fix_install_man.patch 399 RMD160 8cbc6d8d2f70c10cf76a0a2a3e574b8267d97370 SHA1 44186fdfdd12db5094abed07259016dc6b377695 SHA256 7e3e3f84be6d4dae51953825daaf26d8fe1482fd2f4e9d017297dd8ef55ebe47
+AUX sbcl-1.0.45-fix_linux-os-c.patch 418 RMD160 558a7cc1c212729e39f746d7db9cc7324d23a64f SHA1 5ff812499525ec51c0debdac78fc6d39bc4d55a0 SHA256 50b310b3d72b380b91828730a5539638decb6a4df6d28f93dff84ddad824b2ae
AUX vanilla-module-install-source-gentoo.patch 471 RMD160 6eace9d24ddade1e53900880c944f332b32e3b10 SHA1 f70d4c097926ca6c61b8601dbb2b672571c5e1fe SHA256 af86a188c77abc5624744683ee91e4414554ebd0f83b9d1b7dcb01468316cd52
DIST sbcl-0.9.12-alpha-linux-binary.tar.bz2 7147697 RMD160 09fa934242a9da6c765056420f694c8f23bba925 SHA1 07c5f14ae27ab2558b3ee845570487dfc0ca5942 SHA256 3a16825480ca476c986bc18d1a1a2c5cad5a1e71ff6ba21d5c5011f69b119245
DIST sbcl-0.9.17-sparc-linux-binary.tar.bz2 7322996 RMD160 b9887c767ddc693fade88b04cc919859aef1b79a SHA1 45a01e64e8bbda991c0f252c344acf3c5f27ec69 SHA256 9238d9de88be3d05c3369cd15f52ae2819a82e7e55f9b85133c947d102ce4059
@@ -31,18 +30,16 @@ DIST sbcl-1.0.29-x86_64-linux-binary-r2.tar.bz2 8170272 RMD160 3d345e6795679bb26
DIST sbcl-1.0.31-source.tar.bz2 3354506 RMD160 e94c9097ff4138471c179bfe1f1e2c33e6f2e169 SHA1 4a4b74de174f97050a2785ac4559aa6dd48a3d09 SHA256 d0264d6e4a49e6d181c27348f07de733c09860c9cd74a1fbe8e6e3cb7ca289dc
DIST sbcl-1.0.36-source.tar.bz2 3393142 RMD160 160e2adf42557a12879e0476aa8e46d6c255e6aa SHA1 58263e0f6d17833bc722846e1be01c2a9af90228 SHA256 bbd878562ba36feb21b591e7165cc8feeabf51271a56b139640dfb1fb482bac5
DIST sbcl-1.0.36-x86-linux-binary.tar.bz2 8812467 RMD160 000f73bf31e04a591fdef4484dd5897362cd0041 SHA1 7f642fb0ee6ab0043a415f8424e2f3d8a98e85d3 SHA256 d25eecb2ea92e6758597b35568a33c43e9c4ce10841160d6753d2b54e5428148
+DIST sbcl-1.0.37-x86-64-linux-binary.tar.bz2 8702821 RMD160 7fbe97150a2821e80c8b0a8b3b21eec28280ad1d SHA1 d3df7f9670addcf4f2ad7f1f6832161747e6390d SHA256 0757a1d49d5452c9bef8d1c270dd423aa1b752e6a7ce4a3ffb546253e1bf56f3
+DIST sbcl-1.0.37-x86-linux-binary.tar.bz2 8815040 RMD160 0bca593f88b085f49586755d713c9004e3c689a0 SHA1 ed54d6b36d8abf0074babed30eb48ed0d9bdc894 SHA256 3d04ffc7c71afe523858799386a3175467556648b27184e39f62df8f60cf7268
+DIST sbcl-1.0.45-fix_build_system.patch.bz2 9453 RMD160 50efe4a90e2a7169cea548f96ec90fd0a2ce0c16 SHA1 273bd195458d947e59f6f06028d37a55f01564a9 SHA256 8f6a716c027e4e05b81340fbeb3fa6da259b9fb40b27b4e88a5086ee413abee8
+DIST sbcl-1.0.45-source.tar.bz2 3533569 RMD160 96191491778252276ebe02c8ad1db97eb8fb81b6 SHA1 fc376c17081dfc1f46ca24e9dcafac3a4026bcfe SHA256 d1c79aec233e6dfb0adbaacdacfd90070ea07e13dcbecad210f2c72a3c2654ab
EBUILD sbcl-1.0.19.ebuild 6233 RMD160 0b0cf26bf91f677db9adf92731c2d82b4f1d6930 SHA1 859697199b1d246c5b384fab4d134b854bddb51f SHA256 21eb8661696dc048c68487b9be2709a37ca2f5d31f10da3df7019d56ae249d1f
EBUILD sbcl-1.0.26-r10.ebuild 6046 RMD160 e0afb4d386ad6884d7699371a57298019d68d5fb SHA1 f0640331b0106d71a8cc9816f8e61b6ecc2d333c SHA256 95134ce1196c70ca8031a1120fc7daadd2512c71bf1f2d6c86652cbd3af09888
EBUILD sbcl-1.0.27-r10.ebuild 6046 RMD160 091280b0c57d2d1c3e02427f8ed6fb89682bb09e SHA1 3cd75340618df2043ce7b53eb02dcc8abdd07d36 SHA256 a0a572e8733381fba59e0535c856a8afba88bb7a58ca3bd9926ed6d56208ce8b
EBUILD sbcl-1.0.28.ebuild 5977 RMD160 a0c1ca295044ab482e56708d0c23cc87a735398c SHA1 d126f8aa01d907898d5d86d508745e2697574345 SHA256 ea029159a247d99968e6bdf9a6a2d8606fa5b0f360a326b366efa583db0ee641
EBUILD sbcl-1.0.31.ebuild 5969 RMD160 e3753ba5fb95eb7125aeec7a3d4703439e52a0b5 SHA1 89b5fe0174859983d32f0fc335feb7982ed7681f SHA256 c4abe9b78db5efd86d44d5d7273cd4e4747cd8f4538b7858a915dd2c73200c21
EBUILD sbcl-1.0.36-r1.ebuild 6100 RMD160 74dc264cd596feffd7f06f8d9597909b1b2f6ad4 SHA1 38f13028419d15003dede00d23a071e62cb93c52 SHA256 7f9575dcfa0a16d267ac2b5eab7c915d43f85f7f99ece96345c2c1fc91f2b7a1
-MISC ChangeLog 47894 RMD160 2815285b6f89d9e76c7ded17d9070cf3742a9f0a SHA1 c20c9da2093b46c4c17457535b8f88c661eaae04 SHA256 516b0fbccc3228f7bfe08b175ae75524ab008d76b91cd829913096e88a440fed
-MISC metadata.xml 1192 RMD160 cc9ef1f835468d8901a7fac96ff183cffaa8448f SHA1 d628ab8da2e19ab42b6df9dcd1afc09e3efdcd05 SHA256 b5fb21d6b7020a9ebde8793cfb7209ee1db5c5d6ee0b1c8fd6c7b7e3a3db27b1
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.16 (GNU/Linux)
-
-iEYEARECAAYFAk0LxrsACgkQOeoy/oIi7uw7RwCgllutd47xk76zLUtIlY8K4omd
-N+oAn3TtL1XakxIKvL0Z/cjQEFREjKBj
-=kFx8
------END PGP SIGNATURE-----
+EBUILD sbcl-1.0.45.ebuild 5713 RMD160 d80d4f510ff853d73a0ae3628a351354252d0f6c SHA1 264bda1f7278501f929f8285e1ee5ab1d2b0b6ad SHA256 04a855f5c1b29654f7dc38b175ab929841a9e75282010c1de7a6413a83fc6bce
+MISC ChangeLog 48258 RMD160 7a8420995d0a861538f52e8ab258ef99f2545516 SHA1 f72faed53321f636d32d14501fb57ba1dcfe0862 SHA256 5b63b6d01d10aeaeb17e6a88956290281738fec60faa2a2bb2687b203558f912
+MISC metadata.xml 1501 RMD160 11aab1b73cf658d3bacbf27d17387f5fb590b84a SHA1 62ac90e7f6e18e92f041bb0bdc262df2727b0268 SHA256 79ebfa2dd313ba4a91702659271ec85f41b9904e2fd26af6824a39c6557610cb
diff --git a/dev-lisp/sbcl/files/sbcl-1.0.45-fix_install_man.patch b/dev-lisp/sbcl/files/sbcl-1.0.45-fix_install_man.patch
new file mode 100644
index 000000000000..87a5f43c0c13
--- /dev/null
+++ b/dev-lisp/sbcl/files/sbcl-1.0.45-fix_install_man.patch
@@ -0,0 +1,12 @@
+diff --git a/install.sh b/install.sh
+index 1400791..ac149c1 100644
+--- a/install.sh
++++ b/install.sh
+@@ -106,6 +106,7 @@ echo "Documentation:"
+
+ # man
+ cp doc/sbcl.1 "$BUILD_ROOT$MAN_DIR"/man1/ && echo " man $BUILD_ROOT$MAN_DIR/man1/sbcl.1"
++cp doc/sbcl-asdf-install.1 "$BUILD_ROOT$MAN_DIR"/man1/ && echo " man $BUILD_ROOT$MAN_DIR/man1/sbcl-asdf-install.1"
+
+ # info
+ for info in doc/manual/*.info
diff --git a/dev-lisp/sbcl/files/sbcl-1.0.45-fix_linux-os-c.patch b/dev-lisp/sbcl/files/sbcl-1.0.45-fix_linux-os-c.patch
new file mode 100644
index 000000000000..b5c593051186
--- /dev/null
+++ b/dev-lisp/sbcl/files/sbcl-1.0.45-fix_linux-os-c.patch
@@ -0,0 +1,14 @@
+--- a/src/runtime/linux-os.c 2009-05-01 13:30:51.000000000 +0300
++++ b/src/runtime/linux-os.c 2010-03-24 02:30:48.000000000 +0200
+@@ -56,11 +56,7 @@
+ #include "cheneygc-internal.h"
+ #endif
+
+-#ifdef LISP_FEATURE_X86
+-/* Prototype for personality(2). Done inline here since the header file
+- * for this isn't available on old versions of glibc. */
+ int personality (unsigned long);
+-#endif
+
+ size_t os_vm_page_size;
+
diff --git a/dev-lisp/sbcl/metadata.xml b/dev-lisp/sbcl/metadata.xml
index 86ed66baf551..40172d0c0151 100644
--- a/dev-lisp/sbcl/metadata.xml
+++ b/dev-lisp/sbcl/metadata.xml
@@ -1,6 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
+<maintainer>
+ <email>pchrist@gentoo.org</email>
+ <name>Panagiotis Christopoulos</name>
+ <description>primary-maintainer</description>
+</maintainer>
+<maintainer>
+ <email>sionescu+gentoo@cddr.org</email>
+ <name>Stelian Ionescu (fe[nl]ix)</name>
+ <description>second-maintainer</description>
+</maintainer>
<herd>common-lisp</herd>
<longdescription>
Steel Bank Common Lisp is an open source Common Lisp implementation. It
diff --git a/dev-lisp/sbcl/sbcl-1.0.45.ebuild b/dev-lisp/sbcl/sbcl-1.0.45.ebuild
new file mode 100644
index 000000000000..ee445682e4af
--- /dev/null
+++ b/dev-lisp/sbcl/sbcl-1.0.45.ebuild
@@ -0,0 +1,184 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/sbcl-1.0.45.ebuild,v 1.1 2011/02/08 01:54:43 pchrist Exp $
+
+EAPI=3
+inherit multilib eutils flag-o-matic
+
+#same order as http://www.sbcl.org/platform-table.html
+BV_X86=1.0.37
+BV_AMD64=1.0.37
+BV_PPC=1.0.28
+BV_SPARC=1.0.28
+BV_ALPHA=1.0.28
+BV_MIPS=1.0.23
+BV_MIPSEL=1.0.28
+
+DESCRIPTION="Steel Bank Common Lisp (SBCL) is an implementation of ANSI Common Lisp."
+HOMEPAGE="http://sbcl.sourceforge.net/"
+SRC_URI="mirror://sourceforge/sbcl/${P}-source.tar.bz2
+ mirror://gentoo/${P}-fix_build_system.patch.bz2
+ x86? ( mirror://sourceforge/sbcl/${PN}-${BV_X86}-x86-linux-binary.tar.bz2 )
+ amd64? ( mirror://sourceforge/sbcl/${PN}-${BV_AMD64}-x86-64-linux-binary.tar.bz2 )
+ ppc? ( mirror://sourceforge/sbcl/${PN}-${BV_PPC}-powerpc-linux-binary.tar.bz2 )
+ sparc? ( mirror://sourceforge/sbcl/${PN}-${BV_SPARC}-sparc-linux-binary.tar.bz2 )
+ alpha? ( mirror://sourceforge/sbcl/${PN}-${BV_ALPHA}-alpha-linux-binary.tar.bz2 )
+ mips? ( !cobalt? ( mirror://sourceforge/sbcl/${PN}-${BV_MIPS}-mips-linux-binary.tar.bz2 ) )
+ mips? ( cobalt? ( mirror://sourceforge/sbcl/${PN}-${BV_MIPSEL}-mipsel-linux-binary.tar.bz2 ) )"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~sparc ~x86"
+IUSE="ldb source +threads +unicode debug doc cobalt"
+
+DEPEND="doc? ( sys-apps/texinfo >=media-gfx/graphviz-2.26.0 )"
+RDEPEND="elibc_glibc? ( >=sys-libs/glibc-2.3 || ( <sys-libs/glibc-2.6[nptl] >=sys-libs/glibc-2.6 ) )"
+PDEPEND="dev-lisp/gentoo-init"
+
+# Disable warnings about executable stacks, as this won't be fixed soon by upstream
+QA_EXECSTACK="usr/bin/sbcl"
+
+CONFIG="${S}/customize-target-features.lisp"
+ENVD="${T}/50sbcl"
+
+usep() {
+ use ${1} && echo "true" || echo "false"
+}
+
+sbcl_feature() {
+ echo "$( [[ ${1} == "true" ]] && echo "(enable ${2})" || echo "(disable ${2})")" >> "${CONFIG}"
+}
+
+sbcl_apply_features() {
+ cat > "${CONFIG}" <<'EOF'
+(lambda (list)
+ (flet ((enable (x) (pushnew x list))
+ (disable (x) (setf list (remove x list))))
+EOF
+ if use x86 || use amd64; then
+ sbcl_feature "$(usep threads)" ":sb-thread"
+ fi
+ sbcl_feature "$(usep ldb)" ":sb-ldb"
+ sbcl_feature "false" ":sb-test"
+ sbcl_feature "$(usep unicode)" ":sb-unicode"
+ sbcl_feature "$(usep debug)" ":sb-xref-for-internals"
+ cat >> "${CONFIG}" <<'EOF'
+ )
+ list)
+EOF
+ cat "${CONFIG}"
+}
+
+src_unpack() {
+ unpack ${A}
+ mv sbcl-*-linux sbcl-binary
+ cd "${S}"
+}
+
+src_prepare() {
+ epatch "${WORKDIR}/${P}-fix_build_system.patch"
+ epatch "${FILESDIR}/${P}-fix_install_man.patch"
+ epatch "${FILESDIR}/${P}-fix_linux-os-c.patch"
+
+ use source && sed 's%"$(BUILD_ROOT)%$(MODULE).lisp "$(BUILD_ROOT)%' -i contrib/vanilla-module.mk
+
+ # Some shells(such as dash) don't have "time" as builtin
+ # and we don't want to DEPEND on sys-process/time
+ # see bug #338949
+ sed "s,^time ,," -i make.sh
+
+ sed "s,/lib,/$(get_libdir),g" -i install.sh
+ sed "s,/usr/local/lib,/usr/$(get_libdir),g" -i src/runtime/runtime.c # #define SBCL_HOME ...
+
+ find . -type f -name .cvsignore -delete
+}
+
+src_configure() {
+ # customizing SBCL version as per
+ # http://sbcl.cvs.sourceforge.net/sbcl/sbcl/doc/PACKAGING-SBCL.txt?view=markup
+ echo -e ";;; Auto-generated by Gentoo\n\"gentoo-${PR}\"" > branch-version.lisp-expr
+
+ # applying customizations
+ sbcl_apply_features
+}
+
+src_compile() {
+ local bindir="${WORKDIR}"/sbcl-binary
+
+ strip-unsupported-flags ; filter-flags -fomit-frame-pointer
+ append-ldflags -Wl,--no-as-needed # see bug #132992
+
+ # To make the hardened compiler NOT compile with -fPIE -pie
+ if gcc-specs-pie ; then
+ filter-flags -fPIE
+ append-ldflags -nopie
+ fi
+
+ # clear the environment to get rid of non-ASCII strings, see bug 174702
+ # set HOME for paludis
+ env - HOME="${T}" \
+ CC="$(tc-getCC)" AS="$(tc-getAS)" LD="$(tc-getLD)" \
+ CPPFLAGS="${CPPFLAGS}" CFLAGS="${CFLAGS}" ASFLAGS="${ASFLAGS}" LDFLAGS="${LDFLAGS}" \
+ GNUMAKE=make ./make.sh \
+ "sh ${bindir}/run-sbcl.sh --no-sysinit --no-userinit --disable-debugger" \
+ || die "make failed"
+
+ # need to set HOME because libpango(used by graphviz) complains about it
+ if use doc; then
+ env - HOME="${T}" make -C doc/manual info html || die "Cannot build manual"
+ env - HOME="${T}" make -C doc/internals info html || die "Cannot build internal docs"
+ fi
+}
+
+src_test() {
+ ewarn "It is known that some tests fail eg. run-program.impure.lisp."
+ ewarn "Before filing any bug(s), search for older submissions."
+ cd tests && sh run-tests.sh
+}
+
+src_install() {
+ # install system-wide initfile
+ dodir /etc/
+ cat > "${D}"/etc/sbclrc <<EOF
+;;; The following is required if you want source location functions to
+;;; work in SLIME, for example.
+
+(setf (logical-pathname-translations "SYS")
+ '(("SYS:SRC;**;*.*.*" #p"/usr/$(get_libdir)/sbcl/src/**/*.*")
+ ("SYS:CONTRIB;**;*.*.*" #p"/usr/$(get_libdir)/sbcl/**/*.*")))
+
+;;; Setup ASDF
+(load "/etc/gentoo-init.lisp")
+EOF
+
+ # Install documentation
+ unset SBCL_HOME
+ INSTALL_ROOT="${D}/usr" LIB_DIR="/usr/$(get_libdir)" DOC_DIR="${D}/usr/share/doc/${PF}" \
+ sh install.sh || die "install.sh failed"
+
+ # rm empty directories lest paludis complain about this
+ find "${D}" -empty -type d -exec rmdir -v {} +
+
+ if use doc; then
+ dohtml -r doc/manual/
+ doinfo doc/manual/*.info*
+ dohtml -r doc/internals/sbcl-internals
+ doinfo doc/internals/sbcl-internals.info
+ docinto internals-notes && dodoc doc/internals-notes/*
+ else
+ rm -Rv "${D}/usr/share/doc/${PF}"
+ fi
+
+ dodoc BUGS CREDITS INSTALL NEWS OPTIMIZATIONS PRINCIPLES README STYLE TLA TODO
+
+ # install the SBCL source
+ if use source; then
+ ./clean.sh
+ cp -av src "${D}/usr/$(get_libdir)/sbcl/"
+ fi
+
+ # necessary for running newly-saved images
+ echo "SBCL_HOME=/usr/$(get_libdir)/${PN}" > "${ENVD}"
+ echo "SBCL_SOURCE_ROOT=/usr/$(get_libdir)/${PN}/src" >> "${ENVD}"
+ doenvd "${ENVD}"
+}