Gentoo Archives: gentoo-commits

From: "Keri Harris (keri)" <keri@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in dev-lang/mercury: ChangeLog mercury-11.07_beta1.ebuild
Date: Thu, 30 Jun 2011 07:55:20
Message-Id: 20110630075316.3ED1A20054@flycatcher.gentoo.org
1 keri 11/06/30 07:53:16
2
3 Modified: ChangeLog
4 Added: mercury-11.07_beta1.ebuild
5 Log:
6 Version bump
7
8 (Portage version: 2.1.9.42/cvs/Linux x86_64)
9
10 Revision Changes Path
11 1.140 dev-lang/mercury/ChangeLog
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/mercury/ChangeLog?rev=1.140&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/mercury/ChangeLog?rev=1.140&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/mercury/ChangeLog?r1=1.139&r2=1.140
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/dev-lang/mercury/ChangeLog,v
20 retrieving revision 1.139
21 retrieving revision 1.140
22 diff -u -r1.139 -r1.140
23 --- ChangeLog 29 Jun 2011 19:10:21 -0000 1.139
24 +++ ChangeLog 30 Jun 2011 07:53:16 -0000 1.140
25 @@ -1,6 +1,11 @@
26 # ChangeLog for dev-lang/mercury
27 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/mercury/ChangeLog,v 1.139 2011/06/29 19:10:21 maekke Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/mercury/ChangeLog,v 1.140 2011/06/30 07:53:16 keri Exp $
30 +
31 +*mercury-11.07_beta1 (30 Jun 2011)
32 +
33 + 30 Jun 2011; <keri@g.o> +mercury-11.07_beta1.ebuild:
34 + Version bump
35
36 29 Jun 2011; Markus Meier <maekke@g.o> mercury-11.01.ebuild:
37 x86 stable, bug #371557
38
39
40
41 1.1 dev-lang/mercury/mercury-11.07_beta1.ebuild
42
43 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/mercury/mercury-11.07_beta1.ebuild?rev=1.1&view=markup
44 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/mercury/mercury-11.07_beta1.ebuild?rev=1.1&content-type=text/plain
45
46 Index: mercury-11.07_beta1.ebuild
47 ===================================================================
48 # Copyright 1999-2011 Gentoo Foundation
49 # Distributed under the terms of the GNU General Public License v2
50 # $Header: /var/cvsroot/gentoo-x86/dev-lang/mercury/mercury-11.07_beta1.ebuild,v 1.1 2011/06/30 07:53:16 keri Exp $
51
52 EAPI=2
53
54 inherit autotools elisp-common eutils flag-o-matic java-pkg-opt-2 multilib
55
56 PATCHSET_VER="0"
57 MY_PV=${PV/%?/-2011-06-28}
58 MY_P=${PN}-compiler-${MY_PV/_/-}
59
60 DESCRIPTION="Mercury is a modern general-purpose logic/functional programming language"
61 HOMEPAGE="http://www.cs.mu.oz.au/research/mercury/index.html"
62 SRC_URI="http://www.mercury.csse.unimelb.edu.au/download/files/beta-releases/11.07-beta/${MY_P}-unstable.tar.gz
63 mirror://gentoo/${P}-gentoo-patchset-${PATCHSET_VER}.tar.gz
64 test? ( http://www.mercury.csse.unimelb.edu.au/download/files/beta-releases/11.07-beta/mercury-tests-${MY_PV/_/-}-unstable.tar.gz )"
65
66 LICENSE="GPL-2"
67 SLOT="0"
68 KEYWORDS="~amd64 ~ppc ~x86"
69
70 IUSE="debug emacs erlang examples java minimal readline test threads"
71
72 DEPEND="!dev-libs/mpatrol
73 !dev-util/mono-debugger
74 readline? ( sys-libs/readline )
75 erlang? ( dev-lang/erlang )
76 java? ( >=virtual/jdk-1.5 )"
77
78 RDEPEND="${DEPEND}
79 emacs? ( virtual/emacs )"
80
81 S="${WORKDIR}"/${MY_P}
82 TESTDIR="${WORKDIR}"/${PN}-tests-${MY_PV/_/-}
83
84 SITEFILE=50${PN}-gentoo.el
85
86 src_prepare() {
87 cd "${WORKDIR}"
88 EPATCH_FORCE=yes
89 EPATCH_SUFFIX=patch
90 epatch "${WORKDIR}"/${PV}
91
92 sed -i -e "s/@libdir@/$(get_libdir)/" \
93 "${S}"/scripts/Mmake.vars.in \
94 || die "sed libdir failed"
95
96 if use test; then
97 epatch "${WORKDIR}"/${PV}-tests
98 fi
99
100 cd "${S}"
101 eautoconf
102 }
103
104 src_configure() {
105 strip-flags
106
107 local myconf
108 myconf="--libdir=/usr/$(get_libdir) \
109 --disable-gcc-back-end \
110 --disable-deep-profiler \
111 --disable-dotnet-grades \
112 $(use_enable erlang erlang-grade) \
113 $(use_enable java java-grade) \
114 $(use_enable debug debug-grades) \
115 $(use_enable threads par-grades) \
116 $(use_enable !minimal most-grades) \
117 $(use_with readline)"
118
119 econf ${myconf}
120 }
121
122 src_compile() {
123 # Generate Mercury .m dependencies. This step will vacuously
124 # succeed if we do not have a bootstrappable instance of mmc
125 # already installed. This step is required as mmc does not wait
126 # for all dependencies to be generated before compiling .m files.
127 emake \
128 PARALLEL=${MAKEOPTS} \
129 bootstrap_depend || die "emake depend failed"
130
131 # Build Mercury using base llds grade
132 emake \
133 PARALLEL=${MAKEOPTS} \
134 EXTRA_MLFLAGS=--no-strip \
135 EXTRA_LDFLAGS="${LDFLAGS}" \
136 EXTRA_LD_LIBFLAGS="${LDFLAGS}" \
137 || die "emake failed"
138
139 # We can now patch .m Mercury compiler files since we
140 # have just built mercury_compiler.
141 EPATCH_FORCE=yes
142 EPATCH_SUFFIX=patch
143 epatch "${WORKDIR}"/${PV}-mmc
144
145 sed -i -e "s/@libdir@/$(get_libdir)/" \
146 "${S}"/compiler/file_util.m \
147 "${S}"/compiler/make.program_target.m \
148 || die "sed libdir failed"
149
150 # Rebuild Mercury compiler using the just built mercury_compiler
151 emake \
152 PARALLEL=${MAKEOPTS} \
153 EXTRA_MLFLAGS=--no-strip \
154 EXTRA_LDFLAGS="${LDFLAGS}" \
155 EXTRA_LD_LIBFLAGS="${LDFLAGS}" \
156 MERCURY_COMPILER="${S}"/compiler/mercury_compile \
157 compiler || die "emake compiler failed"
158
159 # The default Mercury grade may not be the same as the grade used to
160 # compile the llds base grade. Since src_test() is run before
161 # src_install() we compile the default grade now
162 emake \
163 PARALLEL=${MAKEOPTS} \
164 EXTRA_MLFLAGS=--no-strip \
165 EXTRA_LDFLAGS="${LDFLAGS}" \
166 EXTRA_LD_LIBFLAGS="${LDFLAGS}" \
167 MERCURY_COMPILER="${S}"/compiler/mercury_compile \
168 default_grade || die "emake default_grade failed"
169 }
170
171 src_test() {
172 TEST_GRADE=`scripts/ml --print-grade`
173 if [ -d "${S}"/install_grade_dir.${TEST_GRADE} ] ; then
174 TWS="${S}"/install_grade_dir.${TEST_GRADE}
175 cp browser/mer_browser.init "${TWS}"/browser/
176 cp mdbcomp/mer_mdbcomp.init "${TWS}"/mdbcomp/
177 cp runtime/mer_rt.init "${TWS}"/runtime/
178 cp ssdb/mer_ssdb.init "${TWS}"/ssdb/
179 else
180 TWS="${S}"
181 fi
182
183 cd "${TESTDIR}"
184 sed -i -e "s:@WORKSPACE@:${TWS}:" WS_FLAGS.ws \
185 || die "sed WORKSPACE failed"
186
187 # Mercury tests must be run in C locale since Mercury output is
188 # compared to hard-coded warnings/errors
189 LC_ALL="C" \
190 PATH="${TWS}"/scripts:"${TWS}"/util:"${TWS}"/slice:"${PATH}" \
191 TERM="" \
192 WORKSPACE="${TWS}" \
193 MERCURY_COMPILER="${TWS}"/compiler/mercury_compile \
194 MERCURY_CONFIG_DIR="${TWS}" \
195 MMAKE_DIR="${TWS}"/scripts \
196 MERCURY_SUPPRESS_STACK_TRACE=yes \
197 GRADE=${TEST_GRADE} \
198 MERCURY_ALL_LOCAL_C_INCL_DIRS=" -I${TWS}/boehm_gc \
199 -I${TWS}/boehm_gc/include \
200 -I${TWS}/runtime \
201 -I${TWS}/library \
202 -I${TWS}/mdbcomp \
203 -I${TWS}/browser \
204 -I${TWS}/trace" \
205 mmake || die "mmake test failed"
206 }
207
208 src_install() {
209 emake \
210 PARALLEL=${MAKEOPTS} \
211 EXTRA_LDFLAGS="${LDFLAGS}" \
212 EXTRA_LD_LIBFLAGS="${LDFLAGS}" \
213 MERCURY_COMPILER="${S}"/compiler/mercury_compile \
214 INSTALL_PREFIX="${D}"/usr \
215 INSTALL_MAN_DIR="${D}"/usr/share/man \
216 INSTALL_INFO_DIR="${D}"/usr/share/info \
217 INSTALL_HTML_DIR="${D}"/usr/share/doc/${PF}/html \
218 INSTALL_ELISP_DIR="${D}/${SITELISP}"/${PN} \
219 install || die "make install failed"
220
221 if use emacs; then
222 elisp-site-file-install "${FILESDIR}/${SITEFILE}" \
223 || die "elisp-site-file-install failed"
224 fi
225
226 dodoc \
227 BUGS HISTORY LIMITATIONS NEWS README README.Linux \
228 README.Linux-Alpha README.Linux-m68k README.Linux-PPC \
229 RELEASE_NOTES TODO VERSION WORK_IN_PROGRESS || die
230
231 if use erlang; then
232 dodoc README.Erlang || die
233 fi
234
235 if use java; then
236 dodoc README.Java || die
237 fi
238
239 if use examples; then
240 insinto /usr/share/doc/${PF}/samples
241 doins samples/{*.m,README,Mmakefile} || die
242 doins -r samples/c_interface \
243 samples/diff \
244 samples/muz \
245 samples/rot13 \
246 samples/solutions \
247 samples/solver_types || die
248
249 if use java; then
250 doins -r samples/java_interface || die
251 fi
252
253 rm -rf $(find "${D}"/usr/share/doc/${PF}/samples \
254 -name CVS -o -name .cvsignore)
255 fi
256 }
257
258 pkg_postinst() {
259 use emacs && elisp-site-regen
260 }
261
262 pkg_postrm() {
263 use emacs && elisp-site-regen
264 }