public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: sci-libs/symengine/, sci-libs/symengine/files/
@ 2021-03-13  9:42 Sam James
  0 siblings, 0 replies; 3+ messages in thread
From: Sam James @ 2021-03-13  9:42 UTC (permalink / raw
  To: gentoo-commits

commit:     8a9f1302a2520b7f2dc8ec83a5546fb1a8afef0e
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Mar 13 09:13:39 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Mar 13 09:42:46 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8a9f1302

sci-libs/symengine: add 0.7.0

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sci-libs/symengine/Manifest                        |  1 +
 .../files/symengine-0.7.0-cmake-build-type.patch   | 25 +++++++
 sci-libs/symengine/symengine-0.7.0.ebuild          | 86 ++++++++++++++++++++++
 3 files changed, 112 insertions(+)

diff --git a/sci-libs/symengine/Manifest b/sci-libs/symengine/Manifest
index bf9e0f69921..8add269cb67 100644
--- a/sci-libs/symengine/Manifest
+++ b/sci-libs/symengine/Manifest
@@ -1 +1,2 @@
 DIST symengine-0.6.0.tar.gz 763481 BLAKE2B 37fe94ad08463b31c7387ab296b201a4dda821ba59dfa548d0c42e70d23958bae24df3f035bd3fffb46cc08cc010d13a25e607a9e0644e9b3c0602fa0eb363b3 SHA512 cc6f0468534e5bcd466a810d44f9884b17858ca6c7151cdcadb3af0f7d8faf0d96697d5887ab65fc9094de80df825f8243dabc54e3f5c387be544880f49b482b
+DIST symengine-0.7.0.tar.gz 802307 BLAKE2B de207f565f179deae37479eec82dfced3d83bfb7e643b4e6969135e10130dd05c888f34aa75c76c238ff1babfd0864f3329c3deee126b84ec33c4937c11dc20c SHA512 fd3198bc4a05ca2b9b8a58039cc21af65b44457f295362a1a9b8dbf9c6e3df5186c0c84b289bc9fe85d9efd5ac1a683f6b7ba9a661fb6d913d6ceefb14ee2348

diff --git a/sci-libs/symengine/files/symengine-0.7.0-cmake-build-type.patch b/sci-libs/symengine/files/symengine-0.7.0-cmake-build-type.patch
new file mode 100644
index 00000000000..f490521f5c9
--- /dev/null
+++ b/sci-libs/symengine/files/symengine-0.7.0-cmake-build-type.patch
@@ -0,0 +1,25 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index cf1d213..3067481 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -17,11 +17,6 @@ if (NOT CMAKE_BUILD_TYPE)
+     set(CMAKE_BUILD_TYPE Release
+         CACHE STRING "Build type (Debug, Release)" FORCE)
+ endif ()
+-if (NOT (CMAKE_BUILD_TYPE STREQUAL "Debug" OR
+-        CMAKE_BUILD_TYPE STREQUAL "Release"))
+-    message("${CMAKE_BUILD_TYPE}")
+-    message(FATAL_ERROR "CMAKE_BUILD_TYPE must be one of: Debug, Release (current value: '${CMAKE_BUILD_TYPE}')")
+-endif ()
+ 
+ set(BUILD_FOR_DISTRIBUTION no
+     CACHE BOOL "Building SymEngine for a distribution")
+@@ -138,7 +133,7 @@ endif()
+ try_compile(HAVE_SYMENGINE_STD_TO_STRING "${CMAKE_CURRENT_BINARY_DIR}/cxx" "${CMAKE_CURRENT_SOURCE_DIR}/cmake/checkstdtostring.cpp"
+ 	CMAKE_FLAGS "-DCOMPILE_DEFINITIONS=${CMAKE_CXX_FLAGS}")
+ 
+-if ((CMAKE_CXX_COMPILER_ID MATCHES Clang) AND (CMAKE_BUILD_TYPE STREQUAL "Release"))
++if ((CMAKE_CXX_COMPILER_ID MATCHES Clang) AND (NOT(CMAKE_BUILD_TYPE STREQUAL "Debug")))
+     try_compile(CHECK_CLANG "${CMAKE_CURRENT_BINARY_DIR}/cxx" "${CMAKE_CURRENT_SOURCE_DIR}/cmake/checkclang.cpp")
+     if (NOT ${CHECK_CLANG})
+         set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__extern_always_inline=inline" )

diff --git a/sci-libs/symengine/symengine-0.7.0.ebuild b/sci-libs/symengine/symengine-0.7.0.ebuild
new file mode 100644
index 00000000000..5a026514ef6
--- /dev/null
+++ b/sci-libs/symengine/symengine-0.7.0.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake flag-o-matic toolchain-funcs
+
+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 ~arm ~arm64 ~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 )
+	flint? ( sci-mathematics/flint:= )
+	mpc? ( dev-libs/mpc:= )
+	tcmalloc? ( dev-util/google-perftools )
+"
+DEPEND="${RDEPEND}
+	doc? ( app-doc/doxygen[dot] )
+"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-0.7.0-cmake-build-type.patch"
+)
+
+pkg_pretend() {
+	use openmp && [[ ${MERGE_TYPE} != binary ]] && tc-check-openmp
+}
+
+src_prepare() {
+	cmake_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=(
+		-DINTEGER_CLASS="${int_class}"
+		-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)"
+	)
+	use arb && mycmakeargs+=( -DARB_INCLUDE_DIR="${EPREFIX}/usr/include" )
+
+	test-flag-CXX -std=c++11 && append-cxxflags -std=c++11
+	cmake_src_configure
+}


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sci-libs/symengine/, sci-libs/symengine/files/
@ 2022-06-08  5:06 Sam James
  0 siblings, 0 replies; 3+ messages in thread
