summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sci-libs/symengine/Manifest1
-rw-r--r--sci-libs/symengine/files/symengine-0.7.0-cmake-build-type.patch25
-rw-r--r--sci-libs/symengine/files/symengine-0.8.1-fix_llvm.patch68
-rw-r--r--sci-libs/symengine/symengine-0.13.0.ebuild111
4 files changed, 0 insertions, 205 deletions
diff --git a/sci-libs/symengine/Manifest b/sci-libs/symengine/Manifest
index b1b6ae8fcacb..157d7b868070 100644
--- a/sci-libs/symengine/Manifest
+++ b/sci-libs/symengine/Manifest
@@ -1,2 +1 @@
-DIST symengine-0.13.0.gh.tar.gz 942757 BLAKE2B 9c7e1a067fd2baff0c6fc360b1512f04ee0c77c1f408180c2384b29aac1feecc56bcd0453afce402c6963c2fc638202f623592eb5c0bcdf0a1715056e8fec425 SHA512 3d64149b507be586daabad4b9a99436b0d329b16b89db756c9a72812b37049199c0be1ed77b18d55063a6445d04bf44120e7afd90a961aebbc89df815e52ed5d
DIST symengine-0.14.0.gh.tar.gz 944589 BLAKE2B f5c52080153f548e866aa98afee6296888b020b633b7738109fa839b7fd70cda5059c079ba119604571060639b33d46692818d99d8c7b9a371a59efd14eb9dce SHA512 2b6012ed65064ff81c8828032c5a3148340582274e3604db2a43797ddbaa191520ed97da41efc2e842ba4a25326f53becc51f1e98935e8c34625bc5eaac8397f
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
deleted file mode 100644
index f490521f5c92..000000000000
--- a/sci-libs/symengine/files/symengine-0.7.0-cmake-build-type.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-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/files/symengine-0.8.1-fix_llvm.patch b/sci-libs/symengine/files/symengine-0.8.1-fix_llvm.patch
deleted file mode 100644
index 810e2ac766d7..000000000000
--- a/sci-libs/symengine/files/symengine-0.8.1-fix_llvm.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-From: Matthias Maier <tamiko@43-1.org>
-Date: Sat, 11 Jun 2022 01:44:54 -0500
-Subject: [PATCH] Fix cmake configure for shared LLVM libraries
-
-Gentoo builds LLVM into a combined shared library. The CMake
-configuration shipped with LLVM is evidently broken in this case, see
-
- https://github.com/llvm/llvm-project/issues/34593
- https://bugs.gentoo.org/745915
-
-We work around this issue by simply linking against the monolithic
-"LLVM" target.
----
- CMakeLists.txt | 23 +----------------------
- 1 file changed, 1 insertion(+), 22 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index cf5ab3b..dfa6605 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -402,28 +402,7 @@ if (WITH_LLVM)
- endforeach()
- set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -DNDEBUG")
-
-- llvm_map_components_to_libnames(llvm_libs_direct ${SYMENGINE_LLVM_COMPONENTS})
-- llvm_expand_dependencies(llvm_libs ${llvm_libs_direct})
--
-- if (BUILD_SHARED_LIBS)
-- set(SYMENGINE_LLVM_LINK_DOWNSTREAM_DEFAULT False)
-- foreach(LLVM_LIB ${llvm_libs})
-- get_target_property(${LLVM_LIB}_IMPORT_LOCATION ${LLVM_LIB} LOCATION)
-- if (NOT "${${LLVM_LIB}_IMPORT_LOCATION}" MATCHES "NOTFOUND")
-- if (NOT "${${LLVM_LIB}_IMPORT_LOCATION}" MATCHES ".a$|.lib$")
-- set(SYMENGINE_LLVM_LINK_DOWNSTREAM_DEFAULT True)
-- endif()
-- endif()
-- endforeach()
-- else()
-- set(SYMENGINE_LLVM_LINK_DOWNSTREAM_DEFAULT True)
-- endif()
-- set(SYMENGINE_LLVM_LINK_DOWNSTREAM ${SYMENGINE_LLVM_LINK_DOWNSTREAM_DEFAULT}
-- CACHE INTERNAL "Link to llvm in SymEngineConfig.cmake")
-- if (NOT SYMENGINE_LLVM_LINK_DOWNSTREAM)
-- unset(SYMENGINE_LLVM_COMPONENTS)
-- endif ()
-- set(LIBS ${LIBS} ${llvm_libs})
-+ set(LIBS ${LIBS} LLVM)
- include_directories(SYSTEM ${LLVM_INCLUDE_DIRS})
- set(HAVE_SYMENGINE_LLVM yes)
- set(PKGS ${PKGS} "LLVM")
-diff --git a/cmake/SymEngineConfig.cmake.in b/cmake/SymEngineConfig.cmake.in
-index b01ef9b..6d82c10 100644
---- a/cmake/SymEngineConfig.cmake.in
-+++ b/cmake/SymEngineConfig.cmake.in
-@@ -67,9 +67,7 @@ set(SYMENGINE_LLVM_COMPONENTS @SYMENGINE_LLVM_COMPONENTS@)
-
- if (NOT "${SYMENGINE_LLVM_COMPONENTS}" STREQUAL "")
- find_package(LLVM REQUIRED ${SYMENGINE_LLVM_COMPONENTS} HINTS @LLVM_DIR@)
-- llvm_map_components_to_libnames(llvm_libs_direct ${SYMENGINE_LLVM_COMPONENTS})
-- llvm_expand_dependencies(llvm_libs ${llvm_libs_direct})
-- set(SYMENGINE_LIBRARIES ${SYMENGINE_LIBRARIES} ${llvm_libs})
-+ set(SYMENGINE_LIBRARIES ${SYMENGINE_LIBRARIES} LLVM)
- else()
- set(SYMENGINE_LLVM_INCLUDE_DIRS)
- endif()
---
-2.35.1
-
diff --git a/sci-libs/symengine/symengine-0.13.0.ebuild b/sci-libs/symengine/symengine-0.13.0.ebuild
deleted file mode 100644
index 589a31fdb9af..000000000000
--- a/sci-libs/symengine/symengine-0.13.0.ebuild
+++ /dev/null
@@ -1,111 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-LLVM_COMPAT=( {18..20} )
-LLVM_OPTIONAL=1
-
-inherit cmake llvm-r2 toolchain-funcs
-
-DESCRIPTION="Fast symbolic manipulation library, written in C++"
-HOMEPAGE="https://github.com/symengine/symengine/"
-SRC_URI="
- https://github.com/symengine/${PN}/archive/v${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="MIT"
-SLOT="0/$(ver_cut 1-2)"
-KEYWORDS="amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
-IUSE="
- boost debug ecm +flint llvm +mpc +mpfr openmp primesieve tcmalloc
- test
-"
-REQUIRED_USE="
- boost? ( !flint !mpc !mpfr )
- llvm? ( ${LLVM_REQUIRED_USE} )
- mpc? ( mpfr )
-"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- boost? ( dev-libs/boost:= )
- !boost? ( dev-libs/gmp:= )
- debug? ( sys-libs/binutils-libs:= )
- ecm? ( sci-mathematics/gmp-ecm:= )
- flint? ( sci-mathematics/flint:= )
- mpc? ( dev-libs/mpc:= )
- mpfr? ( dev-libs/mpfr:= )
- llvm? ( $(llvm_gen_dep 'llvm-core/llvm:${LLVM_SLOT}=') )
- primesieve? ( sci-mathematics/primesieve:= )
- tcmalloc? ( dev-util/google-perftools )
-"
-DEPEND="
- ${RDEPEND}
- dev-libs/cereal
-"
-
-PATCHES=(
- # TODO: upstream
- "${FILESDIR}"/${PN}-0.7.0-cmake-build-type.patch
- # TODO: make a proper patch for upstream
- "${FILESDIR}"/${PN}-0.8.1-fix_llvm.patch
-)
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-pkg_setup() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-src_configure() {
- local int_class
-
- if 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
-
- einfo "Building with integer class: ${int_class}"
-
- local mycmakeargs=(
- -DINSTALL_CMAKE_DIR="${EPREFIX}/usr/$(get_libdir)/cmake/symengine"
- -DINTEGER_CLASS=${int_class}
- # not installed
- -DBUILD_BENCHMARKS=OFF
- # broken with out-of-tree builds
- -DBUILD_DOXYGEN=OFF
- -DBUILD_TESTS=$(usex test)
- # -DWITH_ARB provided by flint >= 2
- -DWITH_BFD=$(usex debug)
- -DWITH_ECM=$(usex ecm)
- -DWITH_FLINT=$(usex flint)
- -DWITH_LLVM=$(usex llvm)
- -DWITH_MPC=$(usex mpc)
- -DWITH_MPFR=$(usex mpfr)
- -DWITH_OPENMP=$(usex openmp)
- -DWITH_PRIMESIEVE=$(usex primesieve)
- -DWITH_PTHREAD=ON
- -DWITH_SYMENGINE_ASSERT=$(usex debug)
- -DWITH_SYMENGINE_THREAD_SAFE=ON
- -DWITH_SYSTEM_CEREAL=ON
- # TODO: package it
- # -DWITH_SYSTEM_FASTFLOAT=ON
- -DWITH_TCMALLOC=$(usex tcmalloc)
- )
- if use llvm; then
- mycmakeargs+=(
- -DLLVM_ROOT="$(get_llvm_prefix -d)"
- )
- fi
-
- cmake_src_configure
-}