From 8d2964fdf402663479fe8b1e969f753c0d075ad6 Mon Sep 17 00:00:00 2001 From: andreili Date: Tue, 24 Oct 2023 00:40:04 +0200 Subject: [PATCH] Update to latest stable releases. Signed-off-by: andreili --- dev-cpp/abseil-cpp/Manifest | 3 + .../abseil-cpp/abseil-cpp-20230802.0.ebuild | 74 +++++ .../files/abseil-cpp-20230802.0.patch | 49 +++ dev-cpp/or-tools/Manifest | 1 - dev-cpp/or-tools/or-tools-9999.ebuild | 36 --- dev-libs/protobuf/Manifest | 3 + dev-libs/protobuf/files/protobuf-v24.4.patch | 71 +++++ dev-libs/protobuf/protobuf-24.4.ebuild | 102 ++++++ dev-libs/re2/Manifest | 2 + dev-libs/re2/re2-0.2023.08.01.ebuild | 52 +++ profiles/categories | 1 + sci-electronics/xschem/Manifest | 4 +- sci-electronics/xschem/xschem-3.4.3.ebuild | 1 + sci-electronics/xschem/xschem-9999.ebuild | 13 +- sci-electronics/xyce/Manifest | 7 +- sci-electronics/xyce/files/build_fix.patch | 25 ++ ...nstall_fix.patch => install_fix-7.7.patch} | 70 +---- sci-electronics/xyce/xyce-7.7.ebuild | 1 + sci-electronics/xyce/xyce-9999.ebuild | 20 +- sci-libs/or-tools/Manifest | 4 + sci-libs/or-tools/files/latest_fix.patch | 12 + sci-libs/or-tools/or-tools-9.7.ebuild | 1 + sci-libs/or-tools/or-tools-9999.ebuild | 89 ++++++ sci-libs/trilinos/Manifest | 4 +- sci-libs/trilinos/trilinos-14.2.0.ebuild | 3 +- sci-libs/trilinos/trilinos-14.4.0.ebuild | 296 ++++++++++++++++++ 26 files changed, 833 insertions(+), 111 deletions(-) create mode 100644 dev-cpp/abseil-cpp/Manifest create mode 100644 dev-cpp/abseil-cpp/abseil-cpp-20230802.0.ebuild create mode 100644 dev-cpp/abseil-cpp/files/abseil-cpp-20230802.0.patch delete mode 100644 dev-cpp/or-tools/Manifest delete mode 100644 dev-cpp/or-tools/or-tools-9999.ebuild create mode 100644 dev-libs/protobuf/Manifest create mode 100644 dev-libs/protobuf/files/protobuf-v24.4.patch create mode 100644 dev-libs/protobuf/protobuf-24.4.ebuild create mode 100644 dev-libs/re2/Manifest create mode 100644 dev-libs/re2/re2-0.2023.08.01.ebuild create mode 120000 sci-electronics/xschem/xschem-3.4.3.ebuild create mode 100644 sci-electronics/xyce/files/build_fix.patch rename sci-electronics/xyce/files/{install_fix.patch => install_fix-7.7.patch} (56%) create mode 120000 sci-electronics/xyce/xyce-7.7.ebuild create mode 100644 sci-libs/or-tools/Manifest create mode 100644 sci-libs/or-tools/files/latest_fix.patch create mode 120000 sci-libs/or-tools/or-tools-9.7.ebuild create mode 100644 sci-libs/or-tools/or-tools-9999.ebuild create mode 100644 sci-libs/trilinos/trilinos-14.4.0.ebuild diff --git a/dev-cpp/abseil-cpp/Manifest b/dev-cpp/abseil-cpp/Manifest new file mode 100644 index 0000000..5c3cf30 --- /dev/null +++ b/dev-cpp/abseil-cpp/Manifest @@ -0,0 +1,3 @@ +AUX abseil-cpp-20230802.0.patch 1478 BLAKE2B 89cde5e46f8b26a798c13f03cb48cd5d13821144835e4eb6196443f464175bc494e6f6fba1f0e53543a05fbf5ea4abafb658e60a406374f12a932821145e1457 SHA512 4eafc3a137fb9fc71a8f15bed308f6a3544e367e44168a34a80148b1f17dda16f9c9b573dcf8bb6d801ee97c5c3dcb017379a4a671a54fb4c05b6cac26a4a4fb +DIST abseil-cpp-20230802.0.tar.gz 2156669 BLAKE2B 34de2f949db3e7578cae39bdd851785fd5327a80662436e7d77f18e196cc28eb1b463e9f49c8fc66060073c6c88222015af8b41044d56af6811c8914e84fbea3 SHA512 320295fa687ded05b774741eb4c5285291d44cc14402ec5d997057cb4f53fb3ba54cd162c7a7b1003312b677603a1c25e14bfdbd1fc22ccf4b4443e8a6e3ec02 +EBUILD abseil-cpp-20230802.0.ebuild 2110 BLAKE2B df05b048a65b50edfa12c22cf9f76b37bb60333d6f56846f79212ca1752e293228852cdcb089d0e3f48fba390fe628f37fb6373e1d2525e2e677d7b81600eda0 SHA512 4d33f250672bcd16ce168412ed3a7dcb85e2ee948dd01dc2b06c065e0fc2aa95ec4c66cd9cba67c0c3572f146bf5fbeaeba79b2cf47c8f97fd77e310245dff1b diff --git a/dev-cpp/abseil-cpp/abseil-cpp-20230802.0.ebuild b/dev-cpp/abseil-cpp/abseil-cpp-20230802.0.ebuild new file mode 100644 index 0000000..d955e86 --- /dev/null +++ b/dev-cpp/abseil-cpp/abseil-cpp-20230802.0.ebuild @@ -0,0 +1,74 @@ +# Copyright 2020-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} ) + +inherit cmake-multilib python-any-r1 + +DESCRIPTION="Abseil Common Libraries (C++), LTS Branch" +HOMEPAGE="https://abseil.io/" +SRC_URI="https://github.com/abseil/abseil-cpp/archive/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0/${PV%%.*}" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~sparc ~x86" +IUSE="test" + +DEPEND="" +RDEPEND="${DEPEND}" + +BDEPEND=" + ${PYTHON_DEPS} + test? ( + >=dev-cpp/gtest-1.13.0 + sys-libs/timezone-data + ) +" + +PATCHES=( + ${FILESDIR}/abseil-cpp-20230802.0.patch +) + +RESTRICT="!test? ( test )" + +src_prepare() { + cmake_src_prepare + + # un-hardcode abseil compiler flags + sed -i \ + -e '/"-maes",/d' \ + -e '/"-msse4.1",/d' \ + -e '/"-mfpu=neon"/d' \ + -e '/"-march=armv8-a+crypto"/d' \ + absl/copts/copts.py || die + # Starting with abseil-2023xxyy abseil will start to delegate various absl:: types + # to their std:: equivalents by default when built with >=std=c++17. + # This older release still defaults to creating an absl/base/options.h file where this + # delegation is configured to happen at build time, creating ABI problems for consumers. + # In order to be consistent with future releases we therefore enforce the delegation to + # std::* implementations in this release as well. + sed -i -r -e 's/ABSL_OPTION_USE_STD_(.*) 2/ABSL_OPTION_USE_STD_\1 1/g' \ + absl/base/options.h || die + + # now generate cmake files + python_fix_shebang absl/copts/generate_copts.py + absl/copts/generate_copts.py || die +} + +multilib_src_configure() { + local mycmakeargs=( + # We use -std=c++14 here so that abseil-cpp's string_view is used + # See the discussion in https://github.com/gentoo/gentoo/pull/32281. + -DCMAKE_CXX_STANDARD=17 + -DABSL_ENABLE_INSTALL=TRUE + -DABSL_USE_EXTERNAL_GOOGLETEST=ON + -DABSL_PROPAGATE_CXX_STD=TRUE + -DABSL_BUILD_TEST_HELPERS=$(usex test ON OFF) + -DABSL_BUILD_TESTING=$(usex test ON OFF) + $(usex test -DBUILD_TESTING=ON '') # intentional usex, it used both variables for tests. + ) + + cmake_src_configure +} diff --git a/dev-cpp/abseil-cpp/files/abseil-cpp-20230802.0.patch b/dev-cpp/abseil-cpp/files/abseil-cpp-20230802.0.patch new file mode 100644 index 0000000..98d5fb3 --- /dev/null +++ b/dev-cpp/abseil-cpp/files/abseil-cpp-20230802.0.patch @@ -0,0 +1,49 @@ +diff --git a/CMake/AbseilDll.cmake b/CMake/AbseilDll.cmake +index f0d984ae..9134696d 100644 +--- a/CMake/AbseilDll.cmake ++++ b/CMake/AbseilDll.cmake +@@ -624,23 +624,33 @@ set(ABSL_INTERNAL_TEST_DLL_TARGETS + + include(CheckCXXSourceCompiles) + +-check_cxx_source_compiles( +- [==[ +-#ifdef _MSC_VER +-# if _MSVC_LANG < 201700L +-# error "The compiler defaults or is configured for C++ < 17" +-# endif +-#elif __cplusplus < 201700L +-# error "The compiler defaults or is configured for C++ < 17" +-#endif +-int main() { return 0; } +-]==] ++message(WARNING "ABSL_CXX_STANDARD: ${ABSL_CXX_STANDARD}") ++message(WARNING "CMAKE_CXX_STANDARD: ${CMAKE_CXX_STANDARD}") ++message(WARNING "CMAKE_CXX_STANDARD_REQUIRED: ${CMAKE_CXX_STANDARD_REQUIRED}") ++message(WARNING "CMAKE_CXX_FLAGS: ${CMAKE_CXX_FLAGS}") ++ ++if(CMAKE_CXX_STANDARD GREATER_EQUAL 17) ++ set(ABSL_INTERNAL_AT_LEAST_CXX17 TRUE) ++else() ++ check_cxx_source_compiles( ++ [==[ ++ #ifdef _MSC_VER ++ # if _MSVC_LANG < 201700L ++ # error "The compiler defaults or is configured for C++ < 17" ++ # endif ++ #elif __cplusplus < 201700L ++ # error "The compiler defaults or is configured for C++ < 17" ++ #endif ++ int main() { return 0; } ++ ]==] + ABSL_INTERNAL_AT_LEAST_CXX17) ++endif() + + if(ABSL_INTERNAL_AT_LEAST_CXX17) + set(ABSL_INTERNAL_CXX_STD_FEATURE cxx_std_17) + else() + set(ABSL_INTERNAL_CXX_STD_FEATURE cxx_std_14) ++ message(FATAL_ERROR "Should not pass here !!!") + endif() + + function(absl_internal_dll_contains) diff --git a/dev-cpp/or-tools/Manifest b/dev-cpp/or-tools/Manifest deleted file mode 100644 index cc7bcbb..0000000 --- a/dev-cpp/or-tools/Manifest +++ /dev/null @@ -1 +0,0 @@ -EBUILD or-tools-9999.ebuild 652 BLAKE2B 40b9a246d71cd9d708d99d1a0a3afb9006260005577b68abd6afb4e5442306825d428f3cc2c365b8f099990873b4d732d4607b16bdcd7a32fd3fc052afb22dc1 SHA512 b2654321531a0c50a68522ca61bdba7132f33b92b52b4c2954e71f2c66d7003050df719572ce0cb0e2dd2ccba556836d7d8937515e309acd58bf5f4b8a4750c3 diff --git a/dev-cpp/or-tools/or-tools-9999.ebuild b/dev-cpp/or-tools/or-tools-9999.ebuild deleted file mode 100644 index 5a4075d..0000000 --- a/dev-cpp/or-tools/or-tools-9999.ebuild +++ /dev/null @@ -1,36 +0,0 @@ -EAPI=8 - -PYTHON_COMPAT=( python3_{10..11} ) -inherit cmake python-any-r1 git-r3 - -DESCRIPTION="Google Optimization Tools" - -#SRC_URI="https://github.com/The-OpenROAD-Project/OpenROAD/archive/refs/tags/v${PV}.tar.gz" -#S="${WORKDIR}/OpenROAD-${PV}" -EGIT_REPO_URI="https://github.com/google/or-tools.git" -EGIT_SUBMODULES=( '*' ) - -KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86" -SLOT="0" -IUSE="" - -DEPEND=" - dev-libs/protobuf - dev-cpp/abseil-cpp - dev-libs/re2 - sci-libs/coinor-cbc -" -RDEPEND=" - ${DEPEND} -" -BDEPEND=" - dev-util/cmake -" - -src_configure() { - local mycmakeargs=( - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/" - -DUSE_SCIP=OFF - ) - cmake_src_configure -} diff --git a/dev-libs/protobuf/Manifest b/dev-libs/protobuf/Manifest new file mode 100644 index 0000000..01bee42 --- /dev/null +++ b/dev-libs/protobuf/Manifest @@ -0,0 +1,3 @@ +AUX protobuf-v24.4.patch 2796 BLAKE2B f545535a428fbd81f606effb633bb7c70cdf1332324532e9c721174aec34c87cd780276e2efa11645395562c179292681d461eb21bdc7508bf1b217fb39ae8f8 SHA512 608fe40a35628ce93f4cfc204837a89668c582ac2ad43b3839c9e63c94daaa6aaac0c8bbbb4d64ac56848f1ea177e0d6d55921f999d87f4ddc483fa86d15337a +DIST protobuf-24.4.tar.gz 5180235 BLAKE2B 1c7e9035d9f3810886baaea7d679414c882463c79828c99dd8895a9549638c1ca17f9ab3b38d461019f3e1412d9cb9584b995b1da99866eb6fdbb8bdeb063e6f SHA512 52b6ab5587d03cbd1f35cf3cdc388e1710fa50f3031559ac53cf754965407ded7602cdead56080444ab695588112cc3391a1d7fdd5e565d90d0af7ad08706315 +EBUILD protobuf-24.4.ebuild 2443 BLAKE2B 9f4ad69a94546d9cde18ad6f1448e005e8789d6ace13777f91b1326184bcdd0edb33684d3fe72bb04133014f2a747233f4652ef51a14395429f6b89e480021ac SHA512 78ab823376a2c9e341eb63e770ac43956f931f645bfae79c61fe77d5fa3a421020abb2107745aa695370d8e6ea952cf0840ed03b9c7fe1f17719c25ba042a851 diff --git a/dev-libs/protobuf/files/protobuf-v24.4.patch b/dev-libs/protobuf/files/protobuf-v24.4.patch new file mode 100644 index 0000000..f22c617 --- /dev/null +++ b/dev-libs/protobuf/files/protobuf-v24.4.patch @@ -0,0 +1,71 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index ac0d03c3a..ac8aee8a7 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -41,7 +41,7 @@ else (BUILD_SHARED_LIBS) + endif (BUILD_SHARED_LIBS) + option(protobuf_BUILD_SHARED_LIBS "Build Shared Libraries" ${protobuf_BUILD_SHARED_LIBS_DEFAULT}) + include(CMakeDependentOption) +-cmake_dependent_option(protobuf_MSVC_STATIC_RUNTIME "Link static runtime libraries" ON ++cmake_dependent_option(protobuf_MSVC_STATIC_RUNTIME "Link static runtime libraries" OFF + "NOT protobuf_BUILD_SHARED_LIBS" OFF) + set(protobuf_WITH_ZLIB_DEFAULT ON) + option(protobuf_WITH_ZLIB "Build with zlib support" ${protobuf_WITH_ZLIB_DEFAULT}) +@@ -158,24 +158,16 @@ endif() + + set(_protobuf_FIND_ZLIB) + if (protobuf_WITH_ZLIB) +- find_package(ZLIB) +- if (ZLIB_FOUND) +- set(HAVE_ZLIB 1) +- # FindZLIB module define ZLIB_INCLUDE_DIRS variable +- # Set ZLIB_INCLUDE_DIRECTORIES for compatible +- set(ZLIB_INCLUDE_DIRECTORIES ${ZLIB_INCLUDE_DIRECTORIES} ${ZLIB_INCLUDE_DIRS}) +- # Using imported target if exists +- if (TARGET ZLIB::ZLIB) +- set(ZLIB_LIBRARIES ZLIB::ZLIB) +- set(_protobuf_FIND_ZLIB "if(NOT ZLIB_FOUND)\n find_package(ZLIB)\nendif()") +- endif (TARGET ZLIB::ZLIB) +- else (ZLIB_FOUND) +- set(HAVE_ZLIB 0) +- # Explicitly set these to empty (override NOT_FOUND) so cmake doesn't +- # complain when we use them later. +- set(ZLIB_INCLUDE_DIRECTORIES) +- set(ZLIB_LIBRARIES) +- endif (ZLIB_FOUND) ++ if (NOT TARGET ZLIB::ZLIB) ++ find_package(ZLIB REQUIRED) ++ endif() ++ set(HAVE_ZLIB 1) ++ # FindZLIB module define ZLIB_INCLUDE_DIRS variable ++ # Set ZLIB_INCLUDE_DIRECTORIES for compatible ++ set(ZLIB_INCLUDE_DIRECTORIES ${ZLIB_INCLUDE_DIRECTORIES} ${ZLIB_INCLUDE_DIRS}) ++ # Using imported target if exists ++ set(ZLIB_LIBRARIES ZLIB::ZLIB) ++ set(_protobuf_FIND_ZLIB "if(NOT ZLIB_FOUND AND NOT TARGET ZLIB::ZLIB)\n find_package(ZLIB REQUIRED)\nendif()") + endif (protobuf_WITH_ZLIB) + + # We need to link with libatomic on systems that do not have builtin atomics, or +@@ -277,7 +269,6 @@ else (MSVC) + endif (MSVC) + + include_directories( +- ${ZLIB_INCLUDE_DIRECTORIES} + ${protobuf_BINARY_DIR} + ${protobuf_SOURCE_DIR}/src) + +diff --git a/cmake/libprotobuf.cmake b/cmake/libprotobuf.cmake +index 422754a1a..ea91898d5 100644 +--- a/cmake/libprotobuf.cmake ++++ b/cmake/libprotobuf.cmake +@@ -26,7 +26,9 @@ endif() + if(${CMAKE_SYSTEM_NAME} STREQUAL "Android") + target_link_libraries(libprotobuf PRIVATE log) + endif() +-target_include_directories(libprotobuf PUBLIC ${protobuf_SOURCE_DIR}/src) ++target_include_directories(libprotobuf PUBLIC ++ ${protobuf_SOURCE_DIR}/src ++ ${protobuf_SOURCE_DIR}) + target_link_libraries(libprotobuf PUBLIC ${protobuf_ABSL_USED_TARGETS}) + protobuf_configure_target(libprotobuf) + if(protobuf_BUILD_SHARED_LIBS) diff --git a/dev-libs/protobuf/protobuf-24.4.ebuild b/dev-libs/protobuf/protobuf-24.4.ebuild new file mode 100644 index 0000000..25abba7 --- /dev/null +++ b/dev-libs/protobuf/protobuf-24.4.ebuild @@ -0,0 +1,102 @@ +# Copyright 2008-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake-multilib elisp-common toolchain-funcs + +if [[ "${PV}" == *9999 ]]; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/protocolbuffers/protobuf.git" + EGIT_SUBMODULES=() +else + SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~x64-macos" +fi + +DESCRIPTION="Google's Protocol Buffers - Extensible mechanism for serializing structured data" +HOMEPAGE="https://protobuf.dev/" + +LICENSE="BSD" +SLOT="0/$(ver_cut 1-2).0" +IUSE="emacs examples test zlib" +RESTRICT="!test? ( test )" + +BDEPEND="emacs? ( app-editors/emacs:* )" +DEPEND=" + >=dev-cpp/abseil-cpp-20230125.3:=[${MULTILIB_USEDEP}] + zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] ) + test? ( >=dev-cpp/gtest-1.9[${MULTILIB_USEDEP}] ) +" +RDEPEND=" + >=dev-cpp/abseil-cpp-20230125.3:=[${MULTILIB_USEDEP}] + emacs? ( app-editors/emacs:* ) + zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] ) +" + +PATCHES=( + ${FILESDIR}/protobuf-v24.4.patch +) + +DOCS=( CONTRIBUTORS.txt README.md ) + +src_configure() { + if tc-ld-is-gold; then + # https://sourceware.org/bugzilla/show_bug.cgi?id=24527 + tc-ld-disable-gold + fi + + cmake-multilib_src_configure +} + +multilib_src_configure() { + local mycmakeargs=( + -Dprotobuf_DISABLE_RTTI=ON + -Dprotobuf_BUILD_EXAMPLES=$(usex examples) + -Dprotobuf_WITH_ZLIB=$(usex zlib) + -Dprotobuf_BUILD_TESTS=$(usex test) + -Dprotobuf_ABSL_PROVIDER=package + ) + use test && mycmakeargs+=(-Dprotobuf_USE_EXTERNAL_GTEST=ON) + + cmake_src_configure +} + +src_compile() { + cmake-multilib_src_compile + + if use emacs; then + elisp-compile editors/protobuf-mode.el + fi +} + +multilib_src_install_all() { + find "${ED}" -name "*.la" -delete || die + + if [[ ! -f "${ED}/usr/$(get_libdir)/libprotobuf.so.${SLOT#*/}" ]]; then + eerror "No matching library found with SLOT variable, currently set: ${SLOT}\n" \ + "Expected value: ${ED}/usr/$(get_libdir)/libprotobuf.so.${SLOT#*/}" + die "Please update SLOT variable" + fi + + if use emacs; then + elisp-install ${PN} editors/protobuf-mode.el* + elisp-site-file-install "${FILESDIR}/70${PN}-gentoo.el" + fi + + if use examples; then + DOCS+=(examples) + docompress -x /usr/share/doc/${PF}/examples + fi + + einstalldocs +} + +pkg_postinst() { + use emacs && elisp-site-regen +} + +pkg_postrm() { + use emacs && elisp-site-regen +} diff --git a/dev-libs/re2/Manifest b/dev-libs/re2/Manifest new file mode 100644 index 0000000..3e76386 --- /dev/null +++ b/dev-libs/re2/Manifest @@ -0,0 +1,2 @@ +DIST re2-2023-08-01.tar.gz 396553 BLAKE2B 4e9eed4d7be9e6ea0467099323293d95d5f0db80a9d8fc996e20aebf87d800b548eb0f526c3966843adac5da5568acc731cb8296101f5030cc36b26c1ef42ca6 SHA512 33703f87dbb359e481c46fd97977d420a9f0f3d4b378b8a0ecdec60d3c7b237d941b37780101f229c5e4785898a208963616a390d6c01d849c455716eae85106 +EBUILD re2-0.2023.08.01.ebuild 1360 BLAKE2B c05651d26792e5526440b0add5639cde5097c04e97209a64635a470094811340e70d5bbb776326a06935f8692c3e8f0ea9c6b867f92ccfbf2c6adaa5d2c59aa3 SHA512 100dfdc937b12a46a7270aa1847f2d9df104a58e857c9233784902024430007547da15d7afda2a09cee40d59838361d603c27c7aa0077c717ff99096a5ef70ea diff --git a/dev-libs/re2/re2-0.2023.08.01.ebuild b/dev-libs/re2/re2-0.2023.08.01.ebuild new file mode 100644 index 0000000..1dda5d9 --- /dev/null +++ b/dev-libs/re2/re2-0.2023.08.01.ebuild @@ -0,0 +1,52 @@ +# Copyright 2012-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib-minimal toolchain-funcs + +# Different date format used upstream. +RE2_VER=${PV#0.} +RE2_VER=${RE2_VER//./-} + +DESCRIPTION="An efficient, principled regular expression library" +HOMEPAGE="https://github.com/google/re2" +SRC_URI="https://github.com/google/re2/archive/${RE2_VER}.tar.gz -> re2-${RE2_VER}.tar.gz" + +LICENSE="BSD" +# NOTE: Always run libre2 through abi-compliance-checker! +# https://abi-laboratory.pro/tracker/timeline/re2/ +SONAME="11" +SLOT="0/${SONAME}" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc x86" +IUSE="icu" + +BDEPEND="icu? ( virtual/pkgconfig )" +DEPEND="icu? ( dev-libs/icu:0=[${MULTILIB_USEDEP}] )" +RDEPEND="${DEPEND}" + +S="${WORKDIR}/re2-${RE2_VER}" + +DOCS=( AUTHORS CONTRIBUTORS README doc/syntax.txt ) +HTML_DOCS=( doc/syntax.html ) + +src_prepare() { + default + grep -q "^SONAME=${SONAME}\$" Makefile || die "SONAME mismatch" + if use icu; then + sed -i -e 's:^# \(\(CC\|LD\)ICU=.*\):\1:' Makefile || die + fi + multilib_copy_sources +} + +src_configure() { + tc-export AR CXX +} + +multilib_src_compile() { + emake SONAME="${SONAME}" shared +} + +multilib_src_install() { + emake SONAME="${SONAME}" DESTDIR="${D}" prefix="${EPREFIX}/usr" libdir="\$(exec_prefix)/$(get_libdir)" shared-install +} diff --git a/profiles/categories b/profiles/categories index 7309dc2..10c9993 100644 --- a/profiles/categories +++ b/profiles/categories @@ -1,3 +1,4 @@ dev-cpp +dev-libs sci-electronics sci-libs diff --git a/sci-electronics/xschem/Manifest b/sci-electronics/xschem/Manifest index 9b3bf75..c2fe858 100644 --- a/sci-electronics/xschem/Manifest +++ b/sci-electronics/xschem/Manifest @@ -1 +1,3 @@ -EBUILD xschem-9999.ebuild 464 BLAKE2B 7e22a2fb12e89be329d97b496f198839b93dc5ba9b9b623747798104350a02e94a35a948729ff4ab3a65d48d9800ad109109ba5fa6f1fba6797da6ecac4b3036 SHA512 74d1713a1910ae371c4569dfa52ba69e482e6c8cecd1e8a1be0abb1dd7482a80e7b5d849b4913b4778d416f901b16689f2937b2a4cd118d5e2aa5f532163f94f +DIST 3.4.3.zip 14258006 BLAKE2B 8144035d653ca966dfa6db71eca23310f31b45bb81eb9f8553778c7d745838e16e7b23575099e3518d8a0e01537ffff3b1d3d688d600522e98b2e43bdad263d4 SHA512 a3a346b0ab80c22e726e96154683b65ca44649230d718d9e776f6d5e5f26f6c36a6825d68006c7f84138de93577c00815054a527737992e669e129272b1416f3 +EBUILD xschem-3.4.3.ebuild 644 BLAKE2B 9570368f16be1707bcbaa2c66d5e5cb07483b5bd4aa84290f7da4e3ff6e239ecdb3431dce2132bad097b1323e45bd06afeabf987072a7d4b270ff4038599aae2 SHA512 e0de9cd93f4adbcf0e6c09d493c614f9bb2f6601ee4332cbd2284657254fc6af7971c87aa5068e9ef31901f7c3105a3f66b87f4a0a1493a07471c3215aa58783 +EBUILD xschem-9999.ebuild 644 BLAKE2B 9570368f16be1707bcbaa2c66d5e5cb07483b5bd4aa84290f7da4e3ff6e239ecdb3431dce2132bad097b1323e45bd06afeabf987072a7d4b270ff4038599aae2 SHA512 e0de9cd93f4adbcf0e6c09d493c614f9bb2f6601ee4332cbd2284657254fc6af7971c87aa5068e9ef31901f7c3105a3f66b87f4a0a1493a07471c3215aa58783 diff --git a/sci-electronics/xschem/xschem-3.4.3.ebuild b/sci-electronics/xschem/xschem-3.4.3.ebuild new file mode 120000 index 0000000..3cfb159 --- /dev/null +++ b/sci-electronics/xschem/xschem-3.4.3.ebuild @@ -0,0 +1 @@ +xschem-9999.ebuild \ No newline at end of file diff --git a/sci-electronics/xschem/xschem-9999.ebuild b/sci-electronics/xschem/xschem-9999.ebuild index da21ea7..7ad4cab 100644 --- a/sci-electronics/xschem/xschem-9999.ebuild +++ b/sci-electronics/xschem/xschem-9999.ebuild @@ -1,14 +1,17 @@ EAPI=8 -inherit git-r3 - DESCRIPTION="A schematic editor for VLSI/Asic/Analog custom designs" HOMEPAGE="http://repo.hu/projects/xschem/index.html" -EGIT_REPO_URI="https://github.com/StefanSchippers/xschem.git" -EGIT_SUBMODULES=( '*' ) +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/StefanSchippers/xschem.git" + EGIT_SUBMODULES=( '*' ) + inherit git-r3 +else + SRC_URI="https://github.com/StefanSchippers/${PN}/archive/refs/tags/${PV}.zip" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos" +fi -KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86" SLOT="0" IUSE="" diff --git a/sci-electronics/xyce/Manifest b/sci-electronics/xyce/Manifest index 3bde0c6..cdbceec 100644 --- a/sci-electronics/xyce/Manifest +++ b/sci-electronics/xyce/Manifest @@ -1,3 +1,6 @@ +AUX build_fix.patch 1208 BLAKE2B ccd4e3ad6994e76421c62112600324f850752dccf0e74e2c683c8e08e9342d8ae56f4ab7e2823a3c43ecd009dfdf89c90891c78371f103512cb26f8b61110d01 SHA512 bb0e47d8e2b6d3e3dc3fc93ef18ab493f2d7244f7cfe21c592d5163f2c41543b9a37ddcadffcd25e990a41edab2e4ff21db1ecd96f649189b86ba991dfe6e0dc AUX cuda_fix.patch 554 BLAKE2B f0609fd0faf38a8bfc15da8ad12c66070f9de6d9f1e1c3748903d1b5fd61ef401c3a0f149a7502b29d9fdd5d8054d0a7367a41734d8e76dbafd5f304a72429f2 SHA512 1c30ca126e4328e86a4fc10f1de9b7686ceca1403b2892f95b0b110df8becfd07540912d0bc6bc92726d1890157d7c8e137db2bad16e37057c2a4c9a42c22c7b -AUX install_fix.patch 5981 BLAKE2B c2b4a069e82ff5d06967c517934856565d4110f139f4e47a84d45cbc021a7a4e207cb3500fe9a75ae1ce7c958aba78c82c9a1920d65be1d9d98adffee6d44f41 SHA512 3a50ad0def026700993d6d6ad84098d9fd1702c08eea7375bad81854a7af5b94b49914af2e2f1a5e46855c8539df6d22f2aae32a37885f80c51e35505c91c843 -EBUILD xyce-9999.ebuild 1574 BLAKE2B dea34e5965135c853844c8cc7786dee22296a0593cdfb3615fe272d2725c8caf460523eb54fb87f92aec3b43faac945bb0610c5a262654055cb3c806e2918c03 SHA512 59fffc28fdf6fd4d4396e33b900d23b472a72d2c9b127c7bfb7ff538955524de0bbad5688d0164d154c77de10d281955b0fc0b541ca619df33b4c1f486c029d5 +AUX install_fix-7.7.patch 3840 BLAKE2B 7ae7ed2f8e71dd6c44d89d9cab65dc5e3b97232cfb5300b3093934b8d255676ab0cff5499a7c7b07a5fac32c54046a1ac43f40c1cdf53be8c0ca1c71fea8027e SHA512 8d582efadc70d10a304dd30dceef744423291d32b2a56356264f3fead3ad0c848f41153e6085cc50a80330b91c35b71d964fdb20cbbe720b6d5c2289a6dcb106 +DIST Release-7.7.0.zip 24874321 BLAKE2B 8670b90b7fcc815a09dc80e350e3f8007d770969ec4fa0ac1bada13e275b44691db3d6f36d9b229cdcef63429c3f116deb19784c2285573ed3640f9537be4cf8 SHA512 4833800a78c5a89012518febd9c2e28baf22c2e24213013cfd864b827b7f2d49203e46a23fce7349bf8fdb3b86a7b15ef213a40eda47ab2ad06e9ebb6896e185 +EBUILD xyce-7.7.ebuild 1805 BLAKE2B 0887ff84d602ae867ef771d087467157a96763a06b5840474e2860fbab99d240cdbb203eebc9e21a40045c948d5cce55a24b60edbd451ecea81acad80c15d6a0 SHA512 20be17547b1964b3707826aeaedd5e41e8555a511bd91fe9be20eb68192b4ed35037843d5f8599a6787d531f263b40b6636cfc7269dd972e797d7b8fb75b7bbd +EBUILD xyce-9999.ebuild 1805 BLAKE2B 0887ff84d602ae867ef771d087467157a96763a06b5840474e2860fbab99d240cdbb203eebc9e21a40045c948d5cce55a24b60edbd451ecea81acad80c15d6a0 SHA512 20be17547b1964b3707826aeaedd5e41e8555a511bd91fe9be20eb68192b4ed35037843d5f8599a6787d531f263b40b6636cfc7269dd972e797d7b8fb75b7bbd diff --git a/sci-electronics/xyce/files/build_fix.patch b/sci-electronics/xyce/files/build_fix.patch new file mode 100644 index 0000000..fa935a4 --- /dev/null +++ b/sci-electronics/xyce/files/build_fix.patch @@ -0,0 +1,25 @@ +diff -Naur xyce-9999_or/CMakeLists.txt xyce-9999/CMakeLists.txt +--- xyce-9999_or/CMakeLists.txt 2023-06-15 12:10:16.293228331 +0200 ++++ xyce-9999/CMakeLists.txt 2023-06-15 12:35:46.624756996 +0200 +@@ -15,6 +15,9 @@ + # the compilers and call project again. + project(Xyce NONE) + ++# Disable Kokkos warning about not supporting C++ extensions ++set(CMAKE_CXX_EXTENSIONS OFF) ++ + # A TriBITS project that performs a coupled build with Trilinos, like Charon, + # changes the names of all the Trilinos variables. Therefore, we have to jump + # through a bunch of hoops to take that use case into account. Here we set a +diff -Naur xyce-9999_or/cmake/tps.cmake xyce-9999/cmake/tps.cmake +diff -Naur xyce-9999_or/src/LinearAlgebraServicesPKG/N_LAS_TransformTool.C xyce-9999/src/LinearAlgebraServicesPKG/N_LAS_TransformTool.C +--- xyce-9999_or/src/LinearAlgebraServicesPKG/N_LAS_TransformTool.C 2023-06-15 19:12:44.585504630 +0200 ++++ xyce-9999/src/LinearAlgebraServicesPKG/N_LAS_TransformTool.C 2023-06-15 19:16:03.513134501 +0200 +@@ -53,6 +53,7 @@ + #include + #endif + #endif ++#include + + #ifdef Xyce_AMD + #include diff --git a/sci-electronics/xyce/files/install_fix.patch b/sci-electronics/xyce/files/install_fix-7.7.patch similarity index 56% rename from sci-electronics/xyce/files/install_fix.patch rename to sci-electronics/xyce/files/install_fix-7.7.patch index 945b81b..0d3ff31 100644 --- a/sci-electronics/xyce/files/install_fix.patch +++ b/sci-electronics/xyce/files/install_fix-7.7.patch @@ -34,6 +34,7 @@ diff -Naur xyce-9999_or/src/CMakeLists.txt xyce-9999/src/CMakeLists.txt install(TARGETS Xyce DESTINATION bin EXPORT XyceTarget) # Add header files needed by other codes to link against libxyce.* + diff -Naur xyce-9999_or/utils/SimulinkInterface/CMakeLists.txt xyce-9999/utils/SimulinkInterface/CMakeLists.txt --- xyce-9999_or/utils/SimulinkInterface/CMakeLists.txt 2023-05-15 12:38:38.211026556 +0200 +++ xyce-9999/utils/SimulinkInterface/CMakeLists.txt 2023-05-15 12:43:45.132168085 +0200 @@ -46,28 +47,30 @@ diff -Naur xyce-9999_or/utils/SimulinkInterface/CMakeLists.txt xyce-9999/utils/S install(FILES XyceBlocks.slx DESTINATION share/simulink) matlab_add_mex( NAME xyce2nLv_sfunction MODULE SRC xyce2nLv_sfunction.cpp LINK_TO XyceLib ) + diff -Naur xyce-9999_or/utils/XyceCInterface/CMakeLists.txt xyce-9999/utils/XyceCInterface/CMakeLists.txt --- xyce-9999_or/utils/XyceCInterface/CMakeLists.txt 2023-05-15 12:38:38.211026556 +0200 +++ xyce-9999/utils/XyceCInterface/CMakeLists.txt 2023-05-15 12:43:08.092469721 +0200 -@@ -5,7 +5,7 @@ - target_sources( xycecinterface PRIVATE N_CIR_XyceCInterface.C PUBLIC N_CIR_XyceCInterface.h ) - target_include_directories( xycecinterface PUBLIC $ ) - target_link_libraries(xycecinterface XyceLib ) --install(TARGETS xycecinterface DESTINATION lib ) -+install(TARGETS xycecinterface DESTINATION ${CMAKE_INSTALL_LIBDIR} ) - install(FILES N_CIR_XyceCInterface.h DESTINATION include) - - +@@ -21,7 +21,7 @@ + endif() + + +-install( TARGETS xycecinterface DESTINATION lib OPTIONAL) ++install( TARGETS xycecinterface DESTINATION ${CMAKE_INSTALL_LIBDIR} OPTIONAL) + configure_file(xyce_interface.py.cmake xyce_interface.py @ONLY ) + install( FILES N_CIR_XyceCInterface.h DESTINATION include OPTIONAL) + install( FILES ${CMAKE_CURRENT_BINARY_DIR}/xyce_interface.py DESTINATION share OPTIONAL) diff -Naur xyce-9999_or/src/CMakeLists.txt xyce-9999/src/CMakeLists.txt --- xyce-9999_or/src/CMakeLists.txt 2023-05-26 18:32:42.704669936 +0200 +++ xyce-9999/src/CMakeLists.txt 2023-05-26 18:37:51.203869009 +0200 -@@ -328,10 +328,10 @@ +@@ -318,11 +318,11 @@ configure_package_config_file( cmake/XyceConfig.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/cmake/XyceConfig.cmake - INSTALL_DESTINATION lib/cmake + INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake + PATH_VARS Xyce_Trilinos_DIR ) -set(ConfigPackageLocation lib/cmake/Xyce) @@ -75,50 +78,3 @@ diff -Naur xyce-9999_or/src/CMakeLists.txt xyce-9999/src/CMakeLists.txt install(EXPORT XyceLibTarget FILE XyceTargets.cmake -diff -Naur xyce-9999_or/CMakeLists.txt xyce-9999/CMakeLists.txt ---- xyce-9999_or/CMakeLists.txt 2023-06-15 12:10:16.293228331 +0200 -+++ xyce-9999/CMakeLists.txt 2023-06-15 12:35:46.624756996 +0200 -@@ -15,6 +15,9 @@ - # the compilers and call project again. - project(Xyce NONE) - -+# Disable Kokkos warning about not supporting C++ extensions -+set(CMAKE_CXX_EXTENSIONS OFF) -+ - # A TriBITS project that performs a coupled build with Trilinos, like Charon, - # changes the names of all the Trilinos variables. Therefore, we have to jump - # through a bunch of hoops to take that use case into account. Here we set a -diff -Naur xyce-9999_or/cmake/tps.cmake xyce-9999/cmake/tps.cmake ---- xyce-9999_or/cmake/tps.cmake 2023-06-15 12:10:16.259895400 +0200 -+++ xyce-9999/cmake/tps.cmake 2023-06-15 12:42:55.076301530 +0200 -@@ -107,8 +107,8 @@ - # Search for required TPL packages - - message(STATUS "Looking for BLAS and LAPACK via Trilinos") --list(FIND Trilinos_TPL_LIST BLAS BLAS_IN_Trilinos) --list(FIND Trilinos_TPL_LIST LAPACK LAPACK_IN_Trilinos) -+list(FIND BLAS::all_libs BLAS BLAS_IN_Trilinos) -+list(FIND LAPACK::all_libs LAPACK LAPACK_IN_Trilinos) - if ((BLAS_IN_Trilinos GREATER -1) AND (LAPACK_IN_Trilinos GREATER -1)) - message(STATUS "Looking for BLAS and LAPACK via Trilinos - found") - else() -@@ -117,7 +117,7 @@ - "Enable the following in the Trilinos build:\n" - " -D TPL_ENABLE_BLAS=ON\n" - " -D TPL_ENABLE_LAPACK=ON") -- set(Trilinos_IS_MISSING_FEATURES TRUE) -+# set(Trilinos_IS_MISSING_FEATURES TRUE) - endif() - - # Search for required features -diff -Naur xyce-9999_or/src/LinearAlgebraServicesPKG/N_LAS_TransformTool.C xyce-9999/src/LinearAlgebraServicesPKG/N_LAS_TransformTool.C ---- xyce-9999_or/src/LinearAlgebraServicesPKG/N_LAS_TransformTool.C 2023-06-15 19:12:44.585504630 +0200 -+++ xyce-9999/src/LinearAlgebraServicesPKG/N_LAS_TransformTool.C 2023-06-15 19:16:03.513134501 +0200 -@@ -53,6 +53,7 @@ - #include - #endif - #endif -+#include - - #ifdef Xyce_AMD - #include diff --git a/sci-electronics/xyce/xyce-7.7.ebuild b/sci-electronics/xyce/xyce-7.7.ebuild new file mode 120000 index 0000000..cdbef01 --- /dev/null +++ b/sci-electronics/xyce/xyce-7.7.ebuild @@ -0,0 +1 @@ +xyce-9999.ebuild \ No newline at end of file diff --git a/sci-electronics/xyce/xyce-9999.ebuild b/sci-electronics/xyce/xyce-9999.ebuild index e3da03a..60a15b6 100644 --- a/sci-electronics/xyce/xyce-9999.ebuild +++ b/sci-electronics/xyce/xyce-9999.ebuild @@ -1,17 +1,23 @@ EAPI=8 -inherit git-r3 cmake +inherit cmake DESCRIPTION="The Xyce Parallel Electronic Simulator is a SPICE-compatible circuit simulator" HOMEPAGE="https://xyce.sandia.gov/about-xyce/" CMAKE_MAKEFILE_GENERATOR=emake -EGIT_REPO_URI="https://github.com/Xyce/Xyce.git" -EGIT_COMMIT="2d93caa9358b276e774ab5906bac6a6b2d563c81" -EGIT_SUBMODULES=( '*' ) +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/Xyce/Xyce.git" + EGIT_SUBMODULES=( '*' ) + #EGIT_COMMIT="2d93caa9358b276e774ab5906bac6a6b2d563c81" + inherit git-r3 +else + SRC_URI="https://github.com/Xyce/Xyce/archive/refs/tags/Release-${PV}.0.zip" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos" + S="${PORTAGE_BUILDDIR}/work/Xyce-Release-${PV}.0" +fi -KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86" SLOT="0" IUSE="cuda openmp" @@ -21,7 +27,6 @@ DEPEND=" virtual/blas sci-libs/trilinos openmp? ( virtual/mpi[nullmpi(+)] ) - cuda? ( >=dev-util/nvidia-cuda-toolkit-3.2 ) dev-perl/XML-LibXML " RDEPEND=" @@ -29,7 +34,8 @@ RDEPEND=" " PATCHES=( - "${FILESDIR}"/install_fix.patch + "${FILESDIR}"/build_fix.patch + "${FILESDIR}"/install_fix-${PV}.patch "${FILESDIR}"/cuda_fix.patch ) diff --git a/sci-libs/or-tools/Manifest b/sci-libs/or-tools/Manifest new file mode 100644 index 0000000..2ed8b95 --- /dev/null +++ b/sci-libs/or-tools/Manifest @@ -0,0 +1,4 @@ +AUX latest_fix.patch 602 BLAKE2B c8bfeb4ee8a83caab7746e74b378d5aa7f64ab9cb67cfc8770aa5b74420010f0944a066a3b436e7f622f99ed4d0e406e5a8b190a20e4339f1c812d361dba9391 SHA512 9d73137ad810fd3c98beb580b9a62f8130a14c629f5879655ad408a7c4125deaf1746d58b088bb105d0ffdb87af56492def4042213b86aed92f8db75d26c9b72 +DIST v9.7.zip 22324914 BLAKE2B a388a8af7326a75a6d4802201e0dba0843e557ea91c87786ceef7f03bd84b3a21e5072a4c87fc0d5c724626b49f22d31c3a9941d884042ca5d2e95a7da4511da SHA512 e334a8541137125056421d575d3edf1382cef84222f890e570d479ddfbafca48e1131583c6171503ddb7498e89c43db3daeb8adbdfbfc9891b6f13fdf03fbc9b +EBUILD or-tools-9.7.ebuild 1889 BLAKE2B 539204056d70f109e49398d52bd918d011ea9bb949df58d8e8c65795f4657ac6fe043b6d5d12b76fee3daca851b88454fbbd092892ab56137edc0936aebf9be5 SHA512 195aafb5ef7a21189e88d05c1a12d6c3b72487a53cdcb91a9d7eb1d505a3be8c3bad69fc6b546eea3bf5164af0d1704415ece7a578863cfaea4b75ed39dc5fa6 +EBUILD or-tools-9999.ebuild 1889 BLAKE2B 539204056d70f109e49398d52bd918d011ea9bb949df58d8e8c65795f4657ac6fe043b6d5d12b76fee3daca851b88454fbbd092892ab56137edc0936aebf9be5 SHA512 195aafb5ef7a21189e88d05c1a12d6c3b72487a53cdcb91a9d7eb1d505a3be8c3bad69fc6b546eea3bf5164af0d1704415ece7a578863cfaea4b75ed39dc5fa6 diff --git a/sci-libs/or-tools/files/latest_fix.patch b/sci-libs/or-tools/files/latest_fix.patch new file mode 100644 index 0000000..92025e7 --- /dev/null +++ b/sci-libs/or-tools/files/latest_fix.patch @@ -0,0 +1,12 @@ +diff -Naur or-tools-9999_or/ortools/sat/subsolver.cc or-tools-9999/ortools/sat/subsolver.cc +--- or-tools-9999_or/ortools/sat/subsolver.cc 2023-10-23 23:50:33.232897043 +0200 ++++ or-tools-9999/ortools/sat/subsolver.cc 2023-10-23 23:50:54.142977895 +0200 +@@ -266,7 +266,7 @@ + task(); + + const absl::MutexLock mutex_lock(&mutex); +- DCHECK_NE(subsolvers[best], nullptr); ++ //DCHECK_NE(subsolvers[best], nullptr); + DCHECK_GT(num_in_flight_per_subsolvers[best], 0); + num_in_flight_per_subsolvers[best]--; + VLOG(1) << name << " done in " << timer.Get() << "s."; diff --git a/sci-libs/or-tools/or-tools-9.7.ebuild b/sci-libs/or-tools/or-tools-9.7.ebuild new file mode 120000 index 0000000..89fb2bb --- /dev/null +++ b/sci-libs/or-tools/or-tools-9.7.ebuild @@ -0,0 +1 @@ +or-tools-9999.ebuild \ No newline at end of file diff --git a/sci-libs/or-tools/or-tools-9999.ebuild b/sci-libs/or-tools/or-tools-9999.ebuild new file mode 100644 index 0000000..cb6aa32 --- /dev/null +++ b/sci-libs/or-tools/or-tools-9999.ebuild @@ -0,0 +1,89 @@ +EAPI=8 + +PYTHON_COMPAT=( python3_{10..11} ) +inherit cmake python-any-r1 + +DESCRIPTION="Google Optimization Tools" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/google/or-tools.git" + EGIT_SUBMODULES=( '*' ) + EGIT_BRANCH="main" + inherit git-r3 + + PATCHES=( + ${FILESDIR}/latest_fix.patch + ) +else + SRC_URI="https://github.com/google/${PN}/archive/refs/tags/v${PV}.zip" +fi + +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos" + +SLOT="0" +IUSE="coinor cplex glpk python static-libs scip java parser samples examples doc express" + +DEPEND=" + dev-libs/protobuf + dev-cpp/abseil-cpp + dev-libs/re2 + coinor? ( + sci-libs/coinor-utils + sci-libs/coinor-osi + sci-libs/coinor-clp + sci-libs/coinor-cgl + sci-libs/coinor-cbc + ) + scip? ( sci-libs/scip ) + glpk? ( sci-mathematics/glpk ) + python? ( dev-python/pybind11 ) +" +RDEPEND=" + ${DEPEND} +" +BDEPEND=" + dev-util/cmake +" + +src_configure() { + local mycmakeargs=( + -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/" + -DBUILD_CXX=ON + -DBUILD_DEPS=OFF + -DBUILD_ZLIB=OFF + -DBUILD_absl=OFF + -DBUILD_GLOP=OFF + -DBUILD_FLATZINC=OFF + -DBUILD_Protobuf=OFF + -DBUILD_re2=OFF + -DBUILD_CoinUtils=OFF + -DBUILD_Osi=OFF + -DBUILD_Clp=OFF + -DBUILD_Cgl=OFF + -DBUILD_Cbc=OFF + -DBUILD_GLPK=OFF + -DBUILD_HIGHS=OFF + -DBUILD_Eigen3=OFF + -DBUILD_SCIP=OFF + -DBUILD_DOTNET=OFF + -DBUILD_pybind11=OFF + -DBUILD_SHARED_LIBS=$(usex static-libs OFF ON) + -DBUILD_PYTHON=$(usex python) + -DBUILD_JAVA=$(usex java) + -DBUILD_LP_PARSER=$(usex parser) + -DBUILD_SAMPLES=$(usex samples) + -DBUILD_EXAMPLES=$(usex examples) + -DBUILD_DOC=$(usex doc) + -DUSE_COINOR=$(usex coinor) + -DUSE_GLPK=$(usex glpk) + -DUSE_HIGHS=OFF + -DUSE_PDLP=OFF + -DUSE_SCIP=$(usex scip) + -DUSE_CPLEX=$(usex cplex) + -DUSE_XPRESS=$(usex express) + ) + if use python; then + mycmakeargs+=( -DBUILD_VENV=OFF ) + fi + cmake_src_configure +} diff --git a/sci-libs/trilinos/Manifest b/sci-libs/trilinos/Manifest index d62a53e..5da1cc5 100644 --- a/sci-libs/trilinos/Manifest +++ b/sci-libs/trilinos/Manifest @@ -7,6 +7,8 @@ DIST trilinos-13.4.0-patches-r0.tar.xz 8740 BLAKE2B 333ab9ff1acb2f4b08007c7b99b9 DIST trilinos-13.4.1.tar.gz 168720416 BLAKE2B 5201c36aa998045f4eab99b67fce25f9a2f2a9524b8ca1147cd8db9ccc306e3df61336df3b2ee981317c8defbae2df9e36546a0e5ddfed3142213e437e4dfba0 SHA512 9c0fb3af2fa625cd0af1309bfa61c212e12657820707348c81355d506e07f540da5e42aa30237fbc80adf257bb636029345f248abaf7ef96fcdaed1c28ec3a19 DIST trilinos-14.0.0.tar.gz 179086187 BLAKE2B 0e0c3e3fa4b88164cd7e90720ec42eb007f8e89734e5537a7eba1f17754faf30c21fa1d77f7e8a7968bdb8bb230596a1adc74f8170577fd7b4eccb2e88c5b8f6 SHA512 b08fcf4f6bf2605267c44c038f352949e5bfe14b853de77e4c80e28f66c088ead1699b1e49f8475f1b98ce5a21238b98a299e760f1373e585c78b65120fa18e5 DIST trilinos-14.2.0.tar.gz 178867695 BLAKE2B 07ff61775399014091aae9c14ad12a69ab19853bc3489c15775490aa3f6e8ae868ac4e90bf046d10bf1ecb1d5558992f0afb0ce656f947336559fcf10085c038 SHA512 c676ff2b59904dc05a0ff434dd164bc96076999a5851c160c5851c124d3c519dd0cc3f088eba19f2000c7d1c2377f4efb2b2b8f9f3ee641b2180f3b99b28ea0b +DIST trilinos-14.4.0.tar.gz 188325969 BLAKE2B 909e3ebe229d035263d835e0d68977516d2a5df168785021fe300f7904e149586a82a6dba271cc1472455472397ee5467443244fb68fb27c00cf4e9b3d10a282 SHA512 497fc4fb4ab4338fffef7111635f3dc3b12cb7302bc3f56bafb5cc75b7c68e94cc22fcacd9dd625803a0f38e4fbce5105cab61df76e033a4581568c36a53fe8a EBUILD trilinos-13.4.1.ebuild 9560 BLAKE2B bf029cfd7877ab5377dd8ea76eccc7bfac400500ffefcc01fcb78a11e096a17cd0dd140a9e04686d13ee82f33b96dc35795480faae57411e5fad1d016b30c7d4 SHA512 3819f3abf8889a48ab4e62302cfe6018269d13a0505ee057763cdebbf1fd7d3bf0247b81216b89a372a2d1abb38ac6ed49c28ff07ad84a8a32f28f2b107a691b EBUILD trilinos-14.0.0.ebuild 8451 BLAKE2B d0ca1847ca3f964424304eb9c1abb21d96c7406310d8bccf2049b4aa5267c23878b88352bbd7c23640fa63d903ffa024240e29b988645fbb6cf216bd41ab996b SHA512 cb6774f526e18edf8f94c17f5444982181da7bfefcd18befa8204f97c2ec999209aaeaef9e16df3c567537e891aa905121569183873e2b70883609b7cf2b69bb -EBUILD trilinos-14.2.0.ebuild 8739 BLAKE2B ba06a4aafb131f33ad55ef233ca279d8453ef5a95b62f57e8f0ac499283e6591746c38ba9d99fd4f34488270ea1783fa153542f80cdd116c107d35b057834b86 SHA512 39b5f448509119cd71526d1b6432e340be36ea5df37b30ee84375c75eb222892f889a0ca6e1578ad458c03c5bfcea58c59ea7ac5328058493827cf0c4d550838 +EBUILD trilinos-14.2.0.ebuild 8758 BLAKE2B 6abd3955a281d3477b6418b45e3a6008730595ea76ae0731cc66310c62e4b10115d41b9eb7ca0bac6689f91861c9f3a326cd46d81450db97bfc5485094ed477d SHA512 1e4a2753139e70039e4f567c28c27928909eb330599fd0a207a9b3d2af5675599207194b95a23c346ae56787ef341129bffc55916e3ca77aca02d7bd15e88551 +EBUILD trilinos-14.4.0.ebuild 8720 BLAKE2B 0b6306a02abf4f289aa82f083ec2784e6b80f2cbbfe7383497e83b76fd95840da9c12dafce44a6430deaefcb921710fa1e1e37564de2732fe40d99cbc3d18255 SHA512 f4f28ce8becaf9268a148a7edde2bb732eecc87134ace5712d609292813d351fde9c9de9bd31d1da478f578693f41c369e499d19941ecfcff3ead739eb8e559b diff --git a/sci-libs/trilinos/trilinos-14.2.0.ebuild b/sci-libs/trilinos/trilinos-14.2.0.ebuild index 330ea39..19c35f9 100644 --- a/sci-libs/trilinos/trilinos-14.2.0.ebuild +++ b/sci-libs/trilinos/trilinos-14.2.0.ebuild @@ -58,7 +58,8 @@ RDEPEND=" tvmet? ( dev-libs/tvmet ) yaml? ( dev-cpp/yaml-cpp:= ) zlib? ( sys-libs/zlib ) - X? ( x11-libs/libX11 )" + X? ( x11-libs/libX11 ) + sci-libs/parmetis" DEPEND="${RDEPEND} virtual/pkgconfig" diff --git a/sci-libs/trilinos/trilinos-14.4.0.ebuild b/sci-libs/trilinos/trilinos-14.4.0.ebuild new file mode 100644 index 0000000..c3b3896 --- /dev/null +++ b/sci-libs/trilinos/trilinos-14.4.0.ebuild @@ -0,0 +1,296 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CMAKE_MAKEFILE_GENERATOR=emake +inherit cmake toolchain-funcs + +DESCRIPTION="Scientific library collection for large scale problems" +HOMEPAGE="http://trilinos.sandia.gov/" +MY_PV="${PV//\./-}" +PATCHSET="r0" +SRC_URI="https://github.com/${PN}/Trilinos/archive/${PN}-release-${MY_PV}.tar.gz -> ${P}.tar.gz" + +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +LICENSE="BSD LGPL-2.1" +SLOT="0" + +IUSE=" + adolc all-packages arprec clp cuda eigen glpk gtest hdf5 hwloc hypre + matio metis mkl mumps netcdf openmp petsc qd scalapack scotch sparse + superlu taucs tbb test threads tvmet yaml zlib X +" + +# TODO: fix export cmake function for tests +RESTRICT="test" + +RDEPEND=" + !dev-cpp/kokkos + dev-libs/boost:= + sys-libs/binutils-libs:= + virtual/blas + virtual/lapack + virtual/mpi + adolc? ( sci-libs/adolc ) + arprec? ( sci-libs/arprec ) + clp? ( sci-libs/coinor-clp ) + cuda? ( >=dev-util/nvidia-cuda-toolkit-3.2 ) + eigen? ( dev-cpp/eigen:3 ) + glpk? ( sci-mathematics/glpk ) + gtest? ( dev-cpp/gtest ) + hdf5? ( sci-libs/hdf5:=[mpi] ) + hypre? ( sci-libs/hypre:= ) + hwloc? ( sys-apps/hwloc:= ) + matio? ( sci-libs/matio ) + mkl? ( sci-libs/mkl ) + metis? ( sci-libs/metis ) + mumps? ( sci-libs/mumps ) + netcdf? ( sci-libs/netcdf:= ) + petsc? ( sci-mathematics/petsc ) + qd? ( sci-libs/qd ) + scalapack? ( sci-libs/scalapack ) + scotch? ( sci-libs/scotch:= ) + sparse? ( sci-libs/cxsparse sci-libs/umfpack ) + superlu? ( > "${T}"/99trilinos <<- EOF + LDPATH="${EPREFIX}/usr/$(get_libdir)/trilinos" + PATH="${EPREFIX}/usr/$(get_libdir)/trilinos/bin" + EOF + doenvd "${T}"/99trilinos +}