From: Sam James @ 2022-06-08  5:06 UTC (permalink / raw
  To: gentoo-commits

commit:     95cae20e05d591fbb744f6e4921e46f996811b40
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jun  8 05:05:57 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jun  8 05:06:05 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=95cae20e

sci-libs/symengine: fix pthread detection

Closes: https://bugs.gentoo.org/849803
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/symengine-0.9.0-pthread-cmake.patch      | 63 ++++++++++++++++++++++
 ...gine-0.9.0.ebuild => symengine-0.9.0-r1.ebuild} |  3 +-
 sci-libs/symengine/symengine-0.9.0.ebuild          |  1 +
 3 files changed, 66 insertions(+), 1 deletion(-)

diff --git a/sci-libs/symengine/files/symengine-0.9.0-pthread-cmake.patch b/sci-libs/symengine/files/symengine-0.9.0-pthread-cmake.patch
new file mode 100644
index 000000000000..0fa049dbf218
--- /dev/null
+++ b/sci-libs/symengine/files/symengine-0.9.0-pthread-cmake.patch
@@ -0,0 +1,63 @@
+From 6ad9620ffc578abdb920b84ea5e393c726389ac0 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Wed, 8 Jun 2022 06:02:25 +0100
+Subject: [PATCH] cmake: fix pthread detection
+
+The homebrew FindPTHREAD.cmake module was hardcoding the path to libpthread
+in the installed CMake config file which broke consumers when upgrading from
+< glibc-2.34 (e.g. glibc-2.33 -> glibc-2.34).
+
+CMake provides FindThreads which does the job fine for us. Tested with both
+glibc-2.33 (with a previously bad generated file, and then fixed) and glibc-2.35.
+
+This should be fine on musl and friends too. This brings symengine in line
+with most CMake packages.
+
+Bug: https://bugs.gentoo.org/849803
+Fixes: https://github.com/symengine/symengine/issues/1910
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -335,11 +335,10 @@ if (WITH_PIRANHA)
+ endif()
+ 
+ if (WITH_PTHREAD)
+-    find_package(PTHREAD REQUIRED)
+-    include_directories(SYSTEM ${PTHREAD_INCLUDE_DIRS})
+-    set(LIBS ${LIBS} ${PTHREAD_TARGETS})
++    find_package(Threads)
++    set(THREADS_PREFER_PTHREAD_FLAG ON)
++    set(LIBS ${LIBS} ${CMAKE_THREAD_LIBS_INIT})
+     set(HAVE_SYMENGINE_PTHREAD yes)
+-    set(PKGS ${PKGS} "PTHREAD")
+ endif()
+ 
+ if (WITH_MPFR)
+@@ -761,10 +760,6 @@ if (WITH_BOOST)
+ endif()
+ 
+ message("WITH_PTHREAD: ${WITH_PTHREAD}")
+-if (WITH_PTHREAD)
+-    message("PTHREAD_INCLUDE_DIRS: ${PTHREAD_INCLUDE_DIRS}")
+-    message("PTHREAD_LIBRARIES: ${PTHREAD_LIBRARIES}")
+-endif()
+ 
+ message("WITH_MPC: ${WITH_MPC}")
+ if (WITH_MPC)
+--- a/cmake/FindPTHREAD.cmake
++++ /dev/null
+@@ -1,14 +0,0 @@
+-include(LibFindMacros)
+-
+-libfind_include(pthread.h pthread)
+-libfind_library(pthread pthread)
+-
+-set(PTHREAD_LIBRARIES ${PTHREAD_LIBRARY})
+-set(PTHREAD_INCLUDE_DIRS ${PTHREAD_INCLUDE_DIR})
+-set(PTHREAD_TARGETS pthread)
+-
+-include(FindPackageHandleStandardArgs)
+-find_package_handle_standard_args(PTHREAD DEFAULT_MSG PTHREAD_LIBRARIES
+-    PTHREAD_INCLUDE_DIRS)
+-
+-mark_as_advanced(PTHREAD_INCLUDE_DIR PTHEARD_LIBRARY)
+

