1 |
bicatali 11/09/01 16:28:33 |
2 |
|
3 |
Added: superlu-4.2-autotools.patch |
4 |
Log: |
5 |
Version bump |
6 |
|
7 |
(Portage version: 2.1.10.10/cvs/Linux x86_64) |
8 |
|
9 |
Revision Changes Path |
10 |
1.1 sci-libs/superlu/files/superlu-4.2-autotools.patch |
11 |
|
12 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sci-libs/superlu/files/superlu-4.2-autotools.patch?rev=1.1&view=markup |
13 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sci-libs/superlu/files/superlu-4.2-autotools.patch?rev=1.1&content-type=text/plain |
14 |
|
15 |
Index: superlu-4.2-autotools.patch |
16 |
=================================================================== |
17 |
diff -Nur SuperLU_4.2.orig/ax_blas.m4 SuperLU_4.2/ax_blas.m4 |
18 |
--- SuperLU_4.2.orig/ax_blas.m4 1970-01-01 01:00:00.000000000 +0100 |
19 |
+++ SuperLU_4.2/ax_blas.m4 2011-09-01 06:08:20.000000000 +0100 |
20 |
@@ -0,0 +1,201 @@ |
21 |
+# =========================================================================== |
22 |
+# http://www.gnu.org/software/autoconf-archive/ax_blas.html |
23 |
+# =========================================================================== |
24 |
+# |
25 |
+# SYNOPSIS |
26 |
+# |
27 |
+# AX_BLAS([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]]) |
28 |
+# |
29 |
+# DESCRIPTION |
30 |
+# |
31 |
+# This macro looks for a library that implements the BLAS linear-algebra |
32 |
+# interface (see http://www.netlib.org/blas/). On success, it sets the |
33 |
+# BLAS_LIBS output variable to hold the requisite library linkages. |
34 |
+# |
35 |
+# To link with BLAS, you should link with: |
36 |
+# |
37 |
+# $BLAS_LIBS $LIBS $FLIBS |
38 |
+# |
39 |
+# in that order. FLIBS is the output variable of the |
40 |
+# AC_F77_LIBRARY_LDFLAGS macro (called if necessary by AX_BLAS), and is |
41 |
+# sometimes necessary in order to link with F77 libraries. Users will also |
42 |
+# need to use AC_F77_DUMMY_MAIN (see the autoconf manual), for the same |
43 |
+# reason. |
44 |
+# |
45 |
+# Many libraries are searched for, from ATLAS to CXML to ESSL. The user |
46 |
+# may also use --with-blas=<lib> in order to use some specific BLAS |
47 |
+# library <lib>. In order to link successfully, however, be aware that you |
48 |
+# will probably need to use the same Fortran compiler (which can be set |
49 |
+# via the F77 env. var.) as was used to compile the BLAS library. |
50 |
+# |
51 |
+# ACTION-IF-FOUND is a list of shell commands to run if a BLAS library is |
52 |
+# found, and ACTION-IF-NOT-FOUND is a list of commands to run it if it is |
53 |
+# not found. If ACTION-IF-FOUND is not specified, the default action will |
54 |
+# define HAVE_BLAS. |
55 |
+# |
56 |
+# LICENSE |
57 |
+# |
58 |
+# Copyright (c) 2008 Steven G. Johnson <stevenj@××××××××.edu> |
59 |
+# |
60 |
+# This program is free software: you can redistribute it and/or modify it |
61 |
+# under the terms of the GNU General Public License as published by the |
62 |
+# Free Software Foundation, either version 3 of the License, or (at your |
63 |
+# option) any later version. |
64 |
+# |
65 |
+# This program is distributed in the hope that it will be useful, but |
66 |
+# WITHOUT ANY WARRANTY; without even the implied warranty of |
67 |
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
68 |
+# Public License for more details. |
69 |
+# |
70 |
+# You should have received a copy of the GNU General Public License along |
71 |
+# with this program. If not, see <http://www.gnu.org/licenses/>. |
72 |
+# |
73 |
+# As a special exception, the respective Autoconf Macro's copyright owner |
74 |
+# gives unlimited permission to copy, distribute and modify the configure |
75 |
+# scripts that are the output of Autoconf when processing the Macro. You |
76 |
+# need not follow the terms of the GNU General Public License when using |
77 |
+# or distributing such scripts, even though portions of the text of the |
78 |
+# Macro appear in them. The GNU General Public License (GPL) does govern |
79 |
+# all other use of the material that constitutes the Autoconf Macro. |
80 |
+# |
81 |
+# This special exception to the GPL applies to versions of the Autoconf |
82 |
+# Macro released by the Autoconf Archive. When you make and distribute a |
83 |
+# modified version of the Autoconf Macro, you may extend this special |
84 |
+# exception to the GPL to apply to your modified version as well. |
85 |
+ |
86 |
+#serial 11 |
87 |
+ |
88 |
+AU_ALIAS([ACX_BLAS], [AX_BLAS]) |
89 |
+AC_DEFUN([AX_BLAS], [ |
90 |
+AC_PREREQ(2.50) |
91 |
+AC_REQUIRE([AC_F77_LIBRARY_LDFLAGS]) |
92 |
+ax_blas_ok=no |
93 |
+ |
94 |
+AC_ARG_WITH(blas, |
95 |
+ [AS_HELP_STRING([--with-blas=<lib>], [use BLAS library <lib>])]) |
96 |
+case $with_blas in |
97 |
+ yes | "") ;; |
98 |
+ no) ax_blas_ok=disable ;; |
99 |
+ -* | */* | *.a | *.so | *.so.* | *.o) BLAS_LIBS="$with_blas" ;; |
100 |
+ *) BLAS_LIBS="-l$with_blas" ;; |
101 |
+esac |
102 |
+ |
103 |
+# Get fortran linker names of BLAS functions to check for. |
104 |
+AC_F77_FUNC(sgemm) |
105 |
+AC_F77_FUNC(dgemm) |
106 |
+ |
107 |
+ax_blas_save_LIBS="$LIBS" |
108 |
+LIBS="$LIBS $FLIBS" |
109 |
+ |
110 |
+# First, check BLAS_LIBS environment variable |
111 |
+if test $ax_blas_ok = no; then |
112 |
+if test "x$BLAS_LIBS" != x; then |
113 |
+ save_LIBS="$LIBS"; LIBS="$BLAS_LIBS $LIBS" |
114 |
+ AC_MSG_CHECKING([for $sgemm in $BLAS_LIBS]) |
115 |
+ AC_TRY_LINK_FUNC($sgemm, [ax_blas_ok=yes], [BLAS_LIBS=""]) |
116 |
+ AC_MSG_RESULT($ax_blas_ok) |
117 |
+ LIBS="$save_LIBS" |
118 |
+fi |
119 |
+fi |
120 |
+ |
121 |
+# BLAS linked to by default? (happens on some supercomputers) |
122 |
+if test $ax_blas_ok = no; then |
123 |
+ save_LIBS="$LIBS"; LIBS="$LIBS" |
124 |
+ AC_MSG_CHECKING([if $sgemm is being linked in already]) |
125 |
+ AC_TRY_LINK_FUNC($sgemm, [ax_blas_ok=yes]) |
126 |
+ AC_MSG_RESULT($ax_blas_ok) |
127 |
+ LIBS="$save_LIBS" |
128 |
+fi |
129 |
+ |
130 |
+# BLAS in ATLAS library? (http://math-atlas.sourceforge.net/) |
131 |
+if test $ax_blas_ok = no; then |
132 |
+ AC_CHECK_LIB(atlas, ATL_xerbla, |
133 |
+ [AC_CHECK_LIB(f77blas, $sgemm, |
134 |
+ [AC_CHECK_LIB(cblas, cblas_dgemm, |
135 |
+ [ax_blas_ok=yes |
136 |
+ BLAS_LIBS="-lcblas -lf77blas -latlas"], |
137 |
+ [], [-lf77blas -latlas])], |
138 |
+ [], [-latlas])]) |
139 |
+fi |
140 |
+ |
141 |
+# BLAS in PhiPACK libraries? (requires generic BLAS lib, too) |
142 |
+if test $ax_blas_ok = no; then |
143 |
+ AC_CHECK_LIB(blas, $sgemm, |
144 |
+ [AC_CHECK_LIB(dgemm, $dgemm, |
145 |
+ [AC_CHECK_LIB(sgemm, $sgemm, |
146 |
+ [ax_blas_ok=yes; BLAS_LIBS="-lsgemm -ldgemm -lblas"], |
147 |
+ [], [-lblas])], |
148 |
+ [], [-lblas])]) |
149 |
+fi |
150 |
+ |
151 |
+# BLAS in Intel MKL library? |
152 |
+if test $ax_blas_ok = no; then |
153 |
+ AC_CHECK_LIB(mkl, $sgemm, [ax_blas_ok=yes;BLAS_LIBS="-lmkl"]) |
154 |
+fi |
155 |
+ |
156 |
+# BLAS in Apple vecLib library? |
157 |
+if test $ax_blas_ok = no; then |
158 |
+ save_LIBS="$LIBS"; LIBS="-framework vecLib $LIBS" |
159 |
+ AC_MSG_CHECKING([for $sgemm in -framework vecLib]) |
160 |
+ AC_TRY_LINK_FUNC($sgemm, [ax_blas_ok=yes;BLAS_LIBS="-framework vecLib"]) |
161 |
+ AC_MSG_RESULT($ax_blas_ok) |
162 |
+ LIBS="$save_LIBS" |
163 |
+fi |
164 |
+ |
165 |
+# BLAS in Alpha CXML library? |
166 |
+if test $ax_blas_ok = no; then |
167 |
+ AC_CHECK_LIB(cxml, $sgemm, [ax_blas_ok=yes;BLAS_LIBS="-lcxml"]) |
168 |
+fi |
169 |
+ |
170 |
+# BLAS in Alpha DXML library? (now called CXML, see above) |
171 |
+if test $ax_blas_ok = no; then |
172 |
+ AC_CHECK_LIB(dxml, $sgemm, [ax_blas_ok=yes;BLAS_LIBS="-ldxml"]) |
173 |
+fi |
174 |
+ |
175 |
+# BLAS in Sun Performance library? |
176 |
+if test $ax_blas_ok = no; then |
177 |
+ if test "x$GCC" != xyes; then # only works with Sun CC |
178 |
+ AC_CHECK_LIB(sunmath, acosp, |
179 |
+ [AC_CHECK_LIB(sunperf, $sgemm, |
180 |
+ [BLAS_LIBS="-xlic_lib=sunperf -lsunmath" |
181 |
+ ax_blas_ok=yes],[],[-lsunmath])]) |
182 |
+ fi |
183 |
+fi |
184 |
+ |
185 |
+# BLAS in SCSL library? (SGI/Cray Scientific Library) |
186 |
+if test $ax_blas_ok = no; then |
187 |
+ AC_CHECK_LIB(scs, $sgemm, [ax_blas_ok=yes; BLAS_LIBS="-lscs"]) |
188 |
+fi |
189 |
+ |
190 |
+# BLAS in SGIMATH library? |
191 |
+if test $ax_blas_ok = no; then |
192 |
+ AC_CHECK_LIB(complib.sgimath, $sgemm, |
193 |
+ [ax_blas_ok=yes; BLAS_LIBS="-lcomplib.sgimath"]) |
194 |
+fi |
195 |
+ |
196 |
+# BLAS in IBM ESSL library? (requires generic BLAS lib, too) |
197 |
+if test $ax_blas_ok = no; then |
198 |
+ AC_CHECK_LIB(blas, $sgemm, |
199 |
+ [AC_CHECK_LIB(essl, $sgemm, |
200 |
+ [ax_blas_ok=yes; BLAS_LIBS="-lessl -lblas"], |
201 |
+ [], [-lblas $FLIBS])]) |
202 |
+fi |
203 |
+ |
204 |
+# Generic BLAS library? |
205 |
+if test $ax_blas_ok = no; then |
206 |
+ AC_CHECK_LIB(blas, $sgemm, [ax_blas_ok=yes; BLAS_LIBS="-lblas"]) |
207 |
+fi |
208 |
+ |
209 |
+AC_SUBST(BLAS_LIBS) |
210 |
+ |
211 |
+LIBS="$ax_blas_save_LIBS" |
212 |
+ |
213 |
+# Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND: |
214 |
+if test x"$ax_blas_ok" = xyes; then |
215 |
+ ifelse([$1],,AC_DEFINE(HAVE_BLAS,1,[Define if you have a BLAS library.]),[$1]) |
216 |
+ : |
217 |
+else |
218 |
+ ax_blas_ok=no |
219 |
+ $2 |
220 |
+fi |
221 |
+])dnl AX_BLAS |
222 |
diff -Nur SuperLU_4.2.orig/configure.ac SuperLU_4.2/configure.ac |
223 |
--- SuperLU_4.2.orig/configure.ac 1970-01-01 01:00:00.000000000 +0100 |
224 |
+++ SuperLU_4.2/configure.ac 2011-09-01 16:50:11.000000000 +0100 |
225 |
@@ -0,0 +1,16 @@ |
226 |
+# -*- Autoconf -*- |
227 |
+AC_PREREQ(2.59) |
228 |
+AC_INIT(superlu, 4.2, xsli@×××.gov) |
229 |
+AM_INIT_AUTOMAKE([foreign]) |
230 |
+AC_CONFIG_HEADER([config.h]) |
231 |
+AC_PROG_INSTALL |
232 |
+AC_PROG_LIBTOOL |
233 |
+AC_PROG_F77 |
234 |
+sinclude(ax_blas.m4) |
235 |
+AX_BLAS |
236 |
+if test x"$BLAS_LIBS" = x; then |
237 |
+ AC_MSG_ERROR([Cannot find blas libraries]) |
238 |
+fi |
239 |
+AC_CHECK_LIB([m], [floor]) |
240 |
+AC_CONFIG_FILES([Makefile SRC/Makefile superlu.pc]) |
241 |
+AC_OUTPUT |
242 |
diff -Nur SuperLU_4.2.orig/EXAMPLE/Makefile SuperLU_4.2/EXAMPLE/Makefile |
243 |
--- SuperLU_4.2.orig/EXAMPLE/Makefile 2011-08-12 19:03:34.000000000 +0100 |
244 |
+++ SuperLU_4.2/EXAMPLE/Makefile 2011-09-01 06:13:22.000000000 +0100 |
245 |
@@ -1,4 +1,3 @@ |
246 |
-include ../make.inc |
247 |
|
248 |
####################################################################### |
249 |
# This makefile creates the example programs for the linear equation |
250 |
@@ -32,7 +31,9 @@ |
251 |
# |
252 |
####################################################################### |
253 |
|
254 |
-HEADER = ../SRC |
255 |
+HEADER = $(shell pkg-config --cflags superlu) |
256 |
+LIBS = $(shell pkg-config --libs superlu) |
257 |
+CDEFS = -DAdd_ |
258 |
|
259 |
SLINEXM = slinsol.o |
260 |
SLINEXM1 = slinsol1.o |
261 |
@@ -67,7 +68,6 @@ |
262 |
ZITSOL = zitersol.o zfgmr.o |
263 |
ZITSOL1 = zitersol1.o zfgmr.o |
264 |
|
265 |
- |
266 |
all: single double complex complex16 |
267 |
|
268 |
single: slinsol slinsol1 slinsolx slinsolx1 slinsolx2 sitersol sitersol1 |
269 |
@@ -77,97 +77,97 @@ |
270 |
complex16: zlinsol zlinsol1 zlinsolx zlinsolx1 zlinsolx2 zitersol zitersol1 |
271 |
|
272 |
slinsol: $(SLINEXM) $(SUPERLULIB) |
273 |
- $(LOADER) $(LOADOPTS) $(SLINEXM) $(LIBS) -lm -o $@ |
274 |
+ $(LD) $(LDFLAGS) $(SLINEXM) $(LIBS) -o $@ |
275 |
|
276 |
slinsol1: $(SLINEXM1) $(SUPERLULIB) |
277 |
- $(LOADER) $(LOADOPTS) $(SLINEXM1) $(LIBS) -lm -o $@ |
278 |
+ $(LD) $(LDFLAGS) $(SLINEXM1) $(LIBS) -o $@ |
279 |
|
280 |
slinsolx: $(SLINXEXM) $(SUPERLULIB) |
281 |
- $(LOADER) $(LOADOPTS) $(SLINXEXM) $(LIBS) -lm -o $@ |
282 |
+ $(LD) $(LDFLAGS) $(SLINXEXM) $(LIBS) -o $@ |
283 |
|
284 |
slinsolx1: $(SLINXEXM1) $(SUPERLULIB) |
285 |
- $(LOADER) $(LOADOPTS) $(SLINXEXM1) $(LIBS) -lm -o $@ |
286 |
+ $(LD) $(LDFLAGS) $(SLINXEXM1) $(LIBS) -o $@ |
287 |
|
288 |
slinsolx2: $(SLINXEXM2) $(SUPERLULIB) |
289 |
- $(LOADER) $(LOADOPTS) $(SLINXEXM2) $(LIBS) -lm -o $@ |
290 |
+ $(LD) $(LDFLAGS) $(SLINXEXM2) $(LIBS) -o $@ |
291 |
|
292 |
sitersol: $(SITSOL) $(SUPERLULIB) |
293 |
- $(LOADER) $(LOADOPTS) $(SITSOL) $(LIBS) -lm -o $@ |
294 |
+ $(LD) $(LDFLAGS) $(SITSOL) $(LIBS) -o $@ |
295 |
|
296 |
sitersol1: $(SITSOL1) $(SUPERLULIB) |
297 |
- $(LOADER) $(LOADOPTS) $(SITSOL1) $(LIBS) -lm -o $@ |
298 |
+ $(LD) $(LDFLAGS) $(SITSOL1) $(LIBS) -o $@ |
299 |
|
300 |
dlinsol: $(DLINEXM) $(SUPERLULIB) |
301 |
- $(LOADER) $(LOADOPTS) $(DLINEXM) $(LIBS) -lm -o $@ |
302 |
+ $(LD) $(LDFLAGS) $(DLINEXM) $(LIBS) -o $@ |
303 |
|
304 |
dlinsol1: $(DLINEXM1) $(SUPERLULIB) |
305 |
- $(LOADER) $(LOADOPTS) $(DLINEXM1) $(LIBS) -lm -o $@ |
306 |
+ $(LD) $(LDFLAGS) $(DLINEXM1) $(LIBS) -o $@ |
307 |
|
308 |
dlinsolx: $(DLINXEXM) $(SUPERLULIB) |
309 |
- $(LOADER) $(LOADOPTS) $(DLINXEXM) $(LIBS) -lm -o $@ |
310 |
+ $(LD) $(LDFLAGS) $(DLINXEXM) $(LIBS) -o $@ |
311 |
|
312 |
dlinsolx1: $(DLINXEXM1) $(SUPERLULIB) |
313 |
- $(LOADER) $(LOADOPTS) $(DLINXEXM1) $(LIBS) -lm -o $@ |
314 |
+ $(LD) $(LDFLAGS) $(DLINXEXM1) $(LIBS) -o $@ |
315 |
|
316 |
dlinsolx2: $(DLINXEXM2) $(SUPERLULIB) |
317 |
- $(LOADER) $(LOADOPTS) $(DLINXEXM2) $(LIBS) -lm -o $@ |
318 |
+ $(LD) $(LDFLAGS) $(DLINXEXM2) $(LIBS) -o $@ |
319 |
|
320 |
superlu: $(SUPERLUEXM) $(SUPERLULIB) |
321 |
- $(LOADER) $(LOADOPTS) $(SUPERLUEXM) $(LIBS) -lm -o $@ |
322 |
+ $(LD) $(LDFLAGS) $(SUPERLUEXM) $(LIBS) -o $@ |
323 |
|
324 |
ditersol: $(DITSOL) $(SUPERLULIB) |
325 |
- $(LOADER) $(LOADOPTS) $(DITSOL) $(LIBS) -lm -o $@ |
326 |
+ $(LD) $(LDFLAGS) $(DITSOL) $(LIBS) -o $@ |
327 |
|
328 |
ditersol1: $(DITSOL1) $(SUPERLULIB) |
329 |
- $(LOADER) $(LOADOPTS) $(DITSOL1) $(LIBS) -lm -o $@ |
330 |
+ $(LD) $(LDFLAGS) $(DITSOL1) $(LIBS) -o $@ |
331 |
|
332 |
clinsol: $(CLINEXM) $(SUPERLULIB) |
333 |
- $(LOADER) $(LOADOPTS) $(CLINEXM) $(LIBS) -lm -o $@ |
334 |
+ $(LD) $(LDFLAGS) $(CLINEXM) $(LIBS) -o $@ |
335 |
|
336 |
clinsol1: $(CLINEXM1) $(SUPERLULIB) |
337 |
- $(LOADER) $(LOADOPTS) $(CLINEXM1) $(LIBS) -lm -o $@ |
338 |
+ $(LD) $(LDFLAGS) $(CLINEXM1) $(LIBS) -o $@ |
339 |
|
340 |
clinsolx: $(CLINXEXM) $(SUPERLULIB) |
341 |
- $(LOADER) $(LOADOPTS) $(CLINXEXM) $(LIBS) -lm -o $@ |
342 |
+ $(LD) $(LDFLAGS) $(CLINXEXM) $(LIBS) -o $@ |
343 |
|
344 |
clinsolx1: $(CLINXEXM1) $(SUPERLULIB) |
345 |
- $(LOADER) $(LOADOPTS) $(CLINXEXM1) $(LIBS) -lm -o $@ |
346 |
+ $(LD) $(LDFLAGS) $(CLINXEXM1) $(LIBS) -o $@ |
347 |
|
348 |
clinsolx2: $(CLINXEXM2) $(SUPERLULIB) |
349 |
- $(LOADER) $(LOADOPTS) $(CLINXEXM2) $(LIBS) -lm -o $@ |
350 |
+ $(LD) $(LDFLAGS) $(CLINXEXM2) $(LIBS) -o $@ |
351 |
|
352 |
citersol: $(CITSOL) $(SUPERLULIB) |
353 |
- $(LOADER) $(LOADOPTS) $(CITSOL) $(LIBS) -lm -o $@ |
354 |
+ $(LD) $(LDFLAGS) $(CITSOL) $(LIBS) -o $@ |
355 |
|
356 |
citersol1: $(CITSOL1) $(SUPERLULIB) |
357 |
- $(LOADER) $(LOADOPTS) $(CITSOL1) $(LIBS) -lm -o $@ |
358 |
+ $(LD) $(LDFLAGS) $(CITSOL1) $(LIBS) -o $@ |
359 |
|
360 |
zlinsol: $(ZLINEXM) $(SUPERLULIB) |
361 |
- $(LOADER) $(LOADOPTS) $(ZLINEXM) $(LIBS) -lm -o $@ |
362 |
+ $(LD) $(LDFLAGS) $(ZLINEXM) $(LIBS) -o $@ |
363 |
|
364 |
zlinsol1: $(ZLINEXM1) $(SUPERLULIB) |
365 |
- $(LOADER) $(LOADOPTS) $(ZLINEXM1) $(LIBS) -lm -o $@ |
366 |
+ $(LD) $(LDFLAGS) $(ZLINEXM1) $(LIBS) -o $@ |
367 |
|
368 |
zlinsolx: $(ZLINXEXM) $(SUPERLULIB) |
369 |
- $(LOADER) $(LOADOPTS) $(ZLINXEXM) $(LIBS) -lm -o $@ |
370 |
+ $(LD) $(LDFLAGS) $(ZLINXEXM) $(LIBS) -o $@ |
371 |
|
372 |
zlinsolx1: $(ZLINXEXM1) $(SUPERLULIB) |
373 |
- $(LOADER) $(LOADOPTS) $(ZLINXEXM1) $(LIBS) -lm -o $@ |
374 |
+ $(LD) $(LDFLAGS) $(ZLINXEXM1) $(LIBS) -o $@ |
375 |
|
376 |
zlinsolx2: $(ZLINXEXM2) $(SUPERLULIB) |
377 |
- $(LOADER) $(LOADOPTS) $(ZLINXEXM2) $(LIBS) -lm -o $@ |
378 |
+ $(LD) $(LDFLAGS) $(ZLINXEXM2) $(LIBS) -o $@ |
379 |
|
380 |
zitersol: $(ZITSOL) $(SUPERLULIB) |
381 |
- $(LOADER) $(LOADOPTS) $(ZITSOL) $(LIBS) -lm -o $@ |
382 |
+ $(LD) $(LDFLAGS) $(ZITSOL) $(LIBS) -o $@ |
383 |
|
384 |
zitersol1: $(ZITSOL1) $(SUPERLULIB) |
385 |
- $(LOADER) $(LOADOPTS) $(ZITSOL1) $(LIBS) -lm -o $@ |
386 |
+ $(LD) $(LDFLAG) $(ZITSOL1) $(LIBS) -o $@ |
387 |
|
388 |
.c.o: |
389 |
- $(CC) $(CFLAGS) $(CDEFS) -I$(HEADER) -c $< $(VERBOSE) |
390 |
+ $(CC) $(CFLAGS) $(CDEFS) $(HEADER) -c $< $(VERBOSE) |
391 |
|
392 |
.f.o: |
393 |
- $(FORTRAN) $(FFLAGS) -c $< $(VERBOSE) |
394 |
+ $(FC) $(FFLAGS) -c $< $(VERBOSE) |
395 |
|
396 |
clean: |
397 |
rm -f *.o *linsol *linsol1 *linsolx *linsolx1 *linsolx2 \ |
398 |
diff -Nur SuperLU_4.2.orig/FORTRAN/Makefile SuperLU_4.2/FORTRAN/Makefile |
399 |
--- SuperLU_4.2.orig/FORTRAN/Makefile 2011-08-10 01:30:30.000000000 +0100 |
400 |
+++ SuperLU_4.2/FORTRAN/Makefile 2011-09-01 06:08:20.000000000 +0100 |
401 |
@@ -1,12 +1,12 @@ |
402 |
-include ../make.inc |
403 |
+#include ../make.inc |
404 |
|
405 |
####################################################################### |
406 |
# This makefile creates the Fortran example interface to use the |
407 |
# C routines in SuperLU. |
408 |
####################################################################### |
409 |
|
410 |
-HEADER = ../SRC |
411 |
-LIBS = $(SUPERLULIB) $(BLASLIB) -lm |
412 |
+HEADER = $(shell pkg-config --cflags superlu) |
413 |
+LIBS = $(shell pkg-config --libs superlu) |
414 |
|
415 |
# double real |
416 |
F77EXM = f77_main.o hbcode1.o c_fortran_dgssv.o |
417 |
@@ -17,19 +17,19 @@ |
418 |
all: f77exm zf77exm |
419 |
|
420 |
f77exm: $(F77EXM) $(SUPERLULIB) |
421 |
- $(FORTRAN) $(LOADOPTS) $(F77EXM) $(LIBS) -o $@ |
422 |
+ $(FC) $(LDFLAGS) $(F77EXM) $(LIBS) -o $@ |
423 |
|
424 |
zf77exm: $(ZF77EXM) $(SUPERLULIB) |
425 |
$(FORTRAN) $(LOADOPTS) $(ZF77EXM) $(LIBS) -o $@ |
426 |
|
427 |
c_fortran_zgssv.o: c_fortran_zgssv.c |
428 |
- $(CC) $(CFLAGS) $(CDEFS) -I$(HEADER) -c $< $(VERBOSE) |
429 |
+ $(CC) $(CFLAGS) $(CDEFS) $(HEADER) -c $< $(VERBOSE) |
430 |
|
431 |
.c.o: |
432 |
- $(CC) $(CFLAGS) $(CDEFS) -I$(HEADER) -c $< $(VERBOSE) |
433 |
+ $(CC) $(CFLAGS) $(CDEFS) $(HEADER) -c $< $(VERBOSE) |
434 |
|
435 |
.f.o: |
436 |
- $(FORTRAN) $(FFLAGS) -c $< $(VERBOSE) |
437 |
+ $(FC) $(FFLAGS) -c $< $(VERBOSE) |
438 |
|
439 |
clean: |
440 |
rm -f *.o f77exm zf77exm |
441 |
diff -Nur SuperLU_4.2.orig/Makefile.am SuperLU_4.2/Makefile.am |
442 |
--- SuperLU_4.2.orig/Makefile.am 1970-01-01 01:00:00.000000000 +0100 |
443 |
+++ SuperLU_4.2/Makefile.am 2011-09-01 06:08:20.000000000 +0100 |
444 |
@@ -0,0 +1,4 @@ |
445 |
+SUBDIRS = SRC |
446 |
+ |
447 |
+pkgconfigdir = $(libdir)/pkgconfig |
448 |
+pkgconfig_DATA = superlu.pc |
449 |
diff -Nur SuperLU_4.2.orig/SRC/Makefile.am SuperLU_4.2/SRC/Makefile.am |
450 |
--- SuperLU_4.2.orig/SRC/Makefile.am 1970-01-01 01:00:00.000000000 +0100 |
451 |
+++ SuperLU_4.2/SRC/Makefile.am 2011-09-01 17:12:01.000000000 +0100 |
452 |
@@ -0,0 +1,110 @@ |
453 |
+AM_CPPFLAGS = -DAdd_ |
454 |
+ |
455 |
+### headers |
456 |
+noinst_HEADERS = \ |
457 |
+ colamd.h \ |
458 |
+ html_mainpage.h |
459 |
+ |
460 |
+src_includedir = $(includedir)/superlu |
461 |
+src_include_HEADERS = \ |
462 |
+ slu_cdefs.h \ |
463 |
+ slu_ddefs.h \ |
464 |
+ slu_sdefs.h \ |
465 |
+ slu_zdefs.h \ |
466 |
+ slu_Cnames.h \ |
467 |
+ slu_dcomplex.h \ |
468 |
+ slu_scomplex.h \ |
469 |
+ slu_util.h \ |
470 |
+ superlu_enum_consts.h \ |
471 |
+ supermatrix.h |
472 |
+ |
473 |
+### LAPACK |
474 |
+LAAUX = lsame.c xerbla.c |
475 |
+SLASRC = slacon.c |
476 |
+DLASRC = dlacon.c |
477 |
+CLASRC = clacon.c scsum1.c icmax1.c |
478 |
+ZLASRC = zlacon.c dzsum1.c izmax1.c |
479 |
+ |
480 |
+ |
481 |
+################################## |
482 |
+# Do not optimize these routines # |
483 |
+################################## |
484 |
+CFLAGS_SAV=@CFLAGS@ |
485 |
+CFLAGS= |
486 |
+noinst_LTLIBRARIES = libnoopt.la |
487 |
+libnoopt_la_SOURCES = slamch.c dlamch.c superlu_timer.c |
488 |
+libnoopt_la_CFLAGS = -O0 |
489 |
+ |
490 |
+### SuperLU |
491 |
+ALLAUX = util.c memory.c get_perm_c.c mmd.c \ |
492 |
+ sp_coletree.c sp_preorder.c sp_ienv.c relax_snode.c \ |
493 |
+ heap_relax_snode.c colamd.c \ |
494 |
+ ilu_relax_snode.c ilu_heap_relax_snode.c mark_relax.c \ |
495 |
+ mc64ad.f qselect.f |
496 |
+ |
497 |
+SLUSRC = \ |
498 |
+ sgssv.c sgssvx.c \ |
499 |
+ ssp_blas2.c ssp_blas3.c sgscon.c \ |
500 |
+ slangs.c sgsequ.c slaqgs.c spivotgrowth.c \ |
501 |
+ sgsrfs.c sgstrf.c sgstrs.c scopy_to_ucol.c \ |
502 |
+ ssnode_dfs.c ssnode_bmod.c \ |
503 |
+ spanel_dfs.c spanel_bmod.c sreadhb.c \ |
504 |
+ scolumn_dfs.c scolumn_bmod.c spivotL.c spruneL.c \ |
505 |
+ smemory.c sutil.c smyblas2.c \ |
506 |
+ sgsisx.c sgsitrf.c sldperm.c \ |
507 |
+ ilu_sdrop_row.c ilu_ssnode_dfs.c \ |
508 |
+ ilu_scolumn_dfs.c ilu_spanel_dfs.c ilu_scopy_to_ucol.c \ |
509 |
+ ilu_spivotL.c sdiagonal.c |
510 |
+ |
511 |
+DLUSRC = \ |
512 |
+ dgssv.c dgssvx.c \ |
513 |
+ dsp_blas2.c dsp_blas3.c dgscon.c \ |
514 |
+ dlangs.c dgsequ.c dlaqgs.c dpivotgrowth.c \ |
515 |
+ dgsrfs.c dgstrf.c dgstrs.c dcopy_to_ucol.c \ |
516 |
+ dsnode_dfs.c dsnode_bmod.c \ |
517 |
+ dpanel_dfs.c dpanel_bmod.c dreadhb.c \ |
518 |
+ dcolumn_dfs.c dcolumn_bmod.c dpivotL.c dpruneL.c \ |
519 |
+ dmemory.c dutil.c dmyblas2.c \ |
520 |
+ dgsisx.c dgsitrf.c \ |
521 |
+ dldperm.c \ |
522 |
+ ilu_ddrop_row.c ilu_dsnode_dfs.c \ |
523 |
+ ilu_dcolumn_dfs.c ilu_dpanel_dfs.c ilu_dcopy_to_ucol.c \ |
524 |
+ ilu_dpivotL.c ddiagonal.c |
525 |
+ |
526 |
+CLUSRC = \ |
527 |
+ scomplex.c cgssv.c cgssvx.c csp_blas2.c csp_blas3.c cgscon.c \ |
528 |
+ clangs.c cgsequ.c claqgs.c cpivotgrowth.c \ |
529 |
+ cgsrfs.c cgstrf.c cgstrs.c ccopy_to_ucol.c \ |
530 |
+ csnode_dfs.c csnode_bmod.c \ |
531 |
+ cpanel_dfs.c cpanel_bmod.c creadhb.c \ |
532 |
+ ccolumn_dfs.c ccolumn_bmod.c cpivotL.c cpruneL.c \ |
533 |
+ cmemory.c cutil.c cmyblas2.c \ |
534 |
+ cgsisx.c cgsitrf.c cldperm.c \ |
535 |
+ ilu_cdrop_row.c ilu_csnode_dfs.c \ |
536 |
+ ilu_ccolumn_dfs.c ilu_cpanel_dfs.c ilu_ccopy_to_ucol.c \ |
537 |
+ ilu_cpivotL.c cdiagonal.c |
538 |
+ |
539 |
+ZLUSRC = \ |
540 |
+ dcomplex.c zgssv.c zgssvx.c zsp_blas2.c zsp_blas3.c zgscon.c \ |
541 |
+ zlangs.c zgsequ.c zlaqgs.c zpivotgrowth.c \ |
542 |
+ zgsrfs.c zgstrf.c zgstrs.c zcopy_to_ucol.c \ |
543 |
+ zsnode_dfs.c zsnode_bmod.c \ |
544 |
+ zpanel_dfs.c zpanel_bmod.c zreadhb.c \ |
545 |
+ zcolumn_dfs.c zcolumn_bmod.c zpivotL.c zpruneL.c \ |
546 |
+ zmemory.c zutil.c zmyblas2.c \ |
547 |
+ zgsisx.c zgsitrf.c zldperm.c \ |
548 |
+ ilu_zdrop_row.c ilu_zsnode_dfs.c \ |
549 |
+ ilu_zcolumn_dfs.c ilu_zpanel_dfs.c ilu_zcopy_to_ucol.c \ |
550 |
+ ilu_zpivotL.c zdiagonal.c |
551 |
+ |
552 |
+lib_LTLIBRARIES = libsuperlu.la |
553 |
+libsuperlu_la_SOURCES = \ |
554 |
+ $(NOOPTAUX) \ |
555 |
+ $(ALLAUX) $(LAAUX) \ |
556 |
+ $(SLUSRC) $(SLASRC) \ |
557 |
+ $(DLUSRC) $(DLASRC) \ |
558 |
+ $(CLUSRC) $(CLASRC) \ |
559 |
+ $(ZLUSRC) $(ZLASRC) |
560 |
+libsuperlu_la_CFLAGS = $(CFLAGS_SAV) |
561 |
+libsuperlu_la_LIBADD = $(BLAS_LIBS) libnoopt.la |
562 |
+libsuperlu_la_LDFLAGS = -no-undefined -version-info 4:2:0 |
563 |
diff -Nur SuperLU_4.2.orig/superlu.pc.in SuperLU_4.2/superlu.pc.in |
564 |
--- SuperLU_4.2.orig/superlu.pc.in 1970-01-01 01:00:00.000000000 +0100 |
565 |
+++ SuperLU_4.2/superlu.pc.in 2011-09-01 16:51:20.000000000 +0100 |
566 |
@@ -0,0 +1,13 @@ |
567 |
+prefix=@prefix@ |
568 |
+exec_prefix=@exec_prefix@ |
569 |
+libdir=@libdir@ |
570 |
+includedir=@includedir@ |
571 |
+ |
572 |
+Name: @PACKAGE_NAME@ |
573 |
+Description: Sparse LU factorization library |
574 |
+Version: @PACKAGE_VERSION@ |
575 |
+URL: http://crd.lbl.gov/~xiaoye/SuperLU/ |
576 |
+Libs: -L${libdir} -lsuperlu |
577 |
+Libs.private: -lm @FLIBS@ |
578 |
+Requires: blas |
579 |
+Cflags: -I${includedir}/superlu |