1 |
commit: 06a2e799559c779da1b073fef804d4ca1a548af6 |
2 |
Author: Kurt Kanzenbach <kurt <AT> kmk-computers <DOT> de> |
3 |
AuthorDate: Thu Jan 16 18:11:21 2020 +0000 |
4 |
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> |
5 |
CommitDate: Tue Jan 21 20:42:12 2020 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=06a2e799 |
7 |
|
8 |
sci-libs/libgeodecomp: Fix file collision with libflatarray |
9 |
|
10 |
As of commit 948ee21633c0 ("sci-libs/libgeodecomp: added dependency to |
11 |
libflatarray") libgeodecomp depends on libflatarray which is correct. Therefore, |
12 |
libgeodecomp uses the system installed libflatarray. However, it also bundles |
13 |
its own version libflatarray and installs that one unconditionally which results |
14 |
in the file collision. |
15 |
|
16 |
Thus, simply don't install the libflatarray files whenever the system one is |
17 |
used. That resolves the issue. |
18 |
|
19 |
While here, bump EAPI to 7 and remove visit use flag. VisIt has been removed. |
20 |
|
21 |
Bug: https://bugs.gentoo.org/688932 |
22 |
Package-Manager: Portage-2.3.79, Repoman-2.3.16 |
23 |
Signed-off-by: Kurt Kanzenbach <kurt <AT> kmk-computers.de> |
24 |
Closes: https://github.com/gentoo/gentoo/pull/14368 |
25 |
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org> |
26 |
|
27 |
.../files/libgeodecomp-0.4.0-lfa.patch | 37 ++++++++++++++++++++++ |
28 |
...p-0.4.0.ebuild => libgeodecomp-0.4.0-r1.ebuild} | 37 ++++++++++++---------- |
29 |
2 files changed, 58 insertions(+), 16 deletions(-) |
30 |
|
31 |
diff --git a/sci-libs/libgeodecomp/files/libgeodecomp-0.4.0-lfa.patch b/sci-libs/libgeodecomp/files/libgeodecomp-0.4.0-lfa.patch |
32 |
new file mode 100644 |
33 |
index 00000000000..463d416b3bf |
34 |
--- /dev/null |
35 |
+++ b/sci-libs/libgeodecomp/files/libgeodecomp-0.4.0-lfa.patch |
36 |
@@ -0,0 +1,37 @@ |
37 |
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt |
38 |
+index 673017f0..28704461 100644 |
39 |
+--- a/src/CMakeLists.txt |
40 |
++++ b/src/CMakeLists.txt |
41 |
+@@ -528,18 +528,20 @@ foreach(dir ${LIBDIRS}) |
42 |
+ endforeach(dir) |
43 |
+ |
44 |
+ # install libflatarray, too |
45 |
+-file(GLOB HEADERS "${CMAKE_CURRENT_SOURCE_DIR}/../lib/libflatarray/src/*.hpp") |
46 |
+-foreach(i ${HEADERS}) |
47 |
+- install(FILES ${i} DESTINATION include/libflatarray) |
48 |
+-endforeach() |
49 |
+-file(GLOB HEADERS "${CMAKE_CURRENT_SOURCE_DIR}/../lib/libflatarray/src/detail/*.hpp") |
50 |
+-foreach(i ${HEADERS}) |
51 |
+- install(FILES ${i} DESTINATION include/libflatarray/detail) |
52 |
+-endforeach() |
53 |
+-file(GLOB HEADERS "${CMAKE_CURRENT_SOURCE_DIR}/../lib/libflatarray/src/testbed/*.hpp") |
54 |
+-foreach(i ${HEADERS}) |
55 |
+- install(FILES ${i} DESTINATION include/libflatarray/testbed) |
56 |
+-endforeach() |
57 |
++if(NOT libflatarray_FOUND) |
58 |
++ file(GLOB HEADERS "${CMAKE_CURRENT_SOURCE_DIR}/../lib/libflatarray/src/*.hpp") |
59 |
++ foreach(i ${HEADERS}) |
60 |
++ install(FILES ${i} DESTINATION include/libflatarray) |
61 |
++ endforeach() |
62 |
++ file(GLOB HEADERS "${CMAKE_CURRENT_SOURCE_DIR}/../lib/libflatarray/src/detail/*.hpp") |
63 |
++ foreach(i ${HEADERS}) |
64 |
++ install(FILES ${i} DESTINATION include/libflatarray/detail) |
65 |
++ endforeach() |
66 |
++ file(GLOB HEADERS "${CMAKE_CURRENT_SOURCE_DIR}/../lib/libflatarray/src/testbed/*.hpp") |
67 |
++ foreach(i ${HEADERS}) |
68 |
++ install(FILES ${i} DESTINATION include/libflatarray/testbed) |
69 |
++ endforeach() |
70 |
++endif() |
71 |
+ |
72 |
+ # link against the libs we need |
73 |
+ set(INSTALLER_LINK_FLAGS "-L${CMAKE_INSTALL_PREFIX}/${LIB_DIR} -Wl,-rpath,${CMAKE_INSTALL_PREFIX}/${LIB_DIR} -lgeodecomp ") |
74 |
|
75 |
diff --git a/sci-libs/libgeodecomp/libgeodecomp-0.4.0.ebuild b/sci-libs/libgeodecomp/libgeodecomp-0.4.0-r1.ebuild |
76 |
similarity index 72% |
77 |
rename from sci-libs/libgeodecomp/libgeodecomp-0.4.0.ebuild |
78 |
rename to sci-libs/libgeodecomp/libgeodecomp-0.4.0-r1.ebuild |
79 |
index 14e3f4f3cc8..5237072823e 100644 |
80 |
--- a/sci-libs/libgeodecomp/libgeodecomp-0.4.0.ebuild |
81 |
+++ b/sci-libs/libgeodecomp/libgeodecomp-0.4.0-r1.ebuild |
82 |
@@ -1,9 +1,9 @@ |
83 |
-# Copyright 1999-2019 Gentoo Authors |
84 |
+# Copyright 1999-2020 Gentoo Authors |
85 |
# Distributed under the terms of the GNU General Public License v2 |
86 |
|
87 |
-EAPI=6 |
88 |
+EAPI=7 |
89 |
|
90 |
-inherit cmake-utils cuda |
91 |
+inherit cmake cuda |
92 |
|
93 |
DESCRIPTION="An auto-parallelizing library to speed up computer simulations" |
94 |
HOMEPAGE="http://www.libgeodecomp.org" |
95 |
@@ -14,27 +14,31 @@ LICENSE="Boost-1.0" |
96 |
KEYWORDS="~amd64 ~ppc ~x86" |
97 |
IUSE="doc mpi cuda opencl opencv silo hpx visit" |
98 |
|
99 |
-RDEPEND=">=dev-libs/boost-1.48" |
100 |
-DEPEND="${RDEPEND} |
101 |
+BDEPEND=" |
102 |
doc? ( |
103 |
app-doc/doxygen |
104 |
app-text/texlive |
105 |
media-gfx/graphviz |
106 |
- ) |
107 |
+ )" |
108 |
+RDEPEND=">=dev-libs/boost-1.48" |
109 |
+DEPEND="${RDEPEND} |
110 |
hpx? ( sys-cluster/hpx ) |
111 |
<=dev-libs/libflatarray-0.2.0 |
112 |
mpi? ( virtual/mpi ) |
113 |
cuda? ( dev-util/nvidia-cuda-toolkit ) |
114 |
opencl? ( virtual/opencl ) |
115 |
opencv? ( media-libs/opencv ) |
116 |
- silo? ( sci-libs/silo ) |
117 |
- visit? ( sci-visualization/visit )" |
118 |
+ silo? ( sci-libs/silo )" |
119 |
|
120 |
S="${WORKDIR}/${P}" |
121 |
-PATCHES=( "${FILESDIR}/${P}-scotch.patch" "${FILESDIR}/${P}-libdir.patch" ) |
122 |
+PATCHES=( |
123 |
+ "${FILESDIR}/${P}-scotch.patch" |
124 |
+ "${FILESDIR}/${P}-libdir.patch" |
125 |
+ "${FILESDIR}/${P}-lfa.patch" |
126 |
+) |
127 |
|
128 |
src_prepare() { |
129 |
- cmake-utils_src_prepare |
130 |
+ cmake_src_prepare |
131 |
use cuda && cuda_src_prepare |
132 |
} |
133 |
|
134 |
@@ -47,22 +51,23 @@ src_configure() { |
135 |
-DWITH_SILO=$(usex silo) |
136 |
-DWITH_SCOTCH=false |
137 |
-DWITH_HPX=$(usex hpx) |
138 |
- -DWITH_VISIT=$(usex visit) |
139 |
+ -DWITH_VISIT=false |
140 |
+ -DWITH_TYPEMAPS=false |
141 |
) |
142 |
- cmake-utils_src_configure |
143 |
+ cmake_src_configure |
144 |
} |
145 |
|
146 |
src_compile() { |
147 |
- cmake-utils_src_compile |
148 |
- use doc && cmake-utils_src_make doc |
149 |
+ cmake_src_compile |
150 |
+ use doc && cmake_build doc |
151 |
} |
152 |
|
153 |
src_install() { |
154 |
DOCS=( README ) |
155 |
use doc && HTML_DOCS=( doc/html/* ) |
156 |
- cmake-utils_src_install |
157 |
+ cmake_src_install |
158 |
} |
159 |
|
160 |
src_test() { |
161 |
- cmake-utils_src_make check |
162 |
+ cmake_build check |
163 |
} |