Blame SPECS/openblas.spec

b3c4c8
%bcond_with system_lapack
b3c4c8
# Version of bundled lapack
b3c4c8
%global lapackver 3.9.1
b3c4c8
b3c4c8
# DO NOT "CLEAN UP" OR MODIFY THIS SPEC FILE WITHOUT ASKING THE
b3c4c8
# MAINTAINER FIRST!
b3c4c8
#
b3c4c8
# OpenBLAS is hand written assembler code and it has a limited number
b3c4c8
# of supported architectures. Don't enable any new architectures /
b3c4c8
# processors a) without checking that it is actually supported and b)
b3c4c8
# without modifying the target flags.
b3c4c8
#
b3c4c8
# The same spec is also used on the EPEL branches, meaninng that some
b3c4c8
# "obsoleted" features are still kept in the spec.
b3c4c8
b3c4c8
Name:           openblas
b3c4c8
Version:        0.3.15
a4c904
Release:        3%{?dist}
b3c4c8
Summary:        An optimized BLAS library based on GotoBLAS2
b3c4c8
License:        BSD
b3c4c8
URL:            https://github.com/xianyi/OpenBLAS/
b3c4c8
Source0:        https://github.com/xianyi/OpenBLAS/archive/v%{version}/openblas-%{version}.tar.gz
b3c4c8
# Use system lapack
b3c4c8
Patch0:         openblas-0.2.15-system_lapack.patch
b3c4c8
# Drop extra p from threaded library name
b3c4c8
Patch1:         openblas-0.2.5-libname.patch
b3c4c8
# Don't use constructor priorities on too old architectures
b3c4c8
Patch2:         openblas-0.2.15-constructor.patch
b3c4c8
# Supply the proper flags to the test makefile
b3c4c8
Patch3:         openblas-0.3.11-tests.patch
a4c904
# Fix out of bounds read in ?llarv (Reference-LAPACK PR 625)
a4c904
Patch4:         openblas-0.3.15-out-of-bounds-read.patch
b3c4c8
b3c4c8
BuildRequires: make
b3c4c8
BuildRequires:  gcc
b3c4c8
BuildRequires:  gcc-c++
b3c4c8
BuildRequires:  gcc-gfortran
b3c4c8
BuildRequires:  perl-devel
b3c4c8
BuildRequires:  multilib-rpm-config
b3c4c8
b3c4c8
# Rblas library is no longer necessary
b3c4c8
%if 0%{?fedora} >= 31 || 0%{?rhel} >= 8
b3c4c8
Obsoletes:      %{name}-Rblas < %{version}-%{release}
b3c4c8
%endif
b3c4c8
b3c4c8
# Do we have execstack?
b3c4c8
%if 0%{?rhel} == 7
b3c4c8
%ifarch ppc64le aarch64
b3c4c8
%global execstack 0
b3c4c8
%else
b3c4c8
%global execstack 1
b3c4c8
%endif
b3c4c8
%else
b3c4c8
%global execstack 1
b3c4c8
%endif
b3c4c8
%if %{execstack}
b3c4c8
BuildRequires:  /usr/bin/execstack
b3c4c8
%endif
b3c4c8
b3c4c8
# LAPACK
b3c4c8
%if %{with system_lapack}
b3c4c8
%if 0%{?rhel} == 5 || 0%{?rhel} == 6
b3c4c8
BuildRequires:  lapack-devel
b3c4c8
%else
b3c4c8
BuildRequires:  lapack-static
b3c4c8
%endif
b3c4c8
# Do we have LAPACKE? (Needs at least lapack 3.4.0)
b3c4c8
%if 0%{?fedora}
b3c4c8
%global lapacke 1
b3c4c8
%else
b3c4c8
%global lapacke 0
b3c4c8
%endif
b3c4c8
b3c4c8
%else
b3c4c8
# Use bundled LAPACK
b3c4c8
%global lapacke 1
b3c4c8
Provides:       bundled(lapack) = %{lapackver}
b3c4c8
%endif
b3c4c8
b3c4c8
# Build 64-bit interface binaries?
b3c4c8
%if 0%{?__isa_bits} == 64
b3c4c8
%global build64 1
b3c4c8
%bcond_without cpp_thread_check
b3c4c8
%else
b3c4c8
%global build64 0
b3c4c8
%bcond_with cpp_thread_check
b3c4c8
%endif
b3c4c8
b3c4c8
%if %{with system_lapack}
b3c4c8
%if %build64
b3c4c8
BuildRequires:  lapack64-static
b3c4c8
%endif
b3c4c8
%endif
b3c4c8
b3c4c8
# Upstream supports the package only on these architectures.
b3c4c8
# Runtime processor detection is not available on other archs.
b3c4c8
ExclusiveArch:  %{openblas_arches}
b3c4c8
b3c4c8
%global base_description \
b3c4c8
OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD \
b3c4c8
version. The project is supported by the Lab of Parallel Software and \
b3c4c8
Computational Science, ISCAS. http://www.rdcps.ac.cn
b3c4c8
b3c4c8
b3c4c8
%description
b3c4c8
%{base_description}
b3c4c8
b3c4c8
%package serial
b3c4c8
Summary:        An optimized BLAS library based on GotoBLAS2, serial version
b3c4c8
Requires:       %{name} = %{version}-%{release}
b3c4c8
b3c4c8
%description serial
b3c4c8
%{base_description}
b3c4c8
b3c4c8
This package contains the sequential library compiled with a 32-bit
b3c4c8
integer interface.
b3c4c8
b3c4c8
%package openmp
b3c4c8
Summary:        An optimized BLAS library based on GotoBLAS2, OpenMP version
b3c4c8
Requires:       %{name} = %{version}-%{release}
b3c4c8
b3c4c8
%description openmp
b3c4c8
%{base_description}
b3c4c8
b3c4c8
This package contains the library compiled with OpenMP support with
b3c4c8
32-bit integer interface.
b3c4c8
b3c4c8
%package threads
b3c4c8
Summary:        An optimized BLAS library based on GotoBLAS2, pthreads version
b3c4c8
Requires:       %{name} = %{version}-%{release}
b3c4c8
b3c4c8
%description threads
b3c4c8
%{base_description}
b3c4c8
b3c4c8
This package contains the library compiled with threading support and
b3c4c8
a 32-bit integer interface.
b3c4c8
b3c4c8
%if %build64
b3c4c8
%package serial64
b3c4c8
Summary:        An optimized BLAS library based on GotoBLAS2, serial version
b3c4c8
Requires:       %{name} = %{version}-%{release}
b3c4c8
b3c4c8
%description serial64
b3c4c8
%{base_description}
b3c4c8
b3c4c8
This package contains the sequential library compiled with a 64-bit
b3c4c8
integer interface.
b3c4c8
b3c4c8
%package openmp64
b3c4c8
Summary:        An optimized BLAS library based on GotoBLAS2, OpenMP version
b3c4c8
Requires:       %{name} = %{version}-%{release}
b3c4c8
b3c4c8
%description openmp64
b3c4c8
%{base_description}
b3c4c8
b3c4c8
This package contains the library compiled with OpenMP support and
b3c4c8
64-bit integer interface.
b3c4c8
b3c4c8
%package threads64
b3c4c8
Summary:        An optimized BLAS library based on GotoBLAS2, pthreads version
b3c4c8
Requires:       %{name} = %{version}-%{release}
b3c4c8
b3c4c8
%description threads64
b3c4c8
%{base_description}
b3c4c8
b3c4c8
This package contains the library compiled with threading support and
b3c4c8
64-bit integer interface.
b3c4c8
b3c4c8
%package serial64_
b3c4c8
Summary:        An optimized BLAS library based on GotoBLAS2, serial version
b3c4c8
Requires:       %{name} = %{version}-%{release}
b3c4c8
b3c4c8
%description serial64_
b3c4c8
%{base_description}
b3c4c8
b3c4c8
This package contains the sequential library compiled with a 64-bit
b3c4c8
integer interface and a symbol name suffix.
b3c4c8
b3c4c8
%package openmp64_
b3c4c8
Summary:        An optimized BLAS library based on GotoBLAS2, OpenMP version
b3c4c8
Requires:       %{name} = %{version}-%{release}
b3c4c8
b3c4c8
%description openmp64_
b3c4c8
%{base_description}
b3c4c8
b3c4c8
This package contains the library compiled with OpenMP support and
b3c4c8
64-bit integer interface and a symbol name suffix.
b3c4c8
b3c4c8
%package threads64_
b3c4c8
Summary:        An optimized BLAS library based on GotoBLAS2, pthreads version
b3c4c8
Requires:       %{name} = %{version}-%{release}
b3c4c8
b3c4c8
%description threads64_
b3c4c8
%{base_description}
b3c4c8
b3c4c8
This package contains the library compiled with threading support and
b3c4c8
64-bit integer interface and a symbol name suffix.
b3c4c8
%endif
b3c4c8
b3c4c8
b3c4c8
%package devel
b3c4c8
Summary:        Development headers and libraries for OpenBLAS
b3c4c8
Requires:       %{name}%{?_isa} = %{version}-%{release}
b3c4c8
Requires:       %{name}-serial%{?_isa} = %{version}-%{release}
b3c4c8
Requires:       %{name}-openmp%{?_isa} = %{version}-%{release}
b3c4c8
Requires:       %{name}-threads%{?_isa} = %{version}-%{release}
b3c4c8
%if %build64
b3c4c8
Requires:       %{name}-openmp64%{?_isa} = %{version}-%{release}
b3c4c8
Requires:       %{name}-threads64%{?_isa} = %{version}-%{release}
b3c4c8
Requires:       %{name}-serial64%{?_isa} = %{version}-%{release}
b3c4c8
Requires:       %{name}-openmp64_%{?_isa} = %{version}-%{release}
b3c4c8
Requires:       %{name}-threads64_%{?_isa} = %{version}-%{release}
b3c4c8
Requires:       %{name}-serial64_%{?_isa} = %{version}-%{release}
b3c4c8
%endif
b3c4c8
Requires:       %{name}-srpm-macros
b3c4c8
b3c4c8
%description devel
b3c4c8
%{base_description}
b3c4c8
b3c4c8
This package contains the development headers and libraries.
b3c4c8
b3c4c8
%package static
b3c4c8
Summary:        Static version of OpenBLAS
b3c4c8
Requires:       %{name}-devel%{?_isa} = %{version}-%{release}
b3c4c8
b3c4c8
%description static
b3c4c8
%{base_description}
b3c4c8
b3c4c8
This package contains the static libraries.
b3c4c8
b3c4c8
b3c4c8
%prep
b3c4c8
%setup -q -c -T
b3c4c8
b3c4c8
# Untar source
b3c4c8
tar zxf %{SOURCE0}
b3c4c8
cd OpenBLAS-%{version}
b3c4c8
%if %{with system_lapack}
b3c4c8
%patch0 -p1 -b .system_lapack
b3c4c8
%endif
b3c4c8
%patch1 -p1 -b .libname
b3c4c8
%if 0%{?rhel} == 5
b3c4c8
%patch2 -p1 -b .constructor
b3c4c8
%endif
b3c4c8
%patch3 -p1 -b .tests
a4c904
%patch4 -p1 -b .out-of-bound-read
b3c4c8
b3c4c8
# Fix source permissions
b3c4c8
find -name \*.f -exec chmod 644 {} \;
b3c4c8
b3c4c8
%if %{with system_lapack}
b3c4c8
# Get rid of bundled LAPACK sources
b3c4c8
rm -rf lapack-netlib
b3c4c8
%endif
b3c4c8
b3c4c8
# Make serial, threaded and OpenMP versions; as well as 64-bit versions
b3c4c8
cd ..
b3c4c8
cp -ar OpenBLAS-%{version} openmp
b3c4c8
cp -ar OpenBLAS-%{version} threaded
b3c4c8
%if %build64
b3c4c8
for d in {serial,threaded,openmp}64{,_}; do
b3c4c8
    cp -ar OpenBLAS-%{version} $d
b3c4c8
done
b3c4c8
%endif
b3c4c8
mv OpenBLAS-%{version} serial
b3c4c8
b3c4c8
%if %{with system_lapack}
b3c4c8
# Setup 32-bit interface LAPACK
b3c4c8
mkdir netliblapack
b3c4c8
cd netliblapack
b3c4c8
ar x %{_libdir}/liblapack_pic.a
b3c4c8
# Get rid of duplicate functions. See list in Makefile of lapack directory
b3c4c8
for f in laswp getf2 getrf potf2 potrf lauu2 lauum trti2 trtri getrs; do
b3c4c8
    \rm {c,d,s,z}$f.o
b3c4c8
done
b3c4c8
b3c4c8
# LAPACKE
b3c4c8
%if %{lapacke}
b3c4c8
ar x %{_libdir}/liblapacke.a
b3c4c8
%endif
b3c4c8
b3c4c8
# Create makefile
b3c4c8
echo "TOPDIR = .." > Makefile
b3c4c8
echo "include ../Makefile.system" >> Makefile
b3c4c8
echo "COMMONOBJS = \\" >> Makefile
b3c4c8
for i in *.o; do
b3c4c8
 echo "$i \\" >> Makefile
b3c4c8
done
b3c4c8
echo -e "\n\ninclude \$(TOPDIR)/Makefile.tail" >> Makefile
b3c4c8
b3c4c8
%if %{lapacke}
b3c4c8
# Copy include files
b3c4c8
cp -a %{_includedir}/lapacke .
b3c4c8
%endif
b3c4c8
cd ..
b3c4c8
b3c4c8
# Copy in place
b3c4c8
for d in serial threaded openmp; do
b3c4c8
    cp -pr netliblapack $d
