Gentoo Archives: gentoo-commits

From: Keri Harris <keri@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/mercury-extras/
Date: Sun, 03 Oct 2021 11:11:10
Message-Id: 1633259436.27b4dbcf6a9a1a9bb32de2bf2373e3ed5a8a22b8.keri@gentoo
1 commit: 27b4dbcf6a9a1a9bb32de2bf2373e3ed5a8a22b8
2 Author: Keri Harris <keri <AT> gentoo <DOT> org>
3 AuthorDate: Sun Oct 3 11:10:36 2021 +0000
4 Commit: Keri Harris <keri <AT> gentoo <DOT> org>
5 CommitDate: Sun Oct 3 11:10:36 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=27b4dbcf
7
8 dev-lang/mercury-extras: version bump
9
10 Package-Manager: Portage-3.0.20, Repoman-3.0.2
11 Signed-off-by: Keri Harris <keri <AT> gentoo.org>
12
13 dev-lang/mercury-extras/Manifest | 2 +
14 .../mercury-extras/mercury-extras-20.06.1.ebuild | 307 +++++++++++++++++++++
15 2 files changed, 309 insertions(+)
16
17 diff --git a/dev-lang/mercury-extras/Manifest b/dev-lang/mercury-extras/Manifest
18 index e3dcc3fd7ef..f58135466d9 100644
19 --- a/dev-lang/mercury-extras/Manifest
20 +++ b/dev-lang/mercury-extras/Manifest
21 @@ -1,2 +1,4 @@
22 DIST mercury-extras-20.06-gentoo-patchset-0.tar.gz 1093 BLAKE2B cd0087a7a878c303a610e0007b352deec2e54b8223af1fbdcdd5e1fec0a7d6b4533895ba4ec01d4f90734349535a4c16c69f4ec60495f5a7888f99e4580e3ce3 SHA512 abd74dee931a01085a75f45d2793109737662345bdc68f4cf25dd874b59726da6a5ec8acd84cc8f0957052eeb9e5a9e3502090a0688fbea817d05c6948728ecb
23 +DIST mercury-extras-20.06.1-gentoo-patchset-0.tar.gz 617 BLAKE2B e16a3887bd0927911e2062befa38119d0347e01eae08d21dcf185942648ce52a94890c26059d39b096f69d19227c2ed22e2d3ded0cc762ebfd1bcb702810f5ea SHA512 1274c08c7c02f6f5fa5183f42e958a8e469df38d8e693722134a24aa846d4f3a74dafa0dd4f9d11fbca58497ff6d714aa7456dc2fd516d8961bc1ba43f3b3b8c
24 +DIST mercury-srcdist-20.06.1.tar.gz 47796261 BLAKE2B f282c6edb78e9090eb451585c65c9214927b94eaa5fcdf6f674aef6beb62eb65179f998bcc2e56c3c93b73dd1dc94973084eb8363bc05e334384096c9520d478 SHA512 94e901e5d3db39e3342bf2d6a2a74556a7b18b295c7e02669b487a81d41c72e572046ce1133d670ca6c1b8e246dd277439087efe8fb99b979a73555a101aa9a8
25 DIST mercury-srcdist-20.06.tar.gz 47768559 BLAKE2B f242aa2ef7da53aa2dfa054e4fee8646434d276f0748b014e33ea52d22f2a8a37e6fecaa20617f4943c4c1e7d8c179ed0603a344fde2dd58da98b2bacadf1a71 SHA512 b76bd22d8eb16242c68b614ff122ed7ee7535efef6c0ceb8cc798fee4c550bc41b6faff2135cea43b24c652b654bb35ae049656585d8e7bf3a1122d07cb1ecf4
26
27 diff --git a/dev-lang/mercury-extras/mercury-extras-20.06.1.ebuild b/dev-lang/mercury-extras/mercury-extras-20.06.1.ebuild
28 new file mode 100644
29 index 00000000000..6069ed489b0
30 --- /dev/null
31 +++ b/dev-lang/mercury-extras/mercury-extras-20.06.1.ebuild
32 @@ -0,0 +1,307 @@
33 +# Copyright 1999-2021 Gentoo Authors
34 +# Distributed under the terms of the GNU General Public License v2
35 +
36 +EAPI=7
37 +
38 +inherit multilib toolchain-funcs vcs-clean
39 +
40 +PATCHSET_VER="0"
41 +MY_P=mercury-srcdist-${PV}
42 +
43 +DESCRIPTION="Additional libraries and tools that are not part of the Mercury standard library"
44 +HOMEPAGE="https://www.mercurylang.org/index.html"
45 +SRC_URI="https://dl.mercurylang.org/release/${MY_P}.tar.gz
46 + https://dev.gentoo.org/~keri/distfiles/mercury-extras/${P}-gentoo-patchset-${PATCHSET_VER}.tar.gz"
47 +
48 +LICENSE="GPL-2 LGPL-2"
49 +SLOT="0"
50 +KEYWORDS="~amd64 ~x86"
51 +
52 +IUSE="cairo examples glut gmp iodbc ncurses odbc opengl ssl tk tommath X xml"
53 +REQUIRED_USE="?? ( odbc iodbc )"
54 +
55 +RDEPEND="
56 + ~dev-lang/mercury-${PV}
57 + cairo? ( >=x11-libs/cairo-1.10.0 )
58 + gmp? ( dev-libs/gmp:0 )
59 + glut? ( media-libs/freeglut )
60 + odbc? ( dev-db/unixODBC )
61 + iodbc? ( dev-db/libiodbc )
62 + tommath? ( dev-libs/libtommath )
63 + ncurses? ( sys-libs/ncurses:= )
64 + opengl? (
65 + virtual/opengl
66 + virtual/glu
67 + )
68 + tk? (
69 + dev-lang/tcl:0
70 + dev-lang/tk:0
71 + )
72 + X? ( x11-libs/libX11 )"
73 +
74 +DEPEND="${RDEPEND}"
75 +
76 +BDEPEND="virtual/pkgconfig"
77 +
78 +S="${WORKDIR}"/${MY_P}/extras
79 +
80 +mercury_pkgs() {
81 + echo "
82 + align_right/align_right:bin:
83 + base64/mercury_base64:lib:
84 + cgi/mercury_www:lib:
85 + complex_numbers/complex_numbers:lib:
86 + $(use ncurses && echo \
87 + curs/curs:lib:ncurses,panel curses/mcurses:lib:ncurses)
88 + dynamic_linking/dl:lib:
89 + error/error:bin:
90 + fixed/fixed:lib:
91 + $(use gmp && echo gmp_int/gmp_int:lib:)
92 + $(use tommath && echo mp_int/mp_int:lib:libtommath)
93 + $(use X && echo graphics/easyx/easyx:lib:x11)
94 + $(use cairo && echo graphics/mercury_cairo/mercury_cairo:lib:cairo)
95 + $(use glut && echo graphics/mercury_glut/mercury_glut:lib:freeglut)
96 + $(use opengl && echo graphics/mercury_opengl/mercury_opengl:lib:gl,glu)
97 + $(use tk && echo graphics/mercury_tcltk/mercury_tcltk:lib:tk)
98 + lex/lex:lib:
99 + lex/regex:lib:
100 + moose/moose:bin:
101 + net/net:lib:
102 + net/echo:bin:
103 + $(use ssl && echo mopenssl/mopenssl:lib:openssl)
104 + $(use odbc && echo odbc/odbc:lib:odbc)
105 + $(use iodbc && echo odbc/odbc:lib:libiodbc)
106 + posix/posix:lib:
107 + $(has_version dev-lang/mercury[trail] && echo \
108 + references/global:lib:)
109 + show_ops/show_ops:bin:
110 + solver_types/library/any:lib:
111 + $(use xml && echo xml/xml:lib:)"
112 +}
113 +
114 +mercury_pkg_setup() {
115 + mercury_pkg=${1%%:*}
116 + mercury_pkg_dir=${mercury_pkg%/*}
117 + mercury_pkg_name=${mercury_pkg##*/}
118 +
119 + mercury_pkg_atts=${1#*:}
120 + mercury_pkg_type=${mercury_pkg_atts%%:*}
121 + mercury_pkg_deps=${mercury_pkg_atts#*:}
122 +
123 + cd "${S}"/${mercury_pkg_dir} || die
124 +
125 + echo ">> Preparing Mercury package: ${mercury_pkg}"
126 +
127 + echo "MCFLAGS += --libgrades-exclude java" \
128 + >> "${S}"/${mercury_pkg_dir}/Mercury.options
129 + echo "MCFLAGS += --libgrades-exclude erlang" \
130 + >> "${S}"/${mercury_pkg_dir}/Mercury.options
131 + echo "MCFLAGS += --libgrades-exclude csharp" \
132 + >> "${S}"/${mercury_pkg_dir}/Mercury.options
133 +
134 + if test -n "$mercury_pkg_deps"; then
135 + echo "EXTRA_CFLAGS += $($(tc-getPKG_CONFIG) --cflags ${mercury_pkg_deps/,/ })" \
136 + >> "${S}"/${mercury_pkg_dir}/Mercury.options
137 + echo "EXTRA_LDFLAGS += $($(tc-getPKG_CONFIG) --libs ${mercury_pkg_deps/,/ })" \
138 + >> "${S}"/${mercury_pkg_dir}/Mercury.options
139 + fi
140 +
141 + if test ${mercury_pkg_name} = dl; then
142 + echo "EXTRA_LDFLAGS += -ldl" >> "${S}"/${mercury_pkg_dir}/Mercury.options
143 + elif test ${mercury_pkg_name} = gmp_int; then
144 + echo "EXTRA_LDFLAGS += -lgmp" >> "${S}"/${mercury_pkg_dir}/Mercury.options
145 + elif test ${mercury_pkg_name} = mercury_tcltk; then
146 + echo "EXTRA_CFLAGS += -DUSE_INTERP_RESULT" \
147 + >> "${S}"/${mercury_pkg_dir}/Mercury.options
148 + elif test ${mercury_pkg_name} = odbc && use odbc; then
149 + echo "EXTRA_CFLAGS += -DMODBC_UNIX -DMODBC_MYSQL" \
150 + >> "${S}"/${mercury_pkg_dir}/Mercury.options
151 + elif test ${mercury_pkg_name} = odbc && use iodbc; then
152 + echo "EXTRA_CFLAGS += -DMODBC_IODBC -DMODBC_MYSQL" \
153 + >> "${S}"/${mercury_pkg_dir}/Mercury.options
154 + fi
155 +}
156 +
157 +mercury_pkg_compile() {
158 + mercury_pkg=${1%%:*}
159 + mercury_pkg_dir=${mercury_pkg%/*}
160 + mercury_pkg_name=${mercury_pkg##*/}
161 +
162 + mercury_pkg_atts=${1#*:}
163 + mercury_pkg_type=${mercury_pkg_atts%:*}
164 +
165 + cd "${S}"/${mercury_pkg_dir} || die
166 +
167 + echo ">> Compiling Mercury package: ${mercury_pkg}"
168 +
169 + if test "${mercury_pkg_type}" = "bin"; then
170 + mercury_mmc_target=${mercury_pkg_name}
171 + else
172 + mercury_mmc_target=lib${mercury_pkg_name}
173 + fi
174 +
175 + mmc -f *.m || die "mmc -f .m failed"
176 +
177 + mmc \
178 + --make \
179 + --verbose-commands \
180 + --no-strip \
181 + --cflags "${CFLAGS}" \
182 + --ld-flags "${LDFLAGS}" \
183 + --ld-libflags "${LDFLAGS}" \
184 + ${mercury_mmc_target} || die "mmc ${mercury_mmc_target} failed"
185 +}
186 +
187 +mercury_pkg_install() {
188 + mercury_pkg=${1%%:*}
189 + mercury_pkg_dir=${mercury_pkg%/*}
190 + mercury_pkg_name=${mercury_pkg##*/}
191 +
192 + mercury_pkg_atts=${1#*:}
193 + mercury_pkg_type=${mercury_pkg_atts%:*}
194 +
195 + cd "${S}"/${mercury_pkg_dir} || die
196 +
197 + echo ">> Installing Mercury package: ${mercury_pkg}"
198 +
199 + if test "${mercury_pkg_type}" = "bin"; then
200 + into /usr/$(get_libdir)/mercury/extras
201 + dobin ${mercury_pkg_name}
202 + else
203 + mmc \
204 + --make \
205 + --verbose-commands \
206 + --no-strip \
207 + --cflags "${CFLAGS}" \
208 + --ld-flags "${LDFLAGS}" \
209 + --ld-libflags "${LDFLAGS}" \
210 + --install-prefix "${D}/usr/$(get_libdir)/mercury/extras" \
211 + lib${mercury_pkg_name}.install || die "mmc lib${mercury_pkg_name}.install failed"
212 + fi
213 +}
214 +
215 +src_prepare() {
216 + cd "${WORKDIR}"/${MY_P}
217 + if [[ -d "${WORKDIR}"/${PV} ]] ; then
218 + eapply "${WORKDIR}"/${PV}
219 + fi
220 + eapply_user
221 +
222 + cd "${S}"
223 + for mercury_pkg in $(mercury_pkgs); do
224 + mercury_pkg_setup ${mercury_pkg}
225 + done
226 +
227 + cp "${S}"/net/*.m "${S}"/mopenssl/ || die
228 +}
229 +
230 +src_compile() {
231 + for mercury_pkg in $(mercury_pkgs); do
232 + mercury_pkg_compile ${mercury_pkg}
233 + done
234 +}
235 +
236 +src_install() {
237 + for mercury_pkg in $(mercury_pkgs); do
238 + mercury_pkg_install ${mercury_pkg}
239 + done
240 +
241 + cd "${S}"
242 + dodoc README
243 +
244 + if use examples; then
245 + docinto samples/cgi
246 + dodoc cgi/form_test.m
247 +
248 + docinto samples/complex_numbers
249 + dodoc complex_numbers/samples/*.m
250 +
251 + if use ncurses; then
252 + docinto samples/curs
253 + dodoc curs/samples/*.m
254 +
255 + docinto samples/curses
256 + dodoc curses/sample/*.m
257 + fi
258 +
259 + docinto samples/dynamic_linking
260 + dodoc dynamic_linking/{hello,dl_test}.m
261 +
262 + docinto samples/gator
263 + dodoc -r gator/*
264 +
265 + if use gmp; then
266 + docinto samples/gmp_int
267 + dodoc gmp_int/gmp_int_test.m
268 + fi
269 +
270 + if use tommath; then
271 + docinto samples/mp_int
272 + dodoc mp_int/mp_int_test.m
273 + fi
274 +
275 + if use X; then
276 + docinto samples/graphics
277 + dodoc graphics/easyx/samples/*.m
278 + fi
279 +
280 + if use glut && use opengl; then
281 + docinto samples/graphics
282 + dodoc graphics/samples/gears/*.m
283 + dodoc graphics/samples/maze/*.m
284 + fi
285 +
286 + if use tk; then
287 + docinto samples/graphics
288 + dodoc graphics/samples/calc/*.m
289 + fi
290 +
291 + if use opengl && use tk; then
292 + docinto samples/graphics
293 + dodoc graphics/samples/pent/*.m
294 + fi
295 +
296 + docinto samples/lex
297 + dodoc lex/samples/*.m
298 +
299 + docinto samples/log4m
300 + dodoc log4m/*.m
301 +
302 + docinto samples/monte
303 + dodoc monte/*.m
304 +
305 + docinto samples/moose
306 + dodoc moose/samples/*
307 +
308 + docinto samples/net
309 + dodoc net/test_lookups.m
310 +
311 + if use odbc || use iodbc; then
312 + docinto samples/odbc
313 + dodoc odbc/odbc_test.m
314 + fi
315 +
316 + docinto samples/posix
317 + dodoc posix/samples/*.m
318 +
319 + docinto samples/random
320 + dodoc random/*.m
321 +
322 + if has_version dev-lang/mercury[trail]; then
323 + docinto samples/references
324 + dodoc references/samples/*.m
325 +
326 + docinto samples/trail
327 + dodoc trail/*.m
328 + fi
329 +
330 + if use xml; then
331 + docinto samples/xml
332 + dodoc xml/tryit.m
333 + dodoc xml/samples/*
334 + dodoc xml_stylesheets/*.xsl
335 + fi
336 +
337 + ecvs_clean
338 + fi
339 +}