public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Keri Harris" <keri@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/mercury-extras/
Date: Sun,  3 Oct 2021 11:11:07 +0000 (UTC)	[thread overview]
Message-ID: <1633259436.27b4dbcf6a9a1a9bb32de2bf2373e3ed5a8a22b8.keri@gentoo> (raw)

commit:     27b4dbcf6a9a1a9bb32de2bf2373e3ed5a8a22b8
Author:     Keri Harris <keri <AT> gentoo <DOT> org>
AuthorDate: Sun Oct  3 11:10:36 2021 +0000
Commit:     Keri Harris <keri <AT> gentoo <DOT> org>
CommitDate: Sun Oct  3 11:10:36 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=27b4dbcf

dev-lang/mercury-extras: version bump

Package-Manager: Portage-3.0.20, Repoman-3.0.2
Signed-off-by: Keri Harris <keri <AT> gentoo.org>

 dev-lang/mercury-extras/Manifest                   |   2 +
 .../mercury-extras/mercury-extras-20.06.1.ebuild   | 307 +++++++++++++++++++++
 2 files changed, 309 insertions(+)

diff --git a/dev-lang/mercury-extras/Manifest b/dev-lang/mercury-extras/Manifest
index e3dcc3fd7ef..f58135466d9 100644
--- a/dev-lang/mercury-extras/Manifest
+++ b/dev-lang/mercury-extras/Manifest
@@ -1,2 +1,4 @@
 DIST mercury-extras-20.06-gentoo-patchset-0.tar.gz 1093 BLAKE2B cd0087a7a878c303a610e0007b352deec2e54b8223af1fbdcdd5e1fec0a7d6b4533895ba4ec01d4f90734349535a4c16c69f4ec60495f5a7888f99e4580e3ce3 SHA512 abd74dee931a01085a75f45d2793109737662345bdc68f4cf25dd874b59726da6a5ec8acd84cc8f0957052eeb9e5a9e3502090a0688fbea817d05c6948728ecb
+DIST mercury-extras-20.06.1-gentoo-patchset-0.tar.gz 617 BLAKE2B e16a3887bd0927911e2062befa38119d0347e01eae08d21dcf185942648ce52a94890c26059d39b096f69d19227c2ed22e2d3ded0cc762ebfd1bcb702810f5ea SHA512 1274c08c7c02f6f5fa5183f42e958a8e469df38d8e693722134a24aa846d4f3a74dafa0dd4f9d11fbca58497ff6d714aa7456dc2fd516d8961bc1ba43f3b3b8c
+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

