Gentoo Archives: gentoo-commits

From: Haelwenn Monnier <contact@×××××××××.me>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/proj/guru:master commit in: sys-cluster/sionlib/files/, sys-cluster/sionlib/
Date: Sun, 29 Aug 2021 17:06:04
Message-Id: 1630197212.899c3526b1b0c2bacf460f6c050e47439ede7f74.lanodan@gentoo
1 commit: 899c3526b1b0c2bacf460f6c050e47439ede7f74
2 Author: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
3 AuthorDate: Sat Aug 28 23:29:35 2021 +0000
4 Commit: Haelwenn Monnier <contact <AT> hacktivis <DOT> me>
5 CommitDate: Sun Aug 29 00:33:32 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=899c3526
7
8 sys-cluster/sionlib: build shared libraries
9
10 Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com>
11
12 .../files/sionlib-build-shared-libraries.patch | 337 +++++++++++++++++++++
13 .../sionlib/files/sionlib-respect-flags-v3.patch | 6 +-
14 ...lib-1.7.7-r2.ebuild => sionlib-1.7.7-r3.ebuild} | 11 +-
15 3 files changed, 346 insertions(+), 8 deletions(-)
16
17 diff --git a/sys-cluster/sionlib/files/sionlib-build-shared-libraries.patch b/sys-cluster/sionlib/files/sionlib-build-shared-libraries.patch
18 new file mode 100644
19 index 000000000..9c1895499
20 --- /dev/null
21 +++ b/sys-cluster/sionlib/files/sionlib-build-shared-libraries.patch
22 @@ -0,0 +1,337 @@
23 +diff '--color=auto' -ru sionlib-ori/src/cppinterface/Makefile sionlib/src/cppinterface/Makefile
24 +--- sionlib-ori/src/cppinterface/Makefile 2021-08-29 01:04:54.919546800 +0200
25 ++++ sionlib/src/cppinterface/Makefile 2021-08-29 00:44:20.564541936 +0200
26 +@@ -30,7 +30,7 @@
27 + ifeq ($(CXXENABLE),1)
28 +
29 + USER_HDRS = sion_cxx_base.hpp sion_cxx_serial.hpp sion_cxx_common.hpp sion_cxx_mpi.hpp sion_cxx_ompi.hpp sion_cxx_omp.hpp
30 +-USER_LIBS = lib$(SION_LIBNAME_CXX_SER).a lib$(SION_LIBNAME_CXX_MPI).a
31 ++USER_LIBS = lib$(SION_LIBNAME_CXX_SER).so lib$(SION_LIBNAME_CXX_MPI).so
32 + else
33 + USER_HDRS =
34 + USER_LIBS =
35 +@@ -58,12 +58,12 @@
36 + all: $(USER_LIBS)
37 +
38 +
39 +-lib$(SION_LIBNAME_CXX_SER).a : $(SION_OBJS_SER)
40 +- $(C_AR) $(AFLAG) -rcs $@ $(SION_OBJS_SER)
41 ++lib$(SION_LIBNAME_CXX_SER).so : $(SION_OBJS_SER)
42 ++ $(CXX) $(LDFLAGS) -Wl,-soname,lib$(SION_LIBNAME_CXX_SER).so -shared -o $@ $(SION_OBJS_SER)
43 + @echo "*** $@ built"
44 +
45 +-lib$(SION_LIBNAME_CXX_MPI).a : $(SION_OBJS_MPI)
46 +- $(C_AR) $(AFLAG) -rcs $@ $(SION_OBJS_MPI)
47 ++lib$(SION_LIBNAME_CXX_MPI).so : $(SION_OBJS_MPI)
48 ++ $(MPICXX) $(LDFLAGS) -Wl,-soname,lib$(SION_LIBNAME_CXX_MPI).so -shared -o $@ $(SION_OBJS_MPI)
49 + @echo "*** $@ built"
50 +
51 + sion_cxx_base.o :
52 +@@ -118,7 +118,7 @@
53 + done
54 +
55 + clean:
56 +- rm -f *.o lib*.a
57 ++ rm -f *.o lib*.so
58 +
59 + #------------------------------------------------------------------------------
60 + # Dependencies
61 +diff '--color=auto' -ru sionlib-ori/src/fortraninterface/Makefile sionlib/src/fortraninterface/Makefile
62 +--- sionlib-ori/src/fortraninterface/Makefile 2021-08-29 01:04:54.928546844 +0200
63 ++++ sionlib/src/fortraninterface/Makefile 2021-08-29 01:21:47.153471098 +0200
64 +@@ -39,7 +39,7 @@
65 +
66 + USER_HDRS = sion_f77.H sion_f77.h
67 + USER_MODS = sion_f90.mod
68 +-USER_LIBS = lib$(SION_LIBNAME_F77_SER).a lib$(SION_LIBNAME_F77_MPI).a lib$(SION_LIBNAME_F90_SER).a lib$(SION_LIBNAME_F90_MPI).a
69 ++USER_LIBS = lib$(SION_LIBNAME_F77_SER).so lib$(SION_LIBNAME_F77_MPI).so lib$(SION_LIBNAME_F90_SER).so lib$(SION_LIBNAME_F90_MPI).so
70 + else
71 + USER_HDRS =
72 + USER_MODS =
73 +@@ -56,18 +56,24 @@
74 + SION_OBJS_F77_SER += sion_f77_omp.o sion_fortran_omp.o
75 + SION_OBJS_F90_SER += sion_f90_omp.o sion_fortran_omp.o
76 + USER_MODS += sion_f90_omp.mod
77 ++ F77_SER_LIBS = $(OMPFLAG) -l$(SION_LIBNAME_OMP)
78 ++ F90_SER_LIBS = $(OMPFLAG) -l$(SION_LIBNAME_OMP)
79 + endif
80 +
81 + ifeq ($(MPIENABLE),1)
82 + SION_OBJS_F77_MPI += sion_f77_mpi.o sion_fortran_mpi.o sion_fortran_writeread_mpi_f77.o
83 + SION_OBJS_F90_MPI += sion_f90_mpi.o sion_fortran_mpi.o sion_fortran_writeread_mpi_f90.o
84 + USER_MODS += sion_f90_mpi.mod
85 ++ F77_MPI_LIBS = -l$(SION_LIBNAME_MPI)
86 ++ F90_MPI_LIBS = -l$(SION_LIBNAME_MPI)
87 + endif
88 +
89 + ifeq ($(HYBENABLE),1)
90 + SION_OBJS_F77_MPI += sion_f77_ompi.o sion_fortran_ompi.o
91 + SION_OBJS_F90_MPI += sion_f90_ompi.o sion_fortran_ompi.o
92 + USER_MODS += sion_f90_ompi.mod
93 ++ F77_MPI_LIBS = $(HYBFLAG) -l$(SION_LIBNAME_OMPI)
94 ++ F90_MPI_LIBS = $(HYBFLAG) -l$(SION_LIBNAME_OMPI)
95 + endif
96 +
97 + SION_DEPEND_OBJS=sion_fortran.o sion_fortran_omp.o sion_fortran_mpi.o sion_fortran_ompi.o sion_fortran_writeread_f77.o sion_fortran_writeread_f90.o sion_fortran_writeread_mpi_f77.o sion_fortran_writeread_mpi_f90.o
98 +@@ -75,20 +81,20 @@
99 + all: $(USER_LIBS) $(USER_MODS)
100 +
101 +
102 +-lib$(SION_LIBNAME_F77_SER).a : $(SION_OBJS_F77_SER)
103 +- $(C_AR) $(AFLAG) -rcs $@ $(SION_OBJS_F77_SER)
104 ++lib$(SION_LIBNAME_F77_SER).so : $(SION_OBJS_F77_SER)
105 ++ $(F77) $(LDFLAGS) -Wl,-soname,lib$(SION_LIBNAME_F77_SER).so -shared -o $@ $(SION_OBJS_F77_SER) $(F77_SER_LIBS)
106 + @echo "*** $@ built"
107 +
108 +-lib$(SION_LIBNAME_F77_MPI).a : $(SION_OBJS_F77_MPI)
109 +- $(C_AR) $(AFLAG) -rcs $@ $(SION_OBJS_F77_MPI)
110 ++lib$(SION_LIBNAME_F77_MPI).so : $(SION_OBJS_F77_MPI)
111 ++ $(MPIF77) $(LDFLAGS) -Wl,-soname,lib$(SION_LIBNAME_F77_MPI).so -shared -o $@ $(SION_OBJS_F77_MPI) $(F77_MPI_LIBS)
112 + @echo "*** $@ built"
113 +
114 +-lib$(SION_LIBNAME_F90_SER).a : $(SION_OBJS_F90_SER)
115 +- $(C_AR) $(AFLAG) -rcs $@ $(SION_OBJS_F90_SER)
116 ++lib$(SION_LIBNAME_F90_SER).so : $(SION_OBJS_F90_SER)
117 ++ $(F90) $(LDFLAGS) -Wl,-soname,lib$(SION_LIBNAME_F90_SER).so -shared -o $@ $(SION_OBJS_F90_SER) $(F90_SER_LIBS)
118 + @echo "*** $@ built"
119 +
120 +-lib$(SION_LIBNAME_F90_MPI).a : $(SION_OBJS_F90_MPI)
121 +- $(C_AR) $(AFLAG) -rcs $@ $(SION_OBJS_F90_MPI)
122 ++lib$(SION_LIBNAME_F90_MPI).so : $(SION_OBJS_F90_MPI)
123 ++ $(MPIF90) $(LDFLAGS) -Wl,-soname,lib$(SION_LIBNAME_F90_MPI).so -shared -o $@ $(SION_OBJS_F90_MPI) $(F90_MPI_LIBS)
124 + @echo "*** $@ built"
125 +
126 + # F77 interface
127 +@@ -206,7 +212,7 @@
128 + done
129 +
130 + clean:
131 +- rm -f *.o lib*.a *.mod
132 ++ rm -f *.o lib*.so *.mod
133 +
134 + #------------------------------------------------------------------------------
135 + # Dependencies
136 +diff '--color=auto' -ru sionlib-ori/src/lib/Makefile sionlib/src/lib/Makefile
137 +--- sionlib-ori/src/lib/Makefile 2021-08-29 01:04:54.930546854 +0200
138 ++++ sionlib/src/lib/Makefile 2021-08-29 00:44:20.574541984 +0200
139 +@@ -67,25 +67,25 @@
140 + endif
141 +
142 + USER_HDRS = sion.h sion_common.h sion_serial.h sion_const.h sion_datatypes.h sion_platform.h sion_debug.h $(SION_CXX_HDR)
143 +-USER_LIBS = lib$(SION_LIBNAME_SER).a lib$(SION_LIBNAME_COM).a lib$(SION_LIBNAME_COM_LOCK_PTHREADS).a lib$(SION_LIBNAME_COM_LOCK_NONE).a
144 ++USER_LIBS = lib$(SION_LIBNAME_SER).so lib$(SION_LIBNAME_COM).so lib$(SION_LIBNAME_COM_LOCK_PTHREADS).so lib$(SION_LIBNAME_COM_LOCK_NONE).so
145 +
146 +
147 +-all: lib$(SION_LIBNAME_COM).a lib$(SION_LIBNAME_SER).a lib$(SION_LIBNAME_COM_LOCK_PTHREADS).a lib$(SION_LIBNAME_COM_LOCK_NONE).a
148 ++all: lib$(SION_LIBNAME_COM).so lib$(SION_LIBNAME_SER).so lib$(SION_LIBNAME_COM_LOCK_PTHREADS).so lib$(SION_LIBNAME_COM_LOCK_NONE).so
149 +
150 +-lib$(SION_LIBNAME_COM).a : $(SION_COMMON_OBJS)
151 +- $(C_AR) $(AFLAG) -rcs $@ $(SION_COMMON_OBJS)
152 ++lib$(SION_LIBNAME_COM).so : $(SION_COMMON_OBJS)
153 ++ $(CC) $(LDFLAGS) -Wl,-soname,lib$(SION_LIBNAME_COM).so -shared -o $@ $(SION_COMMON_OBJS)
154 + @echo "*** $@ built"
155 +
156 +-lib$(SION_LIBNAME_COM_LOCK_PTHREADS).a : $(SION_COMMON_LOCK_PTHREADS_OBJS)
157 +- $(C_AR) $(AFLAG) -rcs $@ $(SION_COMMON_LOCK_PTHREADS_OBJS)
158 ++lib$(SION_LIBNAME_COM_LOCK_PTHREADS).so : $(SION_COMMON_LOCK_PTHREADS_OBJS)
159 ++ $(CC) $(LDFLAGS) -Wl,-soname,lib$(SION_LIBNAME_COM_LOCK_PTHREADS).so -shared -o $@ $(SION_COMMON_LOCK_PTHREADS_OBJS)
160 + @echo "*** $@ built"
161 +
162 +-lib$(SION_LIBNAME_COM_LOCK_NONE).a : $(SION_COMMON_LOCK_NONE_OBJS)
163 +- $(C_AR) $(AFLAG) -rcs $@ $(SION_COMMON_LOCK_NONE_OBJS)
164 ++lib$(SION_LIBNAME_COM_LOCK_NONE).so : $(SION_COMMON_LOCK_NONE_OBJS)
165 ++ $(CC) $(LDFLAGS) -Wl,-soname,lib$(SION_LIBNAME_COM_LOCK_NONE).so -shared -o $@ $(SION_COMMON_LOCK_NONE_OBJS)
166 + @echo "*** $@ built"
167 +
168 +-lib$(SION_LIBNAME_SER).a : $(SION_SER_OBJS)
169 +- $(C_AR) $(AFLAG) -rcs $@ $(SION_SER_OBJS)
170 ++lib$(SION_LIBNAME_SER).so : $(SION_SER_OBJS)
171 ++ $(CC) $(LDFLAGS) -Wl,-soname,lib$(SION_LIBNAME_SER).so -shared -o $@ $(SION_SER_OBJS)
172 + @echo "*** $@ built"
173 +
174 + sion_lock_pthreads.o: sion_lock.c
175 +@@ -178,7 +178,7 @@
176 + done
177 +
178 + clean:
179 +- rm -f *.o lib*.a
180 ++ rm -f *.o lib*.so
181 +
182 + #------------------------------------------------------------------------------
183 + # Dependencies
184 +diff '--color=auto' -ru sionlib-ori/src/parlib/Makefile sionlib/src/parlib/Makefile
185 +--- sionlib-ori/src/parlib/Makefile 2021-08-29 01:04:54.921546810 +0200
186 ++++ sionlib/src/parlib/Makefile 2021-08-29 01:03:58.041270101 +0200
187 +@@ -29,7 +29,7 @@
188 + .SUFFIXES: .cpp .c .f
189 +
190 + USER_HDRS = sion_datatypes_mpi.h sion_mpi.h sion_ompi.h sion_omp.h sion_generic.h
191 +-USER_LIBS = lib$(SION_LIBNAME_GEN).a
192 ++USER_LIBS = lib$(SION_LIBNAME_GEN).so
193 +
194 + SION_OBJS_GEN = sion_generic.o \
195 + sion_generic_internal.o \
196 +@@ -46,7 +46,7 @@
197 + sion_omp_cb_gen.o \
198 + sion_omp_internal_gen.o
199 + USER_HDRS += sion_omp.h
200 +- USER_LIBS += lib$(SION_LIBNAME_OMP).a
201 ++ USER_LIBS += lib$(SION_LIBNAME_OMP).so
202 + endif
203 +
204 + ifeq ($(MPIENABLE),1)
205 +@@ -58,7 +58,7 @@
206 + sion_mpi_util.o \
207 + sion_mpi_file_check.o
208 + USER_HDRS += sion_datatypes_mpi.h sion_mpi.h
209 +- USER_LIBS += lib$(SION_LIBNAME_MPI).a
210 ++ USER_LIBS += lib$(SION_LIBNAME_MPI).so
211 + endif
212 + ifeq ($(HYBENABLE),1)
213 + SION_OBJS_HYB = sion_ompi_gen.o \
214 +@@ -67,16 +67,18 @@
215 + sion_ompi_util.o \
216 + sion_ompi_internal_gen.o
217 + USER_HDRS += sion_datatypes_mpi.h sion_ompi.h
218 +- USER_LIBS += lib$(SION_LIBNAME_OMPI).a
219 ++ USER_LIBS += lib$(SION_LIBNAME_OMPI).so
220 + endif
221 +
222 + ifeq ($(HYBENABLE),1)
223 + LOCKCC =$(HYBCC)
224 + LOCKCFLAGS=$(CHYBFLAGS)
225 ++ LOCKLINK=$(HYBFLAG)
226 + else
227 + ifeq ($(OMPENABLE),1)
228 + LOCKCC =$(OMPCC)
229 + LOCKCFLAGS=$(COMPFLAGS)
230 ++ LOCKLINK=$(OMPFLAG)
231 + else
232 + LOCKCC =$(CC)
233 + LOCKCFLAGS=$(CFLAGS)
234 +@@ -87,20 +89,20 @@
235 +
236 + all: $(USER_LIBS)
237 +
238 +-lib$(SION_LIBNAME_GEN).a : $(SION_OBJS_GEN) $(SION_OBJS_INTERNAL)
239 +- $(C_AR) $(AFLAG) -rcs $@ $(SION_OBJS_GEN) $(SION_OBJS_INTERNAL)
240 ++lib$(SION_LIBNAME_GEN).so : $(SION_OBJS_GEN) $(SION_OBJS_INTERNAL)
241 ++ $(CC) $(LDFLAGS) -Wl,-soname,lib$(SION_LIBNAME_GEN).so -shared -o $@ $(SION_OBJS_GEN) $(SION_OBJS_INTERNAL) $(LOCKLINK)
242 + @echo "*** $@ built"
243 +
244 +-lib$(SION_LIBNAME_OMP).a : $(SION_OBJS_OMP) $(SION_OBJS_INTERNAL)
245 +- $(C_AR) $(AFLAG) -rcs $@ $(SION_OBJS_OMP) $(SION_OBJS_INTERNAL)
246 ++lib$(SION_LIBNAME_OMP).so : $(SION_OBJS_OMP) $(SION_OBJS_INTERNAL)
247 ++ $(CC) $(LDFLAGS) -Wl,-soname,lib$(SION_LIBNAME_OMP).so -shared -o $@ $(SION_OBJS_OMP) $(SION_OBJS_INTERNAL) $(LOCKLINK) $(OMPFLAG)
248 + @echo "*** $@ built"
249 +
250 +-lib$(SION_LIBNAME_MPI).a : $(SION_OBJS_MPI) $(SION_OBJS_INTERNAL)
251 +- $(C_AR) $(AFLAG) -rcs $@ $(SION_OBJS_MPI) $(SION_OBJS_INTERNAL)
252 ++lib$(SION_LIBNAME_MPI).so : $(SION_OBJS_MPI) $(SION_OBJS_INTERNAL)
253 ++ $(MPICC) $(LDFLAGS) -Wl,-soname,lib$(SION_LIBNAME_MPI).so -shared -o $@ $(SION_OBJS_MPI) $(SION_OBJS_INTERNAL) $(LOCKLINK)
254 + @echo "*** $@ built"
255 +
256 +-lib$(SION_LIBNAME_OMPI).a : $(SION_OBJS_HYB) $(SION_OBJS_INTERNAL)
257 +- $(C_AR) $(AFLAG) -rcs $@ $(SION_OBJS_HYB) $(SION_OBJS_INTERNAL)
258 ++lib$(SION_LIBNAME_OMPI).so : $(SION_OBJS_HYB) $(SION_OBJS_INTERNAL)
259 ++ $(HYBCC) $(LDFLAGS) -Wl,-soname,lib$(SION_LIBNAME_OMPI).so -shared -o $@ $(SION_OBJS_HYB) $(SION_OBJS_INTERNAL) $(LOCKLINK) $(HYBFLAG)
260 + @echo "*** $@ built"
261 +
262 + sion_generic.o : sion_generic.c
263 +@@ -224,7 +226,7 @@
264 + done
265 +
266 + clean:
267 +- rm -f *.o lib*.a opari*
268 ++ rm -f *.o lib*.so opari*
269 +
270 + #------------------------------------------------------------------------------
271 + # Dependencies
272 +diff '--color=auto' -ru sionlib-ori/src/parutils/Makefile sionlib/src/parutils/Makefile
273 +--- sionlib-ori/src/parutils/Makefile 2021-08-29 01:04:54.928546844 +0200
274 ++++ sionlib/src/parutils/Makefile 2021-08-29 00:44:20.571541969 +0200
275 +@@ -75,10 +75,10 @@
276 +
277 + all: $(USER_UTILS)
278 +
279 +-partest: $(PARTEST_OBJS) ../parlib/lib$(SION_LIBNAME_MPI).a ../parlib/lib$(SION_LIBNAME_GEN).a ../lib/lib$(SION_LIBNAME_SER).a
280 ++partest: $(PARTEST_OBJS) ../parlib/lib$(SION_LIBNAME_MPI).so ../parlib/lib$(SION_LIBNAME_GEN).so ../lib/lib$(SION_LIBNAME_SER).so
281 + $(MPICC) -o $@ $(PARTEST_OBJS) -L../lib -l$(SION_LIBNAME_SER) $(CMPILDFLAGS) $(MPILIB)
282 +
283 +-ompi_partest: $(PARTEST_OMPI_OBJS) ../parlib/lib$(SION_LIBNAME_OMPI).a ../parlib/lib$(SION_LIBNAME_OMP).a ../lib/lib$(SION_LIBNAME_SER).a
284 ++ompi_partest: $(PARTEST_OMPI_OBJS) ../parlib/lib$(SION_LIBNAME_OMPI).so ../parlib/lib$(SION_LIBNAME_OMP).so ../lib/lib$(SION_LIBNAME_SER).so
285 + $(HYBCC) -o $@ $(PARTEST_OMPI_OBJS) $(CHYBLDFLAGS) -L../parlib -l$(SION_LIBNAME_OMP) -L../lib -l$(SION_LIBNAME_SER) $(MPILIB)
286 +
287 + ompi_partest.o : ompi_partest.c
288 +@@ -114,7 +114,7 @@
289 + fpartest.o : fpartest.F90
290 + $(MPIF90) $(FFLAGS) -c fpartest.F90
291 +
292 +-fpartest: fpartest.o ../parlib/lib$(SION_LIBNAME_MPI).a ../parlib/lib$(SION_LIBNAME_GEN).a ../lib/lib$(SION_LIBNAME_SER).a ../fortraninterface/lib$(SION_LIBNAME_F77_MPI).a ../fortraninterface/lib$(SION_LIBNAME_F77_SER).a
293 ++fpartest: fpartest.o ../parlib/lib$(SION_LIBNAME_MPI).so ../parlib/lib$(SION_LIBNAME_GEN).so ../lib/lib$(SION_LIBNAME_SER).so ../fortraninterface/lib$(SION_LIBNAME_F77_MPI).so ../fortraninterface/lib$(SION_LIBNAME_F77_SER).so
294 + $(MPIF90) -o $@ fpartest.o -L../fortraninterface -l$(SION_LIBNAME_F77_MPI) -l$(SION_LIBNAME_F77_SER) $(FMPILDFLAGS) $(MPILIB)
295 +
296 +
297 +@@ -161,7 +161,7 @@
298 + @rm -f header.tmp
299 +
300 + clean:
301 +- rm -f *.o lib*.a $(USER_UTILS)
302 ++ rm -f *.o lib*.so $(USER_UTILS)
303 +
304 + #------------------------------------------------------------------------------
305 + # Dependencies
306 +diff '--color=auto' -ru sionlib-ori/src/utils/Makefile sionlib/src/utils/Makefile
307 +--- sionlib-ori/src/utils/Makefile 2021-08-29 01:04:54.925546830 +0200
308 ++++ sionlib/src/utils/Makefile 2021-08-29 00:44:20.568541955 +0200
309 +@@ -45,32 +45,32 @@
310 + siondump.o : siondump.c
311 + $(CC) $(CFLAGS) -c siondump.c
312 +
313 +-siondefrag.o : siondefrag.c ../lib/lib$(SION_LIBNAME_SER).a
314 ++siondefrag.o : siondefrag.c ../lib/lib$(SION_LIBNAME_SER).so
315 + $(CC) $(CFLAGS) -c siondefrag.c
316 +
317 +-sionsplit.o : sionsplit.c ../lib/lib$(SION_LIBNAME_SER).a
318 ++sionsplit.o : sionsplit.c ../lib/lib$(SION_LIBNAME_SER).so
319 + $(CC) $(CFLAGS) -c sionsplit.c
320 +
321 +-sioncat.o : sioncat.c ../lib/lib$(SION_LIBNAME_SER).a
322 ++sioncat.o : sioncat.c ../lib/lib$(SION_LIBNAME_SER).so
323 + $(CC) $(CFLAGS) -c sioncat.c
324 +
325 +-sionversion.o : sionversion.c ../lib/lib$(SION_LIBNAME_SER).a
326 ++sionversion.o : sionversion.c ../lib/lib$(SION_LIBNAME_SER).so
327 + $(CC) $(CFLAGS) -c sionversion.c
328 +
329 +-siondump: siondump.o ../lib/lib$(SION_LIBNAME_SER).a ../lib/lib$(SION_LIBNAME_COM).a ../lib/lib$(SION_LIBNAME_COM_LOCK_NONE).a
330 ++siondump: siondump.o ../lib/lib$(SION_LIBNAME_SER).so ../lib/lib$(SION_LIBNAME_COM).so ../lib/lib$(SION_LIBNAME_COM_LOCK_NONE).so
331 + $(CC) -o $@ siondump.o $(LDFLAGS)
332 + cp siondump $(TOPDIR)/..
333 +
334 +-siondefrag: siondefrag.o ../lib/lib$(SION_LIBNAME_SER).a ../lib/lib$(SION_LIBNAME_COM).a ../lib/lib$(SION_LIBNAME_COM_LOCK_NONE).a
335 ++siondefrag: siondefrag.o ../lib/lib$(SION_LIBNAME_SER).so ../lib/lib$(SION_LIBNAME_COM).so ../lib/lib$(SION_LIBNAME_COM_LOCK_NONE).so
336 + $(CC) -o $@ siondefrag.o $(LDFLAGS)
337 +
338 +-sionsplit: sionsplit.o ../lib/lib$(SION_LIBNAME_SER).a ../lib/lib$(SION_LIBNAME_COM).a ../lib/lib$(SION_LIBNAME_COM_LOCK_NONE).a
339 ++sionsplit: sionsplit.o ../lib/lib$(SION_LIBNAME_SER).so ../lib/lib$(SION_LIBNAME_COM).so ../lib/lib$(SION_LIBNAME_COM_LOCK_NONE).so
340 + $(CC) -o $@ sionsplit.o $(LDFLAGS)
341 +
342 +-sioncat: sioncat.o ../lib/lib$(SION_LIBNAME_SER).a ../lib/lib$(SION_LIBNAME_COM).a ../lib/lib$(SION_LIBNAME_COM_LOCK_NONE).a
343 ++sioncat: sioncat.o ../lib/lib$(SION_LIBNAME_SER).so ../lib/lib$(SION_LIBNAME_COM).so ../lib/lib$(SION_LIBNAME_COM_LOCK_NONE).so
344 + $(CC) -o $@ sioncat.o $(LDFLAGS)
345 +
346 +-sionversion: sionversion.o ../lib/lib$(SION_LIBNAME_SER).a ../lib/lib$(SION_LIBNAME_COM).a ../lib/lib$(SION_LIBNAME_COM_LOCK_NONE).a
347 ++sionversion: sionversion.o ../lib/lib$(SION_LIBNAME_SER).so ../lib/lib$(SION_LIBNAME_COM).so ../lib/lib$(SION_LIBNAME_COM_LOCK_NONE).so
348 + $(CC) -o $@ sionversion.o $(LDFLAGS)
349 +
350 +
351 +@@ -136,7 +136,7 @@
352 + @rm -f header.tmp
353 +
354 + clean:
355 +- rm -f *.o lib*.a $(USER_UTILS)
356 ++ rm -f *.o lib*.so $(USER_UTILS)
357 +
358 + #------------------------------------------------------------------------------
359 + # Dependencies
360
361 diff --git a/sys-cluster/sionlib/files/sionlib-respect-flags-v3.patch b/sys-cluster/sionlib/files/sionlib-respect-flags-v3.patch
362 index 7bf98ced1..e71d7d46d 100644
363 --- a/sys-cluster/sionlib/files/sionlib-respect-flags-v3.patch
364 +++ b/sys-cluster/sionlib/files/sionlib-respect-flags-v3.patch
365 @@ -115,18 +115,18 @@
366
367 -CC = gcc
368 -CFLAGS = -std=c99 $(PFLAG) $(OPTFLAGS) -fPIC
369 -+CXXFLAGS += $(PFLAG)
370 ++CXXFLAGS += $(PFLAG) -fPIC
371
372 -CXX = g++
373 -CXXFLAGS = $(PFLAG) $(OPTFLAGS) -O3
374 -
375 -F77 = gfortran
376 -FFLAGS = $(PFLAG) $(OPTFLAGS) -fallow-argument-mismatch
377 -+FFLAGS += $(PFLAG) -fallow-argument-mismatch
378 ++FFLAGS += $(PFLAG) -fallow-argument-mismatch -fPIC
379
380 F90 = $(F77)
381 -F90FLAGS = $(PFLAG) $(OPTFLAGS) -ffree-form -fallow-argument-mismatch
382 -+F90FLAGS += $(PFLAG) -ffree-form -fallow-argument-mismatch
383 ++F90FLAGS += $(PFLAG) -ffree-form -fallow-argument-mismatch -fPIC $(FCFLAGS)
384
385 FPP =
386 FDOPT = -D
387
388 diff --git a/sys-cluster/sionlib/sionlib-1.7.7-r2.ebuild b/sys-cluster/sionlib/sionlib-1.7.7-r3.ebuild
389 similarity index 96%
390 rename from sys-cluster/sionlib/sionlib-1.7.7-r2.ebuild
391 rename to sys-cluster/sionlib/sionlib-1.7.7-r3.ebuild
392 index 33e8dbdd8..9fbf33425 100644
393 --- a/sys-cluster/sionlib/sionlib-1.7.7-r2.ebuild
394 +++ b/sys-cluster/sionlib/sionlib-1.7.7-r3.ebuild
395 @@ -20,9 +20,6 @@ SLOT="0"
396 KEYWORDS="~amd64"
397 IUSE="+cxx debug deep-est-sdv doc examples +fortran hostname-regex +mpi +ompi +openmp +parutils +pthreads python sionfwd" #cuda
398
399 -REQUIRED_USE="?? ( hostname-regex deep-est-sdv )"
400 -PATCHES=( "${FILESDIR}/${PN}-respect-flags-v3.patch" )
401 -
402 RDEPEND="
403 mpi? ( virtual/mpi )
404 ompi? (
405 @@ -37,6 +34,12 @@ DEPEND="
406 ${PYTHON_DEPS}
407 "
408
409 +REQUIRED_USE="?? ( hostname-regex deep-est-sdv )"
410 +PATCHES=(
411 + "${FILESDIR}/${PN}-respect-flags-v3.patch"
412 + "${FILESDIR}/${PN}-build-shared-libraries.patch"
413 +)
414 +
415 pkg_setup() {
416 FORTRAN_NEED_OPENMP=0
417 use openmp && FORTRAN_NEED_OPENMP=1
418 @@ -119,7 +122,5 @@ src_install() {
419 rsync -ravXHA "${T}/prefix/usr" "${ED}/" || die
420 docompress -x "/usr/share/doc/${PF}/examples"
421
422 - #TODO: build shared libs
423 - #find "${ED}" -name '*.a' -delete || die
424 find "${ED}" -name '*.la' -delete || die
425 }