no-embedded-lapack
authorDebian Science Team <debian-science-maintainers@lists.alioth.debian.org>
Sun, 26 Oct 2014 09:42:29 +0000 (09:42 +0000)
committerSébastien Villemot <sebastien@debian.org>
Sun, 26 Oct 2014 09:42:29 +0000 (09:42 +0000)
Gbp-Pq: Name no-embedded-lapack.patch

Makefile
Makefile.install
Makefile.system
interface/Makefile

index 299b31a20532e8dec23a97442c097c5e5c7f80ed..26af8b053f2c41b6f06158bc1cbf023dd8185a6b 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -207,57 +207,14 @@ hpl_p :
        fi; \
        done
 
-ifeq ($(NO_LAPACK), 1)
 netlib :
+       mkdir lapack-netlib
+       cd lapack-netlib && ar -x /usr/lib/lapack/liblapack_pic.a
+       make -C interface delete-duplicate-lapack-objects
+       ar -ru $(LIBNAME) lapack-netlib/*
 
-else
-netlib : lapack_prebuild
-ifndef NOFORTRAN
-       @$(MAKE) -C $(NETLIB_LAPACK_DIR) lapacklib
-       @$(MAKE) -C $(NETLIB_LAPACK_DIR) tmglib
-endif
-ifndef NO_LAPACKE
-       @$(MAKE) -C $(NETLIB_LAPACK_DIR) lapackelib
-endif
-endif
-
-prof_lapack : lapack_prebuild
-       @$(MAKE) -C $(NETLIB_LAPACK_DIR) lapack_prof
-
-lapack_prebuild :
-ifndef NOFORTRAN
-       -@echo "FORTRAN     = $(FC)" > $(NETLIB_LAPACK_DIR)/make.inc
-       -@echo "OPTS        = $(LAPACK_FFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc
-       -@echo "POPTS       = $(LAPACK_FPFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc
-       -@echo "NOOPT       = $(LAPACK_FFLAGS) -O0" >> $(NETLIB_LAPACK_DIR)/make.inc
-       -@echo "PNOOPT      = $(LAPACK_FPFLAGS) -O0" >> $(NETLIB_LAPACK_DIR)/make.inc
-       -@echo "LOADOPTS    = $(FFLAGS) $(EXTRALIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
-       -@echo "CC          = $(CC)" >> $(NETLIB_LAPACK_DIR)/make.inc
-       -@echo "override CFLAGS      = $(LAPACK_CFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc
-       -@echo "ARCH        = $(AR)" >> $(NETLIB_LAPACK_DIR)/make.inc
-       -@echo "ARCHFLAGS   = -ru" >> $(NETLIB_LAPACK_DIR)/make.inc
-       -@echo "RANLIB      = $(RANLIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
-       -@echo "LAPACKLIB   = ../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/make.inc
-       -@echo "TMGLIB      = ../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/make.inc
-       -@echo "BLASLIB     = ../../../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/make.inc
-       -@echo "LAPACKELIB  = ../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/make.inc
-       -@echo "LAPACKLIB_P = ../$(LIBNAME_P)" >> $(NETLIB_LAPACK_DIR)/make.inc
-       -@echo "SUFFIX      = $(SUFFIX)" >> $(NETLIB_LAPACK_DIR)/make.inc
-       -@echo "PSUFFIX     = $(PSUFFIX)" >> $(NETLIB_LAPACK_DIR)/make.inc
-       -@echo "CEXTRALIB   = $(EXTRALIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
-ifeq ($(FC), gfortran)
-       -@echo "TIMER       = INT_ETIME" >> $(NETLIB_LAPACK_DIR)/make.inc
-ifdef SMP
-       -@echo "LOADER      = $(FC) -pthread" >> $(NETLIB_LAPACK_DIR)/make.inc
-else
-       -@echo "LOADER      = $(FC)" >> $(NETLIB_LAPACK_DIR)/make.inc
-endif
-else
-       -@echo "TIMER       = NONE" >> $(NETLIB_LAPACK_DIR)/make.inc
-       -@echo "LOADER      = $(FC)" >> $(NETLIB_LAPACK_DIR)/make.inc
-endif
-       -@cat  make.inc >> $(NETLIB_LAPACK_DIR)/make.inc
-endif
+clean::
+       rm -rf lapack-netlib
 
 large.tgz :
 ifndef NOFORTRAN
@@ -312,9 +269,5 @@ ifeq ($(OSNAME), Darwin)
        @rm -rf getarch.dSYM getarch_2nd.dSYM
 endif
        @rm -f Makefile.conf config.h Makefile_kernel.conf config_kernel.h st* *.dylib
-       @touch $(NETLIB_LAPACK_DIR)/make.inc
-       @$(MAKE) -C $(NETLIB_LAPACK_DIR) clean
-       @rm -f $(NETLIB_LAPACK_DIR)/make.inc $(NETLIB_LAPACK_DIR)/lapacke/include/lapacke_mangling.h
        @rm -f *.grd Makefile.conf_last config_last.h
-       @(cd $(NETLIB_LAPACK_DIR)/TESTING && rm -f x* *.out testing_results.txt)
        @echo Done.
index fcb3b484516362f8d3dc8e02e779fbd2b154315c..59ce9ffba39485aa66052616bcaf8bdbfbcd9615 100644 (file)
@@ -42,14 +42,6 @@ ifndef NO_CBLAS
        @sed 's/common/openblas_config/g' cblas.h > $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/cblas.h
 endif
 
-ifndef NO_LAPACKE
-       @echo Copying LAPACKE header files to $(DESTDIR)$(OPENBLAS_LIBRARY_DIR)
-       @-install -pDm644 $(NETLIB_LAPACK_DIR)/lapacke/include/lapacke.h $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke.h
-       @-install -pDm644 $(NETLIB_LAPACK_DIR)/lapacke/include/lapacke_config.h $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke_config.h
-       @-install -pDm644 $(NETLIB_LAPACK_DIR)/lapacke/include/lapacke_mangling_with_flags.h $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke_mangling.h
-       @-install -pDm644 $(NETLIB_LAPACK_DIR)/lapacke/include/lapacke_utils.h $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke_utils.h
-endif
-
 #for install static library
 ifndef NO_STATIC
        @echo Copying the static library to $(DESTDIR)$(OPENBLAS_LIBRARY_DIR)
index a661268817b5850232e2d2dffda5c14c89b92a1b..8dfafd1e3f5d1781d8c585218df385cbe3788fbc 100644 (file)
@@ -9,8 +9,6 @@ ifndef TOPDIR
 TOPDIR = .
 endif
 
-NETLIB_LAPACK_DIR = $(TOPDIR)/lapack-netlib
-
 # Default C compiler
 # - Only set if not specified on the command line or inherited from the environment.
 # - CC is an implicit variable so neither '?=' or 'ifndef' can be used.
index 54699b7e394d3b52398c4383f49119ba902381bd..fbfcb10fcc620caca373d51ef2731275dad61a45 100644 (file)
@@ -2103,4 +2103,8 @@ zimatcopy.$(SUFFIX) zimatcopy.$(PSUFFIX) : zimatcopy.c
 cblas_zimatcopy.$(SUFFIX) cblas_zimatcopy.$(PSUFFIX) : zimatcopy.c
        $(CC) -c $(CFLAGS) -DCBLAS $< -o $(@F)
 
-
+# The list of symbols to be removed can be seen in the diff between LAPACK's
+# original SRC/Makefile and the version of that same file that is included in
+# OpenBLAS (unfiltered) tarball
+delete-duplicate-lapack-objects:
+       cd ../lapack-netlib && rm $(SLAPACKOBJS) $(DLAPACKOBJS) $(CLAPACKOBJS) $(ZLAPACKOBJS) lsame.o xerbla.o