Gentoo Archives: gentoo-commits

From: "Panagiotis Christopoulos (pchrist)" <pchrist@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in dev-lisp/sbcl: ChangeLog sbcl-1.0.19.ebuild
Date: Wed, 30 Jul 2008 16:19:10
Message-Id: E1KOEOJ-00039N-7t@stork.gentoo.org
1 pchrist 08/07/30 16:19:07
2
3 Modified: ChangeLog
4 Added: sbcl-1.0.19.ebuild
5 Log:
6 bump to version 1.0.19
7 (Portage version: 2.2_rc1/cvs/Linux 2.6.25-gentoo-r4 i686)
8
9 Revision Changes Path
10 1.146 dev-lisp/sbcl/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lisp/sbcl/ChangeLog?rev=1.146&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lisp/sbcl/ChangeLog?rev=1.146&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lisp/sbcl/ChangeLog?r1=1.145&r2=1.146
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/ChangeLog,v
19 retrieving revision 1.145
20 retrieving revision 1.146
21 diff -u -r1.145 -r1.146
22 --- ChangeLog 28 Jul 2008 19:14:12 -0000 1.145
23 +++ ChangeLog 30 Jul 2008 16:19:06 -0000 1.146
24 @@ -1,6 +1,12 @@
25 # ChangeLog for dev-lisp/sbcl
26 # Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/ChangeLog,v 1.145 2008/07/28 19:14:12 pchrist Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/dev-lisp/sbcl/ChangeLog,v 1.146 2008/07/30 16:19:06 pchrist Exp $
29 +
30 +*sbcl-1.0.19 (30 Jul 2008)
31 +
32 + 30 Jul 2008; Panagiotis Christopoulos <pchrist@g.o>
33 + +sbcl-1.0.19.ebuild:
34 + bump to version 1.0.19
35
36 28 Jul 2008; Panagiotis Christopoulos <pchrist@g.o> metadata.xml:
37 Update metadata.xml to include USE flag descriptions. Entries taken from
38
39
40
41 1.1 dev-lisp/sbcl/sbcl-1.0.19.ebuild
42
43 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lisp/sbcl/sbcl-1.0.19.ebuild?rev=1.1&view=markup
44 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lisp/sbcl/sbcl-1.0.19.ebuild?rev=1.1&content-type=text/plain
45
46 Index: sbcl-1.0.19.ebuild
47 ===================================================================
48 # Copyright 1999-2008 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.19.ebuild,v 1.1 2008/07/30 16:19:06 pchrist 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.15
56 BV_AMD64=1.0.15
57 BV_PPC=1.0
58 BV_SPARC=0.9.17
59 BV_ALPHA=0.9.12
60 BV_MIPS=1.0.17
61 BV_MIPSEL=1.0.17
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 cobalt"
83
84 DEPEND="doc? ( sys-apps/texinfo media-gfx/graphviz )"
85
86 PDEPEND="dev-lisp/gentoo-init"
87
88 PROVIDE="virtual/commonlisp"
89
90 pkg_setup() {
91 if built_with_use sys-devel/gcc hardened && gcc-config -c | grep -qv vanilla; then
92 eerror "So-called \"hardened\" compiler features are incompatible with SBCL. You"
93 eerror "must use gcc-config to select a profile with non-hardened features"
94 eerror "(the \"vanilla\" profile) and \"source /etc/profile\" before continuing."
95 die
96 fi
97 if (use x86 || use amd64) && has_version "<sys-libs/glibc-2.6" \
98 && ! built_with_use sys-libs/glibc nptl; then
99 eerror "Building SBCL without NPTL support on at least x86 and amd64"
100 eerror "architectures is not a supported configuration in Gentoo. Please"
101 eerror "refer to Bug #119016 for more information."
102 die
103 fi
104 if use doc && ! built_with_use media-gfx/graphviz png; then
105 eerror "media-gfx/graphviz has to be built with png support."
106 die "Missing png USE-flag for media-gfx/graphviz"
107 fi
108 }
109
110 CONFIG="${S}/customize-target-features.lisp"
111 ENVD="${T}/50sbcl"
112
113 usep() {
114 use ${1} && echo "true" || echo "false"
115 }
116
117 sbcl_feature() {
118 echo "$( [[ ${1} == "true" ]] && echo "(enable ${2})" || echo "(disable ${2})")" >> "${CONFIG}"
119 }
120
121 sbcl_apply_features() {
122 cat > "${CONFIG}" <<'EOF'
123 (lambda (list)
124 (flet ((enable (x) (pushnew x list))
125 (disable (x) (setf list (remove x list))))
126 EOF
127 if use x86 || use amd64; then
128 sbcl_feature "$(usep threads)" ":sb-thread"
129 fi
130 sbcl_feature "$(usep ldb)" ":sb-ldb"
131 sbcl_feature "false" ":sb-test"
132 sbcl_feature "$(usep unicode)" ":sb-unicode"
133 cat >> "${CONFIG}" <<'EOF'
134 )
135 list)
136 EOF
137 cat "${CONFIG}"
138 }
139
140 src_unpack() {
141 unpack ${A}
142 mv sbcl-*-linux sbcl-binary
143 cd "${S}"
144
145 # epatch "${FILESDIR}/disable-tests-gentoo-${PV}.patch"
146 use source && sed 's%"$(BUILD_ROOT)%$(MODULE).lisp "$(BUILD_ROOT)%' -i contrib/vanilla-module.mk
147
148 sed "s,/lib,/$(get_libdir),g" -i "${S}/install.sh"
149 sed "s,/usr/local/lib,/usr/$(get_libdir),g" -i "${S}/src/runtime/runtime.c" # #define SBCL_HOME ...
150
151 # customizing SBCL version as per
152 # http://sbcl.cvs.sourceforge.net/sbcl/sbcl/doc/PACKAGING-SBCL.txt?view=markup
153 echo -e ";;; Auto-generated by Gentoo\n\"${PVR}-gentoo\"" > "${S}/version.lisp-expr"
154
155 # applying customizations
156 sbcl_apply_features
157
158 find "${S}" -type f -name .cvsignore -print0 | xargs -0 rm -f
159 find "${S}" -depth -type d -name CVS -or -name .git -print0 | xargs -0 rm -rf
160 find "${S}" -type f -name \*.c -print0 | xargs -0 chmod 644
161 }
162
163 src_compile() {
164 local bindir="${WORKDIR}"/sbcl-binary
165
166 filter-ldflags -Wl,--as-needed --as-needed # see Bug #132992
167
168 # clear the environment to get rid of non-ASCII strings, see bug 174702
169 # set HOME for paludis
170 env - HOME="${T}" \
171 PATH="${bindir}/src/runtime:${PATH}" SBCL_HOME="${bindir}/output" GNUMAKE=make ./make.sh \
172 "sbcl --no-sysinit --no-userinit --disable-debugger --core ${bindir}/output/sbcl.core" \
173 || die "make failed"
174
175 # need to set HOME because libpango(used by graphviz) complains about it
176 if use doc; then
177 env - HOME="${T}" make -C doc/manual info html || die "Cannot build manual"
178 env - HOME="${T}" make -C doc/internals html || die "Cannot build internal docs"
179 fi
180 }
181
182 src_test() {
183 # FILES="exhaust.impure.lisp"
184 cd tests
185 sh run-tests.sh
186 # sh run-tests.sh ${FILES}
187 # sh run-tests.sh --break-on-failure ${FILES}
188 }
189
190 src_install() {
191 # install system-wide initfile
192 dodir /etc/
193 cat > "${D}"/etc/sbclrc <<EOF
194 ;;; The following is required if you want source location functions to
195 ;;; work in SLIME, for example.
196
197 (setf (logical-pathname-translations "SYS")
198 '(("SYS:SRC;**;*.*.*" #p"/usr/$(get_libdir)/sbcl/src/**/*.*")
199 ("SYS:CONTRIB;**;*.*.*" #p"/usr/$(get_libdir)/sbcl/**/*.*")))
200
201 ;;; Setup ASDF
202 (load "/etc/gentoo-init.lisp")
203 EOF
204
205 # Install documentation
206 dodir /usr/share/man
207 dodir /usr/share/doc/${PF}
208 unset SBCL_HOME
209 INSTALL_ROOT="${D}"/usr DOC_DIR="${D}"/usr/share/doc/${PF} sh install.sh || die "install.sh failed"
210
211 doman doc/sbcl-asdf-install.1
212
213 dodoc BUGS CREDITS INSTALL NEWS OPTIMIZATIONS PRINCIPLES README STYLE SUPPORT TLA TODO
214
215 if use doc; then
216 dohtml doc/html/*
217 doinfo "${S}"/doc/manual/*.info*
218 dohtml -r "${S}"/doc/internals/sbcl-internals
219 fi
220
221 # install the SBCL source
222 if use source; then
223 cp -pPR "${S}"/src "${D}/usr/$(get_libdir)"/sbcl
224 find "${D}/usr/$(get_libdir)/sbcl/src" -type f -name '*.fasl' -print0 | xargs -0 rm -f
225 fi
226
227 # necessary for running newly-saved images
228 echo "SBCL_HOME=/usr/$(get_libdir)/${PN}" > "${ENVD}"
229 echo "SBCL_SOURCE_ROOT=/usr/$(get_libdir)/${PN}/src" >> "${ENVD}"
230 doenvd "${ENVD}"
231
232 impl-save-timestamp-hack sbcl
233 }
234
235 pkg_postinst() {
236 standard-impl-postinst sbcl
237 }
238
239 pkg_postrm() {
240 standard-impl-postrm sbcl /usr/bin/sbcl
241 }