diff -ur AMD/Demo/Makefile AMD-shared/Demo/Makefile --- AMD/Demo/Makefile 2007-12-02 19:00:33.000000000 +0100 +++ AMD-shared/Demo/Makefile 2007-12-02 18:55:08.000000000 +0100 @@ -23,22 +23,22 @@ dist: amd_demo: amd_demo.c library $(INC) - $(C) -o amd_demo amd_demo.c ../Lib/libamd.a $(LIB) + libtool --tag=CC --mode=link $(CC) $(LDFLAGS) $(CFLAGS) -I../Include -o amd_demo amd_demo.c ../Lib/libamd.la $(LIB) ./amd_demo > my_amd_demo.out - diff amd_demo.out my_amd_demo.out amd_l_demo: amd_l_demo.c library $(INC) - $(C) -o amd_l_demo amd_l_demo.c ../Lib/libamd.a $(LIB) + libtool --tag=CC --mode=link $(CC) $(LDFLAGS) $(CFLAGS) -I../Include -o amd_l_demo amd_l_demo.c ../Lib/libamd.la $(LIB) ./amd_l_demo > my_amd_l_demo.out - diff amd_l_demo.out my_amd_l_demo.out amd_demo2: amd_demo2.c library $(INC) - $(C) -o amd_demo2 amd_demo2.c ../Lib/libamd.a $(LIB) + libtool --tag=CC --mode=link $(CC) $(LDFLAGS) $(CFLAGS) -I../Include -o amd_demo2 amd_demo2.c ../Lib/libamd.la $(LIB) ./amd_demo2 > my_amd_demo2.out - diff amd_demo2.out my_amd_demo2.out amd_simple: amd_simple.c library $(INC) - $(C) -o amd_simple amd_simple.c ../Lib/libamd.a $(LIB) + libtool --tag=CC --mode=link $(CC) $(LDFLAGS) $(CFLAGS) -I../Include -o amd_simple amd_simple.c ../Lib/libamd.la $(LIB) ./amd_simple > my_amd_simple.out - diff amd_simple.out my_amd_simple.out @@ -51,23 +51,20 @@ cross: amd_f77cross amd_f77demo: amd_f77demo.f f77lib - $(F77) $(F77FLAGS) -o amd_f77demo amd_f77demo.f ../Lib/libamdf77.a \ - $(F77LIB) + libtool --tag=F77 --mode=link $(F77) $(LDFLAGS) $(F77FLAGS) -I../Include -o amd_f77demo amd_f77demo.f ../Lib/libamdf77.la $(F77LIB) ./amd_f77demo > my_amd_f77demo.out - diff amd_f77demo.out my_amd_f77demo.out amd_f77simple: amd_f77simple.f f77lib - $(F77) $(F77FLAGS) -o amd_f77simple amd_f77simple.f \ - ../Lib/libamdf77.a $(F77LIB) + libtool --tag=F77 --mode=link $(F77) $(LDFLAGS) $(F77FLAGS) -I../Include -o amd_f77simple amd_f77simple.f ../Lib/libamdf77.la $(F77LIB) ./amd_f77simple > my_amd_f77simple.out - diff amd_f77simple.out my_amd_f77simple.out amd_f77wrapper.o: amd_f77wrapper.c - $(C) -DDINT -c amd_f77wrapper.c + libtool --tag=CC --mode=compile $(CC) $(CFLAGS) -DDINT -I../Include -o amd_amd_f77wrapper.o amd_f77wrapper.c -amd_f77cross: amd_f77cross.f amd_f77wrapper.o ../Lib/libamd.a - $(F77) $(F77FLAGS) -o amd_f77cross amd_f77cross.f amd_f77wrapper.o \ - ../Lib/libamd.a $(F77LIB) +amd_f77cross: amd_f77cross.f amd_f77wrapper.o ../Lib/libamd.la + libtool --tag=F77 --mode=link $(F77) $(LDFLAGS) $(F77FLAGS) -I../Include -o amd_f77cross amd_f77cross.f ../Lib/libamd.la $(F77LIB) ./amd_f77cross > my_amd_f77cross.out - diff amd_f77cross.out my_amd_f77cross.out --- AMD/Lib/GNUmakefile.orig 2012-01-01 12:11:28.552693675 +0100 +++ AMD/Lib/GNUmakefile 2012-01-01 12:15:13.479367873 +0100 @@ -2,7 +2,7 @@ # AMD Makefile for compiling on Unix systems (for GNU make only) #------------------------------------------------------------------------------- -default: libamd.a +default: libamd.la include /usr/share/misc/SuiteSparse_config.mk @@ -29,39 +29,45 @@ #------------------------------------------------------------------------------- amd_global.o: ../Source/amd_global.c $(INC) - $(C) -c $< -o $@ + libtool --tag=CC --mode=compile $(C) -c $< -o $@ amd_i_%.o: ../Source/amd_%.c $(INC) - $(C) -DDINT -c $< -o $@ + libtool --tag=CC --mode=compile $(C) -DDINT -c $< -o $@ amd_l_%.o: ../Source/amd_%.c $(INC) - $(C) -DDLONG -c $< -o $@ + libtool --tag=CC --mode=compile $(C) -DDLONG -c $< -o $@ #------------------------------------------------------------------------------- # Create the libamd.a library (C versions only) #------------------------------------------------------------------------------- -libamd.a: amd_global.o $(AMDI) $(AMDL) - $(ARCHIVE) libamd.a $^ - - $(RANLIB) libamd.a +libamd.la: amd_global.o $(AMDI) $(AMDL) + libtool --tag=CC --mode=link $(CC) $(LDFLAGS) -o libamd.la -rpath $(libdir) $(^:.o=.lo) -lm + +install: libamd.la + install -d $(DESTDIR)$(libdir) + libtool --mode=install install libamd.la $(DESTDIR)$(libdir)/libamd.la #------------------------------------------------------------------------------- # compile the Fortran versions and the libamdf77.a library #------------------------------------------------------------------------------- -fortran: libamdf77.a +fortran: libamdf77.la AMDF77 = amd.o amdbar.o amd.o: ../Source/amd.f - $(F77) $(F77FLAGS) -c ../Source/amd.f -o amd.o + libtool --tag=F77 --mode=compile $(F77) $(F77FLAGS) -c ../Source/amd.f -o amd.o amdbar.o: ../Source/amdbar.f - $(F77) $(F77FLAGS) -c ../Source/amdbar.f -o amdbar.o + libtool --tag=F77 --mode=compile $(F77) $(F77FLAGS) -c ../Source/amdbar.f -o amdbar.o -libamdf77.a: $(AMDF77) - $(ARCHIVE) libamdf77.a $^ - - $(RANLIB) libamdf77.a +libamdf77.la: $(AMDF77) + libtool --tag=F77 --mode=link $(F77) $(LDFLAGS) -o libamdf77.la -rpath $(libdir) $(^:.o=.lo) -lm + +install-fortran: libamdf77.la + install -d $(DESTDIR)$(libdir) + libtool --mode=install install libamdf77.la $(DESTDIR)$(libdir)/libamdf77.la #------------------------------------------------------------------------------- # Remove all but the files in the original distribution @@ -73,4 +79,4 @@ purge: distclean distclean: clean - - $(RM) libamd.a libamdf77.a + - $(RM) libamd.la libamdf77.la