diff options
author | V3n3RiX <venerix@koprulu.sector> | 2023-07-11 10:29:19 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2023-07-11 10:29:19 +0100 |
commit | f9a53aec073578673710687755db617717dd87d3 (patch) | |
tree | 9e9642aae0c5bc25cac799d6a2437229bbb76a76 /sci-libs/dealii | |
parent | 7e110ec617b903791c3d309845e11a8b27f441cc (diff) |
gentoo auto-resync : 11:07:2023 - 10:29:18
Diffstat (limited to 'sci-libs/dealii')
-rw-r--r-- | sci-libs/dealii/Manifest | 5 | ||||
-rw-r--r-- | sci-libs/dealii/dealii-9.5.0.ebuild | 168 | ||||
-rw-r--r-- | sci-libs/dealii/dealii-9999.ebuild | 17 |
3 files changed, 179 insertions, 11 deletions
diff --git a/sci-libs/dealii/Manifest b/sci-libs/dealii/Manifest index bcd0abf27c4b..4353dd8b81d3 100644 --- a/sci-libs/dealii/Manifest +++ b/sci-libs/dealii/Manifest @@ -7,7 +7,10 @@ DIST dealii-9.4.1-offline_documentation.tar.gz 392007419 BLAKE2B 81404b02ba7dc97 DIST dealii-9.4.1-offline_documentation.tar.gz.asc 246 BLAKE2B 9ace22c9b174e642cd3fba94c165d816c62814f892f5f6f272efa0301613dc55251152825e726fc6cf7e89bbfb7fa3552ec58ad426a7d58a74ecb89b9072f742 SHA512 50b43dd34a0687395f516f4910581df71054fa8be3c98006566ea649d0af866d38c9793da548ba6bdb7a9fec452dfb6d928d336aace943522d7c3f854209b81b DIST dealii-9.4.1.tar.gz 30298204 BLAKE2B 499f542c7a7f071d04048127199c7bebf5668b6e8d13fc2701dd18e28165442e58112ee9e4926e16a592bffdd5d7b7c240eea55808e5f9c021961f7e44b7da79 SHA512 39089aff462d3ff4244ce75f74a4cd908f8f72a81dcc3fb02ca91b3cad2442ceb78677e72cd928b36a04d352c4baa146a25fa5e14c886ca9e2bad0be0069f7b8 DIST dealii-9.4.1.tar.gz.asc 246 BLAKE2B dbb1dc7b3e8a97f29287f154d11cd3db2566fdc4c7667fa57e686e2feba33f2115546408365f0e8f490ba593cb582b12489de373da3e33e8702b6e16804c7ebf SHA512 eb987d34f19b59d523d79f3c2c99f5f3125b1d0c71af0eb32b77ad5959d6197b79f1971a8a79dbc52bab698335dcb6091aac88c51d845a1e07d3681c089754c7 +DIST dealii-9.5.0-offline_documentation.tar.gz 412499027 BLAKE2B 521aa2488d84d48a624f4cbdbe9c173d0cdcee2df8d06b97b7c25ba28d4a2113a7da9fd9abd9eb64cd56b37f8edc716bd034fc3ba8823f8b1def26c34aaeeb55 SHA512 2e0d331f92d52b0fd909a0139157a1960a9222d46d537611f0508cdb79020a8e51ff0da6aefdf95adff732cea050b72df7dc1a8af7e93c736721970218815cfe +DIST dealii-9.5.0.tar.gz 31524412 BLAKE2B 0388b4c8441b1e59baba3fcb3f19c19a357c452c7b30a95a040c1ae628f56734d85aeb4ed755fc68b7bb6c28b508d857f14bb0793e23b7e207f260e0a0bf70ac SHA512 33308711f9efb41030a509f25c537680e0980df95d90947641958f12ddd00c3aee542837de8ba4d100cbdb5470c001132c7526b52020e0eb219bf4b0f6c23586 EBUILD dealii-9.4.0-r1.ebuild 5816 BLAKE2B 137b29949c766c705c7a52b664e068d8bfb5cbaaa18f0f1529100e72b86c15822385c705d0466863f2bb79056e7bdddfc0b62037ee985dc584d10c3d80562086 SHA512 19653f1d97a14ee787d29c56cc5b8dac6f6d54641da4789cb6764001ce4990fb3a951f8e27b6760cc32719846adc18c32870e42fd33ab937d5b1d1194ca8da86 EBUILD dealii-9.4.1-r1.ebuild 5816 BLAKE2B 137b29949c766c705c7a52b664e068d8bfb5cbaaa18f0f1529100e72b86c15822385c705d0466863f2bb79056e7bdddfc0b62037ee985dc584d10c3d80562086 SHA512 19653f1d97a14ee787d29c56cc5b8dac6f6d54641da4789cb6764001ce4990fb3a951f8e27b6760cc32719846adc18c32870e42fd33ab937d5b1d1194ca8da86 -EBUILD dealii-9999.ebuild 5457 BLAKE2B 563555bc48094b503054f1b4ffe08a82f36c455c1aaa9fb4fe75e501bac9d6112418c5b438069cca49002436e453a11afdf9db03bc1e5c9b430ff674ed0f2e0b SHA512 5e774ba521cb02c2b20cb7b9c62dee2642831eddc20322244f287f28019ecaa32e1bd1cbfea1339ba1c2f9466b54723b3e5cae7968ed3ffd6e17f300fc16a7aa +EBUILD dealii-9.5.0.ebuild 5136 BLAKE2B 2549e4cd5c22e51fb58f78f029a5a80105151b332c947e4be85c3098301e1a2ede7174d1589764b7d35645f1e5cd1370d588d4268a82abcd7a8a081db2c2782f SHA512 35b7645b04924d3e1e891acef0eeb10db4c3ebdc8c3a95fea9d02ff7825a94257e453a53d238a3d0b46a65f5ab75010e59eaf98eda3d84ed6cd090db643d4ab9 +EBUILD dealii-9999.ebuild 5166 BLAKE2B 0c67db38463a4b094f674148124049b7dcc4f015ddb4afddb69abae0b9d3948d620cc86e7014036de5fd3cd52bc7bd416e3577220641f79a0ef25600666316a3 SHA512 140fd4c5744b07984139931458ddc1491b66939ccd2ca3b3512d1e404d692692bc30210ad220d4c4ac13d751f364ea8031cfc744f7547fad1724d7a5dca93517 MISC metadata.xml 2391 BLAKE2B 904b31425264a2da185a49a388bfb9415ca95c818e3c97774ccdf8e26baa706f0d2f4e6478dec4854a0164e5cdac512e4476f09ba6e3ec84d8a4b45b0e4d5131 SHA512 1bda00424bf63b1520818b3b350f08fc995200214a659435ce16b979de95077b82ed581320c15c9799d1934c0b58fcb56552329ebd4c5e9d93f01110027091d0 diff --git a/sci-libs/dealii/dealii-9.5.0.ebuild b/sci-libs/dealii/dealii-9.5.0.ebuild new file mode 100644 index 000000000000..fc798a6b87d3 --- /dev/null +++ b/sci-libs/dealii/dealii-9.5.0.ebuild @@ -0,0 +1,168 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# deal.II uses its own FindLAPACK.cmake file that calls into the system +# FindLAPACK.cmake module and does additional internal setup. Do not remove +# any of these modules: +CMAKE_REMOVE_MODULES_LIST="" + +inherit cmake flag-o-matic + +DESCRIPTION="Solving partial differential equations with the finite element method" +HOMEPAGE="https://www.dealii.org/" + +if [[ ${PV} = *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/dealii/dealii.git" + SRC_URI="" +else + SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz + doc? ( + https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}-offline_documentation.tar.gz + )" + KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +fi + +LICENSE="LGPL-2.1+" +SLOT="0" +IUSE=" + adolc arborx assimp arpack cgal cpu_flags_x86_avx cpu_flags_x86_avx512f + cpu_flags_x86_sse2 cuda +debug doc +examples ginkgo gmsh +gsl hdf5 + +lapack metis mpi muparser opencascade p4est petsc scalapack slepc + +sparse sundials symengine trilinos +" + +# TODO: add slepc use flag once slepc is packaged for gentoo-science +REQUIRED_USE=" + arborx? ( trilinos ) + p4est? ( mpi ) + slepc? ( petsc ) + trilinos? ( mpi )" + +RDEPEND="dev-libs/boost:= + app-arch/bzip2 + sys-libs/zlib + dev-cpp/tbb:= + arborx? ( sci-libs/arborx[mpi=] ) + adolc? ( sci-libs/adolc ) + arpack? ( sci-libs/arpack[mpi=] ) + assimp? ( media-libs/assimp:= ) + cgal? ( sci-mathematics/cgal ) + cuda? ( dev-util/nvidia-cuda-toolkit ) + ginkgo? ( sci-libs/ginkgo ) + gmsh? ( sci-libs/gmsh ) + gsl? ( sci-libs/gsl:= ) + hdf5? ( sci-libs/hdf5[mpi=] ) + lapack? ( virtual/lapack ) + metis? ( + >=sci-libs/metis-5 + mpi? ( >=sci-libs/parmetis-4 ) + ) + mpi? ( virtual/mpi[cxx] ) + muparser? ( dev-cpp/muParser ) + opencascade? ( sci-libs/opencascade:= ) + p4est? ( sci-libs/p4est[mpi] ) + petsc? ( sci-mathematics/petsc[mpi=] ) + scalapack? ( sci-libs/scalapack ) + slepc? ( sci-mathematics/slepc[mpi=] ) + sparse? ( sci-libs/umfpack ) + sundials? ( sci-libs/sundials:= ) + symengine? ( >=sci-libs/symengine-0.4:= ) + trilinos? ( sci-libs/trilinos ) + || ( + dev-cpp/kokkos + sci-libs/trilinos + ) + " + +DEPEND="${RDEPEND} + virtual/pkgconfig + doc? ( app-doc/doxygen[dot] dev-lang/perl )" + +PATCHES=( +) + +src_configure() { + # deal.II needs a custom build type: + local CMAKE_BUILD_TYPE=$(usex debug DebugRelease Release) + + local mycmakeargs=( + -DDEAL_II_PACKAGE_VERSION="${PV}" + -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=OFF + -DDEAL_II_ALLOW_AUTODETECTION=OFF + -DDEAL_II_ALLOW_BUNDLED=OFF + -DDEAL_II_ALLOW_PLATFORM_INTROSPECTION=OFF + -DDEAL_II_COMPILE_EXAMPLES=OFF + -DDEAL_II_DOCHTML_RELDIR="share/doc/${P}/html" + -DDEAL_II_DOCREADME_RELDIR="share/doc/${P}" + -DDEAL_II_COMPILE_EXAMPLES=OFF + -DDEAL_II_EXAMPLES_RELDIR="share/doc/${P}/examples" + -DDEAL_II_LIBRARY_RELDIR="$(get_libdir)" + -DDEAL_II_SHARE_RELDIR="share/${PN}" + -DDEAL_II_WITH_ZLIB=ON + -DDEAL_II_WITH_ADOLC="$(usex adolc)" + -DDEAL_II_WITH_ARBORX="$(usex arborx)" + -DDEAL_II_WITH_ASSIMP="$(usex assimp)" + -DDEAL_II_WITH_ARPACK="$(usex arpack)" + -DDEAL_II_WITH_CGAL="$(usex cgal)" + -DDEAL_II_WITH_CUDA="$(usex cuda)" + -DDEAL_II_WITH_GINKGO="$(usex ginkgo)" + -DDEAL_II_COMPONENT_DOCUMENTATION="$(usex doc)" + -DDEAL_II_COMPONENT_EXAMPLES="$(usex examples)" + -DDEAL_II_WITH_GMSH="$(usex gmsh)" + -DDEAL_II_WITH_GSL="$(usex gsl)" + -DDEAL_II_WITH_HDF5="$(usex hdf5)" + -DDEAL_II_WITH_LAPACK="$(usex lapack)" + -DDEAL_II_WITH_METIS="$(usex metis)" + -DDEAL_II_WITH_MPI="$(usex mpi)" + -DDEAL_II_WITH_MUPARSER="$(usex muparser)" + -DDEAL_II_WITH_OPENCASCADE="$(usex opencascade)" + -DDEAL_II_WITH_P4EST="$(usex p4est)" + -DDEAL_II_WITH_PETSC="$(usex petsc)" + -DDEAL_II_WITH_SCALAPACK="$(usex scalapack)" + -DDEAL_II_WITH_SLEPC="$(usex slepc)" + -DDEAL_II_WITH_SUNDIALS="$(usex sundials)" + -DDEAL_II_WITH_SYMENGINE="$(usex symengine)" + -DDEAL_II_WITH_UMFPACK="$(usex sparse)" + -DDEAL_II_WITH_TBB=ON + -DDEAL_II_WITH_TRILINOS="$(usex trilinos)" + ) + + use opencascade && mycmakeargs+=( + -DCMAKE_PREFIX_PATH="/usr/$(get_libdir)/opencascade" + ) + + # Do a little dance for purely cosmetic QA reasons. The build system + # does query for the highest instruction set first and skips the other + # variables if a "higher" variant is set + if use cpu_flags_x86_avx512f; then + mycmakeargs+=( -DDEAL_II_HAVE_AVX512=yes ) + append-cxxflags "-mavx512f" + elif use cpu_flags_x86_avx; then + mycmakeargs+=( -DDEAL_II_HAVE_AVX=yes ) + append-cxxflags "-mavx2" + elif use cpu_flags_x86_avx; then + mycmakeargs+=( -DDEAL_II_HAVE_SSE2=yes ) + append-cxxflags "-msse2" + fi + + cmake_src_configure +} + +src_install() { + if use doc && [[ ${PV} != *9999* ]]; then + # copy missing images to the build directory: + cp -r "${WORKDIR}"/doc/doxygen/deal.II/images \ + "${BUILD_DIR}"/doc/doxygen/deal.II || die + # replace links: + sed -i \ + 's#"http://www.dealii.org/images/steps/developer/\(step-.*\)"#"images/\1"#g' \ + "${BUILD_DIR}"/doc/doxygen/deal.II/step_*.html || die "sed failed" + fi + cmake_src_install + + # decompress the installed example sources: + use examples && docompress -x /usr/share/doc/${PF}/examples +} diff --git a/sci-libs/dealii/dealii-9999.ebuild b/sci-libs/dealii/dealii-9999.ebuild index 3d175695c483..c6d3a65a9086 100644 --- a/sci-libs/dealii/dealii-9999.ebuild +++ b/sci-libs/dealii/dealii-9999.ebuild @@ -31,7 +31,7 @@ IUSE=" adolc arborx assimp arpack cgal cpu_flags_x86_avx cpu_flags_x86_avx512f cpu_flags_x86_sse2 cuda +debug doc +examples ginkgo gmsh +gsl hdf5 +lapack metis mpi muparser opencascade p4est petsc scalapack slepc - +sparse static-libs sundials symengine trilinos + +sparse sundials symengine trilinos " # TODO: add slepc use flag once slepc is packaged for gentoo-science @@ -70,7 +70,12 @@ RDEPEND="dev-libs/boost:= sparse? ( sci-libs/umfpack ) sundials? ( sci-libs/sundials:= ) symengine? ( >=sci-libs/symengine-0.4:= ) - trilinos? ( sci-libs/trilinos )" + trilinos? ( sci-libs/trilinos ) + || ( + dev-cpp/kokkos + sci-libs/trilinos + ) + " DEPEND="${RDEPEND} virtual/pkgconfig @@ -109,7 +114,6 @@ src_configure() { -DDEAL_II_WITH_GMSH="$(usex gmsh)" -DDEAL_II_WITH_GSL="$(usex gsl)" -DDEAL_II_WITH_HDF5="$(usex hdf5)" - -DDEAL_II_WITH_KOKKOS="$(usex trilinos)" -DDEAL_II_WITH_LAPACK="$(usex lapack)" -DDEAL_II_WITH_METIS="$(usex metis)" -DDEAL_II_WITH_MPI="$(usex mpi)" @@ -122,8 +126,6 @@ src_configure() { -DDEAL_II_WITH_SUNDIALS="$(usex sundials)" -DDEAL_II_WITH_SYMENGINE="$(usex symengine)" -DDEAL_II_WITH_UMFPACK="$(usex sparse)" - -DBUILD_SHARED_LIBS="$(usex !static-libs)" - -DDEAL_II_PREFER_STATIC_LIBS="$(usex static-libs)" -DDEAL_II_WITH_TBB=ON -DDEAL_II_WITH_TASKFLOW=OFF -DDEAL_II_WITH_TRILINOS="$(usex trilinos)" @@ -147,11 +149,6 @@ src_configure() { append-cxxflags "-msse2" fi - # Unconditionally enable strict C++17 standard. This is necessary for - # USE=cgal and USE=kokkos and safe to set for all presently supported - # compilers - append-cxxflags "-std=c++17" - cmake_src_configure } |