From: Sébastien Villemot Date: Fri, 4 Jan 2019 09:28:31 +0000 (+0000) Subject: openblas (0.3.5+ds-1) unstable; urgency=medium X-Git-Tag: archive/raspbian/0.3.5+ds-1+rpi1^2~8 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=6eed2f80fa981189485672d97fdce61a5e374693;p=openblas.git openblas (0.3.5+ds-1) unstable; urgency=medium * New upstream version 0.3.5+ds * Bump S-V to 4.3.0 [dgit import unpatched openblas 0.3.5+ds-1] --- 6eed2f80fa981189485672d97fdce61a5e374693 diff --cc debian/README.Debian index 0000000,0000000..e2f2b3d new file mode 100644 --- /dev/null +++ b/debian/README.Debian @@@ -1,0 -1,0 +1,72 @@@ ++How to switch between the various BLAS/LAPACK implementations ++============================================================= ++ ++- BLAS: ++ ++ $ sudo update-alternatives --config libblas.so.3- ++ ++- LAPACK: ++ ++ $ sudo update-alternatives --config liblapack.so.3- ++ ++where 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 and i386, libopenblas-base provides a multiple architecture ++library. All kernels are included in the library and the one matching your ++architecture is selected at run time. Recompiling locally should bring minimal ++performance improvement. ++ ++On the contrary, on other archs, 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- ++ $ DEB_BUILD_OPTIONS=custom dpkg-buildpackage -uc -b ++ ++where 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__.deb ++ ++replacing and 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 , Fri, 7 Dec 2018 15:30:34 +0100 ++ -- Sylvestre Ledru Tue, 31 May 2011 13:56:22 +0200 diff --cc debian/blas-openblas.pc.in index 0000000,0000000..022c558 new file mode 100644 --- /dev/null +++ b/debian/blas-openblas.pc.in @@@ -1,0 -1,0 +1,10 @@@ ++prefix=/usr ++libdir=${prefix}/lib/@DEB_HOST_MULTIARCH@/openblas ++includedir=${prefix}/include/@DEB_HOST_MULTIARCH@ ++Name: openblas-blas ++Description: Optimized BLAS (linear algebra) library based on GotoBLAS2 ++Version: @DEB_VERSION_UPSTREAM@ ++URL: https://github.com/xianyi/OpenBLAS ++Libs: -L${libdir} -lblas ++Libs.private: -L${libdir} -lblas -lgfortran -lpthread -lm ++Cflags: -I${includedir} diff --cc debian/changelog index 0000000,0000000..38883d3 new file mode 100644 --- /dev/null +++ b/debian/changelog @@@ -1,0 -1,0 +1,603 @@@ ++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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 Tue, 27 Aug 2013 18:04:04 +0200 ++ ++openblas (0.2.8-1) unstable; urgency=low ++ ++ * New upstream release ++ ++ -- Sébastien Villemot 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 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 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 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 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 Sat, 08 Dec 2012 16:24:30 +0100 ++ ++openblas (0.2.4-1~exp1) experimental; urgency=low ++ ++ * New upstream release ++ ++ -- Sylvestre Ledru 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 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 Wed, 11 Jul 2012 16:32:27 +0000 ++ ++openblas (0.2.1-1~exp1) experimental; urgency=low ++ ++ * New upstream release ++ ++ -- Sylvestre Ledru 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 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 Wed, 13 Jun 2012 10:29:51 +0200 ++ ++openblas (0.1.1-3) unstable; urgency=low ++ ++ * Upload in unstable ++ ++ -- Sylvestre Ledru Sat, 02 Jun 2012 17:33:58 +0200 ++ ++openblas (0.1.1-3~exp4) experimental; urgency=low ++ ++ * Rollback previous upload ++ ++ -- Sylvestre Ledru 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 Fri, 01 Jun 2012 10:28:09 +0200 ++ ++openblas (0.1.1-3~exp2) experimental; urgency=low ++ ++ * Fix FTBFS (Closes: #666277) ++ ++ -- Sylvestre Ledru 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 Mon, 21 May 2012 13:13:46 +0200 ++ ++openblas (0.1.1-2) experimental; urgency=low ++ ++ * Moved removal from postinst to preinst ++ ++ -- Sylvestre Ledru 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 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 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 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 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 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 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 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 Tue, 26 Jul 2011 16:56:27 +0200 ++ ++openblas (0.1alpha2.2-1) unstable; urgency=low ++ ++ * New upstream release (Closes: #631886) ++ ++ -- Sylvestre Ledru 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 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 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 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 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 Sat, 16 Apr 2011 15:23:22 +0200 ++ ++openblas (0.1alpha1-1) experimental; urgency=low ++ ++ * Initial version (Closes: #605456) ++ ++ -- Sylvestre Ledru Fri, 04 Feb 2011 18:28:26 +0100 diff --cc debian/control index 0000000,0000000..9f0d252 new file mode 100644 --- /dev/null +++ b/debian/control @@@ -1,0 -1,0 +1,60 @@@ ++Source: openblas ++Maintainer: Debian Science Team ++Uploaders: Sébastien Villemot ++Section: devel ++Priority: optional ++Build-Depends: debhelper-compat (= 11), ++ dh-exec, ++ gfortran, ++ liblapack-pic (>= 3.7.1-2~) ++Standards-Version: 4.3.0 ++Vcs-Browser: https://salsa.debian.org/science-team/openblas ++Vcs-Git: https://salsa.debian.org/science-team/openblas.git ++Homepage: https://github.com/xianyi/OpenBLAS ++Rules-Requires-Root: no ++ ++Package: libopenblas-base ++Architecture: amd64 arm64 armhf i386 powerpc ppc64el ppc64 kfreebsd-i386 kfreebsd-amd64 mips64el 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 library) ++ OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version. ++ . ++ Unlike Atlas, OpenBLAS provides a multiple architecture library. ++ . ++ All kernel will be included in the library and dynamically switched to ++ the best architecture at run time (only on amd64, arm64 and i386). ++ . ++ For more information on how to rebuild locally OpenBLAS, see the section: ++ "Building Optimized OpenBLAS Packages on your ARCH" in README.Debian ++ ++Package: libopenblas-dev ++Architecture: amd64 arm64 armhf i386 powerpc ppc64el ppc64 kfreebsd-i386 kfreebsd-amd64 mips64el sparc64 s390x ++Multi-Arch: same ++Section: libdevel ++Depends: libopenblas-base (= ${binary:Version}), ++ ${shlibs:Depends}, ++ ${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 (development files) ++ OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version. ++ . ++ Unlike Atlas, OpenBLAS provides a multiple architecture library. ++ . ++ All kernel will be included in the library and dynamically switched to ++ the best architecture at run time (only on amd64, arm64 and i386). ++ . ++ This package includes the static libraries and symbolic links ++ needed for program development. diff --cc debian/copyright index 0000000,0000000..5be4ca6 new file mode 100644 --- /dev/null +++ b/debian/copyright @@@ -1,0 -1,0 +1,590 @@@ ++Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ ++Upstream-Name: OpenBLAS ++Upstream-Contact: Zhang Xianyi ++Source: https://github.com/xianyi/OpenBLAS ++Files-Excluded: lapack-netlib/* ++ relapack/* ++ ++Files: * ++Copyright: 2011-2018 The OpenBLAS Project ++ 2009-2010 The University of Texas at Austin ++ 2013 Martin Koehler, grisuthedragon@users.github.com ++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/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/gemm_thread_m.c ++ driver/level3/gemm_thread_mn.c ++ driver/level3/gemm_thread_n.c ++ driver/level3/gemm_thread_variable.c ++ driver/level3/level3_gemm3m_thread.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/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/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/max.c ++ interface/nrm2.c ++ interface/rot.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/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/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/getrf/potrf_parallel.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 ++ symcopy.h ++ driver/level3/gemm3m_level3.c ++ driver/level3/hemm3m_k.c ++ driver/level3/symm3m_k.c ++ driver/level3/level3.c ++ driver/level3/level3_syrk.c ++ driver/level3/level3_syr2k.c ++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 ++ 2012-2018 Sébastien Villemot ++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. diff --cc debian/lapack-openblas.pc.in index 0000000,0000000..a5758c7 new file mode 100644 --- /dev/null +++ b/debian/lapack-openblas.pc.in @@@ -1,0 -1,0 +1,10 @@@ ++prefix=/usr ++libdir=${prefix}/lib/@DEB_HOST_MULTIARCH@/openblas ++includedir=${prefix}/include/@DEB_HOST_MULTIARCH@ ++Name: openblas-lapack ++Description: Optimized BLAS (linear algebra) library, LAPACK ++Version: @DEB_VERSION_UPSTREAM@ ++URL: https://github.com/xianyi/OpenBLAS ++Libs: -L${libdir} -llapack ++Libs.private: -L${libdir} -llapack -lgfortran -lpthread -lm ++Cflags: -I${includedir} diff --cc debian/libopenblas-base.install index 0000000,0000000..8c207b1 new file mode 100755 --- /dev/null +++ b/debian/libopenblas-base.install @@@ -1,0 -1,0 +1,6 @@@ ++#!/usr/bin/dh-exec ++ ++usr/lib/*/libopenblas*-r0.*.so ++usr/lib/*/libopenblas.so.0 ++interface/libblas.so.3 usr/lib/${DEB_HOST_MULTIARCH}/openblas/ ++interface/liblapack.so.3 usr/lib/${DEB_HOST_MULTIARCH}/openblas/ diff --cc debian/libopenblas-base.postinst.in index 0000000,0000000..01ca2aa new file mode 100644 --- /dev/null +++ b/debian/libopenblas-base.postinst.in @@@ -1,0 -1,0 +1,15 @@@ ++#! /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@/openblas/libblas.so.3 100 ++ ++update-alternatives --install /usr/lib/@DEB_HOST_MULTIARCH@/liblapack.so.3 \ ++ liblapack.so.3-@DEB_HOST_MULTIARCH@ \ ++ /usr/lib/@DEB_HOST_MULTIARCH@/openblas/liblapack.so.3 100 ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/libopenblas-base.preinst index 0000000,0000000..07942b7 new file mode 100644 --- /dev/null +++ b/debian/libopenblas-base.preinst @@@ -1,0 -1,0 +1,14 @@@ ++#!/bin/sh ++ ++set -e ++ ++# Cleanup pre-multiarch alternative ++if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 0.2.20+ds-3~ ++then ++ update-alternatives --remove libblas.so.3 /usr/lib/openblas-base/libblas.so.3 ++ update-alternatives --remove liblapack.so.3 /usr/lib/openblas-base/liblapack.so.3 ++fi ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/libopenblas-base.prerm.in index 0000000,0000000..094ae41 new file mode 100644 --- /dev/null +++ b/debian/libopenblas-base.prerm.in @@@ -1,0 -1,0 +1,16 @@@ ++#!/bin/sh ++ ++set -e ++ ++if [ "$1" != "upgrade" ] ++then ++ update-alternatives --remove libblas.so.3-@DEB_HOST_MULTIARCH@ \ ++ /usr/lib/@DEB_HOST_MULTIARCH@/openblas/libblas.so.3 ++ ++ update-alternatives --remove liblapack.so.3-@DEB_HOST_MULTIARCH@ \ ++ /usr/lib/@DEB_HOST_MULTIARCH@/openblas/liblapack.so.3 ++fi ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/libopenblas-base.shlibs index 0000000,0000000..9dd26ad new file mode 100644 --- /dev/null +++ b/debian/libopenblas-base.shlibs @@@ -1,0 -1,0 +1,3 @@@ ++libopenblas 0 libopenblas-base ++libblas 3 libblas3 | libblas.so.3 ++liblapack 3 liblapack3 | liblapack.so.3 diff --cc debian/libopenblas-dev.docs index 0000000,0000000..7a83005 new file mode 100644 --- /dev/null +++ b/debian/libopenblas-dev.docs @@@ -1,0 -1,0 +1,4 @@@ ++README.md ++USAGE.md ++CONTRIBUTORS.md ++BACKERS.md diff --cc debian/libopenblas-dev.install index 0000000,0000000..92d7004 new file mode 100755 --- /dev/null +++ b/debian/libopenblas-dev.install @@@ -1,0 -1,0 +1,7 @@@ ++#!/usr/bin/dh-exec ++ ++usr/lib/*/libopenblas*.a ++usr/lib/*/libopenblas.so ++usr/lib/*/pkgconfig/openblas.pc ++usr/include/* ++debian/*.pc /usr/lib/${DEB_HOST_MULTIARCH}/pkgconfig diff --cc debian/libopenblas-dev.links index 0000000,0000000..0e193d3 new file mode 100755 --- /dev/null +++ b/debian/libopenblas-dev.links @@@ -1,0 -1,0 +1,6 @@@ ++#!/usr/bin/dh-exec ++ ++usr/lib/${DEB_HOST_MULTIARCH}/libopenblas.a usr/lib/${DEB_HOST_MULTIARCH}/openblas/libblas.a ++usr/lib/${DEB_HOST_MULTIARCH}/libopenblas.a usr/lib/${DEB_HOST_MULTIARCH}/openblas/liblapack.a ++usr/lib/${DEB_HOST_MULTIARCH}/openblas/libblas.so.3 usr/lib/${DEB_HOST_MULTIARCH}/openblas/libblas.so ++usr/lib/${DEB_HOST_MULTIARCH}/openblas/liblapack.so.3 usr/lib/${DEB_HOST_MULTIARCH}/openblas/liblapack.so diff --cc debian/libopenblas-dev.postinst.in index 0000000,0000000..d0d6371 new file mode 100644 --- /dev/null +++ b/debian/libopenblas-dev.postinst.in @@@ -1,0 -1,0 +1,25 @@@ ++#!/bin/sh ++ ++set -e ++ ++update-alternatives --install /usr/lib/@DEB_HOST_MULTIARCH@/libblas.so libblas.so-@DEB_HOST_MULTIARCH@ \ ++ /usr/lib/@DEB_HOST_MULTIARCH@/openblas/libblas.so 100 \ ++ --slave /usr/lib/@DEB_HOST_MULTIARCH@/libblas.a libblas.a-@DEB_HOST_MULTIARCH@ \ ++ /usr/lib/@DEB_HOST_MULTIARCH@/openblas/libblas.a \ ++ --slave /usr/include/@DEB_HOST_MULTIARCH@/cblas.h cblas.h-@DEB_HOST_MULTIARCH@ \ ++ /usr/include/@DEB_HOST_MULTIARCH@/cblas-openblas.h \ ++ --slave /usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig/blas.pc \ ++ blas.pc-@DEB_HOST_MULTIARCH@ /usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig/blas-openblas.pc ++ ++update-alternatives --install /usr/lib/@DEB_HOST_MULTIARCH@/liblapack.so \ ++ liblapack.so-@DEB_HOST_MULTIARCH@ \ ++ /usr/lib/@DEB_HOST_MULTIARCH@/openblas/liblapack.so 100 \ ++ --slave /usr/lib/@DEB_HOST_MULTIARCH@/liblapack.a liblapack.a-@DEB_HOST_MULTIARCH@ \ ++ /usr/lib/@DEB_HOST_MULTIARCH@/openblas/liblapack.a \ ++ --slave /usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig/lapack.pc \ ++ lapack.pc-@DEB_HOST_MULTIARCH@ \ ++ /usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig/lapack-openblas.pc ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/libopenblas-dev.preinst index 0000000,0000000..84fcc54 new file mode 100644 --- /dev/null +++ b/debian/libopenblas-dev.preinst @@@ -1,0 -1,0 +1,14 @@@ ++#!/bin/sh ++ ++set -e ++ ++# Cleanup pre-multiarch alternative ++if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 0.2.20+ds-3~ ++then ++ update-alternatives --remove libblas.so /usr/lib/openblas-base/libblas.so ++ update-alternatives --remove liblapack.so /usr/lib/openblas-base/liblapack.so ++fi ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/libopenblas-dev.prerm.in index 0000000,0000000..d4a20dc new file mode 100644 --- /dev/null +++ b/debian/libopenblas-dev.prerm.in @@@ -1,0 -1,0 +1,16 @@@ ++#!/bin/sh ++ ++set -e ++ ++if [ "$1" != "upgrade" ] ++then ++ update-alternatives --remove libblas.so-@DEB_HOST_MULTIARCH@ \ ++ /usr/lib/@DEB_HOST_MULTIARCH@/openblas/libblas.so ++ ++ update-alternatives --remove liblapack.so-@DEB_HOST_MULTIARCH@ \ ++ /usr/lib/@DEB_HOST_MULTIARCH@/openblas/liblapack.so ++fi ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/patches/arm-gcc-flags.patch index 0000000,0000000..32fc336 new file mode 100644 --- /dev/null +++ b/debian/patches/arm-gcc-flags.patch @@@ -1,0 -1,0 +1,22 @@@ ++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 ++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 -march=armv6 ++-FCOMMON_OPT += -mfpu=vfp -march=armv6 +++CCOMMON_OPT += -mfpu=vfpv3-d16 -march=armv7-a +++FCOMMON_OPT += -mfpu=vfpv3-d16 -march=armv7-a ++ endif ++ ++ ifeq ($(CORE), ARMV5) diff --cc debian/patches/kfreebsd.patch index 0000000,0000000..6e67291 new file mode 100644 --- /dev/null +++ b/debian/patches/kfreebsd.patch @@@ -1,0 -1,0 +1,59 @@@ ++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 ++Forwarded: not-needed ++Last-Update: 2014-08-05 ++--- ++This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ ++--- a/exports/Makefile +++++ b/exports/Makefile ++@@ -122,7 +122,7 @@ endif ++ dllinit.$(SUFFIX) : dllinit.c ++ $(CC) $(CFLAGS) -c -o $(@F) -s $< ++ ++-ifeq ($(OSNAME), $(filter $(OSNAME),Linux SunOS Android Haiku)) +++ifeq ($(OSNAME), $(filter $(OSNAME),Linux SunOS Android Haiku FreeBSD)) ++ ++ so : ../$(LIBSONAME) ++ ++@@ -158,7 +158,7 @@ endif ++ endif ++ ++ #http://stackoverflow.com/questions/7656425/makefile-ifeq-logical-or ++-ifeq ($(OSNAME), $(filter $(OSNAME),FreeBSD OpenBSD NetBSD DragonFly)) +++ifeq ($(OSNAME), $(filter $(OSNAME),OpenBSD NetBSD DragonFly)) ++ ++ so : ../$(LIBSONAME) ++ ++--- a/Makefile.install +++++ b/Makefile.install ++@@ -67,14 +67,14 @@ endif ++ #for install shared library ++ ifndef NO_SHARED ++ @echo Copying the shared library to $(DESTDIR)$(OPENBLAS_LIBRARY_DIR) ++-ifeq ($(OSNAME), $(filter $(OSNAME),Linux SunOS Android Haiku)) +++ifeq ($(OSNAME), $(filter $(OSNAME),Linux SunOS Android Haiku FreeBSD)) ++ @install -pm755 $(LIBSONAME) "$(DESTDIR)$(OPENBLAS_LIBRARY_DIR)" ++ @cd "$(DESTDIR)$(OPENBLAS_LIBRARY_DIR)" ; \ ++ ln -fs $(LIBSONAME) $(LIBPREFIX).so ; \ ++ ln -fs $(LIBSONAME) $(LIBPREFIX).so.$(MAJOR_VERSION) ++ endif ++ ++-ifeq ($(OSNAME), $(filter $(OSNAME),FreeBSD OpenBSD NetBSD DragonFly)) +++ifeq ($(OSNAME), $(filter $(OSNAME),OpenBSD NetBSD DragonFly)) ++ @cp $(LIBSONAME) "$(DESTDIR)$(OPENBLAS_LIBRARY_DIR)" ++ @cd "$(DESTDIR)$(OPENBLAS_LIBRARY_DIR)" ; \ ++ ln -fs $(LIBSONAME) $(LIBPREFIX).so ++--- a/Makefile.system +++++ b/Makefile.system ++@@ -272,7 +272,7 @@ ifeq ($(OSNAME), NetBSD) ++ MD5SUM = md5 -n ++ endif ++ ++-ifeq ($(OSNAME), Linux) +++ifeq ($(OSNAME), $(filter $(OSNAME),Linux FreeBSD)) ++ EXTRALIB += -lm ++ NO_EXPRECISION = 1 ++ endif diff --cc debian/patches/matgen-symbols-not-included.patch index 0000000,0000000..138e235 new file mode 100644 --- /dev/null +++ b/debian/patches/matgen-symbols-not-included.patch @@@ -1,0 -1,0 +1,112 @@@ ++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 ++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 ++@@ -495,24 +495,6 @@ ++ cggsvp3, ++ cgsvj0, ++ cgsvj1, ++- clagge, ++- claghe, ++- clagsy, ++- clahilb, ++- clakf2, ++- clarge, ++- clarnd, ++- claror, ++- clarot, ++- clatm1, ++- clatm2, ++- clatm3, ++- clatm5, ++- clatm6, ++- clatme, ++- clatmr, ++- clatms, ++- clatmt, ++ cpotrf2, ++ csbmv, ++ cspr2, ++@@ -527,25 +509,6 @@ ++ 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, ++@@ -559,25 +522,6 @@ ++ sggsvd3, ++ sggsvp3, ++ sladiv2, ++- slagge, ++- slagsy, ++- slahilb, ++- slakf2, ++- slaran, ++- slarge, ++- slarnd, ++- slaror, ++- slarot, ++- slatm1, ++- slatm2, ++- slatm3, ++- slatm5, ++- slatm6, ++- slatm7, ++- slatme, ++- slatmr, ++- slatms, ++- slatmt, ++ sorm22, ++ spotrf2, ++ zgejsv, ++@@ -591,24 +535,6 @@ ++ zggsvp3, ++ zgsvj0, ++ zgsvj1, ++- zlagge, ++- zlaghe, ++- zlagsy, ++- zlahilb, ++- zlakf2, ++- zlarge, ++- zlarnd, ++- zlaror, ++- zlarot, ++- zlatm1, ++- zlatm2, ++- zlatm3, ++- zlatm5, ++- zlatm6, ++- zlatme, ++- zlatmr, ++- zlatms, ++- zlatmt, ++ zpotrf2, ++ zsbmv, ++ zspr2, diff --cc debian/patches/no-embedded-lapack.patch index 0000000,0000000..9c77c7f new file mode 100644 --- /dev/null +++ b/debian/patches/no-embedded-lapack.patch @@@ -1,0 -1,0 +1,143 @@@ ++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 ++Forwarded: not-needed ++Last-Update: 2017-07-27 ++--- ++This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ ++--- a/Makefile +++++ b/Makefile ++@@ -216,75 +216,14 @@ hpl_p : ++ fi; \ ++ done ++ ++-ifeq ($(NO_LAPACK), 1) ++ netlib : +++ 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) lapack-netlib/* ++ ++-else ++-netlib : lapack_prebuild ++-ifeq ($(NOFORTRAN), $(filter 0,$(NOFORTRAN))) ++- @$(MAKE) -C $(NETLIB_LAPACK_DIR) lapacklib ++- @$(MAKE) -C $(NETLIB_LAPACK_DIR) tmglib ++-endif ++-ifndef NO_LAPACKE ++- @$(MAKE) -C $(NETLIB_LAPACK_DIR) lapackelib ++-endif ++-endif ++- ++-ifeq ($(NO_LAPACK), 1) ++-re_lapack : ++- ++-else ++-re_lapack : ++- @$(MAKE) -C relapack ++-endif ++- ++-prof_lapack : lapack_prebuild ++- @$(MAKE) -C $(NETLIB_LAPACK_DIR) lapack_prof ++- ++-lapack_prebuild : ++-ifeq ($(NOFORTRAN), $(filter 0,$(NOFORTRAN))) ++- -@echo "FORTRAN = $(FC)" > $(NETLIB_LAPACK_DIR)/make.inc ++- -@echo "OPTS = $(LAPACK_FFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc ++- -@echo "POPTS = $(LAPACK_FPFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc ++- -@echo "NOOPT = -O0 $(LAPACK_NOOPT)" >> $(NETLIB_LAPACK_DIR)/make.inc ++- -@echo "PNOOPT = $(LAPACK_FPFLAGS) -O0" >> $(NETLIB_LAPACK_DIR)/make.inc ++- -@echo "LOADOPTS = $(FFLAGS) $(EXTRALIB)" >> $(NETLIB_LAPACK_DIR)/make.inc ++- -@echo "CC = $(CC)" >> $(NETLIB_LAPACK_DIR)/make.inc ++- -@echo "override CFLAGS = $(LAPACK_CFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc ++- -@echo "override ARCH = $(AR)" >> $(NETLIB_LAPACK_DIR)/make.inc ++- -@echo "ARCHFLAGS = $(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 ++- -@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))) ++@@ -350,10 +289,5 @@ ifeq ($(OSNAME), Darwin) ++ @rm -rf getarch.dSYM getarch_2nd.dSYM ++ endif ++ @rm -f Makefile.conf config.h Makefile_kernel.conf config_kernel.h st* *.dylib ++- @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 ++@@ -20,8 +20,6 @@ else ifeq ($(ARCH), aarch64) ++ override ARCH=arm64 ++ 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 ++@@ -2151,3 +2151,9 @@ 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: +++ cd ../lapack-netlib && rm $(SLAPACKOBJS) $(DLAPACKOBJS) $(CLAPACKOBJS) $(ZLAPACKOBJS) lsame.o xerbla.o ++--- a/Makefile.install +++++ b/Makefile.install ++@@ -49,14 +49,6 @@ ifndef NO_CBLAS ++ endif ++ ++ ifneq ($(OSNAME), AIX) ++-ifndef NO_LAPACKE ++- @echo Copying LAPACKE header files to $(DESTDIR)$(OPENBLAS_INCLUDE_DIR) ++- @-install -pm644 $(NETLIB_LAPACK_DIR)/LAPACKE/include/lapacke.h "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke.h" ++- @-install -pm644 $(NETLIB_LAPACK_DIR)/LAPACKE/include/lapacke_config.h "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke_config.h" ++- @-install -pm644 $(NETLIB_LAPACK_DIR)/LAPACKE/include/lapacke_mangling_with_flags.h.in "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke_mangling.h" ++- @-install -pm644 $(NETLIB_LAPACK_DIR)/LAPACKE/include/lapacke_utils.h "$(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/lapacke_utils.h" ++-endif ++- ++ #for install static library ++ ifndef NO_STATIC ++ @echo Copying the static library to $(DESTDIR)$(OPENBLAS_LIBRARY_DIR) diff --cc debian/patches/order-files.patch index 0000000,0000000..5916398 new file mode 100644 --- /dev/null +++ b/debian/patches/order-files.patch @@@ -1,0 -1,0 +1,30 @@@ ++Description: Order files ++ Order the files when calling `ar' or $(CC), to make the build reproducible. ++Author: Alexis Bienvenüe ++Bugs-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=824639 ++Reviewed-by: Sébastien Villemot ++Last-Update: 2016-09-06 ++--- ++This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ ++--- a/Makefile +++++ b/Makefile ++@@ -220,7 +220,7 @@ netlib : ++ 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) lapack-netlib/* +++ ar -ru $(LIBNAME) `LC_ALL=C ls lapack-netlib/*` ++ ++ clean:: ++ rm -rf lapack-netlib ++--- a/interface/Makefile +++++ b/interface/Makefile ++@@ -2168,7 +2168,7 @@ libblas.so.3: $(SBLAS1OBJS) $(SBLAS2OBJS ++ ++ # 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 $@ $^ ../lapack-netlib/* -Wl,-soname,liblapack.so.3 -L.. -lopenblas $(EXTRALIB) +++ $(CC) $(LDFLAGS) -shared -o $@ $^ `LC_ALL=C ls ../lapack-netlib/*` -Wl,-soname,liblapack.so.3 -L.. -lopenblas $(EXTRALIB) ++ ++ clean:: ++ rm -f libblas.so.3 liblapack.so.3 diff --cc debian/patches/remove-openmp-warning.patch index 0000000,0000000..3355228 new file mode 100644 --- /dev/null +++ b/debian/patches/remove-openmp-warning.patch @@@ -1,0 -1,0 +1,27 @@@ ++Description: Remove warning about OpenMP ++ This warning is annoying when the library is built with pthreads. ++ See #684344 ++Author: Sébastien Villemot ++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 ++@@ -796,16 +796,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 diff --cc debian/patches/series index 0000000,0000000..c0b5dd9 new file mode 100644 --- /dev/null +++ b/debian/patches/series @@@ -1,0 -1,0 +1,7 @@@ ++arm-gcc-flags.patch ++kfreebsd.patch ++remove-openmp-warning.patch ++no-embedded-lapack.patch ++shared-blas-lapack.patch ++matgen-symbols-not-included.patch ++order-files.patch diff --cc debian/patches/shared-blas-lapack.patch index 0000000,0000000..d0d9a49 new file mode 100644 --- /dev/null +++ b/debian/patches/shared-blas-lapack.patch @@@ -1,0 -1,0 +1,31 @@@ ++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. ++Author: Sébastien Villemot ++Forwarded: not-needed ++Last-Update: 2014-05-08 ++--- ++This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ ++--- a/interface/Makefile +++++ b/interface/Makefile ++@@ -2157,3 +2157,18 @@ cblas_xerbla.$(SUFFIX) cblas_xerbla.$(PS ++ # OpenBLAS (unfiltered) tarball ++ delete-duplicate-lapack-objects: ++ cd ../lapack-netlib && rm $(SLAPACKOBJS) $(DLAPACKOBJS) $(CLAPACKOBJS) $(ZLAPACKOBJS) lsame.o xerbla.o +++ +++shared-blas-lapack: libblas.so.3 liblapack.so.3 +++ +++# 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) +++ +++# 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 $@ $^ ../lapack-netlib/* -Wl,-soname,liblapack.so.3 -L.. -lopenblas $(EXTRALIB) +++ +++clean:: +++ rm -f libblas.so.3 liblapack.so.3 diff --cc debian/rules index 0000000,0000000..717280f new file mode 100755 --- /dev/null +++ b/debian/rules @@@ -1,0 -1,0 +1,102 @@@ ++#!/usr/bin/make -f ++ ++include /usr/share/dpkg/buildflags.mk ++include /usr/share/dpkg/pkg-info.mk ++ ++MAKE_OPTIONS := NO_LAPACKE=1 NO_AFFINITY=1 USE_OPENMP=0 NO_WARMUP=1 CFLAGS="$(CPPFLAGS) $(CFLAGS)" FFLAGS="$(FFLAGS)" ++ ++# Avoid having -O2 automatically added (especially for DEB_BUILD_OPTIONS=noopt) ++MAKE_OPTIONS += COMMON_OPT= FCOMMON_OPT=-frecursive ++ ++# Build generic package with hardcoded max number of threads of 64 ++GENERIC_OPTIONS := NUM_THREADS=64 ++ ++# On x86 archs, enable dynamic arch selection ++ENABLE_DYNAMIC_ARCHS := amd64 arm64 i386 kfreebsd-amd64 kfreebsd-i386 ++ifneq (,$(findstring $(DEB_HOST_ARCH),$(ENABLE_DYNAMIC_ARCHS))) ++ GENERIC_OPTIONS += DYNAMIC_ARCH=1 DYNAMIC_OLDER=1 ++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. ++ifeq ($(DEB_HOST_ARCH),armhf) ++ GENERIC_OPTIONS += TARGET=ARMV6 ++endif ++ ++ifeq ($(DEB_HOST_ARCH),powerpc) ++ GENERIC_OPTIONS += TARGET=PPCG4 ++endif ++ ++ifeq ($(DEB_HOST_ARCH),mips64el) ++ GENERIC_OPTIONS += TARGET=SICORTEX ++endif ++ ++# POWER6 is the most generic arch that compiles on ppc64 ++ifeq ($(DEB_HOST_ARCH),ppc64) ++ GENERIC_OPTIONS += TARGET=POWER6 ++endif ++ ++ifeq ($(DEB_HOST_ARCH),ppc64el) ++ GENERIC_OPTIONS += TARGET=POWER8 ++endif ++ ++ifeq ($(DEB_HOST_ARCH),sparc64) ++ GENERIC_OPTIONS += TARGET=SPARC ++endif ++ ++ifeq ($(DEB_HOST_ARCH),s390x) ++ GENERIC_OPTIONS += TARGET=ZARCH_GENERIC ++endif ++ ++ ++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 ++ ++ ++%: ++ dh $@ ++ ++override_dh_auto_build: ++ $(MAKE) $(MAKE_OPTIONS) ++ ++ $(MAKE) -C interface shared-blas-lapack $(MAKE_OPTIONS) ++ ++override_dh_auto_install: ++ $(MAKE) install $(MAKE_OPTIONS) DESTDIR=debian/tmp/ PREFIX=/usr OPENBLAS_INCLUDE_DIR=/usr/include/$(DEB_HOST_MULTIARCH) OPENBLAS_LIBRARY_DIR=/usr/lib/$(DEB_HOST_MULTIARCH) ++ mv debian/tmp/usr/include/$(DEB_HOST_MULTIARCH)/cblas.h debian/tmp/usr/include/$(DEB_HOST_MULTIARCH)/cblas-openblas.h ++ ++# We want packages linked with -lblas to depend on any BLAS alternative, and we ++# want packages linked with -lopenblas to depend specifically on ++# libopenblas-base. ++# ++# Such a setting is not supported by dh_makeshlibs, so we ship a hand-crafted ++# shlibs file. ++override_dh_makeshlibs: ++ dh_makeshlibs ++ cp debian/libopenblas-base.shlibs debian/libopenblas-base/DEBIAN/shlibs ++ ++GENERATED_DEBIAN_FILES := $(patsubst %.in,%,$(wildcard debian/*.pc.in debian/*.postinst.in debian/*.prerm.in)) ++ ++$(GENERATED_DEBIAN_FILES): %: %.in ++ sed -e "s/@DEB_VERSION_UPSTREAM@/$(DEB_VERSION_UPSTREAM)/g" \ ++ -e "s/@DEB_HOST_MULTIARCH@/$(DEB_HOST_MULTIARCH)/g" < $< > $@ ++ ++override_dh_install: $(GENERATED_DEBIAN_FILES) ++ dh_install ++ ++override_dh_clean: ++ dh_clean ++ rm -f $(GENERATED_DEBIAN_FILES) diff --cc debian/source/format index 0000000,0000000..163aaf8 new file mode 100644 --- /dev/null +++ b/debian/source/format @@@ -1,0 -1,0 +1,1 @@@ ++3.0 (quilt) diff --cc debian/tests/control index 0000000,0000000..88bd543 new file mode 100644 --- /dev/null +++ b/debian/tests/control @@@ -1,0 -1,0 +1,3 @@@ ++Tests: upstream-testsuite ++Restrictions: allow-stderr ++Depends: @, gfortran diff --cc debian/tests/upstream-testsuite index 0000000,0000000..66707ba new file mode 100644 --- /dev/null +++ b/debian/tests/upstream-testsuite @@@ -1,0 -1,0 +1,21 @@@ ++#!/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 ++ ++# 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 diff --cc debian/watch index 0000000,0000000..9ca4133 new file mode 100644 --- /dev/null +++ b/debian/watch @@@ -1,0 -1,0 +1,3 @@@ ++version=4 ++opts=dversionmangle=s/\+ds$//,repacksuffix=+ds,filenamemangle=s/.+\/archive\/v(.+)\.tar\.gz$/openblas_$1.orig.tar.gz/ \ ++https://github.com/xianyi/OpenBLAS/tags .*/archive/v(\d[\d\.]+)\.tar\.gz