Gentoo Archives: gentoo-commits

From: Matthias Maier <tamiko@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-libs/ginkgo/, sci-libs/ginkgo/files/
Date: Thu, 30 Apr 2020 22:07:43
Message-Id: 1588284364.be8b6a8f9aa5c220c163e99b37aa1183daf1c5e1.tamiko@gentoo
1 commit: be8b6a8f9aa5c220c163e99b37aa1183daf1c5e1
2 Author: Matthias Maier <tamiko <AT> gentoo <DOT> org>
3 AuthorDate: Thu Apr 30 21:03:30 2020 +0000
4 Commit: Matthias Maier <tamiko <AT> gentoo <DOT> org>
5 CommitDate: Thu Apr 30 22:06:04 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=be8b6a8f
7
8 sci-libs/ginkgo: improve ebuild
9
10 Package-Manager: Portage-2.3.99, Repoman-2.3.22
11 Signed-off-by: Matthias Maier <tamiko <AT> gentoo.org>
12
13 .../ginkgo/files/ginkgo-1.1.1-set_soname.patch | 14 +++++++++
14 ...{ginkgo-1.1.1.ebuild => ginkgo-1.1.1-r1.ebuild} | 32 +++++++++++++++-----
15 sci-libs/ginkgo/ginkgo-9999.ebuild | 34 +++++++++++++++-------
16 sci-libs/ginkgo/metadata.xml | 1 +
17 4 files changed, 63 insertions(+), 18 deletions(-)
18
19 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
20 new file mode 100644
21 index 00000000000..9feceee00f7
22 --- /dev/null
23 +++ b/sci-libs/ginkgo/files/ginkgo-1.1.1-set_soname.patch
24 @@ -0,0 +1,14 @@
25 +diff --git a/cmake/build_helpers.cmake b/cmake/build_helpers.cmake
26 +index 8a8ad04..03c6db6 100644
27 +--- a/cmake/build_helpers.cmake
28 ++++ b/cmake/build_helpers.cmake
29 +@@ -17,6 +17,9 @@ function(ginkgo_compile_features name)
30 + if(GINKGO_WITH_IWYU AND GINKGO_IWYU_PATH)
31 + set_property(TARGET "${name}" PROPERTY CXX_INCLUDE_WHAT_YOU_USE ${GINKGO_IWYU_PATH})
32 + endif()
33 ++ # Set an appropriate SONAME
34 ++ set_property(TARGET "${name}" PROPERTY
35 ++ SOVERSION "${Ginkgo_VERSION}")
36 + if(GINKGO_CHANGED_SHARED_LIBRARY)
37 + # Put all shared libraries and corresponding imported libraries into the specified path
38 + set_property(TARGET "${name}" PROPERTY
39
40 diff --git a/sci-libs/ginkgo/ginkgo-1.1.1.ebuild b/sci-libs/ginkgo/ginkgo-1.1.1-r1.ebuild
41 similarity index 51%
42 rename from sci-libs/ginkgo/ginkgo-1.1.1.ebuild
43 rename to sci-libs/ginkgo/ginkgo-1.1.1-r1.ebuild
44 index a3c8615833d..5348b9a51be 100644
45 --- a/sci-libs/ginkgo/ginkgo-1.1.1.ebuild
46 +++ b/sci-libs/ginkgo/ginkgo-1.1.1-r1.ebuild
47 @@ -8,19 +8,34 @@ inherit cmake-utils
48 DESCRIPTION="Numerical linear algebra software package"
49 HOMEPAGE="https://ginkgo-project.github.io/"
50
51 -SRC_URI="https://github.com/${PN}-project/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
52 -KEYWORDS="~amd64 ~x86"
53 +if [[ ${PV} = *9999* ]]; then
54 + EGIT_REPO_URI="https://github.com/ginkgo-project/ginkgo"
55 + SRC_URI=""
56 + KEYWORDS=""
57 + inherit git-r3
58 +else
59 + SRC_URI="https://github.com/${PN}-project/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
60 + KEYWORDS="~amd64 ~x86"
61 +fi
62
63 LICENSE="BSD-with-attribution"
64 SLOT="0"
65 -IUSE=""
66 +IUSE="+openmp cuda"
67
68 -# TODO: add slepc use flag once slepc is packaged for gentoo-science
69 -REQUIRED_USE=""
70 +RDEPEND="
71 + cuda? ( dev-util/nvidia-cuda-sdk )"
72 +DEPEND="${RDEPEND}"
73
74 -RDEPEND=""
75 +PATCHES=(
76 + "${FILESDIR}"/${PN}-1.1.1-set_soname.patch
77 +)
78
79 -DEPEND=""
80 +pkg_setup() {
81 + if [[ ${MERGE_TYPE} != binary ]] && \
82 + use openmp && ! tc-has-openmp ; then
83 + die "Need an OpenMP capable compiler"
84 + fi
85 +}
86
87 src_prepare() {
88 sed -i \
89 @@ -38,7 +53,8 @@ src_configure() {
90 -DGINKGO_BUILD_TESTS=OFF
91 -DGINKGO_BUILD_BENCHMARKS=OFF
92 -DGINKGO_BUILD_REFERENCE=ON
93 - -DGINKGO_BUILD_OMP=ON
94 + -DGINKGO_BUILD_OMP="$(usex openmp)"
95 + -DGINKGO_BUILD_CUDA="$(usex cuda)"
96 )
97 cmake-utils_src_configure
98 }
99
100 diff --git a/sci-libs/ginkgo/ginkgo-9999.ebuild b/sci-libs/ginkgo/ginkgo-9999.ebuild
101 index 3b9102d2165..5348b9a51be 100644
102 --- a/sci-libs/ginkgo/ginkgo-9999.ebuild
103 +++ b/sci-libs/ginkgo/ginkgo-9999.ebuild
104 @@ -8,21 +8,34 @@ inherit cmake-utils
105 DESCRIPTION="Numerical linear algebra software package"
106 HOMEPAGE="https://ginkgo-project.github.io/"
107
108 -inherit git-r3
109 -EGIT_REPO_URI="https://github.com/ginkgo-project/ginkgo"
110 -SRC_URI=""
111 -KEYWORDS=""
112 +if [[ ${PV} = *9999* ]]; then
113 + EGIT_REPO_URI="https://github.com/ginkgo-project/ginkgo"
114 + SRC_URI=""
115 + KEYWORDS=""
116 + inherit git-r3
117 +else
118 + SRC_URI="https://github.com/${PN}-project/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
119 + KEYWORDS="~amd64 ~x86"
120 +fi
121
122 LICENSE="BSD-with-attribution"
123 SLOT="0"
124 -IUSE=""
125 +IUSE="+openmp cuda"
126
127 -# TODO: add slepc use flag once slepc is packaged for gentoo-science
128 -REQUIRED_USE=""
129 +RDEPEND="
130 + cuda? ( dev-util/nvidia-cuda-sdk )"
131 +DEPEND="${RDEPEND}"
132
133 -RDEPEND=""
134 +PATCHES=(
135 + "${FILESDIR}"/${PN}-1.1.1-set_soname.patch
136 +)
137
138 -DEPEND=""
139 +pkg_setup() {
140 + if [[ ${MERGE_TYPE} != binary ]] && \
141 + use openmp && ! tc-has-openmp ; then
142 + die "Need an OpenMP capable compiler"
143 + fi
144 +}
145
146 src_prepare() {
147 sed -i \
148 @@ -40,7 +53,8 @@ src_configure() {
149 -DGINKGO_BUILD_TESTS=OFF
150 -DGINKGO_BUILD_BENCHMARKS=OFF
151 -DGINKGO_BUILD_REFERENCE=ON
152 - -DGINKGO_BUILD_OMP=ON
153 + -DGINKGO_BUILD_OMP="$(usex openmp)"
154 + -DGINKGO_BUILD_CUDA="$(usex cuda)"
155 )
156 cmake-utils_src_configure
157 }
158
159 diff --git a/sci-libs/ginkgo/metadata.xml b/sci-libs/ginkgo/metadata.xml
160 index e67b3457031..2b6a2c10b33 100644
161 --- a/sci-libs/ginkgo/metadata.xml
162 +++ b/sci-libs/ginkgo/metadata.xml
163 @@ -15,6 +15,7 @@
164 implemented using modern C++, with GPU kernels implemented in CUDA.
165 </longdescription>
166 <use>
167 + <flag name="cuda">Add support for cuda assimp (<pkg>dev-util/nvidia-cuda-sdk</pkg>)</flag>
168 </use>
169 <upstream>
170 <remote-id type="github">ginkgo-project/ginkgo</remote-id>