b3c4c8
done
b3c4c8
rm -rf netliblapack
b3c4c8
b3c4c8
b3c4c8
# Setup 64-bit interface LAPACK
b3c4c8
%if %build64
b3c4c8
mkdir netliblapack64
b3c4c8
cd netliblapack64
b3c4c8
ar x %{_libdir}/liblapack64_pic.a
b3c4c8
# Get rid of duplicate functions. See list in Makefile of lapack directory
b3c4c8
for f in laswp getf2 getrf potf2 potrf lauu2 lauum trti2 trtri getrs; do
b3c4c8
    \rm {c,d,s,z}$f.o
b3c4c8
done
b3c4c8
b3c4c8
# LAPACKE, no 64-bit interface
b3c4c8
%if %{lapacke}
b3c4c8
ar x %{_libdir}/liblapacke.a
b3c4c8
%endif
b3c4c8
b3c4c8
# Create makefile
b3c4c8
echo "TOPDIR = .." > Makefile
b3c4c8
echo "include ../Makefile.system" >> Makefile
b3c4c8
echo "COMMONOBJS = \\" >> Makefile
b3c4c8
for i in *.o; do
b3c4c8
    echo "$i \\" >> Makefile
b3c4c8
done
b3c4c8
echo -e "\n\ninclude \$(TOPDIR)/Makefile.tail" >> Makefile
b3c4c8
b3c4c8
%if %{lapacke}
b3c4c8
# Copy include files
b3c4c8
cp -a %{_includedir}/lapacke .
b3c4c8
%endif
b3c4c8
cd ..
b3c4c8
b3c4c8
# Copy in place
b3c4c8
for d in {serial,threaded,openmp}64{,_}; do
b3c4c8
    cp -pr netliblapack64 $d/netliblapack
b3c4c8
done
b3c4c8
rm -rf netliblapack64
b3c4c8
%endif
b3c4c8
%endif
b3c4c8
b3c4c8
%build
b3c4c8
# openblas fails to build with LTO due to undefined symbols.  These could
b3c4c8
# well be the result of the assembly code used in this package
b3c4c8
%define _lto_cflags %{nil}
b3c4c8
%if !%{lapacke}
b3c4c8
LAPACKE="NO_LAPACKE=1"
b3c4c8
%endif
b3c4c8
b3c4c8
# Maximum possible amount of processors
b3c4c8
NMAX="NUM_THREADS=128"
b3c4c8
b3c4c8
%ifarch %{ix86} x86_64
b3c4c8
TARGET="TARGET=CORE2 DYNAMIC_ARCH=1 DYNAMIC_OLDER=1"
b3c4c8
b3c4c8
# Compability for old versions of GCC
b3c4c8
%if 0%{?rhel} == 5
b3c4c8
export AVX="NO_AVX=1 NO_AVX2=1"
b3c4c8
%endif
b3c4c8
%if 0%{?rhel} == 6
b3c4c8
export AVX="NO_AVX2=1"
b3c4c8
%endif
b3c4c8
b3c4c8
%endif
b3c4c8
%ifarch armv7hl
b3c4c8
# ARM v7 still doesn't have runtime cpu detection...
b3c4c8
TARGET="TARGET=ARMV7 DYNAMIC_ARCH=0"
b3c4c8
%endif
b3c4c8
%ifarch ppc64
b3c4c8
TARGET="TARGET=POWER6 DYNAMIC_ARCH=1 DYNAMIC_OLDER=1"
b3c4c8
%endif
b3c4c8
%ifarch ppc64p7
b3c4c8
TARGET="TARGET=POWER7 DYNAMIC_ARCH=1 DYNAMIC_OLDER=1"
b3c4c8
%endif
b3c4c8
%ifarch ppc64le
b3c4c8
TARGET="TARGET=POWER8 DYNAMIC_ARCH=1 DYNAMIC_OLDER=1"
b3c4c8
%endif
b3c4c8
%ifarch aarch64
b3c4c8
TARGET="TARGET=ARMV8 DYNAMIC_ARCH=1 DYNAMIC_OLDER=1"
b3c4c8
%endif
b3c4c8
%ifarch s390x
b3c4c8
TARGET="TARGET=ZARCH_GENERIC DYNAMIC_ARCH=1 DYNAMIC_OLDER=1"
b3c4c8
%endif
b3c4c8
b3c4c8
%if 0%{?rhel} == 5
b3c4c8
# Gfortran too old to recognize -frecursive
b3c4c8
COMMON="%{optflags} -fPIC"
b3c4c8
FCOMMON="%{optflags} -fPIC"
b3c4c8
%else
b3c4c8
COMMON="%{optflags} -fPIC"
b3c4c8
FCOMMON="%{optflags} -fPIC -frecursive"
b3c4c8
%endif
b3c4c8
# Use Fedora linker flags
b3c4c8
export LDFLAGS="%{__global_ldflags}"
b3c4c8
b3c4c8
# Declare some necessary build flags
b3c4c8
COMMON="%{optflags} -fPIC"
b3c4c8
FCOMMON="$COMMON -frecursive"
b3c4c8
make -C serial     $TARGET USE_THREAD=0 USE_LOCKING=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblas"      $AVX $LAPACKE INTERFACE64=0
b3c4c8
make -C threaded   $TARGET USE_THREAD=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblasp"     $AVX $LAPACKE INTERFACE64=0
b3c4c8
b3c4c8
# USE_THREAD determines use of SMP, not of pthreads
b3c4c8
COMMON="%{optflags} -fPIC -fopenmp -pthread"
b3c4c8
FCOMMON="$COMMON -frecursive"
b3c4c8
make -C openmp     $TARGET USE_THREAD=1 USE_OPENMP=1 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblaso"     $AVX $LAPACKE INTERFACE64=0 %{with cpp_thread_check:CPP_THREAD_SAFETY_TEST=1}
b3c4c8
b3c4c8
%if %build64
b3c4c8
COMMON="%{optflags} -fPIC"
b3c4c8
FCOMMON="$COMMON -frecursive -fdefault-integer-8"
b3c4c8
make -C serial64   $TARGET USE_THREAD=0 USE_LOCKING=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblas64"    $AVX $LAPACKE INTERFACE64=1
b3c4c8
make -C threaded64 $TARGET USE_THREAD=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblasp64"   $AVX $LAPACKE INTERFACE64=1
b3c4c8
b3c4c8
COMMON="%{optflags} -fPIC -fopenmp -pthread"
b3c4c8
FCOMMON="$COMMON -frecursive -fdefault-integer-8"
b3c4c8
make -C openmp64   $TARGET USE_THREAD=1 USE_OPENMP=1 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblaso64"   $AVX $LAPACKE INTERFACE64=1 CPP_THREAD_SAFETY_TEST=1
b3c4c8
b3c4c8
COMMON="%{optflags} -fPIC"
b3c4c8
FCOMMON="$COMMON -frecursive  -fdefault-integer-8"
b3c4c8
make -C serial64_   $TARGET USE_THREAD=0 USE_LOCKING=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblas64_"  $AVX $LAPACKE INTERFACE64=1 SYMBOLSUFFIX=64_
b3c4c8
make -C threaded64_ $TARGET USE_THREAD=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblasp64_" $AVX $LAPACKE INTERFACE64=1 SYMBOLSUFFIX=64_
b3c4c8
b3c4c8
COMMON="%{optflags} -fPIC -fopenmp -pthread"
b3c4c8
FCOMMON="$COMMON -frecursive -fdefault-integer-8"
b3c4c8
make -C openmp64_   $TARGET USE_THREAD=1 USE_OPENMP=1 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblaso64_" $AVX $LAPACKE INTERFACE64=1 SYMBOLSUFFIX=64_ CPP_THREAD_SAFETY_TEST=1
b3c4c8
%endif
b3c4c8
b3c4c8
%install
b3c4c8
rm -rf %{buildroot}
b3c4c8
# Install serial library and headers
b3c4c8
make -C serial USE_THREAD=0 PREFIX=%{buildroot} OPENBLAS_LIBRARY_DIR=%{buildroot}%{_libdir} OPENBLAS_INCLUDE_DIR=%{buildroot}%{_includedir}/%name OPENBLAS_BINARY_DIR=%{buildroot}%{_bindir} OPENBLAS_CMAKE_DIR=%{buildroot}%{_libdir}/cmake install
b3c4c8
b3c4c8
# Copy lapacke include files
b3c4c8
%if %{with system_lapack} && %{lapacke}
b3c4c8
cp -a %{_includedir}/lapacke %{buildroot}%{_includedir}/%{name}
b3c4c8
%endif
b3c4c8
b3c4c8
# Fix i686-x86_64 multilib difference
b3c4c8
%multilib_fix_c_header --file %{_includedir}/openblas/openblas_config.h
b3c4c8
b3c4c8
# Fix name of libraries: runtime CPU detection has none
b3c4c8
suffix=""
b3c4c8
# but archs that don't have it do have one
b3c4c8
%ifarch armv7hl
b3c4c8
suffix="_armv7"
b3c4c8
%endif
b3c4c8
slibname=`basename %{buildroot}%{_libdir}/libopenblas${suffix}-*.so .so`
b3c4c8
mv %{buildroot}%{_libdir}/${slibname}.a %{buildroot}%{_libdir}/lib%{name}.a
b3c4c8
if [[ "$suffix" != "" ]]; then
b3c4c8
   sname=$(echo $slibname | sed "s|$suffix||g")
