From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 9727F158090 for ; Sat, 14 May 2022 18:31:21 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 60064E0864; Sat, 14 May 2022 18:31:20 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 3FE22E0864 for ; Sat, 14 May 2022 18:31:20 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 088D534146A for ; Sat, 14 May 2022 18:31:19 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 19D4D464 for ; Sat, 14 May 2022 18:31:16 +0000 (UTC) From: "Keri Harris" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Keri Harris" Message-ID: <1652553038.c202ce59ca38b4906d2aaf1813f672cfd3f6f7cf.keri@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/mercury/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-lang/mercury/Manifest dev-lang/mercury/mercury-22.01.ebuild X-VCS-Directories: dev-lang/mercury/ X-VCS-Committer: keri X-VCS-Committer-Name: Keri Harris X-VCS-Revision: c202ce59ca38b4906d2aaf1813f672cfd3f6f7cf X-VCS-Branch: master Date: Sat, 14 May 2022 18:31:16 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: ebb25ee6-666e-41f6-9fce-8d477ba2716c X-Archives-Hash: d8ef7a4898175b0586b5db021c6a924e commit: c202ce59ca38b4906d2aaf1813f672cfd3f6f7cf Author: Keri Harris gentoo org> AuthorDate: Sat May 14 18:26:34 2022 +0000 Commit: Keri Harris gentoo org> CommitDate: Sat May 14 18:30:38 2022 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c202ce59 dev-lang/mercury: version bump Package-Manager: Portage-3.0.30, Repoman-3.0.3 Signed-off-by: Keri Harris gentoo.org> dev-lang/mercury/Manifest | 2 + dev-lang/mercury/mercury-22.01.ebuild | 201 ++++++++++++++++++++++++++++++++++ 2 files changed, 203 insertions(+) diff --git a/dev-lang/mercury/Manifest b/dev-lang/mercury/Manifest index 210ada8b36bb..7b52e540f6fd 100644 --- a/dev-lang/mercury/Manifest +++ b/dev-lang/mercury/Manifest @@ -1,4 +1,6 @@ DIST mercury-20.06-gentoo-patchset-3.tar.gz 5265 BLAKE2B 0539611691cfb714937bca8dc967246ce32c515b7133391d81333284e6ceffe29b929c042ee0000752bd9980c2d2332de20d7c5dc4e1a6077a6421056d975808 SHA512 54595a71db4d7684071c6496c3e92fe8c9de0a29832cc85901046f2627bd453cf0760b9857e73a91e87edfddc80d384627dc5c2cb7f3bc12ea5737eb5afa4f3b DIST mercury-20.06.1-gentoo-patchset-0.tar.gz 4426 BLAKE2B df6f1a3b52b1f57f502621abba175a55342ae88ecbbe8e37d22b89a7514e0dea14299c87fb1dd47866c5fc89bbb2746a92de8dcf037c1a9d5d2ba4e2e9b8c828 SHA512 c26c209a2fc2380793373785c7a8290ea336c38fe1c243df5c71791e2d1f8b6f8d4a9452a9139181aeb0422cd538c5e6ffe40332ea5b2635cab3324dc4dc320b +DIST mercury-22.01-gentoo-patchset-0.tar.gz 4147 BLAKE2B d59f58cb8870ee3ba636f62c1df7ab54d45d23e92626e1a18717e2ef7511c8a14a63c7d9bbfbeb8ec78841f6a05311f2431c5488df9996dae1ab71ce39c99a55 SHA512 a38d524e900b1771a12921618f785436ebca6029d94c9bd7a3115682b900d688d4cab3e3167a7b110f2fc4f5e9d09c1f24dffe9e39222efd20bb17782829b4a8 DIST mercury-srcdist-20.06.1.tar.gz 47796261 BLAKE2B f282c6edb78e9090eb451585c65c9214927b94eaa5fcdf6f674aef6beb62eb65179f998bcc2e56c3c93b73dd1dc94973084eb8363bc05e334384096c9520d478 SHA512 94e901e5d3db39e3342bf2d6a2a74556a7b18b295c7e02669b487a81d41c72e572046ce1133d670ca6c1b8e246dd277439087efe8fb99b979a73555a101aa9a8 DIST mercury-srcdist-20.06.tar.gz 47768559 BLAKE2B f242aa2ef7da53aa2dfa054e4fee8646434d276f0748b014e33ea52d22f2a8a37e6fecaa20617f4943c4c1e7d8c179ed0603a344fde2dd58da98b2bacadf1a71 SHA512 b76bd22d8eb16242c68b614ff122ed7ee7535efef6c0ceb8cc798fee4c550bc41b6faff2135cea43b24c652b654bb35ae049656585d8e7bf3a1122d07cb1ecf4 +DIST mercury-srcdist-22.01.tar.gz 48960609 BLAKE2B 4ac45251bc098c1465f4bc418501db152bfcf36a2e04bb9153a44c44ff2dff300545103c29551818e773728c5a61947c019997fcc2cb64900e538d5ef64c1b39 SHA512 35b3b1e9fd85062edea5263b304bfc965382d04353e5548d59211519ee222bb6a8e8c95cb03faa089062e39c90b2d1c4af7ca0d9eabbf3bb44872d461e10ff2d diff --git a/dev-lang/mercury/mercury-22.01.ebuild b/dev-lang/mercury/mercury-22.01.ebuild new file mode 100644 index 000000000000..3524e6009a37 --- /dev/null +++ b/dev-lang/mercury/mercury-22.01.ebuild @@ -0,0 +1,201 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools elisp-common flag-o-matic java-pkg-opt-2 multilib vcs-clean xdg-utils + +PATCHSET_VER="0" +MY_P=${PN}-srcdist-${PV} + +DESCRIPTION="Mercury is a modern general-purpose logic/functional programming language" +HOMEPAGE="https://www.mercurylang.org/index.html" +SRC_URI="https://dl.mercurylang.org/release/${MY_P}.tar.gz + https://dev.gentoo.org/~keri/distfiles/mercury/${P}-gentoo-patchset-${PATCHSET_VER}.tar.gz" + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +IUSE="debug doc emacs examples java mono profile readline threads trail" + +DEPEND="net-libs/libnsl:0= + readline? ( sys-libs/readline:= ) + java? ( >=virtual/jdk-1.8:* ) + mono? ( dev-lang/mono ) + doc? ( sys-apps/texinfo )" + +RDEPEND="${DEPEND} + emacs? ( >=app-editors/emacs-23.1:* )" + +S="${WORKDIR}"/${MY_P} + +SITEFILE=50${PN}-gentoo.el + +src_prepare() { + if [[ -d "${WORKDIR}"/${PV} ]] ; then + eapply "${WORKDIR}"/${PV} + fi + eapply_user + + AT_M4DIR=m4 eautoreconf + + xdg_environment_reset +} + +src_configure() { + strip-flags + + local myconf + myconf="--libdir=/usr/$(get_libdir) \ + $(use_enable mono csharp-grade) \ + $(use_enable java java-grade) \ + $(use_enable debug debug-grades) \ + $(use_enable profile prof-grades) \ + $(use_enable threads par-grades) \ + $(use_enable trail trail-grades) \ + $(use_with readline)" + + econf ${myconf} +} + +src_compile() { + # Prepare mmake flags + echo "EXTRA_CFLAGS = ${CFLAGS} -Wno-error" >> Mmake.params + echo "EXTRA_LDFLAGS = ${LDFLAGS}" >> Mmake.params + echo "EXTRA_LD_LIBFLAGS = ${LDFLAGS}" >> Mmake.params + echo "EXTRA_MLFLAGS = --no-strip" >> Mmake.params + + if use trail; then + echo "CFLAGS-int = -O0" >> Mmake.params + echo "CFLAGS-uint = -O0" >> Mmake.params + fi + + echo "EXTRA_LD_LIBFLAGS += -Wl,-soname=libgc.so" >> boehm_gc/Mmake.boehm_gc.params + echo "EXTRA_LD_LIBFLAGS += -Wl,-soname=libmer_rt.so" >> runtime/Mmake.runtime.params + echo "EXTRA_LD_LIBFLAGS += -Wl,-soname=libmer_std.so" >> library/Mmake.library.params + + # Build Mercury using bootstrap grade + emake \ + PARALLEL="'${MAKEOPTS}'" \ + TEXI2DVI="" PDFTEX="" + + # We can now patch .m Mercury compiler files since we + # have just built mercury_compiler. + if [[ -d "${WORKDIR}"/${PV}-mmc ]] ; then + eapply "${WORKDIR}"/${PV}-mmc + fi + + # Rebuild Mercury compiler using the just built mercury_compiler + emake \ + PARALLEL="'${MAKEOPTS}'" \ + MERCURY_COMPILER="${S}"/compiler/mercury_compile \ + TEXI2DVI="" PDFTEX="" + + # The default Mercury grade may not be the same as the bootstrap + # grade. Since src_test() is run before src_install() we compile + # the default grade now + emake \ + PARALLEL="'${MAKEOPTS}'" \ + MERCURY_COMPILER="${S}"/compiler/mercury_compile \ + TEXI2DVI="" PDFTEX="" \ + default_grade +} + +src_test() { + TEST_GRADE=$(scripts/ml --print-grade) + if [ -d "${S}"/install_grade_dir.${TEST_GRADE} ] ; then + TWS="${S}"/install_grade_dir.${TEST_GRADE} + cp runtime/mer_rt.init "${TWS}"/runtime/ + cp mdbcomp/mer_mdbcomp.init "${TWS}"/mdbcomp/ + cp browser/mer_browser.init "${TWS}"/browser/ + else + TWS="${S}" + fi + + cd "${S}"/tests || die + sed -e "s:@WORKSPACE@:${TWS}:" \ + < WS_FLAGS.ws \ + > WS_FLAGS \ + || die "sed WORKSPACE failed" + sed -e "s:@WORKSPACE@:${TWS}:" \ + < .mgnuc_copts.ws \ + > .mgnuc_copts \ + || die "sed WORKSPACE failed" + find . -mindepth 1 -type d -exec cp .mgnuc_opts {} \; + find . -mindepth 1 -type d -exec cp .mgnuc_copts {} \; + + # Mercury tests must be run in C locale since Mercury output is + # compared to hard-coded warnings/errors + LC_ALL="C" \ + PATH="${TWS}"/scripts:"${TWS}"/util:"${S}"/slice:"${PATH}" \ + TERM="" \ + WORKSPACE="${TWS}" \ + WORKSPACE_FLAGS=yes \ + MERCURY_COMPILER="${TWS}"/compiler/mercury_compile \ + MMAKE_DIR="${TWS}"/scripts \ + MERCURY_SUPPRESS_STACK_TRACE=yes \ + GRADE=${TEST_GRADE} \ + mmake || die "mmake test failed" +} + +src_install() { + emake \ + PARALLEL="'${MAKEOPTS}'" \ + MERCURY_COMPILER="${S}"/compiler/mercury_compile \ + TEXI2DVI="" PDFTEX="" \ + DESTDIR="${D}" \ + INSTALL_ELISP_DIR="${D}/${SITELISP}"/${PN} \ + install + + if use java; then + keepdir /usr/$(get_libdir)/mercury/modules/java + fi + + if use mono; then + keepdir /usr/$(get_libdir)/mercury/modules/csharp + fi + + if use emacs; then + elisp-site-file-install "${FILESDIR}/${SITEFILE}" \ + || die "elisp-site-file-install failed" + fi + + dodoc \ + BUGS HISTORY LIMITATIONS.md NEWS README README.md \ + README.Linux README.Linux-m68k README.Linux-PPC \ + RELEASE_NOTES VERSION || die + + if use java; then + dodoc README.Java + fi + + if use mono; then + dodoc README.CSharp + fi + + if use examples; then + docinto samples + dodoc samples/{*.m,README,Mmakefile} + dodoc -r samples/c_interface \ + samples/diff \ + samples/muz \ + samples/rot13 \ + samples/solutions \ + samples/solver_types + + if use java; then + dodoc -r samples/java_interface + fi + + ecvs_clean "${D}"/usr/share/doc/${PF}/samples + fi +} + +pkg_postinst() { + use emacs && elisp-site-regen +} + +pkg_postrm() { + use emacs && elisp-site-regen +}