diff --git a/sci-libs/symengine/symengine-0.9.0.ebuild b/sci-libs/symengine/symengine-0.9.0-r1.ebuild
similarity index 96%
copy from sci-libs/symengine/symengine-0.9.0.ebuild
copy to sci-libs/symengine/symengine-0.9.0-r1.ebuild
index bf374c6ddaca..d0cb975cca8a 100644
--- a/sci-libs/symengine/symengine-0.9.0.ebuild
+++ b/sci-libs/symengine/symengine-0.9.0-r1.ebuild
@@ -31,7 +31,8 @@ DEPEND="${RDEPEND}
 BDEPEND="doc? ( app-doc/doxygen[dot] )"
 
 PATCHES=(
-	"${FILESDIR}/${PN}-0.7.0-cmake-build-type.patch"
+	"${FILESDIR}"/${PN}-0.7.0-cmake-build-type.patch
+	"${FILESDIR}"/${PN}-0.9.0-pthread-cmake.patch
 )
 
 pkg_pretend() {

diff --git a/sci-libs/symengine/symengine-0.9.0.ebuild b/sci-libs/symengine/symengine-0.9.0.ebuild
index bf374c6ddaca..98e672759860 100644
--- a/sci-libs/symengine/symengine-0.9.0.ebuild
+++ b/sci-libs/symengine/symengine-0.9.0.ebuild
@@ -32,6 +32,7 @@ BDEPEND="doc? ( app-doc/doxygen[dot] )"
 
 PATCHES=(
 	"${FILESDIR}/${PN}-0.7.0-cmake-build-type.patch"
+	"${FILESDIR}"/symengine-0.9.0-pthread-cmake.patch
 )
 
 pkg_pretend() {


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sci-libs/symengine/, sci-libs/symengine/files/
@ 2023-12-25  7:06 Michał Górny
  0 siblings, 0 replies; 3+ messages in thread
From: Michał Górny @ 2023-12-25  7:06 UTC (permalink / raw
  To: gentoo-commits

commit:     b9383d127d02605200977c760165bfb04552dbf5
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Mon Dec 25 07:00:16 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Dec 25 07:06:24 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b9383d12

sci-libs/symengine: Backportfix flint-3 build fix

Closes: https://bugs.gentoo.org/920645
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 .../symengine/files/symengine-0.11.1-flint-3.patch | 41 ++++++++++++++++++++++
 sci-libs/symengine/symengine-0.11.1.ebuild         |  2 ++
 2 files changed, 43 insertions(+)

diff --git a/sci-libs/symengine/files/symengine-0.11.1-flint-3.patch b/sci-libs/symengine/files/symengine-0.11.1-flint-3.patch
new file mode 100644
index 000000000000..662a4bc1bdc1
--- /dev/null
+++ b/sci-libs/symengine/files/symengine-0.11.1-flint-3.patch
@@ -0,0 +1,41 @@
+From 1ef98559d75b4fa5b87dad2daff0d12e7857ac8d Mon Sep 17 00:00:00 2001
+From: Isuru Fernando <isuruf@gmail.com>
+Date: Mon, 30 Oct 2023 20:25:05 -0500
+Subject: [PATCH] Fix flint headers and replace use of deprecated funcs in
+ flint2/3
+
+---
+ symengine/flint_wrapper.h | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/symengine/flint_wrapper.h b/symengine/flint_wrapper.h
+index 21cfcef056..ade419088f 100644
+--- a/symengine/flint_wrapper.h
++++ b/symengine/flint_wrapper.h
+@@ -6,6 +6,8 @@
+ 
+ #include <flint/fmpz.h>
+ #include <flint/fmpq.h>
++#include <flint/fmpz_poly.h>
++#include <flint/fmpz_poly_factor.h>
+ #include <flint/fmpq_poly.h>
+ 
+ namespace SymEngine
+@@ -710,13 +712,15 @@ class fmpq_poly_wrapper
+     }
+     fmpq_poly_wrapper(const mpz_t z)
+     {
++        fmpz_wrapper fz(z);
+         fmpq_poly_init(poly);
+-        fmpq_poly_set_mpz(poly, z);
++        fmpq_poly_set_fmpz(poly, fz.get_fmpz_t());
+     }
+     fmpq_poly_wrapper(const mpq_t q)
+     {
++        fmpq_wrapper fq(q);
+         fmpq_poly_init(poly);
+-        fmpq_poly_set_mpq(poly, q);
++        fmpq_poly_set_fmpq(poly, fq.get_fmpq_t());
+     }
+     fmpq_poly_wrapper(const fmpq_wrapper &q)
+     {

diff --git a/sci-libs/symengine/symengine-0.11.1.ebuild b/sci-libs/symengine/symengine-0.11.1.ebuild
index eb06f3cc27bf..63bf4d2833ef 100644
--- a/sci-libs/symengine/symengine-0.11.1.ebuild
+++ b/sci-libs/symengine/symengine-0.11.1.ebuild
@@ -38,6 +38,8 @@ BDEPEND="doc? ( app-doc/doxygen[dot] )"
 PATCHES=(
 	"${FILESDIR}"/${PN}-0.7.0-cmake-build-type.patch
 	"${FILESDIR}"/${PN}-0.8.1-fix_llvm.patch
+	# https://github.com/symengine/symengine/pull/1985
+	"${FILESDIR}"/${PN}-0.11.1-flint-3.patch
 )
 
 pkg_pretend() {


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2023-12-25  7:06 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-06-08  5:06 [gentoo-commits] repo/gentoo:master commit in: sci-libs/symengine/, sci-libs/symengine/files/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2023-12-25  7:06 Michał Górny
2021-03-13  9:42 Sam James

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox