wok rev 13094

Add blas
author Christopher Rogers <slaxemulator@gmail.com>
date Tue Jun 26 15:14:27 2012 +0000 (2012-06-26)
parents 06f532ae65c8
children 31082f3d4f0f
files blas/receipt blas/stuff/LICENSE.blas blas/stuff/Makefile.blas blas/stuff/lapack-3.1.1-make.inc.patch
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/blas/receipt	Tue Jun 26 15:14:27 2012 +0000
     1.3 @@ -0,0 +1,48 @@
     1.4 +# SliTaz package receipt.
     1.5 +
     1.6 +PACKAGE="blas"
     1.7 +VERSION="3.4.0"
     1.8 +CATEGORY="misc"
     1.9 +SHORT_DESC="Basic Linear Algebra Subprograms"
    1.10 +MAINTAINER="slaxemulator@gmail.com"
    1.11 +SOURCE="lapack"
    1.12 +TARBALL="$SOURCE-$VERSION.tgz"
    1.13 +WEB_SITE="http://www.netlib.org/lapack"
    1.14 +WGET_URL="$WEB_SITE/$TARBALL"
    1.15 +
    1.16 +DEPENDS="gcc-lib-base"
    1.17 +BUILD_DEPENDS="gfortran"
    1.18 +
    1.19 +# Rules to configure and make the package.
    1.20 +compile_rules()
    1.21 +{
    1.22 +	cd $src
    1.23 +	cp -f $src/INSTALL/make.inc.gfortran make.inc
    1.24 +	cp -f "$stuff/Makefile.blas" $src/BLAS/SRC/Makefile 
    1.25 +
    1.26 +	export FC=gfortran
    1.27 +
    1.28 +	cd $src/BLAS/SRC
    1.29 +	make clean
    1.30 +	FFLAGS="${CFLAGS/-O?/-O0}" make dcabs1.o
    1.31 +	FFLAGS="${CFLAGS} -fPIC" CFLAGS="${CFLAGS} -fPIC" make shared
    1.32 +	cp libblas.so.$VERSION "$src"
    1.33 +	cd $src
    1.34 +  	ln -s libblas.so.$VERSION libblas.so
    1.35 +}
    1.36 +
    1.37 +# Rules to gen a SliTaz package suitable for Tazpkg.
    1.38 +genpkg_rules()
    1.39 +{
    1.40 +	mkdir -p $fs/usr
    1.41 +
    1.42 +	install -m755 -d "$fs/usr/lib"
    1.43 +  install -m755 "$src/libblas.so.$VERSION" \
    1.44 +    "$fs/usr/lib/"
    1.45 +  ln -sf libblas.so.$VERSION "$fs/usr/lib/libblas.so"
    1.46 +  ln -sf libblas.so.$VERSION "$fs/usr/lib/libblas.so.3"
    1.47 +  
    1.48 +  install -m755 -d "$fs/usr/share/licenses"
    1.49 +  install -m644 "$stuff/LICENSE.blas" \
    1.50 +    "$fs/usr/share/licenses/blas.LICENSE"
    1.51 +}
     2.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.2 +++ b/blas/stuff/LICENSE.blas	Tue Jun 26 15:14:27 2012 +0000
     2.3 @@ -0,0 +1,19 @@
     2.4 +From: http://www.netlib.org/blas/faq.html
     2.5 +
     2.6 + 2) Are there legal restrictions on the use of BLAS reference
     2.7 +    implementation software? 
     2.8 +
     2.9 +The reference BLAS is a freely-available software package. It is
    2.10 +available from netlib via anonymous ftp and the World Wide Web. Thus,
    2.11 +it can be included in commercial software packages (and has been). We
    2.12 +only ask that proper credit be given to the authors. 
    2.13 +
    2.14 +Like all software, it is copyrighted. It is not trademarked, but we do
    2.15 +ask the following: 
    2.16 +
    2.17 +If you modify the source for these routines we ask that you change the
    2.18 +name of the routine and comment the changes made to the original. 
    2.19 +
    2.20 +We will gladly answer any questions regarding the software. If a
    2.21 +modification is done, however, it is the responsibility of the person
    2.22 +who modified the routine to provide support. 
     3.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.2 +++ b/blas/stuff/Makefile.blas	Tue Jun 26 15:14:27 2012 +0000
     3.3 @@ -0,0 +1,148 @@
     3.4 +include ../../make.inc
     3.5 +
     3.6 +#######################################################################
     3.7 +#  This is the makefile to create a library for the BLAS.
     3.8 +#  The files are grouped as follows:
     3.9 +#
    3.10 +#       SBLAS1 -- Single precision real BLAS routines
    3.11 +#       CBLAS1 -- Single precision complex BLAS routines
    3.12 +#       DBLAS1 -- Double precision real BLAS routines
    3.13 +#       ZBLAS1 -- Double precision complex BLAS routines
    3.14 +#
    3.15 +#       CB1AUX -- Real BLAS routines called by complex routines
    3.16 +#       ZB1AUX -- D.P. real BLAS routines called by d.p. complex
    3.17 +#                 routines
    3.18 +#
    3.19 +#      ALLBLAS -- Auxiliary routines for Level 2 and 3 BLAS
    3.20 +#
    3.21 +#       SBLAS2 -- Single precision real BLAS2 routines
    3.22 +#       CBLAS2 -- Single precision complex BLAS2 routines
    3.23 +#       DBLAS2 -- Double precision real BLAS2 routines
    3.24 +#       ZBLAS2 -- Double precision complex BLAS2 routines
    3.25 +#
    3.26 +#       SBLAS3 -- Single precision real BLAS3 routines
    3.27 +#       CBLAS3 -- Single precision complex BLAS3 routines
    3.28 +#       DBLAS3 -- Double precision real BLAS3 routines
    3.29 +#       ZBLAS3 -- Double precision complex BLAS3 routines
    3.30 +#
    3.31 +#  The library can be set up to include routines for any combination
    3.32 +#  of the four precisions.  To create or add to the library, enter make
    3.33 +#  followed by one or more of the precisions desired.  Some examples:
    3.34 +#       make single
    3.35 +#       make single complex
    3.36 +#       make single double complex complex16
    3.37 +#  Note that these commands are not safe for parallel builds.
    3.38 +#
    3.39 +#  Alternatively, the commands
    3.40 +#       make all
    3.41 +#  or
    3.42 +#       make
    3.43 +#  without any arguments creates a library of all four precisions.
    3.44 +#  The name of the library is held in BLASLIB, which is set in the
    3.45 +#  top-level make.inc
    3.46 +#
    3.47 +#  To remove the object files after the library is created, enter
    3.48 +#       make clean
    3.49 +#  To force the source files to be recompiled, enter, for example,
    3.50 +#       make single FRC=FRC
    3.51 +#
    3.52 +#---------------------------------------------------------------------
    3.53 +#
    3.54 +#  Edward Anderson, University of Tennessee
    3.55 +#  March 26, 1990
    3.56 +#  Susan Ostrouchov, Last updated September 30, 1994
    3.57 +#  ejr, May 2006.
    3.58 +#
    3.59 +#######################################################################
    3.60 +
    3.61 +all: $(BLASLIB)
    3.62 + 
    3.63 +#---------------------------------------------------------
    3.64 +#  Comment out the next 6 definitions if you already have
    3.65 +#  the Level 1 BLAS.
    3.66 +#---------------------------------------------------------
    3.67 +SBLAS1 = isamax.o sasum.o saxpy.o scopy.o sdot.o snrm2.o \
    3.68 +	srot.o srotg.o sscal.o sswap.o sdsdot.o srotmg.o srotm.o
    3.69 +$(SBLAS1): $(FRC)
    3.70 +
    3.71 +CBLAS1 = scabs1.o scasum.o scnrm2.o icamax.o caxpy.o ccopy.o \
    3.72 +	cdotc.o cdotu.o csscal.o crotg.o cscal.o cswap.o csrot.o
    3.73 +$(CBLAS1): $(FRC)
    3.74 +
    3.75 +DBLAS1 = idamax.o dasum.o daxpy.o dcopy.o ddot.o dnrm2.o \
    3.76 +	drot.o drotg.o dscal.o dsdot.o dswap.o drotmg.o drotm.o
    3.77 +$(DBLAS1): $(FRC)
    3.78 +
    3.79 +ZBLAS1 = dcabs1.o dzasum.o dznrm2.o izamax.o zaxpy.o zcopy.o \
    3.80 +	zdotc.o zdotu.o zdscal.o zrotg.o zscal.o zswap.o zdrot.o
    3.81 +$(ZBLAS1): $(FRC)
    3.82 +
    3.83 +CB1AUX = isamax.o sasum.o saxpy.o scopy.o snrm2.o sscal.o
    3.84 +$(CB1AUX): $(FRC)
    3.85 +
    3.86 +ZB1AUX = idamax.o dasum.o daxpy.o dcopy.o dnrm2.o dscal.o
    3.87 +$(ZB1AUX): $(FRC)
    3.88 +
    3.89 +#---------------------------------------------------------------------
    3.90 +#  The following line defines auxiliary routines needed by both the
    3.91 +#  Level 2 and Level 3 BLAS.  Comment it out only if you already have
    3.92 +#  both the Level 2 and 3 BLAS.
    3.93 +#---------------------------------------------------------------------
    3.94 +ALLBLAS  = lsame.o xerbla.o xerbla_array.o
    3.95 +$(ALLBLAS) : $(FRC)
    3.96 +
    3.97 +#---------------------------------------------------------
    3.98 +#  Comment out the next 4 definitions if you already have
    3.99 +#  the Level 2 BLAS.
   3.100 +#---------------------------------------------------------
   3.101 +SBLAS2 = sgemv.o sgbmv.o ssymv.o ssbmv.o sspmv.o \
   3.102 +	strmv.o stbmv.o stpmv.o strsv.o stbsv.o stpsv.o \
   3.103 +	sger.o ssyr.o sspr.o ssyr2.o sspr2.o
   3.104 +$(SBLAS2): $(FRC)
   3.105 +
   3.106 +CBLAS2 = cgemv.o cgbmv.o chemv.o chbmv.o chpmv.o \
   3.107 +	ctrmv.o ctbmv.o ctpmv.o ctrsv.o ctbsv.o ctpsv.o \
   3.108 +	cgerc.o cgeru.o cher.o chpr.o cher2.o chpr2.o
   3.109 +$(CBLAS2): $(FRC)
   3.110 +
   3.111 +DBLAS2 = dgemv.o dgbmv.o dsymv.o dsbmv.o dspmv.o \
   3.112 +	dtrmv.o dtbmv.o dtpmv.o dtrsv.o dtbsv.o dtpsv.o \
   3.113 +	dger.o dsyr.o dspr.o dsyr2.o dspr2.o
   3.114 +$(DBLAS2): $(FRC)
   3.115 +
   3.116 +ZBLAS2 = zgemv.o zgbmv.o zhemv.o zhbmv.o zhpmv.o \
   3.117 +	ztrmv.o ztbmv.o ztpmv.o ztrsv.o ztbsv.o ztpsv.o \
   3.118 +	zgerc.o zgeru.o zher.o zhpr.o zher2.o zhpr2.o
   3.119 +$(ZBLAS2): $(FRC)
   3.120 +
   3.121 +#---------------------------------------------------------
   3.122 +#  Comment out the next 4 definitions if you already have
   3.123 +#  the Level 3 BLAS.
   3.124 +#---------------------------------------------------------
   3.125 +SBLAS3 = sgemm.o ssymm.o ssyrk.o ssyr2k.o strmm.o strsm.o 
   3.126 +$(SBLAS3): $(FRC)
   3.127 +
   3.128 +CBLAS3 = cgemm.o csymm.o csyrk.o csyr2k.o ctrmm.o ctrsm.o \
   3.129 +	chemm.o cherk.o cher2k.o
   3.130 +$(CBLAS3): $(FRC)
   3.131 +
   3.132 +DBLAS3 = dgemm.o dsymm.o dsyrk.o dsyr2k.o dtrmm.o dtrsm.o
   3.133 +$(DBLAS3): $(FRC)
   3.134 +
   3.135 +ZBLAS3 = zgemm.o zsymm.o zsyrk.o zsyr2k.o ztrmm.o ztrsm.o \
   3.136 +	zhemm.o zherk.o zher2k.o
   3.137 +$(ZBLAS3): $(FRC)
   3.138 +
   3.139 +ALLOBJ=$(SBLAS1) $(SBLAS2) $(SBLAS3) $(DBLAS1) $(DBLAS2) $(DBLAS3)	\
   3.140 +	$(CBLAS1) $(CBLAS2) $(CBLAS3) $(ZBLAS1) \
   3.141 +	$(ZBLAS2) $(ZBLAS3) $(ALLBLAS)
   3.142 +
   3.143 +clean:
   3.144 +	rm -f *.o libblas.a libblas.so*
   3.145 +
   3.146 +static: $(ALLOBJ)
   3.147 +	ar ruv libblas.a $(ALLOBJ)
   3.148 +	ranlib libblas.a
   3.149 +
   3.150 +shared: $(ALLOBJ)
   3.151 +	cc $(CFLAGS) -shared -Wl,-soname,libblas.so.3 -o libblas.so.3.4.0 $(ALLOBJ) -lm -lgfortran -lc
     4.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.2 +++ b/blas/stuff/lapack-3.1.1-make.inc.patch	Tue Jun 26 15:14:27 2012 +0000
     4.3 @@ -0,0 +1,23 @@
     4.4 +--- lapack-3.1.1/INSTALL/make.inc.gfortran.BAD	2007-05-25 15:34:55.000000000 -0500
     4.5 ++++ lapack-3.1.1/INSTALL/make.inc.gfortran	2007-05-25 15:35:51.000000000 -0500
     4.6 +@@ -8,7 +8,7 @@ SHELL = /bin/sh
     4.7 + #
     4.8 + #  The machine (platform) identifier to append to the library names
     4.9 + #
    4.10 +-PLAT = _LINUX
    4.11 ++PLAT = 
    4.12 + #  
    4.13 + #  Modify the FORTRAN and OPTS definitions to refer to the
    4.14 + #  compiler and desired compiler options for your machine.  NOOPT
    4.15 +@@ -17,9 +17,9 @@ PLAT = _LINUX
    4.16 + #  desired load options for your machine.
    4.17 + #
    4.18 + FORTRAN  = gfortran 
    4.19 +-OPTS     = -O2
    4.20 ++#OPTS     = -O2
    4.21 + DRVOPTS  = $(OPTS)
    4.22 +-NOOPT    = -O0
    4.23 ++NOOPT    = 
    4.24 + LOADER   = gfortran
    4.25 + LOADOPTS =
    4.26 + #