b3c4c8
   mv %{buildroot}%{_libdir}/${slibname}.so %{buildroot}%{_libdir}/${sname}.so
b3c4c8
else
b3c4c8
   sname=${slibname}
b3c4c8
fi
b3c4c8
b3c4c8
# Install the OpenMP library
b3c4c8
olibname=`echo ${slibname} | sed "s|lib%{name}|lib%{name}o|g"`
b3c4c8
install -D -p -m 644 openmp/${olibname}.a %{buildroot}%{_libdir}/lib%{name}o.a
b3c4c8
if [[ "$suffix" != "" ]]; then
b3c4c8
   oname=$(echo $olibname | sed "s|$suffix||g")
b3c4c8
else
b3c4c8
   oname=${olibname}
b3c4c8
fi
b3c4c8
install -D -p -m 755 openmp/${olibname}.so %{buildroot}%{_libdir}/${oname}.so
b3c4c8
b3c4c8
# Install the threaded library
b3c4c8
plibname=`echo ${slibname} | sed "s|lib%{name}|lib%{name}p|g"`
b3c4c8
install -D -p -m 644 threaded/${plibname}.a %{buildroot}%{_libdir}/lib%{name}p.a
b3c4c8
if [[ "$suffix" != "" ]]; then
b3c4c8
   pname=$(echo $plibname | sed "s|$suffix||g")
b3c4c8
else
b3c4c8
   pname=${plibname}
b3c4c8
fi
b3c4c8
install -D -p -m 755 threaded/${plibname}.so %{buildroot}%{_libdir}/${pname}.so
b3c4c8
b3c4c8
# Install the 64-bit interface libraries
b3c4c8
%if %build64
b3c4c8
slibname64=`echo ${slibname} | sed "s|lib%{name}|lib%{name}64|g"`
b3c4c8
install -D -p -m 644 serial64/${slibname64}.a %{buildroot}%{_libdir}/lib%{name}64.a
b3c4c8
slibname64_=`echo ${slibname} | sed "s|lib%{name}|lib%{name}64_|g"`
b3c4c8
install -D -p -m 644 serial64_/${slibname64_}.a %{buildroot}%{_libdir}/lib%{name}64_.a
b3c4c8
b3c4c8
if [[ "$suffix" != "" ]]; then
b3c4c8
   sname64=$(echo ${slibname64} | sed "s|$suffix||g")
b3c4c8
   sname64_=$(echo ${slibname64_} | sed "s|$suffix||g")
b3c4c8
else
b3c4c8
   sname64=${slibname64}
b3c4c8
   sname64_=${slibname64_}
b3c4c8
fi
b3c4c8
install -D -p -m 755 serial64/${slibname64}.so %{buildroot}%{_libdir}/${sname64}.so
b3c4c8
install -D -p -m 755 serial64_/${slibname64_}.so %{buildroot}%{_libdir}/${sname64_}.so
b3c4c8
b3c4c8
olibname64=`echo ${slibname} | sed "s|lib%{name}|lib%{name}o64|g"`
b3c4c8
install -D -p -m 644 openmp64/${olibname64}.a %{buildroot}%{_libdir}/lib%{name}o64.a
b3c4c8
olibname64_=`echo ${slibname} | sed "s|lib%{name}|lib%{name}o64_|g"`
b3c4c8
install -D -p -m 644 openmp64_/${olibname64_}.a %{buildroot}%{_libdir}/lib%{name}o64_.a
b3c4c8
b3c4c8
if [[ "$suffix" != "" ]]; then
b3c4c8
   oname64=$(echo ${olibname64} | sed "s|$suffix||g")
b3c4c8
   oname64_=$(echo ${olibname64_} | sed "s|$suffix||g")
b3c4c8
else
b3c4c8
   oname64=${olibname64}
b3c4c8
   oname64_=${olibname64_}
b3c4c8
fi
b3c4c8
install -D -p -m 755 openmp64/${olibname64}.so %{buildroot}%{_libdir}/${oname64}.so
b3c4c8
install -D -p -m 755 openmp64_/${olibname64_}.so %{buildroot}%{_libdir}/${oname64_}.so
b3c4c8
b3c4c8
plibname64=`echo ${slibname} | sed "s|lib%{name}|lib%{name}p64|g"`
b3c4c8
install -D -p -m 644 threaded64/${plibname64}.a %{buildroot}%{_libdir}/lib%{name}p64.a
b3c4c8
plibname64_=`echo ${slibname} | sed "s|lib%{name}|lib%{name}p64_|g"`
b3c4c8
install -D -p -m 644 threaded64_/${plibname64_}.a %{buildroot}%{_libdir}/lib%{name}p64_.a
b3c4c8
b3c4c8
if [[ "$suffix" != "" ]]; then
b3c4c8
   pname64=$(echo $plibname64 | sed "s|$suffix||g")
b3c4c8
   pname64_=$(echo $plibname64_ | sed "s|$suffix||g")
b3c4c8
else
b3c4c8
   pname64=${plibname64}
b3c4c8
   pname64_=${plibname64_}
b3c4c8
fi
b3c4c8
install -D -p -m 755 threaded64/${plibname64}.so %{buildroot}%{_libdir}/${pname64}.so
b3c4c8
install -D -p -m 755 threaded64_/${plibname64_}.so %{buildroot}%{_libdir}/${pname64_}.so
b3c4c8
%endif
b3c4c8
b3c4c8
# Fix symlinks
b3c4c8
pushd %{buildroot}%{_libdir}
b3c4c8
# Serial libraries
b3c4c8
ln -sf ${sname}.so lib%{name}.so
b3c4c8
ln -sf ${sname}.so lib%{name}.so.0
b3c4c8
# OpenMP libraries
b3c4c8
ln -sf ${oname}.so lib%{name}o.so
b3c4c8
ln -sf ${oname}.so lib%{name}o.so.0
b3c4c8
# Threaded libraries
b3c4c8
ln -sf ${pname}.so lib%{name}p.so
b3c4c8
ln -sf ${pname}.so lib%{name}p.so.0
b3c4c8
b3c4c8
%if %build64
b3c4c8
# Serial libraries
b3c4c8
ln -sf ${sname64}.so lib%{name}64.so
b3c4c8
ln -sf ${sname64}.so lib%{name}64.so.0
b3c4c8
ln -sf ${sname64_}.so lib%{name}64_.so
b3c4c8
ln -sf ${sname64_}.so lib%{name}64_.so.0
b3c4c8
# OpenMP libraries
b3c4c8
ln -sf ${oname64}.so lib%{name}o64.so
b3c4c8
ln -sf ${oname64}.so lib%{name}o64.so.0
b3c4c8
ln -sf ${oname64_}.so lib%{name}o64_.so
b3c4c8
ln -sf ${oname64_}.so lib%{name}o64_.so.0
b3c4c8
# Threaded libraries
b3c4c8
ln -sf ${pname64}.so lib%{name}p64.so
b3c4c8
ln -sf ${pname64}.so lib%{name}p64.so.0
b3c4c8
ln -sf ${pname64_}.so lib%{name}p64_.so
b3c4c8
ln -sf ${pname64_}.so lib%{name}p64_.so.0
b3c4c8
%endif
b3c4c8
b3c4c8
%if %{execstack}
b3c4c8
# Get rid of executable stacks
b3c4c8
for lib in %{buildroot}%{_libdir}/libopenblas*.so; do
b3c4c8
 execstack -c $lib
