1 --- UMFPACK/Demo/Makefile.orig 2014-10-03 16:14:05.839641618 +0200
2 +++ UMFPACK/Demo/Makefile 2014-10-03 16:15:11.772972188 +0200
5 LIBS = $(LAPACK) $(BLAS) $(XERBLA) $(LIB) $(LIB_WITH_CHOLMOD) $(LIB_WITH_PARTITION) $(CUBLAS_LIB) $(CUDART_LIB)
9 ( cd ../Lib ; $(MAKE) )
11 -UMFPACK = ../Lib/libumfpack.a -lamd -lsuitesparseconfig \
12 +UMFPACK = ../Lib/libumfpack.la -lamd -lsuitesparseconfig \
13 $(LIB_WITH_CHOLMOD) $(LIB_WITH_PARTITION)
17 dist: umfpack_di_demo.c umfpack_dl_demo.c umfpack_zi_demo.c umfpack_zl_demo.c
19 umfpack_simple: umfpack_simple.c $(INC) $(UMFPACK)
20 - $(C) -o umfpack_simple umfpack_simple.c $(UMFPACK) $(LIBS)
21 + libtool --tag=CC --mode=link $(CC) $(LDFLAGS) $(CFLAGS) $(UMFPACK_CONFIG) -I../Include -I/usr/include/amd -o umfpack_simple umfpack_simple.c $(UMFPACK) $(LIBS)
23 # the GNU rules are simpler:
24 # umfpack_%_demo.c: umfpack_xx_demo.c umfpack_%_demo.sed
26 - sed -f umfpack_di_demo.sed < umfpack_xx_demo.c > umfpack_di_demo.c
28 umfpack_di_demo: umfpack_di_demo.c $(INC) $(UMFPACK)
29 - $(C) -o umfpack_di_demo umfpack_di_demo.c $(UMFPACK) $(LIBS)
30 + libtool --tag=CC --mode=link $(C) $(LDFLAGS) -o umfpack_di_demo umfpack_di_demo.c $(UMFPACK) $(LIBS)
32 # double-precision, SuiteSparse_long verion:
33 umfpack_dl_demo.c: umfpack_xx_demo.c umfpack_dl_demo.sed
34 - sed -f umfpack_dl_demo.sed < umfpack_xx_demo.c > umfpack_dl_demo.c
36 umfpack_dl_demo: umfpack_dl_demo.c $(INC) $(UMFPACK)
37 - $(C) -o umfpack_dl_demo umfpack_dl_demo.c $(UMFPACK) $(LIBS)
38 + libtool --tag=CC --mode=link $(C) $(LDFLAGS) -o umfpack_dl_demo umfpack_dl_demo.c $(UMFPACK) $(LIBS)
40 # complex, int verion:
41 umfpack_zi_demo.c: umfpack_xx_demo.c umfpack_zi_demo.sed
42 - sed -f umfpack_zi_demo.sed < umfpack_xx_demo.c > umfpack_zi_demo.c
44 umfpack_zi_demo: umfpack_zi_demo.c $(INC) $(UMFPACK)
45 - $(C) -o umfpack_zi_demo umfpack_zi_demo.c $(UMFPACK) $(LIBS)
46 + libtool --tag=CC --mode=link $(C) $(LDFLAGS) -o umfpack_zi_demo umfpack_zi_demo.c $(UMFPACK) $(LIBS)
48 # complex, SuiteSparse_long verion:
49 umfpack_zl_demo.c: umfpack_xx_demo.c umfpack_zl_demo.sed
50 - sed -f umfpack_zl_demo.sed < umfpack_xx_demo.c > umfpack_zl_demo.c
52 umfpack_zl_demo: umfpack_zl_demo.c $(INC) $(UMFPACK)
53 - $(C) -o umfpack_zl_demo umfpack_zl_demo.c $(UMFPACK) $(LIBS)
54 + libtool --tag=CC --mode=link $(C) $(LDFLAGS) -o umfpack_zl_demo umfpack_zl_demo.c $(UMFPACK) $(LIBS)
56 run: umfpack_di_demo umfpack_zi_demo umfpack_dl_demo umfpack_zl_demo umfpack_simple
61 umf4: umf4.c $(UMFPACK)
62 - $(C) -o umf4 umf4.c $(UMFPACK) $(LIBS)
63 + libtool --tag=CC --mode=link $(C) -o umf4 umf4.c $(UMFPACK) $(LIBS)
66 - $(F77) $(F77FLAGS) -o readhb readhb.f $(F77LIB)
67 + libtool --tag=F77 --mode=link $(F77) $(F77FLAGS) -o readhb readhb.f $(F77LIB)
69 readhb_size: readhb_size.f
70 - $(F77) $(F77FLAGS) -o readhb_size readhb_size.f $(F77LIB)
71 + libtool --tag=F77 --mode=link $(F77) $(F77FLAGS) -o readhb_size readhb_size.f $(F77LIB)
73 readhb_nozeros: readhb_nozeros.f
74 - $(F77) $(F77FLAGS) -o readhb_nozeros readhb_nozeros.f $(F77LIB)
75 + libtool --tag=F77 --mode=link $(F77) $(F77FLAGS) -o readhb_nozeros readhb_nozeros.f $(F77LIB)
77 #-------------------------------------------------------------------------------
78 # compile the FORTRAN interface and demo
81 # This doesn't seem to work on the Mac (Snow Leopard, OS X 10.6.1)
82 fortran: $(UMFPACK) umf4hb.f umf4_f77wrapper.o umf4zhb.f umf4_f77zwrapper.o $(UMFPACK)
83 - $(F77) $(F77FLAGS) -o umf4hb umf4hb.f umf4_f77wrapper.o \
84 + libtool --tag=F77 --mode=link $(F77) $(F77FLAGS) -o umf4hb umf4hb.f umf4_f77wrapper.o \
86 - ./umf4hb < HB/west0067.rua > my_umf4hb.out
87 - diff my_umf4hb.out umf4hb.out
88 - $(F77) $(F77FLAGS) -o umf4zhb umf4zhb.f umf4_f77zwrapper.o \
89 + libtool --tag=F77 --mode=link $(F77) $(F77FLAGS) -o umf4zhb umf4zhb.f umf4_f77zwrapper.o \
91 - ./umf4zhb < HB/qc324.cua > my_umf4zhb.out
92 - diff my_umf4zhb.out umf4zhb.out
94 fortran64: $(UMFPACK) umf4hb64.f umf4_f77wrapper64.o umf4_f77zwrapper64.o $(UMFPACK)
95 - $(F77) $(F77FLAGS) -o umf4hb64 umf4hb64.f umf4_f77wrapper64.o \
96 + libtool --tag=F77 --mode=link $(F77) $(F77FLAGS) -o umf4hb64 umf4hb64.f umf4_f77wrapper64.o \
98 - ./umf4hb64 < HB/west0067.rua > my_umf4hb64.out
99 - diff my_umf4hb64.out umf4hb64.out
100 --- UMFPACK/Lib/GNUmakefile.orig 2012-01-06 09:13:28.336801011 +0100
101 +++ UMFPACK/Lib/GNUmakefile 2012-01-06 09:43:51.583528725 +0100
103 # UMFPACK Makefile for compiling on Unix systems (for GNU Make)
104 #-------------------------------------------------------------------------------
106 -default: libumfpack.a
107 +default: libumfpack.la
109 include /usr/share/misc/SuiteSparse_config.mk
111 # UMFPACK can use CHOLMOD by default as an ordering option
112 ifneq (,$(findstring -DNCHOLMOD, $(UMFPACK_CONFIG)))
113 I = -I../Include -I../Source -I/usr/include/amd
114 + LIBS = -lamd -lblas
116 I = -I../Include -I../Source -I/usr/include/amd \
117 -I/usr/include/cholmod
118 + LIBS = -lcholmod -lamd -lblas
121 C = $(CC) $(CF) $(UMFPACK_CONFIG) $(I)
123 $(addprefix ../Source/, $(addsuffix .h,$(UMFCH))) \
124 $(addprefix ../Source/, $(addsuffix .h,$(UMFINT))) \
125 $(addprefix ../Include/, $(addsuffix .h,$(USER))) \
126 - $(addprefix ../Include/, $(addsuffix .h,$(GENERIC))) \
127 - ../../AMD/Include/amd_internal.h ../../AMD/Include/amd.h
128 + $(addprefix ../Include/, $(addsuffix .h,$(GENERIC)))
130 #-------------------------------------------------------------------------------
131 # object files for each version
132 @@ -98,171 +99,171 @@
133 #-------------------------------------------------------------------------------
135 umf_i_%.o: ../Source/umf_%.c $(INC)
136 - $(C) -DDINT -c $< -o $@
137 + libtool --tag=CC --mode=compile $(C) -DDINT -c $< -o $@
139 umf_l_%.o: ../Source/umf_%.c $(INC)
140 - $(C) -DDLONG -c $< -o $@
141 + libtool --tag=CC --mode=compile $(C) -DDLONG -c $< -o $@
143 #-------------------------------------------------------------------------------
144 # compile each routine in the DI version
145 #-------------------------------------------------------------------------------
147 umf_di_%.o: ../Source/umf_%.c $(INC)
148 - $(C) -DDINT -c $< -o $@
149 + libtool --tag=CC --mode=compile $(C) -DDINT -c $< -o $@
151 umf_di_%hsolve.o: ../Source/umf_%tsolve.c $(INC)
152 - $(C) -DDINT -DCONJUGATE_SOLVE -c $< -o $@
153 + libtool --tag=CC --mode=compile $(C) -DDINT -DCONJUGATE_SOLVE -c $< -o $@
155 umf_di_triplet_map_x.o: ../Source/umf_triplet.c $(INC)
156 - $(C) -DDINT -DDO_MAP -DDO_VALUES -c $< -o $@
157 + libtool --tag=CC --mode=compile $(C) -DDINT -DDO_MAP -DDO_VALUES -c $< -o $@
159 umf_di_triplet_map_nox.o: ../Source/umf_triplet.c $(INC)
160 - $(C) -DDINT -DDO_MAP -c $< -o $@
161 + libtool --tag=CC --mode=compile $(C) -DDINT -DDO_MAP -c $< -o $@
163 umf_di_triplet_nomap_x.o: ../Source/umf_triplet.c $(INC)
164 - $(C) -DDINT -DDO_VALUES -c $< -o $@
165 + libtool --tag=CC --mode=compile $(C) -DDINT -DDO_VALUES -c $< -o $@
167 umf_di_triplet_nomap_nox.o: ../Source/umf_triplet.c $(INC)
168 - $(C) -DDINT -c $< -o $@
169 + libtool --tag=CC --mode=compile $(C) -DDINT -c $< -o $@
171 umf_di_assemble_fixq.o: ../Source/umf_assemble.c $(INC)
172 - $(C) -DDINT -DFIXQ -c $< -o $@
173 + libtool --tag=CC --mode=compile $(C) -DDINT -DFIXQ -c $< -o $@
175 umf_di_store_lu_drop.o: ../Source/umf_store_lu.c $(INC)
176 - $(C) -DDINT -DDROP -c $< -o $@
177 + libtool --tag=CC --mode=compile $(C) -DDINT -DDROP -c $< -o $@
179 umfpack_di_wsolve.o: ../Source/umfpack_solve.c $(INC)
180 - $(C) -DDINT -DWSOLVE -c $< -o $@
181 + libtool --tag=CC --mode=compile $(C) -DDINT -DWSOLVE -c $< -o $@
183 umfpack_di_%.o: ../Source/umfpack_%.c $(INC)
184 - $(C) -DDINT -c $< -o $@
185 + libtool --tag=CC --mode=compile $(C) -DDINT -c $< -o $@
187 #-------------------------------------------------------------------------------
188 # compile each routine in the DL version
189 #-------------------------------------------------------------------------------
191 umf_dl_%.o: ../Source/umf_%.c $(INC)
192 - $(C) -DDLONG -c $< -o $@
193 + libtool --tag=CC --mode=compile $(C) -DDLONG -c $< -o $@
195 umf_dl_%hsolve.o: ../Source/umf_%tsolve.c $(INC)
196 - $(C) -DDLONG -DCONJUGATE_SOLVE -c $< -o $@
197 + libtool --tag=CC --mode=compile $(C) -DDLONG -DCONJUGATE_SOLVE -c $< -o $@
199 umf_dl_triplet_map_x.o: ../Source/umf_triplet.c $(INC)
200 - $(C) -DDLONG -DDO_MAP -DDO_VALUES -c $< -o $@
201 + libtool --tag=CC --mode=compile $(C) -DDLONG -DDO_MAP -DDO_VALUES -c $< -o $@
203 umf_dl_triplet_map_nox.o: ../Source/umf_triplet.c $(INC)
204 - $(C) -DDLONG -DDO_MAP -c $< -o $@
205 + libtool --tag=CC --mode=compile $(C) -DDLONG -DDO_MAP -c $< -o $@
207 umf_dl_triplet_nomap_x.o: ../Source/umf_triplet.c $(INC)
208 - $(C) -DDLONG -DDO_VALUES -c $< -o $@
209 + libtool --tag=CC --mode=compile $(C) -DDLONG -DDO_VALUES -c $< -o $@
211 umf_dl_triplet_nomap_nox.o: ../Source/umf_triplet.c $(INC)
212 - $(C) -DDLONG -c $< -o $@
213 + libtool --tag=CC --mode=compile $(C) -DDLONG -c $< -o $@
215 umf_dl_assemble_fixq.o: ../Source/umf_assemble.c $(INC)
216 - $(C) -DDLONG -DFIXQ -c $< -o $@
217 + libtool --tag=CC --mode=compile $(C) -DDLONG -DFIXQ -c $< -o $@
219 umf_dl_store_lu_drop.o: ../Source/umf_store_lu.c $(INC)
220 - $(C) -DDLONG -DDROP -c $< -o $@
221 + libtool --tag=CC --mode=compile $(C) -DDLONG -DDROP -c $< -o $@
223 umfpack_dl_wsolve.o: ../Source/umfpack_solve.c $(INC)
224 - $(C) -DDLONG -DWSOLVE -c $< -o $@
225 + libtool --tag=CC --mode=compile $(C) -DDLONG -DWSOLVE -c $< -o $@
227 umfpack_dl_%.o: ../Source/umfpack_%.c $(INC)
228 - $(C) -DDLONG -c $< -o $@
229 + libtool --tag=CC --mode=compile $(C) -DDLONG -c $< -o $@
231 #-------------------------------------------------------------------------------
232 # compile each routine in the ZI version
233 #-------------------------------------------------------------------------------
235 umf_zi_%.o: ../Source/umf_%.c $(INC)
236 - $(C) -DZINT -c $< -o $@
237 + libtool --tag=CC --mode=compile $(C) -DZINT -c $< -o $@
239 umf_zi_%hsolve.o: ../Source/umf_%tsolve.c $(INC)
240 - $(C) -DZINT -DCONJUGATE_SOLVE -c $< -o $@
241 + libtool --tag=CC --mode=compile $(C) -DZINT -DCONJUGATE_SOLVE -c $< -o $@
243 umf_zi_triplet_map_x.o: ../Source/umf_triplet.c $(INC)
244 - $(C) -DZINT -DDO_MAP -DDO_VALUES -c $< -o $@
245 + libtool --tag=CC --mode=compile $(C) -DZINT -DDO_MAP -DDO_VALUES -c $< -o $@
247 umf_zi_triplet_map_nox.o: ../Source/umf_triplet.c $(INC)
248 - $(C) -DZINT -DDO_MAP -c $< -o $@
249 + libtool --tag=CC --mode=compile $(C) -DZINT -DDO_MAP -c $< -o $@
251 umf_zi_triplet_nomap_x.o: ../Source/umf_triplet.c $(INC)
252 - $(C) -DZINT -DDO_VALUES -c $< -o $@
253 + libtool --tag=CC --mode=compile $(C) -DZINT -DDO_VALUES -c $< -o $@
255 umf_zi_triplet_nomap_nox.o: ../Source/umf_triplet.c $(INC)
256 - $(C) -DZINT -c $< -o $@
257 + libtool --tag=CC --mode=compile $(C) -DZINT -c $< -o $@
259 umf_zi_assemble_fixq.o: ../Source/umf_assemble.c $(INC)
260 - $(C) -DZINT -DFIXQ -c $< -o $@
261 + libtool --tag=CC --mode=compile $(C) -DZINT -DFIXQ -c $< -o $@
263 umf_zi_store_lu_drop.o: ../Source/umf_store_lu.c $(INC)
264 - $(C) -DZINT -DDROP -c $< -o $@
265 + libtool --tag=CC --mode=compile $(C) -DZINT -DDROP -c $< -o $@
267 umfpack_zi_wsolve.o: ../Source/umfpack_solve.c $(INC)
268 - $(C) -DZINT -DWSOLVE -c $< -o $@
269 + libtool --tag=CC --mode=compile $(C) -DZINT -DWSOLVE -c $< -o $@
271 umfpack_zi_%.o: ../Source/umfpack_%.c $(INC)
272 - $(C) -DZINT -c $< -o $@
273 + libtool --tag=CC --mode=compile $(C) -DZINT -c $< -o $@
275 #-------------------------------------------------------------------------------
276 # compile each routine in the ZL version
277 #-------------------------------------------------------------------------------
279 umf_zl_%.o: ../Source/umf_%.c $(INC)
280 - $(C) -DZLONG -c $< -o $@
281 + libtool --tag=CC --mode=compile $(C) -DZLONG -c $< -o $@
283 umf_zl_%hsolve.o: ../Source/umf_%tsolve.c $(INC)
284 - $(C) -DZLONG -DCONJUGATE_SOLVE -c $< -o $@
285 + libtool --tag=CC --mode=compile $(C) -DZLONG -DCONJUGATE_SOLVE -c $< -o $@
287 umf_zl_triplet_map_x.o: ../Source/umf_triplet.c $(INC)
288 - $(C) -DZLONG -DDO_MAP -DDO_VALUES -c $< -o $@
289 + libtool --tag=CC --mode=compile $(C) -DZLONG -DDO_MAP -DDO_VALUES -c $< -o $@
291 umf_zl_triplet_map_nox.o: ../Source/umf_triplet.c $(INC)
292 - $(C) -DZLONG -DDO_MAP -c $< -o $@
293 + libtool --tag=CC --mode=compile $(C) -DZLONG -DDO_MAP -c $< -o $@
295 umf_zl_triplet_nomap_x.o: ../Source/umf_triplet.c $(INC)
296 - $(C) -DZLONG -DDO_VALUES -c $< -o $@
297 + libtool --tag=CC --mode=compile $(C) -DZLONG -DDO_VALUES -c $< -o $@
299 umf_zl_triplet_nomap_nox.o: ../Source/umf_triplet.c $(INC)
300 - $(C) -DZLONG -c $< -o $@
301 + libtool --tag=CC --mode=compile $(C) -DZLONG -c $< -o $@
303 umf_zl_assemble_fixq.o: ../Source/umf_assemble.c $(INC)
304 - $(C) -DZLONG -DFIXQ -c $< -o $@
305 + libtool --tag=CC --mode=compile $(C) -DZLONG -DFIXQ -c $< -o $@
307 umf_zl_store_lu_drop.o: ../Source/umf_store_lu.c $(INC)
308 - $(C) -DZLONG -DDROP -c $< -o $@
309 + libtool --tag=CC --mode=compile $(C) -DZLONG -DDROP -c $< -o $@
311 umfpack_zl_wsolve.o: ../Source/umfpack_solve.c $(INC)
312 - $(C) -DZLONG -DWSOLVE -c $< -o $@
313 + libtool --tag=CC --mode=compile $(C) -DZLONG -DWSOLVE -c $< -o $@
315 umfpack_zl_%.o: ../Source/umfpack_%.c $(INC)
316 - $(C) -DZLONG -c $< -o $@
317 + libtool --tag=CC --mode=compile $(C) -DZLONG -c $< -o $@
319 #-------------------------------------------------------------------------------
320 # Create the generic routines (GN) using a generic rule
321 #-------------------------------------------------------------------------------
323 umfpack_gn_%.o: ../Source/umfpack_%.c $(INC)
325 + libtool --tag=CC --mode=compile $(C) -c $< -o $@
327 #-------------------------------------------------------------------------------
328 # Create the libumfpack.a library
329 #-------------------------------------------------------------------------------
331 -libumfpack.a: $(II) $(LL) $(GN) $(DI) $(DL) $(ZI) $(ZL)
332 - $(ARCHIVE) libumfpack.a $^
333 - - $(RANLIB) libumfpack.a
334 +libumfpack.la: $(II) $(LL) $(GN) $(DI) $(DL) $(ZI) $(ZL)
335 + libtool --tag=CC --mode=link $(CC) $(LDFLAGS) -o libumfpack.la -rpath $(libdir) $(^:.o=.lo) $(LIBS) -lm
337 -so: $(II) $(LL) $(GN) $(DI) $(DL) $(ZI) $(ZL)
338 - gcc -shared -Wl,-soname,libumfpack.so -o libumfpack.so $^
339 +install: libumfpack.la
340 + install -d $(DESTDIR)$(libdir)
341 + libtool --mode=install install libumfpack.la $(DESTDIR)$(libdir)
343 #-------------------------------------------------------------------------------
344 # Remove all but the files in the original distribution
345 #-------------------------------------------------------------------------------
348 - - $(RM) libumfpack.a
349 + - $(RM) libumfpack.la