diff --git a/.gitignore b/.gitignore index c7be888..58bbd17 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -OpenBLAS-0.3.28.tar.gz +OpenBLAS-0.3.29.tar.gz diff --git a/openblas-0.3.28-zgemm-cgemm.patch b/openblas-0.3.28-zgemm-cgemm.patch deleted file mode 100644 index 125b531..0000000 --- a/openblas-0.3.28-zgemm-cgemm.patch +++ /dev/null @@ -1,22 +0,0 @@ -From 8a1710dd0da445d76e6eaeb35b180d24efac0919 Mon Sep 17 00:00:00 2001 -From: Martin Kroeker -Date: Sun, 6 Oct 2024 20:03:32 +0200 -Subject: [PATCH] don't apply switch_ratio to tail of loop - ---- - driver/level3/level3_thread.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/driver/level3/level3_thread.c b/driver/level3/level3_thread.c -index ddb39abd66..3d56c45a99 100644 ---- a/driver/level3/level3_thread.c -+++ b/driver/level3/level3_thread.c -@@ -742,7 +742,7 @@ static int gemm_driver(blas_arg_t *args, BLASLONG *range_m, BLASLONG - num_parts = 0; - while (n > 0){ - width = blas_quickdivide(n + nthreads - num_parts - 1, nthreads - num_parts); -- if (width < switch_ratio) { -+ if (width < switch_ratio && width > 1) { - width = switch_ratio; - } - width = round_up(n, width, GEMM_PREFERED_SIZE); diff --git a/openblas.spec b/openblas.spec index 394808d..8a79433 100644 --- a/openblas.spec +++ b/openblas.spec @@ -1,6 +1,6 @@ %bcond_with system_lapack # Version of bundled lapack -%global lapackver 3.11.0 +%global lapackver 3.12.0 # DO NOT "CLEAN UP" OR MODIFY THIS SPEC FILE WITHOUT ASKING THE # MAINTAINER FIRST! @@ -14,8 +14,8 @@ # "obsoleted" features are still kept in the spec. Name: openblas -Version: 0.3.28 -Release: 1%{?dist} +Version: 0.3.29 +Release: 2%{?dist} Summary: An optimized BLAS library based on GotoBLAS2 License: BSD-3-Clause @@ -30,8 +30,6 @@ Patch1: openblas-0.2.5-libname.patch Patch2: openblas-0.2.15-constructor.patch # Supply the proper flags to the test makefile Patch3: openblas-0.3.11-tests.patch -# https://github.com/OpenMathLib/OpenBLAS/issues/49172 -Patch4: openblas-0.3.28-zgemm-cgemm.patch BuildRequires: make BuildRequires: gcc @@ -238,14 +236,13 @@ This package contains the static libraries. tar zxf %{SOURCE0} cd OpenBLAS-%{version} %if %{with system_lapack} -%patch 0 -p1 -b .system_lapack +%patch -P 0 -p1 -b .system_lapack %endif -%patch 1 -p1 -b .libname +%patch -P 1 -p1 -b .libname %if 0%{?rhel} == 5 -%patch 2 -p1 -b .constructor +%patch -P 2 -p1 -b .constructor %endif -%patch 3 -p1 -b .tests -%patch 4 -p1 -b .gemm +%patch -P 3 -p1 -b .tests # Fix source permissions find -name \*.f -exec chmod 644 {} \; @@ -383,6 +380,9 @@ TARGET="TARGET=ARMV8 DYNAMIC_ARCH=1 DYNAMIC_OLDER=1" %ifarch s390x TARGET="TARGET=ZARCH_GENERIC DYNAMIC_ARCH=1 DYNAMIC_OLDER=1" %endif +%ifarch riscv64 +TARGET="TARGET=RISCV64_GENERIC DYNAMIC_ARCH=0" +%endif %if 0%{?rhel} == 5 # Gfortran too old to recognize -frecursive @@ -405,6 +405,7 @@ make -C threaded $TARGET USE_THREAD=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_O COMMON="%{optflags} -fPIC -fopenmp -pthread" FCOMMON="$COMMON -frecursive" 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} +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} lapack-test %if %build64 COMMON="%{optflags} -fPIC" @@ -429,7 +430,7 @@ make -C openmp64_ $TARGET USE_THREAD=1 USE_OPENMP=1 FC=gfortran CC=gcc COMMON_ %install rm -rf %{buildroot} # Install serial library and headers -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 +make -C serial USE_THREAD=0 DESTDIR=%{buildroot} OPENBLAS_LIBRARY_DIR=%{_libdir} OPENBLAS_INCLUDE_DIR=%{_includedir}/%name OPENBLAS_BINARY_DIR=%{_bindir} OPENBLAS_CMAKE_DIR=%{_libdir}/cmake install # Copy lapacke include files %if %{with system_lapack} && %{lapacke} @@ -445,6 +446,9 @@ suffix="" %ifarch armv7hl suffix="_armv7" %endif +%ifarch riscv64 +suffix="_riscv64_generic" +%endif slibname=`basename %{buildroot}%{_libdir}/libopenblas${suffix}-*.so .so` mv %{buildroot}%{_libdir}/${slibname}.a %{buildroot}%{_libdir}/lib%{name}.a if [[ "$suffix" != "" ]]; then @@ -561,8 +565,6 @@ done # Get rid of generated CMake config rm -rf %{buildroot}%{_libdir}/cmake -# Get rid of generated pkgconfig -rm -rf %{buildroot}%{_libdir}/pkgconfig %ldconfig_scriptlets @@ -625,6 +627,8 @@ rm -rf %{buildroot}%{_libdir}/pkgconfig %files devel %{_includedir}/%{name}/ +%{_libdir}/pkgconfig/ +%{_libdir}/pkgconfig/%{name}.pc %{_libdir}/lib%{name}.so %{_libdir}/lib%{name}o.so %{_libdir}/lib%{name}p.so @@ -651,6 +655,21 @@ rm -rf %{buildroot}%{_libdir}/pkgconfig %endif %changelog +* Mon Jul 07 2025 Pavel Simovec - 0.3.29-2 +- Re-include openblas.pc +- Resolves: RHEL-72679 + +* Wed Apr 09 2025 Pavel Simovec - 0.3.29-1 +- Update to 0.3.29 +- Resolves: RHEL-82829 + +* Mon Mar 24 2025 David Abdurachmanov - 0.3.28-3 +- Add riscv64 + +* Fri Jan 10 2025 Pavel Simovec - 0.3.28-2 +- Waive annocheck: --skip-optimization +- Resolves: RHEL-33513 + * Tue Nov 19 2024 Pavel Simovec - 0.3.28-1 - Update to 0.3.28 Resolves: BZ#2273704 diff --git a/sources b/sources index 15772e7..4baebd0 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (OpenBLAS-0.3.28.tar.gz) = 358301c8a60bedf920c07a110c772feb639e52412bd783789741fd2fd0686aac97e6b17ebcdf01ce48a2a15841058f82df0fee551af952f6e70b58140c055133 +SHA512 (OpenBLAS-0.3.29.tar.gz) = 046316b4297460bffca09c890ecad17ea39d8b3db92ff445d03b547dd551663d37e40f38bce8ae11e2994374ff01e622b408da27aa8e40f4140185ee8f001a60