public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Matthias Maier" <tamiko@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-libs/ginkgo/, sci-libs/ginkgo/files/
Date: Thu, 30 Apr 2020 22:07:37 +0000 (UTC)	[thread overview]
Message-ID: <1588284364.be8b6a8f9aa5c220c163e99b37aa1183daf1c5e1.tamiko@gentoo> (raw)

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>


             reply	other threads:[~2020-04-30 22:07 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-30 22:07 Matthias Maier [this message]
  -- strict thread matches above, loose matches on Subject: below --
2023-06-20  1:50 [gentoo-commits] repo/gentoo:master commit in: sci-libs/ginkgo/, sci-libs/ginkgo/files/ Matthias Maier
2024-07-03 22:43 Matthias Maier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1588284364.be8b6a8f9aa5c220c163e99b37aa1183daf1c5e1.tamiko@gentoo \
    --to=tamiko@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox