3.9.1
This commit is contained in:
parent
fcf424ab55
commit
2d1369f7dd
1
.gitignore
vendored
1
.gitignore
vendored
@ -12,3 +12,4 @@ lapack-3.2.2.tgz
|
||||
/lapack-3.7.1.tgz
|
||||
/lapack-3.8.0.tar.gz
|
||||
/v3.9.0.tar.gz
|
||||
/v3.9.1.tar.gz
|
||||
|
430
lapack.spec
430
lapack.spec
@ -1,3 +1,6 @@
|
||||
# Something in the debuginfo process is stripping the custom 64_ symbols out of lapack64_ and blas64_
|
||||
%global debug_package %{nil}
|
||||
|
||||
%global shortver 3
|
||||
%global mediumver %{shortver}.9
|
||||
|
||||
@ -9,26 +12,16 @@
|
||||
|
||||
Summary: Numerical linear algebra package libraries
|
||||
Name: lapack
|
||||
Version: %{mediumver}.0
|
||||
Release: 6%{?dist}
|
||||
Version: %{mediumver}.1
|
||||
Release: 1%{?dist}
|
||||
License: BSD
|
||||
URL: http://www.netlib.org/lapack/
|
||||
Source0: https://github.com/Reference-LAPACK/lapack/archive/v%{version}.tar.gz
|
||||
Source1: http://www.netlib.org/lapack/manpages.tgz
|
||||
Source2: Makefile.blas
|
||||
Source3: Makefile.lapack
|
||||
Source4: http://www.netlib.org/lapack/lapackqref.ps
|
||||
Source5: http://www.netlib.org/blas/blasqr.ps
|
||||
Source6: Makefile.cblas
|
||||
Patch3: lapack-3.9.0-make.inc.patch
|
||||
Patch4: lapack-3.9.0-lapacke-shared.patch
|
||||
Patch5: lapack-3.4.1-lapacke-disable-testing-functions.patch
|
||||
Patch6: lapack-3.5.0-lapacke-matgenobj.patch
|
||||
Patch7: lapack-3.9.0-lapacke-tmglib.patch
|
||||
# Bugzilla 1814756
|
||||
Patch8: https://github.com/Reference-LAPACK/lapack/commit/87536aa3c8bb0af00f66088fb6ac05d87509e011.patch
|
||||
BuildRequires: gcc-gfortran, gawk
|
||||
BuildRequires: make
|
||||
BuildRequires: make, cmake
|
||||
Requires: blas%{?_isa} = %{version}-%{release}
|
||||
|
||||
%global _description_lapack %{expand:
|
||||
@ -118,257 +111,130 @@ This build has 64bit INTEGER support and a symbol name suffix.
|
||||
%prep
|
||||
%setup -q
|
||||
%setup -q -D -T -a1
|
||||
%patch3 -p1 -b .fedora
|
||||
%patch4 -p1 -b .shared
|
||||
# %patch5 -p1 -b .disable-functions
|
||||
# %patch6 -p1 -b .matgenobj
|
||||
%patch7 -p1 -b .tmglib
|
||||
%patch8 -p1 -b .bz1814756
|
||||
|
||||
mkdir manpages
|
||||
mv man/ manpages/
|
||||
|
||||
cp -f INSTALL/make.inc.gfortran make.inc
|
||||
cp -f %{SOURCE2} BLAS/SRC/Makefile
|
||||
cp -f %{SOURCE3} SRC/Makefile
|
||||
cp -f %{SOURCE6} CBLAS/src/Makefile
|
||||
|
||||
sed -i "s|@SHORTVER@|%{shortver}|g" BLAS/SRC/Makefile
|
||||
sed -i "s|@SHORTVER@|%{shortver}|g" SRC/Makefile
|
||||
sed -i "s|@SHORTVER@|%{shortver}|g" LAPACKE/Makefile
|
||||
sed -i "s|@SHORTVER@|%{shortver}|g" CBLAS/src/Makefile
|
||||
sed -i "s|@LONGVER@|%{version}|g" BLAS/SRC/Makefile
|
||||
sed -i "s|@LONGVER@|%{version}|g" SRC/Makefile
|
||||
sed -i "s|@LONGVER@|%{version}|g" LAPACKE/Makefile
|
||||
sed -i "s|@LONGVER@|%{version}|g" CBLAS/src/Makefile
|
||||
|
||||
%build
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -frecursive --no-optimize-sibling-calls"
|
||||
RPM_OPT_O_FLAGS=$(echo $RPM_OPT_FLAGS | sed 's|-O2|-O0|')
|
||||
export FC=gfortran
|
||||
%global optflags %{optflags} -frecursive --no-optimize-sibling-calls
|
||||
|
||||
# Build BLAS
|
||||
pushd BLAS/SRC
|
||||
FFLAGS="$RPM_OPT_O_FLAGS" make dcabs1.o
|
||||
FFLAGS="$RPM_OPT_FLAGS" CFLAGS="$RPM_OPT_FLAGS" make static
|
||||
cp libblas.a ${RPM_BUILD_DIR}/%{name}-%{version}/
|
||||
make clean
|
||||
FFLAGS="$RPM_OPT_O_FLAGS -fPIC" make dcabs1.o
|
||||
FFLAGS="$RPM_OPT_FLAGS -fPIC" CFLAGS="$RPM_OPT_FLAGS -fPIC" LDFLAGS="%{build_ldflags}" make shared
|
||||
cp libblas.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/
|
||||
%if 0%{?arch64}
|
||||
make clean
|
||||
FFLAGS="$RPM_OPT_O_FLAGS -fdefault-integer-8" make dcabs1.o
|
||||
FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS" make static
|
||||
cp libblas.a ${RPM_BUILD_DIR}/%{name}-%{version}/libblas64.a
|
||||
make clean
|
||||
FFLAGS="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" make dcabs1.o
|
||||
FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC" LDFLAGS="%{build_ldflags}" make shared
|
||||
cp libblas.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/libblas64.so.%{version}
|
||||
make clean
|
||||
FFLAGS="$RPM_OPT_O_FLAGS -fdefault-integer-8" make dcabs1.o
|
||||
SYMBOLSUFFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS" make static
|
||||
cp libblas64_.a ${RPM_BUILD_DIR}/%{name}-%{version}/libblas64_.a
|
||||
make clean
|
||||
FFLAGS="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" make dcabs1.o
|
||||
SYMBOLSUFFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC" LDFLAGS="%{build_ldflags}" make shared
|
||||
cp libblas64_.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/libblas64_.so.%{version}
|
||||
%endif
|
||||
popd
|
||||
# shared normal
|
||||
%cmake -DBUILD_DEPRECATED=ON -DBUILD_SHARED_LIBS=ON -DLAPACKE=ON -DLAPACKE_WITH_TMG=ON -DCBLAS=ON
|
||||
%cmake_build
|
||||
mv %_vpath_builddir %_vpath_builddir-SHARED
|
||||
|
||||
ln -s libblas.so.%{version} libblas.so
|
||||
%if 0%{?arch64}
|
||||
ln -s libblas64.so.%{version} libblas64.so
|
||||
ln -s libblas64_.so.%{version} libblas64_.so
|
||||
%endif
|
||||
|
||||
# Build CBLAS
|
||||
cp CBLAS/include/cblas_mangling_with_flags.h.in CBLAS/include/cblas_mangling.h
|
||||
pushd CBLAS/src
|
||||
FFLAGS="$RPM_OPT_FLAGS" CFLAGS="$RPM_OPT_FLAGS -I../include" make static
|
||||
cp libcblas.a ${RPM_BUILD_DIR}/%{name}-%{version}/
|
||||
make clean
|
||||
FFLAGS="$RPM_OPT_FLAGS -fPIC" CFLAGS="$RPM_OPT_FLAGS -fPIC -I../include" LDFLAGS="%{build_ldflags}" make shared
|
||||
cp libcblas.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/
|
||||
%if 0%{?arch64}
|
||||
make clean
|
||||
FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -I../include" make static
|
||||
cp libcblas.a ${RPM_BUILD_DIR}/%{name}-%{version}/libcblas64.a
|
||||
make clean
|
||||
FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC -I../include" LDFLAGS="%{build_ldflags}" make shared
|
||||
cp libcblas.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/libcblas64.so.%{version}
|
||||
make clean
|
||||
SYMBOLSUFFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -I../include" make static
|
||||
cp libcblas64_.a ${RPM_BUILD_DIR}/%{name}-%{version}/libcblas64_.a
|
||||
make clean
|
||||
SYMBOLSUFFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC -I../include" LDFLAGS="%{build_ldflags}" make shared
|
||||
cp libcblas64_.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/libcblas64_.so.%{version}
|
||||
%endif
|
||||
popd
|
||||
|
||||
ln -s libcblas.so.%{version} libcblas.so
|
||||
%if 0%{?arch64}
|
||||
ln -s libcblas64.so.%{version} libcblas64.so
|
||||
ln -s libcblas64_.so.%{version} libcblas64_.so
|
||||
%endif
|
||||
|
||||
# Build the static dlamch, dsecnd, lsame, second, slamch bits
|
||||
pushd INSTALL
|
||||
make FFLAGS_NOOPT="$RPM_OPT_O_FLAGS" FFLAGS="$RPM_OPT_FLAGS"
|
||||
popd
|
||||
|
||||
# Build the static lapack library
|
||||
pushd SRC
|
||||
make FFLAGS="$RPM_OPT_FLAGS" CFLAGS="$RPM_OPT_FLAGS" static
|
||||
cp liblapack.a ${RPM_BUILD_DIR}/%{name}-%{version}/
|
||||
popd
|
||||
|
||||
# Build the static with pic dlamch, dsecnd, lsame, second, slamch bits
|
||||
pushd INSTALL
|
||||
make clean
|
||||
make FFLAGS_NOOPT="$RPM_OPT_O_FLAGS -fPIC" FFLAGS="$RPM_OPT_FLAGS -fPIC"
|
||||
popd
|
||||
|
||||
# Build the static with pic lapack library
|
||||
pushd SRC
|
||||
make clean
|
||||
make FFLAGS="$RPM_OPT_FLAGS -fPIC" CFLAGS="$RPM_OPT_FLAGS -fPIC" static
|
||||
cp liblapack.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack_pic.a
|
||||
popd
|
||||
# static normal
|
||||
%cmake -DBUILD_DEPRECATED=ON -DBUILD_SHARED_LIBS=OFF -DLAPACKE=ON -DLAPACKE_WITH_TMG=ON -DCBLAS=ON
|
||||
%cmake_build
|
||||
mv %_vpath_builddir %_vpath_builddir-STATIC
|
||||
|
||||
%if 0%{?arch64}
|
||||
# Build the static dlamch, dsecnd, lsame, second, slamch bits
|
||||
pushd INSTALL
|
||||
make clean
|
||||
make FFLAGS_NOOPT="$RPM_OPT_O_FLAGS -fdefault-integer-8" FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8"
|
||||
popd
|
||||
# shared 64
|
||||
%cmake -DBUILD_DEPRECATED=ON -DBUILD_SHARED_LIBS=ON -DBUILD_INDEX64=ON -DLAPACKE=OFF -DCBLAS=ON
|
||||
%cmake_build
|
||||
mv %_vpath_builddir %_vpath_builddir-SHARED64
|
||||
|
||||
# Build the static lapack library
|
||||
pushd SRC
|
||||
make clean
|
||||
make FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS" static
|
||||
cp liblapack.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64.a
|
||||
popd
|
||||
# static 64
|
||||
%cmake -DBUILD_DEPRECATED=ON -DBUILD_SHARED_LIBS=OFF -DBUILD_INDEX64=ON -DLAPACKE=OFF -DCBLAS=ON
|
||||
%cmake_build
|
||||
mv %_vpath_builddir %_vpath_builddir-STATIC64
|
||||
|
||||
# Build the static with pic dlamch, dsecnd, lsame, second, slamch bits (64bit INTEGER)
|
||||
pushd INSTALL
|
||||
make clean
|
||||
make FFLAGS_NOOPT="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8"
|
||||
popd
|
||||
# This is not an Easter Egg. Just a scrambled egg.
|
||||
|
||||
# Build the static with pic lapack library (64bit INTEGER)
|
||||
pushd SRC
|
||||
make clean
|
||||
make FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC" static
|
||||
cp liblapack.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack_pic64.a
|
||||
popd
|
||||
# shared 64 SUFFIX
|
||||
sed -i 's|64"|64_"|g' CMakeLists.txt
|
||||
%cmake -DBUILD_DEPRECATED=ON -DBUILD_SHARED_LIBS=ON -DBUILD_INDEX64=ON -DLAPACKE=OFF -DCBLAS=ON
|
||||
%cmake_build
|
||||
mv %_vpath_builddir %_vpath_builddir-SHARED64SUFFIX
|
||||
|
||||
# Build the static dlamch, dsecnd, lsame, second, slamch bits
|
||||
pushd INSTALL
|
||||
make clean
|
||||
make FFLAGS_NOOPT="$RPM_OPT_O_FLAGS -fdefault-integer-8" FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8"
|
||||
popd
|
||||
# static 64 SUFFIX
|
||||
%cmake -DBUILD_DEPRECATED=ON -DBUILD_SHARED_LIBS=OFF -DBUILD_INDEX64=ON -DLAPACKE=OFF -DCBLAS=ON
|
||||
%cmake_build
|
||||
mv %_vpath_builddir %_vpath_builddir-STATIC64SUFFIX
|
||||
|
||||
# Build the static lapack library
|
||||
pushd SRC
|
||||
make clean
|
||||
make SYMBOLSUFFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS" static
|
||||
cp liblapack64_.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64_.a
|
||||
popd
|
||||
|
||||
# Build the static with pic dlamch, dsecnd, lsame, second, slamch bits (64bit INTEGER)
|
||||
pushd INSTALL
|
||||
make clean
|
||||
make FFLAGS_NOOPT="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8"
|
||||
popd
|
||||
|
||||
# Build the static with pic lapack library (64bit INTEGER)
|
||||
pushd SRC
|
||||
make clean
|
||||
make SYMBOLSUFFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC" static
|
||||
cp liblapack64_.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack_pic64_.a
|
||||
popd
|
||||
# Undo the 64_ suffix
|
||||
sed -i 's|64_"|64"|g' CMakeLists.txt
|
||||
%endif
|
||||
|
||||
# Build the shared dlamch, dsecnd, lsame, second, slamch bits
|
||||
pushd INSTALL
|
||||
make clean
|
||||
make FFLAGS_NOOPT="$RPM_OPT_O_FLAGS -fPIC" FFLAGS="$RPM_OPT_FLAGS -fPIC"
|
||||
popd
|
||||
|
||||
# Build the shared lapack library
|
||||
pushd SRC
|
||||
make clean
|
||||
make FFLAGS="$RPM_OPT_FLAGS -fPIC" CFLAGS="$RPM_OPT_FLAGS -fPIC" LDFLAGS="%{build_ldflags}" shared
|
||||
cp liblapack.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/
|
||||
popd
|
||||
%global optflags %{optflags} -frecursive --no-optimize-sibling-calls -fPIC
|
||||
# static normal lapack FPIC
|
||||
%cmake -DBUILD_DEPRECATED=ON -DBUILD_SHARED_LIBS=OFF -DLAPACKE=OFF -DCBLAS=OFF
|
||||
%cmake_build
|
||||
mv %_vpath_builddir %_vpath_builddir-STATICFPIC
|
||||
mv %_vpath_builddir-STATICFPIC/lib/liblapack.a %_vpath_builddir-STATICFPIC/lib/liblapack_pic.a
|
||||
|
||||
%if 0%{?arch64}
|
||||
# Build the shared dlamch, dsecnd, lsame, second, slamch bits
|
||||
pushd INSTALL
|
||||
make clean
|
||||
make FFLAGS_NOOPT="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8"
|
||||
popd
|
||||
# static 64 lapack FPIC
|
||||
%cmake -DBUILD_DEPRECATED=ON -DBUILD_SHARED_LIBS=OFF -DBUILD_INDEX64=ON -DLAPACKE=OFF -DCBLAS=OFF
|
||||
%cmake_build
|
||||
mv %_vpath_builddir %_vpath_builddir-STATIC64FPIC
|
||||
mv %_vpath_builddir-STATIC64FPIC/lib/liblapack64.a %_vpath_builddir-STATIC64FPIC/lib/liblapack_pic64.a
|
||||
|
||||
# Build the shared lapack library
|
||||
pushd SRC
|
||||
make clean
|
||||
make FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" LDFLAGS="%{build_ldflags}" shared
|
||||
cp liblapack.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64.so.%{version}
|
||||
popd
|
||||
# static 64 lapack suffix FPIC
|
||||
sed -i 's|64"|64_"|g' CMakeLists.txt
|
||||
%cmake -DBUILD_DEPRECATED=ON -DBUILD_SHARED_LIBS=OFF -DBUILD_INDEX64=ON -DLAPACKE=OFF -DCBLAS=OFF
|
||||
%cmake_build
|
||||
mv %_vpath_builddir %_vpath_builddir-STATIC64SUFFIXFPIC
|
||||
mv %_vpath_builddir-STATIC64SUFFIXFPIC/lib/liblapack64_.a %_vpath_builddir-STATIC64SUFFIXFPIC/lib/liblapack_pic64_.a
|
||||
|
||||
# Build the shared dlamch, dsecnd, lsame, second, slamch bits
|
||||
pushd INSTALL
|
||||
make clean
|
||||
make FFLAGS_NOOPT="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8"
|
||||
popd
|
||||
|
||||
# Build the shared lapack library
|
||||
pushd SRC
|
||||
make clean
|
||||
make SYMBOLSUFFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" LDFLAGS="%{build_ldflags}" shared
|
||||
cp liblapack64_.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64_.so.%{version}
|
||||
popd
|
||||
# Undo the 64_ suffix
|
||||
sed -i 's|64_"|64"|g' CMakeLists.txt
|
||||
%endif
|
||||
|
||||
ln -s liblapack.so.%{version} liblapack.so
|
||||
%if 0%{?arch64}
|
||||
ln -s liblapack64.so.%{version} liblapack64.so
|
||||
ln -s liblapack64_.so.%{version} liblapack64_.so
|
||||
%endif
|
||||
|
||||
# Build the lapacke libraries
|
||||
make FFLAGS="$RPM_OPT_FLAGS -fPIC" FFLAGS_NOOPT="$RPM_OPT_O_FLAGS -fPIC" tmglib
|
||||
pushd LAPACKE
|
||||
make clean
|
||||
make CFLAGS="$RPM_OPT_FLAGS" BUILD_DEPRECATED="true" lapacke
|
||||
make clean
|
||||
make CFLAGS="$RPM_OPT_FLAGS -fPIC" BUILD_DEPRECATED="true" LDFLAGS="%{build_ldflags}" shlib
|
||||
# cp liblapacke.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/
|
||||
popd
|
||||
|
||||
cp -p %{SOURCE4} lapackqref.ps
|
||||
cp -p %{SOURCE5} blasqr.ps
|
||||
|
||||
%install
|
||||
mkdir -p %{buildroot}%{_libdir}
|
||||
mkdir -p %{buildroot}%{_mandir}/man3
|
||||
chmod 755 %{buildroot}%{_mandir}/man3
|
||||
|
||||
for f in liblapack.so.%{version} libblas.so.%{version} libcblas.so.%{version} liblapacke.so.%{version} \
|
||||
libblas.a libcblas.a liblapack.a liblapack_pic.a liblapacke.a; do
|
||||
cp -f $f ${RPM_BUILD_ROOT}%{_libdir}/$f
|
||||
%if 0%{?arch64}
|
||||
for t in SHARED STATIC SHARED64 STATIC64; do
|
||||
%else
|
||||
for t in SHARED STATIC; do
|
||||
%endif
|
||||
mv %_vpath_builddir-$t %_vpath_builddir
|
||||
%cmake_install
|
||||
mv %_vpath_builddir %_vpath_builddir-$t
|
||||
done
|
||||
|
||||
%if 0%{?arch64}
|
||||
for f in liblapack64.so.%{version} libblas64.so.%{version} libcblas64.so.%{version} \
|
||||
liblapack64_.so.%{version} libblas64_.so.%{version} libcblas64_.so.%{version} \
|
||||
libblas64.a libcblas64.a liblapack64.a liblapack_pic64.a \
|
||||
libblas64_.a libcblas64_.a liblapack64_.a liblapack_pic64_.a; do
|
||||
cp -f $f ${RPM_BUILD_ROOT}%{_libdir}/$f
|
||||
# Set the suffix
|
||||
sed -i 's|64"|64_"|g' CMakeLists.txt
|
||||
for t in SHARED64SUFFIX STATIC64SUFFIX; do
|
||||
mv %_vpath_builddir-$t %_vpath_builddir
|
||||
%cmake_install
|
||||
mv %_vpath_builddir %_vpath_builddir-$t
|
||||
done
|
||||
%endif
|
||||
|
||||
install -m0644 %_vpath_builddir-STATICFPIC/lib/liblapack_pic.a %{buildroot}%{_libdir}
|
||||
%if 0%{?arch64}
|
||||
install -m0644 %_vpath_builddir-STATIC64FPIC/lib/liblapack_pic64.a %{buildroot}%{_libdir}
|
||||
install -m0644 %_vpath_builddir-STATIC64SUFFIXFPIC/lib/liblapack_pic64_.a %{buildroot}%{_libdir}
|
||||
|
||||
pushd %{buildroot}%{_libdir}
|
||||
for name in blas cblas lapack; do
|
||||
for i in `readelf -Ws lib${name}64_.so.%{version} | awk '{print $8}' | grep -v GLIBC |grep -v GFORTRAN |grep -v "Name" `; do echo "$i" "64_$i"; done > ${name}-prefix.def.dirty
|
||||
sort -n ${name}-prefix.def.dirty | uniq > ${name}-prefix.def
|
||||
objcopy --redefine-syms ${name}-prefix.def lib${name}64_.so.%{version} lib${name}64_.so.%{version}.fixed
|
||||
rm -rf lib${name}64_.so.%{version}
|
||||
mv lib${name}64_.so.%{version}.fixed lib${name}64_.so.%{version}
|
||||
done
|
||||
|
||||
for name in blas cblas lapack lapack_pic; do
|
||||
for i in `nm lib${name}64_.a |grep " T " | awk '{print $3}'`; do echo "$i" "64_$i"; done > ${name}-static-prefix.def.dirty
|
||||
sort -n ${name}-static-prefix.def.dirty | uniq > ${name}-static-prefix.def
|
||||
objcopy --redefine-syms ${name}-static-prefix.def lib${name}64_.a lib${name}64_.a.fixed
|
||||
rm -rf lib${name}64_.a
|
||||
mv lib${name}64_.a.fixed lib${name}64_.a
|
||||
done
|
||||
popd
|
||||
|
||||
# cleanup defs
|
||||
rm -rf %{buildroot}%{_libdir}/*.def*
|
||||
%endif
|
||||
|
||||
mkdir -p %{buildroot}%{_mandir}/man3
|
||||
chmod 755 %{buildroot}%{_mandir}/man3
|
||||
|
||||
# Blas manpages
|
||||
pushd manpages/
|
||||
mkdir -p blas/man/man3
|
||||
@ -419,90 +285,6 @@ find manpages/man/man3 -type f -printf "%{_mandir}/man3/%f*\n" > lapackmans
|
||||
cp -f manpages/blas/man/man3/* ${RPM_BUILD_ROOT}%{_mandir}/man3
|
||||
cp -f manpages/man/man3/* ${RPM_BUILD_ROOT}%{_mandir}/man3
|
||||
|
||||
# Cblas headers
|
||||
mkdir -p %{buildroot}%{_includedir}/cblas/
|
||||
cp -a CBLAS/include/*.h %{buildroot}%{_includedir}/cblas/
|
||||
|
||||
# Lapacke headers
|
||||
mkdir -p %{buildroot}%{_includedir}/lapacke/
|
||||
cp -a LAPACKE/include/*.h %{buildroot}%{_includedir}/lapacke/
|
||||
|
||||
pushd %{buildroot}%{_libdir}
|
||||
ln -sf liblapack.so.%{version} liblapack.so
|
||||
ln -sf liblapack.so.%{version} liblapack.so.%{shortver}
|
||||
ln -sf liblapack.so.%{version} liblapack.so.%{mediumver}
|
||||
ln -sf libblas.so.%{version} libblas.so
|
||||
ln -sf libblas.so.%{version} libblas.so.%{shortver}
|
||||
ln -sf libblas.so.%{version} libblas.so.%{mediumver}
|
||||
ln -sf libcblas.so.%{version} libcblas.so
|
||||
ln -sf libcblas.so.%{version} libcblas.so.%{shortver}
|
||||
ln -sf libcblas.so.%{version} libcblas.so.%{mediumver}
|
||||
ln -sf liblapacke.so.%{version} liblapacke.so
|
||||
ln -sf liblapacke.so.%{version} liblapacke.so.%{shortver}
|
||||
ln -sf liblapacke.so.%{version} liblapacke.so.%{mediumver}
|
||||
%if 0%{?arch64}
|
||||
ln -sf liblapack64.so.%{version} liblapack64.so
|
||||
ln -sf liblapack64.so.%{version} liblapack64.so.%{shortver}
|
||||
ln -sf liblapack64.so.%{version} liblapack64.so.%{mediumver}
|
||||
ln -sf libblas64.so.%{version} libblas64.so
|
||||
ln -sf libblas64.so.%{version} libblas64.so.%{shortver}
|
||||
ln -sf libblas64.so.%{version} libblas64.so.%{mediumver}
|
||||
ln -sf libcblas64.so.%{version} libcblas64.so
|
||||
ln -sf libcblas64.so.%{version} libcblas64.so.%{shortver}
|
||||
ln -sf libcblas64.so.%{version} libcblas64.so.%{mediumver}
|
||||
ln -sf liblapack64_.so.%{version} liblapack64_.so
|
||||
ln -sf liblapack64_.so.%{version} liblapack64_.so.%{shortver}
|
||||
ln -sf liblapack64_.so.%{version} liblapack64_.so.%{mediumver}
|
||||
ln -sf libblas64_.so.%{version} libblas64_.so
|
||||
ln -sf libblas64_.so.%{version} libblas64_.so.%{shortver}
|
||||
ln -sf libblas64_.so.%{version} libblas64_.so.%{mediumver}
|
||||
ln -sf libcblas64_.so.%{version} libcblas64_.so
|
||||
ln -sf libcblas64_.so.%{version} libcblas64_.so.%{shortver}
|
||||
ln -sf libcblas64_.so.%{version} libcblas64_.so.%{mediumver}
|
||||
%endif
|
||||
popd
|
||||
|
||||
# pkgconfig
|
||||
mkdir -p %{buildroot}%{_libdir}/pkgconfig/
|
||||
cp -a lapack.pc.in %{buildroot}%{_libdir}/pkgconfig/lapack.pc
|
||||
sed -i 's|@CMAKE_INSTALL_FULL_LIBDIR@|%{_libdir}|g' %{buildroot}%{_libdir}/pkgconfig/lapack.pc
|
||||
sed -i 's|@CMAKE_INSTALL_FULL_INCLUDEDIR@|%{_includedir}|g' %{buildroot}%{_libdir}/pkgconfig/lapack.pc
|
||||
sed -i 's|@LAPACK_VERSION@|%{version}|g' %{buildroot}%{_libdir}/pkgconfig/lapack.pc
|
||||
%if 0%{?arch64}
|
||||
cp -a %{buildroot}%{_libdir}/pkgconfig/lapack.pc %{buildroot}%{_libdir}/pkgconfig/lapack64.pc
|
||||
sed -i 's|-llapack|-llapack64|g' %{buildroot}%{_libdir}/pkgconfig/lapack64.pc
|
||||
sed -i 's|blas|blas64|g' %{buildroot}%{_libdir}/pkgconfig/lapack64.pc
|
||||
cp -a %{buildroot}%{_libdir}/pkgconfig/lapack.pc %{buildroot}%{_libdir}/pkgconfig/lapack64_.pc
|
||||
sed -i 's|-llapack|-llapack64_|g' %{buildroot}%{_libdir}/pkgconfig/lapack64_.pc
|
||||
sed -i 's|blas|blas64_|g' %{buildroot}%{_libdir}/pkgconfig/lapack64_.pc
|
||||
%endif
|
||||
cp -a BLAS/blas.pc.in %{buildroot}%{_libdir}/pkgconfig/blas.pc
|
||||
sed -i 's|@CMAKE_INSTALL_FULL_LIBDIR@|%{_libdir}|g' %{buildroot}%{_libdir}/pkgconfig/blas.pc
|
||||
sed -i 's|@CMAKE_INSTALL_FULL_INCLUDEDIR@|%{_includedir}|g' %{buildroot}%{_libdir}/pkgconfig/blas.pc
|
||||
sed -i 's|@LAPACK_VERSION@|%{version}|g' %{buildroot}%{_libdir}/pkgconfig/blas.pc
|
||||
%if 0%{?arch64}
|
||||
cp -a %{buildroot}%{_libdir}/pkgconfig/blas.pc %{buildroot}%{_libdir}/pkgconfig/blas64.pc
|
||||
sed -i 's|-lblas|-lblas64|g' %{buildroot}%{_libdir}/pkgconfig/blas64.pc
|
||||
cp -a %{buildroot}%{_libdir}/pkgconfig/blas.pc %{buildroot}%{_libdir}/pkgconfig/blas64_.pc
|
||||
sed -i 's|-lblas|-lblas64_|g' %{buildroot}%{_libdir}/pkgconfig/blas64_.pc
|
||||
%endif
|
||||
cp -a LAPACKE/lapacke.pc.in %{buildroot}%{_libdir}/pkgconfig/lapacke.pc
|
||||
sed -i 's|@CMAKE_INSTALL_FULL_LIBDIR@|%{_libdir}|g' %{buildroot}%{_libdir}/pkgconfig/lapacke.pc
|
||||
sed -i 's|@CMAKE_INSTALL_FULL_INCLUDEDIR@|%{_includedir}/lapacke|g' %{buildroot}%{_libdir}/pkgconfig/lapacke.pc
|
||||
sed -i 's|@LAPACK_VERSION@|%{version}|g' %{buildroot}%{_libdir}/pkgconfig/lapacke.pc
|
||||
cp -a CBLAS/cblas.pc.in %{buildroot}%{_libdir}/pkgconfig/cblas.pc
|
||||
sed -i 's|@CMAKE_INSTALL_FULL_LIBDIR@|%{_libdir}|g' %{buildroot}%{_libdir}/pkgconfig/cblas.pc
|
||||
sed -i 's|@CMAKE_INSTALL_FULL_INCLUDEDIR@|%{_includedir}/cblas|g' %{buildroot}%{_libdir}/pkgconfig/cblas.pc
|
||||
sed -i 's|@LAPACK_VERSION@|%{version}|g' %{buildroot}%{_libdir}/pkgconfig/cblas.pc
|
||||
%if 0%{?arch64}
|
||||
cp -a %{buildroot}%{_libdir}/pkgconfig/cblas.pc %{buildroot}%{_libdir}/pkgconfig/cblas64.pc
|
||||
sed -i 's|-lcblas|-lcblas64|g' %{buildroot}%{_libdir}/pkgconfig/cblas64.pc
|
||||
sed -i 's|Requires.private: blas|Requires.private: blas64|g' %{buildroot}%{_libdir}/pkgconfig/cblas64.pc
|
||||
cp -a %{buildroot}%{_libdir}/pkgconfig/cblas.pc %{buildroot}%{_libdir}/pkgconfig/cblas64_.pc
|
||||
sed -i 's|-lcblas|-lcblas64_|g' %{buildroot}%{_libdir}/pkgconfig/cblas64_.pc
|
||||
sed -i 's|Requires.private: blas|Requires.private: blas64_|g' %{buildroot}%{_libdir}/pkgconfig/cblas64_.pc
|
||||
%endif
|
||||
|
||||
%ldconfig_scriptlets
|
||||
|
||||
%ldconfig_scriptlets -n blas
|
||||
@ -519,15 +301,20 @@ sed -i 's|Requires.private: blas|Requires.private: blas64_|g' %{buildroot}%{_lib
|
||||
%doc README.md LICENSE lapackqref.ps
|
||||
%{_libdir}/liblapack.so.*
|
||||
%{_libdir}/liblapacke.so.*
|
||||
%{_libdir}/libtmglib.so.*
|
||||
|
||||
%files devel
|
||||
%{_includedir}/lapacke/
|
||||
%{_includedir}/lapack*.h
|
||||
%{_libdir}/liblapack.so
|
||||
%{_libdir}/liblapacke.so
|
||||
%{_libdir}/libtmglib.so
|
||||
%{_libdir}/cmake/lapack-*
|
||||
%{_libdir}/cmake/lapacke-*
|
||||
%{_libdir}/pkgconfig/lapack.pc
|
||||
%{_libdir}/pkgconfig/lapacke.pc
|
||||
%if 0%{?arch64}
|
||||
%{_libdir}/liblapack64.so
|
||||
%{_libdir}/cmake/lapack64*
|
||||
%{_libdir}/pkgconfig/lapack64.pc
|
||||
%{_libdir}/liblapack64_.so
|
||||
%{_libdir}/pkgconfig/lapack64_.pc
|
||||
@ -537,6 +324,7 @@ sed -i 's|Requires.private: blas|Requires.private: blas64_|g' %{buildroot}%{_lib
|
||||
%{_libdir}/liblapack.a
|
||||
%{_libdir}/liblapack_pic.a
|
||||
%{_libdir}/liblapacke.a
|
||||
%{_libdir}/libtmglib.a
|
||||
%if 0%{?arch64}
|
||||
%{_libdir}/liblapack64.a
|
||||
%{_libdir}/liblapack_pic64.a
|
||||
@ -550,14 +338,16 @@ sed -i 's|Requires.private: blas|Requires.private: blas64_|g' %{buildroot}%{_lib
|
||||
%{_libdir}/libcblas.so.*
|
||||
|
||||
%files -n blas-devel
|
||||
%{_includedir}/cblas/
|
||||
%{_includedir}/cblas*.h
|
||||
%{_libdir}/libblas.so
|
||||
%{_libdir}/libcblas.so
|
||||
%{_libdir}/cmake/cblas-*
|
||||
%{_libdir}/pkgconfig/blas.pc
|
||||
%{_libdir}/pkgconfig/cblas.pc
|
||||
%if 0%{?arch64}
|
||||
%{_libdir}/libblas64.so
|
||||
%{_libdir}/libcblas64.so
|
||||
%{_libdir}/cmake/cblas64*
|
||||
%{_libdir}/pkgconfig/blas64.pc
|
||||
%{_libdir}/pkgconfig/cblas64.pc
|
||||
%{_libdir}/libblas64_.so
|
||||
@ -597,6 +387,10 @@ sed -i 's|Requires.private: blas|Requires.private: blas64_|g' %{buildroot}%{_lib
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Fri Apr 9 2021 Tom Callaway <spot@fedoraproject.org> - 3.9.1-1
|
||||
- 3.9.1
|
||||
- use upstream cmake build (no more hacked up Makefiles, huzzah)
|
||||
|
||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.9.0-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
|
4
sources
4
sources
@ -1,2 +1,2 @@
|
||||
SHA512 (manpages.tgz) = 75184bbfac90f46e4fbb25b341f00c260904b5f3174084022c53c686a5181bb678fc1ec948f419d33890cb5769a60ca1000964e4bf6cc89438552e8b8fe45f2a
|
||||
SHA512 (v3.9.0.tar.gz) = 424956ad941a60a4b71e0d451ad48db12a692f8a71a90f3ca7f71d6ecc1922f392746ea84df1c47a46577ed2db32e9e47ec44ad248207c5ac7da179becb712ef
|
||||
SHA512 (v3.9.1.tar.gz) = 1c70892ce22eb1f5c0be1e0384d00dc876622e6254e853616eb7c0379c5d1ecf2f1f94d06389dbfba06b78484daf625d899306a9dc0b31a0646320c814022fdb
|
||||
SHA512 (manpages.tgz) = ba26b5866d3a6b40da0014a1b207683da4d1d9ce0bd62f4bcdf8bb4a60812f785bfb70fe60b5043ac43c2a5dc7729a83e777f1a3af7b532782a9c8912967c6d4
|
||||
|
Loading…
Reference in New Issue
Block a user