--- /dev/null
+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) $(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) $(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) $(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) $(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) $(F77FLAGS) -I../Include -o amd_f77demo amd_f77demo.f ../Lib/libamd.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) $(F77FLAGS) -I../Include -o amd_f77simple amd_f77simple.f ../Lib/libamd.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) $(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
+
+diff -ur AMD/Lib/GNUmakefile AMD-shared/Lib/GNUmakefile
+--- AMD/Lib/GNUmakefile 2007-12-02 19:00:35.000000000 +0100
++++ AMD-shared/Lib/GNUmakefile 2007-12-02 18:59:22.000000000 +0100
+@@ -2,7 +2,7 @@
+ # AMD Makefile for compiling on Unix systems (for GNU make only)
+ #-------------------------------------------------------------------------------
+
+-default: ../Lib/libamd.a
++default: ../Lib/libamd.la
+
+ include /usr/share/misc/UFconfig.mk
+
+@@ -29,39 +29,41 @@
+ #-------------------------------------------------------------------------------
+
+ amd_global.o: ../Source/amd_global.c $(INC)
+- $(C) -c $< -o $@
++ libtool --tag=CC --mode=compile $(CC) $(CFLAGS) $(CONFIG) -I../Include -c $< -o $@
+
+ amd_i_%.o: ../Source/amd_%.c $(INC)
+- $(C) -DDINT -c $< -o $@
++ libtool --tag=CC --mode=compile $(CC) -DDINT $(CFLAGS) $(CONFIG) -I../Include -c $< -o $@
+
+ amd_l_%.o: ../Source/amd_%.c $(INC)
+- $(C) -DDLONG -c $< -o $@
++ libtool --tag=CC --mode=compile $(CC) -DDLONG $(CFLAGS) $(CONFIG) -I../Include -c $< -o $@
+
+ #-------------------------------------------------------------------------------
+ # Create the libamd.a library (C versions only)
+ #-------------------------------------------------------------------------------
+
+-../Lib/libamd.a: amd_global.o $(AMDI) $(AMDL)
+- $(AR) ../Lib/libamd.a $^
+- - $(RANLIB) ../Lib/libamd.a
++../Lib/libamd.la: amd_global.o $(AMDI) $(AMDL)
++ libtool --tag=CC --mode=link $(CC) -o libamd.la -rpath $(libdir) $^ -lm
++
++install: libamd.la
++ install -d $(DESTDIR)$(libdir)
++ libtool --mode=install cp libamd.la $(DESTDIR)$(libdir)/libamd.la
+
+ #-------------------------------------------------------------------------------
+ # compile the Fortran versions and the libamdf77.a library
+ #-------------------------------------------------------------------------------
+
+-fortran: ../Lib/libamdf77.a
++fortran: ../Lib/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) ../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) ../Source/amdbar.f -o amdbar.o
+
+-../Lib/libamdf77.a: $(AMDF77)
+- $(AR) ../Lib/libamdf77.a $^
+- - $(RANLIB) ../Lib/libamdf77.a
++../Lib/libamdf77.la: $(AMDF77)
++ libtool --tag=F77 --mode=link $(F77) -o libamdf77.la -rpath $(libdir) $^ -lm
+
+ #-------------------------------------------------------------------------------
+ # Remove all but the files in the original distribution
+@@ -73,4 +71,4 @@
+ purge: distclean
+
+ distclean: clean
+- - $(RM) ../Lib/libamd.a ../Lib/libamdf77.a
++ - $(RM) ../Lib/libamd.la ../Lib/libamdf77.la