Description: Build shared version of CSparse library
Author: Daniel Rus Morales <danirus@tol-project.org>
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/CSparse/Lib/Makefile
+++ b/CSparse/Lib/Makefile
@@ -3,7 +3,11 @@
 RANLIB = ranlib
 ARCHIVE = $(AR) $(ARFLAGS)
 
-all: libcsparse.a
+C = $(CC) $(CF) -I../Include
+
+SOVERSION = $(shell perl ../../debian/library-soname.pl CSparse | sed 's/libcsparse//')
+
+all: libcsparse.a libcsparse.so.$(SOVERSION)
 
 CS = cs_add.o cs_amd.o cs_chol.o cs_cholsol.o cs_counts.o cs_cumsum.o \
 	cs_droptol.o cs_dropzeros.o cs_dupl.o cs_entry.o \
@@ -14,18 +18,29 @@
 	cs_transpose.o cs_compress.o cs_usolve.o cs_utsolve.o cs_scc.o \
 	cs_maxtrans.o cs_dmperm.o cs_updown.o cs_print.o cs_norm.o cs_load.o \
 	cs_dfs.o cs_reach.o cs_spsolve.o cs_ereach.o cs_leaf.o cs_randperm.o
+CS_SL = $(subst .o,.oo,$(CS))
 
 $(CS): ../Include/cs.h Makefile
+$(CS_SL): ../Include/cs.h Makefile
 
 %.o: ../Source/%.c ../Include/cs.h
-	$(CC) $(CF) $(I) -c $<
+	$(C) -c $<
+%.oo: ../Source/%.c ../Include/cs.h
+	$(C) -fPIC -c $< -o $@
 
 libcsparse.a: $(CS)
 	$(ARCHIVE)  libcsparse.a $(CS)
 	- $(RANLIB) libcsparse.a
 
+libcsparse.so.$(SOVERSION): $(CS_SL)
+	$(CC) $(LDFLAGS) -shared $^ -lm -Wl,-soname -Wl,$@ -o $@
+	ln -s $@ libcsparse.so
+
+
 clean:
-	- $(RM) *.o
+	- $(RM) *.o *.oo
+	-$(RM) *.a
+	-$(RM) *.so*
 
 purge: distclean
 
