--- /dev/null
+How to switch between the various BLAS/LAPACK implementations
+=============================================================
+
+- BLAS:
+
+ $ sudo update-alternatives --config libblas.so.3-<multiarch>
+
+- LAPACK:
+
+ $ sudo update-alternatives --config liblapack.so.3-<multiarch>
+
+where <multiarch> is the multiarch path for you architecture (e.g.
+x86_64-linux-gnu for amd64).
+
+More information is available at:
+
+ http://wiki.debian.org/DebianScience/LinearAlgebraLibraries
+
+
+Building an optimized OpenBLAS package for your machine
+=======================================================
+
+On amd64, arm64, i386, ppc64el, s390x, kfreebsd-amd64 and kfreebsd-i386,
+libopenblas-base provides a multiple architecture library. All kernels are
+included in the library and the one matching best your processor is selected at
+run time. Recompiling locally should bring minimal performance improvement.
+
+On the contrary, on other architectures, the package is compiled with minimal
+optimizations, so that it can run on all hardware. You may want to recompile it
+locally for optimal performance.
+
+If you want to create a custom OpenBLAS package, optimized for your specific
+machine, proceed as follows.
+
+1) Install the build dependencies and the source of the package:
+
+ $ sudo apt-get build-dep openblas
+ $ apt-get source openblas
+
+2) Compile the package:
+
+ $ cd openblas-<UPSTREAM_VERSION>
+ $ DEB_BUILD_OPTIONS=custom dpkg-buildpackage -uc -b
+
+where <UPSTREAM_VERSION> is replaced with the appropriate value.
+
+3) When the build finishes, it should produce a .deb file, whose precise name
+you can figure out using:
+
+ $ ls ../libopenblas-base_*.deb
+
+Install it using:
+
+ $ sudo dpkg -i ../libopenblas-base_<VERSION>_<ARCH>.deb
+
+replacing <VERSION> and <ARCH> with the appropriate values.
+
+4) If you don't want the Debian package manager to overwrite your optimized
+package with a generic one on system upgrades, you can mark the OpenBLAS
+package to be on hold, with the following command:
+
+ $ sudo aptitude hold libopenblas-base
+
+Don't forget however to periodically check whether a more recent version of the
+package is available for the Debian suite that you are tracking, in which case
+you should go again through this procedure. The version check can be performed
+using:
+
+ $ aptitude versions libopenblas-base
+
+ -- Sébastien Villemot <sebastien@debian.org>, Tue, 13 Jul 2021 12:26:31 +0200
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 31 May 2011 13:56:22 +0200
--- /dev/null
+prefix=/usr
+libdir=${prefix}/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@
+includedir=${prefix}/include/@DEB_HOST_MULTIARCH@
+Name: openblas-blas@INDEXING@
+Description: Optimized BLAS (linear algebra) library based on GotoBLAS2
+Version: @DEB_VERSION_UPSTREAM@
+URL: https://github.com/xianyi/OpenBLAS
+Libs: -L${libdir} -lblas@INDEXING@
+Libs.private: -L${libdir} -lblas@INDEXING@ -lgfortran -lpthread -lm
+Cflags: -I${includedir}
--- /dev/null
+openblas (0.3.21+ds-3) unstable; urgency=medium
+
+ * Install CMake files under /usr/lib/$(MULTIARCH)/cmake/openblas$(FLAVOR)/
+ Thanks to Juan Jose Garcia Ripoll for reporting (Closes: #1000332)
+ * no-embedded-lapack.patch: fix logic for detecting build with 64-bit
+ indexing. In particular, this fixes the riscv64 packages whose embedded
+ LAPACK routines were unusable with 32-bit indexing.
+ Thanks to Дмитрий Ермилов (Closes: #1022950)
+
+ -- Sébastien Villemot <sebastien@debian.org> Sun, 27 Nov 2022 21:22:10 +0100
+
+openblas (0.3.21+ds-2) unstable; urgency=medium
+
+ [ Mo Zhou ]
+ * Cherry-pick upstream commit to fix ppc64el FTBFS.
+
+ [ Sébastien Villemot ]
+ * mips64el-utest-dnrm2.patch: new patch from upstream, fixes FTBFS on mips64el
+
+ -- Sébastien Villemot <sebastien@debian.org> Wed, 14 Sep 2022 13:07:58 +0200
+
+openblas (0.3.21+ds-1) unstable; urgency=medium
+
+ * New upstream version 0.3.21+ds
+ * d/copyright: reflect upstream changes
+ * d/control: drop transitional libopenblas-base package, no longer needed
+ * Bump S-V to 4.6.1
+ * Update renamed lintian tag names in lintian overrides.
+
+ -- Sébastien Villemot <sebastien@debian.org> Sun, 14 Aug 2022 22:37:14 +0200
+
+openblas (0.3.20+ds-2) unstable; urgency=medium
+
+ * Remove deprecated xCOMBSSQ lapack routines. (Closes: #1011386)
+ * Remove bin:libjulia-openblas64, which is no longer needed.
+ Exporting libopenblas64_.so with SYMBOLSUFFIX=64_ in Julia private
+ library as an external dependency introduces complication in Julia
+ package compiling process. We currently do not have proposal to
+ put libopenblas64_.so (with symbol suffix) in the public library,
+ because that will eventually lead to NINE variants to build for amd64:
+ (1) LP64 (32-bit indexing), three threading models, default;
+ (2) ILP64 (64-bit indexing), three threading models, no symbol suffix;
+ (3) ILP64 (64-bit indexing), three threading models, symbols suffix 64_.
+ Currently we only provide the (1) and (2) combinations, because BLAS
+ libraries without symbol mangling can still be alternated to e.g. MKL.
+
+ -- Mo Zhou <lumin@debian.org> Sat, 21 May 2022 16:25:13 -0400
+
+openblas (0.3.20+ds-1) unstable; urgency=medium
+
+ * New upstream version 0.3.20+ds
+ * d/copyright: reflect upstream changes
+ * mips64el.patch, avx512-dgemm.patch: drop patches, applied upstream
+
+ -- Sébastien Villemot <sebastien@debian.org> Mon, 21 Feb 2022 11:14:52 +0100
+
+openblas (0.3.19+ds-3) unstable; urgency=medium
+
+ * avx512-dgemm.patch: new patch, fixes DGEMM regression on AVX-512 CPUs
+
+ -- Sébastien Villemot <sebastien@debian.org> Fri, 14 Jan 2022 15:21:00 +0100
+
+openblas (0.3.19+ds-2) unstable; urgency=medium
+
+ * mips64el.patch: new patch, should fix FTBFS on mips64el
+
+ -- Sébastien Villemot <sebastien@debian.org> Mon, 10 Jan 2022 12:26:34 +0100
+
+openblas (0.3.19+ds-1) unstable; urgency=medium
+
+ * New upstream version 0.3.19+ds
+ + fixes segfault of pthread flavour when running out of memory
+ (Closes: #995450)
+ * d/copyright: reflect upstream changes
+ * 3422.patch (trsv shortcut revert): drop patch, applied upstream
+ * Tighten Build-Depends on liblapack{,64}-dev to >= 3.10.0-2~
+ This ensures that the fix for CVE-2021-4048 is incorporated.
+
+ -- Sébastien Villemot <sebastien@debian.org> Mon, 20 Dec 2021 13:27:29 +0100
+
+openblas (0.3.18+ds-2) unstable; urgency=medium
+
+ * Team upload.
+ * Revert invalid trsv shortcut. Fixes crash in yade-package.
+
+ -- Anton Gladky <gladk@debian.org> Sat, 30 Oct 2021 02:01:09 +0200
+
+openblas (0.3.18+ds-1) unstable; urgency=medium
+
+ * New upstream version 0.3.18+ds
+ * d/copyright: reflect upstream changes
+
+ -- Sébastien Villemot <sebastien@debian.org> Sun, 03 Oct 2021 10:51:28 +0200
+
+openblas (0.3.17+ds-3) unstable; urgency=medium
+
+ * Rebuild against lapack 3.10.0
+ * Bump S-V to 4.6.0
+
+ -- Sébastien Villemot <sebastien@debian.org> Mon, 20 Sep 2021 17:41:09 +0200
+
+openblas (0.3.17+ds-2) unstable; urgency=medium
+
+ * Upload to unstable
+
+ -- Sébastien Villemot <sebastien@debian.org> Mon, 16 Aug 2021 19:45:15 +0200
+
+openblas (0.3.17+ds-1) experimental; urgency=medium
+
+ * New upstream version 0.3.17+ds
+
+ -- Sébastien Villemot <sebastien@debian.org> Tue, 20 Jul 2021 22:19:53 +0200
+
+openblas (0.3.16+ds-1) experimental; urgency=medium
+
+ * New upstream version 0.3.16+ds
+ * Really disable DYNAMIC_ARCH on ppc64
+ * Downgrade to TARGET=POWER4 on ppc64.
+ This seems closer to the baseline for this architecture.
+ * Improve package description w.r.t. dynamic arch vs local recompilation
+ * Add missing files in clean rule
+
+ -- Sébastien Villemot <sebastien@debian.org> Tue, 13 Jul 2021 12:32:31 +0200
+
+openblas (0.3.15+ds-1) experimental; urgency=medium
+
+ * New upstream version 0.3.15+ds
+ * fix-arm64-sigill.patch: drop patch, applied upstream
+
+ -- Sébastien Villemot <sebastien@debian.org> Tue, 04 May 2021 17:31:41 +0200
+
+openblas (0.3.14+ds-2) experimental; urgency=medium
+
+ * fix-arm64-sigill.patch: new patch, fixes SIGILL on arm64 with numpy.
+ Thanks to Thomas Viehmann <tv@beamnet.de> (Closes: #986996)
+
+ -- Sébastien Villemot <sebastien@debian.org> Sun, 18 Apr 2021 11:08:29 +0200
+
+openblas (0.3.14+ds-1) experimental; urgency=medium
+
+ * New upstream version 0.3.14+ds
+ * riscv64-supported.patch: drop patch, applied upstream
+ * d/watch: update following GitHub URL renaming
+
+ -- Sébastien Villemot <sebastien@debian.org> Sun, 04 Apr 2021 18:34:37 +0200
+
+openblas (0.3.13+ds-2) unstable; urgency=medium
+
+ [ Gianfranco Costamagna ]
+ * Enable dynamic arch support on s390x. (LP: #1893653) (Closes: #981048)
+ + Also change control file references, thanks Marius Hillenbrand (mhillen)
+
+ [ Aurelien Jarno ]
+ * Enable support for riscv64 (Closes: #978633)
+
+ -- Mo Zhou <lumin@debian.org> Wed, 27 Jan 2021 13:56:54 +0800
+
+openblas (0.3.13+ds-1) unstable; urgency=medium
+
+ * New upstream version 0.3.13+ds
+ * d/copyright: reflect upstream changes
+ * reunify-arm64-buffersize.patch: drop patch, applied upstream
+ * Bump S-V to 4.5.1
+
+ -- Sébastien Villemot <sebastien@debian.org> Thu, 17 Dec 2020 13:53:00 +0100
+
+openblas (0.3.12+ds-2) unstable; urgency=medium
+
+ * reunify-arm64-buffersize.patch: new patch from upstream (Closes: #970558)
+
+ -- Sébastien Villemot <sebastien@debian.org> Sun, 01 Nov 2020 10:47:26 +0100
+
+openblas (0.3.12+ds-1) unstable; urgency=medium
+
+ * New upstream version 0.3.12+ds
+ * fix-dynamic-arch-gemm-crashes.patch: drop patch, applied upstream
+
+ -- Sébastien Villemot <sebastien@debian.org> Mon, 26 Oct 2020 17:52:08 +0100
+
+openblas (0.3.10+ds-3) unstable; urgency=medium
+
+ [ Mo Zhou ]
+ * Fix confusion bug in the libblas.so.3->libopenblas.so.0 linkage.
+ We added -Wl,-rpath,'$ORIGIN' in the RPATH attribute of the libblas.so.3
+ shared objects. Without this fix, `ldd openblas-serial/libblas.so.3`
+ will resolve the libopenblas.so.0 dependency to the symbol link
+ controlled by the alternatives mechanism, e.g. libopenblas.so.0 ->
+ openblas-pthread/libopenblas.so.0, which breaks the literal meaning
+ of the user's libblas.so.3 <--provies-- openblas-serial configuration.
+ * Remove the unnecessary dh_shlibdeps overrides.
+ * Remove ${shlibs:Depends} dependency from -dev and -meta packages.
+ * Fix symbol mangling for libjulia-openblas64.
+ * B-D on lapack (>= 3.9.0-3) for BLAS64 version of deprecated routines.
+
+ [ Sébastien Villemot ]
+ * d/rules: ensure that shared-library flavoured packages do not depend on
+ libopenblas{64-,}0 metapackages. A circular dependency:
+ libopenblas0 → libopenblas0-{pthread,openmp,serial} → libopenblas0
+ was introduced in 0.3.10+ds-2, since lib{blas,lapack}.so.3 is (again)
+ dynamically linked against libopenblas0. We break the loop manually at the
+ dpkg-shlibdeps level. (Closes: #966607)
+
+ -- Mo Zhou <lumin@debian.org> Sat, 01 Aug 2020 23:25:44 +0800
+
+openblas (0.3.10+ds-2) unstable; urgency=medium
+
+ * lib{blas,lapack}.so.3 are again dynamically linked against libopenblas.so.0.
+ This restores the pre-multi-flavour behaviour.
+ Incidentally, this brings back the possibility of checking at runtime for
+ the presence of openblas_get_config symbol. (Closes: #960728)
+ * fix-dynamic-arch-gemm-crashes.patch: new patch (Closes: #966175)
+ * Add debian/upstream/metadata
+
+ -- Sébastien Villemot <sebastien@debian.org> Wed, 29 Jul 2020 14:51:22 +0200
+
+openblas (0.3.10+ds-1) unstable; urgency=medium
+
+ [ Mo Zhou ]
+ * New upstream version 0.3.10+ds
+ * Refresh existing patches.
+
+ [ Sébastien Villemot ]
+ * d/copyright: reflect upstream changes
+
+ -- Mo Zhou <lumin@debian.org> Tue, 07 Jul 2020 19:50:08 +0800
+
+openblas (0.3.9+ds-3) unstable; urgency=medium
+
+ [ Sébastien Villemot ]
+ * Remove B-D on dh-exec, no longer needed since debhelper 13
+ * On Ubuntu, strip -Wl,-Bsymbolic-functions from LDFLAGS (Closes: #961725)
+ * Update Homepage to https://www.openblas.net
+
+ [ Mo Zhou ]
+ * Let libopenblas64-julia Conflict & Replace libjulia1 (<< 1.4.1+dfsg-1)
+ (Closes: #963223)
+ * Upload to unstable.
+
+ -- Mo Zhou <lumin@debian.org> Thu, 25 Jun 2020 17:39:59 +0800
+
+openblas (0.3.9+ds-2) experimental; urgency=medium
+
+ * Build the custom version of OpenBLAS for Julia.
+ * Update my mail address in Uploaders.
+ * Bump debhelper compat level to 13 (no change).
+
+ -- Mo Zhou <lumin@debian.org> Thu, 14 May 2020 19:06:33 +0800
+
+openblas (0.3.9+ds-1) unstable; urgency=medium
+
+ * New upstream version 0.3.9+ds
+ * d/copyright: reflect upstream changes
+ * Drop link-tests-openmp.patch.
+ Replace it by adding -fopenmp to FCOMMON_OPT at the relevant places in
+ debian/rules.
+
+ -- Sébastien Villemot <sebastien@debian.org> Fri, 20 Mar 2020 14:40:43 +0100
+
+openblas (0.3.8+ds-1) unstable; urgency=medium
+
+ * New upstream version 0.3.8+ds
+ + unfortunately we cannot enable dynamic arch for s390x, because it will
+ not work correctly on pre-Z13 systems (there is no fallbak on
+ ZARCH_GENERIC, see driver/other/dynamic_zarch.c)
+ * d/copyright: reflect upstream changes
+ * dgemm-test-without-lapacke.patch: drop patch, applied upstream
+ * Remove spurious TARGET setting for ppc64el, which has dynamic arch
+ * Bump S-V to 4.5.0
+ * d/rules: do not run testsuite in override_dh_auto_build.
+ It is already run in override_dh_auto_test.
+ Also honour DEB_BUILD_OPTIONS=nocheck.
+ * d/rules: ensure that whole build fails if build/test/install fails for one
+ flavour
+ * Remove unused override for libopenblas-dev
+ * link-tests-openmp.patch: new patch, fixes build failure in OpenMP variants
+
+ -- Sébastien Villemot <sebastien@debian.org> Thu, 13 Feb 2020 18:52:52 +0100
+
+openblas (0.3.7+ds-7) unstable; urgency=medium
+
+ * Fix (piuparts) install failure due to missing dir. (Closes: #946828)
+ * Autopkgtest: print libopenblas{,64} selection before the test.
+
+ -- Mo Zhou <cdluminate@gmail.com> Wed, 18 Dec 2019 23:38:15 +0800
+
+openblas (0.3.7+ds-6) unstable; urgency=medium
+
+ * Restore pkgconfig’s openblas.pc (for 32-bit indexing)
+ This file is now managed by the alternatives system, since there are several
+ variants of it. (Closes: #946698)
+ By the way, add openblas64.pc (for 64-bit indexing).
+ * Fix alternatives symlink for openblas64_config.h (64-bit indexing variants)
+ * Drop empty postrm script for libopenblas-dev
+ * Make long description of libopenblas0 different from that of
+ libopenblas64-0.
+ Similar change for libopenblas-dev vs. libopenblas64-dev.
+ * Fix the blas{,64}.pc and lapack{,64}.pc alternatives.
+ For 32-bit indexing, the files pointed to an inexistent $libdir.
+ The 64-bit indexing variants were pointing to 32-bit libraries.
+
+ -- Sébastien Villemot <sebastien@debian.org> Sun, 15 Dec 2019 22:02:19 +0100
+
+openblas (0.3.7+ds-5) unstable; urgency=medium
+
+ * Link the OMP variant of shared blas/lapack against gomp. (Closes: #945791)
+
+ -- Mo Zhou <cdluminate@gmail.com> Mon, 02 Dec 2019 13:33:33 +0800
+
+openblas (0.3.7+ds-4) unstable; urgency=medium
+
+ * Don’t run the 64-bit autopkgtests on 32-bit architectures.
+ Thanks to Matthias Klose (Closes: #944474)
+ * Bump S-V to 4.4.1
+
+ -- Sébastien Villemot <sebastien@debian.org> Wed, 27 Nov 2019 17:49:02 +0100
+
+openblas (0.3.7+ds-3) unstable; urgency=medium
+
+ * Upload to unstable. (no change).
+
+ -- Mo Zhou <cdluminate@gmail.com> Thu, 31 Oct 2019 20:46:13 +0800
+
+openblas (0.3.7+ds-2) experimental; urgency=medium
+
+ [ Multi-Flavour Update of OpenBLAS (Closes: #878121, #684344) ]
+ * (32-bit, 64-bit)-index * (pthread, openmp, serial)-threadding = 6 Variants.
+ Each one assigned with different priority values in alternatives system:
+ + libopenblas0-{pthread,openmp,serial} (priority = 100,95,90)
+ * Provides: libopenblas.so.0, libblas.so.3, liblapack.so.3
+ + libopenblas64-0-{pthread,openmp,serial} (priority = 100,95,90)
+ * Provides: libopenblas64.so.0, libblas64.so.3, liblapack64.so.3
+ - 64-bit-indexing versions are only available on 64-bit archs.
+ * Let libopenblas0 and libopenblas64-0 be meta packages. They pull one of the
+ three threadding variants. On resolving shlib dependencies, these meta
+ packages, instead of specific variants used for building, should be used as
+ the dependencies.
+ * Turn libopenblas-base into a transitional dummy package.
+ * Update/Create control files and maintscripts for all these variants.
+ * Autopkgtest: test all the 6 variants.
+
+ [ Mo Zhou ]
+ * Append myself to Uploaders.
+ * Simplify architecture detection part of rules.
+ * Bump B-D lapack to >= 3.8.0-5 (for liblapack64-dev).
+ * rules: Deparallelize build targets to avoid messy buildlog
+ * Update existing patches accordingly for the new feature.
+ * Merge order-files.patch into shared-blas-lapack.patch
+ * Create template postrm for libopenblas-dev to avoid leftover.
+ * Remove the unnecessary overrides from rules.
+ * Upload to experimental.
+
+ -- Mo Zhou <cdluminate@gmail.com> Fri, 25 Oct 2019 21:03:40 +0800
+
+openblas (0.3.7+ds-1) unstable; urgency=medium
+
+ * Revert dynamic arch selection on ppc64, it FTBFS
+ * New upstream version 0.3.7+ds
+ * dgemm-test-without-lapacke.patch: new patch taken from upstream.
+ Required to avoid FTBFS.
+
+ -- Sébastien Villemot <sebastien@debian.org> Tue, 20 Aug 2019 17:52:34 +0200
+
+openblas (0.3.6+ds-1) unstable; urgency=medium
+
+ * New upstream version 0.3.6+ds
+ * Remove patches applied upstream
+ + skylakex-dgemm.patch
+ + target-generic.patch
+ * Enable dynamic arch selection on ppc64el and ppc64
+ * Bump S-V to 4.4.0
+ * Bump debhelper compat level to 12
+
+ -- Sébastien Villemot <sebastien@debian.org> Mon, 08 Jul 2019 14:24:15 +0200
+
+openblas (0.3.5+ds-3) unstable; urgency=medium
+
+ * Fix FTBFS when CPU of the build machine is not detected (amd64, arm64, i386)
+ - pass TARGET=GENERIC when building with DYNAMIC_ARCH=1
+ - target-generic.patch: new patch taken from upstream, makes the above
+ possible
+ (Closes: #923607)
+
+ -- Sébastien Villemot <sebastien@debian.org> Mon, 11 Mar 2019 10:18:39 +0100
+
+openblas (0.3.5+ds-2) unstable; urgency=medium
+
+ * skylakex-dgemm.patch: new patch, fixes DGEMM regression on SkylakeX.
+ Thanks to Mo Zhou (Closes: #921698)
+
+ -- Sébastien Villemot <sebastien@debian.org> Sat, 09 Feb 2019 10:38:22 +0100
+
+openblas (0.3.5+ds-1) unstable; urgency=medium
+
+ * New upstream version 0.3.5+ds
+ * Bump S-V to 4.3.0
+
+ -- Sébastien Villemot <sebastien@debian.org> Fri, 04 Jan 2019 10:28:31 +0100
+
+openblas (0.3.4+ds-1) unstable; urgency=medium
+
+ * New upstream version 0.3.4+ds
+ * d/copyright: reflect upstream changes
+ * Dynamic kernel selection is now implemented on arm64
+ * Switch to new way of specifying debhelper compat level
+ * Increase priority in alternatives system to 100 (Closes: #911131)
+
+ -- Sébastien Villemot <sebastien@debian.org> Fri, 07 Dec 2018 15:49:27 +0100
+
+openblas (0.3.3+ds-1) unstable; urgency=medium
+
+ * New upstream version 0.3.3+ds
+ * Bump Standards-Version to 4.2.1
+
+ -- Sébastien Villemot <sebastien@debian.org> Fri, 07 Sep 2018 16:32:43 +0200
+
+openblas (0.3.2+ds-1) unstable; urgency=medium
+
+ * New upstream version 0.3.2+ds
+ + fixes regression that induced incorrect SVD computation
+ (Closes: #903659)
+ * Bump to debhelper compat level 11
+ * Add Rules-Requires-Root: no
+ * Bump S-V to 4.1.5
+
+ -- Sébastien Villemot <sebastien@debian.org> Tue, 31 Jul 2018 18:28:12 +0200
+
+openblas (0.3.1+ds-1) unstable; urgency=medium
+
+ * New upstream version 0.3.1
+ + cblas_* now take a void* for complex arrays (Closes: #877883)
+ * d/copyright: reflect upstream changes
+ * force-zarch.patch: remove patch, applied upstream
+ * Compile with DYNAMIC_OLDER=1, for better support of old amd64 CPUs
+ * Remove Built-Using field.
+ Since both LAPACK and ATLAS are under BSD-3-clause, there is no reason to
+ use this field (which is now restricted to license compliance issues).
+ * d/rules: remove get-orig-source target.
+ * Bump to S-V 4.1.4
+ * Replace ADTTMP by AUTOPKGTEST_TMP in tests.
+ * Ship *.md files in libopenblas-dev
+ * Update Vcs-* fields for move to salsa
+
+ -- Sébastien Villemot <sebastien@debian.org> Wed, 04 Jul 2018 10:53:01 +0200
+
+openblas (0.2.20+ds-4) unstable; urgency=medium
+
+ * Add support for s390x.
+ New patch force-zarch.patch introduced to force the generic build.
+ (Closes: #875618)
+ * Enforce TARGET=POWER6 on ppc64, to avoid FTBFS on some buildds.
+ * Drop obsolete code for -dbgsym migration.
+
+ -- Sébastien Villemot <sebastien@debian.org> Tue, 19 Sep 2017 14:51:23 +0200
+
+openblas (0.2.20+ds-3) unstable; urgency=low
+
+ * Multi-archify the package.
+ Incidentally, remove the dependency of libopenblas-dev on libblas-dev, since
+ cblas.h is now managed by the alternative.
+ * Ship openblas.pc in libopenblas-dev.
+ * Improve README.Debian for building a custom package
+ * Bump Standards-Version to 4.1.0.
+
+ -- Sébastien Villemot <sebastien@debian.org> Sat, 09 Sep 2017 10:29:44 +0200
+
+openblas (0.2.20+ds-2) unstable; urgency=medium
+
+ * d/rules: explicitly disable OpenMP, with USE_OPENMP=0.
+ Otherwise it gets enabled on powerpc and ppc64*, leading to FTBFS.
+
+ -- Sébastien Villemot <sebastien@debian.org> Thu, 27 Jul 2017 20:06:14 +0200
+
+openblas (0.2.20+ds-1) unstable; urgency=medium
+
+ * New upstream version 0.2.20+ds
+ * d/watch: add +ds suffix to orig tarball, since we're repacking it.
+ * Drop patches applied upstream:
+ + mips-implement-mb-and-wmb.patch
+ + mips-remove-incorrect-blas_lock-implementation.patch
+ * d/copyright:
+ + reflect upstream changes, filter out relapack.
+ + use secure URL for format.
+ * Add support for sparc64.
+ Thanks to James Clarke for the patch (Closes: #866509)
+ * d/rules: Re-enable testsuite on powerpc.
+ Treating powerpc differently is not warranted, especially since it is no
+ longer a release architecture.
+ * Use DEB_BUILD_OPTIONS=custom as new interface for building custom package.
+ By the way, no longer automatically append a changelog entry.
+ (Closes: #854784)
+ * d/control:
+ + bump Standards-Version to 4.0.0.
+ + tighten versioned build-dependency on liblapack-pic to ≥ 3.7.0.
+ + use canonical URL for Vcs-Browser.
+
+ -- Sébastien Villemot <sebastien@debian.org> Thu, 27 Jul 2017 18:17:19 +0200
+
+openblas (0.2.19-3) unstable; urgency=medium
+
+ * New patches that fix threading issue on mips64el.
+ + d/p/mips-implement-mb-and-wmb.patch
+ + d/p/mips-remove-incorrect-blas_lock-implementation.patch
+ Thanks to James Cowgill (Closes: #861486)
+
+ -- Sébastien Villemot <sebastien@debian.org> Sat, 06 May 2017 15:22:06 +0200
+
+openblas (0.2.19-2) unstable; urgency=medium
+
+ * Also build libopenblas-dev on mips64el. (Closes: #852283)
+ * Bump debhelper compat level to 10.
+ * d/watch: bump to format version 4.
+ * Add "-march=native -mtune=native" to CFLAGS when building custom package.
+ (Closes: #844509)
+
+ -- Sébastien Villemot <sebastien@debian.org> Mon, 23 Jan 2017 15:06:15 +0100
+
+openblas (0.2.19-1) unstable; urgency=medium
+
+ * Imported Upstream version 0.2.19
+ * d/p/always-run-testsuite.patch: drop patch, no longer needed.
+ * Add support for mips64el.
+ * d/p/order-files.patch: new patch, makes build reproducible.
+ Thanks to Alexis Bienvenüe (Closes: #824639)
+ * d/README.Debian: explain that recompilation is useful on non-x86 archs.
+
+ -- Sébastien Villemot <sebastien@debian.org> Tue, 06 Sep 2016 20:24:32 +0200
+
+openblas (0.2.18-1) unstable; urgency=medium
+
+ * Imported Upstream version 0.2.18
+ * d/control: bump Standards-Version to 3.9.8, no changes needed.
+
+ -- Sébastien Villemot <sebastien@debian.org> Sun, 17 Apr 2016 18:40:31 +0200
+
+openblas (0.2.17-1) unstable; urgency=medium
+
+ * Imported Upstream version 0.2.17
+ * d/copyright: reflect upstream changes.
+ * d/p/power-arch-detection.patch: drop patch, applied upstream.
+ * d/p/matgen-symbols-not-included.patch: new patch.
+ Needed because MATGEN symbols are not included in the Debian binary.
+ * d/control:
+ + bump Standards-Version to 3.9.7, no changes needed.
+ + use secure URLs in Vcs-* fields.
+ * Drop libopenblas-dbg, now rely on automatic debug package.
+
+ -- Sébastien Villemot <sebastien@debian.org> Thu, 24 Mar 2016 15:11:45 +0100
+
+openblas (0.2.15-1) unstable; urgency=medium
+
+ * Imported Upstream version 0.2.15
+ * debian/copyright: reflect upstream changes.
+ * Remove patches applied upstream:
+ + debian/patches/arm-arch-detection.patch
+ + debian/patches/arm64.patch
+ + debian/patches/disable-gemm3m-tests.patch
+ * Build on ppc64el arch, which is now supported by upstream.
+ * d/p/power-arch-detection.patch: new patch.
+ Ensures that the testsuite is run on ppc64el and ppc64.
+ However, don't enable it on powerpc, because it crashes…
+ * Tighten B-D on lapack to >= 3.5.0-5~, in order to get latest patches.
+ * Remove obsolete Conflicts/Replaces against lib{blas,lapack}3gf.
+
+ -- Sébastien Villemot <sebastien@debian.org> Tue, 10 Nov 2015 23:24:12 +0100
+
+openblas (0.2.14-1) unstable; urgency=low
+
+ * Imported Upstream version 0.2.14
+ * debian/copyright: reflect upstream changes.
+ * debian/rules: remove TARGET=GENERIC flag when building dynamic arch binary.
+ This flag creates a compilation failure and seems no longer needed.
+ * Add a debug package. (Closes: #783639)
+ * debian/control: improve short description of packages.
+ * Add autopkgtest support, relying on upstream testsuite.
+ + debian/tests/upstream-testsuite: script to run the testsuite.
+ + debian/tests/control: add the new test.
+ Thanks to Christian Kastner for crafting the patch. (Closes: #781996)
+ * Enable build on arm64 architecture.
+ + d/control: add arm64 to Architecture fields.
+ + d/rules: use TARGET=ARMV8 for arm64 arch.
+ + d/p/arm64.patch: new patch from upstream, to fix a build failure.
+ * Fix crash with illegal instruction on armhf with static libraries.
+ + d/p/arm-gcc-flags.patch: enforce -march=armv7-a and -mfpu=vfpv3-d16 flags.
+ * Add -lgfortran and -lpthread in .pc files for static linking.
+ * Ensure that the testsuite is run on arm* arches at build time.
+ + d/p/arm-arch-detection.patch: new patch, avoids false detection of
+ cross-compilation.
+ + d/p/disable-gemm3m-tests.patch: new patch, avoid compilation failure of
+ the testsuite.
+ + d/p/test-custom-package.patch renamed to d/p/always-run-testsuite.patch,
+ to clearly show that it is needed even for vanilla arm* packages.
+
+ -- Sébastien Villemot <sebastien@debian.org> Wed, 29 Apr 2015 18:46:11 +0200
+
+openblas (0.2.12-1) unstable; urgency=medium
+
+ * Imported Upstream version 0.2.12. (Closes: #765795)
+
+ -- Sébastien Villemot <sebastien@debian.org> Sun, 26 Oct 2014 10:42:29 +0100
+
+openblas (0.2.11-3) unstable; urgency=medium
+
+ [ Alastair McKinstry ]
+ * Add {blas,lapack}-openblas.pc files and symlinks via
+ update-alternatives. (Closes: #764491)
+
+ -- Sébastien Villemot <sebastien@debian.org> Wed, 15 Oct 2014 21:54:50 +0200
+
+openblas (0.2.11-2) unstable; urgency=medium
+
+ * libopenblas-base: add dependency on libblas-common.
+ The goal is to make BLAS implementations multi-arch safe by preventing the
+ co-installability of, say, libblas3:amd64 and libatlas3-base:i386. See
+ * Bump Standards-Version to 3.9.6, no changes needed.
+
+ -- Sébastien Villemot <sebastien@debian.org> Sat, 27 Sep 2014 20:25:40 +0200
+
+openblas (0.2.11-1) unstable; urgency=medium
+
+ * Imported Upstream version 0.2.11
+ * debian/copyright: reflect upstream changes.
+
+ -- Sébastien Villemot <sebastien@debian.org> Sat, 30 Aug 2014 14:20:55 +0200
+
+openblas (0.2.10-2) unstable; urgency=medium
+
+ * libopenblas-{base,dev}.prerm: fix removal of liblapack.so.3 alternative.
+ * debian/rules: pass the same make options to all make invocations.
+ Fixes FTBFS on armhf.
+ * Tighten build-dep on liblapack-pic.
+ Ensures that the LAPACK version used to compile OpenBLAS is as recent as
+ upstream embedded copy (including unreleased patches).
+
+ -- Sébastien Villemot <sebastien@debian.org> Fri, 08 Aug 2014 14:25:37 +0200
+
+openblas (0.2.10-1) unstable; urgency=medium
+
+ * Imported Upstream version 0.2.10
+ * Ship the optimized LAPACK as a new alternative.
+ + Use the binary from liblapack-pic for routines not overridden by
+ OpenBLAS.
+ As a consequence, add a Built-Using field to libopenblas-{base,dev}.
+ + libblas3-soname.patch: dropped patch.
+ + shared-blas-lapack.patch: new patch.
+ * Ship headers in /usr/include/openblas.
+ * Remove Sylvestre Ledru from Uploaders. Thanks Sylvestre for your work!
+ * debian/copyright: rewrite using machine-readable format.
+ * Use Files-Excluded from d/copyright to remove embedded LAPACK copy.
+ * no-embedded-lapack.patch: new patch.
+ Adapts build system for the absence of lapack-netlib/ directory.
+ * kfreebsd.patch: install shared library and link it against libm.
+ This patch also incorporates the former content of kfreebsd-soname.patch.
+ * Rewrite using debhelper and upstream's 'make install' rule.
+ * Update README.Debian.
+
+ -- Sébastien Villemot <sebastien@debian.org> Tue, 05 Aug 2014 20:05:26 +0200
+
+openblas (0.2.9-1) unstable; urgency=medium
+
+ * Imported Upstream version 0.2.9
+ * Remove patches applied upstream:
+ - dgemv-crash.patch
+ - fork-handler.patch
+ - qemu-athlon.patch
+ - wrong-parameter-for-zherk-zher2.patch
+ * Add armhf support.
+ - Use ARMv6 target. We cannot currently use the ARMv7 target, because it
+ requires VFPv3-D32 (and armhf only guarantees VFPv3-D16).
+ - arm-gcc-flags.patch: Remove arch-specific GCC flags.
+ * PowerPC: enforce a generic-enough target (PPCG4) for the generic package.
+ Previously, the target was (erroneously) selected based on the buildd
+ hardware.
+ * Update debian/orig-tar.sh: now keeps a quasi-empty lapack-netlib/TESTING
+ dir.
+
+ -- Sébastien Villemot <sebastien@debian.org> Sun, 15 Jun 2014 15:17:05 +0200
+
+openblas (0.2.8-6) unstable; urgency=medium
+
+ * Team upload.
+ * backport two fixes from upstream git:
+ - dgemv-crash.patch: fixes core2/barcelona dgemv kernel
+ - wrong-parameter-for-zherk-zher2.patch
+
+ -- Julian Taylor <jtaylor.debian@googlemail.com> Thu, 13 Mar 2014 20:03:07 +0100
+
+openblas (0.2.8-5) unstable; urgency=medium
+
+ * kfreebsd-soname.patch: give a SONAME to the shared library under kfreebsd,
+ by using the same stanza to create the shared object than under Linux.
+ Incidentally, this fixes the FTBFS on kfreebsd-* archs.
+ * Remove ia64, powerpcspe, hurd-i386 and sparc from the list of
+ supported architectures (the package never compiled on those).
+ * fork-handler.patch: improved version backported from upstream.
+
+ -- Sébastien Villemot <sebastien@debian.org> Fri, 21 Feb 2014 18:07:32 +0100
+
+openblas (0.2.8-4) unstable; urgency=medium
+
+ * Revert to pthreads parallelism instead of OpenMP (Closes: #737675)
+ * remove-openmp-warning.patch: new patch, removes annoying warning when
+ OpenBLAS is called from an OpenMP application.
+ * fork-handler.patch: fixes hangs of OpenBLAS when called from a program
+ using OpenMP (Closes: #739331)
+ * Drop obsolete code in maintainer scripts to deal with the transition
+ libblas.so.3gf => libblas.so.3.
+ * Ship an additional libopenblas.so.0 in /usr/lib, to allow direct
+ linking to OpenBLAS, without using the alternatives system for BLAS
+ implementations. Thanks to Martin Koehler for his help in crafting a
+ proper solution. (Closes: #725673)
+
+ -- Sébastien Villemot <sebastien@debian.org> Wed, 19 Feb 2014 17:20:03 +0100
+
+openblas (0.2.8-3) unstable; urgency=medium
+
+ * Use OpenMP parallelism instead of pthreads (Closes: #684344).
+ * Bump Standards-Version to 3.9.5, no changes needed.
+ * Bump to debhelper compat level 9.
+
+ -- Sébastien Villemot <sebastien@debian.org> Wed, 15 Jan 2014 14:07:39 +0100
+
+openblas (0.2.8-2) unstable; urgency=low
+
+ * qemu-athlon.patch: new patch, should fix FTBFS on babin.debian.org
+ (which is a weird qemu guest declaring an Athlon CPU but without
+ 3dnow! extensions)
+
+ -- Sébastien Villemot <sebastien@debian.org> Tue, 27 Aug 2013 18:04:04 +0200
+
+openblas (0.2.8-1) unstable; urgency=low
+
+ * New upstream release
+
+ -- Sébastien Villemot <sebastien@debian.org> Sat, 03 Aug 2013 23:25:41 +0200
+
+openblas (0.2.7-1) unstable; urgency=low
+
+ * New upstream release
+ * power7.patch: remove patch, applied upstream
+ * Repackage upstream tarball without embedded LAPACK copy
+ * Package descriptions: mention that multiple arch is only for x86; fix typo
+ * Use canonical URLs for packaging VCS
+ * Add dependency of libopenblas-dev on libblas-dev, so that CBLAS headers are
+ installed. (Closes: #685890)
+ * Disable memory address range benchmarking (NO_WARMUP=1), for better
+ startup performance. (Closes: #709224)
+ * test-custom-package.patch: new package, ensures that testsuite is run even
+ when building a custom package. (Closes: #677866)
+
+ -- Sébastien Villemot <sebastien@debian.org> Fri, 26 Jul 2013 18:37:41 +0200
+
+openblas (0.2.6-2) unstable; urgency=low
+
+ * power7.patch: new patch, should fix FTBFS on powerpc buildd with Power7 arch
+ * libblas3-soname.patch: new patch, sets the SONAME of the dynamic library to
+ libblas.so.3. (Closes: #687349)
+ * Put "libblas3 | libblas.so.3" in the shlibs of libopenblas-base.
+ Packages compiled with libopenblas-dev installed will now have a BLAS
+ dependency satisfiable by all BLAS flavours.
+ * Switch to git as VCS for packaging
+
+ -- Sébastien Villemot <sebastien@debian.org> Mon, 20 May 2013 18:40:07 +0200
+
+openblas (0.2.6-1) unstable; urgency=low
+
+ * Upload to unstable
+ * Update Standards-Version to 3.9.4
+ * Increase the maximum number of threads to 64 when building the generic
+ package. At runtime, OpenBLAS will not use more threads than there are
+ available cores. (LP: #817212)
+
+ -- Sébastien Villemot <sebastien@debian.org> Sat, 02 Mar 2013 17:46:01 +0100
+
+openblas (0.2.6-1~exp1) experimental; urgency=low
+
+ * New upstream release
+ + Fixes use of uninitialized values in vectorized sgemv on i386.
+ (Closes: #696000)
+ + Fixes the overflowing buffer bug of gemv. (Closes: #697231)
+ + Fixes the the overflowing buffer bug of multithreading hbmv and sbmv.
+ (Closes: #697232)
+ + Fixes crash on 32-bit Athlon CPUs. (Closes: #697233)
+ + Better handling of unknown amd64 CPUs (e.g. within qemu).
+ (Closes: #697235)
+ * Disable processor affinity. (Closes: #684338)
+ * Force the maximum number of threads to 2 when building the generic package
+ (as we do for ATLAS). Otherwise, it is the number of cores on the build
+ machine which is chosen instead.
+ * README.Debian: improve instructions for building the custom package
+
+ -- Sébastien Villemot <sebastien@debian.org> Sat, 02 Mar 2013 15:09:09 +0100
+
+openblas (0.2.5-1~exp1) experimental; urgency=low
+
+ [ Sébastien Villemot ]
+ * Update debian/watch
+ * Use my @debian.org email address
+ * Remove obsolete DM-Upload-Allowed flag
+
+ [ Sylvestre Ledru ]
+ * New upstream release
+ * generic_profile.diff removed (applied upstream)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 08 Dec 2012 16:24:30 +0100
+
+openblas (0.2.4-1~exp1) experimental; urgency=low
+
+ * New upstream release
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 15 Oct 2012 20:15:49 +0200
+
+openblas (0.2.3-1~exp1) experimental; urgency=low
+
+ * New upstream release
+ + Kills threads when unloading the library (Closes: #673061)
+
+ -- Sébastien Villemot <sebastien.villemot@ens.fr> Mon, 20 Aug 2012 12:18:07 +0000
+
+openblas (0.2.2-1~exp1) experimental; urgency=low
+
+ * New upstream release
+ * hurd.diff, hurd_gettid.diff, kfreebsd.diff, sparc.diff: remove patches,
+ applied upstream
+ * debian/rules: implement support for DEB_BUILD_OPTIONS=noopt
+
+ -- Sébastien Villemot <sebastien.villemot@ens.fr> Wed, 11 Jul 2012 16:32:27 +0000
+
+openblas (0.2.1-1~exp1) experimental; urgency=low
+
+ * New upstream release
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 02 Jul 2012 02:24:00 +0200
+
+openblas (0.1.1-5) unstable; urgency=low
+
+ * libopenblas-base.prerm: avoid crash if libblas.so.3gf already deleted
+ * Add myself to Uploaders
+ * Set DM-Upload-Allowed to yes
+
+ -- Sébastien Villemot <sebastien.villemot@ens.fr> Sun, 24 Jun 2012 16:15:11 +0000
+
+openblas (0.1.1-4) unstable; urgency=low
+
+ * Fix the FTBFS under KFreebsd. Thanks to Sébastien Villemot (Closes: #677165)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 13 Jun 2012 10:29:51 +0200
+
+openblas (0.1.1-3) unstable; urgency=low
+
+ * Upload in unstable
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 02 Jun 2012 17:33:58 +0200
+
+openblas (0.1.1-3~exp4) experimental; urgency=low
+
+ * Rollback previous upload
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 01 Jun 2012 11:04:51 +0200
+
+openblas (0.1.1-3~exp3) experimental; urgency=low
+
+ * Fix a bad alternative link to the old library name
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 01 Jun 2012 10:28:09 +0200
+
+openblas (0.1.1-3~exp2) experimental; urgency=low
+
+ * Fix FTBFS (Closes: #666277)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 30 May 2012 14:52:40 +0200
+
+openblas (0.1.1-3~exp1) experimental; urgency=low
+
+ * Replaces and Breaks updated against the right versions of other impacted
+ packages
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 21 May 2012 13:13:46 +0200
+
+openblas (0.1.1-2) experimental; urgency=low
+
+ * Moved removal from postinst to preinst
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 18 May 2012 15:58:32 +0200
+
+openblas (0.1.1-1) experimental; urgency=low
+
+ * New upstream release
+ * Remove libblas.so.3gf references before the install
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 14 May 2012 18:47:53 +0200
+
+openblas (0.1.0-1) experimental; urgency=low
+
+ * New upstream release
+ * Standards-Version updated to 3.9.3
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 04 Apr 2012 14:31:34 +0200
+
+openblas (0.1alpha2.5-1~exp2) experimental; urgency=low
+
+ * Join modifications with blas, lapack, atlas and openblas.
+ Declare the replacements of all *3gf blas & lapack implementation
+ (See bug #660607)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 20 Feb 2012 19:33:41 +0100
+
+openblas (0.1alpha2.5-1~exp1) experimental; urgency=low
+
+ * New upstream release
+ * Fix an upgrade issue (Closes: #659786)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sun, 19 Feb 2012 15:50:41 +0100
+
+openblas (0.1alpha2.3-1~exp1) experimental; urgency=low
+
+ * New upstream release
+ Fix FTBFS under KfreeBSD (Closes: #635552)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 05 Sep 2011 15:24:24 +0200
+
+openblas (0.1alpha2.2-4~exp1) experimental; urgency=low
+
+ * Rename the reference libblas.so.3gf to libblas.so.3
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 03 Sep 2011 20:24:39 +0200
+
+openblas (0.1alpha2.2-3) unstable; urgency=low
+
+ * Same player try again: the lib has different names with build with the
+ dynamic arch or not.
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 26 Jul 2011 18:40:04 +0200
+
+openblas (0.1alpha2.2-2) unstable; urgency=low
+
+ * Disable dynamic arch on non amd64 / i386 archs (Closes: #631887)
+ * Fix a FTBFS under hurd
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 26 Jul 2011 16:56:27 +0200
+
+openblas (0.1alpha2.2-1) unstable; urgency=low
+
+ * New upstream release (Closes: #631886)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 25 Jul 2011 10:46:44 +0200
+
+openblas (0.1alpha2.1-1) unstable; urgency=low
+
+ * New upstream release
+ * gfortran added a build dep
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 29 Jun 2011 21:18:48 +0200
+
+openblas (0.1alpha2-1) unstable; urgency=low
+
+ * New upstream release
+ * Good news: use DYNAMIC_ARCH=1 in the build option of OpenBLAS/Gotoblas
+ to support multiple architecture. All kernel will be included in the library
+ and dynamically switched the best architecture at run time.
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Thu, 23 Jun 2011 10:44:43 +0200
+
+openblas (0.1alpha1-4) experimental; urgency=low
+
+ * Fix FTBFS under kfreebsd, sparc & hurd.
+ * Limit architectures to amd64 i386 ia64 powerpc powerpcspe ppc64
+ kfreebsd-i386 kfreebsd-amd64 hurd-i386 sparc
+ * cherry-pick from upstream to fail build when the arch is not supported
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 30 May 2011 17:05:23 +0200
+
+openblas (0.1alpha1-3) experimental; urgency=low
+
+ * clean target now really cleans everything. Thanks to Ryan Lovett
+ (Closes: #624253)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 04 May 2011 18:03:10 +0200
+
+openblas (0.1alpha1-2) experimental; urgency=low
+
+ * Update the README.Debian file
+ * watch file removed for now (it was the one from atlas)
+ * Fix a custom build issue (thanks to Ryan Lovett for the bug report)
+ * Fix a FTBFS under sparc
+ * Switch to dpkg-source 3.0 (quilt) format
+ * Standards-Version updated to version 3.9.2
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 16 Apr 2011 15:23:22 +0200
+
+openblas (0.1alpha1-1) experimental; urgency=low
+
+ * Initial version (Closes: #605456)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 04 Feb 2011 18:28:26 +0100
--- /dev/null
+Source: openblas
+Maintainer: Debian Science Team <debian-science-maintainers@lists.alioth.debian.org>
+Uploaders: Sébastien Villemot <sebastien@debian.org>,
+ Mo Zhou <lumin@debian.org>
+Section: devel
+Priority: optional
+Build-Depends: debhelper-compat (= 13),
+ debhelper (>= 12.8~),
+ gfortran,
+ liblapack-dev (>= 3.10.0-2~),
+ liblapack64-dev (>= 3.10.0-2~) [amd64 arm64 ppc64el ppc64 kfreebsd-amd64 mips64el riscv64 sparc64 s390x],
+Standards-Version: 4.6.1
+Vcs-Browser: https://salsa.debian.org/science-team/openblas
+Vcs-Git: https://salsa.debian.org/science-team/openblas.git
+Homepage: https://www.openblas.net/
+Rules-Requires-Root: no
+
+# 32-bit indexing version
+
+Package: libopenblas0
+Architecture: amd64 arm64 armhf i386 powerpc ppc64el ppc64 kfreebsd-i386 kfreebsd-amd64 mips64el riscv64 sparc64 s390x
+Multi-Arch: same
+Section: metapackages
+Depends: ${misc:Depends},
+ libopenblas0-pthread | libopenblas0-openmp | libopenblas0-serial,
+Breaks: libblas3 (<< 3.7.1-2~),
+ liblapack3 (<< 3.7.1-2~),
+ libatlas3-base (<< 3.10.3-4~),
+ libopenblas-dev (<< 0.2.20+ds-3~)
+Description: Optimized BLAS (linear algebra) library (meta)
+ OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
+ .
+ On amd64, arm64, i386, ppc64el, s390x, kfreebsd-amd64 and kfreebsd-i386,
+ all kernels are included in the library and the one matching best your
+ processor is selected at runtime.
+ .
+ On other architectures, for maximum performance, you may want to rebuild
+ OpenBLAS locally, see the section: “Building an optimized OpenBLAS package for
+ your machine” in README.Debian.
+
+Package: libopenblas0-pthread
+Architecture: amd64 arm64 armhf i386 powerpc ppc64el ppc64 kfreebsd-i386 kfreebsd-amd64 mips64el riscv64 sparc64 s390x
+Multi-Arch: same
+Section: libs
+Depends: ${shlibs:Depends},
+ ${misc:Depends}
+Breaks: libblas3 (<< 3.7.1-2~),
+ liblapack3 (<< 3.7.1-2~),
+ libatlas3-base (<< 3.10.3-4~),
+ libopenblas-dev (<< 0.2.20+ds-3~)
+Provides: libblas.so.3,
+ liblapack.so.3
+Description: Optimized BLAS (linear algebra) library (shared lib, pthread)
+ OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
+ .
+ On amd64, arm64, i386, ppc64el, s390x, kfreebsd-amd64 and kfreebsd-i386,
+ all kernels are included in the library and the one matching best your
+ processor is selected at runtime.
+ .
+ On other architectures, for maximum performance, you may want to rebuild
+ OpenBLAS locally, see the section: “Building an optimized OpenBLAS package for
+ your machine” in README.Debian.
+ .
+ Configuration: USE_THREAD=1 USE_OPENMP=0 INTERFACE64=0
+
+Package: libopenblas0-openmp
+Architecture: amd64 arm64 armhf i386 powerpc ppc64el ppc64 kfreebsd-i386 kfreebsd-amd64 mips64el riscv64 sparc64 s390x
+Multi-Arch: same
+Section: libs
+Depends: ${shlibs:Depends},
+ ${misc:Depends}
+Breaks: libblas3 (<< 3.7.1-2~),
+ liblapack3 (<< 3.7.1-2~),
+ libatlas3-base (<< 3.10.3-4~),
+ libopenblas-dev (<< 0.2.20+ds-3~)
+Provides: libblas.so.3,
+ liblapack.so.3
+Description: Optimized BLAS (linear algebra) library (shared lib, openmp)
+ OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
+ .
+ On amd64, arm64, i386, ppc64el, s390x, kfreebsd-amd64 and kfreebsd-i386,
+ all kernels are included in the library and the one matching best your
+ processor is selected at runtime.
+ .
+ On other architectures, for maximum performance, you may want to rebuild
+ OpenBLAS locally, see the section: “Building an optimized OpenBLAS package for
+ your machine” in README.Debian.
+ .
+ Configuration: USE_THREAD=1 USE_OPENMP=1 INTERFACE64=0
+
+Package: libopenblas0-serial
+Architecture: amd64 arm64 armhf i386 powerpc ppc64el ppc64 kfreebsd-i386 kfreebsd-amd64 mips64el riscv64 sparc64 s390x
+Multi-Arch: same
+Section: libs
+Depends: ${shlibs:Depends},
+ ${misc:Depends}
+Breaks: libblas3 (<< 3.7.1-2~),
+ liblapack3 (<< 3.7.1-2~),
+ libatlas3-base (<< 3.10.3-4~),
+ libopenblas-dev (<< 0.2.20+ds-3~)
+Provides: libblas.so.3,
+ liblapack.so.3
+Description: Optimized BLAS (linear algebra) library (shared lib, serial)
+ OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
+ .
+ On amd64, arm64, i386, ppc64el, s390x, kfreebsd-amd64 and kfreebsd-i386,
+ all kernels are included in the library and the one matching best your
+ processor is selected at runtime.
+ .
+ On other architectures, for maximum performance, you may want to rebuild
+ OpenBLAS locally, see the section: “Building an optimized OpenBLAS package for
+ your machine” in README.Debian.
+ .
+ Configuration: USE_THREAD=0 USE_OPENMP=0 INTERFACE64=0
+
+Package: libopenblas-dev
+Architecture: amd64 arm64 armhf i386 powerpc ppc64el ppc64 kfreebsd-i386 kfreebsd-amd64 mips64el riscv64 sparc64 s390x
+Multi-Arch: same
+Section: metapackages
+Depends: libopenblas0 (= ${binary:Version}),
+ ${misc:Depends},
+ libopenblas-pthread-dev | libopenblas-openmp-dev | libopenblas-serial-dev,
+Breaks: libblas-dev (<< 3.7.1-2~),
+ liblapack-dev (<< 3.7.1-2~),
+ libatlas-base-dev (<< 3.10.3-4~)
+Description: Optimized BLAS (linear algebra) library (dev, meta)
+ OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
+ .
+ On amd64, arm64, i386, ppc64el, s390x, kfreebsd-amd64 and kfreebsd-i386,
+ all kernels are included in the library and the one matching best your
+ processor is selected at runtime.
+ .
+ On other architectures, for maximum performance, you may want to rebuild
+ OpenBLAS locally, see the section: “Building an optimized OpenBLAS package for
+ your machine” in README.Debian.
+ .
+ This package includes the static libraries and symbolic links
+ needed for program development.
+
+Package: libopenblas-pthread-dev
+Architecture: amd64 arm64 armhf i386 powerpc ppc64el ppc64 kfreebsd-i386 kfreebsd-amd64 mips64el riscv64 sparc64 s390x
+Multi-Arch: same
+Section: libdevel
+Depends: libopenblas0-pthread (= ${binary:Version}),
+ ${misc:Depends}
+Breaks: libblas-dev (<< 3.7.1-2~),
+ liblapack-dev (<< 3.7.1-2~),
+ libatlas-base-dev (<< 3.10.3-4~)
+Provides: libblas.so,
+ liblapack.so
+Description: Optimized BLAS (linear algebra) library (dev, pthread)
+ OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
+ .
+ On amd64, arm64, i386, ppc64el, s390x, kfreebsd-amd64 and kfreebsd-i386,
+ all kernels are included in the library and the one matching best your
+ processor is selected at runtime.
+ .
+ On other architectures, for maximum performance, you may want to rebuild
+ OpenBLAS locally, see the section: “Building an optimized OpenBLAS package for
+ your machine” in README.Debian.
+ .
+ This package includes the static libraries and symbolic links
+ needed for program development.
+ .
+ Configuration: USE_THREAD=1 USE_OPENMP=0 INTERFACE64=0
+
+Package: libopenblas-openmp-dev
+Architecture: amd64 arm64 armhf i386 powerpc ppc64el ppc64 kfreebsd-i386 kfreebsd-amd64 mips64el riscv64 sparc64 s390x
+Multi-Arch: same
+Section: libdevel
+Depends: libopenblas0-openmp (= ${binary:Version}),
+ ${misc:Depends}
+Breaks: libblas-dev (<< 3.7.1-2~),
+ liblapack-dev (<< 3.7.1-2~),
+ libatlas-base-dev (<< 3.10.3-4~)
+Provides: libblas.so,
+ liblapack.so
+Description: Optimized BLAS (linear algebra) library (dev, openmp)
+ OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
+ .
+ On amd64, arm64, i386, ppc64el, s390x, kfreebsd-amd64 and kfreebsd-i386,
+ all kernels are included in the library and the one matching best your
+ processor is selected at runtime.
+ .
+ On other architectures, for maximum performance, you may want to rebuild
+ OpenBLAS locally, see the section: “Building an optimized OpenBLAS package for
+ your machine” in README.Debian.
+ .
+ This package includes the static libraries and symbolic links
+ needed for program development.
+ .
+ Configuration: USE_THREAD=1 USE_OPENMP=1 INTERFACE64=0
+
+Package: libopenblas-serial-dev
+Architecture: amd64 arm64 armhf i386 powerpc ppc64el ppc64 kfreebsd-i386 kfreebsd-amd64 mips64el riscv64 sparc64 s390x
+Multi-Arch: same
+Section: libdevel
+Depends: libopenblas0-serial (= ${binary:Version}),
+ ${misc:Depends}
+Breaks: libblas-dev (<< 3.7.1-2~),
+ liblapack-dev (<< 3.7.1-2~),
+ libatlas-base-dev (<< 3.10.3-4~)
+Provides: libblas.so,
+ liblapack.so
+Description: Optimized BLAS (linear algebra) library (dev, serial)
+ OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
+ .
+ On amd64, arm64, i386, ppc64el, s390x, kfreebsd-amd64 and kfreebsd-i386,
+ all kernels are included in the library and the one matching best your
+ processor is selected at runtime.
+ .
+ On other architectures, for maximum performance, you may want to rebuild
+ OpenBLAS locally, see the section: “Building an optimized OpenBLAS package for
+ your machine” in README.Debian.
+ .
+ This package includes the static libraries and symbolic links
+ needed for program development.
+ .
+ Configuration: USE_THREAD=0 USE_OPENMP=0 INTERFACE64=0
+
+# 64-bit indexing version
+
+Package: libopenblas64-0
+Architecture: amd64 arm64 kfreebsd-amd64 ppc64 ppc64el mips64el riscv64 sparc64 s390x
+Multi-Arch: same
+Section: metapackages
+Depends: ${misc:Depends},
+ libopenblas64-0-pthread | libopenblas64-0-openmp | libopenblas64-0-serial,
+Description: Optimized BLAS (linear algebra) library (shared lib, 64bit, meta)
+ OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
+ .
+ On amd64, arm64, i386, ppc64el, s390x, kfreebsd-amd64 and kfreebsd-i386,
+ all kernels are included in the library and the one matching best your
+ processor is selected at runtime.
+ .
+ On other architectures, for maximum performance, you may want to rebuild
+ OpenBLAS locally, see the section: “Building an optimized OpenBLAS package for
+ your machine” in README.Debian.
+ .
+ This metapackage provides a 64-bit indexing version.
+
+Package: libopenblas64-0-pthread
+Architecture: amd64 arm64 kfreebsd-amd64 ppc64 ppc64el mips64el riscv64 sparc64 s390x
+Multi-Arch: same
+Section: libs
+Depends: ${shlibs:Depends},
+ ${misc:Depends}
+Provides: libblas64.so.3,
+ liblapack64.so.3
+Description: Optimized BLAS (linear algebra) library (shared lib, 64bit, pthread)
+ OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
+ .
+ On amd64, arm64, i386, ppc64el, s390x, kfreebsd-amd64 and kfreebsd-i386,
+ all kernels are included in the library and the one matching best your
+ processor is selected at runtime.
+ .
+ On other architectures, for maximum performance, you may want to rebuild
+ OpenBLAS locally, see the section: “Building an optimized OpenBLAS package for
+ your machine” in README.Debian.
+ .
+ Configuration: USE_THREAD=1 USE_OPENMP=0 INTERFACE64=1
+
+Package: libopenblas64-0-openmp
+Architecture: amd64 arm64 kfreebsd-amd64 ppc64 ppc64el mips64el riscv64 sparc64 s390x
+Multi-Arch: same
+Section: libs
+Depends: ${shlibs:Depends},
+ ${misc:Depends}
+Provides: libblas64.so.3,
+ liblapack64.so.3
+Description: Optimized BLAS (linear algebra) library (shared lib, 64bit, openmp)
+ OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
+ .
+ On amd64, arm64, i386, ppc64el, s390x, kfreebsd-amd64 and kfreebsd-i386,
+ all kernels are included in the library and the one matching best your
+ processor is selected at runtime.
+ .
+ On other architectures, for maximum performance, you may want to rebuild
+ OpenBLAS locally, see the section: “Building an optimized OpenBLAS package for
+ your machine” in README.Debian.
+ .
+ Configuration: USE_THREAD=1 USE_OPENMP=1 INTERFACE64=1
+
+Package: libopenblas64-0-serial
+Architecture: amd64 arm64 kfreebsd-amd64 ppc64 ppc64el mips64el riscv64 sparc64 s390x
+Multi-Arch: same
+Section: libs
+Depends: ${shlibs:Depends},
+ ${misc:Depends}
+Provides: libblas64.so.3,
+ liblapack64.so.3
+Description: Optimized BLAS (linear algebra) library (shared lib, 64bit, serial)
+ OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
+ .
+ On amd64, arm64, i386, ppc64el, s390x, kfreebsd-amd64 and kfreebsd-i386,
+ all kernels are included in the library and the one matching best your
+ processor is selected at runtime.
+ .
+ On other architectures, for maximum performance, you may want to rebuild
+ OpenBLAS locally, see the section: “Building an optimized OpenBLAS package for
+ your machine” in README.Debian.
+ .
+ Configuration: USE_THREAD=0 USE_OPENMP=0 INTERFACE64=1
+
+Package: libopenblas64-dev
+Architecture: amd64 arm64 kfreebsd-amd64 ppc64 ppc64el mips64el riscv64 sparc64 s390x
+Multi-Arch: same
+Section: metapackages
+Depends: libopenblas64-0 (= ${binary:Version}),
+ ${misc:Depends},
+ libopenblas64-pthread-dev | libopenblas64-openmp-dev | libopenblas64-serial-dev,
+Description: Optimized BLAS (linear algebra) library (dev, 64bit, meta)
+ OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
+ .
+ On amd64, arm64, i386, ppc64el, s390x, kfreebsd-amd64 and kfreebsd-i386,
+ all kernels are included in the library and the one matching best your
+ processor is selected at runtime.
+ .
+ On other architectures, for maximum performance, you may want to rebuild
+ OpenBLAS locally, see the section: “Building an optimized OpenBLAS package for
+ your machine” in README.Debian.
+ .
+ This package includes the static libraries and symbolic links
+ needed for program development.
+ .
+ This metapackage provides a 64-bit indexing version.
+
+Package: libopenblas64-pthread-dev
+Architecture: amd64 arm64 kfreebsd-amd64 ppc64 ppc64el mips64el riscv64 sparc64 s390x
+Multi-Arch: same
+Section: libdevel
+Depends: libopenblas64-0-pthread (= ${binary:Version}),
+ ${misc:Depends}
+Provides: libblas64.so,
+ liblapack64.so
+Description: Optimized BLAS (linear algebra) library (dev, 64bit, pthread)
+ OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
+ .
+ On amd64, arm64, i386, ppc64el, s390x, kfreebsd-amd64 and kfreebsd-i386,
+ all kernels are included in the library and the one matching best your
+ processor is selected at runtime.
+ .
+ On other architectures, for maximum performance, you may want to rebuild
+ OpenBLAS locally, see the section: “Building an optimized OpenBLAS package for
+ your machine” in README.Debian.
+ .
+ This package includes the static libraries and symbolic links
+ needed for program development.
+ .
+ Configuration: USE_THREAD=1 USE_OPENMP=0 INTERFACE64=1
+
+Package: libopenblas64-openmp-dev
+Architecture: amd64 arm64 kfreebsd-amd64 ppc64 ppc64el mips64el riscv64 sparc64 s390x
+Multi-Arch: same
+Section: libdevel
+Depends: libopenblas64-0-openmp (= ${binary:Version}),
+ ${misc:Depends}
+Provides: libblas64.so,
+ liblapack64.so
+Description: Optimized BLAS (linear algebra) library (dev, 64bit, openmp)
+ OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
+ .
+ On amd64, arm64, i386, ppc64el, s390x, kfreebsd-amd64 and kfreebsd-i386,
+ all kernels are included in the library and the one matching best your
+ processor is selected at runtime.
+ .
+ On other architectures, for maximum performance, you may want to rebuild
+ OpenBLAS locally, see the section: “Building an optimized OpenBLAS package for
+ your machine” in README.Debian.
+ .
+ This package includes the static libraries and symbolic links
+ needed for program development.
+ .
+ Configuration: USE_THREAD=1 USE_OPENMP=1 INTERFACE64=1
+
+Package: libopenblas64-serial-dev
+Architecture: amd64 arm64 kfreebsd-amd64 ppc64 ppc64el mips64el riscv64 sparc64 s390x
+Multi-Arch: same
+Section: libdevel
+Depends: libopenblas64-0-serial (= ${binary:Version}),
+ ${misc:Depends}
+Provides: libblas64.so,
+ liblapack64.so
+Description: Optimized BLAS (linear algebra) library (dev, 64bit, serial)
+ OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
+ .
+ On amd64, arm64, i386, ppc64el, s390x, kfreebsd-amd64 and kfreebsd-i386,
+ all kernels are included in the library and the one matching best your
+ processor is selected at runtime.
+ .
+ On other architectures, for maximum performance, you may want to rebuild
+ OpenBLAS locally, see the section: “Building an optimized OpenBLAS package for
+ your machine” in README.Debian.
+ .
+ This package includes the static libraries and symbolic links
+ needed for program development.
+ .
+ Configuration: USE_THREAD=0 USE_OPENMP=0 INTERFACE64=1
--- /dev/null
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: OpenBLAS
+Upstream-Contact: Zhang Xianyi <traits.zhang@gmail.com>
+Source: https://github.com/xianyi/OpenBLAS
+Files-Excluded: lapack-netlib/*
+ relapack/*
+
+Files: *
+Copyright: 2011-2022 The OpenBLAS Project
+ 2009-2010 The University of Texas at Austin
+ 2013 Martin Koehler, grisuthedragon@users.github.com
+ 2020 IBM Corporation
+License: BSD-3-clause
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are
+ met:
+ .
+ 1. Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ .
+ 2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in
+ the documentation and/or other materials provided with the
+ distribution.
+ 3. Neither the name of the OpenBLAS project nor the names of
+ its contributors may be used to endorse or promote products
+ derived from this software without specific prior written
+ permission.
+ .
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
+ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+Files: benchmark/cholesky.c
+ benchmark/linpack.c
+ benchmark/geev.c
+ benchmark/getri.c
+ benchmark/gesv.c
+ benchmark/potrf.c
+ common.h
+ common_alpha.h
+ common_ia64.h
+ common_interface.h
+ common_lapack.h
+ common_level1.h
+ common_level2.h
+ common_level3.h
+ common_linux.h
+ common_macro.h
+ common_param.h
+ common_power.h
+ common_sparc.h
+ common_thread.h
+ common_x86.h
+ common_x86_64.h
+ cpuid.h
+ cpuid_alpha.c
+ cpuid_ia64.c
+ cpuid_power.c
+ cpuid_sparc.c
+ cpuid_x86.c
+ driver/level2/gbmv_k.c
+ driver/level2/gbmv_thread.c
+ driver/level2/gemv_thread.c
+ driver/level2/ger_thread.c
+ driver/level2/sbgemv_thread.c
+ driver/level2/sbmv_k.c
+ driver/level2/sbmv_thread.c
+ driver/level2/spmv_k.c
+ driver/level2/spmv_thread.c
+ driver/level2/spr2_k.c
+ driver/level2/spr2_thread.c
+ driver/level2/spr_k.c
+ driver/level2/spr_thread.c
+ driver/level2/symv_thread.c
+ driver/level2/syr2_k.c
+ driver/level2/syr2_thread.c
+ driver/level2/syr_k.c
+ driver/level2/syr_thread.c
+ driver/level2/tbmv_L.c
+ driver/level2/tbmv_U.c
+ driver/level2/tbmv_thread.c
+ driver/level2/tbsv_L.c
+ driver/level2/tbsv_U.c
+ driver/level2/tpmv_L.c
+ driver/level2/tpmv_U.c
+ driver/level2/tpmv_thread.c
+ driver/level2/tpsv_L.c
+ driver/level2/tpsv_U.c
+ driver/level2/trmv_L.c
+ driver/level2/trmv_U.c
+ driver/level2/trmv_thread.c
+ driver/level2/trsv_L.c
+ driver/level2/trsv_U.c
+ driver/level2/zgbmv_k.c
+ driver/level2/zhbmv_k.c
+ driver/level2/zher2_k.c
+ driver/level2/zher_k.c
+ driver/level2/zhpmv_k.c
+ driver/level2/zhpr2_k.c
+ driver/level2/zhpr_k.c
+ driver/level2/zsbmv_k.c
+ driver/level2/zspmv_k.c
+ driver/level2/zspr2_k.c
+ driver/level2/zspr_k.c
+ driver/level2/zsyr2_k.c
+ driver/level2/zsyr_k.c
+ driver/level2/ztbmv_L.c
+ driver/level2/ztbmv_U.c
+ driver/level2/ztbsv_L.c
+ driver/level2/ztbsv_U.c
+ driver/level2/ztpmv_L.c
+ driver/level2/ztpmv_U.c
+ driver/level2/ztpsv_L.c
+ driver/level2/ztpsv_U.c
+ driver/level2/ztrmv_L.c
+ driver/level2/ztrmv_U.c
+ driver/level2/ztrsv_L.c
+ driver/level2/ztrsv_U.c
+ driver/level3/gemm.c
+ driver/level3/gemm3m.c
+ driver/level3/gemm3m_level3.c
+ driver/level3/gemm_thread_m.c
+ driver/level3/gemm_thread_mn.c
+ driver/level3/gemm_thread_n.c
+ driver/level3/gemm_thread_variable.c
+ driver/level3/hemm3m_k.c
+ driver/level3/level3.c
+ driver/level3/level3_gemm3m_thread.c
+ driver/level3/level3_syrk.c
+ driver/level3/level3_syr2k.c
+ driver/level3/level3_syrk_threaded.c
+ driver/level3/level3_thread.c
+ driver/level3/symm_k.c
+ driver/level3/syr2k_k.c
+ driver/level3/syr2k_kernel.c
+ driver/level3/syrk_k.c
+ driver/level3/syrk_kernel.c
+ driver/level3/syrk_thread.c
+ driver/level3/trmm_L.c
+ driver/level3/trmm_R.c
+ driver/level3/trsm_L.c
+ driver/level3/trsm_R.c
+ driver/level3/zhemm_k.c
+ driver/level3/zher2k_k.c
+ driver/level3/zher2k_kernel.c
+ driver/level3/zherk_beta.c
+ driver/level3/zherk_k.c
+ driver/level3/zherk_kernel.c
+ driver/level3/zsyrk_beta.c
+ driver/level3/symm3m_k.c
+ driver/mapper/mapper.c
+ driver/others/abs.c
+ driver/others/blas_l1_thread.c
+ driver/others/blas_server_omp.c
+ driver/others/blas_server_win32.c
+ driver/others/divtable.c
+ driver/others/dynamic.c
+ driver/others/dynamic_arm64.c
+ driver/others/lamc3.c
+ driver/others/lamch.c
+ driver/others/lsame.c
+ driver/others/memory_qalloc.c
+ driver/others/parameter.c
+ driver/others/profile.c
+ driver/others/xerbla.c
+ exports/dllinit.c
+ interface/asum.c
+ interface/axpy.c
+ interface/copy.c
+ interface/dot.c
+ interface/dsdot.c
+ interface/gbmv.c
+ interface/geadd.c
+ interface/gemm.c
+ interface/gemv.c
+ interface/ger.c
+ interface/imax.c
+ interface/lapack/gesv.c
+ interface/lapack/getf2.c
+ interface/lapack/getrf.c
+ interface/lapack/getrs.c
+ interface/lapack/laswp.c
+ interface/lapack/lauu2.c
+ interface/lapack/lauum.c
+ interface/lapack/potf2.c
+ interface/lapack/potrf.c
+ interface/lapack/potri.c
+ interface/lapack/trti2.c
+ interface/lapack/trtri.c
+ interface/lapack/trtrs.c
+ interface/lapack/zgetf2.c
+ interface/lapack/zgetrf.c
+ interface/lapack/zgetrs.c
+ interface/lapack/zlaswp.c
+ interface/lapack/zlauu2.c
+ interface/lapack/zlauum.c
+ interface/lapack/zpotf2.c
+ interface/lapack/zpotrf.c
+ interface/lapack/zpotri.c
+ interface/lapack/ztrti2.c
+ interface/lapack/ztrtri.c
+ interface/lapack/ztrtrs.c
+ interface/max.c
+ interface/nrm2.c
+ interface/rot.c
+ interface/sbgemv.c
+ interface/sbmv.c
+ interface/scal.c
+ interface/sdsdot.c
+ interface/spmv.c
+ interface/spr.c
+ interface/spr2.c
+ interface/swap.c
+ interface/symm.c
+ interface/symv.c
+ interface/syr.c
+ interface/syr2.c
+ interface/syr2k.c
+ interface/syrk.c
+ interface/tbmv.c
+ interface/tbsv.c
+ interface/tpmv.c
+ interface/tpsv.c
+ interface/trmv.c
+ interface/trsm.c
+ interface/trsv.c
+ interface/zaxpy.c
+ interface/zdot.c
+ interface/zgbmv.c
+ interface/zgeadd.c
+ interface/zgemv.c
+ interface/zger.c
+ interface/zhbmv.c
+ interface/zhemv.c
+ interface/zher.c
+ interface/zher2.c
+ interface/zhpmv.c
+ interface/zhpr.c
+ interface/zhpr2.c
+ interface/zrot.c
+ interface/zsbmv.c
+ interface/zscal.c
+ interface/zspmv.c
+ interface/zspr.c
+ interface/zspr2.c
+ interface/zswap.c
+ interface/zsymv.c
+ interface/zsyr.c
+ interface/zsyr2.c
+ interface/ztbmv.c
+ interface/ztbsv.c
+ interface/ztpmv.c
+ interface/ztpsv.c
+ interface/ztrmv.c
+ interface/ztrsv.c
+ kernel/arm64/cgemm_ncopy_sve_v1.c
+ kernel/arm64/cgemm_tcopy_sve_v1.c
+ kernel/arm64/dgemm_ncopy_sve_v1.c
+ kernel/arm64/dgemm_tcopy_sve_v1.c
+ kernel/arm64/sgemm_ncopy_sve_v1.c
+ kernel/arm64/sgemm_tcopy_sve_v1.c
+ kernel/arm64/symm_lcopy_sve.c
+ kernel/arm64/symm_ucopy_sve.c
+ kernel/arm64/trmm_lncopy_sve_v1.c
+ kernel/arm64/trmm_ltcopy_sve_v1.c
+ kernel/arm64/trmm_uncopy_sve_v1.c
+ kernel/arm64/trmm_utcopy_sve_v1.c
+ kernel/arm64/trsm_kernel_LN_sve.c
+ kernel/arm64/trsm_kernel_LT_sve.c
+ kernel/arm64/trsm_kernel_RN_sve.c
+ kernel/arm64/trsm_kernel_RT_sve.c
+ kernel/arm64/trsm_lncopy_sve.c
+ kernel/arm64/trsm_ltcopy_sve.c
+ kernel/arm64/trsm_uncopy_sve.c
+ kernel/arm64/trsm_utcopy_sve.c
+ kernel/arm64/zgemm_ncopy_sve_v1.c
+ kernel/arm64/zgemm_tcopy_sve_v1.c
+ kernel/arm64/zhemm_ltcopy_sve.c
+ kernel/arm64/zhemm_utcopy_sve.c
+ kernel/arm64/zsymm_lcopy_sve.c
+ kernel/arm64/zsymm_ucopy_sve.c
+ kernel/arm64/ztrmm_lncopy_sve_v1.c
+ kernel/arm64/ztrmm_ltcopy_sve_v1.c
+ kernel/arm64/ztrmm_uncopy_sve_v1.c
+ kernel/arm64/ztrmm_utcopy_sve_v1.c
+ kernel/arm64/ztrsm_lncopy_sve.c
+ kernel/arm64/ztrsm_ltcopy_sve.c
+ kernel/arm64/ztrsm_uncopy_sve.c
+ kernel/arm64/ztrsm_utcopy_sve.c
+ kernel/generic/cabs.c
+ kernel/generic/gemm_beta.c
+ kernel/generic/gemm_ncopy_1.c
+ kernel/generic/gemm_ncopy_16.c
+ kernel/generic/gemm_ncopy_2.c
+ kernel/generic/gemm_ncopy_4.c
+ kernel/generic/gemm_ncopy_6.c
+ kernel/generic/gemm_ncopy_8.c
+ kernel/generic/gemm_tcopy_1.c
+ kernel/generic/gemm_tcopy_16.c
+ kernel/generic/gemm_tcopy_2.c
+ kernel/generic/gemm_tcopy_4.c
+ kernel/generic/gemm_tcopy_6.c
+ kernel/generic/gemm_tcopy_8.c
+ kernel/generic/ger.c
+ kernel/generic/laswp_ncopy_1.c
+ kernel/generic/laswp_ncopy_2.c
+ kernel/generic/laswp_ncopy_4.c
+ kernel/generic/laswp_ncopy_8.c
+ kernel/generic/lsame.c
+ kernel/generic/neg_tcopy_1.c
+ kernel/generic/neg_tcopy_16.c
+ kernel/generic/neg_tcopy_2.c
+ kernel/generic/neg_tcopy_4.c
+ kernel/generic/neg_tcopy_8.c
+ kernel/generic/symm_lcopy_1.c
+ kernel/generic/symm_lcopy_16.c
+ kernel/generic/symm_lcopy_2.c
+ kernel/generic/symm_lcopy_4.c
+ kernel/generic/symm_lcopy_6.c
+ kernel/generic/symm_lcopy_8.c
+ kernel/generic/symm_ucopy_1.c
+ kernel/generic/symm_ucopy_16.c
+ kernel/generic/symm_ucopy_2.c
+ kernel/generic/symm_ucopy_4.c
+ kernel/generic/symm_ucopy_6.c
+ kernel/generic/symm_ucopy_8.c
+ kernel/generic/symv_k.c
+ kernel/generic/trmm_lncopy_1.c
+ kernel/generic/trmm_lncopy_16.c
+ kernel/generic/trmm_lncopy_2.c
+ kernel/generic/trmm_lncopy_4.c
+ kernel/generic/trmm_lncopy_6.c
+ kernel/generic/trmm_lncopy_8.c
+ kernel/generic/trmm_ltcopy_1.c
+ kernel/generic/trmm_ltcopy_16.c
+ kernel/generic/trmm_ltcopy_2.c
+ kernel/generic/trmm_ltcopy_4.c
+ kernel/generic/trmm_ltcopy_6.c
+ kernel/generic/trmm_ltcopy_8.c
+ kernel/generic/trmm_uncopy_1.c
+ kernel/generic/trmm_uncopy_16.c
+ kernel/generic/trmm_uncopy_2.c
+ kernel/generic/trmm_uncopy_4.c
+ kernel/generic/trmm_uncopy_6.c
+ kernel/generic/trmm_uncopy_8.c
+ kernel/generic/trmm_utcopy_1.c
+ kernel/generic/trmm_utcopy_16.c
+ kernel/generic/trmm_utcopy_2.c
+ kernel/generic/trmm_utcopy_4.c
+ kernel/generic/trmm_utcopy_6.c
+ kernel/generic/trmm_utcopy_8.c
+ kernel/generic/trsm_kernel_LN.c
+ kernel/generic/trsm_kernel_LT.c
+ kernel/generic/trsm_kernel_RN.c
+ kernel/generic/trsm_kernel_RT.c
+ kernel/generic/trsm_lncopy_1.c
+ kernel/generic/trsm_lncopy_16.c
+ kernel/generic/trsm_lncopy_2.c
+ kernel/generic/trsm_lncopy_4.c
+ kernel/generic/trsm_lncopy_6.c
+ kernel/generic/trsm_lncopy_8.c
+ kernel/generic/trsm_ltcopy_1.c
+ kernel/generic/trsm_ltcopy_16.c
+ kernel/generic/trsm_ltcopy_2.c
+ kernel/generic/trsm_ltcopy_4.c
+ kernel/generic/trsm_ltcopy_6.c
+ kernel/generic/trsm_ltcopy_8.c
+ kernel/generic/trsm_uncopy_1.c
+ kernel/generic/trsm_uncopy_16.c
+ kernel/generic/trsm_uncopy_2.c
+ kernel/generic/trsm_uncopy_4.c
+ kernel/generic/trsm_uncopy_6.c
+ kernel/generic/trsm_uncopy_8.c
+ kernel/generic/trsm_utcopy_1.c
+ kernel/generic/trsm_utcopy_16.c
+ kernel/generic/trsm_utcopy_2.c
+ kernel/generic/trsm_utcopy_4.c
+ kernel/generic/trsm_utcopy_6.c
+ kernel/generic/trsm_utcopy_8.c
+ kernel/generic/zgemm3m_ncopy_1.c
+ kernel/generic/zgemm3m_ncopy_2.c
+ kernel/generic/zgemm3m_ncopy_4.c
+ kernel/generic/zgemm3m_ncopy_8.c
+ kernel/generic/zgemm3m_tcopy_1.c
+ kernel/generic/zgemm3m_tcopy_2.c
+ kernel/generic/zgemm3m_tcopy_4.c
+ kernel/generic/zgemm3m_tcopy_8.c
+ kernel/generic/zgemm_beta.c
+ kernel/generic/zgemm_ncopy_1.c
+ kernel/generic/zgemm_ncopy_2.c
+ kernel/generic/zgemm_ncopy_4.c
+ kernel/generic/zgemm_ncopy_8.c
+ kernel/generic/zgemm_tcopy_1.c
+ kernel/generic/zgemm_tcopy_2.c
+ kernel/generic/zgemm_tcopy_4.c
+ kernel/generic/zgemm_tcopy_8.c
+ kernel/generic/zger.c
+ kernel/generic/zhemm3m_lcopy_1.c
+ kernel/generic/zhemm3m_lcopy_2.c
+ kernel/generic/zhemm3m_lcopy_4.c
+ kernel/generic/zhemm3m_lcopy_8.c
+ kernel/generic/zhemm3m_ucopy_1.c
+ kernel/generic/zhemm3m_ucopy_2.c
+ kernel/generic/zhemm3m_ucopy_4.c
+ kernel/generic/zhemm3m_ucopy_8.c
+ kernel/generic/zhemm_ltcopy_1.c
+ kernel/generic/zhemm_ltcopy_2.c
+ kernel/generic/zhemm_ltcopy_4.c
+ kernel/generic/zhemm_ltcopy_8.c
+ kernel/generic/zhemm_utcopy_1.c
+ kernel/generic/zhemm_utcopy_2.c
+ kernel/generic/zhemm_utcopy_4.c
+ kernel/generic/zhemm_utcopy_8.c
+ kernel/generic/zhemv_k.c
+ kernel/generic/zlaswp_ncopy_1.c
+ kernel/generic/zlaswp_ncopy_2.c
+ kernel/generic/zlaswp_ncopy_4.c
+ kernel/generic/zneg_tcopy_1.c
+ kernel/generic/zneg_tcopy_2.c
+ kernel/generic/zneg_tcopy_4.c
+ kernel/generic/zneg_tcopy_8.c
+ kernel/generic/zsymm3m_lcopy_1.c
+ kernel/generic/zsymm3m_lcopy_2.c
+ kernel/generic/zsymm3m_lcopy_4.c
+ kernel/generic/zsymm3m_lcopy_8.c
+ kernel/generic/zsymm3m_ucopy_1.c
+ kernel/generic/zsymm3m_ucopy_2.c
+ kernel/generic/zsymm3m_ucopy_4.c
+ kernel/generic/zsymm3m_ucopy_8.c
+ kernel/generic/zsymm_lcopy_1.c
+ kernel/generic/zsymm_lcopy_2.c
+ kernel/generic/zsymm_lcopy_4.c
+ kernel/generic/zsymm_lcopy_8.c
+ kernel/generic/zsymm_ucopy_1.c
+ kernel/generic/zsymm_ucopy_2.c
+ kernel/generic/zsymm_ucopy_4.c
+ kernel/generic/zsymm_ucopy_8.c
+ kernel/generic/zsymv_k.c
+ kernel/generic/ztrmm_lncopy_1.c
+ kernel/generic/ztrmm_lncopy_2.c
+ kernel/generic/ztrmm_lncopy_4.c
+ kernel/generic/ztrmm_lncopy_8.c
+ kernel/generic/ztrmm_ltcopy_1.c
+ kernel/generic/ztrmm_ltcopy_2.c
+ kernel/generic/ztrmm_ltcopy_4.c
+ kernel/generic/ztrmm_ltcopy_8.c
+ kernel/generic/ztrmm_uncopy_1.c
+ kernel/generic/ztrmm_uncopy_2.c
+ kernel/generic/ztrmm_uncopy_4.c
+ kernel/generic/ztrmm_uncopy_8.c
+ kernel/generic/ztrmm_utcopy_1.c
+ kernel/generic/ztrmm_utcopy_2.c
+ kernel/generic/ztrmm_utcopy_4.c
+ kernel/generic/ztrmm_utcopy_8.c
+ kernel/generic/ztrsm_lncopy_1.c
+ kernel/generic/ztrsm_lncopy_2.c
+ kernel/generic/ztrsm_lncopy_4.c
+ kernel/generic/ztrsm_lncopy_8.c
+ kernel/generic/ztrsm_ltcopy_1.c
+ kernel/generic/ztrsm_ltcopy_2.c
+ kernel/generic/ztrsm_ltcopy_4.c
+ kernel/generic/ztrsm_ltcopy_8.c
+ kernel/generic/ztrsm_uncopy_1.c
+ kernel/generic/ztrsm_uncopy_2.c
+ kernel/generic/ztrsm_uncopy_4.c
+ kernel/generic/ztrsm_uncopy_8.c
+ kernel/generic/ztrsm_utcopy_1.c
+ kernel/generic/ztrsm_utcopy_2.c
+ kernel/generic/ztrsm_utcopy_4.c
+ kernel/generic/ztrsm_utcopy_8.c
+ kernel/power/lock.c
+ kernel/power/dgemm_ncopy_8_power10.c
+ kernel/power/sbgemm_ncopy_16_power10.c
+ kernel/power/sbgemm_ncopy_8_power10.c
+ kernel/power/sbgemm_tcopy_16_power10.c
+ kernel/power/sbgemm_tcopy_8_power10.c
+ kernel/power/trsm_kernel_LN_power10.c
+ kernel/power/trsm_kernel_LT_power10.c
+ kernel/power/trsm_kernel_RN_power10.c
+ kernel/power/trsm_kernel_RT_power10.c
+ kernel/setparam-ref.c
+ kernel/x86_64/dger.c
+ kernel/x86_64/sger.c
+ kernel/x86_64/ctrsm_kernel_LN_bulldozer.c
+ kernel/x86_64/ctrsm_kernel_LT_bulldozer.c
+ kernel/x86_64/ctrsm_kernel_RN_bulldozer.c
+ kernel/x86_64/ctrsm_kernel_RT_bulldozer.c
+ kernel/x86_64/dgemm_beta_skylakex.c
+ kernel/x86_64/dgemm_kernel_16x2_skylakex.S
+ kernel/x86_64/dgemm_ncopy_8_skylakex.c
+ kernel/x86_64/dgemm_tcopy_8_skylakex.c
+ kernel/x86_64/dtrsm_kernel_LN_bulldozer.c
+ kernel/x86_64/dtrsm_kernel_RN_haswell.c
+ kernel/x86_64/dtrsm_kernel_RT_bulldozer.c
+ kernel/x86_64/sgemm_beta_skylakex.c
+ kernel/x86_64/sgemm_ncopy_4_skylakex.c
+ kernel/x86_64/sgemm_tcopy_16_skylakex.c
+ kernel/x86_64/strsm_kernel_LN_bulldozer.c
+ kernel/x86_64/strsm_kernel_LT_bulldozer.c
+ kernel/x86_64/strsm_kernel_RN_bulldozer.c
+ kernel/x86_64/strsm_kernel_RT_bulldozer.c
+ kernel/x86_64/ztrsm_kernel_LN_bulldozer.c
+ kernel/x86_64/ztrsm_kernel_LT_bulldozer.c
+ kernel/x86_64/ztrsm_kernel_RN_bulldozer.c
+ kernel/x86_64/ztrsm_kernel_RT_bulldozer.c
+ lapack/getf2/getf2_k.c
+ lapack/getf2/zgetf2_k.c
+ lapack/getrf/getrf_parallel.c
+ lapack/getrf/getrf_parallel_omp.c
+ lapack/getrf/getrf_single.c
+ lapack/getrs/getrs_parallel.c
+ lapack/getrs/getrs_single.c
+ lapack/getrs/zgetrs_parallel.c
+ lapack/getrs/zgetrs_single.c
+ lapack/laswp/generic/laswp_k.c
+ lapack/laswp/generic/laswp_k_1.c
+ lapack/laswp/generic/laswp_k_2.c
+ lapack/laswp/generic/laswp_k_4.c
+ lapack/laswp/generic/laswp_k_8.c
+ lapack/laswp/generic/zlaswp_k.c
+ lapack/laswp/generic/zlaswp_k_1.c
+ lapack/laswp/generic/zlaswp_k_2.c
+ lapack/laswp/generic/zlaswp_k_4.c
+ lapack/lauu2/lauu2_L.c
+ lapack/lauu2/lauu2_U.c
+ lapack/lauu2/zlauu2_L.c
+ lapack/lauu2/zlauu2_U.c
+ lapack/lauum/lauum_L_parallel.c
+ lapack/lauum/lauum_L_single.c
+ lapack/lauum/lauum_U_parallel.c
+ lapack/lauum/lauum_U_single.c
+ lapack/potf2/potf2_L.c
+ lapack/potf2/potf2_U.c
+ lapack/potf2/zpotf2_L.c
+ lapack/potf2/zpotf2_U.c
+ lapack/potrf/potrf_L_parallel.c
+ lapack/potrf/potrf_L_single.c
+ lapack/potrf/potrf_U_parallel.c
+ lapack/potrf/potrf_U_single.c
+ lapack/potrf/potrf_parallel.c
+ lapack/trti2/trti2_L.c
+ lapack/trti2/trti2_U.c
+ lapack/trti2/ztrti2_L.c
+ lapack/trti2/ztrti2_U.c
+ lapack/trtri/trtri_L_parallel.c
+ lapack/trtri/trtri_U_parallel.c
+ lapack/trtrs/trtrs_parallel.c
+ lapack/trtrs/trtrs_single.c
+ lapack/trtrs/ztrtrs_parallel.c
+ lapack/trtrs/ztrtrs_single.c
+ symcopy.h
+Copyright: 2009-2010 The University of Texas at Austin
+License: BSD-2-clause-texas
+ 1. Redistributions of source code must retain the above
+ copyright notice, this list of conditions and the following
+ disclaimer.
+ .
+ 2. Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials
+ provided with the distribution.
+ .
+ THIS SOFTWARE IS PROVIDED BY THE UNIVERSITY OF TEXAS AT
+ AUSTIN ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
+ INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ DISCLAIMED. IN NO EVENT SHALL THE UNIVERSITY OF TEXAS AT
+ AUSTIN OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+ GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ POSSIBILITY OF SUCH DAMAGE.
+ .
+ The views and conclusions contained in the software and
+ documentation are those of the authors and should not be
+ interpreted as representing official policies, either expressed
+ or implied, of The University of Texas at Austin.
+
+Files: ctest/* reference/* test/*
+Copyright: none
+License: public-domain
+ These files come from netlib.org and are in the public domain.
+
+Files: utest/ctest.h
+Copyright: 2011-2016 Bas van den Berg
+License: Apache-2.0
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+ .
+ http://www.apache.org/licenses/LICENSE-2.0
+ .
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ .
+ On Debian systems, the complete text of the Apache License,
+ version 2.0, can be found in the file
+ `/usr/share/common-licenses/Apache-2.0'.
+
+Files: debian/*
+Copyright: 2011-2012 Sylvestre Ledru <sylvestre@debian.org>
+ 2012-2022 Sébastien Villemot <sebastien@debian.org>
+License: BSD-2-clause
+ 1. Redistributions of source code must retain the above
+ copyright notice, this list of conditions and the following
+ disclaimer.
+ .
+ 2. Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials
+ provided with the distribution.
+ .
+ THIS SOFTWARE IS PROVIDED BY THE UNIVERSITY OF TEXAS AT
+ AUSTIN ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
+ INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ DISCLAIMED. IN NO EVENT SHALL THE UNIVERSITY OF TEXAS AT
+ AUSTIN OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+ GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ POSSIBILITY OF SUCH DAMAGE.
--- /dev/null
+prefix=/usr
+libdir=${prefix}/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@
+includedir=${prefix}/include/@DEB_HOST_MULTIARCH@
+Name: openblas-lapack@INDEXING@
+Description: Optimized BLAS (linear algebra) library, LAPACK
+Version: @DEB_VERSION_UPSTREAM@
+URL: https://github.com/xianyi/OpenBLAS
+Libs: -L${libdir} -llapack@INDEXING@
+Libs.private: -L${libdir} -llapack@INDEXING@ -lgfortran -lpthread -lm
+Cflags: -I${includedir}
--- /dev/null
+usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig
--- /dev/null
+usr/lib/*/@SUBDIR@/libopenblas*.a
+usr/lib/*/@SUBDIR@/libopenblas.so
+usr/lib/*/@SUBDIR@/pkgconfig/*
+usr/lib/*/cmake/@SUBDIR@/*
+usr/include/*/@SUBDIR@/*
--- /dev/null
+usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/libopenblas.a usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/libblas.a
+usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/libopenblas.a usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/liblapack.a
+usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/libblas.so.3 usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/libblas.so
+usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/liblapack.so.3 usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/liblapack.so
--- /dev/null
+#!/bin/sh
+set -e
+
+update-alternatives --install /usr/lib/@DEB_HOST_MULTIARCH@/libblas.so \
+ libblas.so-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libblas.so \
+ @OPENBLAS_PRI@ \
+ --slave /usr/lib/@DEB_HOST_MULTIARCH@/libblas.a \
+ libblas.a-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libblas.a \
+ --slave /usr/include/@DEB_HOST_MULTIARCH@/cblas.h \
+ cblas.h-@DEB_HOST_MULTIARCH@ \
+ /usr/include/@DEB_HOST_MULTIARCH@/@SUBDIR@/cblas.h \
+ --slave /usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig/blas.pc \
+ blas.pc-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/pkgconfig/blas-openblas.pc
+
+update-alternatives --install /usr/lib/@DEB_HOST_MULTIARCH@/liblapack.so \
+ liblapack.so-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/liblapack.so \
+ @OPENBLAS_PRI@ \
+ --slave /usr/lib/@DEB_HOST_MULTIARCH@/liblapack.a \
+ liblapack.a-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/liblapack.a \
+ --slave /usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig/lapack.pc \
+ lapack.pc-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/pkgconfig/lapack-openblas.pc
+
+update-alternatives --install /usr/lib/@DEB_HOST_MULTIARCH@/libopenblas.so \
+ libopenblas.so-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libopenblas.so \
+ @OPENBLAS_PRI@ \
+ --slave /usr/lib/@DEB_HOST_MULTIARCH@/libopenblas.a \
+ libopenblas.a-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libopenblas.a \
+ --slave /usr/include/@DEB_HOST_MULTIARCH@/cblas-openblas.h \
+ cblas-openblas.h-@DEB_HOST_MULTIARCH@ \
+ /usr/include/@DEB_HOST_MULTIARCH@/@SUBDIR@/cblas.h \
+ --slave /usr/include/@DEB_HOST_MULTIARCH@/f77blas.h \
+ f77blas.h-@DEB_HOST_MULTIARCH@ \
+ /usr/include/@DEB_HOST_MULTIARCH@/@SUBDIR@/f77blas.h \
+ --slave /usr/include/@DEB_HOST_MULTIARCH@/openblas_config.h \
+ openblas_config.h-@DEB_HOST_MULTIARCH@ \
+ /usr/include/@DEB_HOST_MULTIARCH@/@SUBDIR@/openblas_config.h \
+ --slave /usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig/openblas.pc \
+ openblas.pc-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/pkgconfig/openblas.pc
+
+#DEBHELPER#
+
+exit 0
--- /dev/null
+#!/bin/sh
+
+set -e
+
+if [ "$1" != "upgrade" ]
+then
+ update-alternatives --remove libblas.so-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libblas.so
+
+ update-alternatives --remove liblapack.so-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/liblapack.so
+
+ update-alternatives --remove libopenblas.so-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libopenblas.so
+fi
+
+#DEBHELPER#
+
+exit 0
--- /dev/null
+README.md
+USAGE.md
+CONTRIBUTORS.md
+BACKERS.md
--- /dev/null
+libopenblas-dev: wrong-section-according-to-package-name
--- /dev/null
+usr/lib/*/@SUBDIR@/libopenblas*-r0.*.so
+usr/lib/*/@SUBDIR@/libopenblas.so.0
+@FLAVOR@/interface/libblas.so.3 usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/
+@FLAVOR@/interface/liblapack.so.3 usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/
--- /dev/null
+#! /bin/sh
+set -e
+
+update-alternatives --install /usr/lib/@DEB_HOST_MULTIARCH@/libblas.so.3 \
+ libblas.so.3-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libblas.so.3 @OPENBLAS_PRI@
+
+update-alternatives --install /usr/lib/@DEB_HOST_MULTIARCH@/liblapack.so.3 \
+ liblapack.so.3-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/liblapack.so.3 @OPENBLAS_PRI@
+
+update-alternatives --install /usr/lib/@DEB_HOST_MULTIARCH@/libopenblas.so.0 \
+ libopenblas.so.0-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libopenblas.so.0 @OPENBLAS_PRI@
+
+#DEBHELPER#
+
+exit 0
--- /dev/null
+#!/bin/sh
+set -e
+
+if [ "$1" != "upgrade" ]
+then
+ update-alternatives --remove libblas.so.3-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libblas.so.3
+
+ update-alternatives --remove liblapack.so.3-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/liblapack.so.3
+
+ update-alternatives --remove libopenblas.so.0-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libopenblas.so.0
+fi
+
+#DEBHELPER#
+
+exit 0
--- /dev/null
+# We want packages linked with -lblas to depend on any BLAS alternative, and we
+# want packages linked with -lopenblas to depend specifically on libopenblas0.
+#
+# Such a setting is not supported by dh_makeshlibs, so we ship a hand-crafted
+# shlibs file.
+libopenblas 0 libopenblas0
+libblas 3 libblas3 | libblas.so.3
+liblapack 3 liblapack3 | liblapack.so.3
--- /dev/null
+libopenblas0-openmp: distant-prerequisite-in-shlibs
+libopenblas0-openmp: package-has-unnecessary-activation-of-ldconfig-trigger
--- /dev/null
+libopenblas0-pthread: distant-prerequisite-in-shlibs
+libopenblas0-pthread: package-has-unnecessary-activation-of-ldconfig-trigger
--- /dev/null
+libopenblas0-serial: distant-prerequisite-in-shlibs
+libopenblas0-serial: package-has-unnecessary-activation-of-ldconfig-trigger
--- /dev/null
+libopenblas0: wrong-section-according-to-package-name
--- /dev/null
+usr/lib/*/@SUBDIR@/libopenblas64*-r0.*.so
+usr/lib/*/@SUBDIR@/libopenblas64.so.0
+@FLAVOR@/interface/libblas64.so.3 usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/
+@FLAVOR@/interface/liblapack64.so.3 usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/
--- /dev/null
+#! /bin/sh
+set -e
+
+update-alternatives --install /usr/lib/@DEB_HOST_MULTIARCH@/libblas64.so.3 \
+ libblas64.so.3-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libblas64.so.3 @OPENBLAS_PRI@
+
+update-alternatives --install /usr/lib/@DEB_HOST_MULTIARCH@/liblapack64.so.3 \
+ liblapack64.so.3-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/liblapack64.so.3 @OPENBLAS_PRI@
+
+update-alternatives --install /usr/lib/@DEB_HOST_MULTIARCH@/libopenblas64.so.0 \
+ libopenblas64.so.0-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libopenblas64.so.0 @OPENBLAS_PRI@
+
+#DEBHELPER#
+
+exit 0
--- /dev/null
+#!/bin/sh
+set -e
+
+if [ "$1" != "upgrade" ]
+then
+ update-alternatives --remove libblas64.so.3-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libblas64.so.3
+
+ update-alternatives --remove liblapack64.so.3-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/liblapack64.so.3
+
+ update-alternatives --remove libopenblas64.so.0-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libopenblas64.so.0
+fi
+
+#DEBHELPER#
+
+exit 0
--- /dev/null
+# We want packages linked with -lblas to depend on any BLAS alternative, and we
+# want packages linked with -lopenblas to depend specifically on libopenblas0.
+#
+# Such a setting is not supported by dh_makeshlibs, so we ship a hand-crafted
+# shlibs file.
+libopenblas64 0 libopenblas64-0
+libblas64 3 libopenblas64-0 | libblas64.so.3
+liblapack64 3 libopenblas64-0 | liblapack64.so.3
--- /dev/null
+libopenblas64-0-openmp: distant-prerequisite-in-shlibs
+libopenblas64-0-openmp: package-has-unnecessary-activation-of-ldconfig-trigger
--- /dev/null
+libopenblas64-0-pthread: distant-prerequisite-in-shlibs
+libopenblas64-0-pthread: package-has-unnecessary-activation-of-ldconfig-trigger
--- /dev/null
+libopenblas64-0-serial: distant-prerequisite-in-shlibs
+libopenblas64-0-serial: package-has-unnecessary-activation-of-ldconfig-trigger
--- /dev/null
+libopenblas64-0: wrong-section-according-to-package-name
--- /dev/null
+usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig
--- /dev/null
+usr/lib/*/@SUBDIR@/libopenblas64*.a
+usr/lib/*/@SUBDIR@/libopenblas64.so
+usr/lib/*/@SUBDIR@/pkgconfig/*
+usr/lib/*/cmake/@SUBDIR@/*
+usr/include/*/@SUBDIR@/*
--- /dev/null
+usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/libopenblas64.a usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/libblas64.a
+usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/libopenblas64.a usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/liblapack64.a
+usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/libblas64.so.3 usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/libblas64.so
+usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/liblapack64.so.3 usr/lib/${DEB_HOST_MULTIARCH}/@SUBDIR@/liblapack64.so
--- /dev/null
+#!/bin/sh
+set -e
+
+update-alternatives --install /usr/lib/@DEB_HOST_MULTIARCH@/libblas64.so \
+ libblas64.so-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libblas64.so \
+ @OPENBLAS_PRI@ \
+ --slave /usr/lib/@DEB_HOST_MULTIARCH@/libblas64.a \
+ libblas64.a-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libblas64.a \
+ --slave /usr/include/@DEB_HOST_MULTIARCH@/cblas64.h \
+ cblas64.h-@DEB_HOST_MULTIARCH@ \
+ /usr/include/@DEB_HOST_MULTIARCH@/@SUBDIR@/cblas.h \
+ --slave /usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig/blas64.pc \
+ blas64.pc-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/pkgconfig/blas-openblas.pc
+
+update-alternatives --install /usr/lib/@DEB_HOST_MULTIARCH@/liblapack64.so \
+ liblapack64.so-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/liblapack64.so \
+ @OPENBLAS_PRI@ \
+ --slave /usr/lib/@DEB_HOST_MULTIARCH@/liblapack64.a \
+ liblapack64.a-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/liblapack64.a \
+ --slave /usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig/lapack64.pc \
+ lapack64.pc-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/pkgconfig/lapack-openblas.pc
+
+update-alternatives --install /usr/lib/@DEB_HOST_MULTIARCH@/libopenblas64.so \
+ libopenblas64.so-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libopenblas64.so \
+ @OPENBLAS_PRI@ \
+ --slave /usr/lib/@DEB_HOST_MULTIARCH@/libopenblas64.a \
+ libopenblas64.a-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libopenblas64.a \
+ --slave /usr/include/@DEB_HOST_MULTIARCH@/cblas-openblas64.h \
+ cblas-openblas64.h-@DEB_HOST_MULTIARCH@ \
+ /usr/include/@DEB_HOST_MULTIARCH@/@SUBDIR@/cblas.h \
+ --slave /usr/include/@DEB_HOST_MULTIARCH@/f77blas-openblas64.h \
+ f77blas-openblas64.h-@DEB_HOST_MULTIARCH@ \
+ /usr/include/@DEB_HOST_MULTIARCH@/@SUBDIR@/f77blas.h \
+ --slave /usr/include/@DEB_HOST_MULTIARCH@/openblas64_config.h \
+ openblas64_config.h-@DEB_HOST_MULTIARCH@ \
+ /usr/include/@DEB_HOST_MULTIARCH@/@SUBDIR@/openblas_config.h \
+ --slave /usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig/openblas64.pc \
+ openblas64.pc-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/pkgconfig/openblas.pc
+
+#DEBHELPER#
+
+exit 0
--- /dev/null
+#!/bin/sh
+
+set -e
+
+if [ "$1" != "upgrade" ]
+then
+ update-alternatives --remove libblas64.so-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libblas64.so
+
+ update-alternatives --remove liblapack64.so-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/liblapack64.so
+
+ update-alternatives --remove libopenblas64.so-@DEB_HOST_MULTIARCH@ \
+ /usr/lib/@DEB_HOST_MULTIARCH@/@SUBDIR@/libopenblas64.so
+fi
+
+#DEBHELPER#
+
+exit 0
--- /dev/null
+libopenblas64-dev: wrong-section-according-to-package-name
--- /dev/null
+Description: Use flags suitable for armhf port when TARGET=ARMV6
+ See debian/rules for an explanation of why we can't use TARGET=ARMV7 on armhf.
+ Also, if we don't explicitly set the -march and -mfpu flags, the resulting
+ static libraries crash with SIGILL (reason not yet elucidated).
+Author: Sébastien Villemot <sebastien@debian.org>
+Forwarded: not-needed
+Last-Update: 2015-04-29
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/Makefile.arm
++++ b/Makefile.arm
+@@ -9,8 +9,8 @@ endif
+ endif
+
+ ifeq ($(CORE), ARMV6)
+-CCOMMON_OPT += -mfpu=vfp
+-FCOMMON_OPT += -mfpu=vfp
++CCOMMON_OPT += -mfpu=vfpv3-d16 -march=armv7-a
++FCOMMON_OPT += -mfpu=vfpv3-d16 -march=armv7-a
+ endif
+
+ ifdef HAVE_NEON
--- /dev/null
+Description: No longer check for symbols deprecated in LAPACK 3.10.1
+Author: Mo Zhou <lumin@debian.org>
+Bug-Debian: https://bugs.debian.org/1011386
+Forwarded: no
+Last-Update: 2022-08-14
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/exports/gensymbol
++++ b/exports/gensymbol
+@@ -738,12 +738,10 @@ lapackobjs2c="$lapackobjs2c
+ cungtsqr
+ "
+ lapackobjs2d="$lapackobjs2d
+- dcombssq
+ dgesvdq
+ dorgtsqr
+ "
+ lapackobjs2s="$lapackobjs2s
+- scombssq
+ sgesvdq
+ sorgtsqr
+ "
--- /dev/null
+Description: Various fixes for kFreeBSD shared library
+ Under kFreeBSD, give a SONAME to the shared library and install it. Also link
+ it against libm.
+ Simply use the same code as Linux for all these operations.
+Author: Sébastien Villemot <sebastien@debian.org>
+Forwarded: not-needed
+Last-Update: 2014-08-05
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/Makefile.system
++++ b/Makefile.system
+@@ -402,7 +402,7 @@ ifeq ($(OSNAME), NetBSD)
+ MD5SUM = md5 -n
+ endif
+
+-ifeq ($(OSNAME), Linux)
++ifeq ($(OSNAME), $(filter $(OSNAME),Linux FreeBSD))
+ EXTRALIB += -lm
+ NO_EXPRECISION = 1
+ endif
--- /dev/null
+Description: MATGEN symbols are not included in Debian binary
+ The libopenblas binaries do not include libmatgen code, so don't mark them as
+ exported and don't test for their presence (in linktest).
+Author: Sébastien Villemot <sebastien@debian.org>
+Forwarded: not-needed
+Last-Update: 2016-03-24
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/exports/gensymbol
++++ b/exports/gensymbol
+@@ -583,24 +583,6 @@ lapackobjs2c="$lapackobjs2c
+ cggsvp3
+ cgsvj0
+ cgsvj1
+- clagge
+- claghe
+- clagsy
+- clahilb
+- clakf2
+- clarge
+- clarnd
+- claror
+- clarot
+- clatm1
+- clatm2
+- clatm3
+- clatm5
+- clatm6
+- clatme
+- clatmr
+- clatms
+- clatmt
+ cpotrf2
+ csbmv
+ cspr2
+@@ -618,25 +600,6 @@ lapackobjs2d="$lapackobjs2d
+ dggsvd3
+ dggsvp3
+ dladiv2
+- dlagge
+- dlagsy
+- dlahilb
+- dlakf2
+- dlaran
+- dlarge
+- dlarnd
+- dlaror
+- dlarot
+- dlatm1
+- dlatm2
+- dlatm3
+- dlatm5
+- dlatm6
+- dlatm7
+- dlatme
+- dlatmr
+- dlatms
+- dlatmt
+ dorm22
+ dpotrf2
+ dsecnd
+@@ -653,25 +616,6 @@ lapackobjs2s="$lapackobjs2s
+ sggsvd3
+ sggsvp3
+ sladiv2
+- slagge
+- slagsy
+- slahilb
+- slakf2
+- slaran
+- slarge
+- slarnd
+- slaror
+- slarot
+- slatm1
+- slatm2
+- slatm3
+- slatm5
+- slatm6
+- slatm7
+- slatme
+- slatmr
+- slatms
+- slatmt
+ sorm22
+ spotrf2
+ "
+@@ -688,24 +632,6 @@ lapackobjs2z="$lapackobjs2z
+ zggsvp3
+ zgsvj0
+ zgsvj1
+- zlagge
+- zlaghe
+- zlagsy
+- zlahilb
+- zlakf2
+- zlarge
+- zlarnd
+- zlaror
+- zlarot
+- zlatm1
+- zlatm2
+- zlatm3
+- zlatm5
+- zlatm6
+- zlatme
+- zlatmr
+- zlatms
+- zlatmt
+ zpotrf2
+ zsbmv
+ zspr2
--- /dev/null
+Description: Fix FTBFS on mips64el
+ The dnrm2_tiny and dnrm2_inf utests were failing.
+Origin: upstream, https://github.com/xianyi/OpenBLAS/commit/365936ae1b1dfa2f50b3e65c68ae95babc6f2af2
+Bug: https://github.com/xianyi/OpenBLAS/issues/3761
+Last-Update: 2022-09-14
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/kernel/mips64/dnrm2.S
++++ b/kernel/mips64/dnrm2.S
+@@ -90,7 +90,7 @@
+ //Init INF
+ lui TEMP, 0x7FF0
+ dsll TEMP, TEMP, 32
+- MTC1 TEMP, INF
++ MTC TEMP, INF
+
+ LD a1, 0 * SIZE(X)
+ daddiu N, N, -1
--- /dev/null
+Description: Adapt build system for the absence of lapack-netlib/ and relapack directories.
+ Instead use the binary provided by package liblapack-pic, stripping from it the
+ symbols that are overridden by OpenBLAS.
+Author: Sébastien Villemot <sebastien@debian.org>
+Forwarded: not-needed
+Last-Update: 2017-07-27
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/Makefile
++++ b/Makefile
+@@ -248,87 +248,21 @@ hpl_p :
+ fi; \
+ done
+
+-netlib : lapack_prebuild
+-ifneq ($(NO_LAPACK), 1)
+- @$(MAKE) -C $(NETLIB_LAPACK_DIR) lapacklib
+- @$(MAKE) -C $(NETLIB_LAPACK_DIR) tmglib
+-endif
+-ifneq ($(NO_LAPACKE), 1)
+- @$(MAKE) -C $(NETLIB_LAPACK_DIR) lapackelib
+-endif
+-
+-ifeq ($(NO_LAPACK), 1)
+-re_lapack :
+-
++netlib :
++ifeq (,$(filter libopenblas64%,$(LIBNAME)))
++ mkdir lapack-netlib
++ cd lapack-netlib && ar -x /usr/lib/$$(dpkg-architecture -q DEB_HOST_MULTIARCH)/liblapack_pic.a
++ make -C interface delete-duplicate-lapack-objects
++ ar -ru $(LIBNAME) `LC_ALL=C ls lapack-netlib/*`
+ else
+-re_lapack :
+- @$(MAKE) -C relapack
++ mkdir lapack64-netlib
++ cd lapack64-netlib && ar -x /usr/lib/$$(dpkg-architecture -q DEB_HOST_MULTIARCH)/liblapack64_pic.a
++ make -C interface delete-duplicate-lapack-objects
++ ar -ru $(LIBNAME) `LC_ALL=C ls lapack64-netlib/*`
+ endif
+
+-prof_lapack : lapack_prebuild
+- @$(MAKE) -C $(NETLIB_LAPACK_DIR) lapack_prof
+-
+-lapack_prebuild :
+-ifeq ($(NO_LAPACK), $(filter 0,$(NO_LAPACK)))
+- -@echo "FC = $(FC)" > $(NETLIB_LAPACK_DIR)/make.inc
+- -@echo "override FFLAGS = $(LAPACK_FFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc
+- -@echo "FFLAGS_DRV = $(LAPACK_FFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc
+- -@echo "POPTS = $(LAPACK_FPFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc
+- -@echo "FFLAGS_NOOPT = -O0 $(LAPACK_NOOPT)" >> $(NETLIB_LAPACK_DIR)/make.inc
+- -@echo "PNOOPT = $(LAPACK_FPFLAGS) -O0" >> $(NETLIB_LAPACK_DIR)/make.inc
+-ifeq ($(C_COMPILER)$(F_COMPILER)$(USE_OPENMP), CLANGGFORTRAN1)
+- -@echo "LDFLAGS = $(FFLAGS) $(EXTRALIB) -lomp" >> $(NETLIB_LAPACK_DIR)/make.inc
+-else
+- -@echo "LDFLAGS = $(FFLAGS) $(EXTRALIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
+-endif
+- -@echo "CC = $(CC)" >> $(NETLIB_LAPACK_DIR)/make.inc
+- -@echo "override CFLAGS = $(LAPACK_CFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc
+- -@echo "AR = $(AR)" >> $(NETLIB_LAPACK_DIR)/make.inc
+- -@echo "ARFLAGS = $(ARFLAGS) -ru" >> $(NETLIB_LAPACK_DIR)/make.inc
+- -@echo "RANLIB = $(RANLIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
+- -@echo "LAPACKLIB = ../../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/make.inc
+- -@echo "TMGLIB = ../../../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/make.inc
+- -@echo "BLASLIB = ../../../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/make.inc
+- -@echo "LAPACKELIB = ../../../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/make.inc
+- -@echo "LAPACKLIB_P = ../$(LIBNAME_P)" >> $(NETLIB_LAPACK_DIR)/make.inc
+- -@echo "SUFFIX = $(SUFFIX)" >> $(NETLIB_LAPACK_DIR)/make.inc
+- -@echo "PSUFFIX = $(PSUFFIX)" >> $(NETLIB_LAPACK_DIR)/make.inc
+- -@echo "CEXTRALIB = $(EXTRALIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
+-ifeq ($(F_COMPILER), GFORTRAN)
+- -@echo "TIMER = INT_ETIME" >> $(NETLIB_LAPACK_DIR)/make.inc
+-ifdef SMP
+-ifeq ($(OSNAME), WINNT)
+- -@echo "LOADER = $(FC)" >> $(NETLIB_LAPACK_DIR)/make.inc
+-else ifeq ($(OSNAME), Haiku)
+- -@echo "LOADER = $(FC)" >> $(NETLIB_LAPACK_DIR)/make.inc
+-else
+- -@echo "LOADER = $(FC) -pthread" >> $(NETLIB_LAPACK_DIR)/make.inc
+-endif
+-else
+- -@echo "LOADER = $(FC)" >> $(NETLIB_LAPACK_DIR)/make.inc
+-endif
+-else
+- -@echo "TIMER = NONE" >> $(NETLIB_LAPACK_DIR)/make.inc
+- -@echo "LOADER = $(FC)" >> $(NETLIB_LAPACK_DIR)/make.inc
+-endif
+-ifeq ($(BUILD_LAPACK_DEPRECATED), 1)
+- -@echo "BUILD_DEPRECATED = 1" >> $(NETLIB_LAPACK_DIR)/make.inc
+-endif
+-ifeq ($(BUILD_SINGLE), 1)
+- -@echo "BUILD_SINGLE = 1" >> $(NETLIB_LAPACK_DIR)/make.inc
+-endif
+-ifeq ($(BUILD_DOUBLE), 1)
+- -@echo "BUILD_DOUBLE = 1" >> $(NETLIB_LAPACK_DIR)/make.inc
+-endif
+-ifeq ($(BUILD_COMPLEX), 1)
+- -@echo "BUILD_COMPLEX = 1" >> $(NETLIB_LAPACK_DIR)/make.inc
+-endif
+-ifeq ($(BUILD_COMPLEX16), 1)
+- -@echo "BUILD_COMPLEX16 = 1" >> $(NETLIB_LAPACK_DIR)/make.inc
+-endif
+- -@echo "LAPACKE_WITH_TMG = 1" >> $(NETLIB_LAPACK_DIR)/make.inc
+- -@cat make.inc >> $(NETLIB_LAPACK_DIR)/make.inc
+-endif
++clean::
++ rm -rf lapack-netlib
+
+ large.tgz :
+ ifeq ($(NOFORTRAN), $(filter 0,$(NOFORTRAN)))
+@@ -395,10 +329,5 @@ ifeq ($(OSNAME), Darwin)
+ endif
+ @rm -f Makefile.conf config.h Makefile_kernel.conf config_kernel.h st* *.dylib
+ @rm -f cblas.tmp cblas.tmp2
+- @touch $(NETLIB_LAPACK_DIR)/make.inc
+- @$(MAKE) -C $(NETLIB_LAPACK_DIR) clean
+- @rm -f $(NETLIB_LAPACK_DIR)/make.inc $(NETLIB_LAPACK_DIR)/lapacke/include/lapacke_mangling.h
+- @$(MAKE) -C relapack clean
+ @rm -f *.grd Makefile.conf_last config_last.h
+- @(cd $(NETLIB_LAPACK_DIR)/TESTING && rm -f x* *.out testing_results.txt)
+ @echo Done.
+--- a/Makefile.system
++++ b/Makefile.system
+@@ -40,8 +40,6 @@ else ifeq ($(ARCH), zarch)
+ override ARCH=zarch
+ endif
+
+-NETLIB_LAPACK_DIR = $(TOPDIR)/lapack-netlib
+-
+ # Default C compiler
+ # - Only set if not specified on the command line or inherited from the environment.
+ # - CC is an implicit variable so neither '?=' or 'ifndef' can be used.
+--- a/interface/Makefile
++++ b/interface/Makefile
+@@ -2346,3 +2346,11 @@ cblas_zgeadd.$(SUFFIX) cblas_zgeadd.$(PS
+ cblas_xerbla.$(SUFFIX) cblas_xerbla.$(PSUFFIX) : xerbla.c
+ $(CC) -c $(CFLAGS) -DCBLAS $< -o $(@F)
+
++# The list of symbols to be removed can be seen in the diff between LAPACK's
++# original SRC/Makefile and the version of that same file that is included in
++# OpenBLAS (unfiltered) tarball
++delete-duplicate-lapack-objects:
++ if test -d ../lapack-netlib; then cd ../lapack-netlib \
++ && rm $(SLAPACKOBJS) $(DLAPACKOBJS) $(CLAPACKOBJS) $(ZLAPACKOBJS) lsame.o xerbla.o; fi
++ if test -d ../lapack64-netlib; then cd ../lapack64-netlib \
++ && rm $(SLAPACKOBJS) $(DLAPACKOBJS) $(CLAPACKOBJS) $(ZLAPACKOBJS) lsame.o xerbla.o; fi
+--- a/Makefile.install
++++ b/Makefile.install
+@@ -72,15 +72,6 @@ endif
+ endif
+
+ ifneq ($(OSNAME), AIX)
+-ifndef NO_LAPACKE
+- @echo Copying LAPACKE header files to $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)
+- @-install -m644 $(NETLIB_LAPACK_DIR)/LAPACKE/include/lapack.h "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapack.h"
+- @-install -m644 $(NETLIB_LAPACK_DIR)/LAPACKE/include/lapacke.h "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke.h"
+- @-install -m644 $(NETLIB_LAPACK_DIR)/LAPACKE/include/lapacke_config.h "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke_config.h"
+- @-install -m644 $(NETLIB_LAPACK_DIR)/LAPACKE/include/lapacke_mangling_with_flags.h.in "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke_mangling.h"
+- @-install -m644 $(NETLIB_LAPACK_DIR)/LAPACKE/include/lapacke_utils.h "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke_utils.h"
+-endif
+-
+ #for install static library
+ ifneq ($(NO_STATIC),1)
+ @echo Copying the static library to $(DESTDIR)$(OPENBLAS_LIBRARY_DIR)
--- /dev/null
+https://github.com/xianyi/OpenBLAS/issues/3738
+From d9dc015cfc78fc32f555995a89d6957ef0184ea2 Mon Sep 17 00:00:00 2001
+From: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de>
+Date: Mon, 8 Aug 2022 14:52:10 +0200
+Subject: [PATCH 1/2] Use blasint for INTERFACE64 compatibility
+
+---
+ test/compare_sgemm_sbgemm.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/test/compare_sgemm_sbgemm.c b/test/compare_sgemm_sbgemm.c
+index a2c358cfa7..d4b5914506 100644
+--- a/test/compare_sgemm_sbgemm.c
++++ b/test/compare_sgemm_sbgemm.c
+@@ -76,9 +76,9 @@ float16to32 (bfloat16_bits f16)
+ int
+ main (int argc, char *argv[])
+ {
+- int m, n, k;
++ blasint m, n, k;
+ int i, j, l;
+- int x;
++ blasint x;
+ int ret = 0;
+ int loop = 100;
+ char transA = 'N', transB = 'N';
+
+From 3d338b57de1837f1e2264a1262a9ee9203f31c6c Mon Sep 17 00:00:00 2001
+From: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de>
+Date: Mon, 8 Aug 2022 17:09:45 +0200
+Subject: [PATCH 2/2] remove spurious loops
+
+---
+ test/compare_sgemm_sbgemm.c | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/test/compare_sgemm_sbgemm.c b/test/compare_sgemm_sbgemm.c
+index d4b5914506..276fecae9d 100644
+--- a/test/compare_sgemm_sbgemm.c
++++ b/test/compare_sgemm_sbgemm.c
+@@ -112,7 +112,6 @@ main (int argc, char *argv[])
+ &m, BB, &k, &beta, CC, &m);
+ for (i = 0; i < n; i++)
+ for (j = 0; j < m; j++)
+- for (l = 0; l < k; l++)
+ if (fabs (CC[i * m + j] - C[i * m + j]) > 1.0)
+ ret++;
+ if (transA == 'N' && transB == 'N')
+@@ -126,7 +125,6 @@ main (int argc, char *argv[])
+ }
+ for (i = 0; i < n; i++)
+ for (j = 0; j < m; j++)
+- for (l = 0; l < k; l++)
+ if (CC[i * m + j] != DD[i * m + j])
+ ret++;
+ }
--- /dev/null
+Description: Remove warning about OpenMP
+ This warning is annoying when the library is built with pthreads.
+ See #684344
+Author: Sébastien Villemot <sebastien@debian.org>
+Forwarded: no
+Last-Update: 2014-02-17
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/driver/others/blas_server.c
++++ b/driver/others/blas_server.c
+@@ -883,16 +883,6 @@ int exec_blas(BLASLONG num, blas_queue_t
+ fprintf(STDERR, "Exec_blas is called. Number of executing threads : %ld\n", num);
+ #endif
+
+-#ifdef __ELF__
+- if (omp_in_parallel && (num > 1)) {
+- if (omp_in_parallel() > 0) {
+- fprintf(stderr,
+- "OpenBLAS Warning : Detect OpenMP Loop and this application may hang. "
+- "Please rebuild the library with USE_OPENMP=1 option.\n");
+- }
+- }
+-#endif
+-
+ if ((num > 1) && queue -> next) exec_blas_async(1, queue -> next);
+
+ #ifdef TIMING_DEBUG
--- /dev/null
+arm-gcc-flags.patch
+kfreebsd.patch
+remove-openmp-warning.patch
+no-embedded-lapack.patch
+shared-blas-lapack.patch
+matgen-symbols-not-included.patch
+combssq-deprecate.patch
+pr-3718-ppc64el-segfault.patch
+mips64el-utest-dnrm2.patch
--- /dev/null
+Description: Create shared libraries lib{blas,lapack}.so.3
+ * It is done so that duplicate code with libopenblas.so.0 is kept as low as
+ possible. Only the symbols from the external BLAS/LAPACK API are incorporated
+ in the shared libraries. The rest is obtained by dynamic linking against
+ libopenblas.so.0. This also gives access to some extra OpenBLAS symbols, in
+ order to differentiate it at runtime from other BLAS implementations (see
+ #960728).
+ The -rpath,'$ORIGIN' is there to ensure that the OpenBLAS flavour used is
+ the one selected in the lib{blas,lapack}.so.3 alternative, and not the one
+ selected in the libopenblas.so.0 alternative.
+ * See also override_dh_shlibdeps in debian/rules
+ * Also order the files when calling `ar' or $(CC), to make
+ the build reproducible (see #824639)
+ * Also link the shared blas and lapack against gomp (see #945791)
+Author: Sébastien Villemot <sebastien@debian.org>
+Author: Alexis Bienvenüe <pado@passoire.fr>
+Author: Mo Zhou <lumin@debian.org>
+Forwarded: not-needed
+Last-Update: 2020-07-31
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/interface/Makefile
++++ b/interface/Makefile
+@@ -2354,3 +2354,28 @@ delete-duplicate-lapack-objects:
+ && rm $(SLAPACKOBJS) $(DLAPACKOBJS) $(CLAPACKOBJS) $(ZLAPACKOBJS) lsame.o xerbla.o; fi
+ if test -d ../lapack64-netlib; then cd ../lapack64-netlib \
+ && rm $(SLAPACKOBJS) $(DLAPACKOBJS) $(CLAPACKOBJS) $(ZLAPACKOBJS) lsame.o xerbla.o; fi
++
++shared-blas-lapack: libblas.so.3 liblapack.so.3
++shared-blas64-lapack64: libblas64.so.3 liblapack64.so.3
++ifneq (0,$(USE_OPENMP))
++SH_BLAS_LAPACK_OMP=-fopenmp -lgomp
++endif
++
++# The list of prerequisite is created by comparing with NETLIB BLAS public API.
++# The symbol cblas_xerbla is missing here, but it does not seem to be provided
++# by libopenblas.so.0 either.
++libblas.so.3: $(SBLAS1OBJS) $(SBLAS2OBJS) $(SBLAS3OBJS) $(DBLAS1OBJS) $(DBLAS2OBJS) $(DBLAS3OBJS) $(CBLAS1OBJS) $(CBLAS2OBJS) $(CBLAS3OBJS) $(ZBLAS1OBJS) $(ZBLAS2OBJS) $(ZBLAS3OBJS) ../kernel/lsame.o ../kernel/scabs1.o ../kernel/dcabs1.o ../driver/others/xerbla.o
++ $(CC) $(LDFLAGS) -shared -o $@ $^ -Wl,-soname,libblas.so.3 -L.. -lopenblas $(EXTRALIB) $(SH_BLAS_LAPACK_OMP) -Wl,-rpath,'$$ORIGIN'
++
++libblas64.so.3: $(SBLAS1OBJS) $(SBLAS2OBJS) $(SBLAS3OBJS) $(DBLAS1OBJS) $(DBLAS2OBJS) $(DBLAS3OBJS) $(CBLAS1OBJS) $(CBLAS2OBJS) $(CBLAS3OBJS) $(ZBLAS1OBJS) $(ZBLAS2OBJS) $(ZBLAS3OBJS) ../kernel/lsame.o ../kernel/scabs1.o ../kernel/dcabs1.o ../driver/others/xerbla.o
++ $(CC) $(LDFLAGS) -shared -o $@ $^ -Wl,-soname,libblas64.so.3 -L.. -lopenblas64 $(EXTRALIB) $(SH_BLAS_LAPACK_OMP) -Wl,-rpath,'$$ORIGIN'
++
++# The prerequisites must match the symbols deleted in target delete-duplicate-lapack-objects
++liblapack.so.3: $(SLAPACKOBJS) $(DLAPACKOBJS) $(CLAPACKOBJS) $(ZLAPACKOBJS) ../kernel/lsame.o ../driver/others/xerbla.o
++ $(CC) $(LDFLAGS) -shared -o $@ $^ `LC_ALL=C ls ../lapack-netlib/*` -Wl,-soname,liblapack.so.3 -L.. -lopenblas $(EXTRALIB) $(SH_BLAS_LAPACK_OMP) -Wl,-rpath,'$$ORIGIN'
++
++liblapack64.so.3: $(SLAPACKOBJS) $(DLAPACKOBJS) $(CLAPACKOBJS) $(ZLAPACKOBJS) ../kernel/lsame.o ../driver/others/xerbla.o
++ $(CC) $(LDFLAGS) -shared -o $@ $^ `LC_ALL=C ls ../lapack64-netlib/*` -Wl,-soname,liblapack64.so.3 -L.. -lopenblas64 $(EXTRALIB) $(SH_BLAS_LAPACK_OMP) -Wl,-rpath,'$$ORIGIN'
++
++clean::
++ rm -f libblas.so.3 liblapack.so.3
--- /dev/null
+#!/usr/bin/make -f
+
+# For Ubuntu, see #961725
+export DEB_LDFLAGS_MAINT_STRIP := "-Wl,-Bsymbolic-functions"
+
+include /usr/share/dpkg/buildflags.mk
+include /usr/share/dpkg/pkg-info.mk
+SOVER := 0
+SRCS := $(filter-out debian $(FLAVORS), $(wildcard ./*))
+
+MAKE_OPTIONS := NO_LAPACKE=1 NO_AFFINITY=1 NO_WARMUP=1 CFLAGS="$(CPPFLAGS) $(CFLAGS)" FFLAGS="$(FFLAGS)"
+
+# Avoid having -O2 automatically added (especially for DEB_BUILD_OPTIONS=noopt)
+MAKE_OPTIONS += COMMON_OPT=
+
+# Build generic package with hardcoded max number of threads of 64
+GENERIC_OPTIONS := NUM_THREADS=64
+
+# Architectures with dynamic arch selection
+# TARGET=GENERIC is needed to avoid FTBFS when CPU detection fails (see #923607)
+ENABLE_DYNAMIC_ARCHS := amd64 arm64 i386 kfreebsd-amd64 kfreebsd-i386 ppc64el s390x
+ifneq (,$(filter $(DEB_HOST_ARCH),$(ENABLE_DYNAMIC_ARCHS)))
+ GENERIC_OPTIONS += DYNAMIC_ARCH=1 DYNAMIC_OLDER=1 TARGET=GENERIC
+endif
+
+# For other archs, there is no dynamic arch selection. To avoid selecting a
+# target based on the buildd hardware, we enforce a generic-enough target.
+
+# We cannot use the ARMv7 profile on armhf, because it requires a 32-register FP unit.
+# See kernel/arm/KERNEL.ARMv7: it loads some *_vfpv3.S files, which use 32 registers.
+# Also, it FTBFS if GCC flag -mvfpv3 is removed (see arm-gcc-flags.patch), because GCC
+# refuses asm files with 32 FP registers in that case.
+# Issue discussed in https://github.com/xianyi/OpenBLAS/issues/388
+# See also debian/patches/arm-gcc-flags.patch which is related.
+TARGET_OPTION_armhf = TARGET=ARMV6
+# We do not use DYNAMIC_ARCH selection on powerpc and ppc64 because it only
+# works for POWER6 and above.
+# For a correspondence between CPUs and ISAs, see:
+# https://wiki.raptorcs.com/wiki/Power_ISA
+# NB: In OpenBLAS, the POWER3 and POWER4 kernels are actually the same as POWER5.
+# NB2: TARGET=POWER4 leads to a FTBFS on powerpc (with OpenBLAS 0.3.16)
+TARGET_OPTION_powerpc = TARGET=PPCG4
+TARGET_OPTION_ppc64 = TARGET=POWER4
+# We do not use DYNAMIC_ARCH selection on mips64el because it only works for
+# Loongson3R3/3R4
+TARGET_OPTION_mips64el = TARGET=SICORTEX
+TARGET_OPTION_riscv64 = TARGET=RISCV64_GENERIC
+TARGET_OPTION_sparc64 = TARGET=SPARC
+GENERIC_OPTIONS += $(TARGET_OPTION_$(DEB_HOST_ARCH))
+
+
+ifeq (,$(filter custom,$(DEB_BUILD_OPTIONS)))
+ # Generic package
+ MAKE_OPTIONS += $(GENERIC_OPTIONS)
+else
+ # Custom package: leave the arch detection to OpenBLAS, and optimize for the current CPU
+ export DEB_CFLAGS_MAINT_APPEND := -march=native -mtune=native
+ export DEB_FFLAGS_MAINT_APPEND := -march=native -mtune=native
+endif
+
+# Flavors: 64-bit array indexing is invalid for 32-bit machines.
+ifeq (64,$(DEB_HOST_ARCH_BITS))
+ FLAVORS = $(SOVER)-pthread $(SOVER)-openmp $(SOVER)-serial 64-$(SOVER)-pthread 64-$(SOVER)-openmp 64-$(SOVER)-serial
+else
+ FLAVORS = $(SOVER)-pthread $(SOVER)-openmp $(SOVER)-serial
+endif
+# FLAVORS = # XXX: Define your target configurations here if you are going to build customized packages
+FLAGS_0-pthread := USE_THREAD=1 USE_OPENMP=0 INTERFACE64=0 LIBPREFIX=libopenblas FCOMMON_OPT=-frecursive
+FLAGS_0-openmp := USE_THREAD=1 USE_OPENMP=1 INTERFACE64=0 LIBPREFIX=libopenblas FCOMMON_OPT='-frecursive -fopenmp'
+FLAGS_0-serial := USE_THREAD=0 USE_OPENMP=0 INTERFACE64=0 LIBPREFIX=libopenblas FCOMMON_OPT=-frecursive
+FLAGS_64-0-pthread := USE_THREAD=1 USE_OPENMP=0 INTERFACE64=1 LIBPREFIX=libopenblas64 FCOMMON_OPT='-frecursive -fdefault-integer-8'
+FLAGS_64-0-openmp := USE_THREAD=1 USE_OPENMP=1 INTERFACE64=1 LIBPREFIX=libopenblas64 FCOMMON_OPT='-frecursive -fopenmp -fdefault-integer-8'
+FLAGS_64-0-serial := USE_THREAD=0 USE_OPENMP=0 INTERFACE64=1 LIBPREFIX=libopenblas64 FCOMMON_OPT='-frecursive -fdefault-integer-8'
+
+# Priority values in the Update-Alternatives mechanism.
+# O,P,S stands for openmp, pthread, serial respectively
+UAPRI_O = 95
+UAPRI_P = 100
+UAPRI_S = 90
+
+
+%:
+ dh $@
+
+override_dh_auto_configure: $(addprefix config_, $(FLAVORS))
+ :
+
+config_%:
+ # shared object packages
+ mkdir $*; cp -r $(SRCS) $*/;
+ for i in install postinst prerm shlibs; do \
+ if test -z "$$(echo $* | grep 64)"; then \
+ cp debian/libopenblas$(SOVER)-XXX.$$i debian/libopenblas$*.$$i; \
+ else \
+ cp debian/libopenblas64-$(SOVER)-XXX.$$i debian/libopenblas$*.$$i; \
+ fi; \
+ sed -i -e "s/@DEB_HOST_MULTIARCH@/$(DEB_HOST_MULTIARCH)/g" \
+ -e "s/@SUBDIR@/openblas$(subst $(SOVER)-,-,$(subst -$(SOVER)-,-,$*))/g" \
+ -e "s/@FLAVOR@/$*/g" \
+ debian/libopenblas$*.$$i; \
+ if test -n "$$(echo $* | grep pthread)"; then \
+ sed -i -e "s/@OPENBLAS_PRI@/$(UAPRI_P)/g" debian/libopenblas$*.$$i; \
+ elif test -n "$$(echo $* | grep openmp)"; then \
+ sed -i -e "s/@OPENBLAS_PRI@/$(UAPRI_O)/g" debian/libopenblas$*.$$i; \
+ else \
+ sed -i -e "s/@OPENBLAS_PRI@/$(UAPRI_S)/g" debian/libopenblas$*.$$i; \
+ fi; \
+ done;
+ # devel packages
+ for i in install links postinst prerm dirs; do \
+ if test -z "$$(echo $* | grep 64)"; then \
+ cp debian/libopenblas-XXX-dev.$$i debian/libopenblas$(subst $(SOVER)-,-,$(subst -$(SOVER)-,-,$*))-dev.$$i; \
+ else \
+ cp debian/libopenblas64-XXX-dev.$$i debian/libopenblas$(subst $(SOVER)-,-,$(subst -$(SOVER)-,-,$*))-dev.$$i; \
+ fi; \
+ sed -i -e "s/@DEB_HOST_MULTIARCH@/$(DEB_HOST_MULTIARCH)/g" \
+ -e "s/@SUBDIR@/openblas$(subst $(SOVER)-,-,$(subst -$(SOVER)-,-,$*))/g" \
+ -e "s/@FLAVOR@/$*/g" \
+ debian/libopenblas$(subst $(SOVER)-,-,$(subst -$(SOVER)-,-,$*))-dev.$$i; \
+ if test -n "$$(echo $* | grep pthread)"; then \
+ sed -i -e "s/@OPENBLAS_PRI@/$(UAPRI_P)/g" debian/libopenblas$(subst $(SOVER)-,-,$(subst -$(SOVER)-,-,$*))-dev.$$i; \
+ elif test -n "$$(echo $* | grep openmp)"; then \
+ sed -i -e "s/@OPENBLAS_PRI@/$(UAPRI_O)/g" debian/libopenblas$(subst $(SOVER)-,-,$(subst -$(SOVER)-,-,$*))-dev.$$i; \
+ else \
+ sed -i -e "s/@OPENBLAS_PRI@/$(UAPRI_S)/g" debian/libopenblas$(subst $(SOVER)-,-,$(subst -$(SOVER)-,-,$*))-dev.$$i; \
+ fi; \
+ done;
+
+override_dh_auto_build:
+ for target in $(addprefix build_, $(FLAVORS)); do \
+ $(MAKE) -f debian/rules $$target || exit 1; done
+
+build_0-pthread:
+ $(MAKE) -C 0-pthread libs netlib shared $(MAKE_OPTIONS) $(FLAGS_0-pthread)
+ $(MAKE) -C 0-pthread/interface shared-blas-lapack $(MAKE_OPTIONS) $(FLAGS_0-pthread)
+build_64-0-pthread:
+ $(MAKE) -C 64-0-pthread libs netlib shared $(MAKE_OPTIONS) $(FLAGS_64-0-pthread)
+ $(MAKE) -C 64-0-pthread/interface shared-blas64-lapack64 $(MAKE_OPTIONS) $(FLAGS_64-0-pthread)
+build_0-openmp:
+ $(MAKE) -C 0-openmp libs netlib shared $(MAKE_OPTIONS) $(FLAGS_0-openmp)
+ $(MAKE) -C 0-openmp/interface shared-blas-lapack $(MAKE_OPTIONS) $(FLAGS_0-openmp)
+build_64-0-openmp:
+ $(MAKE) -C 64-0-openmp libs netlib shared $(MAKE_OPTIONS) $(FLAGS_64-0-openmp)
+ $(MAKE) -C 64-0-openmp/interface shared-blas64-lapack64 $(MAKE_OPTIONS) $(FLAGS_64-0-openmp)
+build_0-serial:
+ $(MAKE) -C 0-serial libs netlib shared $(MAKE_OPTIONS) $(FLAGS_0-serial)
+ $(MAKE) -C 0-serial/interface shared-blas-lapack $(MAKE_OPTIONS) $(FLAGS_0-serial)
+build_64-0-serial:
+ $(MAKE) -C 64-0-serial libs netlib shared $(MAKE_OPTIONS) $(FLAGS_64-0-serial)
+ $(MAKE) -C 64-0-serial/interface shared-blas64-lapack64 $(MAKE_OPTIONS) $(FLAGS_64-0-serial)
+# XXX: why doesn't this work??
+#build_%:
+# $(MAKE) -C $* $(MAKE_OPTIONS) $(FLAGS_$*)
+# $(MAKE) -C $*/interface $(MAKE_OPTIONS) $(FLAGS_$*)
+
+override_dh_auto_test:
+ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
+ for target in $(addprefix test_, $(FLAVORS)); do \
+ $(MAKE) -f debian/rules $$target || exit 1; done
+endif
+
+test_0-pthread:
+ $(MAKE) -C 0-pthread tests $(MAKE_OPTIONS) $(FLAGS_0-pthread)
+test_64-0-pthread:
+ $(MAKE) -C 64-0-pthread tests $(MAKE_OPTIONS) $(FLAGS_64-0-pthread)
+test_0-openmp:
+ $(MAKE) -C 0-openmp tests $(MAKE_OPTIONS) $(FLAGS_0-openmp)
+test_64-0-openmp:
+ $(MAKE) -C 64-0-openmp tests $(MAKE_OPTIONS) $(FLAGS_64-0-openmp)
+test_0-serial:
+ $(MAKE) -C 0-serial tests $(MAKE_OPTIONS) $(FLAGS_0-serial)
+test_64-0-serial:
+ $(MAKE) -C 64-0-serial tests $(MAKE_OPTIONS) $(FLAGS_64-0-serial)
+# XXX: why cannot this work?
+#test_%:
+# $(MAKE) -C $* test $(MAKE_OPTIONS) $(FLAGS_$(*))
+
+override_dh_auto_install:
+ for target in $(addprefix install_, $(FLAVORS)); do \
+ $(MAKE) -f debian/rules $$target || exit 1; done
+ # change the inclusion for the 64-bit variant
+ find debian/tmp -type f -path '*openblas64*' -exec sed -i -e 's/openblas_config.h/openblas64_config.h/g' '{}' \;
+
+install_%:
+ $(MAKE) -C $* install $(MAKE_OPTIONS) $(FLAGS_$*) \
+ DESTDIR=../debian/tmp/ PREFIX=/usr \
+ OPENBLAS_INCLUDE_DIR=/usr/include/$(DEB_HOST_MULTIARCH)/openblas$(subst $(SOVER)-,-,$(subst -$(SOVER)-,-,$*))/ \
+ OPENBLAS_LIBRARY_DIR=/usr/lib/$(DEB_HOST_MULTIARCH)/openblas$(subst $(SOVER)-,-,$(subst -$(SOVER)-,-,$*))/ \
+ OPENBLAS_CMAKE_DIR=/usr/lib/$(DEB_HOST_MULTIARCH)/cmake/openblas$(subst $(SOVER)-,-,$(subst -$(SOVER)-,-,$*))/
+ # Fix the content of openblas.pc for 64-bit indexing
+ if test -n "$$(echo $* | grep 64)"; then \
+ sed -i -e "s/-lopenblas/-lopenblas64/" \
+ -e "s/Name: openblas$$/Name: openblas64/" \
+ debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/openblas$(subst $(SOVER)-,-,$(subst -$(SOVER)-,-,$*))/pkgconfig/openblas.pc; \
+ fi
+ # Add blas-openblas.pc and lapack-openblas.pc
+ for f in blas-openblas lapack-openblas; do \
+ sed -e "s/@DEB_VERSION_UPSTREAM@/$(DEB_VERSION_UPSTREAM)/g" \
+ -e "s/@DEB_HOST_MULTIARCH@/$(DEB_HOST_MULTIARCH)/g" \
+ -e "s/@SUBDIR@/openblas$(subst $(SOVER)-,-,$(subst -$(SOVER)-,-,$*))/g" \
+ -e "s/@INDEXING@/$$(echo $* | grep -o 64)/g" \
+ < debian/$${f}.pc.in \
+ > debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/openblas$(subst $(SOVER)-,-,$(subst -$(SOVER)-,-,$*))/pkgconfig/$${f}.pc; \
+ done
+
+execute_after_dh_clean:
+ for flavour in openmp pthread serial; do \
+ rm -rf 0-$${flavour} 64-0-$${flavour}; \
+ for i in install postinst prerm shlibs; do \
+ rm -f debian/libopenblas-$${flavour}-dev.$$i \
+ debian/libopenblas64-$${flavour}-dev.$$i \
+ debian/libopenblas0-$${flavour}.$$i \
+ debian/libopenblas64-0-$${flavour}.$$i; \
+ done; \
+ for i in links dirs; do \
+ rm -f debian/libopenblas-$${flavour}-dev.$$i \
+ debian/libopenblas64-$${flavour}-dev.$$i; \
+ done; \
+ done
+
+# Needed to avoid a dependency on metapackage libopenblas0 from
+# flavour-specific packages, since lib{blas,lapack}.so.3 is dynamically linked
+# against libopenblas.so.0 (see #966607)
+override_dh_shlibdeps:
+ dh_shlibdeps -plibopenblas0-pthread -plibopenblas0-openmp -plibopenblas0-serial -- -xlibopenblas0
+ dh_shlibdeps -plibopenblas64-0-pthread -plibopenblas64-0-openmp -plibopenblas64-0-serial -- -xlibopenblas64-0
+ dh_shlibdeps --remaining-packages -a
--- /dev/null
+3.0 (quilt)
--- /dev/null
+Tests: upstream-testsuite
+Restrictions: allow-stderr
+Depends: libopenblas-pthread-dev, gfortran
+
+Tests: upstream-testsuite
+Restrictions: allow-stderr
+Depends: libopenblas-openmp-dev, gfortran
+
+Tests: upstream-testsuite
+Restrictions: allow-stderr
+Depends: libopenblas-serial-dev, gfortran
+
+Tests: upstream-testsuite64
+Restrictions: allow-stderr, skippable
+Depends: libopenblas64-pthread-dev [!armhf !i386 !armel !mipsel !hurd-i386 !kfreebsd-i386 !m68k !powerpc !sh4 !x32], gfortran, dpkg-dev
+
+Tests: upstream-testsuite64
+Restrictions: allow-stderr, skippable
+Depends: libopenblas64-openmp-dev [!armhf !i386 !armel !mipsel !hurd-i386 !kfreebsd-i386 !m68k !powerpc !sh4 !x32], gfortran, dpkg-dev
+
+Tests: upstream-testsuite64
+Restrictions: allow-stderr, skippable
+Depends: libopenblas64-serial-dev [!armhf !i386 !armel !mipsel !hurd-i386 !kfreebsd-i386 !m68k !powerpc !sh4 !x32], gfortran, dpkg-dev
--- /dev/null
+#!/bin/sh
+# Execute upstream's testsuite against the installed binaries.
+
+set -e
+
+if [ -z "$AUTOPKGTEST_TMP" ]
+then
+ echo "Temporary directory \$AUTOPKGTEST_TMP is not set. Aborting" >&2
+ exit 1
+fi
+
+# Tell us which flavor is being used
+update-alternatives --get-selections | grep '^libopenblas.so'
+
+# Work from $AUTOPKGTEST_TMP as we need to treat the original source as read-only
+cp -a test Makefile* ?_check cpuid* ctest* getarch* param.h "$AUTOPKGTEST_TMP"/
+cd "$AUTOPKGTEST_TMP"/test
+
+# Make tests use the installed binaries instead of using the build result path
+sed -i -e 's,\.\./\$(LIBNAME),,g' Makefile
+sed -i -e '3i CEXTRALIB += -lopenblas' Makefile
+
+# Execute tests
+make
--- /dev/null
+#!/bin/sh
+# Execute upstream's testsuite against the installed binaries.
+
+set -e
+
+if [ $(dpkg-architecture -qDEB_HOST_ARCH_BITS) != 64 ]; then
+ echo "$(basename $0): test only supported on 64bit"
+ exit 77
+fi
+
+if [ -z "$AUTOPKGTEST_TMP" ]
+then
+ echo "Temporary directory \$AUTOPKGTEST_TMP is not set. Aborting" >&2
+ exit 1
+fi
+
+# Tell us which flavor is being used
+update-alternatives --get-selections | grep '^libopenblas64.so'
+
+# Work from $AUTOPKGTEST_TMP as we need to treat the original source as read-only
+cp -a test Makefile* ?_check cpuid* ctest* getarch* param.h "$AUTOPKGTEST_TMP"/
+cd "$AUTOPKGTEST_TMP"/test
+
+# Make tests use the installed binaries instead of using the build result path
+sed -i -e 's,\.\./\$(LIBNAME),,g' Makefile
+sed -i -e '3i CEXTRALIB += -lopenblas64' Makefile
+
+# Execute tests
+make FCOMMON_OPT='-frecursive -fdefault-integer-8'
--- /dev/null
+Bug-Database: https://github.com/xianyi/OpenBLAS/issues
+Bug-Submit: https://github.com/xianyi/OpenBLAS/issues/new
+Changelog: https://www.openblas.net/Changelog.txt
+Donation: https://github.com/xianyi/OpenBLAS/wiki/Donation
+Repository: https://github.com/xianyi/OpenBLAS.git
+Repository-Browse: https://github.com/xianyi/OpenBLAS/
--- /dev/null
+version=4
+opts=dversionmangle=s/\+ds$//,repacksuffix=+ds,filenamemangle=s/.+\/archive\/refs\/tags\/v(.+)\.tar\.gz$/openblas_$1.orig.tar.gz/ \
+https://github.com/xianyi/OpenBLAS/tags .*/archive/refs/tags/v(\d[\d\.]+)\.tar\.gz