static_full_blas_lapack
authorDebian Science Team <debian-science-maintainers@lists.alioth.debian.org>
Sat, 6 Aug 2016 18:27:27 +0000 (18:27 +0000)
committerSébastien Villemot <sebastien@debian.org>
Sat, 6 Aug 2016 18:27:27 +0000 (18:27 +0000)
Gbp-Pq: Name static_full_blas_lapack.diff

CONFIG/src/Makefile
CONFIG/src/SpewMakeInc.c
Make.top
makes/Make.lib

index 212b9d7fbcce780088a65fccbad0fad946bc1b2a..b02f12fa8a4b6b448711100f4565194dc3d08a18 100644 (file)
@@ -623,7 +623,7 @@ $(LIBINSTdir) :
        chmod 0755 $(LIBINSTdir)
 install : $(INCINSTdir) $(LIBINSTdir) $(INCINSTdir)/atlas
        $(MAKE) -f Make.top install_inc INSTdir=$(INCINSTdir) 
-       $(MAKE) -f Make.top install_lib INSTdir=$(LIBINSTdir)
+       $(MAKE) -f Make.top install_static_lib INSTdir=$(LIBINSTdir)
 
 confclean: $(CLEANdep)
        rm -f *core* *.o config?.out
index 5b0e42941fd8f2e5667e9d29978f7187498d6cc7..a023f9e20b5e9c5a5a0f3aca57d8edcb4ab36266 100644 (file)
@@ -624,6 +624,9 @@ int main(int nargs, char **args)
    }
    fprintf(fpout, "   TESTlib = $(LIBdir)/libtstatlas.a\n\n");
 
+   fprintf(fpout, "   FULLBLASlib = $(LIBdir)/atlas/libblas.a\n");
+   fprintf(fpout, "   FULLLAPACKlib = $(LIBdir)/atlas/liblapack.a\n");
+
    fprintf(fpout, "#  -------------------------------------------\n");
    fprintf(fpout, "#  Upper bound on largest cache size, in bytes\n");
    fprintf(fpout, "#  -------------------------------------------\n");
index 43e45d70050d9fa334e8378228358a2683a7f8a9..de3b7ca159cbc8156ca9897accd69b24d069b012 100644 (file)
--- a/Make.top
+++ b/Make.top
@@ -14,6 +14,9 @@ leafstart:
 build:
        cd bin/ ; $(MAKE) xatlas_build
        cd bin/ ; ./xatlas_build $(INSTFLAGS)
+       cd lib/ ; $(MAKE) atlas/libblas.a
+       cd lib/ ; $(MAKE) atlas/liblapack.a
+
 time: 
        ./xatlbench -dc $(BLDdir)/bin/INSTALL_LOG -dp $(BLDdir)/ARCHS/$(ARCH)
 C_sanity_test:
@@ -401,6 +404,7 @@ startup : lib include results EXtest
        $(MAKE) -f Make.top leafstart leaf=src/blas/reference/level1
        $(MAKE) -f Make.top leafstart leaf=src/auxil
        $(MAKE) -f Make.top leafstart leaf=src/testing
+       $(MAKE) -f Make.top leafstart leaf=lib/atlas
        $(MAKE) -f Make.top leafstart leaf=lib
        $(MAKE) -f Make.top leafstart leaf=bin
        cd src/threads ; touch atomic.inc
@@ -591,6 +595,7 @@ killgrd :
 
 lib :
        mkdir lib
+       mkdir lib/atlas
 
 include:
        mkdir include
@@ -654,12 +659,17 @@ install_inc:
        chmod 0644 $(INSTdir)/cblas.h $(INSTdir)/clapack.h
        cp $(INCAdir)/* $(INSTdir)/atlas/.
        - chmod 0644 $(INSTdir)/atlas/*
-install_lib:
+
+install_static_lib:
        cp $(LIBdir)/libatlas.a $(INSTdir)/.
        cp $(LIBdir)/libcblas.a $(INSTdir)/.
        cp $(LIBdir)/liblapack_atlas.a $(INSTdir)/.
+       mkdir -p $(INSTdir)/atlas
+       cp $(LIBdir)/atlas/libblas.a $(INSTdir)/atlas/.
+       cp $(LIBdir)/atlas/liblapack.a $(INSTdir)/atlas/.
        chmod 0644 $(INSTdir)/libatlas.a  $(INSTdir)/liblapack_atlas.a \
-                   $(INSTdir)/libcblas.a 
+                   $(INSTdir)/libcblas.a $(INSTdir)/atlas/libblas.a \
+                  $(INSTdir)/atlas/liblapack.a 
        - cp $(LIBdir)/libf77blas.a $(INSTdir)/.
        - chmod 0644 $(INSTdir)/libf77blas.a
        - cp $(LIBdir)/libptcblas.a $(INSTdir)/.
index a2ea495dce60d034d12fc1c8da0160714e530925..5b2226ef5199cb2c9950008cb49ef68be7ce5d6e 100644 (file)
@@ -175,6 +175,36 @@ TRYALL :
            LIBS="$(LIBS)" LIBINSTdir="$(LIBINSTdir)" ; \
         fi
 
+
+# Build full netlib blas/lapack libraries:
+atlas/libblas.a: libatlas.a
+       mkdir tmp
+       cd tmp && \
+               ar x ../libatlas.a && \
+               if test -f ../libptf77blas.a -a -f ../libptcblas.a; then \
+                       ar x ../libptf77blas.a && \
+                       ar x ../libptcblas.a; \
+               else \
+                       ar x ../libf77blas.a && \
+                       ar x ../libcblas.a; \
+               fi
+       ar r $@ tmp/*.o
+       rm -rf tmp
+
+atlas/liblapack.a: liblapack_atlas.a libatlas.a
+       mkdir tmp
+       cd tmp && \
+               ar x /usr/lib/liblapack_pic.a && \
+               ar x ../liblapack_atlas.a && \
+               if test -f ../libptcblas.a; then \
+                       ar x ../libptcblas.a; \
+               else \
+                       ar x ../libcblas.a; \
+               fi
+       ar r $@ tmp/*.o
+       rm -rf tmp
+
+
 #
 # Builds one shared lib from all ATLAS files
 #