b3c4c8
done
b3c4c8
%endif
b3c4c8
b3c4c8
# Get rid of generated CMake config
b3c4c8
rm -rf %{buildroot}%{_libdir}/cmake
b3c4c8
# Get rid of generated pkgconfig
b3c4c8
rm -rf %{buildroot}%{_libdir}/pkgconfig
b3c4c8
b3c4c8
%ldconfig_scriptlets
b3c4c8
b3c4c8
%ldconfig_scriptlets openmp
b3c4c8
b3c4c8
%ldconfig_scriptlets threads
b3c4c8
b3c4c8
%if %build64
b3c4c8
%ldconfig_scriptlets openmp64
b3c4c8
%ldconfig_scriptlets openmp64_
b3c4c8
b3c4c8
%ldconfig_scriptlets serial64
b3c4c8
%ldconfig_scriptlets serial64_
b3c4c8
b3c4c8
%ldconfig_scriptlets threads64
b3c4c8
%ldconfig_scriptlets threads64_
b3c4c8
%endif
b3c4c8
b3c4c8
%files
b3c4c8
%license serial/LICENSE
b3c4c8
%doc serial/Changelog.txt serial/GotoBLAS* 
b3c4c8
b3c4c8
%files serial
b3c4c8
%{_libdir}/lib%{name}-*.so
b3c4c8
%{_libdir}/lib%{name}.so.*
b3c4c8
b3c4c8
%files openmp
b3c4c8
%{_libdir}/lib%{name}o-*.so
b3c4c8
%{_libdir}/lib%{name}o.so.*
b3c4c8
b3c4c8
%files threads
b3c4c8
%{_libdir}/lib%{name}p-*.so
b3c4c8
%{_libdir}/lib%{name}p.so.*
b3c4c8
b3c4c8
%if %build64
b3c4c8
%files serial64
b3c4c8
%{_libdir}/lib%{name}64-*.so
b3c4c8
%{_libdir}/lib%{name}64.so.*
b3c4c8
b3c4c8
%files openmp64
b3c4c8
%{_libdir}/lib%{name}o64-*.so
b3c4c8
%{_libdir}/lib%{name}o64.so.*
b3c4c8
b3c4c8
%files threads64
b3c4c8
%{_libdir}/lib%{name}p64-*.so
b3c4c8
%{_libdir}/lib%{name}p64.so.*
b3c4c8
b3c4c8
%files serial64_
b3c4c8
%{_libdir}/lib%{name}64_-*.so
b3c4c8
%{_libdir}/lib%{name}64_.so.*
b3c4c8
b3c4c8
%files openmp64_
b3c4c8
%{_libdir}/lib%{name}o64_-*.so
b3c4c8
%{_libdir}/lib%{name}o64_.so.*
b3c4c8
b3c4c8
%files threads64_
b3c4c8
%{_libdir}/lib%{name}p64_-*.so
b3c4c8
%{_libdir}/lib%{name}p64_.so.*
b3c4c8
%endif
b3c4c8
b3c4c8
%files devel
b3c4c8
%{_includedir}/%{name}/
b3c4c8
%{_libdir}/lib%{name}.so
b3c4c8
%{_libdir}/lib%{name}o.so
b3c4c8
%{_libdir}/lib%{name}p.so
b3c4c8
%if %build64
b3c4c8
%{_libdir}/lib%{name}64.so
b3c4c8
%{_libdir}/lib%{name}o64.so
b3c4c8
%{_libdir}/lib%{name}p64.so
b3c4c8
%{_libdir}/lib%{name}64_.so
b3c4c8
%{_libdir}/lib%{name}o64_.so
b3c4c8
%{_libdir}/lib%{name}p64_.so
b3c4c8
%endif
b3c4c8
b3c4c8
%files static
b3c4c8
%{_libdir}/lib%{name}.a
b3c4c8
%{_libdir}/lib%{name}o.a
b3c4c8
%{_libdir}/lib%{name}p.a
b3c4c8
%if %build64
b3c4c8
%{_libdir}/lib%{name}64.a
b3c4c8
%{_libdir}/lib%{name}o64.a
b3c4c8
%{_libdir}/lib%{name}p64.a
b3c4c8
%{_libdir}/lib%{name}64_.a
b3c4c8
%{_libdir}/lib%{name}o64_.a
b3c4c8
%{_libdir}/lib%{name}p64_.a
b3c4c8
%endif
b3c4c8
b3c4c8
%changelog
a4c904
* Tue Jan 11 2022 Honza Horak <hhorak@redhat.com> - 0.3.15-3
a4c904
- Fix out of bounds read in ?llarv (Reference-LAPACK PR 625)
a4c904
  (CVE-2021-4048)
a4c904
  Resolves: #2029855
a4c904
b3c4c8
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 0.3.15-2
b3c4c8
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
b3c4c8
  Related: rhbz#1991688
b3c4c8
b3c4c8
* Thu May 06 2021 Nikola Forró <nforro@redhat.com> - 0.3.15-1
b3c4c8
- Update to 0.3.15.
b3c4c8
  related: #1870676
b3c4c8
  related: #1870033
b3c4c8
b3c4c8
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 0.3.13-2
b3c4c8
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
b3c4c8
b3c4c8
* Tue Apr 06 2021 Nikola Forró <nforro@redhat.com> - 0.3.13-1
b3c4c8
- Update to 0.3.13.
b3c4c8
  resolves: #1870676
b3c4c8
  related: #1870033
