summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Lauer <patrick@gentoo.org>2019-12-28 11:55:15 +0000
committerPatrick Lauer <patrick@gentoo.org>2019-12-28 11:56:58 +0000
commit01a6c94e2c5ea98f10d17d60a77a6ebeab9d03fb (patch)
treecd0ab219fed7cc84d84bfc9cc81c8abbbf125664 /sci-libs/symengine
parentgames-strategy/freeciv: Bump to version 2.5.12 and 2.6.1 (diff)
downloadgentoo-01a6c94e2c5ea98f10d17d60a77a6ebeab9d03fb.tar.gz
gentoo-01a6c94e2c5ea98f10d17d60a77a6ebeab9d03fb.tar.bz2
gentoo-01a6c94e2c5ea98f10d17d60a77a6ebeab9d03fb.zip
sci-libs/symengine: Bump
Add support for gmp-ecm Package-Manager: Portage-2.3.84, Repoman-2.3.20 Signed-off-by: Patrick Lauer <patrick@gentoo.org>
Diffstat (limited to 'sci-libs/symengine')
-rw-r--r--sci-libs/symengine/Manifest1
-rw-r--r--sci-libs/symengine/metadata.xml1
-rw-r--r--sci-libs/symengine/symengine-0.5.0.ebuild79
3 files changed, 81 insertions, 0 deletions
diff --git a/sci-libs/symengine/Manifest b/sci-libs/symengine/Manifest
index d09067fd889f..cdd3d1b700aa 100644
--- a/sci-libs/symengine/Manifest
+++ b/sci-libs/symengine/Manifest
@@ -1,2 +1,3 @@
DIST symengine-0.3.0.tar.gz 629813 BLAKE2B 8d611703604f10d1ed8837708fa2125c0e84d12a8513d34e5d4bd44ae55395bcaa8fda92754b538ba1ecfdcacff83d079094dda9dfca6fdcdc4cccb0702cf484 SHA512 e4a906bb1cc5159003969871711f40b3c6bfb9e38ac25258dc5797933d55374a2f201c8a89e9af48821b24cc54408d4feb70f6de421e0a9fbf766d2b35846b83
DIST symengine-0.4.0.tar.gz 753664 BLAKE2B c6296ceef20cfbb16803adc3c623429cf417c639d45d8cad742c3f7cf9d8171f22fb72e168cd07a6a705726a09133866fa497e2092ec4885ae4462d55adc416e SHA512 162c4bb4c67e2f21a0a113726d7b0ad00cc3e80db0534e95109a41894dcd05ca03a3be39d1a56a336b4bb7926dadad72fbe6705c71df3448db99fde20139ad11
+DIST symengine-0.5.0.tar.gz 761321 BLAKE2B ddff0e756188f375e966b92e6e7796936b8b6fe1a884c036066dc09d46183f157761c9813fe27366e625b7cc070381332964a12f14617be66b0f38f536c0518d SHA512 0b94b531f71adf9129440e0664a5b5ce23453de6c8d22ed385958b38cda9bc2b356a0182a80076f47b217e9f6b5a57f059b040fddf7d69694d5bd5857b0a046b
diff --git a/sci-libs/symengine/metadata.xml b/sci-libs/symengine/metadata.xml
index 63672cfa6a09..759e5c9c0a48 100644
--- a/sci-libs/symengine/metadata.xml
+++ b/sci-libs/symengine/metadata.xml
@@ -17,6 +17,7 @@
<flag name="arb">Add support for arb (<pkg>sci-mathematics/arb</pkg>)</flag>
<flag name="benchmarks">Build benchmarks</flag>
<flag name="boost">Add support for boost integers(<pkg>dev-libs/boost</pkg>)</flag>
+ <flag name="ecm">Add support for ECM integer factorization library (<pkg>sci-mathematics/gmp-ecm</pkg>)</flag>
<flag name="flint">Add support for (<pkg>sci-mathematics/flint</pkg>)</flag>
<flag name="llvm">Build with LLVM</flag>
<flag name="mpc">Add support for multiprecision complex arithmetic(<pkg>dev-libs/mpc</pkg>)</flag>
diff --git a/sci-libs/symengine/symengine-0.5.0.ebuild b/sci-libs/symengine/symengine-0.5.0.ebuild
new file mode 100644
index 000000000000..725e60e3d7f9
--- /dev/null
+++ b/sci-libs/symengine/symengine-0.5.0.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake-utils flag-o-matic
+
+DESCRIPTION="Fast symbolic manipulation library, written in C++"
+HOMEPAGE="https://github.com/sympy/symengine"
+SRC_URI="https://github.com/sympy/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/0.4"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="arb benchmarks boost debug doc ecm flint llvm mpc mpfr openmp test tcmalloc threads"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-libs/gmp:=
+ sys-libs/binutils-libs:=
+ arb? ( sci-mathematics/arb:= )
+ boost? ( dev-libs/boost:= )
+ ecm? ( sci-mathematics/gmp-ecm )
+ mpc? ( dev-libs/mpc:= )
+ tcmalloc? ( dev-util/google-perftools )
+"
+DEPEND="${RDEPEND}
+ doc? ( app-doc/doxygen[dot] )
+"
+
+pkg_pretend() {
+ use openmp && [[ ${MERGE_TYPE} != binary ]] && tc-check-openmp
+}
+
+src_prepare() {
+ cmake-utils_src_prepare
+ sed -e "s|DESTINATION doc| DESTINATION share/doc/${PF}/html|" \
+ -e "s|/lib|/$(get_libdir)|g" \
+ -e "s|lib/|$(get_libdir)/|g" \
+ -e "/DESTINATION/s|lib|$(get_libdir)|g" \
+ -i CMakeLists.txt symengine/CMakeLists.txt \
+ symengine/utilities/teuchos/CMakeLists.txt || die
+}
+
+src_configure() {
+ # not in portage yet: piranha
+ local int_class
+ if use arb || use flint; then
+ int_class=flint
+ elif use mpfr; then
+ int_class=gmpxx
+ elif use boost; then
+ int_class=boostmp
+ else
+ int_class=gmp
+ fi
+ local mycmakeargs=(
+ -DARB_INCLUDE_DIR="${EPREFIX}/usr/include"
+ -DINTEGER_CLASS="${int_class}"
+ -DBUILD_SHARED_LIBS=ON
+ -DBUILD_BENCHMARKS="$(usex benchmarks)"
+ -DBUILD_DOXYGEN="$(usex doc)"
+ -DBUILD_TESTS="$(usex test)"
+ -DWITH_ARB="$(usex arb)"
+ -DWITH_BFD="$(usex debug)"
+ -DWITH_SYMENGINE_ASSERT="$(usex debug)"
+ -DWITH_SYMENGINE_THREAD_SAFE="$(usex threads)"
+ -DWITH_FLINT="$(usex flint)"
+ -DWITH_OPENMP="$(usex openmp)"
+ -DWITH_MPFR="$(usex mpfr)"
+ -DWITH_MPC="$(usex mpc)"
+ -DWITH_LLVM="$(usex llvm)"
+ -DWITH_PTHREAD="$(usex threads)"
+ -DWITH_TCMALLOC="$(usex tcmalloc)"
+ -DWITH_ECM="$(usex ecm)"
+ )
+ test-flag-CXX -std=c++11 && append-cxxflags -std=c++11
+ CMAKE_BUILD_TYPE=Release cmake-utils_src_configure
+}