public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Michael Orlitzky" <mjo@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-mathematics/polymake/
Date: Fri,  9 Sep 2022 19:09:38 +0000 (UTC)	[thread overview]
Message-ID: <1662750432.dd5bbd01fd9a834477755d88f46b2d331f4bb6b4.mjo@gentoo> (raw)

commit:     dd5bbd01fd9a834477755d88f46b2d331f4bb6b4
Author:     Michael Orlitzky <mjo <AT> gentoo <DOT> org>
AuthorDate: Fri Sep  9 12:38:35 2022 +0000
Commit:     Michael Orlitzky <mjo <AT> gentoo <DOT> org>
CommitDate: Fri Sep  9 19:07:12 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dd5bbd01

sci-mathematics/polymake: add 4.7

Signed-off-by: Michael Orlitzky <mjo <AT> gentoo.org>

 sci-mathematics/polymake/Manifest            |   1 +
 sci-mathematics/polymake/polymake-4.7.ebuild | 122 +++++++++++++++++++++++++++
 2 files changed, 123 insertions(+)

diff --git a/sci-mathematics/polymake/Manifest b/sci-mathematics/polymake/Manifest
index 2405e7d77aa0..a5a48525953a 100644
--- a/sci-mathematics/polymake/Manifest
+++ b/sci-mathematics/polymake/Manifest
@@ -1 +1,2 @@
 DIST polymake-4.6-minimal.tar.bz2 5634651 BLAKE2B 6ee24fa6e70fdf746ea298d78e21e17fe38c5837ae2d3153e53656b4b003555b06897f463220b59474eed1111135dfa61c080d08d6363391afca51011f331122 SHA512 90f04c67bf297fb1b9f5a51d1654ff12385860b1fc80278a8b47f65970f11a1e0f33ede8a839b54a12422e772c8b76302ff78cc467712a2486f6e76ce0d5ab20
+DIST polymake-4.7-minimal.tar.bz2 7258042 BLAKE2B bb6de88b9ba2c04988d18823f15b0a61ffa4699ae75b553bce2266136f4584610426d2820684f6aa553960a7159f1a2d543586fd531bb18f336e854fba451f78 SHA512 f025ae7833a5fbca7b79a3c8f6a74516a4d175054f0439f21ae8f54eefc0762f1b2abf33f484aa7f6a9a54c62dc0c476f8b3a9cfbea148c53497b62d0b0740a1