b3c4c8
b3c4c8
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.12-2
b3c4c8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
b3c4c8
b3c4c8
* Sun Oct 25 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.12-1
b3c4c8
- Update to 0.3.12.
b3c4c8
b3c4c8
* Sun Oct 18 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.11-1
b3c4c8
- Update to 0.3.11.
b3c4c8
b3c4c8
* Fri Sep 18 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.10-6
b3c4c8
- Fix incorrect result of cblas_zdotc_sub on ppc64le (BZ #1878449).
b3c4c8
b3c4c8
* Sat Aug 29 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.10-5
b3c4c8
- Fix unresolved bfloat16 datatype (BZ #1873667).
b3c4c8
b3c4c8
* Fri Aug 14 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.10-4
b3c4c8
- Obsolete Rblas package (BZ #1849966).
b3c4c8
b3c4c8
* Tue Aug 11 2020 Jeff Law <law@redhat.com> - 0.3.10-3
b3c4c8
- Disable LTO
b3c4c8
b3c4c8
* Tue Jul 28 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.10-2
b3c4c8
- Include upstream patch 2672 to fix test suite on systems with few CPUs.
b3c4c8
b3c4c8
* Mon Jun 15 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.10-1
b3c4c8
- Update to 0.3.10.
b3c4c8
b3c4c8
* Thu May 28 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.9-3
b3c4c8
- Enable USE_LOCKING in the sequential versions of the library for
b3c4c8
  thread safety.
b3c4c8
b3c4c8
* Thu Apr 02 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.9-2
b3c4c8
- Patch for BZ #1820131.
b3c4c8
b3c4c8
* Mon Mar 02 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.9-1
b3c4c8
- Update to 0.3.9.
b3c4c8
b3c4c8
* Tue Feb 11 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.8-1
b3c4c8
- Update to 0.3.8; dynamic runtime cpu detection on all architectures.
b3c4c8
- Also updates bundled LAPACK to 3.9.0.
b3c4c8
b3c4c8
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.7-3
b3c4c8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
b3c4c8
b3c4c8
* Wed Dec 11 2019 Dominik Mierzejewski <rpm@greysector.net> - 0.3.7-2
b3c4c8
- enable C++ thread safety test where possible
b3c4c8
b3c4c8
* Mon Aug 12 2019 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.7-1
b3c4c8
- Update to 0.3.7.
b3c4c8
b3c4c8
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.6-3
b3c4c8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
b3c4c8
b3c4c8
* Tue Jul 02 2019 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.6-2
b3c4c8
- Rebuild since older build doesn't show up in updates system.
b3c4c8
b3c4c8
* Tue Apr 30 2019 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.6-1
b3c4c8
- Update to 0.3.6.
b3c4c8
b3c4c8
* Tue Feb 26 2019 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.5-5
b3c4c8
- Even more assembly kernel patches.
b3c4c8
b3c4c8
* Mon Feb 25 2019 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.5-4
b3c4c8
- Another assembly kernel patch.
b3c4c8
b3c4c8
* Sun Feb 17 2019 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.5-3
b3c4c8
- Patch assembly kernels to satisfy gcc 9 demands.
b3c4c8
b3c4c8
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.5-2
b3c4c8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
b3c4c8
b3c4c8
* Mon Jan 07 2019 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.5-1
b3c4c8
- Update to 0.3.5, with dynamic CPU detection on aarch64.
b3c4c8
b3c4c8
* Fri Nov 09 2018 Nikola Forró <nforro@redhat.com> - 0.3.3-3
b3c4c8
- Fix i686-x86_64 multilib difference.
b3c4c8
- Get rid of executable stack in libRblas.so.
b3c4c8
b3c4c8
* Sat Sep 29 2018 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.3-2
b3c4c8
- Fix segfault (BZ #1634060).
b3c4c8
b3c4c8
* Sun Sep 09 2018 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.3-1
b3c4c8
- Update to 0.3.3.
b3c4c8
b3c4c8
* Wed Aug 29 2018 Dan Horák <dan[at]danny.cz> - 0.3.2-5
b3c4c8
- Fix precision in generic target on s390x
b3c4c8
b3c4c8
* Fri Aug 24 2018 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.2-4
b3c4c8
- Patch to avoid threading issues.
b3c4c8
b3c4c8
* Fri Aug 24 2018 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.2-3
b3c4c8
- Add missing %%{optflags} to COMMON (see discussion in #1619074).
b3c4c8
b3c4c8
* Wed Aug 15 2018 Dan Horák <dan[at]danny.cz> - 0.3.2-2
b3c4c8
- Explicitly set the target to generic on s390x to avoid surprises (#1615760)
b3c4c8
b3c4c8
* Thu Aug 02 2018 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.2-1
b3c4c8
- Update to 0.3.2.
b3c4c8
b3c4c8
* Sun Jul 22 2018 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.1-3
b3c4c8
- Fix crash with multiple instances (BZ #1605231).
b3c4c8
b3c4c8
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.1-2
b3c4c8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
b3c4c8
b3c4c8
* Sun Jul 01 2018 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.1-1
b3c4c8
- Update to 0.3.1.
b3c4c8
b3c4c8
* Mon Jun 11 2018 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.0-2
b3c4c8
- Split sequential libraries from core package to openblas-serial.
b3c4c8
b3c4c8
* Thu May 24 2018 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.0-1
b3c4c8
- Update to 0.3.0.
b3c4c8
b3c4c8
* Thu Mar 22 2018 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.20-10
b3c4c8
- Disable CPU affinity unintentionally enabled upstream (BZ #1558091).
b3c4c8
b3c4c8
* Sun Mar 04 2018 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.20-9
b3c4c8
- Clean up obsolete conditionals for 64 bit builds in spec file.
b3c4c8
b3c4c8
* Tue Feb 27 2018 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.20-8
b3c4c8
- Use %%__global_ldflags instead of %%build_ldflags that doesn't work on
b3c4c8
  all distributions.
b3c4c8
b3c4c8
* Tue Feb 27 2018 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.20-7
b3c4c8
- Honor Fedora linker flags (BZ #1548750).
b3c4c8
b3c4c8
* Wed Feb 14 2018 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.20-6
b3c4c8
- Drop arch-dependent buildrequires (BZ #1545201); no changes to package
b3c4c8
  (only affects packages custom built with --with system_lapack).
b3c4c8
b3c4c8
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.20-5
b3c4c8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
b3c4c8
b3c4c8
* Tue Jan 30 2018 Florian Weimer <fweimer@redhat.com> - 0.2.20-4
b3c4c8
- Rebuild for GCC 8
b3c4c8
b3c4c8
* Thu Sep 14 2017 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.20-3
b3c4c8
- Simplify spec, dropping extra lib arguments.
b3c4c8
b3c4c8
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.20-2
b3c4c8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
b3c4c8
b3c4c8
* Fri Jul 28 2017 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.20-1
b3c4c8
- Update to 0.2.20.
b3c4c8
b3c4c8
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.19-12
b3c4c8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
b3c4c8
b3c4c8
* Mon May 29 2017 Dan Horák <dan[at]danny.cz> - 0.2.19-11
b3c4c8
- add generic s390x support (#1442048)
b3c4c8
b3c4c8
* Mon Mar 20 2017 Orion Poplawski <orion@cora.nwra.com> - 0.2.19-10
b3c4c8
- Drop openblas-srpm-macros version requirement
b3c4c8
b3c4c8
* Mon Mar 20 2017 Orion Poplawski <orion@cora.nwra.com> - 0.2.19-9
b3c4c8
- Move openblas-srpm-macros to separate package
b3c4c8
b3c4c8
* Wed Mar 15 2017 Orion Poplawski <orion@cora.nwra.com> - 0.2.19-8
b3c4c8
- Define %%openblas_arches for dependent packages to use
b3c4c8
b3c4c8
* Mon Feb 13 2017 Björn Esser <besser82@fedoraproject.org> - 0.2.19-7
b3c4c8
- Upgrade Patch4 to hopefully fully fix the issues on PPC64LE
b3c4c8
b3c4c8
* Fri Feb 03 2017 Björn Esser <besser82@fedoraproject.org> - 0.2.19-6
b3c4c8
- Add Patch4 to fix register clobbers (BZ #1417385)
b3c4c8
b3c4c8
* Sat Jan 28 2017 Björn Esser <besser82@fedoraproject.org> - 0.2.19-5
b3c4c8
- Rebuilt for GCC-7
b3c4c8
b3c4c8
* Wed Dec 14 2016 Tom Callaway <spot@fedoraproject.org> - 0.2.19-4
b3c4c8
- build a copy of openblas that thinks it is Rblas
b3c4c8
  There are no code changes, except for libname and soname, it is identical to libopenblas.so.0
b3c4c8
  Unfortunately, while R itself is fine using a symlink from libopenblas.so.0 to libRblas.so
b3c4c8
  the larger R ecosystem becomes unhappy in this scenario.
b3c4c8
b3c4c8
* Thu Nov 03 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.19-3
b3c4c8
- Fix linkage of OpenMP libraries (BZ #1391491).
b3c4c8
b3c4c8
* Thu Oct 20 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.19-2
b3c4c8
- Actually use 8-bit integers in 64-bit interfaces (BZ #1382916).
b3c4c8
b3c4c8
* Tue Oct 18 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.19-1
b3c4c8
- Update to 0.2.19.
b3c4c8
b3c4c8
* Wed Aug 17 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.18-5
b3c4c8
- Revert "minor spec cleanups" by Peter Robinson.
b3c4c8
b3c4c8
* Wed Jul 13 2016 Peter Robinson <pbrobinson@fedoraproject.org> 0.2.18-4
b3c4c8
- aarch64 has execstack in Fedora
b3c4c8
- Minor spec cleanups
b3c4c8
b3c4c8
* Wed Jul 13 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.18-3
b3c4c8
- Enable ppc64 and ppc64p7 architectures
b3c4c8
  based on Dan Horák's patch (BZ #1356189).
b3c4c8
- Supply proper make flags to the tests.
b3c4c8
b3c4c8
* Tue Jul 12 2016 Jeff Bastian <jbastian@redhat.com> - 0.2.18-2
b3c4c8
- update for aarch64
b3c4c8
b3c4c8
* Tue Apr 12 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.18-1
b3c4c8
- Update to 0.2.18.
b3c4c8
b3c4c8
* Wed Apr 6 2016 Orion Poplawski <orion@cora.nwra.com> - 0.2.17-1
b3c4c8
- Update to 0.2.17
b3c4c8
b3c4c8
* Fri Mar 18 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.16-3
b3c4c8
- Include deprecated LAPACK functions.
b3c4c8
b3c4c8
* Wed Mar 16 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.16-2
b3c4c8
- Fix library suffix on ppc64le.
b3c4c8
b3c4c8
* Tue Mar 15 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.16-1
b3c4c8
- Update to 0.2.16.
b3c4c8
b3c4c8
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.15-6
b3c4c8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
b3c4c8
b3c4c8
* Tue Jan 12 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.15-5
b3c4c8
- Need to use -frecursive to make LAPACK thread safe.
b3c4c8
b3c4c8
* Tue Jan 12 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.15-4
b3c4c8
- Add version to bundled lapack provide.
b3c4c8
b3c4c8
* Mon Jan 11 2016 Orion Poplawski <orion@cora.nwra.com> - 0.2.15-3
b3c4c8
- Allow conditional build with or without system lapack, default to without
b3c4c8
b3c4c8
* Tue Dec 01 2015 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.15-2
b3c4c8
- Enable armv7hl and ppc64le architectures.
b3c4c8
- Build versions of the 64-bit libraries with an additional suffix
b3c4c8
  (BZ #1287541).
b3c4c8
b3c4c8
* Wed Oct 28 2015 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.15-1
b3c4c8
- Update to 0.2.15.
b3c4c8
b3c4c8
* Tue Aug 04 2015 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 0.2.14-4
b3c4c8
- Use new execstack (#1247795)
b3c4c8
b3c4c8
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2.14-3
b3c4c8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
b3c4c8
b3c4c8
* Sun May  3 2015 Peter Robinson <pbrobinson@fedoraproject.org> 0.2.14-2
b3c4c8
- Run ldconfig on 64 builds too
b3c4c8
b3c4c8
* Wed Mar 25 2015 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.14-1
b3c4c8
- Update to 0.2.14.
b3c4c8
b3c4c8
* Fri Dec 19 2014 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.13-2
b3c4c8
- Bump spec due to LAPACK rebuild.
b3c4c8
b3c4c8
* Fri Dec 05 2014 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.13-1
b3c4c8
- Update to 0.2.13.
b3c4c8
b3c4c8
* Mon Oct 13 2014 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.12-1
b3c4c8
- Update to 0.2.12.
b3c4c8
b3c4c8
* Mon Aug 18 2014 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.11-1
b3c4c8
- Update to 0.2.11.
b3c4c8
b3c4c8
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2.10-2
b3c4c8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
b3c4c8
b3c4c8
* Wed Jul 16 2014 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.10-1
b3c4c8
- Update to 0.2.10.
b3c4c8
b3c4c8
* Wed Jun 11 2014 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.9-1
b3c4c8
- Increase maximum amount of cores from 32 to 128.
b3c4c8
- Add 64-bit interface support. (BZ #1088256)
b3c4c8
- Update to 0.2.9. (BZ #1043083)
b3c4c8
b3c4c8
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2.8-2
b3c4c8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
b3c4c8
b3c4c8
* Wed Aug 07 2013 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.8-1
b3c4c8
- Update to 0.2.8.
b3c4c8
b3c4c8
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2.7-2
b3c4c8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
b3c4c8
b3c4c8
* Tue Jul 23 2013 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.7-1
b3c4c8
- Update to 0.2.7.
b3c4c8
- Use OpenBLAS versions of LAPACK functions, as they seem to be
b3c4c8
  working now.
b3c4c8
b3c4c8
* Mon Jul 08 2013 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.5-10
b3c4c8
- Due to long standing bug, replace all OpenBLAS LAPACK functions with
b3c4c8
  generic ones, so that package can finally be released in stable.
b3c4c8
b3c4c8
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2.5-9
b3c4c8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
b3c4c8
b3c4c8
* Tue Jan 15 2013 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.5-8
b3c4c8
- Added LAPACKE include files.
b3c4c8
b3c4c8
* Mon Jan 14 2013 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.5-7
b3c4c8
- Fix build on RHEL5 and ppc architecture.
b3c4c8
b3c4c8
* Mon Dec 24 2012 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.5-6
b3c4c8
- Review fixes.
b3c4c8
b3c4c8
* Fri Dec 21 2012 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.5-5
b3c4c8
- Disable LAPACKE support on distributions where it is not available due to
b3c4c8
  a too old version of lapack.
b3c4c8
b3c4c8
* Mon Dec 17 2012 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.5-4
b3c4c8
- Don't use reference LAPACK functions that have optimized implementation.
b3c4c8
b3c4c8
* Wed Dec 12 2012 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.5-3
b3c4c8
- Use system version of LAPACK.
b3c4c8
b3c4c8
* Mon Nov 26 2012 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.5-2
b3c4c8
- Fixed 32-bit build, and build on EPEL 5.
b3c4c8
b3c4c8
* Mon Nov 26 2012 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.5-1
b3c4c8
- Update to 0.2.5.
b3c4c8
b3c4c8
* Thu Oct 06 2011 Jussi Lehtola <jussilehtola@fedoraproject.org> - 0.1-2.alpha2.4
b3c4c8
- Added documentation.
b3c4c8
b3c4c8
* Sun Sep 18 2011 Jussi Lehtola <jussilehtola@fedoraproject.org> - 0.1-1.alpha2.4
b3c4c8
- First release.