Gentoo Archives: gentoo-commits

From: Andrey Grozin <grozin@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lisp/sbcl/
Date: Sun, 02 Jan 2022 14:15:15
Message-Id: 1641132885.704b8aeb2494fdce64c0f354393e6d677abaf0da.grozin@gentoo
1 commit: 704b8aeb2494fdce64c0f354393e6d677abaf0da
2 Author: Andrey Grozin <grozin <AT> gentoo <DOT> org>
3 AuthorDate: Sun Jan 2 14:14:45 2022 +0000
4 Commit: Andrey Grozin <grozin <AT> gentoo <DOT> org>
5 CommitDate: Sun Jan 2 14:14:45 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=704b8aeb
7
8 dev-lisp/sbcl: remove old versions
9
10 Package-Manager: Portage-3.0.30, Repoman-3.0.3
11 Signed-off-by: Andrey Grozin <grozin <AT> gentoo.org>
12
13 dev-lisp/sbcl/Manifest | 4 -
14 dev-lisp/sbcl/sbcl-2.1.10.ebuild | 238 ---------------------------------------
15 dev-lisp/sbcl/sbcl-2.1.8.ebuild | 238 ---------------------------------------
16 3 files changed, 480 deletions(-)
17
18 diff --git a/dev-lisp/sbcl/Manifest b/dev-lisp/sbcl/Manifest
19 index 584d7c385a7b..2fcc71cb9717 100644
20 --- a/dev-lisp/sbcl/Manifest
21 +++ b/dev-lisp/sbcl/Manifest
22 @@ -16,11 +16,7 @@ DIST sbcl-1.4.2-arm64-linux-binary.tar.bz2 10578821 BLAKE2B 1cd25c548be0f1b7ec01
23 DIST sbcl-1.4.3-x86-linux-binary.tar.bz2 10227185 BLAKE2B 6d77c4f4177cbdb72fb9bab0da5bd91e0aa8deafffd238818a2551332f0ab246715d9489b5c1156f3481aa7fb79d161a988404620fc09fe86ff927543a1ee678 SHA512 41cd63d61dd7c46370341dce39a362287a23b528bfebe8e5571614aeefdea03d318207d25562e995db9ccedb6c1f50ea4d66627721f0fd9486e99440126e6a38
24 DIST sbcl-1.4.8-x86-64-linux-binary.tar.bz2 10353701 BLAKE2B 5b56f46fbdb87f015ed1fe103b6caaf43d2d424b45e2574e306b3d3cbc3c7bdfa48847a2e6d7d819e6bf4b59fa02ea01f9ce6b023802ae6f91fc7f56e5a260de SHA512 f3cb3c30dec1b7e6ac0c1b67de26192723871f8a8d543a41d7c4d04b0813fd7da1043433237b648a2c23f73169fe38f2ec3a3c2bd412eb4c9d36ed929c40f27d
25 DIST sbcl-1.4.9-source.tar.bz2 6051607 BLAKE2B 8abcaf73233ea1a23d47987b16554636dcf94acfbc7ab731f0730fdb4a8176593fb3ab52d9b25b3dd56753cd984f7e0eddb1585a142eb7ad1aa5e3e03d7b0ca9 SHA512 e0248f460f9737d47653dd520732062d2637813b550df356ecc90aa6d21fbdd74f03182d1e890c09c1da742f7d57b4fbd04a4e6dc36999aca51bb6c2952ac236
26 -DIST sbcl-2.1.10-source.tar.bz2 6680771 BLAKE2B 9d427c2c4330ee9f675cad27e8a37b20f010f900a840dc7e878d0f2d703b7a0f8704b8ac3be1d6e191ffa933338702039e3c3d105160e3c8468c99bcd703989b SHA512 83c4064b0b99e673221abbc5fd8d6c463dd2368dac7438215f0b0f847fab3999f470d15fe5a6ed504983b80d9160771c3ccb1485e4c3c973be03634ca0d7678b
27 -DIST sbcl-2.1.10-x86-64-linux-binary.tar.bz2 10185352 BLAKE2B 48f55807411f4614b40c447081f45597ad8ec720b1903ff57625093c9fa3b915e7f0fa31a7295d5594c5bedd2ed2da84d498df99eaa10e85761cca07c7d30f6d SHA512 557323cf0dfc5bb0a1c4908e5b46371e6f01ad8c05513d03db3e66a4e4ad0ec5bd3c57fed252209dffb8bc2179404f7626a196af19a087187ad6c4f5ba9408bf
28 DIST sbcl-2.1.11-source.tar.bz2 6687529 BLAKE2B 06deb2cc4f55aeb9ddfdf267d541ffbd15d8a5ed068b21d5786888bab973485c9c23250e4bb3980b46e3ba7580c402ff0364447d8104689757deb29cbd81e7c4 SHA512 c1a1c377a45d3968907b14a64a9b8b70fb33e8e7e7ff90820f2da75d4f16e1d4f804818b9d21bf0c438120293dcfe2d2b023e9b0d2e4a5b5842944d9c2c45d74
29 DIST sbcl-2.1.11-x86-64-linux-binary.tar.bz2 10159401 BLAKE2B e40631dd49dea23759c6f8330944c354ca025c11765ee18f64a92faaa64aea05504ba4ff431651ea8403a7c8ac6705364bde826736ec5e1d378f197b3c233867 SHA512 ac3c5cbd8df596c838d61833e431427c80875b2f5379a855d4426cebf5d90fc5210d74b28db9c3fdbef4d315eeaba75fc18fd9f2f129a1e72d90fa1055421d6b
30 -DIST sbcl-2.1.8-source.tar.bz2 6663139 BLAKE2B 3a1bdadfcda284c6f7c909f996bc9f9a5d0a1132a55b68d435d89138b2d144f48848d33f1c38d2b7728711660b59a0ee70e3d76f88f6528dc37e3661c7621f62 SHA512 0e2d839d262cb60b35a20558bb64b5bf4b4158dd8008c1efef74b99e300e4412b20fd9af99633ad5a0cc3c91bbfc34405ce7012d95195517d6b6f425904fb4d3
31 -DIST sbcl-2.1.8-x86-64-linux-binary.tar.bz2 10118495 BLAKE2B 5fd53f4e491018f4abd98ef3026982d80777f8ef38e046078679e452a00b3fddecf65139f69d1c43e21c13e1ef9b061c8d89c09de2454376a0a4e9aea2ec90f0 SHA512 9415290c1cd7d4fcb2f4da689c341af3d52346e25059a118a06fc2dd24f622ed0a7f664adddba3adb2b0ceb07c6a49a3ac9dbacf2e326d5813c44d330a6fe258
32 DIST sbcl-2.2.0-source.tar.bz2 6697729 BLAKE2B de89a3725ab68e7c189b225ee43bda3f53ca457c7c63a12c593e6f44559833cb1c95bda4e66181429a32cff614177a5650f94b45add5a5013c7a80b43608c04d SHA512 0afd424e6b8dbc574e928fbfb1ce264211b94e5bdef35b131a9f672b5051819d6978ea5338863e1321305dc562d8d81ae33c1e1fffdbaf6a60a3fbef0926e99f
33 DIST sbcl-2.2.0-x86-64-linux-binary.tar.bz2 10178679 BLAKE2B 7a38af9f548807852fc602bb2cb4be3d50ab9fef875919f5c38df6fa9a43e80323cd005064c2e373cbb72d8e7e01a1ee4e0732c3ca9b8ee558e6c2f965d4631f SHA512 a148cf90b2b31ecd49a767468355eca166f428d491588ce5bd577da6efa32e0531b92fba1bfbf034b058a9af8baa45842e41ec24411bd3d5766b9cf20206453b
34
35 diff --git a/dev-lisp/sbcl/sbcl-2.1.10.ebuild b/dev-lisp/sbcl/sbcl-2.1.10.ebuild
36 deleted file mode 100644
37 index 47cda449fe43..000000000000
38 --- a/dev-lisp/sbcl/sbcl-2.1.10.ebuild
39 +++ /dev/null
40 @@ -1,238 +0,0 @@
41 -# Copyright 1999-2021 Gentoo Authors
42 -# Distributed under the terms of the GNU General Public License v2
43 -
44 -EAPI=8
45 -
46 -inherit multilib flag-o-matic pax-utils toolchain-funcs
47 -
48 -#same order as http://www.sbcl.org/platform-table.html
49 -BV_X86=1.4.3
50 -BV_AMD64=2.1.10
51 -BV_PPC=1.2.7
52 -BV_SPARC=1.0.28
53 -BV_ALPHA=1.0.28
54 -BV_ARM=1.4.11
55 -BV_ARM64=1.4.2
56 -BV_X64_MACOS=1.2.11
57 -BV_PPC_MACOS=1.0.47
58 -BV_X86_SOLARIS=1.2.7
59 -BV_X64_SOLARIS=1.2.7
60 -BV_SPARC_SOLARIS=1.0.23
61 -
62 -DESCRIPTION="Steel Bank Common Lisp (SBCL) is an implementation of ANSI Common Lisp"
63 -HOMEPAGE="http://sbcl.sourceforge.net/"
64 -SRC_URI="mirror://sourceforge/sbcl/${P}-source.tar.bz2
65 - x86? ( mirror://sourceforge/sbcl/${PN}-${BV_X86}-x86-linux-binary.tar.bz2 )
66 - amd64? ( mirror://sourceforge/sbcl/${PN}-${BV_AMD64}-x86-64-linux-binary.tar.bz2 )
67 - ppc? ( mirror://sourceforge/sbcl/${PN}-${BV_PPC}-powerpc-linux-binary.tar.bz2 )
68 - sparc? ( mirror://sourceforge/sbcl/${PN}-${BV_SPARC}-sparc-linux-binary.tar.bz2 )
69 - alpha? ( mirror://sourceforge/sbcl/${PN}-${BV_ALPHA}-alpha-linux-binary.tar.bz2 )
70 - arm? ( mirror://sourceforge/sbcl/${PN}-${BV_ARM}-armhf-linux-binary.tar.bz2 )
71 - arm64? ( mirror://sourceforge/sbcl/${PN}-${BV_ARM64}-arm64-linux-binary.tar.bz2 )
72 - x64-macos? ( mirror://sourceforge/sbcl/${PN}-${BV_X64_MACOS}-x86-64-darwin-binary.tar.bz2 )
73 - ppc-macos? ( mirror://sourceforge/sbcl/${PN}-${BV_PPC_MACOS}-powerpc-darwin-binary.tar.bz2 )
74 - x86-solaris? ( mirror://sourceforge/sbcl/${PN}-${BV_X86_SOLARIS}-x86-solaris-binary.tar.bz2 )
75 - x64-solaris? ( mirror://sourceforge/sbcl/${PN}-${BV_X64_SOLARIS}-x86-64-solaris-binary.tar.bz2 )
76 - sparc-solaris? ( mirror://sourceforge/sbcl/${PN}-${BV_SPARC_SOLARIS}-sparc-solaris-binary.tar.bz2 )"
77 -
78 -LICENSE="MIT"
79 -SLOT="0/${PV}"
80 -KEYWORDS="~amd64 ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-solaris"
81 -IUSE="debug doc source +threads +unicode zlib"
82 -
83 -CDEPEND=">=dev-lisp/asdf-3.3:="
84 -BDEPEND="${CDEPEND}
85 - doc? ( sys-apps/texinfo >=media-gfx/graphviz-2.26.0 )"
86 -RDEPEND="${CDEPEND}
87 - !prefix? ( elibc_glibc? ( >=sys-libs/glibc-2.6 ) )"
88 -
89 -# Disable warnings about executable stacks, as this won't be fixed soon by upstream
90 -QA_EXECSTACK="usr/bin/sbcl"
91 -
92 -CONFIG="${S}/customize-target-features.lisp"
93 -ENVD="${T}/50sbcl"
94 -
95 -# Prevent ASDF from using the system libraries
96 -CL_SOURCE_REGISTRY="(:source-registry :ignore-inherited-configuration)"
97 -ASDF_OUTPUT_TRANSLATIONS="(:output-translations :ignore-inherited-configuration)"
98 -
99 -usep() {
100 - use ${1} && echo "true" || echo "false"
101 -}
102 -
103 -sbcl_feature() {
104 - echo "$( [[ ${1} == "true" ]] && echo "(enable ${2})" || echo "(disable ${2})")" >> "${CONFIG}"
105 -}
106 -
107 -sbcl_apply_features() {
108 - sed 's/^X//' > "${CONFIG}" <<-'EOF'
109 - (lambda (list)
110 - X (flet ((enable (x) (pushnew x list))
111 - X (disable (x) (setf list (remove x list))))
112 - EOF
113 - if use x86 || use amd64; then
114 - sbcl_feature "$(usep threads)" ":sb-thread"
115 - fi
116 - sbcl_feature "true" ":sb-ldb"
117 - sbcl_feature "false" ":sb-test"
118 - sbcl_feature "$(usep unicode)" ":sb-unicode"
119 - sbcl_feature "$(usep zlib)" ":sb-core-compression"
120 - sbcl_feature "$(usep debug)" ":sb-xref-for-internals"
121 - sed 's/^X//' >> "${CONFIG}" <<-'EOF'
122 - X )
123 - X list)
124 - EOF
125 - cat "${CONFIG}"
126 -}
127 -
128 -src_unpack() {
129 - unpack ${A}
130 - mv sbcl-*-* sbcl-binary || die
131 - cd "${S}"
132 -}
133 -
134 -src_prepare() {
135 - # bug #468482
136 - eapply "${FILESDIR}"/concurrency-test-2.0.1.patch
137 - # bugs #486552, #527666, #517004
138 - eapply "${FILESDIR}"/bsd-sockets-test-2.0.5.patch
139 - # bugs #560276, #561018
140 - eapply "${FILESDIR}"/sb-posix-test-1.2.15.patch
141 - # bug #767742
142 - eapply "${FILESDIR}"/etags-2.1.0.patch
143 -
144 - eapply "${FILESDIR}"/verbose-build-2.0.3.patch
145 -
146 - eapply_user
147 -
148 - # Make sure the *FLAGS variables are sane.
149 - # sbcl needs symbols in resulting binaries, so building with the -s linker flag will fail.
150 - strip-unsupported-flags
151 - filter-flags -fomit-frame-pointer -Wl,-s
152 - filter-ldflags -s
153 -
154 - # original bugs #526194, #620532
155 - # this broke no-pie default builds, c.f. bug #632670
156 - # Pass CFLAGS down by appending our value, to let users override
157 - # the default values.
158 - # Keep passing LDFLAGS down via the LINKFLAGS variable.
159 - sed -e "s@\(CFLAGS += -g .*\)\$@\1 ${CFLAGS}@" \
160 - -e "s@LINKFLAGS += -g\$@LINKFLAGS += ${LDFLAGS}@" \
161 - -i src/runtime/GNUmakefile || die
162 -
163 - sed -e "s@SBCL_PREFIX=\"/usr/local\"@SBCL_PREFIX=\"${EPREFIX}/usr\"@" \
164 - -i make-config.sh || die
165 -
166 - # Use installed ASDF version
167 - cp "${EPREFIX}"/usr/share/common-lisp/source/asdf/build/asdf.lisp contrib/asdf/ || die
168 - # Avoid installation of ASDF info page. See bug #605752
169 - sed '/INFOFILES/s/asdf.info//' -i doc/manual/Makefile || die
170 -
171 - use source && sed 's%"$(BUILD_ROOT)%$(MODULE).lisp "$(BUILD_ROOT)%' -i contrib/vanilla-module.mk
172 -
173 - # Some shells(such as dash) don't have "time" as builtin
174 - # and we don't want to DEPEND on sys-process/time
175 - sed "s,^time ,," -i make.sh || die
176 - sed "s,/lib,/$(get_libdir),g" -i install.sh || die
177 - # #define SBCL_HOME ...
178 - sed "s,/usr/local/lib,${EPREFIX}/usr/$(get_libdir),g" -i src/runtime/runtime.c || die
179 - # change location of /etc/sbclrc ...
180 - sed "s,/etc/sbclrc,${EPREFIX}/etc/sbclrc,g" -i src/code/toplevel.lisp || die
181 -
182 - find . -type f -name .cvsignore -delete
183 -}
184 -
185 -src_configure() {
186 - # customizing SBCL version as per
187 - # http://sbcl.cvs.sourceforge.net/sbcl/sbcl/doc/PACKAGING-SBCL.txt?view=markup
188 - echo -e ";;; Auto-generated by Gentoo\n\"gentoo-${PR}\"" > branch-version.lisp-expr
189 -
190 - # applying customizations
191 - sbcl_apply_features
192 -}
193 -
194 -src_compile() {
195 - local bindir="${WORKDIR}"/sbcl-binary
196 -
197 - # clear the environment to get rid of non-ASCII strings, see bug #174702
198 - # set HOME for paludis
199 - env - HOME="${T}" PATH="${PATH}" \
200 - CC="$(tc-getCC)" AS="$(tc-getAS)" LD="$(tc-getLD)" \
201 - CPPFLAGS="${CPPFLAGS}" CFLAGS="${CFLAGS}" ASFLAGS="${ASFLAGS}" LDFLAGS="${LDFLAGS}" \
202 - GNUMAKE=make ./make.sh \
203 - "sh ${bindir}/run-sbcl.sh --no-sysinit --no-userinit --disable-debugger" \
204 - || die "make failed"
205 -
206 - # need to set HOME because libpango(used by graphviz) complains about it
207 - if use doc; then
208 - env - HOME="${T}" PATH="${PATH}" \
209 - CL_SOURCE_REGISTRY="(:source-registry :ignore-inherited-configuration)" \
210 - ASDF_OUTPUT_TRANSLATIONS="(:output-translations :ignore-inherited-configuration)" \
211 - make -C doc/manual info html || die "Cannot build manual"
212 - env - HOME="${T}" PATH="${PATH}" \
213 - CL_SOURCE_REGISTRY="(:source-registry :ignore-inherited-configuration)" \
214 - ASDF_OUTPUT_TRANSLATIONS="(:output-translations :ignore-inherited-configuration)" \
215 - make -C doc/internals info html || die "Cannot build internal docs"
216 - fi
217 -}
218 -
219 -src_test() {
220 - ewarn "Unfortunately, it is known that some tests fail eg."
221 - ewarn "run-program.impure.lisp. This is an issue of the upstream's"
222 - ewarn "development and not of Gentoo's side. Please, before filing"
223 - ewarn "any bug(s) search for older submissions. Thank you."
224 - time ( cd tests && sh run-tests.sh )
225 -}
226 -
227 -src_install() {
228 - # install system-wide initfile
229 - dodir /etc/
230 - sed 's/^X//' > "${ED}"/etc/sbclrc <<-EOF
231 - ;;; The following is required if you want source location functions to
232 - ;;; work in SLIME, for example.
233 - X
234 - (setf (logical-pathname-translations "SYS")
235 - X '(("SYS:SRC;**;*.*.*" #p"${EPREFIX}/usr/$(get_libdir)/sbcl/src/**/*.*")
236 - X ("SYS:CONTRIB;**;*.*.*" #p"${EPREFIX}/usr/$(get_libdir)/sbcl/**/*.*")))
237 - X
238 - ;;; Setup ASDF2
239 - (load "${EPREFIX}/etc/common-lisp/gentoo-init.lisp")
240 - EOF
241 -
242 - # Install documentation
243 - unset SBCL_HOME
244 - INSTALL_ROOT="${ED}/usr" LIB_DIR="${EPREFIX}/usr/$(get_libdir)" DOC_DIR="${ED}/usr/share/doc/${PF}" \
245 - sh install.sh || die "install.sh failed"
246 -
247 - # bug #517008
248 - pax-mark -mr "${D}"/usr/bin/sbcl
249 -
250 - # rm empty directories lest paludis complain about this
251 - find "${ED}" -empty -type d -exec rmdir -v {} +
252 -
253 - if use doc; then
254 - dodoc -r doc/internals/sbcl-internals
255 -
256 - doinfo doc/manual/*.info*
257 - doinfo doc/internals/sbcl-internals.info
258 -
259 - docinto internals-notes
260 - dodoc doc/internals-notes/*
261 - else
262 - rm -Rv "${ED}/usr/share/doc/${PF}" || die
263 - fi
264 -
265 - # install the SBCL source
266 - if use source; then
267 - ./clean.sh
268 - cp -av src "${ED}/usr/$(get_libdir)/sbcl/" || die
269 - for d in contrib/*/; do
270 - cp -av "$d" "${ED}/usr/$(get_libdir)/sbcl/" || die
271 - done
272 - fi
273 -
274 - # necessary for running newly-saved images
275 - echo "SBCL_HOME=${EPREFIX}/usr/$(get_libdir)/${PN}" > "${ENVD}"
276 - echo "SBCL_SOURCE_ROOT=${EPREFIX}/usr/$(get_libdir)/${PN}/src" >> "${ENVD}"
277 - doenvd "${ENVD}"
278 -}
279
280 diff --git a/dev-lisp/sbcl/sbcl-2.1.8.ebuild b/dev-lisp/sbcl/sbcl-2.1.8.ebuild
281 deleted file mode 100644
282 index 9ee0c49df737..000000000000
283 --- a/dev-lisp/sbcl/sbcl-2.1.8.ebuild
284 +++ /dev/null
285 @@ -1,238 +0,0 @@
286 -# Copyright 1999-2021 Gentoo Authors
287 -# Distributed under the terms of the GNU General Public License v2
288 -
289 -EAPI=6
290 -
291 -inherit multilib flag-o-matic pax-utils toolchain-funcs
292 -
293 -#same order as http://www.sbcl.org/platform-table.html
294 -BV_X86=1.4.3
295 -BV_AMD64=2.1.8
296 -BV_PPC=1.2.7
297 -BV_SPARC=1.0.28
298 -BV_ALPHA=1.0.28
299 -BV_ARM=1.4.11
300 -BV_ARM64=1.4.2
301 -BV_X64_MACOS=1.2.11
302 -BV_PPC_MACOS=1.0.47
303 -BV_X86_SOLARIS=1.2.7
304 -BV_X64_SOLARIS=1.2.7
305 -BV_SPARC_SOLARIS=1.0.23
306 -
307 -DESCRIPTION="Steel Bank Common Lisp (SBCL) is an implementation of ANSI Common Lisp"
308 -HOMEPAGE="http://sbcl.sourceforge.net/"
309 -SRC_URI="mirror://sourceforge/sbcl/${P}-source.tar.bz2
310 - x86? ( mirror://sourceforge/sbcl/${PN}-${BV_X86}-x86-linux-binary.tar.bz2 )
311 - amd64? ( mirror://sourceforge/sbcl/${PN}-${BV_AMD64}-x86-64-linux-binary.tar.bz2 )
312 - ppc? ( mirror://sourceforge/sbcl/${PN}-${BV_PPC}-powerpc-linux-binary.tar.bz2 )
313 - sparc? ( mirror://sourceforge/sbcl/${PN}-${BV_SPARC}-sparc-linux-binary.tar.bz2 )
314 - alpha? ( mirror://sourceforge/sbcl/${PN}-${BV_ALPHA}-alpha-linux-binary.tar.bz2 )
315 - arm? ( mirror://sourceforge/sbcl/${PN}-${BV_ARM}-armhf-linux-binary.tar.bz2 )
316 - arm64? ( mirror://sourceforge/sbcl/${PN}-${BV_ARM64}-arm64-linux-binary.tar.bz2 )
317 - x64-macos? ( mirror://sourceforge/sbcl/${PN}-${BV_X64_MACOS}-x86-64-darwin-binary.tar.bz2 )
318 - ppc-macos? ( mirror://sourceforge/sbcl/${PN}-${BV_PPC_MACOS}-powerpc-darwin-binary.tar.bz2 )
319 - x86-solaris? ( mirror://sourceforge/sbcl/${PN}-${BV_X86_SOLARIS}-x86-solaris-binary.tar.bz2 )
320 - x64-solaris? ( mirror://sourceforge/sbcl/${PN}-${BV_X64_SOLARIS}-x86-64-solaris-binary.tar.bz2 )
321 - sparc-solaris? ( mirror://sourceforge/sbcl/${PN}-${BV_SPARC_SOLARIS}-sparc-solaris-binary.tar.bz2 )"
322 -
323 -LICENSE="MIT"
324 -SLOT="0/${PV}"
325 -KEYWORDS="~amd64 ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-solaris"
326 -IUSE="debug doc source +threads +unicode zlib"
327 -
328 -CDEPEND=">=dev-lisp/asdf-3.3:="
329 -DEPEND="${CDEPEND}
330 - doc? ( sys-apps/texinfo >=media-gfx/graphviz-2.26.0 )"
331 -RDEPEND="${CDEPEND}
332 - !prefix? ( elibc_glibc? ( >=sys-libs/glibc-2.6 ) )"
333 -
334 -# Disable warnings about executable stacks, as this won't be fixed soon by upstream
335 -QA_EXECSTACK="usr/bin/sbcl"
336 -
337 -CONFIG="${S}/customize-target-features.lisp"
338 -ENVD="${T}/50sbcl"
339 -
340 -# Prevent ASDF from using the system libraries
341 -CL_SOURCE_REGISTRY="(:source-registry :ignore-inherited-configuration)"
342 -ASDF_OUTPUT_TRANSLATIONS="(:output-translations :ignore-inherited-configuration)"
343 -
344 -usep() {
345 - use ${1} && echo "true" || echo "false"
346 -}
347 -
348 -sbcl_feature() {
349 - echo "$( [[ ${1} == "true" ]] && echo "(enable ${2})" || echo "(disable ${2})")" >> "${CONFIG}"
350 -}
351 -
352 -sbcl_apply_features() {
353 - sed 's/^X//' > "${CONFIG}" <<-'EOF'
354 - (lambda (list)
355 - X (flet ((enable (x) (pushnew x list))
356 - X (disable (x) (setf list (remove x list))))
357 - EOF
358 - if use x86 || use amd64; then
359 - sbcl_feature "$(usep threads)" ":sb-thread"
360 - fi
361 - sbcl_feature "true" ":sb-ldb"
362 - sbcl_feature "false" ":sb-test"
363 - sbcl_feature "$(usep unicode)" ":sb-unicode"
364 - sbcl_feature "$(usep zlib)" ":sb-core-compression"
365 - sbcl_feature "$(usep debug)" ":sb-xref-for-internals"
366 - sed 's/^X//' >> "${CONFIG}" <<-'EOF'
367 - X )
368 - X list)
369 - EOF
370 - cat "${CONFIG}"
371 -}
372 -
373 -src_unpack() {
374 - unpack ${A}
375 - mv sbcl-*-* sbcl-binary || die
376 - cd "${S}"
377 -}
378 -
379 -src_prepare() {
380 - # bug #468482
381 - eapply "${FILESDIR}"/concurrency-test-2.0.1.patch
382 - # bugs #486552, #527666, #517004
383 - eapply "${FILESDIR}"/bsd-sockets-test-2.0.5.patch
384 - # bugs #560276, #561018
385 - eapply "${FILESDIR}"/sb-posix-test-1.2.15.patch
386 - # bug #767742
387 - eapply "${FILESDIR}"/etags-2.1.0.patch
388 -
389 - eapply "${FILESDIR}"/verbose-build-2.0.3.patch
390 -
391 - eapply_user
392 -
393 - # Make sure the *FLAGS variables are sane.
394 - # sbcl needs symbols in resulting binaries, so building with the -s linker flag will fail.
395 - strip-unsupported-flags
396 - filter-flags -fomit-frame-pointer -Wl,-s
397 - filter-ldflags -s
398 -
399 - # original bugs #526194, #620532
400 - # this broke no-pie default builds, c.f. bug #632670
401 - # Pass CFLAGS down by appending our value, to let users override
402 - # the default values.
403 - # Keep passing LDFLAGS down via the LINKFLAGS variable.
404 - sed -e "s@\(CFLAGS += -g .*\)\$@\1 ${CFLAGS}@" \
405 - -e "s@LINKFLAGS += -g\$@LINKFLAGS += ${LDFLAGS}@" \
406 - -i src/runtime/GNUmakefile || die
407 -
408 - sed -e "s@SBCL_PREFIX=\"/usr/local\"@SBCL_PREFIX=\"${EPREFIX}/usr\"@" \
409 - -i make-config.sh || die
410 -
411 - # Use installed ASDF version
412 - cp "${EPREFIX}"/usr/share/common-lisp/source/asdf/build/asdf.lisp contrib/asdf/ || die
413 - # Avoid installation of ASDF info page. See bug #605752
414 - sed '/INFOFILES/s/asdf.info//' -i doc/manual/Makefile || die
415 -
416 - use source && sed 's%"$(BUILD_ROOT)%$(MODULE).lisp "$(BUILD_ROOT)%' -i contrib/vanilla-module.mk
417 -
418 - # Some shells(such as dash) don't have "time" as builtin
419 - # and we don't want to DEPEND on sys-process/time
420 - sed "s,^time ,," -i make.sh || die
421 - sed "s,/lib,/$(get_libdir),g" -i install.sh || die
422 - # #define SBCL_HOME ...
423 - sed "s,/usr/local/lib,${EPREFIX}/usr/$(get_libdir),g" -i src/runtime/runtime.c || die
424 - # change location of /etc/sbclrc ...
425 - sed "s,/etc/sbclrc,${EPREFIX}/etc/sbclrc,g" -i src/code/toplevel.lisp || die
426 -
427 - find . -type f -name .cvsignore -delete
428 -}
429 -
430 -src_configure() {
431 - # customizing SBCL version as per
432 - # http://sbcl.cvs.sourceforge.net/sbcl/sbcl/doc/PACKAGING-SBCL.txt?view=markup
433 - echo -e ";;; Auto-generated by Gentoo\n\"gentoo-${PR}\"" > branch-version.lisp-expr
434 -
435 - # applying customizations
436 - sbcl_apply_features
437 -}
438 -
439 -src_compile() {
440 - local bindir="${WORKDIR}"/sbcl-binary
441 -
442 - # clear the environment to get rid of non-ASCII strings, see bug #174702
443 - # set HOME for paludis
444 - env - HOME="${T}" PATH="${PATH}" \
445 - CC="$(tc-getCC)" AS="$(tc-getAS)" LD="$(tc-getLD)" \
446 - CPPFLAGS="${CPPFLAGS}" CFLAGS="${CFLAGS}" ASFLAGS="${ASFLAGS}" LDFLAGS="${LDFLAGS}" \
447 - GNUMAKE=make ./make.sh \
448 - "sh ${bindir}/run-sbcl.sh --no-sysinit --no-userinit --disable-debugger" \
449 - || die "make failed"
450 -
451 - # need to set HOME because libpango(used by graphviz) complains about it
452 - if use doc; then
453 - env - HOME="${T}" PATH="${PATH}" \
454 - CL_SOURCE_REGISTRY="(:source-registry :ignore-inherited-configuration)" \
455 - ASDF_OUTPUT_TRANSLATIONS="(:output-translations :ignore-inherited-configuration)" \
456 - make -C doc/manual info html || die "Cannot build manual"
457 - env - HOME="${T}" PATH="${PATH}" \
458 - CL_SOURCE_REGISTRY="(:source-registry :ignore-inherited-configuration)" \
459 - ASDF_OUTPUT_TRANSLATIONS="(:output-translations :ignore-inherited-configuration)" \
460 - make -C doc/internals info html || die "Cannot build internal docs"
461 - fi
462 -}
463 -
464 -src_test() {
465 - ewarn "Unfortunately, it is known that some tests fail eg."
466 - ewarn "run-program.impure.lisp. This is an issue of the upstream's"
467 - ewarn "development and not of Gentoo's side. Please, before filing"
468 - ewarn "any bug(s) search for older submissions. Thank you."
469 - time ( cd tests && sh run-tests.sh )
470 -}
471 -
472 -src_install() {
473 - # install system-wide initfile
474 - dodir /etc/
475 - sed 's/^X//' > "${ED}"/etc/sbclrc <<-EOF
476 - ;;; The following is required if you want source location functions to
477 - ;;; work in SLIME, for example.
478 - X
479 - (setf (logical-pathname-translations "SYS")
480 - X '(("SYS:SRC;**;*.*.*" #p"${EPREFIX}/usr/$(get_libdir)/sbcl/src/**/*.*")
481 - X ("SYS:CONTRIB;**;*.*.*" #p"${EPREFIX}/usr/$(get_libdir)/sbcl/**/*.*")))
482 - X
483 - ;;; Setup ASDF2
484 - (load "${EPREFIX}/etc/common-lisp/gentoo-init.lisp")
485 - EOF
486 -
487 - # Install documentation
488 - unset SBCL_HOME
489 - INSTALL_ROOT="${ED}/usr" LIB_DIR="${EPREFIX}/usr/$(get_libdir)" DOC_DIR="${ED}/usr/share/doc/${PF}" \
490 - sh install.sh || die "install.sh failed"
491 -
492 - # bug #517008
493 - pax-mark -mr "${D}"/usr/bin/sbcl
494 -
495 - # rm empty directories lest paludis complain about this
496 - find "${ED}" -empty -type d -exec rmdir -v {} +
497 -
498 - if use doc; then
499 - dodoc -r doc/internals/sbcl-internals
500 -
501 - doinfo doc/manual/*.info*
502 - doinfo doc/internals/sbcl-internals.info
503 -
504 - docinto internals-notes
505 - dodoc doc/internals-notes/*
506 - else
507 - rm -Rv "${ED}/usr/share/doc/${PF}" || die
508 - fi
509 -
510 - # install the SBCL source
511 - if use source; then
512 - ./clean.sh
513 - cp -av src "${ED}/usr/$(get_libdir)/sbcl/" || die
514 - for d in contrib/*/; do
515 - cp -av "$d" "${ED}/usr/$(get_libdir)/sbcl/" || die
516 - done
517 - fi
518 -
519 - # necessary for running newly-saved images
520 - echo "SBCL_HOME=${EPREFIX}/usr/$(get_libdir)/${PN}" > "${ENVD}"
521 - echo "SBCL_SOURCE_ROOT=${EPREFIX}/usr/$(get_libdir)/${PN}/src" >> "${ENVD}"
522 - doenvd "${ENVD}"
523 -}