diff --git a/sci-mathematics/polymake/polymake-4.7.ebuild b/sci-mathematics/polymake/polymake-4.7.ebuild
new file mode 100644
index 000000000000..66795c00f8c7
--- /dev/null
+++ b/sci-mathematics/polymake/polymake-4.7.ebuild
@@ -0,0 +1,122 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic ninja-utils toolchain-funcs
+
+DESCRIPTION="Tool for polyhedral geometry and combinatorics"
+SRC_URI="https://polymake.org/lib/exe/fetch.php/download/${P}-minimal.tar.bz2"
+HOMEPAGE="https://polymake.org/"
+
+# polymake itself is GPL-2, but even the minimal tarball bundles a lot
+# of other code. I've included everything that turns up with a
+#
+#   find ./ -name 'LICENSE' -o -name 'COPYING'
+#
+# in the list below. If any of these bother you, you may want to take a
+# closer look at how (or even if) the corresponding code is being used.
+LICENSE="BSD GPL-2 GPL-2+ MIT WTFPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+IUSE="bliss +cdd +flint +normaliz libpolymake lrs nauty ppl singular"
+
+REQUIRED_USE="^^ ( bliss nauty )"
+
+# The "configure" script isn't autotools; it basically exists just to
+# exec some other perl script but using the familiar name.
+BDEPEND="dev-util/ninja
+	dev-lang/perl"
+
+DEPEND="
+	libpolymake? ( dev-lang/perl )
+	dev-libs/boost:=
+	dev-libs/gmp:=
+	dev-libs/libxml2:2=
+	dev-libs/libxslt:=
+	dev-libs/mpfr:=
+	sys-libs/readline:=
+	bliss? ( sci-libs/bliss:=[gmp] )
+	cdd? ( sci-libs/cddlib:= )
+	flint? ( sci-mathematics/flint:= )
+	lrs? ( >=sci-libs/lrslib-051:=[gmp] )
+	nauty? ( sci-mathematics/nauty:= )
+	normaliz? ( >=sci-mathematics/normaliz-3.8:= )
+	ppl? ( dev-libs/ppl:= )
+	singular? ( sci-mathematics/singular:= )"
+
+RDEPEND="${DEPEND}
+	dev-lang/perl
+	dev-perl/JSON
+	dev-perl/Term-ReadLine-Gnu
+	dev-perl/TermReadKey
+	dev-perl/XML-SAX
+	dev-perl/XML-Writer"
+
+# Tests observed failing after upgrade to polymake-4.5. No idea if they
+# worked prior to that. Someone who actually understands polymake will
+# have to get these working (at least briefly) before we re-enable them.
+RESTRICT=test
+
+src_configure() {
+	# Without this, the build system tries to use "the highest possible"
+	# optimization level and will override what's in your CXXFLAGS.
+	export CXXOPT=""
+
+	tc-export CC CXX
+
+	# We need to define BLISS_USE_GMP if bliss was built with gmp support.
+	# Therefore we require gmp support on bliss, so that the package
+	# manager can prevent rebuilds with changed gmp flag. Yes, this should
+	# be append-cppflags; but the build system doesn't respect CPPFLAGS.
+	use bliss && append-cxxflags -DBLISS_USE_GMP
+
+	# This isn't an autotools ./configure script, so a lot of things
+	# don't work the way you'd expect. We disable openmp unconditionally
+	# because it's only supposedly only used for building the bundled
+	# libnormaliz (we unbundle it) and for something called to_simplex
+	# that I can't find anywhere in the polymake source.
+	./configure --prefix="${EPREFIX}/usr" \
+		--libdir="${EPREFIX}/usr/$(get_libdir)" \
+		--libexecdir="${EPREFIX}/usr/$(get_libdir)/polymake" \
+		$(usev !libpolymake "--without-callable") \
+		--without-java \
+		--without-javaview \
+		--without-native \
+		--without-scip \
+		--without-soplex \
+		--without-openmp \
+		$(use_with bliss bliss "${EPREFIX}/usr") \
+		$(use_with cdd cdd "${EPREFIX}/usr") \
+		$(use_with flint flint "${EPREFIX}/usr") \
+		$(use_with lrs lrs "${EPREFIX}/usr") \
+		$(use_with nauty nauty "${EPREFIX}/usr") \
+		$(use_with normaliz libnormaliz "${EPREFIX}/usr") \
+		$(use_with ppl ppl "${EPREFIX}/usr") \
+		$(use_with singular singular "${EPREFIX}/usr") \
+		|| die
+}
+
+# There is a backwards-compatible Makefile that would call ninja for us
+# in src_compile/src_install, but it doesn't handle MAKEOPTS correctly.
+src_compile() {
+	eninja -C build/Opt
+}
+
+src_install() {
+	# DESTDIR needs to find its way into the real install script,
+	# support/install.pl.
+	export DESTDIR="${D}"
+	eninja -C build/Opt install
+}
+
+src_test() {
+	perl/polymake --script run_testcases --emacs-style \
+		|| die "test suite failed"
+}
+
+pkg_postinst() {
+	elog "Additional features for polymake are available through external"
+	elog "software such as sci-mathematics/4ti2 and sci-mathematics/topcom."
+	elog "After installing new external software run 'polymake --reconfigure'."
+}


             reply	other threads:[~2022-09-09 19:09 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-09 19:09 Michael Orlitzky [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-10-27  3:07 [gentoo-commits] repo/gentoo:master commit in: sci-mathematics/polymake/ Michael Orlitzky
2024-02-10  6:58 Ionen Wolkens
2023-07-04 22:03 Sam James
2023-05-22  1:40 Michael Orlitzky
2022-12-23 20:49 Arthur Zamarin
2022-12-21 11:45 Michael Orlitzky
2022-12-21 11:45 Michael Orlitzky
2022-12-11 11:46 Andreas K. Hüttel
2022-02-07 10:26 Jakov Smolić
2022-01-30 22:54 Michael Orlitzky
2021-12-29 13:46 Yixun Lan
2021-10-23  0:17 Michael Orlitzky
2020-06-27 20:45 Andreas K. Hüttel
2017-05-14 22:53 Patrice Clement
2017-02-18 22:41 Andreas Hüttel
2016-09-30 11:46 Thomas Kahle
2016-05-14 23:32 David Seifert
2016-05-14 23:32 David Seifert
2016-05-14 23:32 David Seifert

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=1662750432.dd5bbd01fd9a834477755d88f46b2d331f4bb6b4.mjo@gentoo \
    --to=mjo@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