Gentoo Archives: gentoo-commits

From: "Marijn Schouten (hkbst)" <hkbst@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in dev-lisp/sbcl: ChangeLog sbcl-1.0.12.ebuild
Date: Mon, 26 Nov 2007 15:48:23
Message-Id: E1IwgC1-0005rQ-A9@stork.gentoo.org
1 hkbst 07/11/26 15:48:17
2
3 Modified: ChangeLog
4 Added: sbcl-1.0.12.ebuild
5 Log:
6 bump, add gentoo-init dep and make it load so slime will work with less self-configuration
7 (Portage version: 2.1.4_rc3)
8
9 Revision Changes Path
10 1.134 dev-lisp/sbcl/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lisp/sbcl/ChangeLog?rev=1.134&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lisp/sbcl/ChangeLog?rev=1.134&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lisp/sbcl/ChangeLog?r1=1.133&r2=1.134
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/ChangeLog,v
19 retrieving revision 1.133
20 retrieving revision 1.134
21 diff -u -r1.133 -r1.134
22 --- ChangeLog 2 Nov 2007 19:49:11 -0000 1.133
23 +++ ChangeLog 26 Nov 2007 15:48:16 -0000 1.134
24 @@ -1,6 +1,12 @@
25 # ChangeLog for dev-lisp/sbcl
26 # Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/ChangeLog,v 1.133 2007/11/02 19:49:11 beandog Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/ChangeLog,v 1.134 2007/11/26 15:48:16 hkbst Exp $
29 +
30 +*sbcl-1.0.12 (26 Nov 2007)
31 +
32 + 26 Nov 2007; Marijn Schouten <hkBst@g.o> +sbcl-1.0.12.ebuild:
33 + bump, add gentoo-init dep and make it load so slime will work with less
34 + self-configuration
35
36 02 Nov 2007; Steve Dibb <beandog@g.o> sbcl-1.0.9.ebuild:
37 amd64 stable, bug 194519
38
39
40
41 1.1 dev-lisp/sbcl/sbcl-1.0.12.ebuild
42
43 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lisp/sbcl/sbcl-1.0.12.ebuild?rev=1.1&view=markup
44 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lisp/sbcl/sbcl-1.0.12.ebuild?rev=1.1&content-type=text/plain
45
46 Index: sbcl-1.0.12.ebuild
47 ===================================================================
48 # Copyright 1999-2007 Gentoo Foundation
49 # Distributed under the terms of the GNU General Public License v2
50 # $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/sbcl-1.0.12.ebuild,v 1.1 2007/11/26 15:48:16 hkbst Exp $
51
52 inherit common-lisp-common-3 eutils flag-o-matic
53
54 #same order as http://www.sbcl.org/platform-table.html
55 BV_X86=1.0.10
56 BV_AMD64=1.0.10
57 BV_PPC=1.0
58 BV_SPARC=0.9.17
59 BV_ALPHA=0.9.12
60 BV_MIPS=0.9.12
61 BV_MIPSEL=0.9.12
62
63 DESCRIPTION="Steel Bank Common Lisp (SBCL) is an implementation of ANSI Common Lisp."
64 HOMEPAGE="http://sbcl.sourceforge.net/"
65 SRC_URI="mirror://sourceforge/sbcl/${P}-source.tar.bz2
66 x86? ( mirror://sourceforge/sbcl/${PN}-${BV_X86}-x86-linux-binary.tar.bz2 )
67 amd64? ( mirror://sourceforge/sbcl/${PN}-${BV_AMD64}-x86-64-linux-binary.tar.bz2 )
68 ppc? ( mirror://sourceforge/sbcl/${PN}-${BV_PPC}-powerpc-linux-binary.tar.bz2 )
69 sparc? ( mirror://sourceforge/sbcl/${PN}-${BV_SPARC}-sparc-linux-binary.tar.bz2 )
70 alpha? ( mirror://sourceforge/sbcl/${PN}-${BV_ALPHA}-alpha-linux-binary.tar.bz2 )
71 mips? ( !cobalt? ( mirror://sourceforge/sbcl/${PN}-${BV_MIPS}-mips-linux-binary.tar.bz2 ) )
72 mips? ( cobalt? ( mirror://sourceforge/sbcl/${PN}-${BV_MIPSEL}-mipsel-linux-binary.tar.bz2 ) )"
73
74 # SRC_URI is part of the metadata cache; it's evaluated contents must be independent of the system that creates the metadata cache.
75 # ILLEGAL: mips? ( mirror://sourceforge/sbcl/${PN}-${BV_MIPS}-$([[$(tc-endian) = big]] && echo mips || echo mipsel)-linux-binary.tar.bz2 )
76
77 LICENSE="MIT"
78 SLOT="0"
79
80 KEYWORDS="-* ~amd64 ~ppc ~sparc ~x86"
81
82 IUSE="ldb source threads unicode doc"
83
84 DEPEND="dev-lisp/gentoo-init
85 doc? ( sys-apps/texinfo media-gfx/graphviz )"
86
87 PROVIDE="virtual/commonlisp"
88
89 pkg_setup() {
90 if built_with_use sys-devel/gcc hardened && gcc-config -c | grep -qv vanilla; then
91 eerror "So-called \"hardened\" compiler features are incompatible with SBCL. You"
92 eerror "must use gcc-config to select a profile with non-hardened features"
93 eerror "(the \"vanilla\" profile) and \"source /etc/profile\" before continuing."
94 die
95 fi
96 if (use x86 || use amd64) && has_version "<sys-libs/glibc-2.6" \
97 && ! built_with_use sys-libs/glibc nptl; then
98 eerror "Building SBCL without NPTL support on at least x86 and amd64"
99 eerror "architectures is not a supported configuration in Gentoo. Please"
100 eerror "refer to Bug #119016 for more information."
101 die
102 fi
103 }
104
105 CONFIG="${S}/customize-target-features.lisp"
106 ENVD="${T}/50sbcl"
107
108 usep() {
109 use ${1} && echo "true" || echo "false"
110 }
111
112 sbcl_feature() {
113 echo "$( [[ $1 == "true" ]] && echo "(enable $2)" || echo "(disable $2)")" >> "${CONFIG}"
114 # if [[ $1 == "true" ]]; then echo "(enable $2)" >> "${CONFIG}"; fi
115 # if [[ $1 == "false" ]]; then echo "(disable $2)" >> "${CONFIG}"; fi
116 }
117
118 sbcl_apply_features() {
119 cat > "${CONFIG}" <<'EOF'
120 (lambda (list)
121 (flet ((enable (x) (pushnew x list))
122 (disable (x) (setf list (remove x list))))
123 EOF
124 if use x86 || use amd64; then
125 sbcl_feature "$(usep threads)" ":sb-thread"
126 fi
127 sbcl_feature "$(usep ldb)" ":sb-ldb"
128 sbcl_feature "false" ":sb-test"
129 sbcl_feature "$(usep unicode)" ":sb-unicode"
130 cat >> "${CONFIG}" <<'EOF'
131 )
132 list)
133 EOF
134 cat "${CONFIG}"
135 }
136
137 src_unpack() {
138 unpack ${A}
139 mv sbcl-*-linux sbcl-binary
140 cd "${S}"
141
142 # epatch "${FILESDIR}/disable-tests-gentoo-${PV}.patch"
143 use source && sed 's%"$(BUILD_ROOT)%$(MODULE).lisp "$(BUILD_ROOT)%' -i contrib/vanilla-module.mk
144
145 sed "s,/lib,/$(get_libdir),g" -i "${S}/install.sh"
146 sed "s,/usr/local/lib,/usr/$(get_libdir),g" -i "${S}/src/runtime/runtime.c" # #define SBCL_HOME ...
147
148 # customizing SBCL version as per
149 # http://sbcl.cvs.sourceforge.net/sbcl/sbcl/doc/PACKAGING-SBCL.txt?view=markup
150 echo -e ";;; Auto-generated by Gentoo\n\"${PVR}-gentoo\"" > "${S}/version.lisp-expr"
151
152 # applying customizations
153 sbcl_apply_features
154
155 find "${S}" -type f -name .cvsignore -print0 | xargs -0 rm -f
156 find "${S}" -depth -type d -name CVS -or -name .git -print0 | xargs -0 rm -rf
157 find "${S}" -type f -name \*.c -print0 | xargs -0 chmod 644
158 }
159
160 src_compile() {
161 local bindir="${WORKDIR}"/sbcl-binary
162
163 filter-ldflags -Wl,--as-needed --as-needed # see Bug #132992
164
165 # clear the environment to get rid of non-ASCII strings, see bug 174702
166 # set HOME for paludis
167 env - HOME="${T}" \
168 PATH="${bindir}/src/runtime:${PATH}" SBCL_HOME="${bindir}/output" GNUMAKE=make ./make.sh \
169 "sbcl --sysinit /dev/null --userinit /dev/null --disable-debugger --core ${bindir}/output/sbcl.core" \
170 || die "make failed"
171
172 # need to set HOME because libpango(used by graphviz) complains about it
173 if use doc; then
174 env - HOME="${T}" make -C doc/manual info html || die "Cannot build manual"
175 env - HOME="${T}" make -C doc/internals html || die "Cannot build internal docs"
176 fi
177 }
178
179 src_test() {
180 # FILES="exhaust.impure.lisp"
181 cd tests
182 sh run-tests.sh
183 # sh run-tests.sh ${FILES}
184 # sh run-tests.sh --break-on-failure ${FILES}
185 }
186
187 src_install() {
188 # install system-wide initfile
189 dodir /etc/
190 cat > "${D}"/etc/sbclrc <<EOF
191 ;;; The following is required if you want source location functions to
192 ;;; work in SLIME, for example.
193
194 (setf (logical-pathname-translations "SYS")
195 '(("SYS:SRC;**;*.*.*" #p"/usr/$(get_libdir)/sbcl/src/**/*.*")
196 ("SYS:CONTRIB;**;*.*.*" #p"/usr/$(get_libdir)/sbcl/**/*.*")))
197
198 ;;; Setup ASDF
199 (load "/etc/gentoo-init.lisp")
200 EOF
201
202 # Install documentation
203 dodir /usr/share/man
204 dodir /usr/share/doc/${PF}
205 unset SBCL_HOME
206 INSTALL_ROOT="${D}"/usr DOC_DIR="${D}"/usr/share/doc/${PF} sh install.sh || die "install.sh failed"
207
208 doman doc/sbcl-asdf-install.1
209
210 dodoc BUGS CREDITS INSTALL NEWS OPTIMIZATIONS PRINCIPLES README STYLE SUPPORT TLA TODO
211
212 if use doc; then
213 dohtml doc/html/*
214 doinfo "${S}"/doc/manual/*.info*
215 dohtml -r "${S}"/doc/internals/sbcl-internals
216 fi
217
218 # install the SBCL source
219 if use source; then
220 cp -pPR "${S}"/src "${D}/usr/$(get_libdir)"/sbcl
221 find "${D}/usr/$(get_libdir)/sbcl/src" -type f -name '*.fasl' -print0 | xargs -0 rm -f
222 fi
223
224 # necessary for running newly-saved images
225 echo "SBCL_HOME=/usr/$(get_libdir)/${PN}" > "${ENVD}"
226 echo "SBCL_SOURCE_ROOT=/usr/$(get_libdir)/${PN}/src" >> "${ENVD}"
227 doenvd "${ENVD}"
228
229 impl-save-timestamp-hack sbcl
230 }
231
232 pkg_postinst() {
233 standard-impl-postinst sbcl
234 }
235
236 pkg_postrm() {
237 standard-impl-postrm sbcl /usr/bin/sbcl
238 }
239
240
241
242 --
243 gentoo-commits@g.o mailing list