--- makes/Make.lib 2008-06-06 20:57:46.000000000 -0400
+++ makes/Make.lib.new 2008-12-21 15:36:21.000000000 -0500
@@ -3,6 +3,8 @@
#
# override with libatlas.so only when atlas is built to one lib
#
+so_ver_major=3
+so_ver = $(so_ver_major).0
DYNlibs = liblapack.so libf77blas.so libcblas.so libatlas.so
PTDYNlibs = liblapack.so libptf77blas.so libptcblas.so libatlas.so
CDYNlibs = liblapack.so libcblas.so libatlas.so
@@ -32,38 +34,78 @@
mv $(tarnam).tar.gz $(tarnam).tgz
ptshared :
- - rm -f libatlas.so liblapack.so
- $(MAKE) libatlas.so liblapack.so libptf77blas.so libf77blas.so \
- libptcblas.so libcblas.so liblapack.so
+ - rm -f libatlas.so* liblapack.so* \
+ lib*blas.so* libclapack.so*
+ $(MAKE) libatlas.so libcblas.so libptf77blas.so libf77blas.so \
+ libptcblas.so liblapack.so libclapack.so
shared :
- - rm -f libatlas.so liblapack.so
- $(MAKE) libatlas.so liblapack.so libf77blas.so libcblas.so liblapack.so
+ - rm -f libatlas.so liblapack.so \
+ libatlas.so.$(so_ver) liblapack.so.$(so_ver)
+ $(MAKE) libatlas.so libcblas.so libf77blas.so liblapack.so libclapack.so
cptshared :
- - rm -f libatlas.so libclapack.so
- $(MAKE) libatlas.so libclapack.so libptcblas.so libcblas.so
+ - rm -f libatlas.so libclapack.so \
+ libatlas.so.$(so_ver) libclapack.so.$(so_ver)
+ $(MAKE) libatlas.so libptcblas.so libcblas.so libclapack.so
cshared :
- - rm -f libatlas.so libclapack.so
- $(MAKE) libatlas.so libclapack.so libcblas.so
+ - rm -f libatlas.so libclapack.so \
+ libatlas.so.$(so_ver) libclapack.so.$(so_ver)
+ $(MAKE) libatlas.so libcblas.so libclapack.so
libatlas.so : libatlas.a
- ld $(LDFLAGS) -shared -soname libatlas.so -o libatlas.so \
- --whole-archive libatlas.a --no-whole-archive -lc $(LIBS)
+ mkdir static_libs ; cd static_libs ; ar x ../libatlas.a ; cd ../
+ gcc $(LDFLAGS) -shared -Wl,-soname=libatlas.so.$(so_ver_major) \
+ -o libatlas.so.$(so_ver) static_libs/*.o -lc $(LIBS)
+ rm -rf static_libs
+ ln -s ./libatlas.so.$(so_ver) libatlas.so.$(so_ver_major)
+ ln -s ./libatlas.so.$(so_ver) libatlas.so
liblapack.so : liblapack.a
- ld $(LDFLAGS) -shared -soname $@ -o $@ --whole-archive \
- liblapack.a --no-whole-archive $(F77SYSLIB)
+ mkdir static_libs ; cd static_libs ; ar x ../liblapack.a ; cd ../
+ gcc $(LDFLAGS) -shared -Wl,-soname=liblapack.so.$(so_ver_major) \
+ -o liblapack.so.$(so_ver) static_libs/*.o $(F77SYSLIB) \
+ libf77blas.so.$(so_ver_major) libcblas.so.$(so_ver_major)
+ rm -rf static_libs
+ ln -s ./liblapack.so.$(so_ver) liblapack.so.$(so_ver_major)
+ ln -s ./liblapack.so.$(so_ver) liblapack.so
libclapack.so : libclapack.a
- ld $(LDFLAGS) -shared -soname liblapack.so -o liblapack.so \
- --whole-archive libclapack.a
+ mkdir static_libs ; cd static_libs ; ar x ../libclapack.a ; cd ../
+ gcc $(LDFLAGS) -shared -Wl,-soname=libclapack.so.$(so_ver_major) \
+ -o libclapack.so.$(so_ver) static_libs/*.o \
+ libcblas.so.$(so_ver_major) -lc $(LIBS)
+ rm -rf static_libs
+ ln -s ./libclapack.so.$(so_ver) libclapack.so.$(so_ver_major)
+ ln -s ./libclapack.so.$(so_ver) libclapack.so
libptf77blas.so : libptf77blas.a
- ld $(LDFLAGS) -shared -soname $@ -o $@ --whole-archive libptf77blas.a \
- --no-whole-archive $(F77SYSLIB)
+ mkdir static_libs ; cd static_libs ; ar x ../libptf77blas.a ; cd ../
+ gcc $(LDFLAGS) -shared -Wl,-soname=libptf77blas.so.$(so_ver_major) \
+ -o libptf77blas.so.$(so_ver) static_libs/*.o \
+ libatlas.so.$(so_ver) $(F77SYSLIB)
+ rm -rf static_libs
+ ln -s ./libptf77blas.so.$(so_ver) libptf77blas.so.$(so_ver_major)
+ ln -s ./libptf77blas.so.$(so_ver) libptf77blas.so
libf77blas.so : libf77blas.a
- ld $(LDFLAGS) -shared -soname $@ -o $@ --whole-archive libf77blas.a \
- --no-whole-archive $(F77SYSLIB)
+ mkdir static_libs ; cd static_libs ; ar x ../libf77blas.a ; cd ../
+ gcc $(LDFLAGS) -shared -Wl,-soname=libf77blas.so.$(so_ver_major) \
+ -o libf77blas.so.$(so_ver) static_libs/*.o \
+ libatlas.so.$(so_ver) $(F77SYSLIB)
+ rm -rf static_libs
+ ln -s ./libf77blas.so.$(so_ver) libf77blas.so.$(so_ver_major)
+ ln -s ./libf77blas.so.$(so_ver) libf77blas.so
libptcblas.so : libptcblas.a
- ld $(LDFLAGS) -shared -soname $@ -o $@ --whole-archive libptcblas.a
+ mkdir static_libs ; cd static_libs ; ar x ../libptcblas.a ; cd ../
+ gcc $(LDFLAGS) -shared -Wl,-soname=libptcblas.so.$(so_ver_major) \
+ -o libptcblas.so.$(so_ver) static_libs/*.o \
+ libatlas.so.$(so_ver) -lc $(LIBS)
+ rm -rf static_libs
+ ln -s ./libptcblas.so.$(so_ver) libptcblas.so.$(so_ver_major)
+ ln -s ./libptcblas.so.$(so_ver) libptcblas.so
libcblas.so : libcblas.a
- ld $(LDFLAGS) -shared -soname $@ -o $@ --whole-archive libcblas.a
+ mkdir static_libs ; cd static_libs ; ar x ../libcblas.a ; cd ../
+ gcc $(LDFLAGS) -shared -Wl,-soname=libcblas.so.$(so_ver_major) \
+ -o libcblas.so.$(so_ver) static_libs/*.o \
+ libatlas.so.$(so_ver) -lc $(LIBS)
+ rm -rf static_libs
+ ln -s ./libcblas.so.$(so_ver) libcblas.so.$(so_ver_major)
+ ln -s ./libcblas.so.$(so_ver) libcblas.so
#
# Builds one shared lib from all ATLAS files
#