summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrey Grozin <grozin@gentoo.org>2013-04-20 14:17:21 +0000
committerAndrey Grozin <grozin@gentoo.org>2013-04-20 14:17:21 +0000
commitd313c9aa2050ba1e044eb240f0bf21e0e418021d (patch)
tree3ff72b21c77ba50a6c2b8e66b4400cdb94e5b678 /dev-lisp
parentFix src_configure. (diff)
downloadgentoo-2-d313c9aa2050ba1e044eb240f0bf21e0e418021d.tar.gz
gentoo-2-d313c9aa2050ba1e044eb240f0bf21e0e418021d.tar.bz2
gentoo-2-d313c9aa2050ba1e044eb240f0bf21e0e418021d.zip
Version bump from the lisp overlay (pmasked)
(Portage version: 2.2.0_alpha173/cvs/Linux i686, signed Manifest commit with key 0x3AFFCE974D34BD8C!)
Diffstat (limited to 'dev-lisp')
-rw-r--r--dev-lisp/sbcl/ChangeLog8
-rw-r--r--dev-lisp/sbcl/files/1.1.6-fix-svref.patch59
-rw-r--r--dev-lisp/sbcl/sbcl-1.1.3.ebuild196
-rw-r--r--dev-lisp/sbcl/sbcl-1.1.6-r4.ebuild (renamed from dev-lisp/sbcl/sbcl-1.1.5.ebuild)54
4 files changed, 97 insertions, 220 deletions
diff --git a/dev-lisp/sbcl/ChangeLog b/dev-lisp/sbcl/ChangeLog
index 62a2e3fd83a4..093e85743e00 100644
--- a/dev-lisp/sbcl/ChangeLog
+++ b/dev-lisp/sbcl/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for dev-lisp/sbcl
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/ChangeLog,v 1.187 2013/03/17 15:15:46 hwoarang Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/ChangeLog,v 1.188 2013/04/20 14:17:21 grozin Exp $
+
+*sbcl-1.1.6-r4 (20 Apr 2013)
+
+ 20 Apr 2013; Andrey Grozin <grozin@gentoo.org> -sbcl-1.1.3.ebuild,
+ -sbcl-1.1.5.ebuild, +sbcl-1.1.6-r4.ebuild, +files/1.1.6-fix-svref.patch:
+ Version bump from the lisp overlay (pmasked)
17 Mar 2013; Markos Chandras <hwoarang@gentoo.org> metadata.xml:
Add proxy-maintainers to metadata.xml
diff --git a/dev-lisp/sbcl/files/1.1.6-fix-svref.patch b/dev-lisp/sbcl/files/1.1.6-fix-svref.patch
new file mode 100644
index 000000000000..95861ad7c02c
--- /dev/null
+++ b/dev-lisp/sbcl/files/1.1.6-fix-svref.patch
@@ -0,0 +1,59 @@
+commit 66ee499237be5778b44b0d7b2de396562137228e
+Author: Paul Khuong <pvk@pvk.ca>
+Date: Sat Mar 30 19:22:46 2013 +0100
+
+ Fix a compilation failure on svref of a symbol macro
+
+ Introduced in 0892423b (faster SVREF and (SETF SVREF) compilation)
+
+ Thanks to James M. Lawrence for the quick report, with a reduced
+ test case.
+
+diff --git a/NEWS b/NEWS
+index 0774be8..0357268 100644
+--- a/NEWS
++++ b/NEWS
+@@ -1,4 +1,8 @@
+ ;;;; -*- coding: utf-8; fill-column: 78 -*-
++changes relative to sbcl-1.1.6
++ * bug fix: svref/(setf svref) on symbol macros don't crash the compiler
++ anymore. (Minimal test case provided by James M. Lawrence on sbcl-devel)
++
+ changes in sbcl-1.1.6 relative to sbcl-1.1.5:
+ * enhancement: the continuable error when defknown-ing over extant
+ fndb entries can be ignored by passing :overwrite-fndb-silently t
+diff --git a/src/compiler/array-tran.lisp b/src/compiler/array-tran.lisp
+index a595e63..d70cdb5 100644
+--- a/src/compiler/array-tran.lisp
++++ b/src/compiler/array-tran.lisp
+@@ -1023,7 +1023,7 @@
+ (define-source-transform svref (vector index)
+ (let ((elt-type (or (when (symbolp vector)
+ (let ((var (lexenv-find vector vars)))
+- (when var
++ (when (lambda-var-p var)
+ (type-specifier
+ (array-type-declared-element-type (lambda-var-type var))))))
+ t)))
+@@ -1036,7 +1036,7 @@
+ (define-source-transform %svset (vector index value)
+ (let ((elt-type (or (when (symbolp vector)
+ (let ((var (lexenv-find vector vars)))
+- (when var
++ (when (lambda-var-p var)
+ (type-specifier
+ (array-type-declared-element-type (lambda-var-type var))))))
+ t)))
+diff --git a/tests/compiler.pure.lisp b/tests/compiler.pure.lisp
+index 833c5ee..1a4fc7d 100644
+--- a/tests/compiler.pure.lisp
++++ b/tests/compiler.pure.lisp
+@@ -4378,3 +4378,8 @@
+ (with-test (:name :second-open-coded)
+ (let ((fun (compile nil `(lambda (x) (second x)))))
+ (assert (not (ctu:find-named-callees fun)))))
++
++(with-test (:name :svref-of-symbol-macro)
++ (compile nil `(lambda (x)
++ (symbol-macrolet ((sv x))
++ (values (svref sv 0) (setf (svref sv 0) 99))))))
diff --git a/dev-lisp/sbcl/sbcl-1.1.3.ebuild b/dev-lisp/sbcl/sbcl-1.1.3.ebuild
deleted file mode 100644
index 7f57d59f728f..000000000000
--- a/dev-lisp/sbcl/sbcl-1.1.3.ebuild
+++ /dev/null
@@ -1,196 +0,0 @@
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/sbcl-1.1.3.ebuild,v 1.1 2013/01/08 10:29:40 grozin Exp $
-
-EAPI=3
-inherit multilib eutils flag-o-matic pax-utils
-
-#same order as http://www.sbcl.org/platform-table.html
-BV_X86=1.0.58
-BV_AMD64=1.1.3
-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
- 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 ) )"
-RESTRICT="mirror"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~sparc ~x86"
-IUSE="+asdf 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 ) )
- asdf? ( >=dev-lisp/gentoo-init-1.0 )"
-
-# 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 "${FILESDIR}"/gentoo-fix_install_man.patch
- epatch "${FILESDIR}"/gentoo-fix_linux-os-c.patch
-
- # To make the hardened compiler NOT compile with -fPIE -pie
- if gcc-specs-pie ; then
- einfo "Disabling PIE..."
- epatch "${FILESDIR}"/gentoo-fix_nopie_for_hardened_toolchain.patch
- fi
-
- 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
- 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
-
- if host-is-pax ; then
- # To disable PaX on hardened systems
- pax-mark -C "${bindir}"/src/runtime/sbcl
- pax-mark -mr "${bindir}"/src/runtime/sbcl
-
- # Hack to disable PaX on second GENESIS stage
- sed -i -e '/load/!s/^echo \/\/doing warm.*$/&\npaxctl -C \.\/src\/runtime\/sbcl\npaxctl -mprexs \.\/src\/runtime\/sbcl/' \
- "${S}"/make-target-2.sh || die "Cannot disable PaX on second GENESIS runtime"
- 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 "Unfortunately, it is known that some tests fail eg."
- ewarn "run-program.impure.lisp. This is an issue of the upstream's"
- ewarn "development and not of Gentoo's side. Please, before filing"
- ewarn "any bug(s) search for older submissions. Thank you."
- time ( 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/**/*.*")))
-EOF
- if use asdf; then
- cat >> "${D}"/etc/sbclrc <<EOF
-
-;;; Setup ASDF2
-(load "/etc/common-lisp/gentoo-init.lisp")
-EOF
- fi
-
- # 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}"
-}
diff --git a/dev-lisp/sbcl/sbcl-1.1.5.ebuild b/dev-lisp/sbcl/sbcl-1.1.6-r4.ebuild
index f817dd72b224..838d9a7dec78 100644
--- a/dev-lisp/sbcl/sbcl-1.1.5.ebuild
+++ b/dev-lisp/sbcl/sbcl-1.1.6-r4.ebuild
@@ -1,18 +1,16 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/sbcl-1.1.5.ebuild,v 1.1 2013/03/14 04:53:42 grozin Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/sbcl-1.1.6-r4.ebuild,v 1.1 2013/04/20 14:17:21 grozin Exp $
EAPI=5
inherit multilib eutils flag-o-matic pax-utils
#same order as http://www.sbcl.org/platform-table.html
BV_X86=1.0.58
-BV_AMD64=1.1.5
+BV_AMD64=1.1.6
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/"
@@ -21,19 +19,18 @@ SRC_URI="mirror://sourceforge/sbcl/${P}-source.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 ) )"
-RESTRICT="mirror"
+ alpha? ( mirror://sourceforge/sbcl/${PN}-${BV_ALPHA}-alpha-linux-binary.tar.bz2 )"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~sparc ~x86"
-IUSE="+asdf cobalt debug doc ldb source +threads +unicode"
+IUSE="debug doc source +threads +unicode zlib"
-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 ) )
- asdf? ( >=dev-lisp/gentoo-init-1.0 )"
+CDEPEND=">=dev-lisp/asdf-2.33-r3:="
+DEPEND="${CDEPEND}
+ doc? ( <sys-apps/texinfo-5.0 >=media-gfx/graphviz-2.26.0 )"
+RDEPEND="${CDEPEND}
+ elibc_glibc? ( >=sys-libs/glibc-2.3 || ( <sys-libs/glibc-2.6[nptl] >=sys-libs/glibc-2.6 ) )"
# Disable warnings about executable stacks, as this won't be fixed soon by upstream
QA_EXECSTACK="usr/bin/sbcl"
@@ -41,6 +38,10 @@ QA_EXECSTACK="usr/bin/sbcl"
CONFIG="${S}/customize-target-features.lisp"
ENVD="${T}/50sbcl"
+# Prevent ASDF from using the system libraries
+CL_SOURCE_REGISTRY="(:source-registry :ignore-inherited-configuration)"
+ASDF_OUTPUT_TRANSLATIONS="(:output-translations :ignore-inherited-configuration)"
+
usep() {
use ${1} && echo "true" || echo "false"
}
@@ -58,9 +59,10 @@ EOF
if use x86 || use amd64; then
sbcl_feature "$(usep threads)" ":sb-thread"
fi
- sbcl_feature "$(usep ldb)" ":sb-ldb"
+ sbcl_feature "true" ":sb-ldb"
sbcl_feature "false" ":sb-test"
sbcl_feature "$(usep unicode)" ":sb-unicode"
+ sbcl_feature "$(usep zlib)" ":sb-core-compression"
sbcl_feature "$(usep debug)" ":sb-xref-for-internals"
cat >> "${CONFIG}" <<'EOF'
)
@@ -72,12 +74,13 @@ EOF
src_unpack() {
unpack ${A}
mv sbcl-*-linux sbcl-binary || die
- cd "${S}" || die
+ cd "${S}"
}
src_prepare() {
epatch "${FILESDIR}"/gentoo-fix_install_man.patch
epatch "${FILESDIR}"/gentoo-fix_linux-os-c.patch
+ epatch "${FILESDIR}"/1.1.6-fix-svref.patch
# To make the hardened compiler NOT compile with -fPIE -pie
if gcc-specs-pie ; then
@@ -85,13 +88,16 @@ src_prepare() {
epatch "${FILESDIR}"/gentoo-fix_nopie_for_hardened_toolchain.patch
fi
+ cp /usr/share/common-lisp/source/asdf/build/asdf.lisp contrib/asdf/ || die
+
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
+ # Some shells(such as dash) don't have "time" as builtin
# and we don't want to DEPEND on sys-process/time
sed "s,^time ,," -i make.sh || die
sed "s,/lib,/$(get_libdir),g" -i install.sh || die
- sed "s,/usr/local/lib,/usr/$(get_libdir),g" -i src/runtime/runtime.c || die # #define SBCL_HOME ...
+ # #define SBCL_HOME ...
+ sed "s,/usr/local/lib,/usr/$(get_libdir),g" -i src/runtime/runtime.c || die
find . -type f -name .cvsignore -delete
}
@@ -129,10 +135,16 @@ src_compile() {
"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
+ # 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"
+ env - HOME="${T}" \
+ CL_SOURCE_REGISTRY="(:source-registry :ignore-inherited-configuration)" \
+ ASDF_OUTPUT_TRANSLATIONS="(:output-translations :ignore-inherited-configuration)" \
+ make -C doc/manual info html || die "Cannot build manual"
+ env - HOME="${T}" \
+ CL_SOURCE_REGISTRY="(:source-registry :ignore-inherited-configuration)" \
+ ASDF_OUTPUT_TRANSLATIONS="(:output-translations :ignore-inherited-configuration)" \
+ make -C doc/internals info html || die "Cannot build internal docs"
fi
}
@@ -154,14 +166,10 @@ src_install() {
(setf (logical-pathname-translations "SYS")
'(("SYS:SRC;**;*.*.*" #p"/usr/$(get_libdir)/sbcl/src/**/*.*")
("SYS:CONTRIB;**;*.*.*" #p"/usr/$(get_libdir)/sbcl/**/*.*")))
-EOF
- if use asdf; then
- cat >> "${D}"/etc/sbclrc <<EOF
;;; Setup ASDF2
(load "/etc/common-lisp/gentoo-init.lisp")
EOF
- fi
# Install documentation
unset SBCL_HOME