diff --git a/dev-lang/mercury-extras/mercury-extras-20.06.1.ebuild b/dev-lang/mercury-extras/mercury-extras-20.06.1.ebuild
new file mode 100644
index 00000000000..6069ed489b0
--- /dev/null
+++ b/dev-lang/mercury-extras/mercury-extras-20.06.1.ebuild
@@ -0,0 +1,307 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit multilib toolchain-funcs vcs-clean
+
+PATCHSET_VER="0"
+MY_P=mercury-srcdist-${PV}
+
+DESCRIPTION="Additional libraries and tools that are not part of the Mercury standard library"
+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-extras/${P}-gentoo-patchset-${PATCHSET_VER}.tar.gz"
+
+LICENSE="GPL-2 LGPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="cairo examples glut gmp iodbc ncurses odbc opengl ssl tk tommath X xml"
+REQUIRED_USE="?? ( odbc iodbc )"
+
+RDEPEND="
+	~dev-lang/mercury-${PV}
+	cairo? ( >=x11-libs/cairo-1.10.0 )
+	gmp? ( dev-libs/gmp:0 )
+	glut? ( media-libs/freeglut )
+	odbc? ( dev-db/unixODBC )
+	iodbc? ( dev-db/libiodbc )
+	tommath? ( dev-libs/libtommath )
+	ncurses? ( sys-libs/ncurses:= )
+	opengl? (
+		virtual/opengl
+		virtual/glu
+	)
+	tk? (
+		dev-lang/tcl:0
+		dev-lang/tk:0
+	)
+	X? ( x11-libs/libX11 )"
+
+DEPEND="${RDEPEND}"
+
+BDEPEND="virtual/pkgconfig"
+
+S="${WORKDIR}"/${MY_P}/extras
+
+mercury_pkgs() {
+	echo "
+		align_right/align_right:bin:
+		base64/mercury_base64:lib:
+		cgi/mercury_www:lib:
+		complex_numbers/complex_numbers:lib:
+		$(use ncurses && echo \
+			curs/curs:lib:ncurses,panel curses/mcurses:lib:ncurses)
+		dynamic_linking/dl:lib:
+		error/error:bin:
+		fixed/fixed:lib:
+		$(use gmp && echo gmp_int/gmp_int:lib:)
+		$(use tommath && echo mp_int/mp_int:lib:libtommath)
+		$(use X && echo graphics/easyx/easyx:lib:x11)
+		$(use cairo && echo graphics/mercury_cairo/mercury_cairo:lib:cairo)
+		$(use glut && echo graphics/mercury_glut/mercury_glut:lib:freeglut)
+		$(use opengl && echo graphics/mercury_opengl/mercury_opengl:lib:gl,glu)
+		$(use tk && echo graphics/mercury_tcltk/mercury_tcltk:lib:tk)
+		lex/lex:lib:
+		lex/regex:lib:
+		moose/moose:bin:
+		net/net:lib:
+		net/echo:bin:
+		$(use ssl && echo mopenssl/mopenssl:lib:openssl)
+		$(use odbc && echo odbc/odbc:lib:odbc)
+		$(use iodbc && echo odbc/odbc:lib:libiodbc)
+		posix/posix:lib:
+		$(has_version dev-lang/mercury[trail] && echo \
+			references/global:lib:)
+		show_ops/show_ops:bin:
+		solver_types/library/any:lib:
+		$(use xml && echo xml/xml:lib:)"
+}
+
+mercury_pkg_setup() {
+	mercury_pkg=${1%%:*}
+	mercury_pkg_dir=${mercury_pkg%/*}
+	mercury_pkg_name=${mercury_pkg##*/}
+
+	mercury_pkg_atts=${1#*:}
+	mercury_pkg_type=${mercury_pkg_atts%%:*}
+	mercury_pkg_deps=${mercury_pkg_atts#*:}
+
+	cd "${S}"/${mercury_pkg_dir} || die
+
+	echo ">> Preparing Mercury package: ${mercury_pkg}"
+
+	echo "MCFLAGS += --libgrades-exclude java" \
+		>> "${S}"/${mercury_pkg_dir}/Mercury.options
+	echo "MCFLAGS += --libgrades-exclude erlang" \
+		>> "${S}"/${mercury_pkg_dir}/Mercury.options
+	echo "MCFLAGS += --libgrades-exclude csharp" \
+		>> "${S}"/${mercury_pkg_dir}/Mercury.options
+
+	if test -n "$mercury_pkg_deps"; then
+		echo "EXTRA_CFLAGS += $($(tc-getPKG_CONFIG) --cflags ${mercury_pkg_deps/,/ })" \
+			>> "${S}"/${mercury_pkg_dir}/Mercury.options
+		echo "EXTRA_LDFLAGS += $($(tc-getPKG_CONFIG) --libs ${mercury_pkg_deps/,/ })" \
+			>> "${S}"/${mercury_pkg_dir}/Mercury.options
+	fi
+
+	if test ${mercury_pkg_name} = dl; then
+		echo "EXTRA_LDFLAGS += -ldl" >> "${S}"/${mercury_pkg_dir}/Mercury.options
+	elif test ${mercury_pkg_name} = gmp_int; then
+		echo "EXTRA_LDFLAGS += -lgmp" >> "${S}"/${mercury_pkg_dir}/Mercury.options
+	elif test ${mercury_pkg_name} = mercury_tcltk; then
+		echo "EXTRA_CFLAGS += -DUSE_INTERP_RESULT" \
+			>> "${S}"/${mercury_pkg_dir}/Mercury.options
+	elif test ${mercury_pkg_name} = odbc && use odbc; then
+		echo "EXTRA_CFLAGS += -DMODBC_UNIX -DMODBC_MYSQL" \
+			>> "${S}"/${mercury_pkg_dir}/Mercury.options
+	elif test ${mercury_pkg_name} = odbc && use iodbc; then
+		echo "EXTRA_CFLAGS += -DMODBC_IODBC -DMODBC_MYSQL" \
+			>> "${S}"/${mercury_pkg_dir}/Mercury.options
+	fi
+}
+
+mercury_pkg_compile() {
+	mercury_pkg=${1%%:*}
+	mercury_pkg_dir=${mercury_pkg%/*}
+	mercury_pkg_name=${mercury_pkg##*/}
+
+	mercury_pkg_atts=${1#*:}
+	mercury_pkg_type=${mercury_pkg_atts%:*}
+
+	cd "${S}"/${mercury_pkg_dir} || die
+
+	echo ">> Compiling Mercury package: ${mercury_pkg}"
+
+	if test "${mercury_pkg_type}" = "bin"; then
+		mercury_mmc_target=${mercury_pkg_name}
+	else
+		mercury_mmc_target=lib${mercury_pkg_name}
+	fi
+
+	mmc -f *.m || die "mmc -f .m failed"
+
+	mmc \
+		--make \
+		--verbose-commands \
+		--no-strip \
+		--cflags "${CFLAGS}" \
+		--ld-flags "${LDFLAGS}" \
+		--ld-libflags "${LDFLAGS}" \
+		${mercury_mmc_target} || die "mmc ${mercury_mmc_target} failed"
+}
+
+mercury_pkg_install() {
+	mercury_pkg=${1%%:*}
+	mercury_pkg_dir=${mercury_pkg%/*}
+	mercury_pkg_name=${mercury_pkg##*/}
+
+	mercury_pkg_atts=${1#*:}
+	mercury_pkg_type=${mercury_pkg_atts%:*}
+
+	cd "${S}"/${mercury_pkg_dir} || die
+
+	echo ">> Installing Mercury package: ${mercury_pkg}"
+
+	if test "${mercury_pkg_type}" = "bin"; then
+		into /usr/$(get_libdir)/mercury/extras
+		dobin ${mercury_pkg_name}
+	else
+		mmc \
+			--make \
+			--verbose-commands \
+			--no-strip \
+			--cflags "${CFLAGS}" \
+			--ld-flags "${LDFLAGS}" \
+			--ld-libflags "${LDFLAGS}" \
+			--install-prefix "${D}/usr/$(get_libdir)/mercury/extras" \
+			lib${mercury_pkg_name}.install || die "mmc lib${mercury_pkg_name}.install failed"
+	fi
+}
+
+src_prepare() {
+	cd "${WORKDIR}"/${MY_P}
+	if [[ -d "${WORKDIR}"/${PV} ]] ; then
+		eapply "${WORKDIR}"/${PV}
+	fi
+	eapply_user
+
+	cd "${S}"
+	for mercury_pkg in $(mercury_pkgs); do
+		mercury_pkg_setup ${mercury_pkg}
+	done
+
+	cp "${S}"/net/*.m "${S}"/mopenssl/ || die
+}
+
+src_compile() {
+	for mercury_pkg in $(mercury_pkgs); do
+		mercury_pkg_compile ${mercury_pkg}
+	done
+}
+
+src_install() {
+	for mercury_pkg in $(mercury_pkgs); do
+		mercury_pkg_install ${mercury_pkg}
+	done
+
+	cd "${S}"
+	dodoc README
+
+	if use examples; then
+		docinto samples/cgi
+		dodoc cgi/form_test.m
+
+		docinto samples/complex_numbers
+		dodoc complex_numbers/samples/*.m
+
+		if use ncurses; then
+			docinto samples/curs
+			dodoc curs/samples/*.m
+
+			docinto samples/curses
+			dodoc curses/sample/*.m
+		fi
+
+		docinto samples/dynamic_linking
+		dodoc dynamic_linking/{hello,dl_test}.m
+
+		docinto samples/gator
+		dodoc -r gator/*
+
+		if use gmp; then
+			docinto samples/gmp_int
+			dodoc gmp_int/gmp_int_test.m
+		fi
+
+		if use tommath; then
+			docinto samples/mp_int
+			dodoc mp_int/mp_int_test.m
+		fi
+
+		if use X; then
+			docinto samples/graphics
+			dodoc graphics/easyx/samples/*.m
+		fi
+
+		if use glut && use opengl; then
+			docinto samples/graphics
+			dodoc graphics/samples/gears/*.m
+			dodoc graphics/samples/maze/*.m
+		fi
+
+		if use tk; then
+			docinto samples/graphics
+			dodoc graphics/samples/calc/*.m
+		fi
+
+		if use opengl && use tk; then
+			docinto samples/graphics
+			dodoc graphics/samples/pent/*.m
+		fi
+
+		docinto samples/lex
+		dodoc lex/samples/*.m
+
+		docinto samples/log4m
+		dodoc log4m/*.m
+
+		docinto samples/monte
+		dodoc monte/*.m
+
+		docinto samples/moose
+		dodoc moose/samples/*
+
+		docinto samples/net
+		dodoc net/test_lookups.m
+
+		if use odbc || use iodbc; then
+			docinto samples/odbc
+			dodoc odbc/odbc_test.m
+		fi
+
+		docinto samples/posix
+		dodoc posix/samples/*.m
+
+		docinto samples/random
+		dodoc random/*.m
+
+		if has_version dev-lang/mercury[trail]; then
+			docinto samples/references
+			dodoc references/samples/*.m
+
+			docinto samples/trail
+			dodoc trail/*.m
+		fi
+
+		if use xml; then
+			docinto samples/xml
+			dodoc xml/tryit.m
+			dodoc xml/samples/*
+			dodoc xml_stylesheets/*.xsl
+		fi
+
+		ecvs_clean
+	fi
+}


             reply	other threads:[~2021-10-03 11:11 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-03 11:11 Keri Harris [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-10-15  1:39 [gentoo-commits] repo/gentoo:master commit in: dev-lang/mercury-extras/ Eli Schwartz
2024-10-14  5:28 Eli Schwartz
2024-06-30 20:18 Florian Schmaus
2024-06-30 20:18 Florian Schmaus
2024-06-08  7:57 Miroslav Šulc
2022-10-08 20:01 Sam James
2022-08-14 15:18 Keri Harris
2022-05-22 16:24 Keri Harris
2022-05-15 10:54 Keri Harris
2022-05-14 18:31 Keri Harris
2021-06-18 21:07 David Seifert
2021-01-18 16:04 Keri Harris
2021-01-07  7:25 Keri Harris
2020-09-15 11:07 Keri Harris
2020-09-13 10:48 Keri Harris
2020-07-26 13:37 Keri Harris
2020-07-23 11:43 Keri Harris
2020-07-19 20:27 Keri Harris
2020-04-02  9:38 Keri Harris
2020-04-01 10:37 Keri Harris
2020-03-29 10:43 Keri Harris
2020-03-21 17:17 Keri Harris
2020-03-21 16:40 Keri Harris
2020-02-12 18:06 David Seifert
2019-04-15 11:45 Keri Harris
2018-10-27  6:58 Keri Harris
2018-09-09 22:49 Thomas Deutschmann
2018-09-03 12:49 Keri Harris
2018-07-17 11:58 Keri Harris
2017-09-30 11:35 Keri Harris
2017-09-28  6:47 Keri Harris
2017-09-27 18:57 Keri Harris
2017-09-27  7:36 Keri Harris
2017-09-26 19:59 Keri Harris
2017-09-26 19:09 Keri Harris
2017-09-26 17:30 Keri Harris
2017-09-25 10:43 Keri Harris
2017-01-23 15:46 Agostino Sarubbo
2017-01-23 13:51 Agostino Sarubbo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1633259436.27b4dbcf6a9a1a9bb32de2bf2373e3ed5a8a22b8.keri@gentoo \
    --to=keri@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox