1 |
commit: ac85f06620366c1e817dfcf8d7a90055f08eef47 |
2 |
Author: Sébastien Fabbro <bicatali <AT> gentoo <DOT> org> |
3 |
AuthorDate: Fri Dec 30 23:58:20 2016 +0000 |
4 |
Commit: Sebastien Fabbro <bicatali <AT> gentoo <DOT> org> |
5 |
CommitDate: Mon Jan 2 16:13:44 2017 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ac85f066 |
7 |
|
8 |
sci-libs/sundials: initial import |
9 |
|
10 |
Package-Manager: Portage-2.3.3, Repoman-2.3.1 |
11 |
|
12 |
sci-libs/sundials/Manifest | 1 + |
13 |
.../files/sundials-2.7.0-underlinking-libdir.patch | 395 +++++++++++++++++++++ |
14 |
sci-libs/sundials/metadata.xml | 22 ++ |
15 |
sci-libs/sundials/sundials-2.7.0.ebuild | 74 ++++ |
16 |
4 files changed, 492 insertions(+) |
17 |
|
18 |
diff --git a/sci-libs/sundials/Manifest b/sci-libs/sundials/Manifest |
19 |
new file mode 100644 |
20 |
index 00000000..53a6a98 |
21 |
--- /dev/null |
22 |
+++ b/sci-libs/sundials/Manifest |
23 |
@@ -0,0 +1 @@ |
24 |
+DIST sundials-2.7.0.tar.gz 12258093 SHA256 d39fcac7175d701398e4eb209f7e92a5b30a78358d4a0c0fcc23db23c11ba104 SHA512 c86c167538065a4109b36ae7c8f60f3d92184133cfa661b5acfccee052c38f40be865412a1746bb57907b61602c212c0f15e1e30ef29e8a49db6d46a75a28e69 WHIRLPOOL 3aabd2912e6be7d159d69853ecc76d9549cc6020344083c71cdcf43867e86d95d14862463c201270f9ff5a16536f4341d6e0eb466402870cf7ee6e7a45669667 |
25 |
|
26 |
diff --git a/sci-libs/sundials/files/sundials-2.7.0-underlinking-libdir.patch b/sci-libs/sundials/files/sundials-2.7.0-underlinking-libdir.patch |
27 |
new file mode 100644 |
28 |
index 00000000..db47ac3 |
29 |
--- /dev/null |
30 |
+++ b/sci-libs/sundials/files/sundials-2.7.0-underlinking-libdir.patch |
31 |
@@ -0,0 +1,395 @@ |
32 |
+diff -Nur sundials-2.7.0.orig/src/arkode/CMakeLists.txt sundials-2.7.0/src/arkode/CMakeLists.txt |
33 |
+--- sundials-2.7.0.orig/src/arkode/CMakeLists.txt 2016-09-26 22:16:52.000000000 +0000 |
34 |
++++ sundials-2.7.0/src/arkode/CMakeLists.txt 2016-12-30 23:41:54.355840949 +0000 |
35 |
+@@ -127,7 +127,7 @@ |
36 |
+ PROPERTIES OUTPUT_NAME sundials_arkode CLEAN_DIRECT_OUTPUT 1) |
37 |
+ |
38 |
+ # Install the ARKODE library |
39 |
+- INSTALL(TARGETS sundials_arkode_static DESTINATION lib) |
40 |
++ INSTALL(TARGETS sundials_arkode_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
41 |
+ |
42 |
+ ENDIF(BUILD_STATIC_LIBS) |
43 |
+ |
44 |
+@@ -146,8 +146,10 @@ |
45 |
+ SET_TARGET_PROPERTIES(sundials_arkode_shared |
46 |
+ PROPERTIES VERSION ${arkodelib_VERSION} SOVERSION ${arkodelib_SOVERSION}) |
47 |
+ |
48 |
++ TARGET_LINK_LIBRARIES(sundials_arkode_shared -lm ${KLU_LIBRARIES} ${SUPERLUMT_LIBRARIES} ${LAPACK_LIBRARIES}) |
49 |
++ |
50 |
+ # Install the ARKODE library |
51 |
+- INSTALL(TARGETS sundials_arkode_shared DESTINATION lib) |
52 |
++ INSTALL(TARGETS sundials_arkode_shared DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
53 |
+ |
54 |
+ ENDIF(BUILD_SHARED_LIBS) |
55 |
+ |
56 |
+diff -Nur sundials-2.7.0.orig/src/arkode/fcmix/CMakeLists.txt sundials-2.7.0/src/arkode/fcmix/CMakeLists.txt |
57 |
+--- sundials-2.7.0.orig/src/arkode/fcmix/CMakeLists.txt 2016-09-26 22:16:52.000000000 +0000 |
58 |
++++ sundials-2.7.0/src/arkode/fcmix/CMakeLists.txt 2016-12-30 23:41:54.355840949 +0000 |
59 |
+@@ -70,7 +70,7 @@ |
60 |
+ PROPERTIES OUTPUT_NAME sundials_farkode CLEAN_DIRECT_OUTPUT 1) |
61 |
+ |
62 |
+ # Install the FARKODE library |
63 |
+-INSTALL(TARGETS sundials_farkode_static DESTINATION lib) |
64 |
++INSTALL(TARGETS sundials_farkode_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
65 |
+ |
66 |
+ # |
67 |
+ MESSAGE(STATUS "Added ARKODE FCMIX module") |
68 |
+diff -Nur sundials-2.7.0.orig/src/cvode/CMakeLists.txt sundials-2.7.0/src/cvode/CMakeLists.txt |
69 |
+--- sundials-2.7.0.orig/src/cvode/CMakeLists.txt 2016-09-26 22:17:07.000000000 +0000 |
70 |
++++ sundials-2.7.0/src/cvode/CMakeLists.txt 2016-12-30 23:41:54.355840949 +0000 |
71 |
+@@ -134,7 +134,7 @@ |
72 |
+ PROPERTIES OUTPUT_NAME sundials_cvode CLEAN_DIRECT_OUTPUT 1) |
73 |
+ |
74 |
+ # Install the CVODE library |
75 |
+- INSTALL(TARGETS sundials_cvode_static DESTINATION lib) |
76 |
++ INSTALL(TARGETS sundials_cvode_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
77 |
+ |
78 |
+ ENDIF(BUILD_STATIC_LIBS) |
79 |
+ |
80 |
+@@ -153,8 +153,10 @@ |
81 |
+ SET_TARGET_PROPERTIES(sundials_cvode_shared |
82 |
+ PROPERTIES VERSION ${cvodelib_VERSION} SOVERSION ${cvodelib_SOVERSION}) |
83 |
+ |
84 |
++ TARGET_LINK_LIBRARIES(sundials_cvode_shared -lm ${KLU_LIBRARIES} ${SUPERLUMT_LIBRARIES} ${LAPACK_LIBRARIES}) |
85 |
++ |
86 |
+ # Install the CVODE library |
87 |
+- INSTALL(TARGETS sundials_cvode_shared DESTINATION lib) |
88 |
++ INSTALL(TARGETS sundials_cvode_shared DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
89 |
+ |
90 |
+ ENDIF(BUILD_SHARED_LIBS) |
91 |
+ |
92 |
+diff -Nur sundials-2.7.0.orig/src/cvode/fcmix/CMakeLists.txt sundials-2.7.0/src/cvode/fcmix/CMakeLists.txt |
93 |
+--- sundials-2.7.0.orig/src/cvode/fcmix/CMakeLists.txt 2016-09-26 22:17:07.000000000 +0000 |
94 |
++++ sundials-2.7.0/src/cvode/fcmix/CMakeLists.txt 2016-12-30 23:41:54.355840949 +0000 |
95 |
+@@ -57,7 +57,7 @@ |
96 |
+ PROPERTIES OUTPUT_NAME sundials_fcvode CLEAN_DIRECT_OUTPUT 1) |
97 |
+ |
98 |
+ # Install the FCVODE library |
99 |
+-INSTALL(TARGETS sundials_fcvode_static DESTINATION lib) |
100 |
++INSTALL(TARGETS sundials_fcvode_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
101 |
+ |
102 |
+ # |
103 |
+ MESSAGE(STATUS "Added CVODE FCMIX module") |
104 |
+diff -Nur sundials-2.7.0.orig/src/cvodes/CMakeLists.txt sundials-2.7.0/src/cvodes/CMakeLists.txt |
105 |
+--- sundials-2.7.0.orig/src/cvodes/CMakeLists.txt 2016-09-26 22:17:15.000000000 +0000 |
106 |
++++ sundials-2.7.0/src/cvodes/CMakeLists.txt 2016-12-30 23:41:54.355840949 +0000 |
107 |
+@@ -121,7 +121,7 @@ |
108 |
+ PROPERTIES OUTPUT_NAME sundials_cvodes CLEAN_DIRECT_OUTPUT 1) |
109 |
+ |
110 |
+ # Install the CVODES library |
111 |
+- INSTALL(TARGETS sundials_cvodes_static DESTINATION lib) |
112 |
++ INSTALL(TARGETS sundials_cvodes_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
113 |
+ |
114 |
+ ENDIF(BUILD_STATIC_LIBS) |
115 |
+ |
116 |
+@@ -140,8 +140,9 @@ |
117 |
+ SET_TARGET_PROPERTIES(sundials_cvodes_shared |
118 |
+ PROPERTIES VERSION ${cvodeslib_VERSION} SOVERSION ${cvodeslib_SOVERSION}) |
119 |
+ |
120 |
++ TARGET_LINK_LIBRARIES(sundials_cvodes_shared -lm ${KLU_LIBRARIES} ${SUPERLUMT_LIBRARIES} ${LAPACK_LIBRARIES}) |
121 |
+ # Install the CVODES library |
122 |
+- INSTALL(TARGETS sundials_cvodes_shared DESTINATION lib) |
123 |
++ INSTALL(TARGETS sundials_cvodes_shared DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
124 |
+ |
125 |
+ ENDIF(BUILD_SHARED_LIBS) |
126 |
+ |
127 |
+diff -Nur sundials-2.7.0.orig/src/ida/CMakeLists.txt sundials-2.7.0/src/ida/CMakeLists.txt |
128 |
+--- sundials-2.7.0.orig/src/ida/CMakeLists.txt 2016-09-26 22:17:26.000000000 +0000 |
129 |
++++ sundials-2.7.0/src/ida/CMakeLists.txt 2016-12-30 23:41:54.355840949 +0000 |
130 |
+@@ -124,7 +124,7 @@ |
131 |
+ PROPERTIES OUTPUT_NAME sundials_ida CLEAN_DIRECT_OUTPUT 1) |
132 |
+ |
133 |
+ # Install the IDA library |
134 |
+- INSTALL(TARGETS sundials_ida_static DESTINATION lib) |
135 |
++ INSTALL(TARGETS sundials_ida_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
136 |
+ |
137 |
+ ENDIF(BUILD_STATIC_LIBS) |
138 |
+ |
139 |
+@@ -143,8 +143,10 @@ |
140 |
+ SET_TARGET_PROPERTIES(sundials_ida_shared |
141 |
+ PROPERTIES VERSION ${idalib_VERSION} SOVERSION ${idalib_SOVERSION}) |
142 |
+ |
143 |
++ TARGET_LINK_LIBRARIES(sundials_ida_shared -lm ${KLU_LIBRARIES} ${SUPERLUMT_LIBRARIES} ${LAPACK_LIBRARIES}) |
144 |
++ |
145 |
+ # Install the IDA library |
146 |
+- INSTALL(TARGETS sundials_ida_shared DESTINATION lib) |
147 |
++ INSTALL(TARGETS sundials_ida_shared DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
148 |
+ |
149 |
+ ENDIF(BUILD_SHARED_LIBS) |
150 |
+ |
151 |
+diff -Nur sundials-2.7.0.orig/src/ida/fcmix/CMakeLists.txt sundials-2.7.0/src/ida/fcmix/CMakeLists.txt |
152 |
+--- sundials-2.7.0.orig/src/ida/fcmix/CMakeLists.txt 2016-09-26 22:17:26.000000000 +0000 |
153 |
++++ sundials-2.7.0/src/ida/fcmix/CMakeLists.txt 2016-12-30 23:41:54.355840949 +0000 |
154 |
+@@ -56,6 +56,6 @@ |
155 |
+ PROPERTIES OUTPUT_NAME sundials_fida CLEAN_DIRECT_OUTPUT 1) |
156 |
+ |
157 |
+ # Install the FIDA library |
158 |
+-INSTALL(TARGETS sundials_fida_static DESTINATION lib) |
159 |
++INSTALL(TARGETS sundials_fida_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
160 |
+ # |
161 |
+ MESSAGE(STATUS "Added IDA FCMIX module") |
162 |
+diff -Nur sundials-2.7.0.orig/src/idas/CMakeLists.txt sundials-2.7.0/src/idas/CMakeLists.txt |
163 |
+--- sundials-2.7.0.orig/src/idas/CMakeLists.txt 2016-09-26 22:17:32.000000000 +0000 |
164 |
++++ sundials-2.7.0/src/idas/CMakeLists.txt 2016-12-30 23:41:54.355840949 +0000 |
165 |
+@@ -126,7 +126,7 @@ |
166 |
+ PROPERTIES OUTPUT_NAME sundials_idas CLEAN_DIRECT_OUTPUT 1) |
167 |
+ |
168 |
+ # Install the IDA library |
169 |
+- INSTALL(TARGETS sundials_idas_static DESTINATION lib) |
170 |
++ INSTALL(TARGETS sundials_idas_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
171 |
+ |
172 |
+ ENDIF(BUILD_STATIC_LIBS) |
173 |
+ |
174 |
+@@ -145,8 +145,10 @@ |
175 |
+ SET_TARGET_PROPERTIES(sundials_idas_shared |
176 |
+ PROPERTIES VERSION ${idaslib_VERSION} SOVERSION ${idaslib_SOVERSION}) |
177 |
+ |
178 |
++ TARGET_LINK_LIBRARIES(sundials_idas_shared -lm ${KLU_LIBRARIES} ${SUPERLUMT_LIBRARIES} ${LAPACK_LIBRARIES}) |
179 |
++ |
180 |
+ # Install the IDAS library |
181 |
+- INSTALL(TARGETS sundials_idas_shared DESTINATION lib) |
182 |
++ INSTALL(TARGETS sundials_idas_shared DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
183 |
+ |
184 |
+ ENDIF(BUILD_SHARED_LIBS) |
185 |
+ |
186 |
+diff -Nur sundials-2.7.0.orig/src/kinsol/CMakeLists.txt sundials-2.7.0/src/kinsol/CMakeLists.txt |
187 |
+--- sundials-2.7.0.orig/src/kinsol/CMakeLists.txt 2016-09-26 22:17:39.000000000 +0000 |
188 |
++++ sundials-2.7.0/src/kinsol/CMakeLists.txt 2016-12-30 23:41:54.355840949 +0000 |
189 |
+@@ -134,7 +134,7 @@ |
190 |
+ PROPERTIES OUTPUT_NAME sundials_kinsol CLEAN_DIRECT_OUTPUT 1) |
191 |
+ |
192 |
+ # Install the KINSOL library |
193 |
+- INSTALL(TARGETS sundials_kinsol_static DESTINATION lib) |
194 |
++ INSTALL(TARGETS sundials_kinsol_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
195 |
+ |
196 |
+ ENDIF(BUILD_STATIC_LIBS) |
197 |
+ |
198 |
+@@ -153,8 +153,10 @@ |
199 |
+ SET_TARGET_PROPERTIES(sundials_kinsol_shared |
200 |
+ PROPERTIES VERSION ${kinsollib_VERSION} SOVERSION ${kinsollib_SOVERSION}) |
201 |
+ |
202 |
++ TARGET_LINK_LIBRARIES(sundials_kinsol_shared -lm ${KLU_LIBRARIES} ${SUPERLUMT_LIBRARIES} ${LAPACK_LIBRARIES}) |
203 |
++ |
204 |
+ # Install the KINSOL library |
205 |
+- INSTALL(TARGETS sundials_kinsol_shared DESTINATION lib) |
206 |
++ INSTALL(TARGETS sundials_kinsol_shared DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
207 |
+ |
208 |
+ ENDIF(BUILD_SHARED_LIBS) |
209 |
+ |
210 |
+diff -Nur sundials-2.7.0.orig/src/kinsol/fcmix/CMakeLists.txt sundials-2.7.0/src/kinsol/fcmix/CMakeLists.txt |
211 |
+--- sundials-2.7.0.orig/src/kinsol/fcmix/CMakeLists.txt 2016-09-26 22:17:39.000000000 +0000 |
212 |
++++ sundials-2.7.0/src/kinsol/fcmix/CMakeLists.txt 2016-12-30 23:41:54.355840949 +0000 |
213 |
+@@ -54,7 +54,7 @@ |
214 |
+ PROPERTIES OUTPUT_NAME sundials_fkinsol CLEAN_DIRECT_OUTPUT 1) |
215 |
+ |
216 |
+ # Install the FKINSOL library |
217 |
+-INSTALL(TARGETS sundials_fkinsol_static DESTINATION lib) |
218 |
++INSTALL(TARGETS sundials_fkinsol_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
219 |
+ |
220 |
+ # |
221 |
+ MESSAGE(STATUS "Added KINSOL FCMIX module") |
222 |
+diff -Nur sundials-2.7.0.orig/src/nvec_openmp/CMakeLists.txt sundials-2.7.0/src/nvec_openmp/CMakeLists.txt |
223 |
+--- sundials-2.7.0.orig/src/nvec_openmp/CMakeLists.txt 2016-09-26 22:16:50.000000000 +0000 |
224 |
++++ sundials-2.7.0/src/nvec_openmp/CMakeLists.txt 2016-12-30 23:41:54.355840949 +0000 |
225 |
+@@ -51,7 +51,7 @@ |
226 |
+ ADD_LIBRARY(sundials_nvecopenmp_static STATIC ${nvecopenmp_SOURCES} ${shared_SOURCES}) |
227 |
+ SET_TARGET_PROPERTIES(sundials_nvecopenmp_static |
228 |
+ PROPERTIES OUTPUT_NAME sundials_nvecopenmp CLEAN_DIRECT_OUTPUT 1) |
229 |
+- INSTALL(TARGETS sundials_nvecopenmp_static DESTINATION lib) |
230 |
++ INSTALL(TARGETS sundials_nvecopenmp_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
231 |
+ ENDIF(BUILD_STATIC_LIBS) |
232 |
+ |
233 |
+ # Rules for building and installing the shared library: |
234 |
+@@ -65,7 +65,8 @@ |
235 |
+ PROPERTIES OUTPUT_NAME sundials_nvecopenmp CLEAN_DIRECT_OUTPUT 1) |
236 |
+ SET_TARGET_PROPERTIES(sundials_nvecopenmp_shared |
237 |
+ PROPERTIES VERSION ${nveclib_VERSION} SOVERSION ${nveclib_SOVERSION}) |
238 |
+- INSTALL(TARGETS sundials_nvecopenmp_shared DESTINATION lib) |
239 |
++ TARGET_LINK_LIBRARIES(sundials_nvecopenmp_shared -lm) |
240 |
++ INSTALL(TARGETS sundials_nvecopenmp_shared DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
241 |
+ ENDIF(BUILD_SHARED_LIBS) |
242 |
+ |
243 |
+ # Install the NVECOPENMP header files |
244 |
+@@ -78,7 +79,7 @@ |
245 |
+ ADD_LIBRARY(sundials_fnvecopenmp_static STATIC ${fnvecopenmp_SOURCES}) |
246 |
+ SET_TARGET_PROPERTIES(sundials_fnvecopenmp_static |
247 |
+ PROPERTIES OUTPUT_NAME sundials_fnvecopenmp CLEAN_DIRECT_OUTPUT 1) |
248 |
+- INSTALL(TARGETS sundials_fnvecopenmp_static DESTINATION lib) |
249 |
++ INSTALL(TARGETS sundials_fnvecopenmp_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
250 |
+ ENDIF(BUILD_STATIC_LIBS) |
251 |
+ IF(BUILD_SHARED_LIBS) |
252 |
+ ADD_LIBRARY(sundials_fnvecopenmp_shared ${fnvecopenmp_SOURCES}) |
253 |
+@@ -86,7 +87,8 @@ |
254 |
+ PROPERTIES OUTPUT_NAME sundials_fnvecopenmp CLEAN_DIRECT_OUTPUT 1) |
255 |
+ SET_TARGET_PROPERTIES(sundials_fnvecopenmp_shared |
256 |
+ PROPERTIES VERSION ${nveclib_VERSION} SOVERSION ${nveclib_SOVERSION}) |
257 |
+- INSTALL(TARGETS sundials_fnvecopenmp_shared DESTINATION lib) |
258 |
++ TARGET_LINK_LIBRARIES(sundials_fnvecopenmp_shared -lm) |
259 |
++ INSTALL(TARGETS sundials_fnvecopenmp_shared DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
260 |
+ ENDIF(BUILD_SHARED_LIBS) |
261 |
+ ENDIF(FCMIX_ENABLE AND F77_FOUND) |
262 |
+ |
263 |
+diff -Nur sundials-2.7.0.orig/src/nvec_par/CMakeLists.txt sundials-2.7.0/src/nvec_par/CMakeLists.txt |
264 |
+--- sundials-2.7.0.orig/src/nvec_par/CMakeLists.txt 2016-09-26 22:16:50.000000000 +0000 |
265 |
++++ sundials-2.7.0/src/nvec_par/CMakeLists.txt 2016-12-30 23:41:54.355840949 +0000 |
266 |
+@@ -52,7 +52,7 @@ |
267 |
+ ADD_LIBRARY(sundials_nvecparallel_static STATIC ${nvecparallel_SOURCES} ${shared_SOURCES}) |
268 |
+ SET_TARGET_PROPERTIES(sundials_nvecparallel_static |
269 |
+ PROPERTIES OUTPUT_NAME sundials_nvecparallel CLEAN_DIRECT_OUTPUT 1) |
270 |
+- INSTALL(TARGETS sundials_nvecparallel_static DESTINATION lib) |
271 |
++ INSTALL(TARGETS sundials_nvecparallel_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
272 |
+ ENDIF(BUILD_STATIC_LIBS) |
273 |
+ |
274 |
+ # Rules for building and installing the shared library: |
275 |
+@@ -66,7 +66,8 @@ |
276 |
+ PROPERTIES OUTPUT_NAME sundials_nvecparallel CLEAN_DIRECT_OUTPUT 1) |
277 |
+ SET_TARGET_PROPERTIES(sundials_nvecparallel_shared |
278 |
+ PROPERTIES VERSION ${nveclib_VERSION} SOVERSION ${nveclib_SOVERSION}) |
279 |
+- INSTALL(TARGETS sundials_nvecparallel_shared DESTINATION lib) |
280 |
++ TARGET_LINK_LIBRARIES(sundials_nvecparallel_shared -lm) |
281 |
++ INSTALL(TARGETS sundials_nvecparallel_shared DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
282 |
+ ENDIF(BUILD_SHARED_LIBS) |
283 |
+ |
284 |
+ # Install the NVECPARALLEL header files |
285 |
+@@ -79,7 +80,7 @@ |
286 |
+ ADD_LIBRARY(sundials_fnvecparallel_static STATIC ${fnvecparallel_SOURCES}) |
287 |
+ SET_TARGET_PROPERTIES(sundials_fnvecparallel_static |
288 |
+ PROPERTIES OUTPUT_NAME sundials_fnvecparallel CLEAN_DIRECT_OUTPUT 1) |
289 |
+- INSTALL(TARGETS sundials_fnvecparallel_static DESTINATION lib) |
290 |
++ INSTALL(TARGETS sundials_fnvecparallel_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
291 |
+ ENDIF(BUILD_STATIC_LIBS) |
292 |
+ IF(BUILD_SHARED_LIBS) |
293 |
+ ADD_LIBRARY(sundials_fnvecparallel_shared SHARED ${fnvecparallel_SOURCES}) |
294 |
+@@ -87,7 +88,7 @@ |
295 |
+ PROPERTIES OUTPUT_NAME sundials_fnvecparallel CLEAN_DIRECT_OUTPUT 1) |
296 |
+ SET_TARGET_PROPERTIES(sundials_fnvecparallel_shared |
297 |
+ PROPERTIES VERSION ${nveclib_VERSION} SOVERSION ${nveclib_SOVERSION}) |
298 |
+- INSTALL(TARGETS sundials_fnvecparallel_shared DESTINATION lib) |
299 |
++ INSTALL(TARGETS sundials_fnvecparallel_shared DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
300 |
+ ENDIF(BUILD_SHARED_LIBS) |
301 |
+ ENDIF(FCMIX_ENABLE AND MPIF_FOUND) |
302 |
+ # |
303 |
+diff -Nur sundials-2.7.0.orig/src/nvec_parhyp/CMakeLists.txt sundials-2.7.0/src/nvec_parhyp/CMakeLists.txt |
304 |
+--- sundials-2.7.0.orig/src/nvec_parhyp/CMakeLists.txt 2016-09-26 22:16:50.000000000 +0000 |
305 |
++++ sundials-2.7.0/src/nvec_parhyp/CMakeLists.txt 2016-12-30 23:41:54.355840949 +0000 |
306 |
+@@ -53,7 +53,7 @@ |
307 |
+ ADD_LIBRARY(sundials_nvecparhyp_static STATIC ${nvecparhyp_SOURCES} ${shared_SOURCES}) |
308 |
+ SET_TARGET_PROPERTIES(sundials_nvecparhyp_static |
309 |
+ PROPERTIES OUTPUT_NAME sundials_nvecparhyp CLEAN_DIRECT_OUTPUT 1) |
310 |
+- INSTALL(TARGETS sundials_nvecparhyp_static DESTINATION lib) |
311 |
++ INSTALL(TARGETS sundials_nvecparhyp_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
312 |
+ ENDIF(BUILD_STATIC_LIBS) |
313 |
+ |
314 |
+ # Rules for building and installing the shared library: |
315 |
+@@ -67,7 +67,7 @@ |
316 |
+ PROPERTIES OUTPUT_NAME sundials_nvecparhyp CLEAN_DIRECT_OUTPUT 1) |
317 |
+ SET_TARGET_PROPERTIES(sundials_nvecparhyp_shared |
318 |
+ PROPERTIES VERSION ${nveclib_VERSION} SOVERSION ${nveclib_SOVERSION}) |
319 |
+- INSTALL(TARGETS sundials_nvecparhyp_shared DESTINATION lib) |
320 |
++ INSTALL(TARGETS sundials_nvecparhyp_shared DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
321 |
+ ENDIF(BUILD_SHARED_LIBS) |
322 |
+ |
323 |
+ # Install the NVECPARHYP header files |
324 |
+diff -Nur sundials-2.7.0.orig/src/nvec_petsc/CMakeLists.txt sundials-2.7.0/src/nvec_petsc/CMakeLists.txt |
325 |
+--- sundials-2.7.0.orig/src/nvec_petsc/CMakeLists.txt 2016-09-26 22:16:50.000000000 +0000 |
326 |
++++ sundials-2.7.0/src/nvec_petsc/CMakeLists.txt 2016-12-30 23:41:54.355840949 +0000 |
327 |
+@@ -53,7 +53,7 @@ |
328 |
+ ADD_LIBRARY(sundials_nvecpetsc_static STATIC ${nvecpetsc_SOURCES} ${shared_SOURCES}) |
329 |
+ SET_TARGET_PROPERTIES(sundials_nvecpetsc_static |
330 |
+ PROPERTIES OUTPUT_NAME sundials_nvecpetsc CLEAN_DIRECT_OUTPUT 1) |
331 |
+- INSTALL(TARGETS sundials_nvecpetsc_static DESTINATION lib) |
332 |
++ INSTALL(TARGETS sundials_nvecpetsc_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
333 |
+ ENDIF(BUILD_STATIC_LIBS) |
334 |
+ |
335 |
+ # Rules for building and installing the shared library: |
336 |
+@@ -67,7 +67,7 @@ |
337 |
+ PROPERTIES OUTPUT_NAME sundials_nvecpetsc CLEAN_DIRECT_OUTPUT 1) |
338 |
+ SET_TARGET_PROPERTIES(sundials_nvecpetsc_shared |
339 |
+ PROPERTIES VERSION ${nveclib_VERSION} SOVERSION ${nveclib_SOVERSION}) |
340 |
+- INSTALL(TARGETS sundials_nvecpetsc_shared DESTINATION lib) |
341 |
++ INSTALL(TARGETS sundials_nvecpetsc_shared DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
342 |
+ ENDIF(BUILD_SHARED_LIBS) |
343 |
+ |
344 |
+ # Install the NVECPARHYP header files |
345 |
+diff -Nur sundials-2.7.0.orig/src/nvec_pthreads/CMakeLists.txt sundials-2.7.0/src/nvec_pthreads/CMakeLists.txt |
346 |
+--- sundials-2.7.0.orig/src/nvec_pthreads/CMakeLists.txt 2016-09-26 22:16:50.000000000 +0000 |
347 |
++++ sundials-2.7.0/src/nvec_pthreads/CMakeLists.txt 2016-12-30 23:41:54.355840949 +0000 |
348 |
+@@ -44,7 +44,7 @@ |
349 |
+ ADD_LIBRARY(sundials_nvecpthreads_static STATIC ${nvecpthreads_SOURCES} ${shared_SOURCES}) |
350 |
+ SET_TARGET_PROPERTIES(sundials_nvecpthreads_static |
351 |
+ PROPERTIES OUTPUT_NAME sundials_nvecpthreads CLEAN_DIRECT_OUTPUT 1) |
352 |
+- INSTALL(TARGETS sundials_nvecpthreads_static DESTINATION lib) |
353 |
++ INSTALL(TARGETS sundials_nvecpthreads_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
354 |
+ ENDIF(BUILD_STATIC_LIBS) |
355 |
+ |
356 |
+ # Rules for building and installing the shared library: |
357 |
+@@ -58,7 +58,8 @@ |
358 |
+ PROPERTIES OUTPUT_NAME sundials_nvecpthreads CLEAN_DIRECT_OUTPUT 1) |
359 |
+ SET_TARGET_PROPERTIES(sundials_nvecpthreads_shared |
360 |
+ PROPERTIES VERSION ${nveclib_VERSION} SOVERSION ${nveclib_SOVERSION}) |
361 |
+- INSTALL(TARGETS sundials_nvecpthreads_shared DESTINATION lib) |
362 |
++ TARGET_LINK_LIBRARIES(sundials_nvecpthreads_shared -lm -lpthread) |
363 |
++ INSTALL(TARGETS sundials_nvecpthreads_shared DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
364 |
+ ENDIF(BUILD_SHARED_LIBS) |
365 |
+ |
366 |
+ # Install the NVECPTHREADS header files |
367 |
+@@ -71,7 +72,7 @@ |
368 |
+ ADD_LIBRARY(sundials_fnvecpthreads_static STATIC ${fnvecpthreads_SOURCES}) |
369 |
+ SET_TARGET_PROPERTIES(sundials_fnvecpthreads_static |
370 |
+ PROPERTIES OUTPUT_NAME sundials_fnvecpthreads CLEAN_DIRECT_OUTPUT 1) |
371 |
+- INSTALL(TARGETS sundials_fnvecpthreads_static DESTINATION lib) |
372 |
++ INSTALL(TARGETS sundials_fnvecpthreads_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
373 |
+ ENDIF(BUILD_STATIC_LIBS) |
374 |
+ IF(BUILD_SHARED_LIBS) |
375 |
+ ADD_LIBRARY(sundials_fnvecpthreads_shared ${fnvecpthreads_SOURCES}) |
376 |
+@@ -79,7 +80,8 @@ |
377 |
+ PROPERTIES OUTPUT_NAME sundials_fnvecpthreads CLEAN_DIRECT_OUTPUT 1) |
378 |
+ SET_TARGET_PROPERTIES(sundials_fnvecpthreads_shared |
379 |
+ PROPERTIES VERSION ${nveclib_VERSION} SOVERSION ${nveclib_SOVERSION}) |
380 |
+- INSTALL(TARGETS sundials_fnvecpthreads_shared DESTINATION lib) |
381 |
++ TARGET_LINK_LIBRARIES(sundials_fnvecpthreads_shared -lm -lpthread) |
382 |
++ INSTALL(TARGETS sundials_fnvecpthreads_shared DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
383 |
+ ENDIF(BUILD_SHARED_LIBS) |
384 |
+ ENDIF(FCMIX_ENABLE AND F77_FOUND) |
385 |
+ |
386 |
+diff -Nur sundials-2.7.0.orig/src/nvec_ser/CMakeLists.txt sundials-2.7.0/src/nvec_ser/CMakeLists.txt |
387 |
+--- sundials-2.7.0.orig/src/nvec_ser/CMakeLists.txt 2016-09-26 22:16:49.000000000 +0000 |
388 |
++++ sundials-2.7.0/src/nvec_ser/CMakeLists.txt 2016-12-30 23:41:54.355840949 +0000 |
389 |
+@@ -44,7 +44,7 @@ |
390 |
+ ADD_LIBRARY(sundials_nvecserial_static STATIC ${nvecserial_SOURCES} ${shared_SOURCES}) |
391 |
+ SET_TARGET_PROPERTIES(sundials_nvecserial_static |
392 |
+ PROPERTIES OUTPUT_NAME sundials_nvecserial CLEAN_DIRECT_OUTPUT 1) |
393 |
+- INSTALL(TARGETS sundials_nvecserial_static DESTINATION lib) |
394 |
++ INSTALL(TARGETS sundials_nvecserial_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
395 |
+ ENDIF(BUILD_STATIC_LIBS) |
396 |
+ |
397 |
+ # Rules for building and installing the shared library: |
398 |
+@@ -58,7 +58,8 @@ |
399 |
+ PROPERTIES OUTPUT_NAME sundials_nvecserial CLEAN_DIRECT_OUTPUT 1) |
400 |
+ SET_TARGET_PROPERTIES(sundials_nvecserial_shared |
401 |
+ PROPERTIES VERSION ${nveclib_VERSION} SOVERSION ${nveclib_SOVERSION}) |
402 |
+- INSTALL(TARGETS sundials_nvecserial_shared DESTINATION lib) |
403 |
++ TARGET_LINK_LIBRARIES(sundials_nvecserial_shared -lm) |
404 |
++ INSTALL(TARGETS sundials_nvecserial_shared DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
405 |
+ ENDIF(BUILD_SHARED_LIBS) |
406 |
+ |
407 |
+ # Install the NVECSERIAL header files |
408 |
+@@ -71,7 +72,7 @@ |
409 |
+ ADD_LIBRARY(sundials_fnvecserial_static STATIC ${fnvecserial_SOURCES}) |
410 |
+ SET_TARGET_PROPERTIES(sundials_fnvecserial_static |
411 |
+ PROPERTIES OUTPUT_NAME sundials_fnvecserial CLEAN_DIRECT_OUTPUT 1) |
412 |
+- INSTALL(TARGETS sundials_fnvecserial_static DESTINATION lib) |
413 |
++ INSTALL(TARGETS sundials_fnvecserial_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
414 |
+ ENDIF(BUILD_STATIC_LIBS) |
415 |
+ IF(BUILD_SHARED_LIBS) |
416 |
+ ADD_LIBRARY(sundials_fnvecserial_shared ${fnvecserial_SOURCES}) |
417 |
+@@ -79,7 +80,8 @@ |
418 |
+ PROPERTIES OUTPUT_NAME sundials_fnvecserial CLEAN_DIRECT_OUTPUT 1) |
419 |
+ SET_TARGET_PROPERTIES(sundials_fnvecserial_shared |
420 |
+ PROPERTIES VERSION ${nveclib_VERSION} SOVERSION ${nveclib_SOVERSION}) |
421 |
+- INSTALL(TARGETS sundials_fnvecserial_shared DESTINATION lib) |
422 |
++ TARGET_LINK_LIBRARIES(sundials_fnvecserial_shared -lm) |
423 |
++ INSTALL(TARGETS sundials_fnvecserial_shared DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
424 |
+ ENDIF(BUILD_SHARED_LIBS) |
425 |
+ ENDIF(FCMIX_ENABLE AND F77_FOUND) |
426 |
+ |
427 |
|
428 |
diff --git a/sci-libs/sundials/metadata.xml b/sci-libs/sundials/metadata.xml |
429 |
new file mode 100644 |
430 |
index 00000000..b4735cc |
431 |
--- /dev/null |
432 |
+++ b/sci-libs/sundials/metadata.xml |
433 |
@@ -0,0 +1,22 @@ |
434 |
+<?xml version="1.0" encoding="UTF-8"?> |
435 |
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> |
436 |
+<pkgmetadata> |
437 |
+ <maintainer type="project"> |
438 |
+ <email>sci@g.o</email> |
439 |
+ <name>Gentoo Scientific Project</name> |
440 |
+ </maintainer> |
441 |
+ <longdescription lang="en"> |
442 |
+ SUite of Nonlinear and DIfferential/ALgebraic equation Solvers was |
443 |
+ implemented with the goal of providing robust time integrators and |
444 |
+ nonlinear solvers that can easily be incorporated into existing |
445 |
+ simulation codes. The primary design goals were to require minimal |
446 |
+ information from the user, allow users to easily supply their own |
447 |
+ data structures underneath the solvers, and allow for easy |
448 |
+ incorporation of user-supplied linear solvers and preconditioners. |
449 |
+ </longdescription> |
450 |
+ <use> |
451 |
+ <flag name="hypre">Build with <pkg>sci-libs/hypre</pkg> conditioners</flag> |
452 |
+ <flag name="sparse">Enable support for <pkg>sci-libs/klu</pkg> sparse solver</flag> |
453 |
+ <flag name="superlumt">Build with <pkg>sci-libs/superlu_mt</pkg></flag> |
454 |
+ </use> |
455 |
+</pkgmetadata> |
456 |
|
457 |
diff --git a/sci-libs/sundials/sundials-2.7.0.ebuild b/sci-libs/sundials/sundials-2.7.0.ebuild |
458 |
new file mode 100644 |
459 |
index 00000000..d42c789 |
460 |
--- /dev/null |
461 |
+++ b/sci-libs/sundials/sundials-2.7.0.ebuild |
462 |
@@ -0,0 +1,74 @@ |
463 |
+# Copyright 1999-2016 Gentoo Foundation |
464 |
+# Distributed under the terms of the GNU General Public License v2 |
465 |
+# $Id$ |
466 |
+ |
467 |
+EAPI=6 |
468 |
+ |
469 |
+FORTRAN_NEEDED=fortran |
470 |
+FORTRAN_STANDARD=90 |
471 |
+ |
472 |
+inherit cmake-utils toolchain-funcs fortran-2 versionator |
473 |
+ |
474 |
+DESCRIPTION="Suite of nonlinear solvers" |
475 |
+HOMEPAGE="http://computation.llnl.gov/projects/sundials" |
476 |
+SRC_URI="http://computation.llnl.gov/projects/sundials/download/${P}.tar.gz" |
477 |
+ |
478 |
+LICENSE="BSD" |
479 |
+SLOT="0/$(get_major_version)" |
480 |
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" |
481 |
+IUSE="cxx doc examples fortran hypre lapack mpi openmp sparse static-libs superlumt threads" |
482 |
+REQUIRED_USE="hypre? ( mpi )" |
483 |
+ |
484 |
+RDEPEND=" |
485 |
+ lapack? ( virtual/lapack ) |
486 |
+ mpi? ( virtual/mpi sci-libs/hypre:= ) |
487 |
+ sparse? ( sci-libs/klu:= ) |
488 |
+ superlumt? ( sci-libs/superlu_mt:= ) |
489 |
+" |
490 |
+DEPEND="${RDEPEND} |
491 |
+ virtual/pkgconfig" |
492 |
+ |
493 |
+PATCHES=( "${FILESDIR}"/${P}-underlinking-libdir.patch ) |
494 |
+ |
495 |
+pkg_setup() { |
496 |
+ if [[ ${MERGE_TYPE} != binary ]] && use openmp && [[ $(tc-getCC) == *gcc ]] && ! tc-has-openmp; then |
497 |
+ ewarn "OpenMP is not available in your current selected gcc" |
498 |
+ die "need openmp capable gcc" |
499 |
+ fi |
500 |
+} |
501 |
+ |
502 |
+src_configure() { |
503 |
+ mycmakeargs+=( |
504 |
+ -DBUILD_SHARED_LIBS=ON |
505 |
+ -DBUILD_STATIC_LIBS="$(usex static-libs)" |
506 |
+ -DCXX_ENABLE="$(usex cxx)" |
507 |
+ -DFCMIX_ENABLE="$(usex fortran)" |
508 |
+ -DF90_ENABLE="$(usex fortran)" |
509 |
+ -DHYPRE_ENABLE="$(usex hypre)" |
510 |
+ -DHYPRE_INCLUDE_DIR="${EPREFIX}/usr/include/hypre" |
511 |
+ -DHYPRE_LIBRARY="HYPRE" |
512 |
+ -DKLU_ENABLE="$(usex sparse)" |
513 |
+ -DKLU_LIBRARY="${EPREFIX}/usr/$(get_libdir)/libklu.so" |
514 |
+ -DLAPACK_ENABLE="$(usex lapack)" |
515 |
+ -DMPI_ENABLE="$(usex mpi)" |
516 |
+ -DOPENMP_ENABLE="$(usex openmp)" |
517 |
+ -DPTHREAD_ENABLE="$(usex threads)" |
518 |
+ -DSUPERLUMT_ENABLE="$(usex superlumt)" |
519 |
+ -DSUPERLUMT_INCLUDE_DIR="${EPREFIX}/usr/include/superlu_mt" |
520 |
+ -DSUPERLUMT_LIBRARY="superlu_mt" |
521 |
+ -DEXAMPLES_ENABLE="$(usex examples)" |
522 |
+ -DEXAMPLES_INSTALL=ON |
523 |
+ -DEXAMPLES_INSTALL_PATH="/usr/share/doc/${PF}/examples" |
524 |
+ -DUSE_GENERIC_MATH=ON |
525 |
+ ) |
526 |
+ cmake-utils_src_configure |
527 |
+} |
528 |
+ |
529 |
+src_install() { |
530 |
+ cmake-utils_src_install |
531 |
+ use doc && dodoc doc/*/*.pdf |
532 |
+ cd src |
533 |
+ for r in */README; do |
534 |
+ newdoc ${r} README-${r%/*} |
535 |
+ done |
536 |
+} |