mirror of
https://git.freebsd.org/ports.git
synced 2025-07-18 01:39:16 -04:00
Add new port atlas-devel, developer version of math/atlas
This commit is contained in:
parent
4cb3de9d61
commit
00d8ae51a7
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=90176
12 changed files with 6276 additions and 0 deletions
|
@ -11,6 +11,7 @@
|
|||
SUBDIR += arpack
|
||||
SUBDIR += asir2000
|
||||
SUBDIR += atlas
|
||||
SUBDIR += atlas-devel
|
||||
SUBDIR += biggles
|
||||
SUBDIR += blacs
|
||||
SUBDIR += blas
|
||||
|
|
111
math/atlas-devel/Makefile
Normal file
111
math/atlas-devel/Makefile
Normal file
|
@ -0,0 +1,111 @@
|
|||
# New ports collection makefile for: atlas-devel
|
||||
# Date created: 14 September 2003
|
||||
# Whom: Nakata Maho <maho@FreeBSD.org>
|
||||
#
|
||||
# $FreeBSD$
|
||||
#
|
||||
|
||||
# NOTE: This port purposely ignores the CC and CFLAGS settings.
|
||||
# Program and compiler flags are finetuned to gcc 2.95/3.1.
|
||||
|
||||
PORTNAME= atlas
|
||||
PORTVERSION= 3.5.11
|
||||
CATEGORIES= math
|
||||
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
|
||||
MASTER_SITE_SUBDIR= math-atlas
|
||||
DISTNAME= ${PORTNAME}${PORTVERSION}
|
||||
|
||||
MAINTAINER= maho@FreeBSD.org
|
||||
COMMENT= Development version of math/atlas
|
||||
|
||||
LIB_DEPENDS= lapack:${PORTSDIR}/math/lapack
|
||||
|
||||
USE_BZIP2= yes
|
||||
WRKSRC= ${WRKDIR}/ATLAS
|
||||
INSTALLS_SHLIB= yes
|
||||
USE_REINPLACE= yes
|
||||
PKGNAMESUFFIX= -devel
|
||||
|
||||
post-patch:
|
||||
@${REINPLACE_CMD} -e 's+%%PTHREAD_CFLAGS%%+ ${PTHREAD_CFLAGS}+' \
|
||||
${WRKSRC}/config.c
|
||||
@${REINPLACE_CMD} -e 's+%%PTHREAD_LIBS%%+ ${PTHREAD_LIBS}+' \
|
||||
${WRKSRC}/config.c
|
||||
.if (${MACHINE_ARCH} == "alpha")
|
||||
@(cd ${WRKSRC}; ${PATCH} < ${FILESDIR}/alpha-patch)
|
||||
.endif
|
||||
|
||||
do-configure:
|
||||
@(cd ${WRKSRC}; ${PATCH} < ${FILESDIR}/non-thread-patch)
|
||||
@(cd ${WRKSRC}; ${MAKE_ENV} ${MAKE} config < ${FILESDIR}/answer)
|
||||
@(cd ${WRKSRC}; ${PATCH} < ${FILESDIR}/thread-patch)
|
||||
@(cd ${WRKSRC}; ${MAKE_ENV} ${MAKE} config < ${FILESDIR}/answer)
|
||||
|
||||
NON_THREADED_ATLAS=`cat ${WRKSRC}/ARCHNAME-NON-THREADED`
|
||||
THREADED_ATLAS=`cat ${WRKSRC}/ARCHNAME-THREADED`
|
||||
ATLAS_LIBS1=libatlas libcblas libf77blas libtstatlas libalapack
|
||||
ATLAS_LIBS2=libptcblas libptf77blas
|
||||
|
||||
post-configure:
|
||||
.if defined(USE_GCC)
|
||||
@${REINPLACE_CMD} -e 's|/usr/bin/gcc|${CC}|g;' ${WRKSRC}/Make.${NON_THREADED_ATLAS}
|
||||
@${REINPLACE_CMD} -e 's|/usr/bin/gcc|${CC}|g;' ${WRKSRC}/Make.${THREADED_ATLAS}
|
||||
.endif
|
||||
|
||||
do-build:
|
||||
# non thread version
|
||||
(cd ${WRKSRC}; ${MAKE_ENV} ${MAKE} install arch=${NON_THREADED_ATLAS})
|
||||
# (cd ${WRKSRC}; ${MAKE_ENV} ${MAKE} sanity_test arch=${NON_THREADED_ATLAS})
|
||||
(cd ${WRKSRC}; ${MKDIR} tmp ; \
|
||||
${CP} ${LOCALBASE}/lib/liblapack.a tmp ;\
|
||||
cd tmp ;\
|
||||
ar x liblapack.a ;\
|
||||
ar x ../lib/${NON_THREADED_ATLAS}/liblapack.a ;\
|
||||
ar r ../lib/${NON_THREADED_ATLAS}/libalapack.a *.o ;\
|
||||
ranlib ../lib/${NON_THREADED_ATLAS}/libalapack.a )
|
||||
.for i in ${ATLAS_LIBS1}
|
||||
( cd ${WRKSRC}/lib/${NON_THREADED_ATLAS}/ ; \
|
||||
ld -Bshareable -o ${i}.so.1 -x -soname ${i}.so.1 --whole-archive ${i}.a )
|
||||
.endfor
|
||||
|
||||
# thread version
|
||||
(cd ${WRKSRC}; ${MAKE_ENV} ${MAKE} install arch=${THREADED_ATLAS})
|
||||
# (cd ${WRKSRC}; ${MAKE_ENV} ${MAKE} sanity_test arch=${THREADED_ATLAS})
|
||||
(cd ${WRKSRC}; ${MKDIR} tmp2 ; \
|
||||
${CP} ${LOCALBASE}/lib/liblapack.a tmp2 ;\
|
||||
cd tmp2 ;\
|
||||
ar x liblapack.a ;\
|
||||
ar x ../lib/${THREADED_ATLAS}/liblapack.a ;\
|
||||
ar r ../lib/${THREADED_ATLAS}/libalapack.a *.o ;\
|
||||
ranlib ../lib/${THREADED_ATLAS}/libalapack.a )
|
||||
.for i in ${ATLAS_LIBS1} ${ATLAS_LIBS2}
|
||||
( cd ${WRKSRC}/lib/${THREADED_ATLAS}/ ; \
|
||||
ld -Bshareable -o ${i}.so.1 -x -soname ${i}.so.1 --whole-archive ${i}.a )
|
||||
.endfor
|
||||
|
||||
do-install:
|
||||
.for i in ${ATLAS_LIBS1}
|
||||
@${INSTALL_DATA} ${WRKSRC}/lib/${NON_THREADED_ATLAS}/${i}.a ${PREFIX}/lib
|
||||
@${INSTALL_DATA} ${WRKSRC}/lib/${NON_THREADED_ATLAS}/${i}.so.1 ${PREFIX}/lib
|
||||
@${LN} -sf ${i}.so.1 ${PREFIX}/lib/${i}.so
|
||||
.endfor
|
||||
.for i in ${ATLAS_LIBS1}
|
||||
@${INSTALL_DATA} ${WRKSRC}/lib/${THREADED_ATLAS}/${i}.a ${PREFIX}/lib/${i}_r.a
|
||||
@${INSTALL_DATA} ${WRKSRC}/lib/${THREADED_ATLAS}/${i}.so.1 ${PREFIX}/lib/${i}_r.so.1
|
||||
@${LN} -sf ${i}_r.so.1 ${PREFIX}/lib/${i}_r.so
|
||||
.endfor
|
||||
.for i in ${ATLAS_LIBS2}
|
||||
@${INSTALL_DATA} ${WRKSRC}/lib/${THREADED_ATLAS}/${i}.a ${PREFIX}/lib
|
||||
@${INSTALL_DATA} ${WRKSRC}/lib/${THREADED_ATLAS}/${i}.so.1 ${PREFIX}/lib
|
||||
@${LN} -sf ${i}.so.1 ${PREFIX}/lib/${i}.so
|
||||
.endfor
|
||||
@${INSTALL_DATA} ${WRKSRC}/include/cblas.h ${PREFIX}/include
|
||||
@${INSTALL_DATA} ${WRKSRC}/include/clapack.h ${PREFIX}/include
|
||||
@${INSTALL_DATA} ${FILESDIR}/blas.h ${PREFIX}/include
|
||||
@${INSTALL_DATA} ${FILESDIR}/lapack.h ${PREFIX}/include
|
||||
.if !defined(NOPORTDOCS)
|
||||
@${MKDIR} ${DOCSDIR}
|
||||
${INSTALL_DATA} ${WRKSRC}/doc/* ${DOCSDIR}
|
||||
.endif
|
||||
|
||||
.include <bsd.port.mk>
|
1
math/atlas-devel/distinfo
Normal file
1
math/atlas-devel/distinfo
Normal file
|
@ -0,0 +1 @@
|
|||
MD5 (atlas3.5.11.tar.bz2) = 8d8e5ac75c1d17acca8586d5fe78d26e
|
9
math/atlas-devel/files/alpha-patch
Normal file
9
math/atlas-devel/files/alpha-patch
Normal file
|
@ -0,0 +1,9 @@
|
|||
--- src/blas/gemm/GOTO/ATLU_usergemm.c~ Mon Jun 17 10:38:22 2002
|
||||
+++ src/blas/gemm/GOTO/ATLU_usergemm.c Sun Aug 18 10:41:19 2002
|
||||
@@ -1,5 +1,5 @@
|
||||
#include "atlas_misc.h"
|
||||
-#include <sys/mman.h>
|
||||
+/*#include <sys/mman.h>*/
|
||||
|
||||
#ifdef EV6
|
||||
#ifdef ATL_OS_OSF1
|
10
math/atlas-devel/files/answer
Normal file
10
math/atlas-devel/files/answer
Normal file
|
@ -0,0 +1,10 @@
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
857
math/atlas-devel/files/blas.h
Normal file
857
math/atlas-devel/files/blas.h
Normal file
|
@ -0,0 +1,857 @@
|
|||
// blas prototypes file for C++
|
||||
// based on BLAS/WRAP/fblaswr.h
|
||||
// in clapack.tgz, version 3.0(September 20, 2000)
|
||||
// available at http://www.netlib.org/clapack/
|
||||
// and modified by Nakata Maho <chat95@mbox.kyoto-inet.or.jp>
|
||||
// for C++, which requires proper prototype definitions.
|
||||
|
||||
extern "C"
|
||||
{
|
||||
#include <g2c.h>
|
||||
|
||||
real
|
||||
sdot_(integer* N,
|
||||
real* X, integer* incX,
|
||||
real* Y, integer* incY);
|
||||
|
||||
doublereal
|
||||
ddot_(integer* N,
|
||||
doublereal* X, integer* incX,
|
||||
doublereal* Y, integer* incY);
|
||||
|
||||
void
|
||||
cdotu_(complex* retval,
|
||||
integer* N,
|
||||
complex* X, integer* incX,
|
||||
complex* Y, integer* incY);
|
||||
|
||||
void
|
||||
cdotc_(complex* retval,
|
||||
integer* N,
|
||||
complex* X, integer* incX,
|
||||
complex* Y, integer* incY);
|
||||
|
||||
void
|
||||
zdotu_(doublecomplex* retval,
|
||||
integer* N,
|
||||
doublecomplex* X, integer* incX,
|
||||
doublecomplex* Y, integer* incY);
|
||||
|
||||
void
|
||||
zdotc_(doublecomplex* retval,
|
||||
integer* N,
|
||||
doublecomplex* X, integer* incX,
|
||||
doublecomplex* Y, integer* incY);
|
||||
|
||||
real
|
||||
snrm2_(integer* N,
|
||||
real* X, integer* incX);
|
||||
|
||||
real
|
||||
sasum_(integer* N,
|
||||
real* X, integer* incX);
|
||||
|
||||
doublereal
|
||||
dnrm2_(integer* N,
|
||||
doublereal* X, integer* incX);
|
||||
|
||||
doublereal
|
||||
dasum_(integer* N,
|
||||
doublereal* X, integer* incX);
|
||||
|
||||
real
|
||||
scnrm2_(integer* N,
|
||||
complex* X, integer* incX);
|
||||
|
||||
real
|
||||
scasum_(integer* N,
|
||||
complex* X, integer* incX);
|
||||
|
||||
doublereal
|
||||
dznrm2_(integer* N,
|
||||
doublecomplex* X, integer* incX);
|
||||
|
||||
doublereal
|
||||
dzasum_(integer* N,
|
||||
doublecomplex* X, integer* incX);
|
||||
|
||||
integer
|
||||
isamax_(integer* N,
|
||||
real* X, integer* incX);
|
||||
|
||||
integer
|
||||
idamax_(integer* N,
|
||||
doublereal* X, integer* incX);
|
||||
|
||||
integer
|
||||
icamax_(integer* N,
|
||||
complex* X, integer* incX);
|
||||
|
||||
integer
|
||||
izamax_(integer* N,
|
||||
doublecomplex* X, integer* incX);
|
||||
|
||||
int
|
||||
sswap_(integer* N,
|
||||
real* X, integer* incX,
|
||||
real* Y, integer* incY);
|
||||
|
||||
int
|
||||
scopy_(integer* N,
|
||||
real* X, integer* incX,
|
||||
real* Y, integer* incY);
|
||||
|
||||
int
|
||||
saxpy_(integer* N,
|
||||
real* alpha,
|
||||
real* X, integer* incX,
|
||||
real* Y, integer* incY);
|
||||
|
||||
int
|
||||
dswap_(integer* N,
|
||||
doublereal* X, integer* incX,
|
||||
doublereal* Y, integer* incY);
|
||||
|
||||
int
|
||||
dcopy_(integer* N,
|
||||
doublereal* X, integer* incX,
|
||||
doublereal* Y, integer* incY);
|
||||
|
||||
int
|
||||
daxpy_(integer* N,
|
||||
doublereal* alpha,
|
||||
doublereal* X, integer* incX,
|
||||
doublereal* Y, integer* incY);
|
||||
|
||||
int
|
||||
cswap_(integer* N,
|
||||
complex* X, integer* incX,
|
||||
complex* Y, integer* incY);
|
||||
|
||||
int
|
||||
ccopy_(integer* N,
|
||||
complex* X, integer* incX,
|
||||
complex* Y, integer* incY);
|
||||
|
||||
int
|
||||
caxpy_(integer* N,
|
||||
complex* alpha,
|
||||
complex* X, integer* incX,
|
||||
complex* Y, integer* incY);
|
||||
|
||||
int
|
||||
zswap_(integer* N,
|
||||
doublecomplex* X, integer* incX,
|
||||
doublecomplex* Y, integer* incY);
|
||||
|
||||
int
|
||||
zcopy_(integer* N,
|
||||
doublecomplex* X, integer* incX,
|
||||
doublecomplex* Y, integer* incY);
|
||||
|
||||
int
|
||||
zaxpy_(integer* N,
|
||||
doublecomplex* alpha,
|
||||
doublecomplex* X, integer* incX,
|
||||
doublecomplex* Y, integer* incY);
|
||||
|
||||
int
|
||||
srotg_(real* a, real* b, real* c, real* s);
|
||||
|
||||
int
|
||||
srot_(integer* N,
|
||||
real* X, integer* incX,
|
||||
real* Y, integer* incY,
|
||||
real* c, real* s);
|
||||
|
||||
int
|
||||
drotg_(doublereal* a, doublereal* b, doublereal* c, doublereal* s);
|
||||
|
||||
int
|
||||
drot_(integer* N,
|
||||
doublereal* X, integer* incX,
|
||||
doublereal* Y, integer* incY,
|
||||
doublereal* c, doublereal* s);
|
||||
|
||||
int
|
||||
sscal_(integer* N,
|
||||
real* alpha,
|
||||
real* X, integer* incX);
|
||||
|
||||
int
|
||||
dscal_(integer* N,
|
||||
doublereal* alpha,
|
||||
doublereal* X, integer* incX);
|
||||
|
||||
int
|
||||
cscal_(integer* N,
|
||||
complex* alpha,
|
||||
complex* X, integer* incX);
|
||||
|
||||
int
|
||||
zscal_(integer* N,
|
||||
doublecomplex* alpha,
|
||||
doublecomplex* X, integer* incX);
|
||||
|
||||
int
|
||||
csscal_(integer* N,
|
||||
real* alpha,
|
||||
complex* X, integer* incX);
|
||||
|
||||
int
|
||||
zdscal_(integer* N,
|
||||
doublereal* alpha,
|
||||
doublecomplex* X, integer* incX);
|
||||
|
||||
int
|
||||
sgemv_(char* trans, integer* M, integer* N,
|
||||
real* alpha,
|
||||
real* A, integer* lda,
|
||||
real* X, integer* incX,
|
||||
real* beta,
|
||||
real* Y, integer* incY);
|
||||
|
||||
int
|
||||
sgbmv_(char *trans, integer *M, integer *N, integer *KL, integer *KU,
|
||||
real *alpha,
|
||||
real *A, integer *lda,
|
||||
real *X, integer *incX,
|
||||
real *beta,
|
||||
real *Y, integer *incY);
|
||||
|
||||
int
|
||||
strmv_(char* uplo, char *trans, char* diag, integer *N,
|
||||
real *A, integer *lda,
|
||||
real *X, integer *incX);
|
||||
|
||||
int
|
||||
stbmv_(char* uplo, char* trans, char* diag, integer* N, integer* K,
|
||||
real* A, integer* lda,
|
||||
real* X, integer* incX);
|
||||
|
||||
int
|
||||
stpmv_(char* uplo, char* trans, char* diag, integer* N,
|
||||
real* Ap,
|
||||
real* X, integer* incX);
|
||||
|
||||
int
|
||||
strsv_(char* uplo, char* trans, char* diag, integer* N,
|
||||
real* A, integer* lda,
|
||||
real* X, integer* incX);
|
||||
|
||||
int
|
||||
stbsv_(char* uplo, char* trans, char* diag, integer* N, integer* K,
|
||||
real* A, integer* lda,
|
||||
real* X, integer* incX);
|
||||
|
||||
int
|
||||
stpsv_(char* uplo, char* trans, char* diag, integer* N,
|
||||
real* Ap,
|
||||
real* X, integer* incX);
|
||||
|
||||
int
|
||||
dgemv_(char* trans, integer* M, integer* N,
|
||||
doublereal* alpha,
|
||||
doublereal* A, integer* lda,
|
||||
doublereal* X, integer* incX,
|
||||
doublereal* beta,
|
||||
doublereal* Y, integer* incY);
|
||||
|
||||
int
|
||||
dgbmv_(char *trans, integer *M, integer *N, integer *KL, integer *KU,
|
||||
doublereal *alpha,
|
||||
doublereal *A, integer *lda,
|
||||
doublereal *X, integer *incX,
|
||||
doublereal *beta,
|
||||
doublereal *Y, integer *incY);
|
||||
|
||||
int
|
||||
dtrmv_(char* uplo, char *trans, char* diag, integer *N,
|
||||
doublereal *A, integer *lda,
|
||||
doublereal *X, integer *incX);
|
||||
|
||||
int
|
||||
dtbmv_(char* uplo, char* trans, char* diag, integer* N, integer* K,
|
||||
doublereal* A, integer* lda,
|
||||
doublereal* X, integer* incX);
|
||||
|
||||
int
|
||||
dtpmv_(char* uplo, char* trans, char* diag, integer* N,
|
||||
doublereal* Ap,
|
||||
doublereal* X, integer* incX);
|
||||
|
||||
int
|
||||
dtrsv_(char* uplo, char* trans, char* diag, integer* N,
|
||||
doublereal* A, integer* lda,
|
||||
doublereal* X, integer* incX);
|
||||
|
||||
int
|
||||
dtbsv_(char* uplo, char* trans, char* diag, integer* N, integer* K,
|
||||
doublereal* A, integer* lda,
|
||||
doublereal* X, integer* incX);
|
||||
|
||||
int
|
||||
dtpsv_(char* uplo, char* trans, char* diag, integer* N,
|
||||
doublereal* Ap,
|
||||
doublereal* X, integer* incX);
|
||||
|
||||
int
|
||||
cgemv_(char* trans, integer* M, integer* N,
|
||||
complex* alpha,
|
||||
complex* A, integer* lda,
|
||||
complex* X, integer* incX,
|
||||
complex* beta,
|
||||
complex* Y, integer* incY);
|
||||
|
||||
int
|
||||
cgbmv_(char *trans, integer *M, integer *N, integer *KL, integer *KU,
|
||||
complex *alpha,
|
||||
complex *A, integer *lda,
|
||||
complex *X, integer *incX,
|
||||
complex *beta,
|
||||
complex *Y, integer *incY);
|
||||
|
||||
int
|
||||
ctrmv_(char* uplo, char *trans, char* diag, integer *N,
|
||||
complex *A, integer *lda,
|
||||
complex *X, integer *incX);
|
||||
|
||||
int
|
||||
ctbmv_(char* uplo, char* trans, char* diag, integer* N, integer* K,
|
||||
complex* A, integer* lda,
|
||||
complex* X, integer* incX);
|
||||
|
||||
int
|
||||
ctpmv_(char* uplo, char* trans, char* diag, integer* N,
|
||||
complex* Ap,
|
||||
complex* X, integer* incX);
|
||||
|
||||
int
|
||||
ctrsv_(char* uplo, char* trans, char* diag, integer* N,
|
||||
complex* A, integer* lda,
|
||||
complex* X, integer* incX);
|
||||
|
||||
int
|
||||
ctbsv_(char* uplo, char* trans, char* diag, integer* N, integer* K,
|
||||
complex* A, integer* lda,
|
||||
complex* X, integer* incX);
|
||||
|
||||
int
|
||||
ctpsv_(char* uplo, char* trans, char* diag, integer* N,
|
||||
complex* Ap,
|
||||
complex* X, integer* incX);
|
||||
|
||||
int
|
||||
zgemv_(char* trans, integer* M, integer* N,
|
||||
doublecomplex* alpha,
|
||||
doublecomplex* A, integer* lda,
|
||||
doublecomplex* X, integer* incX,
|
||||
doublecomplex* beta,
|
||||
doublecomplex* Y, integer* incY);
|
||||
|
||||
int
|
||||
zgbmv_(char *trans, integer *M, integer *N, integer *KL, integer *KU,
|
||||
doublecomplex *alpha,
|
||||
doublecomplex *A, integer *lda,
|
||||
doublecomplex *X, integer *incX,
|
||||
doublecomplex *beta,
|
||||
doublecomplex *Y, integer *incY);
|
||||
|
||||
int
|
||||
ztrmv_(char* uplo, char *trans, char* diag, integer *N,
|
||||
doublecomplex *A, integer *lda,
|
||||
doublecomplex *X, integer *incX);
|
||||
|
||||
int
|
||||
ztbmv_(char* uplo, char* trans, char* diag, integer* N, integer* K,
|
||||
doublecomplex* A, integer* lda,
|
||||
doublecomplex* X, integer* incX);
|
||||
|
||||
void
|
||||
ztpmv_(char* uplo, char* trans, char* diag, integer* N,
|
||||
doublecomplex* Ap,
|
||||
doublecomplex* X, integer* incX);
|
||||
|
||||
int
|
||||
ztrsv_(char* uplo, char* trans, char* diag, integer* N,
|
||||
doublecomplex* A, integer* lda,
|
||||
doublecomplex* X, integer* incX);
|
||||
|
||||
int
|
||||
ztbsv_(char* uplo, char* trans, char* diag, integer* N, integer* K,
|
||||
doublecomplex* A, integer* lda,
|
||||
doublecomplex* X, integer* incX);
|
||||
|
||||
int
|
||||
ztpsv_(char* uplo, char* trans, char* diag, integer* N,
|
||||
doublecomplex* Ap,
|
||||
doublecomplex* X, integer* incX);
|
||||
|
||||
int
|
||||
ssymv_(char* uplo, integer* N,
|
||||
real* alpha,
|
||||
real* A, integer* lda,
|
||||
real* X, integer* incX,
|
||||
real* beta,
|
||||
real* Y, integer* incY);
|
||||
|
||||
int
|
||||
ssbmv_(char* uplo, integer* N, integer* K,
|
||||
real* alpha,
|
||||
real* A, integer* lda,
|
||||
real* X, integer* incX,
|
||||
real* beta,
|
||||
real* Y, integer* incY);
|
||||
|
||||
int
|
||||
sspmv_(char* uplo, integer* N,
|
||||
real* alpha,
|
||||
real* Ap,
|
||||
real* X, integer* incX,
|
||||
real* beta,
|
||||
real* Y, integer* incY);
|
||||
|
||||
int
|
||||
sger_(integer* M, integer* N,
|
||||
real* alpha,
|
||||
real* X, integer* incX,
|
||||
real* Y, integer* incY,
|
||||
real* A, integer* lda);
|
||||
|
||||
int
|
||||
ssyr_(char* uplo, integer* N,
|
||||
real* alpha,
|
||||
real* X, integer* incX,
|
||||
real* A, integer* lda);
|
||||
|
||||
int
|
||||
sspr_(char* uplo, integer* N,
|
||||
real* alpha,
|
||||
real* X, integer* incX,
|
||||
real* Ap);
|
||||
|
||||
int
|
||||
ssyr2_(char* uplo, integer* N,
|
||||
real* alpha,
|
||||
real* X, integer* incX,
|
||||
real* Y, integer* incY,
|
||||
real* A, integer* lda);
|
||||
|
||||
int
|
||||
sspr2_(char* uplo, integer* N,
|
||||
real* alpha,
|
||||
real* X, integer* incX,
|
||||
real* Y, integer* incY,
|
||||
real* A);
|
||||
|
||||
int
|
||||
dsymv_(char* uplo, integer* N,
|
||||
doublereal* alpha,
|
||||
doublereal* A, integer* lda,
|
||||
doublereal* X, integer* incX,
|
||||
doublereal* beta,
|
||||
doublereal* Y, integer* incY);
|
||||
|
||||
int
|
||||
dsbmv_(char* uplo, integer* N, integer* K,
|
||||
doublereal* alpha,
|
||||
doublereal* A, integer* lda,
|
||||
doublereal* X, integer* incX,
|
||||
doublereal* beta,
|
||||
doublereal* Y, integer* incY);
|
||||
|
||||
int
|
||||
dspmv_(char* uplo, integer* N,
|
||||
doublereal* alpha,
|
||||
doublereal* Ap,
|
||||
doublereal* X, integer* incX,
|
||||
doublereal* beta,
|
||||
doublereal* Y, integer* incY);
|
||||
|
||||
int
|
||||
dger_(integer* M, integer* N,
|
||||
doublereal* alpha,
|
||||
doublereal* X, integer* incX,
|
||||
doublereal* Y, integer* incY,
|
||||
doublereal* A, integer* lda);
|
||||
|
||||
int
|
||||
dsyr_(char* uplo, integer* N,
|
||||
doublereal* alpha,
|
||||
doublereal* X, integer* incX,
|
||||
doublereal* A, integer* lda);
|
||||
|
||||
int
|
||||
dspr_(char* uplo, integer* N,
|
||||
doublereal* alpha,
|
||||
doublereal* X, integer* incX,
|
||||
doublereal* Ap);
|
||||
|
||||
int
|
||||
dsyr2_(char* uplo, integer* N,
|
||||
doublereal* alpha,
|
||||
doublereal* X, integer* incX,
|
||||
doublereal* Y, integer* incY,
|
||||
doublereal* A, integer* lda);
|
||||
|
||||
int
|
||||
dspr2_(char* uplo, integer* N,
|
||||
doublereal* alpha,
|
||||
doublereal* X, integer* incX,
|
||||
doublereal* Y, integer* incY,
|
||||
doublereal* A);
|
||||
|
||||
int
|
||||
chemv_(char* uplo, integer* N,
|
||||
complex* alpha,
|
||||
complex* A, integer* lda,
|
||||
complex* X, integer* incX,
|
||||
complex* beta,
|
||||
complex* Y, integer* incY);
|
||||
|
||||
int
|
||||
chbmv_(char* uplo, integer* N, integer* K,
|
||||
complex* alpha,
|
||||
complex* A, integer* lda,
|
||||
complex* X, integer* incX,
|
||||
complex* beta,
|
||||
complex* Y, integer* incY);
|
||||
|
||||
int
|
||||
chpmv_(char* uplo, integer* N,
|
||||
complex* alpha,
|
||||
complex* Ap,
|
||||
complex* X, integer* incX,
|
||||
complex* beta,
|
||||
complex* Y, integer* incY);
|
||||
|
||||
int
|
||||
cgeru_(integer* M, integer* N,
|
||||
complex* alpha,
|
||||
complex* X, integer* incX,
|
||||
complex* Y, integer* incY,
|
||||
complex* A, integer* lda);
|
||||
|
||||
int
|
||||
cgerc_(integer* M, integer* N,
|
||||
complex* alpha,
|
||||
complex* X, integer* incX,
|
||||
complex* Y, integer* incY,
|
||||
complex* A, integer* lda);
|
||||
|
||||
int
|
||||
cher_(char* uplo, integer* N,
|
||||
real* alpha,
|
||||
complex* X, integer* incX,
|
||||
complex* A, integer* lda);
|
||||
|
||||
int
|
||||
chpr_(char* uplo, integer* N,
|
||||
real* alpha,
|
||||
complex* X, integer* incX,
|
||||
complex* Ap);
|
||||
|
||||
int
|
||||
cher2_(char* uplo, integer* N,
|
||||
complex* alpha,
|
||||
complex* X, integer* incX,
|
||||
complex* Y, integer* incY,
|
||||
complex* A, integer* lda);
|
||||
|
||||
int
|
||||
chpr2_(char* uplo, integer* N,
|
||||
complex* alpha,
|
||||
complex* X, integer* incX,
|
||||
complex* Y, integer* incY,
|
||||
complex* Ap);
|
||||
|
||||
int
|
||||
zhemv_(char* uplo, integer* N,
|
||||
doublecomplex* alpha,
|
||||
doublecomplex* A, integer* lda,
|
||||
doublecomplex* X, integer* incX,
|
||||
doublecomplex* beta,
|
||||
doublecomplex* Y, integer* incY);
|
||||
|
||||
int
|
||||
zhbmv_(char* uplo, integer* N, integer* K,
|
||||
doublecomplex* alpha,
|
||||
doublecomplex* A, integer* lda,
|
||||
doublecomplex* X, integer* incX,
|
||||
doublecomplex* beta,
|
||||
doublecomplex* Y, integer* incY);
|
||||
|
||||
int
|
||||
zhpmv_(char* uplo, integer* N,
|
||||
doublecomplex* alpha,
|
||||
doublecomplex* Ap,
|
||||
doublecomplex* X, integer* incX,
|
||||
doublecomplex* beta,
|
||||
doublecomplex* Y, integer* incY);
|
||||
|
||||
int
|
||||
zgeru_(integer* M, integer* N,
|
||||
doublecomplex* alpha,
|
||||
doublecomplex* X, integer* incX,
|
||||
doublecomplex* Y, integer* incY,
|
||||
doublecomplex* A, integer* lda);
|
||||
|
||||
int
|
||||
zgerc_(integer* M, integer* N,
|
||||
doublecomplex* alpha,
|
||||
doublecomplex* X, integer* incX,
|
||||
doublecomplex* Y, integer* incY,
|
||||
doublecomplex* A, integer* lda);
|
||||
|
||||
int
|
||||
zher_(char* uplo, integer* N,
|
||||
doublereal* alpha,
|
||||
doublecomplex* X, integer* incX,
|
||||
doublecomplex* A, integer* lda);
|
||||
|
||||
int
|
||||
zhpr_(char* uplo, integer* N,
|
||||
doublereal* alpha,
|
||||
doublecomplex* X, integer* incX,
|
||||
doublecomplex* Ap);
|
||||
|
||||
int
|
||||
zher2_(char* uplo, integer* N,
|
||||
doublecomplex* alpha,
|
||||
doublecomplex* X, integer* incX,
|
||||
doublecomplex* Y, integer* incY,
|
||||
doublecomplex* A, integer* lda);
|
||||
|
||||
int
|
||||
zhpr2_(char* uplo, integer* N,
|
||||
doublecomplex* alpha,
|
||||
doublecomplex* X, integer* incX,
|
||||
doublecomplex* Y, integer* incY,
|
||||
doublecomplex* Ap);
|
||||
|
||||
int
|
||||
sgemm_(char* transA, char* transB, integer* M, integer* N, integer* K,
|
||||
real* alpha,
|
||||
real* A, integer* lda,
|
||||
real* B, integer* ldb,
|
||||
real* beta,
|
||||
real* C, integer* ldc);
|
||||
|
||||
int
|
||||
ssymm_(char* side, char* uplo, integer* M, integer* N,
|
||||
real* alpha,
|
||||
real* A, integer* lda,
|
||||
real* B, integer* ldb,
|
||||
real* beta,
|
||||
real* C, integer* ldc);
|
||||
|
||||
int
|
||||
ssyrk_(char* uplo, char* trans, integer* N, integer* K,
|
||||
real* alpha,
|
||||
real* A, integer* lda,
|
||||
real* beta,
|
||||
real* C, integer* ldc);
|
||||
|
||||
int
|
||||
ssyr2k_(char* uplo, char* trans, integer* N, integer* K,
|
||||
real* alpha,
|
||||
real* A, integer* lda,
|
||||
real* B, integer* ldb,
|
||||
real* beta,
|
||||
real* C, integer* ldc);
|
||||
|
||||
int
|
||||
strmm_(char* side, char* uplo, char* trans, char* diag,
|
||||
integer* M, integer* N,
|
||||
real* alpha,
|
||||
real* A, integer* lda,
|
||||
real* B, integer* ldb);
|
||||
|
||||
int
|
||||
strsm_(char* side, char* uplo, char* trans, char* diag,
|
||||
integer* M, integer* N,
|
||||
real* alpha,
|
||||
real* A, integer* lda,
|
||||
real* B, integer* ldb);
|
||||
|
||||
int
|
||||
dgemm_(char* transA, char* transB, integer* M, integer* N, integer* K,
|
||||
doublereal* alpha,
|
||||
doublereal* A, integer* lda,
|
||||
doublereal* B, integer* ldb,
|
||||
doublereal* beta,
|
||||
doublereal* C, integer* ldc);
|
||||
|
||||
int
|
||||
dsymm_(char* side, char* uplo, integer* M, integer* N,
|
||||
doublereal* alpha,
|
||||
doublereal* A, integer* lda,
|
||||
doublereal* B, integer* ldb,
|
||||
doublereal* beta,
|
||||
doublereal* C, integer* ldc);
|
||||
|
||||
int
|
||||
dsyrk_(char* uplo, char* trans, integer* N, integer* K,
|
||||
doublereal* alpha,
|
||||
doublereal* A, integer* lda,
|
||||
doublereal* beta,
|
||||
doublereal* C, integer* ldc);
|
||||
|
||||
int
|
||||
dsyr2k_(char* uplo, char* trans, integer* N, integer* K,
|
||||
doublereal* alpha,
|
||||
doublereal* A, integer* lda,
|
||||
doublereal* B, integer* ldb,
|
||||
doublereal* beta,
|
||||
doublereal* C, integer* ldc);
|
||||
|
||||
int
|
||||
dtrmm_(char* side, char* uplo, char* trans, char* diag,
|
||||
integer* M, integer* N,
|
||||
doublereal* alpha,
|
||||
doublereal* A, integer* lda,
|
||||
doublereal* B, integer* ldb);
|
||||
|
||||
int
|
||||
dtrsm_(char* side, char* uplo, char* trans, char* diag,
|
||||
integer* M, integer* N,
|
||||
doublereal* alpha,
|
||||
doublereal* A, integer* lda,
|
||||
doublereal* B, integer* ldb);
|
||||
|
||||
int
|
||||
cgemm_(char* transA, char* transB, integer* M, integer* N, integer* K,
|
||||
complex* alpha,
|
||||
complex* A, integer* lda,
|
||||
complex* B, integer* ldb,
|
||||
complex* beta,
|
||||
complex* C, integer* ldc);
|
||||
|
||||
int
|
||||
csymm_(char* side, char* uplo, integer* M, integer* N,
|
||||
complex* alpha,
|
||||
complex* A, integer* lda,
|
||||
complex* B, integer* ldb,
|
||||
complex* beta,
|
||||
complex* C, integer* ldc);
|
||||
|
||||
int
|
||||
csyrk_(char* uplo, char* trans, integer* N, integer* K,
|
||||
complex* alpha,
|
||||
complex* A, integer* lda,
|
||||
complex* beta,
|
||||
complex* C, integer* ldc);
|
||||
|
||||
int
|
||||
csyr2k_(char* uplo, char* trans, integer* N, integer* K,
|
||||
complex* alpha,
|
||||
complex* A, integer* lda,
|
||||
complex* B, integer* ldb,
|
||||
complex* beta,
|
||||
complex* C, integer* ldc);
|
||||
|
||||
int
|
||||
ctrmm_(char* side, char* uplo, char* trans, char* diag,
|
||||
integer* M, integer* N,
|
||||
complex* alpha,
|
||||
complex* A, integer* lda,
|
||||
complex* B, integer* ldb);
|
||||
|
||||
int
|
||||
ctrsm_(char* side, char* uplo, char* trans, char* diag,
|
||||
integer* M, integer* N,
|
||||
complex* alpha,
|
||||
complex* A, integer* lda,
|
||||
complex* B, integer* ldb);
|
||||
|
||||
int
|
||||
zgemm_(char* transA, char* transB, integer* M, integer* N, integer* K,
|
||||
doublecomplex* alpha,
|
||||
doublecomplex* A, integer* lda,
|
||||
doublecomplex* B, integer* ldb,
|
||||
doublecomplex* beta,
|
||||
doublecomplex* C, integer* ldc);
|
||||
|
||||
int
|
||||
zsymm_(char* side, char* uplo, integer* M, integer* N,
|
||||
doublecomplex* alpha,
|
||||
doublecomplex* A, integer* lda,
|
||||
doublecomplex* B, integer* ldb,
|
||||
doublecomplex* beta,
|
||||
doublecomplex* C, integer* ldc);
|
||||
|
||||
int
|
||||
zsyrk_(char* uplo, char* trans, integer* N, integer* K,
|
||||
doublecomplex* alpha,
|
||||
doublecomplex* A, integer* lda,
|
||||
doublecomplex* beta,
|
||||
doublecomplex* C, integer* ldc);
|
||||
|
||||
int
|
||||
zsyr2k_(char* uplo, char* trans, integer* N, integer* K,
|
||||
doublecomplex* alpha,
|
||||
doublecomplex* A, integer* lda,
|
||||
doublecomplex* B, integer* ldb,
|
||||
doublecomplex* beta,
|
||||
doublecomplex* C, integer* ldc);
|
||||
|
||||
int
|
||||
ztrmm_(char* side, char* uplo, char* trans, char* diag,
|
||||
integer* M, integer* N,
|
||||
doublecomplex* alpha,
|
||||
doublecomplex* A, integer* lda,
|
||||
doublecomplex* B, integer* ldb);
|
||||
|
||||
int
|
||||
ztrsm_(char* side, char* uplo, char* trans, char* diag,
|
||||
integer* M, integer* N,
|
||||
doublecomplex* alpha,
|
||||
doublecomplex* A, integer* lda,
|
||||
doublecomplex* B, integer* ldb);
|
||||
|
||||
int
|
||||
chemm_(char* side, char* uplo, integer* M, integer* N,
|
||||
complex* alpha,
|
||||
complex* A, integer* lda,
|
||||
complex* B, integer* ldb,
|
||||
complex* beta,
|
||||
complex* C, integer* ldc);
|
||||
|
||||
int
|
||||
cherk_(char* uplo, char* trans, integer* N, integer* K,
|
||||
real* alpha,
|
||||
complex* A, integer* lda,
|
||||
real* beta,
|
||||
complex* C, integer* ldc);
|
||||
|
||||
int
|
||||
cher2k_(char* uplo, char* trans, integer* N, integer* K,
|
||||
complex* alpha,
|
||||
complex* A, integer* lda,
|
||||
complex* B, integer* ldb,
|
||||
real* beta,
|
||||
complex* C, integer* ldc);
|
||||
|
||||
int
|
||||
zhemm_(char* side, char* uplo, integer* M, integer* N,
|
||||
doublecomplex* alpha,
|
||||
doublecomplex* A, integer* lda,
|
||||
doublecomplex* B, integer* ldb,
|
||||
doublecomplex* beta,
|
||||
doublecomplex* C, integer* ldc);
|
||||
|
||||
int
|
||||
zherk_(char* uplo, char* trans, integer* N, integer* K,
|
||||
doublereal* alpha,
|
||||
doublecomplex* A, integer* lda,
|
||||
doublereal* beta,
|
||||
doublecomplex* C, integer* ldc);
|
||||
|
||||
int
|
||||
zher2k_(char* uplo, char* trans, integer* N, integer* K,
|
||||
doublecomplex* alpha,
|
||||
doublecomplex* A, integer* lda,
|
||||
doublecomplex* B, integer* ldb,
|
||||
doublereal* beta,
|
||||
doublecomplex* C, integer* ldc);
|
||||
}
|
5085
math/atlas-devel/files/lapack.h
Normal file
5085
math/atlas-devel/files/lapack.h
Normal file
File diff suppressed because it is too large
Load diff
18
math/atlas-devel/files/non-thread-patch
Normal file
18
math/atlas-devel/files/non-thread-patch
Normal file
|
@ -0,0 +1,18 @@
|
|||
--- config.c.orig Tue Jul 1 12:32:49 2003
|
||||
+++ config.c Tue Jul 1 12:35:09 2003
|
||||
@@ -2737,6 +2737,7 @@
|
||||
Use3DNow = IsYes('n', " ", "Use 3DNow! for computation?");
|
||||
}
|
||||
ncpu = ProbeNCPU(OS, mach, targ, TOPdir);
|
||||
+ ncpu = 1; // force non-threading
|
||||
if (ncpu != 1) /* user may want to thread */
|
||||
{
|
||||
DisplayFile("CONFIG/pthread.txt", stdout, NLINES);
|
||||
@@ -3154,6 +3155,7 @@
|
||||
}
|
||||
if (USEWINF77) strcpy(F77, "$(BINdir)/winf77.exe");
|
||||
|
||||
+ fpout = fopen("ARCHNAME-NON-THREADED", "w");
|
||||
fprintf(fpout, "%s", ARCH);
|
||||
fclose(fpout);
|
||||
ATL_mprintf(2, fplog, stdout,"\nCreating make include file Make.%s\n", ARCH);
|
77
math/atlas-devel/files/patch-config.c
Normal file
77
math/atlas-devel/files/patch-config.c
Normal file
|
@ -0,0 +1,77 @@
|
|||
--- config.c.orig Mon Jun 23 07:58:35 2003
|
||||
+++ config.c Tue Jul 1 12:32:49 2003
|
||||
@@ -708,7 +708,7 @@
|
||||
else if (mach == IA64Itan || MachIsUS(mach) ||
|
||||
mach == Dec21164 || mach == Dec21264)
|
||||
{
|
||||
- if (major == 3)
|
||||
+ if ((major == 2 && minor < 96) || (major == 3)) /* Nasty hack for FreeBSD/Alpha STABLE */
|
||||
{
|
||||
strcpy(goodgcc, files[i]);
|
||||
return(0);
|
||||
@@ -1114,7 +1114,9 @@
|
||||
switch(OS)
|
||||
{
|
||||
case OSOSX: /* don't know answer */
|
||||
- case OSFreeBSD: /* don't know answer */
|
||||
+ case OSFreeBSD:
|
||||
+ if (THREADS) strcpy(LIBS, "%%PTHREAD_LIBS%% -lm");
|
||||
+ break;
|
||||
case OSLinux:
|
||||
break;
|
||||
case OSSunOS:
|
||||
@@ -1252,6 +1254,11 @@
|
||||
"-mcpu=ultrasparc -mtune=ultrasparc -fomit-frame-pointer -O3");
|
||||
}
|
||||
if (OS == OSFreeBSD && F77) strcpy(F77, "f77");
|
||||
+ if (OS == OSFreeBSD && THREADS) {
|
||||
+ strcat(F77FLAGS, "%%PTHREAD_CFLAGS%%");
|
||||
+ strcat(CCFLAGS, "%%PTHREAD_CFLAGS%%");
|
||||
+ strcat(MMFLAGS, "%%PTHREAD_CFLAGS%%");
|
||||
+ }
|
||||
break;
|
||||
case OSSunOS:
|
||||
np = 3;
|
||||
@@ -2116,7 +2123,10 @@
|
||||
if (!CmndOneLine(targ, "sysctl hw.model", ln))
|
||||
{
|
||||
if (strstr(ln, "433au")) mach = Dec21164;
|
||||
+ else if (strstr(ln, "500au")) mach = Dec21164;
|
||||
+ else if (strstr(ln, "AlphaPC 164")) mach = Dec21164;
|
||||
else if (strstr(ln, "XP1000")) mach = Dec21264;
|
||||
+ else mach = Dec21264;
|
||||
}
|
||||
break;
|
||||
case LAIA64: /* don't know */
|
||||
@@ -2125,14 +2135,22 @@
|
||||
if (!CmndOneLine(targ, "sysctl hw.model", ln))
|
||||
{
|
||||
if (strstr(ln, "Pentium Pro")) mach = IntPPRO;
|
||||
+ else if (strstr(ln, "Pentium(R) Pro")) mach = IntPPRO;
|
||||
+ else if (strstr(ln, "Pentium 4")) mach = IntP4;
|
||||
+ else if (strstr(ln, "Pentium(R) 4")) mach = IntP4;
|
||||
else if (strstr(ln, "Pentium III")) mach = IntPIII;
|
||||
+ else if (strstr(ln, "Pentium(R) III")) mach = IntPIII;
|
||||
else if (strstr(ln, "Pentium II ")) mach = IntPII;
|
||||
+ else if (strstr(ln, "Pentium(R) II ")) mach = IntPII;
|
||||
+ else if (strstr(ln, "Celeron")) mach = IntPII;
|
||||
+ else if (strstr(ln, "Celeron(R)")) mach = IntPII;
|
||||
else if (strstr(ln, "Athlon")) mach = AmdAthlon;
|
||||
else if (strstr(ln, "AMD-K7")) mach = AmdAthlon;
|
||||
else if (strstr(ln, "32 bit Hammer")) mach = AmdHammer32;
|
||||
else if (strstr(ln, "64 bit Hammer")) mach = AmdHammer64;
|
||||
else if (strstr(ln, "Pentium/P55C")) mach = IntP5MMX; /* sent by */
|
||||
else if (strstr(ln, "Pentium")) mach=IntP5; /* Nakata Maho */
|
||||
+ else mach = IntP5;
|
||||
}
|
||||
break;
|
||||
default:;
|
||||
@@ -3136,6 +3154,8 @@
|
||||
}
|
||||
if (USEWINF77) strcpy(F77, "$(BINdir)/winf77.exe");
|
||||
|
||||
+ fprintf(fpout, "%s", ARCH);
|
||||
+ fclose(fpout);
|
||||
ATL_mprintf(2, fplog, stdout,"\nCreating make include file Make.%s\n", ARCH);
|
||||
sprintf(ln, "Make.%s", ARCH);
|
||||
fpout = fopen(ln, "w");
|
28
math/atlas-devel/files/thread-patch
Normal file
28
math/atlas-devel/files/thread-patch
Normal file
|
@ -0,0 +1,28 @@
|
|||
--- config.c.orig Tue Jul 1 12:35:09 2003
|
||||
+++ config.c Tue Jul 1 12:35:44 2003
|
||||
@@ -79,7 +79,7 @@
|
||||
char *usermmnam[2] = {"", "GOTO"};
|
||||
enum USERGEMM {UG_None=0, UG_GOTO};
|
||||
|
||||
-int XCOMP=0, THREADS=0, USEWINF77=0, NLINES=0, ISWIN=0;
|
||||
+int XCOMP=0, THREADS=1, USEWINF77=0, NLINES=0, ISWIN=0; // force threading
|
||||
char TARGNAM[512];
|
||||
enum MACHTYPE mach=MACHOther;
|
||||
|
||||
@@ -2737,7 +2737,6 @@
|
||||
Use3DNow = IsYes('n', " ", "Use 3DNow! for computation?");
|
||||
}
|
||||
ncpu = ProbeNCPU(OS, mach, targ, TOPdir);
|
||||
- ncpu = 1; // force non-threading
|
||||
if (ncpu != 1) /* user may want to thread */
|
||||
{
|
||||
DisplayFile("CONFIG/pthread.txt", stdout, NLINES);
|
||||
@@ -3155,7 +3154,7 @@
|
||||
}
|
||||
if (USEWINF77) strcpy(F77, "$(BINdir)/winf77.exe");
|
||||
|
||||
- fpout = fopen("ARCHNAME-NON-THREADED", "w");
|
||||
+ fpout = fopen("ARCHNAME-THREADED", "w");
|
||||
fprintf(fpout, "%s", ARCH);
|
||||
fclose(fpout);
|
||||
ATL_mprintf(2, fplog, stdout,"\nCreating make include file Make.%s\n", ARCH);
|
23
math/atlas-devel/pkg-descr
Normal file
23
math/atlas-devel/pkg-descr
Normal file
|
@ -0,0 +1,23 @@
|
|||
The ATLAS (Automatically Tuned Linear Algebra Software) project is
|
||||
an ongoing research effort focusing on applying empirical techniques
|
||||
in order to provide portable performance.
|
||||
|
||||
At present, it provides C and Fortran77 interfaces to a
|
||||
portably efficient BLAS implementation, as well as a few routines from LAPACK.
|
||||
|
||||
PLEASE REBUILD YOUR KERNEL WITH
|
||||
options CPU_ENABLE_SSE
|
||||
TO ENABLE SSE1/SSE2 SUPPORT BEFORE MAKING ATLAS!
|
||||
IT SIGNIFICANTLY IMPROVES PERFORMANCE.
|
||||
|
||||
If you use blas, you can simply change flags when linking,
|
||||
from -lblas to -lf77blas -latlas (order is important).
|
||||
|
||||
A few routines from LAPACK are merged into one library as libalapack.
|
||||
It requres both C and Fortran77 interfaces, and thus that link line would be:
|
||||
-lalapack -lf77blas -lcblas -latlas -lg2c -lm .
|
||||
|
||||
Other choice of CC and CFLAGS are *NOT* recommended.
|
||||
They are already optimized for this platform and automatically searched.
|
||||
|
||||
WWW: http://math-atlas.sourceforge.net/
|
56
math/atlas-devel/pkg-plist
Normal file
56
math/atlas-devel/pkg-plist
Normal file
|
@ -0,0 +1,56 @@
|
|||
include/cblas.h
|
||||
include/clapack.h
|
||||
include/blas.h
|
||||
include/lapack.h
|
||||
lib/libalapack.a
|
||||
lib/libalapack.so.1
|
||||
lib/libalapack.so
|
||||
lib/libalapack_r.a
|
||||
lib/libalapack_r.so.1
|
||||
lib/libalapack_r.so
|
||||
lib/libatlas.a
|
||||
lib/libatlas.so.1
|
||||
lib/libatlas.so
|
||||
lib/libatlas_r.a
|
||||
lib/libatlas_r.so.1
|
||||
lib/libatlas_r.so
|
||||
lib/libcblas.a
|
||||
lib/libcblas.so.1
|
||||
lib/libcblas.so
|
||||
lib/libcblas_r.a
|
||||
lib/libcblas_r.so.1
|
||||
lib/libcblas_r.so
|
||||
lib/libf77blas.a
|
||||
lib/libf77blas.so.1
|
||||
lib/libf77blas.so
|
||||
lib/libf77blas_r.a
|
||||
lib/libf77blas_r.so.1
|
||||
lib/libf77blas_r.so
|
||||
lib/libptcblas.a
|
||||
lib/libptcblas.so.1
|
||||
lib/libptcblas.so
|
||||
lib/libptf77blas.a
|
||||
lib/libptf77blas.so.1
|
||||
lib/libptf77blas.so
|
||||
lib/libtstatlas.a
|
||||
lib/libtstatlas.so.1
|
||||
lib/libtstatlas.so
|
||||
lib/libtstatlas_r.a
|
||||
lib/libtstatlas_r.so.1
|
||||
lib/libtstatlas_r.so
|
||||
%%PORTDOCS%%share/doc/atlas/AtlasCredits.txt
|
||||
%%PORTDOCS%%share/doc/atlas/ChangeLog
|
||||
%%PORTDOCS%%share/doc/atlas/DirStruct.txt
|
||||
%%PORTDOCS%%share/doc/atlas/INDEX.txt
|
||||
%%PORTDOCS%%share/doc/atlas/LibReadme.txt
|
||||
%%PORTDOCS%%share/doc/atlas/TestTime.txt
|
||||
%%PORTDOCS%%share/doc/atlas/TroubleShoot.txt
|
||||
%%PORTDOCS%%share/doc/atlas/Windows.txt
|
||||
%%PORTDOCS%%share/doc/atlas/atlas_contrib.ps
|
||||
%%PORTDOCS%%share/doc/atlas/atlas_devel.ps
|
||||
%%PORTDOCS%%share/doc/atlas/atlas_over.ps
|
||||
%%PORTDOCS%%share/doc/atlas/cblas.ps
|
||||
%%PORTDOCS%%share/doc/atlas/cblasqref.ps
|
||||
%%PORTDOCS%%share/doc/atlas/f77blasqref.ps
|
||||
%%PORTDOCS%%share/doc/atlas/lapackqref.ps
|
||||
%%PORTDOCS%%@dirrm share/doc/atlas
|
Loading…
Add table
Reference in a new issue