# HG changeset patch # User Christopher Rogers # Date 1340723667 0 # Node ID af7a6c3cc0211f008a2f7322cc0906d173478bc3 # Parent 06f532ae65c8f7d3cf64e87a5da16fd257af6a85 Add blas diff -r 06f532ae65c8 -r af7a6c3cc021 blas/receipt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/blas/receipt Tue Jun 26 15:14:27 2012 +0000 @@ -0,0 +1,48 @@ +# SliTaz package receipt. + +PACKAGE="blas" +VERSION="3.4.0" +CATEGORY="misc" +SHORT_DESC="Basic Linear Algebra Subprograms" +MAINTAINER="slaxemulator@gmail.com" +SOURCE="lapack" +TARBALL="$SOURCE-$VERSION.tgz" +WEB_SITE="http://www.netlib.org/lapack" +WGET_URL="$WEB_SITE/$TARBALL" + +DEPENDS="gcc-lib-base" +BUILD_DEPENDS="gfortran" + +# Rules to configure and make the package. +compile_rules() +{ + cd $src + cp -f $src/INSTALL/make.inc.gfortran make.inc + cp -f "$stuff/Makefile.blas" $src/BLAS/SRC/Makefile + + export FC=gfortran + + cd $src/BLAS/SRC + make clean + FFLAGS="${CFLAGS/-O?/-O0}" make dcabs1.o + FFLAGS="${CFLAGS} -fPIC" CFLAGS="${CFLAGS} -fPIC" make shared + cp libblas.so.$VERSION "$src" + cd $src + ln -s libblas.so.$VERSION libblas.so +} + +# Rules to gen a SliTaz package suitable for Tazpkg. +genpkg_rules() +{ + mkdir -p $fs/usr + + install -m755 -d "$fs/usr/lib" + install -m755 "$src/libblas.so.$VERSION" \ + "$fs/usr/lib/" + ln -sf libblas.so.$VERSION "$fs/usr/lib/libblas.so" + ln -sf libblas.so.$VERSION "$fs/usr/lib/libblas.so.3" + + install -m755 -d "$fs/usr/share/licenses" + install -m644 "$stuff/LICENSE.blas" \ + "$fs/usr/share/licenses/blas.LICENSE" +} diff -r 06f532ae65c8 -r af7a6c3cc021 blas/stuff/LICENSE.blas --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/blas/stuff/LICENSE.blas Tue Jun 26 15:14:27 2012 +0000 @@ -0,0 +1,19 @@ +From: http://www.netlib.org/blas/faq.html + + 2) Are there legal restrictions on the use of BLAS reference + implementation software? + +The reference BLAS is a freely-available software package. It is +available from netlib via anonymous ftp and the World Wide Web. Thus, +it can be included in commercial software packages (and has been). We +only ask that proper credit be given to the authors. + +Like all software, it is copyrighted. It is not trademarked, but we do +ask the following: + +If you modify the source for these routines we ask that you change the +name of the routine and comment the changes made to the original. + +We will gladly answer any questions regarding the software. If a +modification is done, however, it is the responsibility of the person +who modified the routine to provide support. diff -r 06f532ae65c8 -r af7a6c3cc021 blas/stuff/Makefile.blas --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/blas/stuff/Makefile.blas Tue Jun 26 15:14:27 2012 +0000 @@ -0,0 +1,148 @@ +include ../../make.inc + +####################################################################### +# This is the makefile to create a library for the BLAS. +# The files are grouped as follows: +# +# SBLAS1 -- Single precision real BLAS routines +# CBLAS1 -- Single precision complex BLAS routines +# DBLAS1 -- Double precision real BLAS routines +# ZBLAS1 -- Double precision complex BLAS routines +# +# CB1AUX -- Real BLAS routines called by complex routines +# ZB1AUX -- D.P. real BLAS routines called by d.p. complex +# routines +# +# ALLBLAS -- Auxiliary routines for Level 2 and 3 BLAS +# +# SBLAS2 -- Single precision real BLAS2 routines +# CBLAS2 -- Single precision complex BLAS2 routines +# DBLAS2 -- Double precision real BLAS2 routines +# ZBLAS2 -- Double precision complex BLAS2 routines +# +# SBLAS3 -- Single precision real BLAS3 routines +# CBLAS3 -- Single precision complex BLAS3 routines +# DBLAS3 -- Double precision real BLAS3 routines +# ZBLAS3 -- Double precision complex BLAS3 routines +# +# The library can be set up to include routines for any combination +# of the four precisions. To create or add to the library, enter make +# followed by one or more of the precisions desired. Some examples: +# make single +# make single complex +# make single double complex complex16 +# Note that these commands are not safe for parallel builds. +# +# Alternatively, the commands +# make all +# or +# make +# without any arguments creates a library of all four precisions. +# The name of the library is held in BLASLIB, which is set in the +# top-level make.inc +# +# To remove the object files after the library is created, enter +# make clean +# To force the source files to be recompiled, enter, for example, +# make single FRC=FRC +# +#--------------------------------------------------------------------- +# +# Edward Anderson, University of Tennessee +# March 26, 1990 +# Susan Ostrouchov, Last updated September 30, 1994 +# ejr, May 2006. +# +####################################################################### + +all: $(BLASLIB) + +#--------------------------------------------------------- +# Comment out the next 6 definitions if you already have +# the Level 1 BLAS. +#--------------------------------------------------------- +SBLAS1 = isamax.o sasum.o saxpy.o scopy.o sdot.o snrm2.o \ + srot.o srotg.o sscal.o sswap.o sdsdot.o srotmg.o srotm.o +$(SBLAS1): $(FRC) + +CBLAS1 = scabs1.o scasum.o scnrm2.o icamax.o caxpy.o ccopy.o \ + cdotc.o cdotu.o csscal.o crotg.o cscal.o cswap.o csrot.o +$(CBLAS1): $(FRC) + +DBLAS1 = idamax.o dasum.o daxpy.o dcopy.o ddot.o dnrm2.o \ + drot.o drotg.o dscal.o dsdot.o dswap.o drotmg.o drotm.o +$(DBLAS1): $(FRC) + +ZBLAS1 = dcabs1.o dzasum.o dznrm2.o izamax.o zaxpy.o zcopy.o \ + zdotc.o zdotu.o zdscal.o zrotg.o zscal.o zswap.o zdrot.o +$(ZBLAS1): $(FRC) + +CB1AUX = isamax.o sasum.o saxpy.o scopy.o snrm2.o sscal.o +$(CB1AUX): $(FRC) + +ZB1AUX = idamax.o dasum.o daxpy.o dcopy.o dnrm2.o dscal.o +$(ZB1AUX): $(FRC) + +#--------------------------------------------------------------------- +# The following line defines auxiliary routines needed by both the +# Level 2 and Level 3 BLAS. Comment it out only if you already have +# both the Level 2 and 3 BLAS. +#--------------------------------------------------------------------- +ALLBLAS = lsame.o xerbla.o xerbla_array.o +$(ALLBLAS) : $(FRC) + +#--------------------------------------------------------- +# Comment out the next 4 definitions if you already have +# the Level 2 BLAS. +#--------------------------------------------------------- +SBLAS2 = sgemv.o sgbmv.o ssymv.o ssbmv.o sspmv.o \ + strmv.o stbmv.o stpmv.o strsv.o stbsv.o stpsv.o \ + sger.o ssyr.o sspr.o ssyr2.o sspr2.o +$(SBLAS2): $(FRC) + +CBLAS2 = cgemv.o cgbmv.o chemv.o chbmv.o chpmv.o \ + ctrmv.o ctbmv.o ctpmv.o ctrsv.o ctbsv.o ctpsv.o \ + cgerc.o cgeru.o cher.o chpr.o cher2.o chpr2.o +$(CBLAS2): $(FRC) + +DBLAS2 = dgemv.o dgbmv.o dsymv.o dsbmv.o dspmv.o \ + dtrmv.o dtbmv.o dtpmv.o dtrsv.o dtbsv.o dtpsv.o \ + dger.o dsyr.o dspr.o dsyr2.o dspr2.o +$(DBLAS2): $(FRC) + +ZBLAS2 = zgemv.o zgbmv.o zhemv.o zhbmv.o zhpmv.o \ + ztrmv.o ztbmv.o ztpmv.o ztrsv.o ztbsv.o ztpsv.o \ + zgerc.o zgeru.o zher.o zhpr.o zher2.o zhpr2.o +$(ZBLAS2): $(FRC) + +#--------------------------------------------------------- +# Comment out the next 4 definitions if you already have +# the Level 3 BLAS. +#--------------------------------------------------------- +SBLAS3 = sgemm.o ssymm.o ssyrk.o ssyr2k.o strmm.o strsm.o +$(SBLAS3): $(FRC) + +CBLAS3 = cgemm.o csymm.o csyrk.o csyr2k.o ctrmm.o ctrsm.o \ + chemm.o cherk.o cher2k.o +$(CBLAS3): $(FRC) + +DBLAS3 = dgemm.o dsymm.o dsyrk.o dsyr2k.o dtrmm.o dtrsm.o +$(DBLAS3): $(FRC) + +ZBLAS3 = zgemm.o zsymm.o zsyrk.o zsyr2k.o ztrmm.o ztrsm.o \ + zhemm.o zherk.o zher2k.o +$(ZBLAS3): $(FRC) + +ALLOBJ=$(SBLAS1) $(SBLAS2) $(SBLAS3) $(DBLAS1) $(DBLAS2) $(DBLAS3) \ + $(CBLAS1) $(CBLAS2) $(CBLAS3) $(ZBLAS1) \ + $(ZBLAS2) $(ZBLAS3) $(ALLBLAS) + +clean: + rm -f *.o libblas.a libblas.so* + +static: $(ALLOBJ) + ar ruv libblas.a $(ALLOBJ) + ranlib libblas.a + +shared: $(ALLOBJ) + cc $(CFLAGS) -shared -Wl,-soname,libblas.so.3 -o libblas.so.3.4.0 $(ALLOBJ) -lm -lgfortran -lc diff -r 06f532ae65c8 -r af7a6c3cc021 blas/stuff/lapack-3.1.1-make.inc.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/blas/stuff/lapack-3.1.1-make.inc.patch Tue Jun 26 15:14:27 2012 +0000 @@ -0,0 +1,23 @@ +--- lapack-3.1.1/INSTALL/make.inc.gfortran.BAD 2007-05-25 15:34:55.000000000 -0500 ++++ lapack-3.1.1/INSTALL/make.inc.gfortran 2007-05-25 15:35:51.000000000 -0500 +@@ -8,7 +8,7 @@ SHELL = /bin/sh + # + # The machine (platform) identifier to append to the library names + # +-PLAT = _LINUX ++PLAT = + # + # Modify the FORTRAN and OPTS definitions to refer to the + # compiler and desired compiler options for your machine. NOOPT +@@ -17,9 +17,9 @@ PLAT = _LINUX + # desired load options for your machine. + # + FORTRAN = gfortran +-OPTS = -O2 ++#OPTS = -O2 + DRVOPTS = $(OPTS) +-NOOPT = -O0 ++NOOPT = + LOADER = gfortran + LOADOPTS = + #