From: Sébastien Villemot Date: Tue, 22 Jan 2019 10:31:26 +0000 (+0000) Subject: Import atlas_3.10.3-8.debian.tar.xz X-Git-Tag: archive/raspbian/3.10.3-8+rpi1^2~11^2 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=1121735e2bdeba0bda0d7db01fbc1bee8201ed2e;p=atlas.git Import atlas_3.10.3-8.debian.tar.xz [dgit import tarball atlas 3.10.3-8 atlas_3.10.3-8.debian.tar.xz] --- 1121735e2bdeba0bda0d7db01fbc1bee8201ed2e diff --git a/NEWS.Debian b/NEWS.Debian new file mode 100644 index 0000000..b18b2d4 --- /dev/null +++ b/NEWS.Debian @@ -0,0 +1,19 @@ +atlas (3.8.3-25) unstable; urgency=low + + Before version 3.8.3-25, optimized binary packages were provided. + However, due to the fact that most Atlas optimisation are done at build + time, it has been decided to remove them and give priority to locally built + packages. + See README.Debian on how to rebuild Atlas optimized packages. + + -- Sylvestre Ledru Wed, 25 Aug 2010 21:42:25 +0200 + +atlas (3.8.3-18) experimental; urgency=low + + * Since Atlas 3.8.3-10, it is trivial to switch between the various Atlas + optimized version. + More information are available here: + http://wiki.debian.org/DebianScience/LinearAlgebraLibraries + + -- Sylvestre Ledru Thu, 25 Mar 2010 23:39:26 +0100 + diff --git a/README.Debian b/README.Debian new file mode 100644 index 0000000..d50021a --- /dev/null +++ b/README.Debian @@ -0,0 +1,113 @@ +ATLAS for Debian +================ + +Why are optimized packages no longer available? +----------------------------------------------- + +Before version 3.8.3-25, optimized binary packages were provided. However, due +to the fact that most Atlas optimisations are done at build time, it has been +decided to remove them and give priority to locally built packages. + +See section "Building Optimized Atlas Packages on your ARCH" on how to rebuild +Atlas for best performances. + +For more information about linear algebra libraries, see also: + + http://people.debian.org/~sylvestre/presentation-linear-algebra.pdf + + +How to switch between BLAS/LAPACK implementations +------------------------------------------------- + +It is trivial 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 here: + + http://wiki.debian.org/DebianScience/LinearAlgebraLibraries + + +Building Optimized Atlas Packages on your ARCH +---------------------------------------------- + +Building your own optimized packages of Atlas is straightforward. + +1) Get the sources of the package and its build-dependencies: + + $ apt-get source atlas + $ sudo apt-get build-dep atlas + +2) Disable CPU throttling if it is enabled. Otherwise Atlas cannot get reliable +timings and therefore the optimization will be suboptimal. This can easily be +done using the tools from the cpufrequtils package. + +The state of your CPUs can be checked with: + + $ cpufreq-info + +If for any CPU, the governor is not set to "performance", then you can do so +by issuing the following command for each of your CPU cores: + + $ sudo cpufreq-set -g performance -c + +where is the CPU core number (the first has number zero). + +See INSTALL.txt from the libatlas-doc package for more details on this issue. + +3) Build the package by running the following: + + $ cd atlas- + $ DEB_BUILD_OPTIONS=custom dpkg-buildpackage -uc -b + +where is replaced with the appropriate value. + +If the Atlas build system still complains about CPU throttling issues, despite +having set the governors to performance, then you can force Atlas by +uncommenting the following line in debian/rules: + + CONFIGURE_FLAGS += --cripple-atlas-performance + +4) When the build finishes (it will take a long time), it should produce a .deb +file, whose precise name you can figure out using: + + $ ls ../libatlas3-base_*.deb + +Install it using: + + $ sudo dpkg -i ../libatlas3-base__.deb> + +replacing and with the appropriate values. + +5) 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 Atlas package +to be on hold, with the following command: + + $ sudo aptitude hold libatlas3-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 libatlas3-base + + +Misc +---- + +Thanks to David Cournapeau for providing all the patches for the shared +libraries managements. + + + -- Sébastien Villemot , Thu, 7 Sep 2017 21:50:00 +0200 + -- Sylvestre Ledru , Tue, 15 May 2012 18:05:34 +0200 diff --git a/README.source b/README.source new file mode 100644 index 0000000..04e52c2 --- /dev/null +++ b/README.source @@ -0,0 +1,46 @@ +Recreating upstream tarball +=========================== + +atlas*.tar.gz is modified from upstream. + +*.pdf are removed from the tarball and the TexDoc directory from the CVS +AtlasBase module is included. + + +Tuning of the library +===================== + +The ATLAS build system, before creating the binaries, first performs a very +long series of timing tests in order to tune the library to the precise CPU on +which it is built. + +However, this process sometimes fails because reliable timings cannot be +obtained. In that case, the build log will contain the following near the end: +"VARIATION EXCEEDS TOLERANCE, RERUN WITH HIGHER REPS". The solution is simply +to run the build again [1]. + +This situation is not convenient for build daemons, because it means that for +every new source package, it is necessary to ask for several give backs before +getting the package compiled on all arches. + +In order to overcome this problem, the generic ATLAS package uses pre-computed +timings (called architectural defaults in the ATLAS jargon). These are located +under debian/archdefs/$(DEB_HOST_ARCH_CPU). The name of the tarballs +corresponds to the architecture detected by ATLAS (variable ARCH in +build/Make.inc). + +The procedure for creating these architectural defaults on a given platform is +the following: + + debuild -us -uc -B (will be very long, because timings will be computed) + cd build/ARCHS + make ArchNew (will create an $(ATLAS_ARCH) subdirectory) + tar caf $(ATLAS_ARCH).tar.bz2 $(ATLAS_ARCH) + mkdir -p ../../../debian/archdefs/$(DEB_HOST_ARCH_CPU)/ + mv $(ATLAS_ARCH).tar.bz2 ../../../debian/archdefs/$(DEB_HOST_ARCH_CPU)/ + echo debian/archdefs/$(DEB_HOST_ARCH_CPU)/$(ATLAS_ARCH).tar.bz2 >> ../../../debian/source/include-binaries + +[1] http://math-atlas.sourceforge.net/errata.html#tol + + -- Sébastien Villemot , Tue, 1 Aug 2017 18:03:42 +0200 + diff --git a/archdefs/README b/archdefs/README new file mode 100644 index 0000000..c035e11 --- /dev/null +++ b/archdefs/README @@ -0,0 +1,25 @@ +Note that subdirectories correspond to DEB_HOST_ARCH_CPU. Therefore, amd64 is +used for kfreebsd-amd64, i386 for kfreebsd-i386 and hurd-i386, and arm for +armel and armhf. + +Here is how some information on where and how the various archdefs were +generated (other details are in README.source): + +- amd64: ATLAS 3.10.1 / karaba.cepremap.org / wheezy / 2013-06-04 +- arm: + + GENERIC32.tar.bz2 (for armel): ATLAS 3.10.1 / vamana.villemot.name (Raspberry Pi) / sid / 2013-07-01 + + GENERIC32FPV3D16MAC.tar.bz2 (for armhf): ATLAS 3.10.3 / asachi.debian.org / sid / 2017-08-10 +- arm64: ATLAS 3.10.3 / asachi.debian.org / sid / 2016-08-05 +- i386: from ATLAS 3.10.1 tarball +- ia64: ATLAS 3.10.1 / merulo.debian.org / sid / 2013-06-08 +- mips: ATLAS 3.10.1 / gabrielli.debian.org / sid / 2013-07-27 +- mipsel: ATLAS 3.10.1 / eder.debian.org / sid / 2013-06-07 +- mips64el: ATLAS 3.10.2 / etler.debian.org / sid / 2015-11-08 +- powerpc: ATLAS 3.10.1 / partch.debian.org / sid / 2013-06-06 +- ppc64: ATLAS 3.10.3 / pizzetti.debian.org / sid / 2017-08-10 +- ppc64el: ATLAS 3.10.3 / plummer.debian.org / sid / 2016-08-05 +- riscv64: created by Manuel A. Fernandez Montecelo (see https://bugs.debian.org/897128) +- s390x: + + IBMz964.tar.bz2: ATLAS 3.10.1 / zelenka.debian.org / sid / 2013-06-06 + + IBMz1264.tar.bz2: created by Dimitri John Ledkov for Ubuntu +- sparc64: ATLAS 3.10.3 / notker.debian.net / sid / 2017-08-13 diff --git a/archdefs/amd64/x86SSE264SSE2.tar.bz2 b/archdefs/amd64/x86SSE264SSE2.tar.bz2 new file mode 100644 index 0000000..0fe6917 Binary files /dev/null and b/archdefs/amd64/x86SSE264SSE2.tar.bz2 differ diff --git a/archdefs/arm/GENERIC32.tar.bz2 b/archdefs/arm/GENERIC32.tar.bz2 new file mode 100644 index 0000000..5009cc6 Binary files /dev/null and b/archdefs/arm/GENERIC32.tar.bz2 differ diff --git a/archdefs/arm/GENERIC32FPV3D16MAC.tar.bz2 b/archdefs/arm/GENERIC32FPV3D16MAC.tar.bz2 new file mode 100644 index 0000000..02320f3 Binary files /dev/null and b/archdefs/arm/GENERIC32FPV3D16MAC.tar.bz2 differ diff --git a/archdefs/arm64/GENERIC64.tar.bz2 b/archdefs/arm64/GENERIC64.tar.bz2 new file mode 100644 index 0000000..9dfa6e0 Binary files /dev/null and b/archdefs/arm64/GENERIC64.tar.bz2 differ diff --git a/archdefs/i386/x86x8732.tar.bz2 b/archdefs/i386/x86x8732.tar.bz2 new file mode 100644 index 0000000..554c778 Binary files /dev/null and b/archdefs/i386/x86x8732.tar.bz2 differ diff --git a/archdefs/ia64/IA64Itan64.tar.bz2 b/archdefs/ia64/IA64Itan64.tar.bz2 new file mode 100644 index 0000000..21d191c Binary files /dev/null and b/archdefs/ia64/IA64Itan64.tar.bz2 differ diff --git a/archdefs/mips/GENERIC32.tar.bz2 b/archdefs/mips/GENERIC32.tar.bz2 new file mode 100644 index 0000000..d6997ca Binary files /dev/null and b/archdefs/mips/GENERIC32.tar.bz2 differ diff --git a/archdefs/mips64el/GENERIC64.tar.bz2 b/archdefs/mips64el/GENERIC64.tar.bz2 new file mode 100644 index 0000000..ef45e33 Binary files /dev/null and b/archdefs/mips64el/GENERIC64.tar.bz2 differ diff --git a/archdefs/mipsel/GENERIC32.tar.bz2 b/archdefs/mipsel/GENERIC32.tar.bz2 new file mode 100644 index 0000000..bfb2eb0 Binary files /dev/null and b/archdefs/mipsel/GENERIC32.tar.bz2 differ diff --git a/archdefs/powerpc/GENERIC32.tar.bz2 b/archdefs/powerpc/GENERIC32.tar.bz2 new file mode 100644 index 0000000..dd53459 Binary files /dev/null and b/archdefs/powerpc/GENERIC32.tar.bz2 differ diff --git a/archdefs/ppc64/GENERIC64.tar.bz2 b/archdefs/ppc64/GENERIC64.tar.bz2 new file mode 100644 index 0000000..de97216 Binary files /dev/null and b/archdefs/ppc64/GENERIC64.tar.bz2 differ diff --git a/archdefs/ppc64el/POWER864LE.tar.bz2 b/archdefs/ppc64el/POWER864LE.tar.bz2 new file mode 100644 index 0000000..e23c438 Binary files /dev/null and b/archdefs/ppc64el/POWER864LE.tar.bz2 differ diff --git a/archdefs/riscv64/GENERIC64.tar.bz2 b/archdefs/riscv64/GENERIC64.tar.bz2 new file mode 100644 index 0000000..bcc5f16 Binary files /dev/null and b/archdefs/riscv64/GENERIC64.tar.bz2 differ diff --git a/archdefs/s390x/IBMz1264.tar.bz2 b/archdefs/s390x/IBMz1264.tar.bz2 new file mode 100644 index 0000000..5943b4c Binary files /dev/null and b/archdefs/s390x/IBMz1264.tar.bz2 differ diff --git a/archdefs/s390x/IBMz964.tar.bz2 b/archdefs/s390x/IBMz964.tar.bz2 new file mode 100644 index 0000000..6136ce2 Binary files /dev/null and b/archdefs/s390x/IBMz964.tar.bz2 differ diff --git a/archdefs/sparc64/GENERIC64.tar.bz2 b/archdefs/sparc64/GENERIC64.tar.bz2 new file mode 100644 index 0000000..9f757d2 Binary files /dev/null and b/archdefs/sparc64/GENERIC64.tar.bz2 differ diff --git a/blas-atlas.pc.in b/blas-atlas.pc.in new file mode 100644 index 0000000..7ca9098 --- /dev/null +++ b/blas-atlas.pc.in @@ -0,0 +1,10 @@ +prefix=/usr +libdir=${prefix}/lib/@DEB_HOST_MULTIARCH@/atlas +includedir=${prefix}/include/@DEB_HOST_MULTIARCH@ +Name: atlas-blas +Description: Automatically Tuned Linear Algebra Software, BLAS +Version: @DEB_VERSION_UPSTREAM@ +URL: http://math-atlas.sourceforge.net/ +Libs: -L${libdir} -lblas +Libs.private: -L${libdir} -latlas -lm +Cflags: -I${includedir} diff --git a/changelog b/changelog new file mode 100644 index 0000000..98ac3f8 --- /dev/null +++ b/changelog @@ -0,0 +1,1669 @@ +atlas (3.10.3-8) unstable; urgency=medium + + * Drop armel-is-v4t.patch. + No longer needed now that armel baseline is v5te (see #882174). + * Fix build of custom package (.pc file was generated too late) + * Bump to debhelper compat level 12 + * Add Rules-Requires-Root: no + * Bump to S-V 4.3.0 + + -- Sébastien Villemot Tue, 22 Jan 2019 11:31:26 +0100 + +atlas (3.10.3-7) unstable; urgency=medium + + * libatlas-doc: add Breaks+Replaces libatlas-base-dev (<< 3.10.3-6~) + Thanks to Andreas Beckmann (Closes: #901099) + + -- Sébastien Villemot Sat, 09 Jun 2018 19:07:12 +0200 + +atlas (3.10.3-6) unstable; urgency=medium + + * Resurrect architectural defaults for ia64. + * Add architectural defaults for riscv64. + Thanks to Manuel A. Fernandez Montecelo (Closes: #897128) + * Bump to debhelper compat level 11. + * d/rules: remove get-orig-source target. + * 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). + * Bump S-V to 4.1.4. + * Update Vcs-* fields for move to salsa. + * Install doc under /u/s/d/libatlas-base-dev, per Policy §12.3. + + -- Sébastien Villemot Sun, 29 Apr 2018 19:37:01 +0200 + +atlas (3.10.3-5) unstable; urgency=low + + * libatlas3-base Conflicts+Replaces libcblas3. (Closes: #874802) + * libatlas-base-dev Conflicts+Replaces libcblas-dev. (Closes: #874803) + + -- Sébastien Villemot Wed, 13 Sep 2017 22:29:27 +0200 + +atlas (3.10.3-4) unstable; urgency=low + + * Multi-archify the package. + Incidentally, drop the dependency of libatlas-base-dev on libblas-dev, since + cblas.h is now managed by the alternative. + * kfreebsd.patch: update using the fix applied upstream. + * Bump Standards-Version to 4.1.0. + + -- Sébastien Villemot Sat, 09 Sep 2017 10:27:50 +0200 + +atlas (3.10.3-3) unstable; urgency=medium + + * d/control: libatlas-base-dev now directly depends on libblas-dev. + This is necessary for having cblas.h under /usr/include (as was + the case before libatlas-dev was dropped). + * Add archdef for sparc64. + * d/control: mark libatlas-doc as M-A foreign. + * d/orig-tar.{sh,exclude}: fetch TexDoc subdir from git instead of CVS. + + -- Sébastien Villemot Wed, 16 Aug 2017 22:30:36 +0200 + +atlas (3.10.3-2) unstable; urgency=medium + + * “The frantic post-release package overhaul” + + [ Sébastien Villemot ] + * d/copyright: complete rewrite using machine-readable format 1.0. + * Merge libatlas-dev into libatlas-base-dev, drop the former. + * Drop useless patches: + + d/p/10_s390.diff + + d/p/17_hppa.diff + + d/p/18_alpha.diff + + d/p/20_armel.diff + + d/p/22_sh.diff + + d/p/16_warning-removed.diff + * d/p/ppc64-endianness.patch: new patch, fix machine detection on ppc64. + * d/p/fix-typos.patch: new patch. + * d/p/missing-cflags.patch: new patch. + * Drop patches for creating full BLAS and LAPACK libs, and shared libs. + Replace them by rules in debian/rules. + Also no longer embed lib(pt)?cblas.a into liblapack.a, not needed. + * d/rules: + + Rewrite and simplify using dh (drop cdbs). + + Support parallel=N in DEB_BUILD_OPTIONS. + + Support nodoc in DEB_BUILD_OPTIONS. + + Inject flags from dpkg-buildflags into the generic package. + Incidentally, this means that the noopt and nostrip flags of + DEB_BUILD_OPTIONS are now supported. (Closes: #697203) + + Do not use "-Ss flapack" option of configure, it does not work. + * d/watch: + + Bump to format version 4. Update d/orig-tar.sh to make it compatible with + the new invocation syntax. + + Add +ds suffix to orig tarball, since we're repacking it. + * d/control: + + Use canonical URL in Vcs-Browser. + + Drop Suggests on libblas-doc, superseded by liblapack-doc. + + Remove several unnecessary build-dependencies. + + Bump Standards-Version to 4.0.1. + + libatlas-test now marked priority optional, per Policy 4.0.1. + * Bump debhelper compat level to 10. + * Remove obsolete TODO. + * d/lapack-atlas.in: add Requires.private on blas. + * Custom package: + + Use DEB_BUILD_OPTIONS=custom as new interface. + By the way, no longer automatically append a changelog entry. + (Closes: #854781) + + Improve the instructions in README.Debian. + + Add -lpthread to dynamic libs and .pc file when relevant. + + Ship libpt{c,f77}blas.so when relevant. (Closes: #737834) + * armhf generic package: stop using Cortex-a7 machtype, enable VFPv3-D16. + * Add archdef for ppc64. + + [ Dimitri John Ledkov ] + * d/rules: on Ubuntu s390x set ARCHS to z12. + * d/archdefs/s390x: add IBMz12 tarball + + -- Sébastien Villemot Thu, 10 Aug 2017 18:39:08 +0200 + +atlas (3.10.3-1) unstable; urgency=low + + [ Sébastien Villemot ] + * Imported Upstream version 3.10.3. (Closes: #833139) + * Drop d/p/cpu-throttling-check.diff, no longer needed. + Replace it with new --cripple-atlas-performance option. + * Drop d/p/ppc64el-new-archdef-name.patch, applied upstream. + * Drop d/p/armhf.diff, no longer needed. + * d/rules: update architecture/ISA names/enums. + * Update archdefs for ppc64el, arm64 and armhf. + * d/control: + + drop useless Section field for binary package libatlas-test. + + bump Standards-Version to 3.9.8, no changes needed. + + use secure URLs for Vcs-* fields. + * Improve shell syntax in preinst scripts. + Thanks to Wolfgang Karall-Ahlborn (Closes: #805406) + + [ Dimitri John Ledkov ] + * d/rules: on ppc64el set ARCHES to POWER8. + + -- Sébastien Villemot Sat, 06 Aug 2016 20:27:27 +0200 + +atlas (3.10.2-9) unstable; urgency=medium + + [ Sébastien Villemot ] + * d/p/powerpc-dcbt.patch: new patch. + Fixes FTBFS on powerpc with recent binutils. + + [ Aurelien Jarno ] + * Add archdef for mips64el. (Closes: #804577) + + -- Sébastien Villemot Mon, 23 Nov 2015 19:21:55 +0100 + +atlas (3.10.2-8) unstable; urgency=medium + + * Remove transitional package libatlas3gf-base. + * Remove archdef for sparc. + * Mark libatlas-dev as arch:any. + It contains generated header files that can differ across architectures. + * Remove a few obsolete Suggests/Recommends/Conflicts. + + -- Sébastien Villemot Fri, 06 Nov 2015 18:54:00 +0100 + +atlas (3.10.2-7) unstable; urgency=medium + + [ Andreas Beckmann ] + * libatlas-base-dev.preinst: Cleanup obsolete alternatives dating back to + lenny. (Closes: #776089) + + -- Sébastien Villemot Sat, 24 Jan 2015 23:06:27 +0100 + +atlas (3.10.2-6) unstable; urgency=medium + + * Add missing files in archdef for mips. + More precisely, add missing GENERIC32/lapack/gcc/atlas_{c,z}GetNB_geqrf.h in + debian/archdef/mips/GENERIC32.tar.bz2. The absence of these files was making + the compilation insanely long on some buildds, causing FTBFS by timeout. + (Closes: #770379) + + -- Sébastien Villemot Sat, 22 Nov 2014 13:37:44 +0100 + +atlas (3.10.2-5) unstable; urgency=medium + + * Add archdef for arm64. Drastically diminishes build time, and avoids random + FTBFS. (Closes: #763805) + * Add ppc64el support. + - New patches (thanks, Michael Normand et al). + + ppc64el-abiv2.patch + + ppc64el-ifdef-files-with-lvx.patch + + ppc64el-new-archdef-name.patch + - debian/archdefs/ppc64el/GENERIC64LE.tar.bz2: add archdefs/timings. + - debian/archdefs/README: updated accordingly. + Thanks to Mauricio Faria de Oliveira for putting this together. + (Closes: #766695) + * Fix paths in debian/README.source. + + -- Sébastien Villemot Sat, 15 Nov 2014 13:53:31 +0100 + +atlas (3.10.2-4) unstable; urgency=medium + + [ Alastair McKinstry ] + * Add pkg-config file atlas-blas.pc and atlas-lapack.pc alias via + update-alternatives. + + -- Sébastien Villemot Wed, 15 Oct 2014 21:35:39 +0200 + +atlas (3.10.2-3) unstable; urgency=medium + + * libatlas3-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 + * Drop obsolete note in libatlas3-base package description about former + optimized packages. + * Bump Standards-Version to 3.9.6, no changes needed. + + -- Sébastien Villemot Sat, 27 Sep 2014 20:24:41 +0200 + +atlas (3.10.2-2) unstable; urgency=medium + + * shared_libraries.diff: no longer include ATLAS-specific symbols in + libblas.so and liblapack.so. Rather dynamically link those libraries with + libatlas.so. This makes it possible to use liblapack.so from ATLAS with a + libblas.so coming from somewhere else. Thanks to Guillem Jover for + suggesting this solution. (Closes: #576972) + * Revert back to a higher priority in the LAPACK alternatives. + The priority had been lowered in 3.8.4-8 in order to minimize the incidence + of #576972, so this is no longer needed. + + -- Sébastien Villemot Tue, 05 Aug 2014 18:13:33 +0200 + +atlas (3.10.2-1) unstable; urgency=medium + + * Imported Upstream version 3.10.2 + * fix-non-threaded-build.diff: remove patch, fixed upstream. + * debian/rules: update to reflect numbering change for architectures. + * Remove Sylvestre Ledru from Uploaders. Thanks Sylvestre for your work! + * Remove architectural defaults for obsolete ia64 arch. + * Drop obsolete code in maintainer scripts to deal with the transitions + libblas.so.3gf => libblas.so.3 and liblapack.so.3gf => liblapack.so.3. + * Improvement to debian/orig-tar.sh: save CVS download time. + * Remove duplicate changelog in libatlas-doc. + + -- Sébastien Villemot Sat, 12 Jul 2014 13:40:15 +0200 + +atlas (3.10.1-4) unstable; urgency=medium + + * libatlas3gf-base: update long description to suppress lintian warning. + * Remove architectural defaults for obsolete s390 arch. + * Use the new GENERIC arch name for powerpc, instead of POWER3. + Hopefully that will fix the FTBFS on powerpc. + + -- Sébastien Villemot Mon, 03 Feb 2014 18:16:51 +0000 + +atlas (3.10.1-3) unstable; urgency=medium + + * libatlas-base-dev now provides liblapack.so. + * Remove unused libatlas-3.so, libatlas-3gf.so and libatlas.so.* virtual + packages. + * Rewrite logic in libatlas3-base.postinst. (Closes: #719142) + * Disable autodetection of machine type on archs for which ATLAS does not + provide generic-enough architectural defaults. This is achieved by creating + a GENERIC machine type (see generic.diff). In particular, this ensures that + the package created on an armel buildd with an ARMv7 will be generic. + (Closes: #719355) + * Register documentation to doc-base. + * Bump Standards-Version to 3.9.5, no changes needed. + + -- Sébastien Villemot Wed, 29 Jan 2014 19:23:08 +0100 + +atlas (3.10.1-2) unstable; urgency=low + + * Allow the generic package to build on machines with CPU throttling + enabled. Otherwise the package FTBFS on some buildds (e.g. biber). + Implementation is done by reactivating the "-Si cputhrchk 0" flag + (cpu-throtthling-check.diff), and using it in debian/rules. + * Add architectural defaults for armel and mips. + * armhf.diff: do not enforce 32-registers FPU for Fortran + + -- Sébastien Villemot Sat, 27 Jul 2013 14:26:05 +0200 + +atlas (3.10.1-1) experimental; urgency=low + + [ Sylvestre Ledru ] + * New upstream release (Closes: #609287) + + [ Sébastien Villemot ] + * Provide architectural defaults (i.e. precomputed timings) for all + release archs (except armel and mips for the time being, due to slow + porterboxes). This will make the package build much faster and should + eliminate transient build failures due to excessive variance in the + timings. + * Move symlinks for lib{cblas,f77blas,atlas,lapack_atlas} out of the + libblas.so.3 alternative and make them always present, so that + software relying on these libs do not break when another alternative + is selected for BLAS + * ATLAS now has improved ARM support with native asm constructs. This required + the following tunes: + + armel-is-v4t.diff: new patch, prevents FTBFS on armel; otherwise, + ATLAS uses asm constructs too recent for the platform (armel is only v4t) + + debian/rules: on armhf, define the ATL_ARM_HARDFP flag; otherwise the asm + constructs use the soft-float ABI for passing floating points + + on armhf, ensure that -mfloat-abi=softfp and -mcpu=vfpv3 flags are never + used; this is implemented via a patch (armhf.diff) and by the use of fixed + archdefs + * The generic package is now built without multi-threading, because otherwise + the package fails to build on some single-processor machines (this required + the introduction of a patch: fix-non-threaded-build.diff). As a side effect, + the build of the custom package gracefully handles non-threaded + builds. (Closes: #602524) + * Add libblas.a as slave in the libblas.so alternative (Closes: #701921) + * Add symlinks for lib{f77blas,atlas}.a in /usr/lib (Closes: #666203) + * Modify shlibs file of libatlas3-base, such that packages using + libblas/liblapack depend on any BLAS/LAPACK alternative, while packages + depending on ATLAS-specific libraries (e.g. libatlas.so) depend specifically + on libatlas3-base. + * corei1.diff: remove patch, applied upstream + * Use my @debian.org email address + * Remove obsolete DM-Upload-Allowed flag + * Switch VCS to git + * Remove Conflicts/Replaces against pre-squeeze packages + * libatlas-base-dev now provides libblas.so, as libblas-dev + * No longer use -Wa,--noexecstack in CFLAGS, it makes the package FTBFS + * Do not use POWER3 arch for powerpcspe port (Closes: #701068) + * Bump to debhelper compat level 9 + * README.Debian: mention that devscripts is needed to compile the custom + package (Closes: #697431) + * Bump Standards-Version to 3.9.4. As a consequence, add Built-Using + fields because the package embeds stuff from liblapack-pic + + -- Sébastien Villemot Tue, 11 Jun 2013 15:58:16 +0200 + +atlas (3.8.4-9.1) unstable; urgency=low + + * Non-maintainer upload. + * libatlas3gf-base: Add Breaks: octave3.2 (Closes: #706328) + This fixes some upgrade paths by removing the obsolete octave3.2 (and its + triggers) a bit earlier. This is a workaround for dpkg bug #671711: dpkg + may run trigger processing for a package even if its dependencies are not + satisfied. The octave3.2 triggers may be run in such a state (with + liblapack* and libblas* unpacked but unconfigured, therefore the + alternatives may not be setup or dangling) and will fail, aborting the + upgrade, even if octave3.2 would be removed later anyway. + Similar Breaks exist in libblas3 and libarpack2 to cover more incarnations + of this bug. + + -- Andreas Beckmann Sun, 28 Apr 2013 22:25:26 +0200 + +atlas (3.8.4-9) unstable; urgency=low + + [ Sébastien Villemot ] + * libatlas-test: put in devel/extra, to reflect override + * Force generic PPC CPU when building a non-custom package on a PPC arch + (Closes: #680096) + + [ Sylvestre Ledru ] + * Use series for list the patches + * Patches refreshed + + -- Sébastien Villemot Sat, 04 Aug 2012 11:56:20 +0000 + +atlas (3.8.4-8) unstable; urgency=low + + * libatlas3-base.prerm, libatlas3gf-base.prerm: avoid crash if libblas.so.3gf + or liblapack.so.3gf already deleted + * Add 3gf compat symlinks for libcblas, libf77blas and liblapack_atlas + (to avoid breakage of some reverse deps) + * In the LAPACK alternatives, use a lower priority than Netlib (in order to + minimize the incidence of #576972) + * Update and clean-up README.Debian + * Mention known build failures in README.source + * libatlas3gf-base transitional package: + + move to section oldlibs + + mark as arch:all + * Add myself to Uploaders + * Set DM-Upload-Allowed to yes + + -- Sébastien Villemot Sun, 24 Jun 2012 15:36:49 +0000 + +atlas (3.8.4-7) unstable; urgency=low + + * Force generic x86 CPU when building a non-custom package on an x86 arch + (Closes: #676885) + * Force 2 threads when not building a custom package (as was the case up + to and including 3.8.3-30) + * Fix detection of some Intel Core i1 CPUs (corei1.diff) + + -- Sébastien Villemot Wed, 13 Jun 2012 16:33:20 +0200 + +atlas (3.8.4-6) unstable; urgency=low + + * Yet an other stupid bug... + Merci à Rafael Laboissiere (Closes: #676614) + + -- Sylvestre Ledru Fri, 08 Jun 2012 20:16:49 +0200 + +atlas (3.8.4-5) unstable; urgency=low + + * Bring back slave alternative for liblapack.so.3gf. + Merci à Sébastien Villemot (Closes: #676495) + + -- Sylvestre Ledru Thu, 07 Jun 2012 13:02:23 +0200 + +atlas (3.8.4-4) unstable; urgency=low + + * Upload in unstable (Closes: #673357) + + -- Sylvestre Ledru Sat, 02 Jun 2012 17:33:13 +0200 + +atlas (3.8.4-4~exp9) experimental; urgency=low + + * Drop the old conflict on libblas-3.so + + -- Sylvestre Ledru Thu, 31 May 2012 19:55:12 +0200 + +atlas (3.8.4-4~exp8) experimental; urgency=low + + * Replaces and Breaks updated against the right versions of other impacted + packages + * Force the right version to build against liblapack-dev and libblas-dev + * Add a missing conflict + + -- Sylvestre Ledru Tue, 22 May 2012 14:32:20 +0200 + +atlas (3.8.4-4~exp7) experimental; urgency=low + + * Fix a mixed between postinst & preinst (Closes: #643767) + + -- Sylvestre Ledru Sun, 20 May 2012 17:21:33 +0200 + +atlas (3.8.4-4~exp6) experimental; urgency=low + + * Moved removal from postinst to preinst + + -- Sylvestre Ledru Fri, 18 May 2012 16:06:24 +0200 + +atlas (3.8.4-4~exp5) experimental; urgency=low + + * libblas and liblapack were not correctly named causing upgrades to fails. + (Closes: #643767) + * Update the README.Debian and TODO regarding recent changes + + -- Sylvestre Ledru Tue, 15 May 2012 18:06:16 +0200 + +atlas (3.8.4-4~exp4) experimental; urgency=low + + * Remove libblas.so.3gf liblapack.so.3gf references before the install + * Fix a typo in the CPU freq (Closes: #672783) + + -- Sylvestre Ledru Fri, 18 May 2012 16:06:16 +0200 + +atlas (3.8.4-4~exp3) experimental; urgency=low + + * Update standards version to version 3.9.3 + + -- Sylvestre Ledru Tue, 10 Apr 2012 22:01:50 +0200 + +atlas (3.8.4-4~exp2) experimental; urgency=low + + * Join modifications with blas, lapack, atlas and openblas. + Declare the replacements of all *3gf blas & lapack implementation + (See bug #660607) + * postinst-has-useless-call-to-ldconfig & postrm-has-useless-call-to-ldconfig + fixed + * copyright-refers-to-deprecated-bsd-license-file fixed + * libatlas3gf-base is now a transitional package to libatlas3-base + * Fix a FTBFS under sh4. Thanks to Nobuhiro Iwamatsu for the patch + (Closes: #605650) + + -- Sylvestre Ledru Mon, 20 Feb 2012 18:58:04 +0100 + +atlas (3.8.4-4~exp1) experimental; urgency=low + + * Rename libblas3gf package => libblas3 + * Rename libblas.so.3gf => libblas.so.3 + + -- Sylvestre Ledru Sun, 04 Sep 2011 14:47:41 +0200 + +atlas (3.8.4-3) unstable; urgency=low + + * Revert change about devscripts being in the build-dep (see bug #628104) + * Fix an error about missing tests when building custom package + (Closes: #629528) + * Fix an error about the pdf which cannot be found when building custom + package. + + -- Sylvestre Ledru Tue, 07 Jun 2011 20:56:49 +0200 + +atlas (3.8.4-2) unstable; urgency=low + + * Fix the FTBFS under kfreebsd (kfreebsd.diff) (Closes: #628424) + * Update of the README.Ddebian with more information + * devscripts added into the build-dep of atlas (Closes: #628104) + + -- Sylvestre Ledru Mon, 30 May 2011 23:58:17 +0200 + +atlas (3.8.4-1) unstable; urgency=low + + * New upstream release + * force -j 1 of make removed (hopefully fixes the FTBFS) + * -Si cputhrchk 0 removed + * Standards-Version updated to version 3.9.2 + * Switch to dpkg-source 3.0 (quilt) format + + -- Sylvestre Ledru Mon, 16 May 2011 13:52:42 +0200 + +atlas (3.8.3-30) unstable; urgency=low + + * Update of the README.Debian (typos, old stuff, etc) + * Some clean up and simplification of debian/rules + (removed rules to build preoptimized packages) + * Remove Recommends on libblas3gf when installing libatlas + * Drop control.in (was used when we were build pre-optimized packages) + + -- Sylvestre Ledru Sat, 19 Mar 2011 09:47:02 +0100 + +atlas (3.8.3-29) unstable; urgency=low + + [ Simon McVittie ] + * Run 'make check' and 'make ptcheck' to build the tests, then install them + in libatlas-test (Closes: #588418) + + -- Sylvestre Ledru Tue, 23 Nov 2010 22:55:34 +0100 + +atlas (3.8.3-28) unstable; urgency=low + + * Support of sh4. Thanks to Nobuhiro Iwamatsu. (Closes: #595896) + * Fix a typo in the README.Debian. Thanks to Jan Medlock. (Closes: #595981) + * Clean up of the old .install, postinst & prerm files + + -- Sylvestre Ledru Wed, 27 Oct 2010 21:05:48 +0200 + +atlas (3.8.3-27) unstable; urgency=low + + * Fix a build issue with 64 archs. This issue has been introduced by upload + 3.8.3-25 + + -- Sylvestre Ledru Sun, 05 Sep 2010 13:06:51 +0200 + +atlas (3.8.3-26) unstable; urgency=low + + * Fix a bug on localized system. For example, the custom build failed on a + russian (ru_RU) system. Thanks to Damir Islamov for providing the fix. + * Provide more information on how to rebuild custom packages in + README.Debian + * Provide multithreaded Atlas libraries by default. Many thanks to + Dirk Eddelbuettel for the patch. (Closes: #595326) + * Standards-Version updated to version 3.9.1 + + -- Sylvestre Ledru Sat, 04 Sep 2010 00:46:03 +0200 + +atlas (3.8.3-25) unstable; urgency=low + + * Drop all optimized packages. + Before version 3.8.3-25, optimized binary packages were provided. + However, due to the fact that most Atlas optimisation are done at build + time, it has been decided to remove them and give priority to locally built + packages. + See README.Debian on how to rebuild Atlas optimized packages. + * Force the number of threads to 2 + + -- Sylvestre Ledru Wed, 25 Aug 2010 21:14:57 +0200 + +atlas (3.8.3-24) unstable; urgency=low + + [ Denis Barbier ] + * Build system should stop on the first error (Closes: #581620). + * Update of the vcs metadata + + -- Sylvestre Ledru Wed, 07 Jul 2010 08:39:08 +0200 + +atlas (3.8.3-23) unstable; urgency=low + + * Disable parallel build. This might be the cause of FTBFS. + (Closes: #581620, #581621, #584366) + + -- Sylvestre Ledru Tue, 06 Jul 2010 11:38:55 +0200 + +atlas (3.8.3-22) unstable; urgency=low + + * sse3 & core2sse3 packages removed for hurd + * Fix a build issue under mips & mipsel (patch 21_mips2.diff) + * Fix a custom build issue. Thanks to Adrian Benson for the patch + (Closes: #576987, #579990) + + -- Sylvestre Ledru Tue, 11 May 2010 11:39:10 +0200 + +atlas (3.8.3-21) unstable; urgency=low + + * Maintainer changed to the Debian Science Team + * Simplification of the s390 detection + * armel detection added (Closes: #243447, #355355) + * Revert the sse and sse2 for ia64 (introduced in 3.8.3-18) since these + extensions do not exist on this CPU. + + -- Sylvestre Ledru Thu, 29 Apr 2010 18:03:14 +0200 + +atlas (3.8.3-20) unstable; urgency=low + + * Fix a problem on the custom build (Closes: #576755) + * Some patches renamed to make sure of their order + * Fix a FTBFS under mips, hppa & alpha (Closes: #576891) + * Add conflicts on libblas{-dev} (<1.2-5) and liblapack{-dev} (<3.2.1-4) + to make sure that the update-alternatives mecanism can be used + (Closes: #576855) + * Fix a priority with 2.0 packages + + -- Sylvestre Ledru Thu, 08 Apr 2010 17:51:05 +0200 + +atlas (3.8.3-19) unstable; urgency=low + + * Upload to unstable (Closes: #536686, #561299, #521056, #569397, #571108 + #344091, #450692, #517826, #571108, #504586, #552464, #524459) + (LP: #458202, #376739, #406520, #505339, #523365, #363510) + + -- Sylvestre Ledru Sun, 28 Mar 2010 01:05:53 +0100 + +atlas (3.8.3-18) experimental; urgency=low + + * Youpi, it is working! + * Fix a build error with ia64. It also deserves sse & sse2 packages. + Could not find if sse3 is well supported for such arch. + * NEWS.Debian added + * README.Debian added with "how to switch between blas/lapack + implementation" + * Probably the last upload in experimental before unstable. + + -- Sylvestre Ledru Thu, 25 Mar 2010 23:39:26 +0100 + +atlas (3.8.3-17) experimental; urgency=low + + * Was it failing because I removed this stupid target ?! + + -- Sylvestre Ledru Wed, 24 Mar 2010 08:44:01 +0100 + +atlas (3.8.3-16) experimental; urgency=low + + * Put back randomCrashOnBuild.diff. It was not the reason + * Disable modification introduced in 3.8.3-14 about DEB_SHLIBDEPS_INCLUDE + and put back LD_LIBRARY_PATH=$(CURDIR)/debian/tmp/usr/lib/atlas-base/ + (Closes: #574999) + + -- Sylvestre Ledru Tue, 23 Mar 2010 15:11:12 +0100 + +atlas (3.8.3-15) experimental; urgency=low + + * randomCrashOnBuild.diff was crashing many builds + + -- Sylvestre Ledru Mon, 22 Mar 2010 16:18:59 +0000 + +atlas (3.8.3-14) experimental; urgency=low + + * Might fix the random compilation bug. Thanks to R. Clint Whaley (upstream) + for the fix (randomCrashOnBuild.diff) + * Fix a useless dep on libatlas3gf-base from all optimized packages + (not necessary) + * Explicit link against -lpthread added + + -- Sylvestre Ledru Sat, 20 Mar 2010 10:16:38 +0100 + +atlas (3.8.3-13) experimental; urgency=low + + * Support of hurd (hurd.diff) + + -- Sylvestre Ledru Wed, 10 Mar 2010 13:16:42 +0100 + +atlas (3.8.3-12) experimental; urgency=low + + * Don't make the assumption that /proc/cpuinfo is available everywhere. + Should fix the build issue on hurd-i386 + + -- Sylvestre Ledru Sun, 07 Mar 2010 12:14:38 +0100 + +atlas (3.8.3-11) experimental; urgency=low + + * Explicit link against lgfortran & libgcc_s + * Old useless / non sense conflicts removed + + -- Sylvestre Ledru Sat, 06 Mar 2010 00:29:33 +0100 + +atlas (3.8.3-10) experimental; urgency=low + + * postinst & prerm added for each packages to manage update-alternatives + See: http://wiki.debian.org/DebianScience/LinearAlgebraLibraries + * Now, custom built version of Atlas has now incrementing version number + Thanks to Adrian Benson for the idea and the implementation + * Check that CPU frequencies are correctly set. Thanks to Adrian Benson. + (Closes: #571322) + * Some old Conflicts: removed + * Vcs-Browser & Vcs-Svn updated (packaged moved to Debian Science) + * Maintainer updated + * Standards-Version updated to version 3.8.4 + + -- Sylvestre Ledru Tue, 02 Mar 2010 19:48:55 +0100 + +atlas (3.8.3-9) experimental; urgency=low + + * Fixes kfreebsd* build error (melf.diff added) + * Standards-Version updated to version 3.8.4 + * -lc added back. The problem was due to -melf_i386 which was failing + under kfreebsd. (10_remove-lc.diff removed) + + -- Sylvestre Ledru Sun, 14 Feb 2010 12:07:56 +0100 + +atlas (3.8.3-8) experimental; urgency=low + + * README.Debian updated with the information relative to ld.so.conf.d/ + * if Make.inc cannot be found after the configure, fail debian/rules + * Port on s390 + * Patch check-exists.diff added to avoid error when rebuilding + * Do not perform the check of CPU extensions under kfreebsd-i386 + (Closes: #565852) + * -lc removed from build process which was failing under kfreebsd-amd64 + (Closes: #566942) + + -- Sylvestre Ledru Wed, 10 Feb 2010 16:39:09 +0100 + +atlas (3.8.3-7) experimental; urgency=low + + * Bad dependencies libatlas3gf-{sse,sse2,sse3,core2sse3} depend on + libatlas3gf-base. (Closes: #551689) + + -- Sylvestre Ledru Thu, 26 Nov 2009 12:02:23 +0100 + +atlas (3.8.3-6) experimental; urgency=low + + * Fix a bad typo in the libatlas3-amd64sse3-dev package. + Thanks to Ryo IGARASHI for spotting it (Closes: #555301) + * libatlas3gf-core2sse3 package declaration was missing in debian/control + Thanks to Ryo IGARASHI for spotting it (Closes: #551689) + * Ondrej has been removed from uploaders (since 3.8.3-1) (Closes: #550412) + + -- Sylvestre Ledru Mon, 09 Nov 2009 11:37:09 +0100 + +atlas (3.8.3-5) experimental; urgency=low + + * Add (= ${binary:Version}) on -dev packages + (Lintian: weak-library-dev-dependency) + + -- Sylvestre Ledru Mon, 26 Oct 2009 06:52:05 +0100 + +atlas (3.8.3-4) experimental; urgency=low + + * Fix some descriptions issues + * libatlas3gf-amd64sse3-dev and libatlas-corei7sse3-dev erroneously depend + on libatlas-core2sse3. Thanks to Adrian Benson to point out this silly + issue (Closes: #551689) + + -- Sylvestre Ledru Sat, 24 Oct 2009 22:44:30 +0200 + +atlas (3.8.3-3) experimental; urgency=low + + * Missing dependency against ghostscript (Closes: #548646) + * cblas.h & catlas.h are now installed into /usr/include/atlas + (Closes: #432860, #481217, #548539) + + -- Sylvestre Ledru Sun, 27 Sep 2009 23:51:49 +0200 + +atlas (3.8.3-2) experimental; urgency=low + + * Improve CPU extension check + + -- Sylvestre Ledru Sat, 26 Sep 2009 02:39:07 +0200 + +atlas (3.8.3-1) experimental; urgency=low + + * New upstream version (Closes: #382880) + * debian/rules rewritten from scratch + * Provides more documentation in the libatlas-doc packages + * debian/copyright updated + * Add myself to the uploader + * Vcs-Browser & Vcs-Svn added + * packages libatlas-3dnow-dev & libatlas3gf-3dnow obsoletes + * packages libatlas-sse3-dev and libatlas3-sse3 added + * libatlas-headers renamed to libatlas-dev + * libatlas-dev is now in section libdevel + * fakeroot debian/rules custom will generated a package called + ../libatlas3gf-base_*.deb which will contain an optimized version of + Atlas just for the current arch. + * README.Debian updated to reflect the different changes + * README.source added to explain where sources of the PDF are + * Standards-Version updated to 3.8.3 + * compat updated to version 7 + * Camm & Ondrej removed as uploaders + * Use of David Cournapeau's patches (many thanks for this great work) + * Change of my email address since I am now DD + + -- Sylvestre Ledru Thu, 17 Sep 2009 23:31:54 +0200 + +atlas (3.6.0-23) unstable; urgency=low + + * Split patches out of the diff.gz and integrated them as dpatch patches. + * Removing debian/used_lapack_version in clean + * Use the changelog from liblapack-dev to find the current lapack version as + we don't build-depend on the lapack3 package. + + [ Sylvestre Ledru ] + * Watch file updated + * Standards-Version changed to 3.8.0 + * Copyright file updated + * Some "set -e" were missing + + -- Bernd Zeimetz Thu, 16 Oct 2008 11:55:46 +0200 + +atlas (3.6.0-22) unstable; urgency=low + + [ Bernd Zeimetz ] + * Maintainer changed to Debian Scientific Computing Team, adding Camm + Maguire and Ondrej Certik as Uploaders. + * Acknowledging the previous NMUs, thanks for taking care of the package! + * DM-Upload-Allowed: yes field added + * Fixing FTBFS error due to inlining the same function several times. Thanks + to Matt Kraai for the patch (Closes: #486974). + + -- Ondrej Certik Mon, 11 Aug 2008 21:41:25 +0200 + +atlas (3.6.0-21.5) unstable; urgency=low + + * Non-maintainer upload to fix cruft I introduced in previous NMU. + * Remove debian/po/OLD and debian/po/NEW + + -- Christian Perrier Sun, 11 May 2008 10:17:38 +0200 + +atlas (3.6.0-21.4) unstable; urgency=low + + * Non-maintainer upload to fix pending l10n issues and FTBFS. + + [ Christian Perrier ] + * debian/*.templates, debian/po/*.po: Fix name of packages in last + sentence of the debconf templates and in the translations + Closes: #372366 + * Add new debconf translations: + - Japanese, thanks TANAKA Atushi + - Spanish, thanks Felipe Caminos + - Finnish, thanks Esko Arajärvi + - Galician. Closes: #472589 + * Update Vietnamese debconf translation, thanks Clytie Siddall + * debian/po/POTFILES.in: Changed atlas3 into libatlas3gf + * [Lintian] Use Homepage: field in debian/control + * [Lintian] Put -dev packages in section libdevel + + [ Matthias Klose ] + * Don't build with -mlongcall on powerpc, fixes build failure. + + -- Christian Perrier Tue, 25 Mar 2008 18:22:19 +0100 + +atlas (3.6.0-21.3) unstable; urgency=low + + * Link using gfortran instead of gcc. + * Build-depend on gfortran. + + -- Matthias Klose Tue, 05 Feb 2008 03:46:01 +0100 + +atlas (3.6.0-21.2) unstable; urgency=low + + * Upload to unstable. + + -- Matthias Klose Sun, 03 Feb 2008 01:03:27 +0000 + +atlas (3.6.0-21.1) experimental; urgency=low + + * Build using gfortran-4.3/gcc-4.3. + * debian/*.files: Add new library sonames. + * debian/fixshlibs*: Use new 'gf' names. + * tune/blas/gemm/CASES/*cases.flg: Remove absolute path for gcc binary. + + -- Matthias Klose Sun, 20 Jan 2008 03:01:00 +0100 + +atlas (3.6.0-21) unstable; urgency=low + + * gfortran transition + + -- Camm Maguire Thu, 08 Nov 2007 11:53:06 -0500 + +atlas3 (3.6.0-20.6) unstable; urgency=high + + * Non-maintainer upload. + * High-urgency upload for RC bugfix. + * Use prefetchnta instead of prefetchw in the SSE2 code, for compatibility + with EM64T systems. Closes: #393870. + + -- Steve Langasek Sun, 18 Feb 2007 03:01:31 -0800 + +atlas3 (3.6.0-20.5) unstable; urgency=low + + * Non-maintainer upload. + * Support GNU/kFreeBSD. Closes: #379161 + * Stop attempting to build on m68k and arm + + -- Christian Perrier Sat, 27 Jan 2007 10:15:04 +0100 + +atlas3 (3.6.0-20.4) unstable; urgency=low + + * Non-maintainer upload to fix long-longstanding l10n issues + * Remove most part of the debconf templates which are way too much + intrusive. Closes: #235732, #388816, #388817, #388818, #388821 + Move them to README.Debian + * Turn the remaining notes into "error" templates + * Launch debconf-updatepo in the clean target. Closes: #335549 + * Debconf translation updates: + - Added Vietnamese. Closes: #313129 + - Added Czech. Closes: #310248 + - Updated Czech. Closes: #335566 + - Updated Dutch. Closes: #388104, #375315, #392214 + - Added Swedish. Closes: #336825 + - Added Georgian (sent during the NMU l10n fix campaign) + - Added Portuguese. Closes: #394649 + - Added German. Closes: #407843 + - Added Romanian + - Added Portuguese. Closes: #408019 + - Added Russian. Closes: #408145 + + -- Christian Perrier Tue, 23 Jan 2007 06:02:00 +0100 + +atlas3 (3.6.0-20.2) unstable; urgency=low + + * NMU. + * Remove debian/control fiddling in favour of using debhelper -s + (instead of debhelper -a) Thanks to Jeroen van Wolffelaar + for the patch. Closes: #350748 + + -- Frederik Schüler Mon, 22 May 2006 12:19:06 +0000 + +atlas3 (3.6.0-20.1) unstable; urgency=low + + * NMU. + * debian/rules: apply patch from Yaroslav Halchenko to add missing + targets. Closes: #351646 + + -- Bill Allombert Sat, 13 May 2006 22:53:16 +0000 + +atlas3 (3.6.0-20) unstable; urgency=high + + * Have gcc 4.0 and greater recognized as a good compiler in config.c + * Remove bx from the clobber list in camm_dpa.h as is explicitly pushed + and restored + * static proclamation syntax change to uumtst.c + * Slightly modify ATL_F77wrap_tr{m,s}v.c to work around gcc 4.0 bug when + using -fomit-frame-pointer + * Now can build with gcc >=4.0, Closes: #315908. + + -- Camm Maguire Wed, 28 Sep 2005 17:35:48 +0000 + +atlas3 (3.6.0-19) unstable; urgency=high + + * Ignore SIGFPE on alpha in uumtst.c. FIXME -- work with upstream to + fix the matrix generator to avoid floating point underflow, which is + apparently the origin of this signal. Closes: #278331. + * Run xdfindCE on smaller problem sizes on arm, as its emulated floating + point is too slow. + * FIXME -- clean build specific patches between builds, keeping base in + place for timing/testing runs + * Add support for arch-specific as opposed to build specific patches in + base/patch_sys. FIXME, unapply build-specific patches between builds. + + -- Camm Maguire Tue, 26 Oct 2004 20:11:07 +0000 + +atlas3 (3.6.0-18) unstable; urgency=high + + * Fix AB_DEBUG variable for m68k in debian/rules, Closes: #277881 + * Rework shlibs and shlibdeps processing to ensure that there are no + self depends in library packages -- Closes: #277589. The solution + taken here is to make the shlibs files in the standard fashion with + dh_makeshlibs, edit the entries to reflect the reference and virtual + alternatives, run dh_shlibdeps -a against atlas3-base for robustness, + rerun on library packages only using the shlibs in each package to + resolve its own dependencies, then finally rewrite the shlibs files to + refer to atlas3-base as the first virtual alternative in all files for + consistency. + * Fix atlas3-altivec.config, Closes: #277600. FIXME -- cpu, cpu model, + and cpu family need systematization. + * Run testers with TRNG:=10 100 10 on alpha to workaround SIGFPE issue + in xduumtst for now. FIXME. Perhaps Jan-Jaap van der Heijden + can help? + + -- Camm Maguire Mon, 25 Oct 2004 11:36:52 +0000 + +atlas3 (3.6.0-17) unstable; urgency=high + + * Fix typo in altivec config + * ev5 -> ev6 + * README.Debian edits for the above + * Replace alpha base build record with an ev5 timed goto build, which + also runs correctly on ev4. Thanks to Jan-Jaap van der Heijden + + * Amend copyright file to note that on alpha, the GOTO kernels in the + distributed binary builds, as well as in any possible user build, make + the ATLAS license LGPL. + * cpu model -> cpu family in atlas3-2.0.config. Closes: #275333. + * Link shared libs to remove undefined symbols + * remove duplicate alternatives in shlibs files via mymakeshlibs + * Build-depend on lapack (>= 3.0.20000531a-5) to get {s,d}gesdd fixes + * Add debug=$(AB_DEBUG) to static run of debian/ab as well as shared. + * Backoff m68k build to O2. + * 5 Mflops for m68k and arm testers to speed up autobuilds + * dh_installmanpages -> dh_installman + * retime atlas3-base on a PII in attempt to uncover an apparent error in + ade4 use, but in vain. + * Pass testers over prime matrix dimensions + + -- Camm Maguire Tue, 19 Oct 2004 14:39:14 +0000 + +atlas3 (3.6.0-16) unstable; urgency=low + + * Add missing control-hppa for new subarch build + * Fix custom package build rules, Closes: #267715 + * Bug fix: "atlas3-ev5-dev depends on atlas2-headers", thanks to + Jan-Jaap van der Heijden (Closes: #269387). atlas2-headers -> + atlas3-headers in control files + + -- Camm Maguire Wed, 1 Sep 2004 17:32:11 +0000 + +atlas3 (3.6.0-15) unstable; urgency=low + + * Add m68k build record + * Add pa risc 2.0 build record as hppa subarch + * Updated README.Debian on certain isa extension selections for custom + builds on hppa, sparc, and alpha + * template edits for ev5, 2.0, v9, and altivec + + -- Camm Maguire Thu, 8 Jul 2004 20:53:03 +0000 + +atlas3 (3.6.0-14) unstable; urgency=low + + * Bug fix: "octave2.1 fails to start on PowerPC", thanks to Jan Medlock + (Closes: #253540). Add LONGCALLS variable to debian/rules, supplement + -fPIC with -mlong-calls on arm, hppa, mips and mipsel, and with + -mlongcall on powerpc. + * Bug fix: "better description for atlas3-3dnow", thanks to Roberto + Gliese (Closes: #254429). Fix typo in all descriptions + * Suggest higher atlas3 isa extension pacakges with substvar + libs:Suggests. + + -- Camm Maguire Wed, 30 Jun 2004 23:28:19 +0000 + +atlas3 (3.6.0-13) unstable; urgency=low + + * g77 -> /usr/bin/g77 in ia64 build record + + -- Camm Maguire Sun, 6 Jun 2004 17:02:31 +0000 + +atlas3 (3.6.0-12) unstable; urgency=low + + * export all environment vars in env files -- should get an arm record + now + * Add ia64 build record + * Default BFLOPS and CACHE variables 20 and 512 for m68k and arm to + speed up build. + * Bug fix: "atlas3: FTBFS on amd64", thanks to Frederik Schueler + (Closes: #252737). Fixed g77 path in amd64 build record + + -- Camm Maguire Sun, 6 Jun 2004 03:21:13 +0000 + +atlas3 (3.6.0-11) unstable; urgency=low + + * Add CONFIG_DEFS environment facility to config.c, and set to -DWALL + for arm base build in attempts to work around broken cpu rusage timer + there. + * switch back ppc base and altivec build records after successful + autobuilder test run + + -- Camm Maguire Sat, 5 Jun 2004 03:42:51 +0000 + +atlas3 (3.6.0-10) unstable; urgency=low + + * Remove hardocded arch directory from new ppc altivec build, currently + running as base. + * Add alpha base build record as machine ev4 + * Fix CARCH sed replacement in debian/rules: $(MY_ISA) -> $* + * Need to redo ia64 build record to get correct fortran to C + conventions. + + -- Camm Maguire Fri, 4 Jun 2004 21:18:04 +0000 + +atlas3 (3.6.0-9) unstable; urgency=low + + * Remove erroneous local paths from ia64 build record + * Install powerpc altivec build record, switch base and altivec builds + temporarily to have the autobuilder run the tests against the build + * Fix alpha -> powerpc error in control-powerpc + * Install control scripts for altivec ppc build + * Add v9 sparc build record and control scripts + * Add amd64 (pure64) build record, sse2 isaext in base build, mach set + to 'Hammer' + * default x86_64 machine detection in config.c to amd hammer 64. + * modify config.c to detect UltraSparc mach settings as a v9 isa + extension + + -- Camm Maguire Thu, 3 Jun 2004 23:07:12 +0000 + +atlas3 (3.6.0-8) unstable; urgency=low + + * updated watch file + * installed ia64 build record (base) using machine 'Itanium' + * applied sparc patch to tune/blas/gemm/CASES/ATL_dmm4x4x8_US.c as per + errata file + * added s390 base build record with empty machine type + + -- Camm Maguire Tue, 1 Jun 2004 21:56:37 +0000 + +atlas3 (3.6.0-7) unstable; urgency=low + + * Add sparc build record + * Add powerpc base build record + * Remove malformed ia64 build record to time again + * Add hook for altivec ppc package to time build record on next + autobuild + + -- Camm Maguire Mon, 31 May 2004 15:50:14 +0000 + +atlas3 (3.6.0-6) unstable; urgency=low + + * Add clapack.h to atlas3-headers + * changelog -> UTF8 + * Reinstall broken build recors on hppa mips mipsel alpha and ia64 + * ChangeLog -> changelog for lintian + + -- Camm Maguire Sat, 29 May 2004 15:53:11 +0000 + +atlas3 (3.6.0-5) unstable; urgency=low + + * Add ia64 build record, use itanium 2 for base build environment + * Fix two ia64 bugs in config.c, l 1854 && L 2155 + * Add line in debian/config.expect to proceed with selected flags when + they don't match arch defaults. + * Add powerpc base environment to sidestep altivec, use G4 + * Add alpha ev5 build record, this is the goto build which should be + changed to ev6 at some point due to an outstanding bug + * make ev4 alpha environment for base build + * add hppa base build record, blank MACH string for architecture UNKNOWN + * change default sparc detection to UNKNOWN in config.c, l 3255 + * Add mipsel build record with blank MACH base environment setting + * Add mips build record with blank MACH base environment setting + * max m68k l2 cache at 512K in attempt to get the autobuild to not + timeout. + * Bug fix: "atlas3-sse2-dev: /usr/lib/libblas-3.a does not exist", + thanks to Erik Schnetter (Closes: #249523). Add .a slave alternative + links. + * Bug fix: "atlas3-sse2 package can't be set up due to awk error", + thanks to Mierle Keir (Closes: #234232). Fix awk error in + atlas3-sse2.postinst. + * Bug fix: "atlas3: FTBFS amd64: Pure64 is using 64bit ABI", thanks to + Goswin Brederlow (Closes: #249585). Default BIT to 2 on amd64, rm -f + out CONFIG/fname.o CONFIG/cname.o in clean target. + * Bug fix: "atlas3: [INTL:fr] French debconf templates translation", + thanks to Christian Perrier (Closes: #231935). Add fr.po + * Bug fix: "[INTL:nl] new Dutch po-debconf translation", thanks to Luk + Claes (Closes: #241314). Add nl.po + + -- Camm Maguire Fri, 28 May 2004 21:18:34 +0000 + +atlas3 (3.6.0-4) unstable; urgency=low + + * Fix error in debian/rules regarding installation of atlas_type.h + + -- Camm Maguire Fri, 6 Feb 2004 23:21:25 +0000 + +atlas3 (3.6.0-3) unstable; urgency=low + + * Port recent bug fixes from atlas2, listed below. + * Fixed development alternatives to go with the new library locations. + * Bug fix: "atlas3-base-dev: Depends on g77 is missing", thanks to + Torsten Werner ( #226376). Added to all -dev packages. + * Bug fix: "atlas3-headers: Does have all needed header files for + compiling other programs using atlas", thanks to Tomas Ukkonen + ( #227453). Added include/atlas_aux.h and + include/Linux_base_static/atlas_type.h to atlas3-headers pkg. + * Bug fix: "The package description does not follow Debian policy", + thanks to Javier Fernández-Sanguino Peña ( #209452). Reworded + descriptions. + * Bug fix: "atlas3-base: package description is suboptimal", thanks to + Jochen Voss ( #227752). Reworded descriptions. Binary + packages suggest blas and lapack to assist in debugging, as any + program linking against one of these libraries can be cross checked + against the reference versions at runtime without recompilation via + the use of the LD_LIBRARY_PATH environment variable. -dev packages + suggest both blas-doc and lapack-doc. -test package recommends blas + and lapack. + * Bug fix: "atlas: Please switch to gettext-based debconf templates", + thanks to Christian Perrier ( #205812). Ran automated + procedure on templates. + * Bug fix: "atlas: French translation of gettext debconf templates", + thanks to Christian Perrier ( #206596). Installed po/fr.po. + * Fixed expect build depends for newer expect package + * Moved library locations to better take advantage of new hwcap behavior + in ldconfig. Atlas supplied blas and lapack libraries are now in + /usr/lib/atlas/{,sse,sse2,3dnow,etc}/. Edited templates accordingly. + + -- Camm Maguire Fri, 16 Jan 2004 17:46:09 +0000 + +atlas3 (3.6.0-2) unstable; urgency=low + + * Fix reference blas/lapack copy error in debian/rules, testers were not + being correctly run against reference libraries + + -- Camm Maguire Wed, 14 Jan 2004 17:19:49 +0000 + +atlas3 (3.6.0-1) unstable; urgency=low + + * New upstream release + + -- Camm Maguire Thu, 8 Jan 2004 04:05:49 +0000 + +atlas3 (3.5.19-1) unstable; urgency=low + + * New upstream release + + -- Camm Maguire Thu, 18 Dec 2003 21:00:04 +0000 + +atlas (3.2.1ln-11) unstable; urgency=low + + * Remove atlas and blas dependencies from atlas packages, Closes: + #196294, Closes: #196471, Closes: #196568. + * Fix broken shlibs to now list atlas2-base | atlas2 for native atlas + libs + + -- Camm Maguire Fri, 20 Jun 2003 15:06:19 +0000 + +atlas (3.2.1ln-10) unstable; urgency=low + + * Remove build-depends on g77-3.0 [alpha], Closes: #196257 + + -- Camm Maguire Thu, 5 Jun 2003 18:54:27 +0000 + +atlas (3.2.1ln-9) unstable; urgency=low + + * Link libblas.so with lg2c, liblapack.so with lblas lg2c, Closes: + #193874 + + -- Camm Maguire Thu, 5 Jun 2003 13:38:23 +0000 + +atlas (3.2.1ln-8) unstable; urgency=low + + * Fixed ATL_walltime.c for gcc-3.3, Closes: #194081 + * gcc-3.3 changes to SSE header files + * debian/compat set to 4, versioned debhelper build-depends + * Newer standards + * Lintian cleanup, Author(s) => Authors + * Do postrm ld.so.conf edit and ldconfig only if argument is 'remove' + * Make use of '${misc:Depends}' + * Load debconf module in appropriate postinst scripts (for lintian) + * Remove INSTALL.txt from atlas-doc + * Let debhelper handle ldconfig calls + * Remove dh_undocumented from rules + * Create /etc/ld.so.conf.d/atlas.conf if not there, Closes: #150309 + * Append newline to /etc/ld.so.conf.d/atlas.conf if doesn't end with one, Closes: + #192030 + * dev packages suggest blas-doc, Closes: #168466 + * Make postrm scripts handle empty ld.so.conf + + -- Camm Maguire Thu, 5 Jun 2003 02:43:38 +0000 + +atlas (3.2.1ln-7) unstable; urgency=high + + * Forgot to read DEFAULTS variable in config.expect + * Need g77-3.0 on alpha to link with lapack, workaround for -mieee bug + in g77-2.95 on alpha + + -- Camm Maguire Sat, 13 Apr 2002 10:07:52 -0400 + +atlas (3.2.1ln-6) unstable; urgency=high + + * Installed build record for s390 + * libblas2.so and liblapack2.so alternative support, Closes: #139073 + * Accept cpu flag xmm2 as well for SSE2 capability + * Added DEFAULTS variable in debian/rules to allow custom building + with no upstream atlas defaults; edited README.Debian + * Clarifications to README.Debian, Closes: #141745 + + -- Camm Maguire Wed, 10 Apr 2002 22:27:49 -0400 + +atlas (3.2.1ln-5) unstable; urgency=low + + * Renamed .new directory holding temporary build record to avoid + conflict with main rules iteration over subarchitectures + * Installed mips/mipsel build records + * Architecture string reset to any, as any existing failure bugs + should be reassigned to the compiler + * Minor bugfixes to included blas testers, should be no longer used + + -- Camm Maguire Sat, 23 Mar 2002 12:42:50 -0500 + +atlas (3.2.1ln-4) unstable; urgency=low + + * Removed Provides atlas-dev from atlas2-headers + * Added mips support + * echo build record to stdout when doing a timed build, can get build + records this way from the autobuilder output + * Small arch specific patch to enable build on s390 + + -- Camm Maguire Tue, 19 Mar 2002 21:11:43 -0500 + +atlas (3.2.1ln-3) unstable; urgency=low + + * Changed lapackF tester rules to prevent lapack tests from running + twice + * chmod +x debian/mm fixing man page generation failure on ppc + * Patch to fix strmm errors with 3dnow/sse + + -- Camm Maguire Mon, 11 Mar 2002 10:10:12 -0500 + +atlas (3.2.1ln-2) unstable; urgency=low + + * cblas functions into atlas provided libblas + * Powerpc base build record added + * Versioned Conflicts/Replaces on atlas2-dev for atlas2-headers, + Closes: #135188 + * Changed debian/ab to accept versioned compiler names, possibly in + home directory tree. + * Removed blas-testers from package + * Build-Depends on blas-test + * Manpages for atlas-test, build-depend on help2man + * Removed blas dat examples from package, now in blas-test + * Fail catching rules for testers + * Less flops for testers on slower machines, currently m68k + * Build record rules added + + -- Camm Maguire Sat, 23 Feb 2002 17:14:57 -0500 + +atlas (3.2.1ln-1) unstable; urgency=low + + * Unbundled lapack source, now use lapack.a and lapack_pic.a from new + lapack packages + * hppa base build record, based on parisc 2.0 build + * ORed construction in shlibs and shlibs.local + * Removed cblas.h from headers package: now in blas-dev + * Architecture string added to debian/control source section. HPPA -- + compiler can't handle single precision real/complex routines, + Closes: #133665 + * MIPSEL -- compiler can't handle large branches + * New shlibs(.local), Closes: #134177 + * Elaborated short package descriptions, Closes: #134303 + * Elaborated short package descriptions, Closes: #134305 + * Clarified header package description, Closes: #134304 + * ARM -- timer can't determine parameters within precision + * Reworked debconf priorities, Closes: #133147 + * References to blas1 -> blas in all files + * Removing cblas.h Closes: #134488 + + -- Camm Maguire Sun, 17 Feb 2002 22:16:43 -0500 + +atlas (3.2.1l-5) unstable; urgency=low + + * Build record installed for ia64 + * Patch target facility in debian/rules for selectively applying + patches to source for different archs + * IA64 patch installed to work around current compiler bugs + * Added support for {atlas2,lapack2,blas2}-dev virtual packages + + -- Camm Maguire Fri, 1 Feb 2002 19:43:51 -0500 + +atlas (3.2.1l-4) unstable; urgency=low + + * Fixed typo PIII -> PIV in sse2 descriptions and templates, Closes: + #126040 + * Added arch dirs for remaining woody archs, s390, mips, mipsel and + arm + * Commented out blank environment variable settings in env files + + -- Camm Maguire Sat, 29 Dec 2001 00:16:36 -0500 + +atlas (3.2.1l-3) unstable; urgency=low + + * Fixed typo in Build-Depends + * Fixed spelling errors, Closes: #124427, Closes: #124428, Closes: + #124429 + + -- Camm Maguire Wed, 19 Dec 2001 01:11:06 -0500 + +atlas (3.2.1l-2) unstable; urgency=low + + * Added conflicts/replaces to control-i386 so new package named + upgrade old ones. + + -- Camm Maguire Sat, 1 Dec 2001 12:18:32 -0500 + +atlas (3.2.1l-1) unstable; urgency=low + + * Included lapack source in source package to avoid 'apt-get source', + Closes: #112136 + * Removed Build-Depend on apt + * Build-Depend on blas1-dev + * Replace 'apt-get source blas' with 'cp /usr/lib/libblas* blas-1.0/' + * Replaced SRC/s{ht}o dirs in lapack subbuild with newly provided + debian/{shared,static} of the Debian lapack package build + * Replaced -O3 -> -O alpha workaround in main Makefile with an awk + gsub just where its needed in the tester binary compiles + * Added provisional build log for m68k + * slasrt -> dlasrt in dlalsd.f in lapack source, Closes: #111377 + * Added used_lapack_version to docs for library builds, Closes: + #111380 + * Lintian cleans: remove dh_testversion, standards version 3.5.6.0 + * Corrected 3dnow.txt path in atlas2-athlon.templates, Closes: #114286 + * Added m68k build record + * Add missing F77= (needed for m68k) to lapack-3.0/debian/rules + * Build-Depend on fort77 [m68k] + * Changed package names on i386: athlon ->3dnow, p3 ->sse, p4 ->sse2 + * Changed i386 library directories to follow 2.4.x names, + /usr/lib/{3dnow,sse,sse2} + * Had custom target build appropriate isa extension package for build- + time cpu, thereby keeping isa extension instructions out of /usr/lib + * Added cache probe of /proc/cpuinfo to speed custom builds where + /proc/cpuinfo reports cache + * Changed fpu label to base for generic builds + * Updated README.Debian for new custom build packaging + * Updated lapack routines from errata page to fix Cholesky and LU + solve errors + * Applied trsm complex performance enhancement from errata page + * Fixed Athlon defaults from errata page + * Applied Nan number fix from errata page + * Fixed ntra->nout bug in c_sblat3.f, line 1342 + * Made atlas build-depend on gcc-2.95 on i386, and conflict with 3.0 + there, for performance and config script output reasons. + + -- Camm Maguire Thu, 29 Nov 2001 16:02:44 -0500 + +atlas (3.2.1-12) unstable; urgency=low + + * Quoted alpha F90 build options, Closes: #109767 + * Added alpha build records for base and ev5. + + -- Camm Maguire Sun, 26 Aug 2001 21:39:57 -0400 + +atlas (3.2.1-11) unstable; urgency=low + + * Architecture for atlas2-base-dev set to any + * Architecture for atlas2-headers set to all + * Prepended to LD_LIBRARY_PATH for tests, instead of overwriting + + -- Camm Maguire Thu, 26 Jul 2001 15:48:27 -0400 + +atlas (3.2.1-10) unstable; urgency=low + + * Minor changes to debian/rules to build lapack testers correctly, and + to thereby correctly demonstrate acceleration with atlas lapack + routines + * Added chmod +x debian/mymakeshlibs, Closes: #106428 + * Modifications to README.Debian to reflect automatic /etc/ld.so.conf.d/atlas.conf + treatment. + * Added base sparc build record + + -- Camm Maguire Tue, 24 Jul 2001 22:50:38 -0400 + +atlas (3.2.1-9) unstable; urgency=low + + * Assemble debian/control as part of build, including only packages + relevant to arch, Closes: #105887 + * Made shlibs files list virtual package dependencies, obviating the + need for shlibs.local for packages build-depending on atlas and + wishing to make use of the atlas2, blas2, and lapack2 virtual + packages + + -- Camm Maguire Thu, 19 Jul 2001 17:12:52 -0400 + +atlas (3.2.1-8) unstable; urgency=low + + * Changed sections/priorities in control to match override + * Elimininated dependency of atlas-test on libpthread + * Removed erroneous set default istrue in atlas2-base.config + * Added build dir for hppa, Closes: #104684 + * Removed -fPIC from tester binary object builds + + -- Camm Maguire Sun, 15 Jul 2001 20:53:52 -0400 + +atlas (3.2.1-7) unstable; urgency=low + + * Removed blas Makefile patch to account for changes in blas -7 + + -- Camm Maguire Tue, 10 Jul 2001 23:34:22 -0400 + +atlas (3.2.1-6) unstable; urgency=low + + * Used -l switch on dh_shlibdeps to catch libfakeroot location, + Closes: #103851 + + -- Camm Maguire Sun, 8 Jul 2001 23:41:00 -0400 + +atlas (3.2.1-5) unstable; urgency=low + + * Replaced erroneously deleted Build-depends, Closes: #102370 + + -- Camm Maguire Fri, 6 Jul 2001 12:21:06 -0400 + +atlas (3.2.1-4) unstable; urgency=low + + * Made changes in debian/ab so that script works with mawk and gawk + * Added SSE2 binary for Pentium 4 and higher machines + * Replaced build records with gzipped uuencoded versions to save + space, Build-Depends added on sharutils + * Had sse libs check for kernel 2.2.x and kernel 2.4.x /proc/cpuinfo + flags + + -- Camm Maguire Wed, 4 Jul 2001 19:38:22 -0400 + +atlas (3.2.1-3) unstable; urgency=low + + * Debconf templates + * Updated control entries to smoothly upgrade from 3.0 + * Renamed new atlas2-dev package to atlas2-headers, to facilitate + upgrade from old atlas2-dev with different components + * Automatic configuration of ldso to 1) use best installed atlas + binary on running system, and 2) use atlas-provided blas and lapack + libs in preference to reference versions + * Added m68k directory to enable default build on this arch. Closes: + #102766 + + -- Camm Maguire Mon, 2 Jul 2001 18:18:37 -0400 + +atlas (3.2.1-2) unstable; urgency=low + + * Added rule to config.expect to kill old subdirs + * New xmm build record without threads + * New fpu build record without threads + * Moved debian/ppc to debian/powerpc, enabling build on this platform. + Closes: #88220 + * Moved 3dnowext to 3dnow, as code can run on both k6 and athlon + * Updated Build-Depends, Closes: #102370 + + -- Camm Maguire Tue, 26 Jun 2001 23:04:13 -0400 + +atlas (3.2.1-1) unstable; urgency=low + + * New upstream release + + -- Camm Maguire Fri, 30 Mar 2001 17:10:06 -0500 + +atlas (3.2.0-1) unstable; urgency=low + + * New upstream release + + -- Camm Maguire Thu, 21 Dec 2000 14:08:24 -0500 + +atlas (3.0-7) frozen unstable; urgency=low + + * Added cblas objects to /usr/lib/atlas/liblapack, closing #61286 + + -- Camm Maguire Sat, 1 Apr 2000 19:11:43 +0200 + +atlas (3.0-6) frozen; urgency=low + + * Development header files were missing -- fixed. + * Added note about performance variance with LDA to README.Debian + * Passed -ff90 in F90OPTS to lapack, like in 3.0-5 package + + -- Camm Maguire Tue, 29 Feb 2000 20:44:58 +0100 + +atlas (3.0-5) frozen; urgency=low + + * Added -F 200 to ?l2blastst runs to get valid time comparisons for + quick tests + + -- Camm Maguire Tue, 29 Feb 2000 19:40:28 +0100 + +atlas (3.0-4) frozen; urgency=low + + * Added 'make clean' to lapack target to ensure that static lapack lib + is build correctly + * Added development links in blas-1.0 subdirectory so that testing + binaries get dynamically linked against blas + * Fixed error in shlibs.local + * Added suggests lapack-doc for atlas2-dev + * Added -F 200 to l2blastst results to get valid time comparisons for + quick tests + + -- Camm Maguire Wed, 19 Jan 2000 16:25:35 +0100 + +atlas (3.0-3) frozen; urgency=low + + * Removed brackets from expect script, works with more expect versions + now + * Added build dependency on apt + * Added workarounds to allow building on alpha (g77/complex abs1 + issue, mmsearch compilation bug with -O3, timer problem -> -DWALL) + * Patched config.c to auto detect alpha 21264 + * Removed Linux_debug build directories + * Fixed expect script error + * Added /proc/cpuinfo to test results file + + -- Camm Maguire Thu, 13 Jan 2000 18:35:53 +0100 + +atlas (3.0-2) frozen; urgency=low + + * Releasing build with gcc 2.95.2, prior build had segfaults apparently + due to compiler error (egcs 2.91.66) + * Added build integrity test step to debian/rules + + -- Camm Maguire Fri, 7 Jan 2000 22:48:35 -0500 + +atlas (3.0-1) frozen; urgency=low + + * Applied fixes as listed on www.cs.utk.edu/~rwhaley/ATLAS/errata.html + * New upstream release, supplying full BLAS support + + -- Camm Maguire Thu, 23 Dec 1999 12:04:54 -0500 + +atlas (2.0-8) unstable; urgency=low + + * Added some build dependencies + * Latest g77 won't compile icamax.f from reference BLAS on alpha; + used f2c here instead + * Altered config.c to find libblas.a in BLAS dir of source + * Changed the build process to use ATLAS' native config program + under expect + + -- Camm Maguire Thu, 23 Dec 1999 12:04:54 -0500 + +atlas (2.0-7) unstable; urgency=low + + * Changed toplevel Makefiles to allow proper compilation on generic + platforms. As found on netlib, atlas has an interactive build + process. A custom 'config' program is compiled and run, which prompts + the user for certain information, and writes the toplevel Makefiles. + This procedure doesn't fit well with automated building under Debian, + so a (pair of) generic Makefiles has been provided for compilation on + Debian systems. Some fields were inadvertantly left in these files + which pertain to the specific hardware of this maintainer, making + building on some machines impossible. This update should allow for + proper building on all Debian systems. Furthermore, these Makefiles + have been verified to produce libraries with essentially the same + performance on the matintainer's hardware. In the future, perhaps the + proper way to do this is to run the atlas config program under some + special shell, like 'expect'. This would in addition require + automated editing of these files by debian/rules. + + -- Camm Maguire Fri, 17 Dec 1999 14:53:06 -0500 + +atlas (2.0-6) unstable; urgency=low + + * Fixed typo in rules: rm -r -> rm -f + + -- Camm Maguire Wed, 8 Dec 1999 08:52:01 -0500 + +atlas (2.0-5) unstable; urgency=low + + * Removed 'make clean' from clean target of rules, as atlas doesn't use this + * Removed ConfDump.log in clean target, closing #52083 + + -- Camm Maguire Mon, 6 Dec 1999 23:11:29 -0500 + +atlas (2.0-4) unstable; urgency=low + + * Added LD_LIBRARY_PATH to dh_shlibdeps to get dependencies right on + machines where atlas and blas are not installed :-) + + -- Camm Maguire Tue, 30 Nov 1999 17:53:47 -0500 + +atlas (2.0-3) unstable; urgency=low + + * Added atlas-test package to provide benchmarking with installed blas + * Bumped soname to 2 to match blas package + * Added runtime blas library switching notes in README.Debian + * Removed 'atlas' package and the 'atlasconfig' script: To tune + atlas for the end user's hardware, the procedure now is to + rebuild the atlas1{-dev} package(s) from the Debian source + * Moved optimized blas library to /usr/lib/atlas (closes #51300) + + -- Camm Maguire Mon, 29 Nov 1999 13:33:05 -0500 + +atlas (2.0-2) unstable; urgency=low + + * Fixed debian/rules to build correclt after clean unpack (closes #50508) + + -- Camm Maguire Thu, 18 Nov 1999 14:09:13 -0500 + +atlas (2.0-1) unstable; urgency=low + + * Initial Release. + + -- Camm Maguire Tue, 14 Sep 1999 09:28:44 -0400 + + diff --git a/control b/control new file mode 100644 index 0000000..bb6a9c2 --- /dev/null +++ b/control @@ -0,0 +1,104 @@ +Source: atlas +Maintainer: Debian Science Team +Uploaders: Sébastien Villemot +Section: devel +Priority: optional +Build-Depends: debhelper-compat (= 12), + dh-exec, + gfortran, + liblapack-pic (>= 3.7.1-2~), + texlive-latex-base, + ghostscript +Standards-Version: 4.3.0 +Vcs-Browser: https://salsa.debian.org/science-team/atlas +Vcs-Git: https://salsa.debian.org/science-team/atlas.git +Homepage: http://math-atlas.sourceforge.net/ +Rules-Requires-Root: no + +Package: libatlas3-base +Architecture: any +Multi-Arch: same +Section: libs +Depends: ${shlibs:Depends}, + ${misc:Depends} +Breaks: libblas3 (<< 3.7.1-2~), + liblapack3 (<< 3.7.1-2~), + libopenblas-base (<< 0.2.20+ds-3~), + libatlas-base-dev (<< 3.10.3-4~) +Conflicts: libcblas3 +Provides: libblas.so.3, + liblapack.so.3 +Replaces: libcblas3 +Description: Automatically Tuned Linear Algebra Software, generic shared + ATLAS is an approach for the automatic generation and optimization of + numerical software. Currently ATLAS supplies optimized versions for the + complete set of linear algebra kernels known as the Basic Linear Algebra + Subroutines (BLAS), and a subset of the linear algebra routines in the + LAPACK library. + . + The libraries in this package are built without any processor extension + instructions, and should run on all processors of this general + architecture, albeit less than optimally. + . + If you want to create an ATLAS packaged optimized for your processor, see the + section: "Building Optimized Atlas Packages on your ARCH" in README.Debian + +Package: libatlas-base-dev +Architecture: any +Multi-Arch: same +Section: libdevel +Depends: libatlas3-base (= ${binary:Version}), + ${misc:Depends}, + ${shlibs:Depends} +Suggests: libatlas-doc, + liblapack-doc +Breaks: libblas-dev (<< 3.7.1-2~), + liblapack-dev (<< 3.7.1-2~), + libopenblas-dev (<< 0.2.20+ds-3~), + libatlas-dev (<< 3.10.3-2) +Conflicts: libcblas-dev +Provides: libblas.so, + liblapack.so +Replaces: libatlas-dev (<< 3.10.3-2), + libcblas-dev +Description: Automatically Tuned Linear Algebra Software, generic static + ATLAS is an approach for the automatic generation and optimization of + numerical software. Currently ATLAS supplies optimized versions for the + complete set of linear algebra kernels known as the Basic Linear Algebra + Subroutines (BLAS), and a subset of the linear algebra routines in the + LAPACK library. + . + This package includes the headers, the static libraries and symbolic links + needed for program development. + +Package: libatlas-test +Architecture: any +Multi-Arch: same +Depends: ${shlibs:Depends}, + ${misc:Depends} +Description: Automatically Tuned Linear Algebra Software, test programs + ATLAS is an approach for the automatic generation and optimization of + numerical software. Currently ATLAS supplies optimized versions for the + complete set of linear algebra kernels known as the Basic Linear Algebra + Subroutines (BLAS), and a subset of the linear algebra routines in the + LAPACK library. + . + This package provides dynamically linked testing and bench-marking + binaries to compare the BLAS and ATLAS libraries on your system. + +Package: libatlas-doc +Architecture: all +Multi-Arch: foreign +Section: doc +Depends: ${misc:Depends} +Breaks: libatlas-base-dev (<< 3.10.3-6~) +Replaces: libatlas-base-dev (<< 3.10.3-6~) +Description: Automatically Tuned Linear Algebra Software, documentation + ATLAS is an approach for the automatic generation and optimization of + numerical software. Currently ATLAS supplies optimized versions for the + complete set of linear algebra kernels known as the Basic Linear Algebra + Subroutines (BLAS), and a subset of the linear algebra routines in the + LAPACK library. + . + This package provides documentation on the ATLAS libraries useful for + developers. diff --git a/copyright b/copyright new file mode 100644 index 0000000..2328517 --- /dev/null +++ b/copyright @@ -0,0 +1,129 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: ATLAS +Upstream-Contact: R. Clint Whaley +Source: http://math-atlas.sourceforge.net/ + +Files: * +Copyright: 1997-2016 R. Clint Whaley + 1999-2000, 2004 Antoine P. Petitet + 2000-2001 Peter Soendergaard + 2009, 2012 Siju Samuel + 2001 Julian Ruhe + 2010 IBM Corporation + 1998 Jeff Horner + 2011 Md. Rakib Hasan + 2010-2011 Vesperix Corporation + 2009 Chad Zalkin + 2011 Md. Majedul Haque Sujon + 1999 The Australian National University +License: BSD-3-clause-ATLAS + 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 distri- + bution. + 3. The name of the University, the ATLAS group, or the names of its + contributors may not be used to endorse or promote products deri- + ved from this software without specific 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 UNIVERSITY + OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPE- + CIAL, 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 THEO- + RY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (IN- + CLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Files: interfaces/blas/F77/src/lsame.f + src/blas/f77reference/* +Copyright: 1992-2017 The University of Tennessee and The University of Tennessee Research Foundation + 2000-2017 The University of California Berkeley + 2006-2017 The University of Colorado Denverf +License: BSD-3-clause + +Files: bin/extract.c +Copyright: 1994, 2015, R. Clint Whaley (rwhaley@cs.utk.edu) +License: GPL-2-modified + This program is distributed under the terms of the Gnu + General Public License (GPL), with the following two exceptions: + (1) Clause (9), dealing with updating the GPL automatically, is + specifically disallowed by the author. The author will + determine if a newer GPL version is still appropriate. + (2) The basefiles extract accepts as input, and the extracted + files it produces as output, are specifically designated + as outside the scope if this license (i.e. they are *not* + required by this license to be GPL). + The full, unaltered, text of the GPL is included at the end of + the program source listing. + . + On Debian systems, the complete text of the GNU General Public + License, version 2, can be found in the file + `/usr/share/common-licenses/GPL-2'. + +Files: tune/blas/gemm/CASES/ATL_smm_3dnow_90.c +Copyright: none +License: public-domain + The authors and University of Kentucky make this software freely + available as a PUBLIC DOMAIN release. None of the authors nor + University of Kentucky can be held responsible for any problems + deriving from use of this software. + . + The primary author is: + . + Tim Mattox + Department of Electrical and Computer Engineering + University of Kentucky + Lexington, KY 40506-0046 + email: tmattox@engr.uky.edu + URL: http://aggregate.org/ + +Files: debian/* +Copyright: 1999-2007 Camm Maguire + 2008-2013 Sylvestre Ledru + 2013-2017 Sébastien Villemot +License: BSD-3-clause + +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: + . + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + . + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer listed + in this license in the documentation and/or other materials + provided with the distribution. + . + - Neither the name of the copyright holders nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + . + The copyright holders provide no reassurances that the source code + provided does not infringe any patent, copyright, or any other + intellectual property rights of third parties. The copyright holders + disclaim any liability to any recipient for claims brought against + recipient by any third party for infringement of that parties + intellectual property rights. + . + 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. diff --git a/lapack-atlas.pc.in b/lapack-atlas.pc.in new file mode 100644 index 0000000..63220bb --- /dev/null +++ b/lapack-atlas.pc.in @@ -0,0 +1,11 @@ +prefix=/usr +libdir=${prefix}/lib/@DEB_HOST_MULTIARCH@/atlas +includedir=${prefix}/include/@DEB_HOST_MULTIARCH@ +Name: atlas-lapack +Description: Automatically Tuned Linear Algebra Software, LAPACK +Version: @DEB_VERSION_UPSTREAM@ +URL: http://math-atlas.sourceforge.net/ +Libs: -L${libdir} -llapack +Libs.private: -L${libdir} -latlas -lm +Requires.private: blas +Cflags: -I${includedir} diff --git a/libatlas-base-dev.install b/libatlas-base-dev.install new file mode 100755 index 0000000..f3d24fa --- /dev/null +++ b/libatlas-base-dev.install @@ -0,0 +1,14 @@ +#!/usr/bin/dh-exec + +usr/include/ +usr/lib/*/*.a +debian/blas-atlas.pc /usr/lib/${DEB_HOST_MULTIARCH}/pkgconfig/ +debian/lapack-atlas.pc /usr/lib/${DEB_HOST_MULTIARCH}/pkgconfig/ +libblas.a /usr/lib/${DEB_HOST_MULTIARCH}/atlas/ +libblas.so /usr/lib/${DEB_HOST_MULTIARCH}/atlas/ +liblapack.a /usr/lib/${DEB_HOST_MULTIARCH}/atlas/ +liblapack.so /usr/lib/${DEB_HOST_MULTIARCH}/atlas/ +libatlas.so /usr/lib/${DEB_HOST_MULTIARCH}/ +lib*cblas.so /usr/lib/${DEB_HOST_MULTIARCH}/ +lib*f77blas.so /usr/lib/${DEB_HOST_MULTIARCH}/ +liblapack_atlas.so /usr/lib/${DEB_HOST_MULTIARCH}/ diff --git a/libatlas-base-dev.postinst.in b/libatlas-base-dev.postinst.in new file mode 100644 index 0000000..c57267b --- /dev/null +++ b/libatlas-base-dev.postinst.in @@ -0,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@/atlas/libblas.so 35 \ + --slave /usr/lib/@DEB_HOST_MULTIARCH@/libblas.a libblas.a-@DEB_HOST_MULTIARCH@ \ + /usr/lib/@DEB_HOST_MULTIARCH@/atlas/libblas.a \ + --slave /usr/include/@DEB_HOST_MULTIARCH@/cblas.h cblas.h-@DEB_HOST_MULTIARCH@ \ + /usr/include/@DEB_HOST_MULTIARCH@/cblas-atlas.h \ + --slave /usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig/blas.pc \ + blas.pc-@DEB_HOST_MULTIARCH@ /usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig/blas-atlas.pc + +update-alternatives --install /usr/lib/@DEB_HOST_MULTIARCH@/liblapack.so \ + liblapack.so-@DEB_HOST_MULTIARCH@ \ + /usr/lib/@DEB_HOST_MULTIARCH@/atlas/liblapack.so 35 \ + --slave /usr/lib/@DEB_HOST_MULTIARCH@/liblapack.a liblapack.a-@DEB_HOST_MULTIARCH@ \ + /usr/lib/@DEB_HOST_MULTIARCH@/atlas/liblapack.a \ + --slave /usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig/lapack.pc \ + lapack.pc-@DEB_HOST_MULTIARCH@ \ + /usr/lib/@DEB_HOST_MULTIARCH@/pkgconfig/lapack-atlas.pc + +#DEBHELPER# + +exit 0 diff --git a/libatlas-base-dev.preinst b/libatlas-base-dev.preinst new file mode 100644 index 0000000..3ddd9ef --- /dev/null +++ b/libatlas-base-dev.preinst @@ -0,0 +1,14 @@ +#!/bin/sh + +set -e + +# Cleanup pre-multiarch alternative +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 3.10.3-4~ +then + update-alternatives --remove libblas.so /usr/lib/atlas-base/atlas/libblas.so + update-alternatives --remove liblapack.so /usr/lib/atlas-base/atlas/liblapack.so +fi + +#DEBHELPER# + +exit 0 diff --git a/libatlas-base-dev.prerm.in b/libatlas-base-dev.prerm.in new file mode 100644 index 0000000..5b7d39a --- /dev/null +++ b/libatlas-base-dev.prerm.in @@ -0,0 +1,16 @@ +#!/bin/sh + +set -e + +if [ "$1" != "upgrade" ] +then + update-alternatives --remove libblas.so-@DEB_HOST_MULTIARCH@ \ + /usr/lib/@DEB_HOST_MULTIARCH@/atlas/libblas.so + + update-alternatives --remove liblapack.so-@DEB_HOST_MULTIARCH@ \ + /usr/lib/@DEB_HOST_MULTIARCH@/atlas/liblapack.so +fi + +#DEBHELPER# + +exit 0 diff --git a/libatlas-doc.doc-base.contrib b/libatlas-doc.doc-base.contrib new file mode 100644 index 0000000..02dee90 --- /dev/null +++ b/libatlas-doc.doc-base.contrib @@ -0,0 +1,14 @@ +Document: atlas-contrib +Title: User contribution to ATLAS +Author: R. Clint Whaley +Abstract: This paper describes the method by which users can speed up ATLAS for themselves, + as well as contribute any such speedup to the ATLAS project. It’s written to get you + started, in a highly informal (read sloppy) fashion. There’s a lot of material that + optimally should be covered in detail, which is only hinted at in this document. Since + no real attempt has been made to make the document sheerly backward referential, + it is recommended that the user at least skim the entire section before attempting to + understand and/or apply information from a given subsection. +Section: Programming + +Format: PDF +Files: /usr/share/doc/libatlas-base-dev/atlas_contrib.pdf.gz diff --git a/libatlas-doc.doc-base.devel b/libatlas-doc.doc-base.devel new file mode 100644 index 0000000..947c2f5 --- /dev/null +++ b/libatlas-doc.doc-base.devel @@ -0,0 +1,10 @@ +Document: atlas-devel +Title: A Collaborative guide to ATLAS Development +Author: R. Clint Whaley and Peter Soendergaard +Abstract: This paper exists to get you started if you want to do some ATLAS development. + The hope is that as new developers work on ATLAS, they will add to this note, so that + this information grows with time. +Section: Programming + +Format: PDF +Files: /usr/share/doc/libatlas-base-dev/atlas_devel.pdf.gz diff --git a/libatlas-doc.doc-base.install b/libatlas-doc.doc-base.install new file mode 100644 index 0000000..e1fdcb9 --- /dev/null +++ b/libatlas-doc.doc-base.install @@ -0,0 +1,14 @@ +Document: atlas-install +Title: ATLAS Installation Guide +Author: R. Clint Whaley +Abstract: This note provides a brief overview of ATLAS, and describes how to install it. + It includes extensive discussion of common configure options, and describes why they + might be employed on various platforms. In addition to discussing how to configure and + build the ATLAS package, this note also describes how an installer can confirm that + the resulting libraries are producing correct answers and running efficiently. Extensive + examples are provided, including a full-length example showing the installation of both + ATLAS and LAPACK on an example architecture. +Section: Programming + +Format: PDF +Files: /usr/share/doc/libatlas-base-dev/atlas_install.pdf.gz diff --git a/libatlas-doc.docs b/libatlas-doc.docs new file mode 100644 index 0000000..bec1946 --- /dev/null +++ b/libatlas-doc.docs @@ -0,0 +1,3 @@ +README +doc/*.txt +TexDoc/*.pdf diff --git a/libatlas-test.install b/libatlas-test.install new file mode 100755 index 0000000..b32a8c0 --- /dev/null +++ b/libatlas-test.install @@ -0,0 +1,11 @@ +#!/usr/bin/dh-exec + +build/bin/*tst usr/lib/${DEB_HOST_MULTIARCH}/atlas/ +build/tune/blas/level1/x* usr/lib/${DEB_HOST_MULTIARCH}/atlas/ +build/tune/blas/gemv/x* usr/lib/${DEB_HOST_MULTIARCH}/atlas/ +build/tune/blas/gemm/x* usr/lib/${DEB_HOST_MULTIARCH}/atlas/ +build/tune/blas/ger/x* usr/lib/${DEB_HOST_MULTIARCH}/atlas/ +build/interfaces/blas/C/testing/x* usr/lib/${DEB_HOST_MULTIARCH}/atlas/ +build/interfaces/blas/F77/testing/x* usr/lib/${DEB_HOST_MULTIARCH}/atlas/ +interfaces/blas/C/testing/*.dat usr/lib/${DEB_HOST_MULTIARCH}/atlas/ +interfaces/blas/F77/testing/*.dat usr/lib/${DEB_HOST_MULTIARCH}/atlas/ diff --git a/libatlas3-base.install b/libatlas3-base.install new file mode 100755 index 0000000..a691c92 --- /dev/null +++ b/libatlas3-base.install @@ -0,0 +1,8 @@ +#!/usr/bin/dh-exec + +libblas.so.* /usr/lib/${DEB_HOST_MULTIARCH}/atlas/ +liblapack.so.* /usr/lib/${DEB_HOST_MULTIARCH}/atlas/ +libatlas.so.* /usr/lib/${DEB_HOST_MULTIARCH}/ +lib*cblas.so.* /usr/lib/${DEB_HOST_MULTIARCH}/ +lib*f77blas.so.* /usr/lib/${DEB_HOST_MULTIARCH}/ +liblapack_atlas.so.* /usr/lib/${DEB_HOST_MULTIARCH}/ diff --git a/libatlas3-base.postinst.in b/libatlas3-base.postinst.in new file mode 100644 index 0000000..a3de457 --- /dev/null +++ b/libatlas3-base.postinst.in @@ -0,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@/atlas/libblas.so.3 35 + +update-alternatives --install /usr/lib/@DEB_HOST_MULTIARCH@/liblapack.so.3 \ + liblapack.so.3-@DEB_HOST_MULTIARCH@ \ + /usr/lib/@DEB_HOST_MULTIARCH@/atlas/liblapack.so.3 35 + +#DEBHELPER# + +exit 0 diff --git a/libatlas3-base.preinst b/libatlas3-base.preinst new file mode 100644 index 0000000..8e5f1e2 --- /dev/null +++ b/libatlas3-base.preinst @@ -0,0 +1,14 @@ +#!/bin/sh + +set -e + +# Cleanup pre-multiarch alternative +if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" lt 3.10.3-4~ +then + update-alternatives --remove libblas.so.3 /usr/lib/atlas-base/atlas/libblas.so.3 + update-alternatives --remove liblapack.so.3 /usr/lib/atlas-base/atlas/liblapack.so.3 +fi + +#DEBHELPER# + +exit 0 diff --git a/libatlas3-base.prerm.in b/libatlas3-base.prerm.in new file mode 100644 index 0000000..f01deaf --- /dev/null +++ b/libatlas3-base.prerm.in @@ -0,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@/atlas/libblas.so.3 + + update-alternatives --remove liblapack.so.3-@DEB_HOST_MULTIARCH@ \ + /usr/lib/@DEB_HOST_MULTIARCH@/atlas/liblapack.so.3 +fi + +#DEBHELPER# + +exit 0 diff --git a/libatlas3-base.shlibs b/libatlas3-base.shlibs new file mode 100644 index 0000000..5a7e6bd --- /dev/null +++ b/libatlas3-base.shlibs @@ -0,0 +1,6 @@ +libatlas 3 libatlas3-base +libcblas 3 libatlas3-base +libf77blas 3 libatlas3-base +liblapack_atlas 3 libatlas3-base +libblas 3 libblas3 | libblas.so.3 +liblapack 3 liblapack3 | liblapack.so.3 diff --git a/orig-tar.exclude b/orig-tar.exclude new file mode 100644 index 0000000..c15dbad --- /dev/null +++ b/orig-tar.exclude @@ -0,0 +1,3 @@ +.gitignore +gitwash +*.pdf diff --git a/orig-tar.sh b/orig-tar.sh new file mode 100755 index 0000000..ac43490 --- /dev/null +++ b/orig-tar.sh @@ -0,0 +1,16 @@ +#!/bin/sh -e + +# called by uscan with '--upstream-version' +DIR=ATLAS +DIRTARGET=atlas-$2 +TAR=../atlas_$2.orig.tar.bz2 + +# add TexDoc to tarball +tar -xf $TAR +mv $DIR $DIRTARGET +git clone https://github.com/math-atlas/math-atlas.git +mv math-atlas/AtlasBase/TexDoc/ $DIRTARGET +rm -rf math-atlas +rm $TAR +tar -caf $TAR -X debian/orig-tar.exclude $DIRTARGET +rm -rf $DIRTARGET diff --git a/patches/fix-typos.patch b/patches/fix-typos.patch new file mode 100644 index 0000000..69e8169 --- /dev/null +++ b/patches/fix-typos.patch @@ -0,0 +1,161 @@ +Description: Fix typos +Author: Sébastien Villemot +Forwarded: https://sourceforge.net/p/math-atlas/patches/78/, https://github.com/math-atlas/math-atlas/pull/31 +Applied-Upstream: 3.10.4 +Last-Update: 2017-08-25 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- a/TexDoc/atlas_devel.tex ++++ b/TexDoc/atlas_devel.tex +@@ -226,7 +226,7 @@ but all new codes should do so. + if (cond) statement; + \end{verbatim} + \item Comments are either to the left of a line if there is room, or on +- lines preceeding the commented code if not, using a style like: ++ lines preceding the commented code if not, using a style like: + \vspace*{-0.1in} + \begin{verbatim} + /* +--- a/bin/stattime.c ++++ b/bin/stattime.c +@@ -768,7 +768,7 @@ int GetFlags(int nargs, char **args, FIL + for (i=1; i < nargs; i++) + { + if (args[i][0] != '-') +- PrintUsage(args[0], "no '-' preceeding flag!", i); ++ PrintUsage(args[0], "no '-' preceding flag!", i); + switch(args[i][1]) + { + case 's': +--- a/results/atl2tvec.c ++++ b/results/atl2tvec.c +@@ -787,7 +787,7 @@ int GetFlags /* returns: DOWHAT (AVG,MI + for (i=1; i < nargs; i++) + { + if (args[i][0] != '-') +- PrintUsage(args[0], "no '-' preceeding flag!", i); ++ PrintUsage(args[0], "no '-' preceding flag!", i); + switch(args[i][1]) + { + case 'c': +--- a/results/cattvecs.c ++++ b/results/cattvecs.c +@@ -39,7 +39,7 @@ char **GetFlags /* RETURNS: arra + for (i=1; i < nargs; i++) + { + if (args[i][0] != '-') +- PrintUsage(args[0], "no '-' preceeding flag!", i); ++ PrintUsage(args[0], "no '-' preceding flag!", i); + switch(args[i][1]) + { + case '#': /* -# <# files> */ +--- a/results/mergetvecs.c ++++ b/results/mergetvecs.c +@@ -41,7 +41,7 @@ char **GetFlags /* RETURNS: arra + for (i=1; i < nargs; i++) + { + if (args[i][0] != '-') +- PrintUsage(args[0], "no '-' preceeding flag!", i); ++ PrintUsage(args[0], "no '-' preceding flag!", i); + switch(args[i][1]) + { + case 'i': /* -i[1,2] */ +--- a/results/perctvecs.c ++++ b/results/perctvecs.c +@@ -40,7 +40,7 @@ char **GetFlags /* RETURNS: arra + for (i=1; i < nargs; i++) + { + if (args[i][0] != '-') +- PrintUsage(args[0], "no '-' preceeding flag!", i); ++ PrintUsage(args[0], "no '-' preceding flag!", i); + switch(args[i][1]) + { + case 'i': /* -i */ +--- a/results/reducetvec.c ++++ b/results/reducetvec.c +@@ -43,7 +43,7 @@ char **GetFlags /* RETURNS: arra + for (i=1; i < nargs; i++) + { + if (args[i][0] != '-') +- PrintUsage(args[0], "no '-' preceeding flag!", i); ++ PrintUsage(args[0], "no '-' preceding flag!", i); + switch(args[i][1]) + { + case 'i': /* -i */ +--- a/results/stattime.c ++++ b/results/stattime.c +@@ -768,7 +768,7 @@ int GetFlags(int nargs, char **args, FIL + for (i=1; i < nargs; i++) + { + if (args[i][0] != '-') +- PrintUsage(args[0], "no '-' preceeding flag!", i); ++ PrintUsage(args[0], "no '-' preceding flag!", i); + switch(args[i][1]) + { + case 's': +--- a/results/tvec2plp.c ++++ b/results/tvec2plp.c +@@ -31,7 +31,7 @@ char **GetFlags /* RETURNS: arra + for (i=1; i < nargs; i++) + { + if (args[i][0] != '-') +- PrintUsage(args[0], "no '-' preceeding flag!", i); ++ PrintUsage(args[0], "no '-' preceding flag!", i); + switch(args[i][1]) + { + case 'i': /* -i */ +--- a/tune/blas/gemv/mvktime.c ++++ b/tune/blas/gemv/mvktime.c +@@ -584,7 +584,7 @@ void GetFlags(int nargs, char **args, in + for (i=1; i < nargs; i++) + { + if (args[i][0] != '-') +- PrintUsage(args[0], "No '-' preceeding flag!", i); ++ PrintUsage(args[0], "No '-' preceding flag!", i); + switch(args[i][1]) + { + case 'f' : /* set resfile output */ +--- a/tune/blas/ger/r1ktime.c ++++ b/tune/blas/ger/r1ktime.c +@@ -553,7 +553,7 @@ void GetFlags(int nargs, char **args, in + for (i=1; i < nargs; i++) + { + if (args[i][0] != '-') +- PrintUsage(args[0], "No '-' preceeding flag!", i); ++ PrintUsage(args[0], "No '-' preceding flag!", i); + switch(args[i][1]) + { + case 'f' : /* set resfile output */ +--- a/tune/blas/ger/r2ktime.c ++++ b/tune/blas/ger/r2ktime.c +@@ -577,7 +577,7 @@ void GetFlags(int nargs, char **args, in + for (i=1; i < nargs; i++) + { + if (args[i][0] != '-') +- PrintUsage(args[0], "No '-' preceeding flag!", i); ++ PrintUsage(args[0], "No '-' preceding flag!", i); + switch(args[i][1]) + { + case 'f' : /* set resfile output */ +--- a/tune/blas/ger/s1nxtune.c ++++ b/tune/blas/ger/s1nxtune.c +@@ -299,7 +299,7 @@ int GetFlags(int nargs, char **args, enu + for (i=1; i < nargs; i++) + { + if (args[i][0] != '-') +- PrintUsage(args[0], i, "No '-' preceeding flag!"); ++ PrintUsage(args[0], i, "No '-' preceding flag!"); + switch(args[i][1]) + { + case 's' : +--- a/tune/blas/ger/s2nxtune.c ++++ b/tune/blas/ger/s2nxtune.c +@@ -300,7 +300,7 @@ int GetFlags(int nargs, char **args, enu + for (i=1; i < nargs; i++) + { + if (args[i][0] != '-') +- PrintUsage(args[0], i, "No '-' preceeding flag!"); ++ PrintUsage(args[0], i, "No '-' preceding flag!"); + switch(args[i][1]) + { + case 's' : diff --git a/patches/generic.patch b/patches/generic.patch new file mode 100644 index 0000000..0189ab4 --- /dev/null +++ b/patches/generic.patch @@ -0,0 +1,42 @@ +Description: Add a GENERIC machine type + In practice this type will have the same effect than the UNKNOWN machine type, + except that it does not try to autodetect the machine CPU. + This is useful when trying to build a generic package on an arch for which + ATLAS does not define a generic machine type. For example, on a armel buildd + with ARMv7 CPU, ATLAS would detect ARMv7 if provided the UNKNOWN type. +Bug-Debian: https://bugs.debian.org/719355 +Author: Sébastien Villemot +Forwarded: not-needed +Last-Update: 2017-08-16 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- a/CONFIG/include/atlconf.h ++++ b/CONFIG/include/atlconf.h +@@ -25,7 +25,7 @@ enum ARCHFAM {AFOther=0, AFPPC, AFSPARC, + * Corei3EP: v3 Haswell, E5-26XX + * Corei4: skylake + */ +-#define NMACH 62 ++#define NMACH 63 + static char *machnam[NMACH] = + {"UNKNOWN", "PPCG4", "PPCG5", "POWER3", "POWER4", "POWER5", + "POWER6", "POWER7", "POWER8", "POWERe6500", +@@ -39,7 +39,7 @@ static char *machnam[NMACH] = + "USI", "USII", "USIII", "USIV", "UST1", "UST2", "UnknownUS", + "MIPSR1xK", "MIPSICE9", + "ARMa7", "ARMa9", "ARMa15", "ARMa17", +- "ARM64xgene1", "ARM64a53", "ARM64a57"}; ++ "ARM64xgene1", "ARM64a53", "ARM64a57", "GENERIC"}; + enum MACHTYPE {MACHOther, PPCG4, PPCG5, IbmPwr3, IbmPwr4, IbmPwr5, + IbmPwr6, IbmPwr7, IbmPwr8, Pwre6500, + IbmZ9, IbmZ10, IbmZ196, IbmZ12, IbmZ13, /* s390(x) in Linux */ +@@ -58,7 +58,8 @@ enum MACHTYPE {MACHOther, PPCG4, PPCG5, + ARM17, /* lots of tablets */ + ARM64xg, /* includes ARMv8 */ + ARM64a53, +- ARM64a57 ++ ARM64a57, ++ GENERIC + }; + #define MachIsX86(mach_) \ + ( (mach_) >= x86x87 && (mach_) <= x86X ) diff --git a/patches/kfreebsd.patch b/patches/kfreebsd.patch new file mode 100644 index 0000000..e6ae1df --- /dev/null +++ b/patches/kfreebsd.patch @@ -0,0 +1,35 @@ +Description: Ensure that kfreebsd-* is detected as FreeBSD + The "GNU" test is moved at the end, otherwise kfreebsd is recognized as Linux. + This is necessary in order to have correct linker flags. +Forwarded: https://sourceforge.net/p/math-atlas/patches/19/ +Applied-Upstream: 3.10.4 +Last-Update: 2017-08-28 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- a/CONFIG/src/probe_OS.c ++++ b/CONFIG/src/probe_OS.c +@@ -18,11 +18,7 @@ enum OSTYPE ProbeOS(int verb, char *targ + res = atlsys_1L(targ, cmnd, verb, 0); + if (res) + { +-/* +- * Accept GNU (HURD) as Linux, since they seem to use same stuff; +- * This is patch from Sylvestre Ledru; I have no direct experience wt HURD +- */ +- if(strstr(res, "Linux") || strstr(res, "GNU")) OS = OSLinux; ++ if(strstr(res, "Linux")) OS = OSLinux; + else if(strstr(res, "FreeBSD")) OS = OSFreeBSD; + else if (strstr(res, "Darwin")) OS = OSOSX; + else if(strstr(res, "SunOS")) +@@ -59,6 +55,11 @@ enum OSTYPE ProbeOS(int verb, char *targ + else ierr = 1; + } + else if (strstr(res, "HP-UX")) OS = OSHPUX; ++/* ++ * Accept GNU (HURD) as Linux, since they seem to use same stuff; ++ * This is patch from Sylvestre Ledru; I have no direct experience wt HURD ++ */ ++ else if(strstr(res, "GNU")) OS = OSLinux; + else ierr = 1; + free(res); + } diff --git a/patches/mips.patch b/patches/mips.patch new file mode 100644 index 0000000..f1809f7 --- /dev/null +++ b/patches/mips.patch @@ -0,0 +1,30 @@ +Description: On mips{,el}, do not pass -mabi=n32 flag. + The mips{,el} ports use the O32 ABI. + See https://www.linux-mips.org/wiki/MIPS_ABI_History for more details on ABIs. +Bug: https://sourceforge.net/p/math-atlas/support-requests/1053/ +Applied-Upstream: 3.10.4 +Last-Update: 2017-08-25 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- a/CONFIG/src/SpewMakeInc.c ++++ b/CONFIG/src/SpewMakeInc.c +@@ -402,7 +402,7 @@ char *GetPtrbitsFlag(enum OSTYPE OS, enu + if (MachIsIA64(arch)) + return(sp); + if (MachIsMIPS(arch)) +- return((ptrbits == 64) ? "-mabi=64" : "-mabi=n32"); ++ return(sp); + if (MachIsS390(arch)) + return((ptrbits == 64) ? "-m64" : "-m31"); + if (OS == OSAIX) +--- a/CONFIG/src/probe_comp.c ++++ b/CONFIG/src/probe_comp.c +@@ -596,7 +596,7 @@ char *GetPtrbitsFlag(enum OSTYPE OS, enu + if (MachIsIA64(arch)) + return(sp); + if (MachIsMIPS(arch)) +- return((ptrbits == 64) ? "-mabi=64" : "-mabi=n32"); ++ return(sp); + if (MachIsS390(arch)) + return((ptrbits == 64) ? "-m64" : "-m31"); + if (OS == OSAIX) diff --git a/patches/missing-cflags.patch b/patches/missing-cflags.patch new file mode 100644 index 0000000..d1541fe --- /dev/null +++ b/patches/missing-cflags.patch @@ -0,0 +1,17 @@ +Description: Add missing CFLAGS when building xmmgen_sse +Author: Sébastien Villemot +Forwarded: no +Last-Update: 2017-08-08 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- a/makes/Make.mmtune ++++ b/makes/Make.mmtune +@@ -155,7 +155,7 @@ mmsearch.o : $(mySRCdir)/mmsearch.c $(pa + SSEGENOUTDIR : + mkdir SSEGENOUTDIR + xmmgen_sse : $(mySRCdir)/mmgen_sse.c +- $(XCC) -o $@ $(mySRCdir)/mmgen_sse.c -lm ++ $(XCC) $(XCCFLAGS) -o $@ $(mySRCdir)/mmgen_sse.c -lm + xmmksearch_sse : xmmgen_sse mmksearch_sse.o SSEGENOUTDIR + $(XCC) $(XCCFLAGS) -o $@ mmksearch_sse.o + mmksearch_sse.o : $(mySRCdir)/mmksearch_sse.c $(parsedeps) diff --git a/patches/powerpc-dcbt.patch b/patches/powerpc-dcbt.patch new file mode 100644 index 0000000..05a20d9 --- /dev/null +++ b/patches/powerpc-dcbt.patch @@ -0,0 +1,277 @@ +Description: Fix FTBFS on powerpc with recent binutils + A recent modification in binutils (see + https://sourceware.org/ml/binutils/2015-04/msg00332.html) introduced a change + in the way the ppc assembly instructions "dcbt" and "dcbtst" are handled. + When compiling on a generic ppc processor, the 3-arguments form of those + instructions is no longer accepted, and one must instead use a 2-arguments + form (ignoring the TH argument). + . + Incidentally, the binutils change also fixed a bug in the way those + instructions were handled. On a generic ppc processor, they used to be + interpreted in the so-called "embedded" form ("dcbt TH, RA, RB", only used on + some embedded machines), while they should have been interpreted in the + so-called "server" form ("dcbt RA, RB, TH"). The ATLAS assembly directive were + apparently written in "server" form, and were therefore mis-assemblied. + . + Ideally, this patch should be improved in order to use the TH argument on + machines that support it (only needed in atlas_prefetch.h; other instances use + the default zero value for TH). +Author: Sébastien Villemot +Forwarded: no +Last-Update: 2015-11-23 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- a/include/atlas_prefetch.h ++++ b/include/atlas_prefetch.h +@@ -101,15 +101,15 @@ + #elif defined(ATL_GAS_PPC) && !defined(ATL_ARCH_POWER4) + #if defined(__GNUC__) || defined(__IBM_GCC_ASM) + #define ATL_pfl1R(mem) \ +- __asm__ __volatile__ ("dcbt 0, %0, 0" : : "r" ((mem))) ++ __asm__ __volatile__ ("dcbt 0, %0" : : "r" ((mem))) + #define ATL_pfl1W(mem) \ + __asm__ __volatile__ ("dcbtst 0, %0" : : "r" ((mem))) + #define ATL_pfST(mem) \ +- __asm__ __volatile__ ("dcbt 0, %0, 1" : : "r" ((mem))) ++ __asm__ __volatile__ ("dcbt 0, %0" : : "r" ((mem))) + #define ATL_pfl1STi(mem, str) \ + __asm__ __volatile__ ("rlwinm %0, %0, 0, 0, 24\n\t" \ + "ori %0, %0, 96+%2\n\t" \ +- "dcbt 0, %0, 8" \ ++ "dcbt 0, %0" \ + : "=r" (mem) \ + : "0" (mem), "i" (str)) + +--- a/tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c ++++ b/tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c +@@ -350,7 +350,7 @@ MLOOPU: + #endif + vmaddfp vC01, vA0, vB1, vC33 + vmaddfp vC11, vA1, vB1, vC33 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + vmaddfp vC21, vA2, vB1, vC33 + addi pfA, pfA, 64 + vmaddfp vC31, vA3, vB1, vC33 +@@ -737,7 +737,7 @@ MLOOPU: + #endif + vmaddfp vC02, va0, vb2, vC02 + vmaddfp vC12, va1, vb2, vC12 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + vmaddfp vC22, va2, vb2, vC22 + addi pfB, pfB, 64 + vmaddfp vC32, va3, vb2, vC32 +@@ -2337,7 +2337,7 @@ MPEELEDU: + #endif + vmaddfp vC01, vA0, vB1, vC33 + vmaddfp vC11, vA1, vB1, vC33 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + vmaddfp vC21, vA2, vB1, vC33 + addi pfA, pfA, 64 + vmaddfp vC31, vA3, vB1, vC33 +@@ -2724,7 +2724,7 @@ MPEELEDU: + #endif + vmaddfp vC02, va0, vb2, vC02 + vmaddfp vC12, va1, vb2, vC12 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + vmaddfp vC22, va2, vb2, vC22 + addi pfB, pfB, 64 + vmaddfp vC32, va3, vb2, vC32 +--- a/tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c ++++ b/tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c +@@ -436,7 +436,7 @@ MLOOP: + fmadd rC00, rA0, rB0, rC00 + lfd rb3, 8+KB3*8(pB0) + fmadd rC10, rA1, rB0, rC10 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + addi pfB, pfB, 128 + fmadd rC20, rA2, rB0, rC20 + fmadd rC30, rA3, rB0, rC30 +@@ -2565,7 +2565,7 @@ MLOOP: + #if KB > 1 + fmadd rC00, ra0, rb0, rC00 + fmadd rC10, ra1, rb0, rC10 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + addi pfA, pfA, 128 + fmadd rC20, ra2, rb0, rC20 + fmadd rC30, ra3, rb0, rC30 +--- a/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c ++++ b/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c +@@ -353,9 +353,9 @@ MLOOP: + fmul rC11, rA1, rB1 + fmul rC21, rA2, rB1 + fmul rC31, rA3, rB1 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + addi pfA, pfA, 128 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + addi pfB, pfB, 128 + fmul rC02, rA0, rB2 + fmul rC12, rA1, rB2 +@@ -438,9 +438,9 @@ MLOOP: + fmadd rC12, rA1, rB2, rC12 + fmadd rC22, rA2, rB2, rC22 + fmadd rC32, rA3, rB2, rC32 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + addi pfA, pfA, 128 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + addi pfB, pfB, 128 + fmadd rC03, rA0, rB3, rC03 + fmadd rC13, rA1, rB3, rC13 +@@ -467,8 +467,8 @@ MLOOP: + fmadd rC10, rA1, rB0, rC10 + fmadd rC20, rA2, rB0, rC20 + fmadd rC30, rA3, rB0, rC30 +- dcbt 0, pfA, 0 +- dcbt 0, pfB, 0 ++ dcbt 0, pfA ++ dcbt 0, pfB + addi pfA, pfA, 128 + addi pfB, pfB, 128 + fmadd rC01, rA0, rB1, rC01 +@@ -3956,9 +3956,9 @@ MPEELED: + fmul rC11, rA1, rB1 + fmul rC21, rA2, rB1 + fmul rC31, rA3, rB1 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + addi pfA, pfA, 128 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + addi pfB, pfB, 128 + fmul rC02, rA0, rB2 + fmul rC12, rA1, rB2 +@@ -4041,9 +4041,9 @@ MPEELED: + fmadd rC12, rA1, rB2, rC12 + fmadd rC22, rA2, rB2, rC22 + fmadd rC32, rA3, rB2, rC32 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + addi pfA, pfA, 128 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + addi pfB, pfB, 128 + fmadd rC03, rA0, rB3, rC03 + fmadd rC13, rA1, rB3, rC13 +@@ -4070,8 +4070,8 @@ MPEELED: + fmadd rC10, rA1, rB0, rC10 + fmadd rC20, rA2, rB0, rC20 + fmadd rC30, rA3, rB0, rC30 +- dcbt 0, pfA, 0 +- dcbt 0, pfB, 0 ++ dcbt 0, pfA ++ dcbt 0, pfB + addi pfA, pfA, 128 + addi pfB, pfB, 128 + fmadd rC01, rA0, rB1, rC01 +--- a/tune/blas/gemm/CASES/ATL_dmm8x4x2_vsx.c ++++ b/tune/blas/gemm/CASES/ATL_dmm8x4x2_vsx.c +@@ -60,7 +60,7 @@ static inline vector TYPE vec_mergel(vec + #ifndef ATL_GOT_L1PREFETCH + #ifdef _ARCH_PPC + #undef ATL_pfl1R +-#define ATL_pfl1R(mem) { __asm__ volatile ("dcbt 0, %0, 0" : : "r" ((mem))); } ++#define ATL_pfl1R(mem) { __asm__ volatile ("dcbt 0, %0" : : "r" ((mem))); } + #endif + #endif + +--- a/tune/blas/gemm/CASES/ATL_smm4x4x128_av.c ++++ b/tune/blas/gemm/CASES/ATL_smm4x4x128_av.c +@@ -376,7 +376,7 @@ MLOOP: + #endif + vmaddfp vC01, vA0, vB1, vC33 + vmaddfp vC11, vA1, vB1, vC33 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + vmaddfp vC21, vA2, vB1, vC33 + addi pfA, pfA, 64 + vmaddfp vC31, vA3, vB1, vC33 +@@ -763,7 +763,7 @@ MLOOP: + #endif + vmaddfp vC02, va0, vb2, vC02 + vmaddfp vC12, va1, vb2, vC12 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + vmaddfp vC22, va2, vb2, vC22 + addi pfB, pfB, 64 + vmaddfp vC32, va3, vb2, vC32 +@@ -1352,7 +1352,7 @@ MLOOP: + #endif + vmaddfp vC01, vA0, vB1, vC01 + #ifdef BETAX +- dcbt 0, pBETA, 0 ++ dcbt 0, pBETA + #endif + vmaddfp vC11, vA1, vB1, vC11 + vmaddfp vC21, vA2, vB1, vC21 +@@ -2319,7 +2319,7 @@ MPEELED: + #endif + vmaddfp vC01, vA0, vB1, vC33 + vmaddfp vC11, vA1, vB1, vC33 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + vmaddfp vC21, vA2, vB1, vC33 + addi pfA, pfA, 64 + vmaddfp vC31, vA3, vB1, vC33 +@@ -2706,7 +2706,7 @@ MPEELED: + #endif + vmaddfp vC02, va0, vb2, vC02 + vmaddfp vC12, va1, vb2, vC12 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + vmaddfp vC22, va2, vb2, vC22 + addi pfB, pfB, 64 + vmaddfp vC32, va3, vb2, vC32 +@@ -4379,7 +4379,7 @@ MLOOPU: + #endif + vmaddfp vC01, vA0, vB1, vC33 + vmaddfp vC11, vA1, vB1, vC33 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + vmaddfp vC21, vA2, vB1, vC33 + addi pfA, pfA, 64 + vmaddfp vC31, vA3, vB1, vC33 +@@ -4766,7 +4766,7 @@ MLOOPU: + #endif + vmaddfp vC02, va0, vb2, vC02 + vmaddfp vC12, va1, vb2, vC12 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + vmaddfp vC22, va2, vb2, vC22 + addi pfB, pfB, 64 + vmaddfp vC32, va3, vb2, vC32 +@@ -5355,7 +5355,7 @@ MLOOPU: + #endif + vmaddfp vC01, vA0, vB1, vC01 + #ifdef BETAX +- dcbt 0, pBETA, 0 ++ dcbt 0, pBETA + #endif + vmaddfp vC11, vA1, vB1, vC11 + vmaddfp vC21, vA2, vB1, vC21 +@@ -6397,7 +6397,7 @@ MPEELEDU: + #endif + vmaddfp vC01, vA0, vB1, vC33 + vmaddfp vC11, vA1, vB1, vC33 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + vmaddfp vC21, vA2, vB1, vC33 + addi pfA, pfA, 64 + vmaddfp vC31, vA3, vB1, vC33 +@@ -6784,7 +6784,7 @@ MPEELEDU: + #endif + vmaddfp vC02, va0, vb2, vC02 + vmaddfp vC12, va1, vb2, vC12 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + vmaddfp vC22, va2, vb2, vC22 + addi pfB, pfB, 64 + vmaddfp vC32, va3, vb2, vC32 diff --git a/patches/ppc64-endianness.patch b/patches/ppc64-endianness.patch new file mode 100644 index 0000000..50d2ad7 --- /dev/null +++ b/patches/ppc64-endianness.patch @@ -0,0 +1,19 @@ +Description: Fix endianness detection on ppc64* + The __ORDER_LITTLE_ENDIAN__ macro is defined even on big endian systems. +Author: Sébastien Villemot +Forwarded: https://sourceforge.net/p/math-atlas/patches/79/ +Applied-Upstream: 3.10.4 +Last-Update: 2017-08-25 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- a/CONFIG/src/SpewMakeInc.c ++++ b/CONFIG/src/SpewMakeInc.c +@@ -557,7 +557,7 @@ int main(int nargs, char **args) + fprintf(fpout, "# -------------------------------------------------\n"); + fprintf(fpout, " ARCH = %s", machnam[mach]); + fprintf(fpout, "%d", ptrbits); +- #if defined(__powerpc64__) && defined(__ORDER_LITTLE_ENDIAN__) ++ #if defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) + fprintf(fpout, "LE"); + #endif + if (ISAX) diff --git a/patches/ppc64el-abiv2.patch b/patches/ppc64el-abiv2.patch new file mode 100644 index 0000000..66a9260 --- /dev/null +++ b/patches/ppc64el-abiv2.patch @@ -0,0 +1,105 @@ +Description: ELFv2 ABI changes for ppc64el + For more details, see: + https://bugzilla.redhat.com/show_bug.cgi?id=1080073#c40 +Bug-Debian: https://bugs.debian.org/766695 +Forwarded: http://sourceforge.net/p/math-atlas/patches/65/ +Origin: http://sourceforge.net/p/math-atlas/patches/65/#3cb1 +Reviewed-by: Sébastien Villemot +Last-Update: 2014-10-24 +--- a/tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c ++++ b/tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c +@@ -268,7 +268,7 @@ Mjoin(.,ATL_USERMM): + .globl Mjoin(_,ATL_USERMM) + Mjoin(_,ATL_USERMM): + #else +- #if defined(ATL_USE64BITS) ++ #if defined(ATL_USE64BITS) && _CALL_ELF != 2 + /* + * Official Program Descripter section, seg fault w/o it on Linux/PPC64 + */ +@@ -324,8 +324,15 @@ ATL_USERMM: + #endif + + #ifdef ATL_USE64BITS ++#if _CALL_ELF == 2 ++/* ABIv2 */ ++ ld pC0, 104(r1) ++ ld incCn, 112(r1) ++#else ++/* ABIv1 */ + ld pC0, 120(r1) + ld incCn, 128(r1) ++#endif + #elif defined(ATL_AS_OSX_PPC) || defined(ATL_AS_AIX_PPC) + lwz pC0, 68(r1) + lwz incCn, 72(r1) +--- a/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c ++++ b/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c +@@ -170,13 +170,21 @@ void ATL_USERMM(const int M, const int N + const TYPE beta, TYPE *C, const int ldc) + (r10) 8(r1) + ******************************************************************************* +-64 bit ABIs: ++64 bit ABIv1s: + r3 r4 r5 r6/f1 + void ATL_USERMM(const int M, const int N, const int K, const TYPE alpha, + r7 r8 r9 r10 + const TYPE *A, const int lda, const TYPE *B, const int ldb, + f2 120(r1) 128(r1) + const TYPE beta, TYPE *C, const int ldc) ++ ++64 bit ABIv2s: ++ r3 r4 r5 r6/f1 ++void ATL_USERMM(const int M, const int N, const int K, const TYPE alpha, ++ r7 r8 r9 r10 ++ const TYPE *A, const int lda, const TYPE *B, const int ldb, ++ f2 104(r1) 112(r1) ++ const TYPE beta, TYPE *C, const int ldc) + #endif + #ifdef ATL_AS_AIX_PPC + .csect .text[PR] +@@ -202,7 +210,7 @@ Mjoin(.,ATL_USERMM): + .globl Mjoin(_,ATL_USERMM) + Mjoin(_,ATL_USERMM): + #else +- #if defined(ATL_USE64BITS) ++ #if defined(ATL_USE64BITS) && _CALL_ELF != 2 + /* + * Official Program Descripter section, seg fault w/o it on Linux/PPC64 + */ +@@ -257,9 +265,17 @@ ATL_USERMM: + #endif + #endif + ++ + #if defined (ATL_USE64BITS) ++#if _CALL_ELF == 2 ++/* ABIv2 */ ++ ld pC0, 104(r1) ++ ld incCn, 112(r1) ++#else ++/* ABIv1 */ + ld pC0, 120(r1) + ld incCn, 128(r1) ++#endif + #elif defined(ATL_AS_OSX_PPC) || defined(ATL_AS_AIX_PPC) + lwz pC0, 68(r1) + lwz incCn, 72(r1) +--- a/tune/blas/gemm/CASES/ATL_dmm4x4x2pf_av.c ++++ b/tune/blas/gemm/CASES/ATL_dmm4x4x2pf_av.c +@@ -405,8 +405,15 @@ Mjoin(_,ATL_USERMM): + */ + #ifdef ATL_GAS_LINUX_PPC + #ifdef ATL_USE64BITS ++ #if _CALL_ELF == 2 ++ /* ABIv2 */ ++ ld pC0, 104(r1) ++ ld incCn, 112(r1) ++ #else ++ /* ABIv1 */ + ld pC0, 120(r1) + ld incCn, 128(r1) ++ #endif + #else + lwz incCn, FSIZE+8(r1) + #endif diff --git a/patches/ppc64el-ifdef-files-with-lvx.patch b/patches/ppc64el-ifdef-files-with-lvx.patch new file mode 100644 index 0000000..1f67c93 --- /dev/null +++ b/patches/ppc64el-ifdef-files-with-lvx.patch @@ -0,0 +1,114 @@ +Description: Skip optimizations for big-endian PowerPC. + Some of the existing optimized files/cases for PowerPC + contain assembly instructions with implicit big-endian + behavior - thus incorrect for the little-endian mode - + incurring tests failures during the build (i.e., FTBFS). + This is being worked on; this is the workaround for now. + . + Note: this is an alternative for Michael Normand's patch + 'atlas.3.10.2-ppc64le_do_not_use_files_with_lvx.patch', + in order not to touch file lists/indexes, but only C + source code, so the C preprocessor can avoid code per-arch. + . + For more details, see: + https://bugzilla.redhat.com/show_bug.cgi?id=1080073#c40 +Bug-Debian: https://bugs.debian.org/766695 +Forwarded: http://sourceforge.net/p/math-atlas/patches/65/ +Author: Mauricio Faria de Oliveira +Reviewed-by: Sébastien Villemot +Last-Update: 2014-10-28 +--- a/tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c ++++ b/tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c +@@ -7,6 +7,11 @@ + * meaning that this kernel will do an extra store of vector C to memory + * for load by the scalar FPU. + */ ++ ++#if defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) ++/* FIXME: port to little-endian powerpc64. */ ++#else ++ + #include "atlas_asm.h" + + #if !defined(ATL_AS_OSX_PPC) && !defined(ATL_GAS_LINUX_PPC) +@@ -4257,3 +4262,5 @@ MPEELEDU: + ld r3, FST(r1) + addi r1, r1, FSIZE + blr ++ ++#endif /* little-endian powerpc64 */ +--- a/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c ++++ b/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c +@@ -28,6 +28,10 @@ + * + */ + ++#if defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) ++/* FIXME: port to little-endian powerpc64. */ ++#else ++ + #include "atlas_asm.h" + /* + * NOTE: this kernel written by R. Clint Whaley, but it uses two key ideas +@@ -7502,3 +7506,5 @@ DONE: + addi r1, r1, FSIZE + #endif + blr ++ ++#endif /* little-endian powerpc64 */ +--- a/tune/blas/gemm/CASES/ATL_dmm8x4x2_vsx.c ++++ b/tune/blas/gemm/CASES/ATL_dmm8x4x2_vsx.c +@@ -27,6 +27,10 @@ + * + */ + ++#if defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) ++/* FIXME: port to little-endian powerpc64. */ ++#else ++ + #include + #include "atlas_misc.h" + #include "atlas_prefetch.h" /* ATL_pfl1R, ATL_pfl1W */ +@@ -659,3 +663,5 @@ void ATL_USERMM + } + } + } ++ ++#endif /* little-endian powerpc64 */ +--- a/tune/blas/gemm/CASES/ATL_smm4x4x128_av.c ++++ b/tune/blas/gemm/CASES/ATL_smm4x4x128_av.c +@@ -28,6 +28,9 @@ + * + */ + ++#if defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) ++/* FIXME: port to little-endian powerpc64. */ ++#else + + #include "atlas_asm.h" + +@@ -8340,3 +8343,5 @@ MPEELEDU: + ld r3, FST(r1) + addi r1, r1, FSIZE + blr ++ ++#endif /* little-endian powerpc64 */ +--- a/tune/blas/gemm/CASES/ATL_smm8x2x4_av.c ++++ b/tune/blas/gemm/CASES/ATL_smm8x2x4_av.c +@@ -27,6 +27,10 @@ + * + */ + ++#if defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) ++/* FIXME: port to little-endian powerpc64. */ ++#else ++ + #include + #include "atlas_misc.h" + #include "atlas_prefetch.h" /* ATL_pfl1R, ATL_pfl1W */ +@@ -326,3 +330,5 @@ void ATL_USERMM + } + } + } ++ ++#endif /* little-endian powerpc64 */ diff --git a/patches/rename-lapack-atlas.patch b/patches/rename-lapack-atlas.patch new file mode 100644 index 0000000..a1916ab --- /dev/null +++ b/patches/rename-lapack-atlas.patch @@ -0,0 +1,114 @@ +Description: Rename ATLAS incomplete liblapack.a to liblapack_atlas.a + The liblapack.a created by ATLAS build system is incomplete: it only contains + a small subset of the full LAPACK API (only those optimized by ATLAS). + Hence rename this library to liblapack_atlas.a to avoid a name conflict with + the full liblapack.a. + In particular, note that the "-Ss flapack" option of the configure script does + not work as expected as of ATLAS 3.10.3. +Author: +Forwarded: not-needed +Last-Update: 2017-08-08 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- a/CONFIG/src/SpewMakeInc.c ++++ b/CONFIG/src/SpewMakeInc.c +@@ -615,7 +615,7 @@ int main(int nargs, char **args) + fprintf(fpout, " ATLASlib = $(LIBdir)/libatlas.a\n"); + fprintf(fpout, " CBLASlib = $(LIBdir)/libcblas.a\n"); + fprintf(fpout, " F77BLASlib = $(LIBdir)/libf77blas.a\n"); +- fprintf(fpout, " LAPACKlib = $(LIBdir)/liblapack.a\n"); ++ fprintf(fpout, " LAPACKlib = $(LIBdir)/liblapack_atlas.a\n"); + if (THREADS) + { + fprintf(fpout, " PTCBLASlib = $(LIBdir)/libptcblas.a\n"); +--- a/Make.top ++++ b/Make.top +@@ -657,8 +657,8 @@ install_inc: + install_lib: + cp $(LIBdir)/libatlas.a $(INSTdir)/. + cp $(LIBdir)/libcblas.a $(INSTdir)/. +- cp $(LIBdir)/liblapack.a $(INSTdir)/. +- chmod 0644 $(INSTdir)/libatlas.a $(INSTdir)/liblapack.a \ ++ cp $(LIBdir)/liblapack_atlas.a $(INSTdir)/. ++ chmod 0644 $(INSTdir)/libatlas.a $(INSTdir)/liblapack_atlas.a \ + $(INSTdir)/libcblas.a + - cp $(LIBdir)/libf77blas.a $(INSTdir)/. + - chmod 0644 $(INSTdir)/libf77blas.a +--- a/makes/Make.lib ++++ b/makes/Make.lib +@@ -4,10 +4,10 @@ mySRCdir = $(SRCdir)/lib + # + # override with libatlas.so only when atlas is built to one lib + # +-DYNlibs = liblapack.so libf77blas.so libcblas.so libatlas.so +-PTDYNlibs = liblapack.so libptf77blas.so libptcblas.so libatlas.so +-CDYNlibs = liblapack.so libcblas.so libatlas.so +-CPTDYNlibs = liblapack.so libptcblas.so libatlas.so ++DYNlibs = liblapack_atlas.so libf77blas.so libcblas.so libatlas.so ++PTDYNlibs = liblapack_atlas.so libptf77blas.so libptcblas.so libatlas.so ++CDYNlibs = liblapack_atlas.so libcblas.so libatlas.so ++CPTDYNlibs = liblapack_atlas.so libptcblas.so libatlas.so + + VER=3.10.3 + tmpd = RCW_tMp +@@ -26,7 +26,7 @@ $(tarnam).tar.bz2 : + cp $(LIBdir)/libatlas.a $(ARCH)/lib/. + cp $(LIBdir)/libf77blas.a $(ARCH)/lib/. + cp $(LIBdir)/libcblas.a $(ARCH)/lib/. +- cp $(LIBdir)/liblapack.a $(ARCH)/lib/. ++ cp $(LIBdir)/liblapack_atlas.a $(ARCH)/lib/. + - cp $(LIBdir)/libptcblas.a $(ARCH)/lib/. + - cp $(LIBdir)/libptf77blas.a $(ARCH)/lib/. + $(TAR) cf $(tarnam).tar $(ARCH) +@@ -184,7 +184,7 @@ fat_ptshared : + LIBINSTdir="$(LIBINSTdir)" + fat_shared : # serial target + $(MAKE) TRYALL outso=libsatlas.so \ +- libas="liblapack.a libf77blas.a libcblas.a libatlas.a" \ ++ libas="liblapack_atlas.a libf77blas.a libcblas.a libatlas.a" \ + LIBINSTdir="$(LIBINSTdir)" + # + # Builds shared lib, not include fortran codes from LAPACK +@@ -198,10 +198,10 @@ fat_cshared : libclapack.a + libas="libclapack.a libcblas.a libatlas.a" \ + LIBINSTdir="$(LIBINSTdir)" + +-libclapack.a : liblapack.a ++libclapack.a : liblapack_atlas.a + rm -rf clapack libclapack.a + mkdir clapack +- cd clapack ; ar x ../liblapack.a ++ cd clapack ; ar x ../liblapack_atlas.a + rm -f clapack/*f77wrap* clapack/*C2F* + ar r libclapack.a clapack/ATL_* clapack/clapack_* + rm -rf clapack +@@ -229,7 +229,7 @@ tdlls: # thread + LIBINSTdir="$(LIBINSTdir)" + sdlls: # serial target + $(MAKE) TRYALL_WIN outso=libsatlas.dll outdef=libsatlas.def \ +- libas="liblapack.a libf77blas.a libcblas.a libatlas.a" \ ++ libas="liblapack_atlas.a libf77blas.a libcblas.a libatlas.a" \ + LIBINSTdir="$(LIBINSTdir)" + cdlls: ctdlls csdlls + ctdlls: libptclapack.a # threaded target +@@ -246,7 +246,7 @@ csdlls: libclapack.a # serial + # ======================================================================= + dylib : + rm -rf $(tmpd) ; mkdir $(tmpd) +- cd $(tmpd) ; ar x ../liblapack.a ++ cd $(tmpd) ; ar x ../liblapack_atlas.a + cd $(tmpd) ; ar x ../libf77blas.a + cd $(tmpd) ; ar x ../libcblas.a + cd $(tmpd) ; ar x ../libatlas.a +@@ -283,9 +283,9 @@ ptcdylib : libptclapack.a + -compatibility_version $(VER) *.o $(LIBS) + rm -rf $(tmpd) + +-libclapack.dylib : libcblas.dylib libatlas.dylib liblapack.a ++libclapack.dylib : libcblas.dylib libatlas.dylib liblapack_atlas.a + rm -rf $(tmpd) ; mkdir $(tmpd) +- cd $(tmpd) ; ar x ../liblapack.a ++ cd $(tmpd) ; ar x ../liblapack_atlas.a + rm -f $(tmpd)/*C2F $(tmpd)/*f77wrap* + cd $(tmpd) ; libtool -dynamic -o ../libclapack.dylib \ + -install_name $(LIBINSTdir)/libclapack.dylib \ diff --git a/patches/series b/patches/series new file mode 100644 index 0000000..1e5e04a --- /dev/null +++ b/patches/series @@ -0,0 +1,10 @@ +rename-lapack-atlas.patch +mips.patch +kfreebsd.patch +generic.patch +ppc64el-abiv2.patch +ppc64el-ifdef-files-with-lvx.patch +powerpc-dcbt.patch +fix-typos.patch +missing-cflags.patch +ppc64-endianness.patch diff --git a/rules b/rules new file mode 100755 index 0000000..1657d18 --- /dev/null +++ b/rules @@ -0,0 +1,244 @@ +#!/usr/bin/make -f + +# Some ATLAS code uses improper format strings, so disable this +export DEB_BUILD_MAINT_OPTIONS=hardening=-format + +include /usr/share/dpkg/default.mk + +# Parallel make variable, used by ATLAS build system +PMAKE := make +ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) +PMAKE += -j $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) +endif + +GFORTRAN_LIB_PATH := $(shell $(CC) -print-search-dirs | grep ^install: | awk '{print $$2}') + +# Flags common to both the generic and custom packages +CONFIGURE_FLAGS := --prefix="$(CURDIR)/debian/tmp" \ + --incdir="$(CURDIR)/debian/tmp/usr/include/$(DEB_HOST_MULTIARCH)/" \ + --libdir="$(CURDIR)/debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/" \ + --shared \ + -D c -DWALL \ + -Ss f77lib "-L$(GFORTRAN_LIB_PATH) -lgfortran -lgcc_s -lpthread" \ + -Ss pmake '$(PMAKE)' \ + -v 2 + +ifeq (,$(filter custom,$(DEB_BUILD_OPTIONS))) +# Building the generic package, so enforce more configuration settings to make +# the package independent of the build host hardware. + +# In particular, force the MACHTYPE and ISA. +# The following strings and numbers come from xprint_enums (compilable +# with "make -C build xprint_enums"). +# N.B.: They can change across releases! + +ifeq (yes,$(shell dpkg-vendor --derives-from Ubuntu && echo yes)) +UBUNTU := yes +endif + +# Select the machine type +ifeq ($(DEB_HOST_ARCH),s390x) +MACHTYPE := $(if $(UBUNTU),IBMz12,IBMz9) +else ifeq ($(DEB_HOST_ARCH_CPU),ppc64el) +MACHTYPE := POWER8 +else ifeq ($(DEB_HOST_ARCH_CPU),i386) +# See http://math-atlas.sourceforge.net/atlas_install/node32.html +MACHTYPE := x86x87 +else ifeq ($(DEB_HOST_ARCH_CPU),amd64) +MACHTYPE := x86SSE2 +else ifeq ($(DEB_HOST_ARCH),ia64) +MACHTYPE := IA64Itan +else +# The same as UNKNOWN, except that it does not try autodetection +# See debian/patches/generic.diff +MACHTYPE := GENERIC +endif + +# ISA corresponds to the instruction set architecture: +# - 1 means no instruction set extension +# - 768 means SSE1+SSE2 (always available on amd64) +# - 16384 means FPV3D16MAC (always available on armhf) +# VSX should also be enabled on ppc64el, but as of 3.10.3-2 it FTBFS. +ifeq ($(DEB_HOST_ARCH_CPU),amd64) +ISA := 768 +else ifeq ($(DEB_HOST_ARCH),armhf) +ISA := 16384 +else +ISA := 1 +endif + +# - the cripple-atlas-performance flag is needed for disabling the CPU +# throttling check, because on some buildds CPU throttling is enabled and we +# have no way of disabling it; +# - disable multi-threading (-t 0), because otherwise the package FTBFS on some +# single-processor machines; +# - enforce gcc as the compiler for all uses (except for compiling probes, +# in --cc), because otherwise architectural defaults do not work. +CONFIGURE_FLAGS += \ + -b $(DEB_HOST_ARCH_BITS) \ + -A $(MACHTYPE) \ + -V $(ISA) \ + -t 0 \ + --cc="$(CC)" \ + --cflags="$(CPPFLAGS) $(CFLAGS)" \ + -C acg gcc \ + -F acg "$(CPPFLAGS) $(CFLAGS)" \ + -C if gfortran \ + -F if "$(FFLAGS)" \ + -Ss ADdir ../../debian/archdefs/$(DEB_HOST_ARCH_CPU) \ + --cripple-atlas-performance + +else +# Flags specific to the custom package + +# Uncomment the following if the ATLAS build system still complains after you +# have set all the CPU governors to "performance" +#CONFIGURE_FLAGS += --cripple-atlas-performance +endif + + +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" < $< > $@ + + +%: + dh $@ + +override_dh_auto_configure: $(GENERATED_DEBIAN_FILES) + mkdir -p build/ + cd build && ../configure $(CONFIGURE_FLAGS) + @echo "==============================================" + @echo -n "Configured arch: " + @grep ARCH < build/Make.inc | head -1 | awk '{print $$3}' + @echo "==============================================" + +override_dh_auto_build: + make -C build + + # We do not ship the lib{s,t}atlas.so created by ATLAS build system, they have an awkward name and an incorrect SONAME + # Rather create our shared versions of individual ATLAS libraries + gfortran $(LDFLAGS) -shared -Wl,-soname=libatlas.so.3 -o libatlas.so.$(DEB_VERSION_UPSTREAM) \ + -Wl,--whole-archive build/lib/libatlas.a -Wl,--no-whole-archive \ + $$(test -f build/lib/libptcblas.a && echo -lpthread) -lc -lm + ln -sf libatlas.so.$(DEB_VERSION_UPSTREAM) libatlas.so.3 + ln -sf libatlas.so.$(DEB_VERSION_UPSTREAM) libatlas.so + + gfortran $(LDFLAGS) -shared -Wl,-soname=libcblas.so.3 -o libcblas.so.$(DEB_VERSION_UPSTREAM) \ + -Wl,--whole-archive build/lib/libcblas.a -Wl,--no-whole-archive \ + -L. -latlas -lm -lc + ln -sf libcblas.so.$(DEB_VERSION_UPSTREAM) libcblas.so.3 + ln -sf libcblas.so.$(DEB_VERSION_UPSTREAM) libcblas.so + + gfortran $(LDFLAGS) -shared -Wl,-soname=libf77blas.so.3 -o libf77blas.so.$(DEB_VERSION_UPSTREAM) \ + -Wl,--whole-archive build/lib/libf77blas.a -Wl,--no-whole-archive \ + -L. -lcblas -latlas -lm -lc + ln -sf libf77blas.so.$(DEB_VERSION_UPSTREAM) libf77blas.so.3 + ln -sf libf77blas.so.$(DEB_VERSION_UPSTREAM) libf77blas.so + + gfortran $(LDFLAGS) -shared -Wl,-soname=liblapack_atlas.so.3 -o liblapack_atlas.so.$(DEB_VERSION_UPSTREAM) \ + -Wl,--whole-archive build/lib/liblapack_atlas.a -Wl,--no-whole-archive \ + -L. -lf77blas -lcblas -latlas -lm -lc + ln -sf liblapack_atlas.so.$(DEB_VERSION_UPSTREAM) liblapack_atlas.so.3 + ln -sf liblapack_atlas.so.$(DEB_VERSION_UPSTREAM) liblapack_atlas.so + + if test -f build/lib/libptcblas.a; then \ + gfortran $(LDFLAGS) -shared -Wl,-soname=libptcblas.so.3 \ + -o libptcblas.so.$(DEB_VERSION_UPSTREAM) \ + -Wl,--whole-archive build/lib/libptcblas.a -Wl,--no-whole-archive \ + -L. -latlas -lm -lc; \ + ln -sf libptcblas.so.$(DEB_VERSION_UPSTREAM) libptcblas.so.3; \ + ln -sf libptcblas.so.$(DEB_VERSION_UPSTREAM) libptcblas.so; \ + fi + + if test -f build/lib/libptf77blas.a; then \ + gfortran $(LDFLAGS) -shared -Wl,-soname=libptf77blas.so.3 \ + -o libptf77blas.so.$(DEB_VERSION_UPSTREAM) \ + -Wl,--whole-archive build/lib/libptf77blas.a -Wl,--no-whole-archive \ + -L. -lptcblas -latlas -lm -lc; \ + ln -sf libptf77blas.so.$(DEB_VERSION_UPSTREAM) libptf77blas.so.3; \ + ln -sf libptf77blas.so.$(DEB_VERSION_UPSTREAM) libptf77blas.so; \ + fi + + # Create static and shared full BLAS + mkdir tmp + cd tmp && \ + ar x ../build/lib/libatlas.a && \ + if test -f ../build/lib/libptf77blas.a -a -f ../build/lib/libptcblas.a; then \ + ar x ../build/lib/libptf77blas.a && \ + ar x ../build/lib/libptcblas.a; \ + else \ + ar x ../build/lib/libf77blas.a && \ + ar x ../build/lib/libcblas.a; \ + fi + ar r libblas.a tmp/*.o + rm -rf tmp + gfortran $(LDFLAGS) -shared -Wl,-soname=libblas.so.3 -o libblas.so.$(DEB_VERSION_UPSTREAM) \ + -Wl,--whole-archive libblas.a -Wl,--no-whole-archive \ + -L. -latlas $$(test -f build/lib/libptcblas.a && echo -lpthread) -lm -lc + ln -sf libblas.so.$(DEB_VERSION_UPSTREAM) libblas.so.3 + ln -sf libblas.so.$(DEB_VERSION_UPSTREAM) libblas.so + + # Kludge to fix blas-atlas.pc by adding -lpthread when needed + if test -f build/lib/libptcblas.a; then sed -i 's/^Libs.private: \(.*\)/Libs.private: \1 -lpthread/' debian/blas-atlas.pc; fi + + # Create static and shared full LAPACK + # Note that we unpack liblapack_atlas.a after liblapack_pic.a, in order to overwrite routines in the latter + mkdir tmp + cd tmp && \ + ar x /usr/lib/$(DEB_HOST_MULTIARCH)/liblapack_pic.a && \ + ar x ../build/lib/liblapack_atlas.a + ar r liblapack.a tmp/*.o + rm -rf tmp + gfortran $(LDFLAGS) -shared -Wl,-soname=liblapack.so.3 -o liblapack.so.$(DEB_VERSION_UPSTREAM) \ + -Wl,--whole-archive liblapack.a -Wl,--no-whole-archive \ + -L. -lblas -latlas -lm -lc + ln -sf liblapack.so.$(DEB_VERSION_UPSTREAM) liblapack.so.3 + ln -sf liblapack.so.$(DEB_VERSION_UPSTREAM) liblapack.so + + # Build PDF documentation +ifeq (,$(filter nodoc,$(DEB_BUILD_OPTIONS))) + make -C TexDoc atlas_contrib.pdf atlas_devel.pdf atlas_install.pdf cblasqref.pdf f77blasqref.pdf lapackqref.pdf +endif + +override_dh_auto_test: + make -C build check + if test -f build/lib/libptcblas.a; then make -C build ptcheck; fi + +override_dh_auto_install: + make -C build install # The build system does not support setting DESTDIR at install time + mv debian/tmp/usr/include/$(DEB_HOST_MULTIARCH)/cblas.h debian/tmp/usr/include/$(DEB_HOST_MULTIARCH)/cblas-atlas.h + +override_dh_installdocs: + dh_installdocs -plibatlas-doc --doc-main-package=libatlas-base-dev + dh_installdocs -Nlibatlas-doc + +# We want packages using libblas/liblapack to depend on any BLAS/LAPACK +# alternative, and we want packages depending on ATLAS-specific libraries +# (e.g. libatlas.so) to depend specifically on libatlas3-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/libatlas3-base.shlibs debian/libatlas3-base/DEBIAN/shlibs + if test -f libptcblas.so; then echo "libptcblas 3 libatlas3-base" >> debian/libatlas3-base/DEBIAN/shlibs; fi + if test -f libptf77blas.so; then echo "libptf77blas 3 libatlas3-base" >> debian/libatlas3-base/DEBIAN/shlibs; fi + +override_dh_shlibdeps: + dh_shlibdeps -a -l $$(pwd) + +override_dh_auto_clean: + rm -rf build + rm -f TexDoc/*.pdf + rm -f debian/blas-atlas.pc debian/lapack-atlas.pc + rm -f *.a *.so *.so.* + +override_dh_install: + dh_install + +override_dh_clean: + dh_clean + rm -f $(GENERATED_DEBIAN_FILES) diff --git a/source/format b/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/source/include-binaries b/source/include-binaries new file mode 100644 index 0000000..81bd6db --- /dev/null +++ b/source/include-binaries @@ -0,0 +1,16 @@ +debian/archdefs/amd64/x86SSE264SSE2.tar.bz2 +debian/archdefs/arm/GENERIC32.tar.bz2 +debian/archdefs/arm/GENERIC32FPV3D16MAC.tar.bz2 +debian/archdefs/arm64/GENERIC64.tar.bz2 +debian/archdefs/i386/x86x8732.tar.bz2 +debian/archdefs/ia64/IA64Itan64.tar.bz2 +debian/archdefs/mips/GENERIC32.tar.bz2 +debian/archdefs/mipsel/GENERIC32.tar.bz2 +debian/archdefs/mips64el/GENERIC64.tar.bz2 +debian/archdefs/powerpc/GENERIC32.tar.bz2 +debian/archdefs/ppc64/GENERIC64.tar.bz2 +debian/archdefs/ppc64el/POWER864LE.tar.bz2 +debian/archdefs/riscv64/GENERIC64.tar.bz2 +debian/archdefs/s390x/IBMz964.tar.bz2 +debian/archdefs/s390x/IBMz1264.tar.bz2 +debian/archdefs/sparc64/GENERIC64.tar.bz2 diff --git a/watch b/watch new file mode 100644 index 0000000..aaea166 --- /dev/null +++ b/watch @@ -0,0 +1,4 @@ +version=4 +opts=dversionmangle=s/\+ds$//,oversionmangle=s/(.*)/$1+ds/ \ +http://sf.net/math-atlas/atlas(\d.*)\.tar\.bz2 debian debian/orig-tar.sh +