New package: lapack-3.5.0; supersedes liblapack
New (sub)package: blas-3.5.0; supersedes libBLAS
This commit is contained in:
parent
bc3ddf9ae0
commit
1cfb846ae6
10 changed files with 3707 additions and 0 deletions
|
@ -1711,3 +1711,5 @@ libpar2.so.1 libpar2-0.4_1
|
|||
libsodium.so.13 libsodium-0.7.0_1
|
||||
libstrophe.so.0 libstrophe-0.8.6_1
|
||||
libganv-1.so.1 ganv-1.4.2_1
|
||||
libblas.so.3 blas-3.5.0_1
|
||||
liblapack.so.3 lapack-3.5.0_1
|
||||
|
|
1
srcpkgs/blas
Symbolic link
1
srcpkgs/blas
Symbolic link
|
@ -0,0 +1 @@
|
|||
lapack
|
1
srcpkgs/blas-devel
Symbolic link
1
srcpkgs/blas-devel
Symbolic link
|
@ -0,0 +1 @@
|
|||
lapack
|
1
srcpkgs/blas-doc
Symbolic link
1
srcpkgs/blas-doc
Symbolic link
|
@ -0,0 +1 @@
|
|||
lapack
|
1
srcpkgs/lapack-devel
Symbolic link
1
srcpkgs/lapack-devel
Symbolic link
|
@ -0,0 +1 @@
|
|||
lapack
|
1
srcpkgs/lapack-doc
Symbolic link
1
srcpkgs/lapack-doc
Symbolic link
|
@ -0,0 +1 @@
|
|||
lapack
|
1753
srcpkgs/lapack/files/Doxyfile_man.blas
Normal file
1753
srcpkgs/lapack/files/Doxyfile_man.blas
Normal file
File diff suppressed because it is too large
Load diff
1753
srcpkgs/lapack/files/Doxyfile_man.lapack
Normal file
1753
srcpkgs/lapack/files/Doxyfile_man.lapack
Normal file
File diff suppressed because it is too large
Load diff
71
srcpkgs/lapack/files/make.inc.template
Normal file
71
srcpkgs/lapack/files/make.inc.template
Normal file
|
@ -0,0 +1,71 @@
|
|||
####################################################################
|
||||
# LAPACK make include file. #
|
||||
# LAPACK, Version 3.5.0 #
|
||||
# November 2013 #
|
||||
####################################################################
|
||||
#
|
||||
SHELL = /bin/sh
|
||||
#
|
||||
# Modify the FORTRAN and OPTS definitions to refer to the
|
||||
# compiler and desired compiler options for your machine. NOOPT
|
||||
# refers to the compiler options desired when NO OPTIMIZATION is
|
||||
# selected. Define LOADER and LOADOPTS to refer to the loader and
|
||||
# desired load options for your machine.
|
||||
#
|
||||
FORTRAN = gfortran
|
||||
OPTS =
|
||||
DRVOPTS = $(OPTS)
|
||||
NOOPT =
|
||||
LOADER = gfortran
|
||||
LOADOPTS =
|
||||
#
|
||||
# Timer for the SECOND and DSECND routines
|
||||
#
|
||||
# Default : SECOND and DSECND will use a call to the EXTERNAL FUNCTION ETIME
|
||||
#TIMER = EXT_ETIME
|
||||
# For RS6K : SECOND and DSECND will use a call to the EXTERNAL FUNCTION ETIME_
|
||||
# TIMER = EXT_ETIME_
|
||||
# For gfortran compiler: SECOND and DSECND will use a call to the INTERNAL FUNCTION ETIME
|
||||
TIMER = INT_ETIME
|
||||
# If your Fortran compiler does not provide etime (like Nag Fortran Compiler, etc...)
|
||||
# SECOND and DSECND will use a call to the INTERNAL FUNCTION CPU_TIME
|
||||
# TIMER = INT_CPU_TIME
|
||||
# If neither of this works...you can use the NONE value... In that case, SECOND and DSECND will always return 0
|
||||
# TIMER = NONE
|
||||
#
|
||||
# Configuration LAPACKE: Native C interface to LAPACK
|
||||
# To generate LAPACKE library: type 'make lapackelib'
|
||||
# Configuration file: turned off (default)
|
||||
# Complex types: C99 (default)
|
||||
# Name pattern: mixed case (default)
|
||||
# (64-bit) Data model: LP64 (default)
|
||||
#
|
||||
# CC is the C compiler, normally invoked with options CFLAGS.
|
||||
#
|
||||
CC = cc
|
||||
CFLAGS =
|
||||
#
|
||||
# The archiver and the flag(s) to use when building archive (library)
|
||||
# If you system has no ranlib, set RANLIB = echo.
|
||||
#
|
||||
ARCH = ar
|
||||
ARCHFLAGS= cr
|
||||
RANLIB = ranlib
|
||||
#
|
||||
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
||||
# used for building and testing extended-precision routines. The
|
||||
# relevant routines will be compiled and XBLAS will be linked only if
|
||||
# USEXBLAS is defined.
|
||||
#
|
||||
# USEXBLAS = Yes
|
||||
XBLASLIB =
|
||||
# XBLASLIB = -lxblas
|
||||
#
|
||||
# The location of the libraries to which you will link. (The
|
||||
# machine-specific, optimized BLAS library should be used whenever
|
||||
# possible.)
|
||||
#
|
||||
BLASLIB = ../../librefblas.a
|
||||
LAPACKLIB = liblapack.a
|
||||
TMGLIB = libtmglib.a
|
||||
LAPACKELIB = liblapacke.a
|
123
srcpkgs/lapack/template
Normal file
123
srcpkgs/lapack/template
Normal file
|
@ -0,0 +1,123 @@
|
|||
# Template file for 'lapack'
|
||||
pkgname=lapack
|
||||
version=3.5.0
|
||||
revision=1
|
||||
wrksrc="${pkgname}-${version}"
|
||||
hostmakedepends="gcc-fortran doxygen"
|
||||
replaces="liblapack>=0"
|
||||
short_desc="Linear Algebra PACKage"
|
||||
maintainer="Alessio Sergi <al3hex@gmail.com>"
|
||||
homepage="http://www.netlib.org/lapack/"
|
||||
license="3-clause-BSD"
|
||||
distfiles="http://www.netlib.org/${pkgname}/${pkgname}-${version}.tgz"
|
||||
checksum="9ad8f0d3f3fb5521db49f2dd716463b8fb2b6bc9dc386a9956b8c6144f726352"
|
||||
|
||||
pre_build() {
|
||||
cp -f ${FILESDIR}/make.inc.template ${wrksrc}/make.inc
|
||||
cp -f ${FILESDIR}/Doxyfile_man.blas ${wrksrc}/DOCS
|
||||
cp -f ${FILESDIR}/Doxyfile_man.lapack ${wrksrc}/DOCS
|
||||
}
|
||||
|
||||
do_build() {
|
||||
export FC=gfortran
|
||||
export FFLAGS=$CFLAGS
|
||||
export FFLAGS_NOOPT=${CFLAGS/-O2/}
|
||||
export OPTS="$FFLAGS -frecursive"
|
||||
export NOOPT="$FFLAGS_NOOPT -O0 -frecursive"
|
||||
export PICOPT="-fPIC"
|
||||
|
||||
# Build the shared blas library
|
||||
make blaslib OPTS="$OPTS $PICOPT" NOOPT="$NOOPT $PICOPT"
|
||||
mv librefblas.a libblas_pic.a
|
||||
|
||||
mkdir tmp
|
||||
( cd tmp; ar x ../libblas_pic.a )
|
||||
"$FC" -shared -Wl,-soname=libblas.so.${version%%.*} -o libblas.so.${version} tmp/*.o
|
||||
ln -sf libblas.so.${version} libblas.so
|
||||
rm -rf tmp
|
||||
|
||||
# Build the static blas library
|
||||
make cleanlib
|
||||
make blaslib OPTS="$OPTS" NOOPT="$NOOPT"
|
||||
mv librefblas.a libblas.a
|
||||
make cleanlib
|
||||
|
||||
# Build the shared lapack library
|
||||
make lapacklib OPTS="$OPTS $PICOPT" NOOPT="$NOOPT $PICOPT"
|
||||
mv liblapack.a liblapack_pic.a
|
||||
|
||||
mkdir tmp
|
||||
( cd tmp; ar x ../liblapack_pic.a )
|
||||
"$FC" -shared -Wl,-soname=liblapack.so.${version%%.*} -o liblapack.so.${version} tmp/*.o -L. -lblas
|
||||
rm -rf tmp
|
||||
|
||||
# Build the static lapack library
|
||||
make cleanlib
|
||||
make lapacklib OPTS="$OPTS" NOOPT="$NOOPT"
|
||||
|
||||
# Build blas and lapack man pages
|
||||
doxygen DOCS/Doxyfile_man.blas
|
||||
doxygen DOCS/Doxyfile_man.lapack
|
||||
}
|
||||
|
||||
do_install() {
|
||||
for libname in libblas liblapack; do
|
||||
vinstall ${libname}.a 644 usr/lib ${libname}.a
|
||||
vinstall ${libname}.so.${version} 755 usr/lib ${libname}.so.${version}
|
||||
done
|
||||
vlicense LICENSE
|
||||
}
|
||||
|
||||
post_install() {
|
||||
for libname in libblas liblapack; do
|
||||
ln -sf ${libname}.so.${version} ${DESTDIR}/usr/lib/${libname}.so
|
||||
ln -sf ${libname}.so.${version} ${DESTDIR}/usr/lib/${libname}.so.${version%%.*}
|
||||
done
|
||||
}
|
||||
|
||||
lapack-devel_package() {
|
||||
depends="${sourcepkg}>=${version}_${revision}"
|
||||
short_desc+=" - development files"
|
||||
pkg_install() {
|
||||
vmove usr/lib/liblapack.a
|
||||
vmove usr/lib/liblapack.so
|
||||
}
|
||||
}
|
||||
|
||||
lapack-doc_package() {
|
||||
noarch=yes
|
||||
depends="${sourcepkg}>=${version}_${revision}"
|
||||
short_desc+=" - documentation"
|
||||
pkg_install() {
|
||||
vmkdir usr/share
|
||||
vcopy ${wrksrc}/DOCS/lapack/man usr/share
|
||||
}
|
||||
}
|
||||
|
||||
blas_package() {
|
||||
replaces="libBLAS>=0"
|
||||
short_desc+=" - BLAS (Basic Linear Algebra Subprograms) library"
|
||||
pkg_install() {
|
||||
vmove usr/lib/libblas.so.*
|
||||
vlicense ${wrksrc}/LICENSE
|
||||
}
|
||||
}
|
||||
|
||||
blas-devel_package() {
|
||||
depends="blas>=${version}_${revision}"
|
||||
short_desc+=" - BLAS development files"
|
||||
pkg_install() {
|
||||
vmove usr/lib/libblas.a
|
||||
vmove usr/lib/libblas.so
|
||||
}
|
||||
}
|
||||
|
||||
blas-doc_package() {
|
||||
noarch=yes
|
||||
depends="blas>=${version}_${revision}"
|
||||
short_desc+=" - BLAS documentation"
|
||||
pkg_install() {
|
||||
vmkdir usr/share
|
||||
vcopy ${wrksrc}/DOCS/blas/man usr/share
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue