commit: be8b6a8f9aa5c220c163e99b37aa1183daf1c5e1 Author: Matthias Maier <tamiko <AT> gentoo <DOT> org> AuthorDate: Thu Apr 30 21:03:30 2020 +0000 Commit: Matthias Maier <tamiko <AT> gentoo <DOT> org> CommitDate: Thu Apr 30 22:06:04 2020 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=be8b6a8f
sci-libs/ginkgo: improve ebuild Package-Manager: Portage-2.3.99, Repoman-2.3.22 Signed-off-by: Matthias Maier <tamiko <AT> gentoo.org> .../ginkgo/files/ginkgo-1.1.1-set_soname.patch | 14 +++++++++ ...{ginkgo-1.1.1.ebuild => ginkgo-1.1.1-r1.ebuild} | 32 +++++++++++++++----- sci-libs/ginkgo/ginkgo-9999.ebuild | 34 +++++++++++++++------- sci-libs/ginkgo/metadata.xml | 1 + 4 files changed, 63 insertions(+), 18 deletions(-) diff --git a/sci-libs/ginkgo/files/ginkgo-1.1.1-set_soname.patch b/sci-libs/ginkgo/files/ginkgo-1.1.1-set_soname.patch new file mode 100644 index 00000000000..9feceee00f7 --- /dev/null +++ b/sci-libs/ginkgo/files/ginkgo-1.1.1-set_soname.patch @@ -0,0 +1,14 @@ +diff --git a/cmake/build_helpers.cmake b/cmake/build_helpers.cmake +index 8a8ad04..03c6db6 100644 +--- a/cmake/build_helpers.cmake ++++ b/cmake/build_helpers.cmake +@@ -17,6 +17,9 @@ function(ginkgo_compile_features name) + if(GINKGO_WITH_IWYU AND GINKGO_IWYU_PATH) + set_property(TARGET "${name}" PROPERTY CXX_INCLUDE_WHAT_YOU_USE ${GINKGO_IWYU_PATH}) + endif() ++ # Set an appropriate SONAME ++ set_property(TARGET "${name}" PROPERTY ++ SOVERSION "${Ginkgo_VERSION}") + if(GINKGO_CHANGED_SHARED_LIBRARY) + # Put all shared libraries and corresponding imported libraries into the specified path + set_property(TARGET "${name}" PROPERTY diff --git a/sci-libs/ginkgo/ginkgo-1.1.1.ebuild b/sci-libs/ginkgo/ginkgo-1.1.1-r1.ebuild similarity index 51% rename from sci-libs/ginkgo/ginkgo-1.1.1.ebuild rename to sci-libs/ginkgo/ginkgo-1.1.1-r1.ebuild index a3c8615833d..5348b9a51be 100644 --- a/sci-libs/ginkgo/ginkgo-1.1.1.ebuild +++ b/sci-libs/ginkgo/ginkgo-1.1.1-r1.ebuild @@ -8,19 +8,34 @@ inherit cmake-utils DESCRIPTION="Numerical linear algebra software package" HOMEPAGE="https://ginkgo-project.github.io/" -SRC_URI="https://github.com/${PN}-project/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" -KEYWORDS="~amd64 ~x86" +if [[ ${PV} = *9999* ]]; then + EGIT_REPO_URI="https://github.com/ginkgo-project/ginkgo" + SRC_URI="" + KEYWORDS="" + inherit git-r3 +else + SRC_URI="https://github.com/${PN}-project/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi LICENSE="BSD-with-attribution" SLOT="0" -IUSE="" +IUSE="+openmp cuda" -# TODO: add slepc use flag once slepc is packaged for gentoo-science -REQUIRED_USE="" +RDEPEND=" + cuda? ( dev-util/nvidia-cuda-sdk )" +DEPEND="${RDEPEND}" -RDEPEND="" +PATCHES=( + "${FILESDIR}"/${PN}-1.1.1-set_soname.patch +) -DEPEND="" +pkg_setup() { + if [[ ${MERGE_TYPE} != binary ]] && \ + use openmp && ! tc-has-openmp ; then + die "Need an OpenMP capable compiler" + fi +} src_prepare() { sed -i \ @@ -38,7 +53,8 @@ src_configure() { -DGINKGO_BUILD_TESTS=OFF -DGINKGO_BUILD_BENCHMARKS=OFF -DGINKGO_BUILD_REFERENCE=ON - -DGINKGO_BUILD_OMP=ON + -DGINKGO_BUILD_OMP="$(usex openmp)" + -DGINKGO_BUILD_CUDA="$(usex cuda)" ) cmake-utils_src_configure } diff --git a/sci-libs/ginkgo/ginkgo-9999.ebuild b/sci-libs/ginkgo/ginkgo-9999.ebuild index 3b9102d2165..5348b9a51be 100644 --- a/sci-libs/ginkgo/ginkgo-9999.ebuild +++ b/sci-libs/ginkgo/ginkgo-9999.ebuild @@ -8,21 +8,34 @@ inherit cmake-utils DESCRIPTION="Numerical linear algebra software package" HOMEPAGE="https://ginkgo-project.github.io/" -inherit git-r3 -EGIT_REPO_URI="https://github.com/ginkgo-project/ginkgo" -SRC_URI="" -KEYWORDS="" +if [[ ${PV} = *9999* ]]; then + EGIT_REPO_URI="https://github.com/ginkgo-project/ginkgo" + SRC_URI="" + KEYWORDS="" + inherit git-r3 +else + SRC_URI="https://github.com/${PN}-project/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi LICENSE="BSD-with-attribution" SLOT="0" -IUSE="" +IUSE="+openmp cuda" -# TODO: add slepc use flag once slepc is packaged for gentoo-science -REQUIRED_USE="" +RDEPEND=" + cuda? ( dev-util/nvidia-cuda-sdk )" +DEPEND="${RDEPEND}" -RDEPEND="" +PATCHES=( + "${FILESDIR}"/${PN}-1.1.1-set_soname.patch +) -DEPEND="" +pkg_setup() { + if [[ ${MERGE_TYPE} != binary ]] && \ + use openmp && ! tc-has-openmp ; then + die "Need an OpenMP capable compiler" + fi +} src_prepare() { sed -i \ @@ -40,7 +53,8 @@ src_configure() { -DGINKGO_BUILD_TESTS=OFF -DGINKGO_BUILD_BENCHMARKS=OFF -DGINKGO_BUILD_REFERENCE=ON - -DGINKGO_BUILD_OMP=ON + -DGINKGO_BUILD_OMP="$(usex openmp)" + -DGINKGO_BUILD_CUDA="$(usex cuda)" ) cmake-utils_src_configure } diff --git a/sci-libs/ginkgo/metadata.xml b/sci-libs/ginkgo/metadata.xml index e67b3457031..2b6a2c10b33 100644 --- a/sci-libs/ginkgo/metadata.xml +++ b/sci-libs/ginkgo/metadata.xml @@ -15,6 +15,7 @@ implemented using modern C++, with GPU kernels implemented in CUDA. </longdescription> <use> + <flag name="cuda">Add support for cuda assimp (<pkg>dev-util/nvidia-cuda-sdk</pkg>)</flag> </use> <upstream> <remote-id type="github">ginkgo-project/ginkgo</remote-id>