Import atlas_3.10.3-1+rpi1.debian.tar.xz
authorRaspbian forward porter <root@raspbian.org>
Thu, 25 Aug 2016 08:30:34 +0000 (08:30 +0000)
committerRaspbian forward porter <root@raspbian.org>
Thu, 25 Aug 2016 08:30:34 +0000 (08:30 +0000)
[dgit import tarball atlas 3.10.3-1+rpi1 atlas_3.10.3-1+rpi1.debian.tar.xz]

61 files changed:
NEWS.Debian [new file with mode: 0644]
README.Debian [new file with mode: 0644]
README.source [new file with mode: 0644]
TODO [new file with mode: 0644]
archdefs/README [new file with mode: 0644]
archdefs/amd64/x86SSE264SSE2.tar.bz2 [new file with mode: 0644]
archdefs/arm/ARMa732.tar.bz2 [new file with mode: 0644]
archdefs/arm/GENERIC32.tar.bz2 [new file with mode: 0644]
archdefs/arm64/GENERIC64.tar.bz2 [new file with mode: 0644]
archdefs/i386/x86x8732.tar.bz2 [new file with mode: 0644]
archdefs/mips/GENERIC32.tar.bz2 [new file with mode: 0644]
archdefs/mips64el/GENERIC64.tar.bz2 [new file with mode: 0644]
archdefs/mipsel/GENERIC32.tar.bz2 [new file with mode: 0644]
archdefs/powerpc/GENERIC32.tar.bz2 [new file with mode: 0644]
archdefs/ppc64el/POWER864LE.tar.bz2 [new file with mode: 0644]
archdefs/s390x/IBMz964.tar.bz2 [new file with mode: 0644]
blas-atlas.pc.in [new file with mode: 0644]
changelog [new file with mode: 0644]
compat [new file with mode: 0644]
control [new file with mode: 0644]
copyright [new file with mode: 0644]
docs [new file with mode: 0644]
lapack-atlas.pc.in [new file with mode: 0644]
libatlas-base-dev.install [new file with mode: 0644]
libatlas-base-dev.links [new file with mode: 0644]
libatlas-base-dev.postinst [new file with mode: 0644]
libatlas-base-dev.preinst [new file with mode: 0644]
libatlas-base-dev.prerm [new file with mode: 0644]
libatlas-doc.doc-base.contrib [new file with mode: 0644]
libatlas-doc.doc-base.devel [new file with mode: 0644]
libatlas-doc.doc-base.install [new file with mode: 0644]
libatlas-test.install [new file with mode: 0644]
libatlas3-base.install [new file with mode: 0644]
libatlas3-base.links [new file with mode: 0644]
libatlas3-base.postinst [new file with mode: 0644]
libatlas3-base.preinst [new file with mode: 0644]
libatlas3-base.prerm [new file with mode: 0644]
libatlas3-base.shlibs [new file with mode: 0644]
orig-tar.exclude [new file with mode: 0644]
orig-tar.sh [new file with mode: 0755]
patches/02_rename_lapack_atlas.diff [new file with mode: 0644]
patches/10_s390.diff [new file with mode: 0644]
patches/16_warning-removed.diff [new file with mode: 0644]
patches/17_hppa.diff [new file with mode: 0644]
patches/18_alpha.diff [new file with mode: 0644]
patches/20_armel.diff [new file with mode: 0644]
patches/21_mips2.diff [new file with mode: 0644]
patches/22_sh.diff [new file with mode: 0644]
patches/armel-is-v4t.diff [new file with mode: 0644]
patches/generic.diff [new file with mode: 0644]
patches/kfreebsd.diff [new file with mode: 0644]
patches/powerpc-dcbt.patch [new file with mode: 0644]
patches/ppc64el-abiv2.patch [new file with mode: 0644]
patches/ppc64el-ifdef-files-with-lvx.patch [new file with mode: 0644]
patches/series [new file with mode: 0644]
patches/shared_libraries.diff [new file with mode: 0644]
patches/static_full_blas_lapack.diff [new file with mode: 0644]
rules [new file with mode: 0755]
source/format [new file with mode: 0644]
source/include-binaries [new file with mode: 0644]
watch [new file with mode: 0644]

diff --git a/NEWS.Debian b/NEWS.Debian
new file mode 100644 (file)
index 0000000..b18b2d4
--- /dev/null
@@ -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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  Thu, 25 Mar 2010 23:39:26 +0100
+
diff --git a/README.Debian b/README.Debian
new file mode 100644 (file)
index 0000000..eeda5a2
--- /dev/null
@@ -0,0 +1,75 @@
+ATLAS for Debian
+================
+
+Starting from Atlas 3.8.3-1, the whole build process has been rewritten.
+It is now using most of the debhelper tools and simplify the management of 
+other archs.
+
+
+Why optimized packages are 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
+-------------------------------------------------
+
+Since Atlas 3.8.3-10, it is trivial to switch between the various BLAS/LAPACK
+implementations.
+
+BLAS:
+update-alternatives --config libblas.so.3
+
+LAPACK:
+update-alternatives --config liblapack.so.3
+
+Note that since Atlas 3.8.4-8, the ATLAS version of LAPACK is not selected by
+default (in order to minimize the incidence of bug #576972); you have to
+manually change the LAPACK alternative to use the optimized version.
+
+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.
+Just get the sources of the package and its build-dependencies:
+
+# apt-get source atlas
+# apt-get build-dep atlas
+# apt-get install devscripts
+
+and type the following from the atlas source subdir:
+
+# fakeroot debian/rules custom
+
+it should produce a package called:
+
+ ../libatlas3-base_*.deb
+
+which is optimized for the architecture Atlas has been built on. Then install
+the package using "dpkg -i".
+
+
+Misc
+----
+
+Thanks to David Cournapeau for providing all the patches for the shared 
+libraries managements.
+
+
+ -- Sébastien Villemot <sebastien@debian.org>, Fri,  7 Jun 2013 12:07:33 +0200
+ -- Sylvestre Ledru <sylvestre@debian.org>, Tue, 15 May 2012 18:05:34 +0200
diff --git a/README.source b/README.source
new file mode 100644 (file)
index 0000000..c7868c5
--- /dev/null
@@ -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/atlas-base/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/atlas-base/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 <sebastien@debian.org>, Sat, 25 Oct 2014 19:12:20 +0200
+
diff --git a/TODO b/TODO
new file mode 100644 (file)
index 0000000..9a35542
--- /dev/null
+++ b/TODO
@@ -0,0 +1,2 @@
+* see it is worst keeping liblapack_atlas.a or rename it to liblapack.a
+* Provide -dbg packages
diff --git a/archdefs/README b/archdefs/README
new file mode 100644 (file)
index 0000000..ad94c7b
--- /dev/null
@@ -0,0 +1,19 @@
+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
+  + ARMa732.tar.bz2 (for armhf): ATLAS 3.10.3 / asachi.debian.org / sid / 2016-08-05
+- arm64: ATLAS 3.10.3 / asachi.debian.org / sid / 2016-08-05
+- i386: from ATLAS 3.10.1 tarball
+- 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
+- ppc64el: ATLAS 3.10.3 / plummer.debian.org / sid / 2016-08-05
+- s390x: ATLAS 3.10.1 / zelenka.debian.org / sid / 2013-06-06
diff --git a/archdefs/amd64/x86SSE264SSE2.tar.bz2 b/archdefs/amd64/x86SSE264SSE2.tar.bz2
new file mode 100644 (file)
index 0000000..0fe6917
Binary files /dev/null and b/archdefs/amd64/x86SSE264SSE2.tar.bz2 differ
diff --git a/archdefs/arm/ARMa732.tar.bz2 b/archdefs/arm/ARMa732.tar.bz2
new file mode 100644 (file)
index 0000000..68484ba
Binary files /dev/null and b/archdefs/arm/ARMa732.tar.bz2 differ
diff --git a/archdefs/arm/GENERIC32.tar.bz2 b/archdefs/arm/GENERIC32.tar.bz2
new file mode 100644 (file)
index 0000000..5009cc6
Binary files /dev/null and b/archdefs/arm/GENERIC32.tar.bz2 differ
diff --git a/archdefs/arm64/GENERIC64.tar.bz2 b/archdefs/arm64/GENERIC64.tar.bz2
new file mode 100644 (file)
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 (file)
index 0000000..554c778
Binary files /dev/null and b/archdefs/i386/x86x8732.tar.bz2 differ
diff --git a/archdefs/mips/GENERIC32.tar.bz2 b/archdefs/mips/GENERIC32.tar.bz2
new file mode 100644 (file)
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 (file)
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 (file)
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 (file)
index 0000000..dd53459
Binary files /dev/null and b/archdefs/powerpc/GENERIC32.tar.bz2 differ
diff --git a/archdefs/ppc64el/POWER864LE.tar.bz2 b/archdefs/ppc64el/POWER864LE.tar.bz2
new file mode 100644 (file)
index 0000000..e23c438
Binary files /dev/null and b/archdefs/ppc64el/POWER864LE.tar.bz2 differ
diff --git a/archdefs/s390x/IBMz964.tar.bz2 b/archdefs/s390x/IBMz964.tar.bz2
new file mode 100644 (file)
index 0000000..6136ce2
Binary files /dev/null and b/archdefs/s390x/IBMz964.tar.bz2 differ
diff --git a/blas-atlas.pc.in b/blas-atlas.pc.in
new file mode 100644 (file)
index 0000000..3cb9d3b
--- /dev/null
@@ -0,0 +1,10 @@
+prefix=/usr
+libdir=${prefix}/lib/atlas-base/atlas
+includedir=${prefix}/include
+Name: atlas-blas
+Description: Automatically Tuned Linear Algebra Software, BLAS
+Version: @DEB_UPSTREAM_VERSION@
+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 (file)
index 0000000..3561ad6
--- /dev/null
+++ b/changelog
@@ -0,0 +1,1560 @@
+atlas (3.10.3-1+rpi1) stretch-staging; urgency=medium
+
+  [changes brought forward from 3.10.2-6+rpi1 by Peter Michael Green <plugwash@raspbian.org> at Wed, 07 Jan 2015 01:41:03 +0000]
+  * Use generic build for raspbian.
+  * Make testsuite failure non-fatal
+  * Build some stuff for libatlas-test manually as it doesn't seem to get built
+    if the testsuite fails.
+
+ -- Raspbian forward porter <root@raspbian.org>  Thu, 25 Aug 2016 08:30:34 +0000
+
+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 <sebastien@debian.org>  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 <sebastien@debian.org>  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 <sebastien@debian.org>  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 <sebastien@debian.org>  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 <sebastien@debian.org>  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 <sebastien@debian.org>  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 <sebastien@debian.org>  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 <sebastien@debian.org>  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 <sebastien@debian.org>  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 <sebastien@debian.org>  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 <sebastien@debian.org>  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 <sebastien@debian.org>  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 <sebastien@debian.org>  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 <sebastien@debian.org>  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 <anbe@debian.org>  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 <sebastien.villemot@ens.fr>  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 <sebastien.villemot@ens.fr>  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 <sebastien.villemot@ens.fr>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  Thu, 07 Jun 2012 13:02:23 +0200
+
+atlas (3.8.4-4) unstable; urgency=low
+
+  * Upload in unstable (Closes: #673357)
+ -- Sylvestre Ledru <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  Tue, 23 Mar 2010 15:11:12 +0100
+
+atlas (3.8.3-15) experimental; urgency=low
+
+  * randomCrashOnBuild.diff was crashing many builds
+
+ -- Sylvestre Ledru <sylvestre@debian.org>  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 <sylvestre@debian.org>  Sat, 20 Mar 2010 10:16:38 +0100
+
+atlas (3.8.3-13) experimental; urgency=low
+
+  * Support of hurd (hurd.diff)
+
+ -- Sylvestre Ledru <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <sylvestre@debian.org>  Sun, 27 Sep 2009 23:51:49 +0200
+
+atlas (3.8.3-2) experimental; urgency=low
+
+  * Improve CPU extension check
+
+ -- Sylvestre Ledru <sylvestre@debian.org>  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 <sylvestre@debian.org>  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 <bzed@debian.org>  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 <ondrej@certik.cz>  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 <bubulle@debian.org>  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 <bubulle@debian.org>  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 <doko@debian.org>  Tue, 05 Feb 2008 03:46:01 +0100
+
+atlas (3.6.0-21.2) unstable; urgency=low
+
+  * Upload to unstable.
+
+ -- Matthias Klose <doko@debian.org>  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 <doko@debian.org>  Sun, 20 Jan 2008 03:01:00 +0100
+
+atlas (3.6.0-21) unstable; urgency=low
+
+  * gfortran transition
+
+ -- Camm Maguire <camm@enhanced.com>  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 <vorlon@debian.org>  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 <bubulle@debian.org>  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 <bubulle@debian.org>  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
+    <jeroen@wolffelaar.nl> for the patch. Closes: #350748
+
+ -- Frederik Schüler <fs@debian.org>  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 <ballombe@debian.org>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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
+    <J.J.vanderHeijden@home.nl> can help?
+
+ -- Camm Maguire <camm@enhanced.com>  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
+    <J.J.vanderHeijden@home.nl>
+  * 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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  Wed, 14 Jan 2004 17:19:49 +0000
+
+atlas3 (3.6.0-1) unstable; urgency=low
+
+  * New upstream release
+
+ -- Camm Maguire <camm@enhanced.com>  Thu,  8 Jan 2004 04:05:49 +0000
+
+atlas3 (3.5.19-1) unstable; urgency=low
+
+  * New upstream release
+
+ -- Camm Maguire <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  Tue, 26 Jun 2001 23:04:13 -0400
+
+atlas (3.2.1-1) unstable; urgency=low
+
+  * New upstream release
+
+ -- Camm Maguire <camm@enhanced.com>  Fri, 30 Mar 2001 17:10:06 -0500
+
+atlas (3.2.0-1) unstable; urgency=low
+
+  * New upstream release
+
+ -- Camm Maguire <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  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 <camm@enhanced.com>  Thu, 18 Nov 1999 14:09:13 -0500
+
+atlas (2.0-1) unstable; urgency=low
+
+  * Initial Release.
+
+ -- Camm Maguire <camm@enhanced.com>  Tue, 14 Sep 1999 09:28:44 -0400
+
+
diff --git a/compat b/compat
new file mode 100644 (file)
index 0000000..f11c82a
--- /dev/null
+++ b/compat
@@ -0,0 +1 @@
+9
\ No newline at end of file
diff --git a/control b/control
new file mode 100644 (file)
index 0000000..7b5adeb
--- /dev/null
+++ b/control
@@ -0,0 +1,94 @@
+Source: atlas
+Section: devel
+Priority: optional
+Maintainer: Debian Science Team <debian-science-maintainers@lists.alioth.debian.org>
+Uploaders: Sébastien Villemot <sebastien@debian.org>
+Standards-Version: 3.9.8
+Build-Depends: debhelper (>= 9), patch, gfortran, cdbs,
+ libblas-dev (>= 1.2.20110419-3),
+ liblapack-dev (>= 3.4.1), liblapack-pic (>= 3.4.1), libblas-test,
+ texlive-latex-base, ghostscript, cpufrequtils
+Homepage: http://math-atlas.sourceforge.net/
+Vcs-Git: https://anonscm.debian.org/git/debian-science/packages/atlas.git
+Vcs-Browser: https://anonscm.debian.org/git/debian-science/packages/atlas.git
+
+Package: libatlas3-base
+Section: libs
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, libblas-common
+Provides: libblas.so.3, liblapack.so.3
+Built-Using: ${Built-Using}
+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
+Section: libdevel
+Architecture: any
+Depends: libatlas3-base (= ${binary:Version}), libatlas-dev, ${misc:Depends}, 
+ ${shlibs:Depends}
+Provides: libblas.so, liblapack.so
+Suggests: libblas-doc, liblapack-doc
+Built-Using: ${Built-Using}
+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 static libraries and symbolic links
+ needed for program development.
+
+Package: libatlas-dev
+Section: libdevel
+Architecture: any
+Depends: libc6-dev, libblas-dev, ${misc:Depends}
+Suggests: liblapack-dev, liblapack-doc
+Description: Automatically Tuned Linear Algebra Software, C header files
+ 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 the headers needed to compile against the libraries
+ provided by ATLAS.
+
+Package: libatlas-test
+Architecture: any
+Priority: extra
+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
+Section: doc
+Depends: ${misc:Depends}
+Architecture: all
+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 (file)
index 0000000..08adc21
--- /dev/null
+++ b/copyright
@@ -0,0 +1,62 @@
+This package was debianized by Camm Maguire <camm@enhanced.com> on
+Tue, 14 Sep 1999 09:28:44 -0400 and rewritten by Sylvestre Ledru
+<sylvestre.ledru@inria.fr> on September 2009.
+
+It was downloaded from http://math-atlas.sourceforge.net/
+
+Upstream Authors: 
+       R. Clint Whaley <atlas@cs.utk.edu>
+       Jack Dongarra <atlas@cs.utk.edu>
+       Jeff Horner
+       Peter Soendergaard
+       Antoine P. Petitet
+       Julian Ruhe
+       Tim Mattox
+       Hank Dietz
+       Camm Maguire
+
+Copyright:
+       (C) Copyright 1997-2008 All Rights Reserved
+       (C) 1996-2011 R. Clint Whaley
+       (C) 1998 Jeff Horner
+       (C) 2001 Peter Soendergaard
+       (C) 1999 Antoine P. Petitet
+       (C) 2001 Julian Ruhe
+       (C) 2003 Tim Mattox
+       (C) 2003 Hank Dietz
+       (C) 2003 Camm Maguire
+       (C) 1999 The Australian National University
+
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions
+ are met:
+   1. Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+   2. Redistributions in binary form must reproduce the above copyright
+      notice, this list of conditions, and the following disclaimer in the
+      documentation and/or other materials provided with the distribution.
+   3. The name of the ATLAS group or the names of its contributers may
+      not be used to endorse or promote products derived 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 ATLAS GROUP OR ITS 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.
+
+On alpha architectures, the standard builds use K. GOTO's kernels
+contributed to the ATLAS project under the LGPL.  Therefore on these
+platforms, the distributed prebuilt libraries, as well as any user
+built library using this kernel, is licensed under the LGPL.
+
+On Debian GNU/Linux systems, the complete text of the GNU Lesser General
+Public License can be found in `/usr/share/common-licenses/LGPL-2'.
+
diff --git a/docs b/docs
new file mode 100644 (file)
index 0000000..e845566
--- /dev/null
+++ b/docs
@@ -0,0 +1 @@
+README
diff --git a/lapack-atlas.pc.in b/lapack-atlas.pc.in
new file mode 100644 (file)
index 0000000..23f1332
--- /dev/null
@@ -0,0 +1,10 @@
+prefix=/usr
+libdir=${prefix}/lib/atlas-base/atlas
+includedir=${prefix}/include
+Name: atlas-lapack
+Description: Automatically Tuned Linear Algebra Software, LAPACK
+Version: @DEB_UPSTREAM_VERSION@
+URL: http://math-atlas.sourceforge.net/
+Libs: -L${libdir} -llapack
+Libs.private: -L${libdir} -latlas -lm
+Cflags: -I${includedir}
diff --git a/libatlas-base-dev.install b/libatlas-base-dev.install
new file mode 100644 (file)
index 0000000..70dbae3
--- /dev/null
@@ -0,0 +1,6 @@
+debian/tmp/usr/lib/atlas-base/*.so
+debian/tmp/usr/lib/atlas-base/*.a
+debian/tmp/usr/lib/atlas-base/atlas/*.so
+debian/tmp/usr/lib/atlas-base/atlas/*.a
+debian/blas-atlas.pc /usr/lib/pkgconfig
+debian/lapack-atlas.pc /usr/lib/pkgconfig
diff --git a/libatlas-base-dev.links b/libatlas-base-dev.links
new file mode 100644 (file)
index 0000000..74d032e
--- /dev/null
@@ -0,0 +1,8 @@
+usr/lib/atlas-base/libcblas.so        usr/lib/libcblas.so
+usr/lib/atlas-base/libcblas.a         usr/lib/libcblas.a
+usr/lib/atlas-base/libf77blas.so      usr/lib/libf77blas.so
+usr/lib/atlas-base/libf77blas.a       usr/lib/libf77blas.a
+usr/lib/atlas-base/libatlas.so        usr/lib/libatlas.so
+usr/lib/atlas-base/libatlas.a         usr/lib/libatlas.a
+usr/lib/atlas-base/liblapack_atlas.so usr/lib/liblapack_atlas.so
+usr/lib/atlas-base/liblapack_atlas.a  usr/lib/liblapack_atlas.a
diff --git a/libatlas-base-dev.postinst b/libatlas-base-dev.postinst
new file mode 100644 (file)
index 0000000..5c1d211
--- /dev/null
@@ -0,0 +1,24 @@
+#! /bin/sh
+
+set -e
+
+update-alternatives --install /usr/lib/libblas.so libblas.so \
+    /usr/lib/atlas-base/atlas/libblas.so 35                  \
+    --slave /usr/lib/libblas.a libblas.a                     \
+    /usr/lib/atlas-base/atlas/libblas.a                      \
+    --slave /usr/lib/pkgconfig/blas.pc blas.pc               \
+    /usr/lib/pkgconfig/blas-atlas.pc
+
+update-alternatives --install /usr/lib/liblapack.so liblapack.so \
+    /usr/lib/atlas-base/atlas/liblapack.so 35                    \
+    --slave /usr/lib/liblapack.a liblapack.a                     \
+    /usr/lib/atlas-base/atlas/liblapack.a                        \
+    --slave /usr/lib/pkgconfig/lapack.pc lapack.pc               \
+    /usr/lib/pkgconfig/lapack-atlas.pc
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
diff --git a/libatlas-base-dev.preinst b/libatlas-base-dev.preinst
new file mode 100644 (file)
index 0000000..014dd61
--- /dev/null
@@ -0,0 +1,24 @@
+#! /bin/sh
+
+set -e
+
+# In 3.10.1-1, some symlinks were moved out of the alternatives system
+# The following ensures that they are freed by the alternatives system before unpacking
+if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" ge 3.8.4-4~exp1 && dpkg --compare-versions "$2" lt 3.10.1-1
+then
+    update-alternatives --remove libblas.so    /usr/lib/atlas-base/atlas/libblas.so
+fi
+
+# Cleanup obsolete alternatives dating back to lenny
+if [ "$1" = "install" ] || [ "$1" = "upgrade" ]
+then
+    update-alternatives --remove libblas-3.so /usr/lib/atlas/libblas.so
+    update-alternatives --remove liblapack-3.so /usr/lib/atlas/liblapack.so
+fi
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
diff --git a/libatlas-base-dev.prerm b/libatlas-base-dev.prerm
new file mode 100644 (file)
index 0000000..105a765
--- /dev/null
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+set -e
+
+if [ "$1" != "upgrade" ]
+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-doc.doc-base.contrib b/libatlas-doc.doc-base.contrib
new file mode 100644 (file)
index 0000000..8eebe28
--- /dev/null
@@ -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-doc/atlas_contrib.pdf.gz
diff --git a/libatlas-doc.doc-base.devel b/libatlas-doc.doc-base.devel
new file mode 100644 (file)
index 0000000..f280e64
--- /dev/null
@@ -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-doc/atlas_devel.pdf.gz
diff --git a/libatlas-doc.doc-base.install b/libatlas-doc.doc-base.install
new file mode 100644 (file)
index 0000000..6eccf0a
--- /dev/null
@@ -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-doc/atlas_install.pdf.gz
diff --git a/libatlas-test.install b/libatlas-test.install
new file mode 100644 (file)
index 0000000..5b3e91a
--- /dev/null
@@ -0,0 +1,9 @@
+build/atlas-base/bin/*tst usr/lib/libatlas-test
+build/atlas-base/tune/blas/level1/x* usr/lib/libatlas-test
+build/atlas-base/tune/blas/gemv/x* usr/lib/libatlas-test
+build/atlas-base/tune/blas/gemm/x* usr/lib/libatlas-test
+build/atlas-base/tune/blas/ger/x* usr/lib/libatlas-test
+build/atlas-base/interfaces/blas/C/testing/x* usr/lib/libatlas-test
+build/atlas-base/interfaces/blas/F77/testing/x* usr/lib/libatlas-test
+interfaces/blas/C/testing/*.dat usr/lib/libatlas-test
+interfaces/blas/F77/testing/*.dat usr/lib/libatlas-test
diff --git a/libatlas3-base.install b/libatlas3-base.install
new file mode 100644 (file)
index 0000000..98ba78c
--- /dev/null
@@ -0,0 +1,3 @@
+debian/tmp/usr/lib/atlas-base/*.so.*
+debian/tmp/usr/lib/atlas-base/atlas/*.so.*
+
diff --git a/libatlas3-base.links b/libatlas3-base.links
new file mode 100644 (file)
index 0000000..a668f1f
--- /dev/null
@@ -0,0 +1,4 @@
+usr/lib/atlas-base/libcblas.so.3        usr/lib/libcblas.so.3
+usr/lib/atlas-base/libf77blas.so.3      usr/lib/libf77blas.so.3
+usr/lib/atlas-base/libatlas.so.3        usr/lib/libatlas.so.3
+usr/lib/atlas-base/liblapack_atlas.so.3 usr/lib/liblapack_atlas.so.3
diff --git a/libatlas3-base.postinst b/libatlas3-base.postinst
new file mode 100644 (file)
index 0000000..0714a94
--- /dev/null
@@ -0,0 +1,17 @@
+#! /bin/sh
+
+set -e
+
+
+update-alternatives --install /usr/lib/libblas.so.3 libblas.so.3     \
+    /usr/lib/atlas-base/atlas/libblas.so.3 35
+
+update-alternatives --install /usr/lib/liblapack.so.3 liblapack.so.3 \
+        /usr/lib/atlas-base/atlas/liblapack.so.3 35
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
diff --git a/libatlas3-base.preinst b/libatlas3-base.preinst
new file mode 100644 (file)
index 0000000..8a862e4
--- /dev/null
@@ -0,0 +1,17 @@
+#! /bin/sh
+
+set -e
+
+# In 3.10.1-1, some symlinks were moved out of the alternatives system
+# The following ensures that they are freed by the alternatives system before unpacking
+if [ "$1" = "upgrade" ] && dpkg --compare-versions "$2" ge 3.8.4-4~exp1 && dpkg --compare-versions "$2" lt 3.10.1-1
+then
+    update-alternatives --remove libblas.so.3 /usr/lib/atlas-base/atlas/libblas.so.3
+fi
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
diff --git a/libatlas3-base.prerm b/libatlas3-base.prerm
new file mode 100644 (file)
index 0000000..eb8f305
--- /dev/null
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+set -e
+
+if [ "$1" != "upgrade" ]
+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.shlibs b/libatlas3-base.shlibs
new file mode 100644 (file)
index 0000000..5a7e6bd
--- /dev/null
@@ -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 (file)
index 0000000..ccad6a6
--- /dev/null
@@ -0,0 +1,2 @@
+CVS
+*.pdf
diff --git a/orig-tar.sh b/orig-tar.sh
new file mode 100755 (executable)
index 0000000..76746ac
--- /dev/null
@@ -0,0 +1,19 @@
+#!/bin/sh -e
+
+# called by uscan with '--upstream-version' <version> <file>
+DIR=ATLAS
+DIRTARGET=atlas-$2
+TAR=../atlas_$2.orig.tar.bz2
+
+# clean up the upstream tarball
+tar jxvf $3
+mv $DIR $DIRTARGET
+# Before
+#  cvs -d:pserver:anonymous@math-atlas.cvs.sourceforge.net:/cvsroot/math-atlas login 
+cvs -z3 -d:pserver:anonymous@math-atlas.cvs.sourceforge.net:/cvsroot/math-atlas co -P AtlasBase/TexDoc
+mv AtlasBase/TexDoc/ $DIRTARGET
+rm -rf AtlasBase
+tar -j -c -f $TAR -X debian/orig-tar.exclude $DIRTARGET
+rm -rf $DIRTARGET
+
+exit 0
diff --git a/patches/02_rename_lapack_atlas.diff b/patches/02_rename_lapack_atlas.diff
new file mode 100644 (file)
index 0000000..4302e51
--- /dev/null
@@ -0,0 +1,109 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 02_rename_lapack_atlas.dpatch.dpatch by  <david@evans>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Rename ATLAS incomplete lapack to lapack_atlas.
+
+@DPATCH@
+--- 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/10_s390.diff b/patches/10_s390.diff
new file mode 100644 (file)
index 0000000..59c459c
--- /dev/null
@@ -0,0 +1,31 @@
+--- a/CONFIG/src/SpewMakeInc.c
++++ b/CONFIG/src/SpewMakeInc.c
+@@ -404,7 +404,7 @@ char *GetPtrbitsFlag(enum OSTYPE OS, enu
+    if (MachIsMIPS(arch))
+       return((ptrbits == 64) ? "-mabi=64" : "-mabi=n32");
+    if (MachIsS390(arch))
+-      return((ptrbits == 64) ? "-m64" : "-m31");
++      return(sp);
+    if (OS == OSAIX)
+       return((ptrbits == 64) ? "-maix64" : "-maix32");
+@@ -801,8 +801,6 @@ int main(int nargs, char **args)
+             fprintf(fpout, "_fbsd");
+       }
+    }
+-   if (MachIsS390(mach))
+-      fprintf(fpout, ptrbits == 32 ? "-m31" : "-m64");
+    fprintf(fpout, "\n   F77SYSLIB = %s\n", f77lib ? f77lib : "");
+    fprintf(fpout, "   BC = $(KC)\n");
+    fprintf(fpout, "   NCFLAGS = $(KCFLAGS)\n");
+--- a/CONFIG/src/probe_comp.c
++++ b/CONFIG/src/probe_comp.c
+@@ -598,7 +598,7 @@ char *GetPtrbitsFlag(enum OSTYPE OS, enu
+    if (MachIsMIPS(arch))
+       return((ptrbits == 64) ? "-mabi=64" : "-mabi=n32");
+    if (MachIsS390(arch))
+-      return((ptrbits == 64) ? "-m64" : "-m31");
++      return(sp);
+    if (OS == OSAIX)
+       return((ptrbits == 64) ? "-maix64" : "-maix32");
diff --git a/patches/16_warning-removed.diff b/patches/16_warning-removed.diff
new file mode 100644 (file)
index 0000000..d47d5a4
--- /dev/null
@@ -0,0 +1,13 @@
+Index: ATLAS/Make.top
+===================================================================
+--- ATLAS.orig/Make.top        2013-01-09 17:42:11.000000000 +0100
++++ ATLAS/Make.top     2013-01-09 17:42:11.000000000 +0100
+@@ -9,7 +9,7 @@
+       $(BZIP) error_$(ARCH).tar
+ leafstart:
+-      cd $(leaf) ; ln -s $(BLDdir)/Make.inc Make.inc
++      cd $(leaf) ; if test -h Make.inc; then rm Make.inc; fi; ln -s $(BLDdir)/Make.inc Make.inc
+ build:
+       cd bin/ ; $(MAKE) xatlas_build
diff --git a/patches/17_hppa.diff b/patches/17_hppa.diff
new file mode 100644 (file)
index 0000000..c7818d4
--- /dev/null
@@ -0,0 +1,39 @@
+--- a/CONFIG/include/atlconf.h
++++ b/CONFIG/include/atlconf.h
+@@ -83,7 +83,13 @@ enum MACHTYPE {MACHOther, PPCG4, PPCG5,
+    ( (mach_) >= ARM64xg && || (mach_) <= ARM64a57)
+ #define MachIsS390(mach_) \
+    ( (mach_) >= IbmZ9 && (mach_) <= IbmZ13 )
+-
++#ifdef __hppa__
++#define MachIsHPPA(mach_) \
++   ( __hppa__ )
++#else
++#define MachIsHPPA(mach_) \
++   ( 0 )
++#endif
+ static char *f2c_namestr[5] = {"UNKNOWN","Add_", "Add__", "NoChange", "UpCase"};
+ static char *f2c_intstr[5] =
+--- a/CONFIG/src/SpewMakeInc.c
++++ b/CONFIG/src/SpewMakeInc.c
+@@ -401,6 +401,8 @@ char *GetPtrbitsFlag(enum OSTYPE OS, enu
+    if (MachIsIA64(arch))
+       return(sp);
++   if (MachIsHPPA(arch))
++     return(sp);
+    if (MachIsMIPS(arch))
+       return((ptrbits == 64) ? "-mabi=64" : "-mabi=n32");
+    if (MachIsS390(arch))
+--- a/CONFIG/src/probe_comp.c
++++ b/CONFIG/src/probe_comp.c
+@@ -595,6 +595,8 @@ char *GetPtrbitsFlag(enum OSTYPE OS, enu
+    if (MachIsIA64(arch))
+       return(sp);
++   if (MachIsHPPA(arch))
++     return(sp);
+    if (MachIsMIPS(arch))
+       return((ptrbits == 64) ? "-mabi=64" : "-mabi=n32");
+    if (MachIsS390(arch))
diff --git a/patches/18_alpha.diff b/patches/18_alpha.diff
new file mode 100644 (file)
index 0000000..09010f7
--- /dev/null
@@ -0,0 +1,38 @@
+--- a/CONFIG/include/atlconf.h
++++ b/CONFIG/include/atlconf.h
+@@ -90,6 +90,13 @@ enum MACHTYPE {MACHOther, PPCG4, PPCG5,
+ #define MachIsHPPA(mach_) \
+    ( 0 )
+ #endif
++#ifdef __alpha__
++#define MachIsALPHA(mach_) \
++  ( __alpha__ )
++#else
++#define MachIsALPHA(mach_) \
++  ( 0 )
++#endif
+ static char *f2c_namestr[5] = {"UNKNOWN","Add_", "Add__", "NoChange", "UpCase"};
+ static char *f2c_intstr[5] =
+--- a/CONFIG/src/SpewMakeInc.c
++++ b/CONFIG/src/SpewMakeInc.c
+@@ -403,6 +403,8 @@ char *GetPtrbitsFlag(enum OSTYPE OS, enu
+       return(sp);
+    if (MachIsHPPA(arch))
+      return(sp);
++   if (MachIsALPHA(arch))
++     return(sp);
+    if (MachIsMIPS(arch))
+       return((ptrbits == 64) ? "-mabi=64" : "-mabi=n32");
+    if (MachIsS390(arch))
+--- a/CONFIG/src/probe_comp.c
++++ b/CONFIG/src/probe_comp.c
+@@ -597,6 +597,8 @@ char *GetPtrbitsFlag(enum OSTYPE OS, enu
+       return(sp);
+    if (MachIsHPPA(arch))
+      return(sp);
++   if (MachIsALPHA(arch))
++     return(sp);
+    if (MachIsMIPS(arch))
+       return((ptrbits == 64) ? "-mabi=64" : "-mabi=n32");
+    if (MachIsS390(arch))
diff --git a/patches/20_armel.diff b/patches/20_armel.diff
new file mode 100644 (file)
index 0000000..49cc16a
--- /dev/null
@@ -0,0 +1,39 @@
+--- a/CONFIG/include/atlconf.h
++++ b/CONFIG/include/atlconf.h
+@@ -97,6 +97,14 @@ enum MACHTYPE {MACHOther, PPCG4, PPCG5,
+ #define MachIsALPHA(mach_) \
+   ( 0 )
+ #endif
++#ifdef __ARMEL__
++#define MachIsARMEL(mach_) \
++  ( __ARMEL__ )
++#else
++#define MachIsARMEL(mach_) \
++  ( 0 )
++#endif
++
+ static char *f2c_namestr[5] = {"UNKNOWN","Add_", "Add__", "NoChange", "UpCase"};
+ static char *f2c_intstr[5] =
+--- a/CONFIG/src/SpewMakeInc.c
++++ b/CONFIG/src/SpewMakeInc.c
+@@ -405,6 +405,8 @@ char *GetPtrbitsFlag(enum OSTYPE OS, enu
+      return(sp);
+    if (MachIsALPHA(arch))
+      return(sp);
++   if (MachIsARMEL(arch))
++     return(sp);
+    if (MachIsMIPS(arch))
+       return((ptrbits == 64) ? "-mabi=64" : "-mabi=n32");
+    if (MachIsS390(arch))
+--- a/CONFIG/src/probe_comp.c
++++ b/CONFIG/src/probe_comp.c
+@@ -599,6 +599,8 @@ char *GetPtrbitsFlag(enum OSTYPE OS, enu
+      return(sp);
+    if (MachIsALPHA(arch))
+      return(sp);
++   if (MachIsARMEL(arch))
++     return(sp);
+    if (MachIsMIPS(arch))
+       return((ptrbits == 64) ? "-mabi=64" : "-mabi=n32");
+    if (MachIsS390(arch))
diff --git a/patches/21_mips2.diff b/patches/21_mips2.diff
new file mode 100644 (file)
index 0000000..7ffa4ea
--- /dev/null
@@ -0,0 +1,22 @@
+--- a/CONFIG/src/SpewMakeInc.c
++++ b/CONFIG/src/SpewMakeInc.c
+@@ -408,7 +408,7 @@ char *GetPtrbitsFlag(enum OSTYPE OS, enu
+    if (MachIsARMEL(arch))
+      return(sp);
+    if (MachIsMIPS(arch))
+-      return((ptrbits == 64) ? "-mabi=64" : "-mabi=n32");
++       return(sp);
+    if (MachIsS390(arch))
+       return(sp);
+    if (OS == OSAIX)
+--- a/CONFIG/src/probe_comp.c
++++ b/CONFIG/src/probe_comp.c
+@@ -602,7 +602,7 @@ char *GetPtrbitsFlag(enum OSTYPE OS, enu
+    if (MachIsARMEL(arch))
+      return(sp);
+    if (MachIsMIPS(arch))
+-      return((ptrbits == 64) ? "-mabi=64" : "-mabi=n32");
++       return(sp);
+    if (MachIsS390(arch))
+       return(sp);
+    if (OS == OSAIX)
diff --git a/patches/22_sh.diff b/patches/22_sh.diff
new file mode 100644 (file)
index 0000000..350e4e1
--- /dev/null
@@ -0,0 +1,39 @@
+--- a/CONFIG/include/atlconf.h
++++ b/CONFIG/include/atlconf.h
+@@ -105,6 +105,14 @@ enum MACHTYPE {MACHOther, PPCG4, PPCG5,
+   ( 0 )
+ #endif
++#ifdef __sh__
++#define MachIsSH(mach_) \
++  ( __sh__ )
++#else
++#define MachIsSH(mach_) \
++  ( 0 )
++#endif
++ 
+ static char *f2c_namestr[5] = {"UNKNOWN","Add_", "Add__", "NoChange", "UpCase"};
+ static char *f2c_intstr[5] =
+--- a/CONFIG/src/SpewMakeInc.c
++++ b/CONFIG/src/SpewMakeInc.c
+@@ -409,6 +409,8 @@ char *GetPtrbitsFlag(enum OSTYPE OS, enu
+      return(sp);
+    if (MachIsMIPS(arch))
+        return(sp);
++   if (MachIsSH(arch))
++       return(sp);
+    if (MachIsS390(arch))
+       return(sp);
+    if (OS == OSAIX)
+--- a/CONFIG/src/probe_comp.c
++++ b/CONFIG/src/probe_comp.c
+@@ -607,6 +607,8 @@ char *GetPtrbitsFlag(enum OSTYPE OS, enu
+       return(sp);
+    if (OS == OSAIX)
+       return((ptrbits == 64) ? "-maix64" : "-maix32");
++   if (MachIsSH(arch))
++      return(sp);
+    if (!CompIsGcc(comp))
+    {
diff --git a/patches/armel-is-v4t.diff b/patches/armel-is-v4t.diff
new file mode 100644 (file)
index 0000000..f099f48
--- /dev/null
@@ -0,0 +1,20 @@
+Description: On armel, do not use asm constructs provided by ATLAS
+ Since 3.10, ATLAS incorporates asm constructs for ARM processors. However,
+ these are too recent for the Debian armel port (which is ARMv4t). This patch
+ ensures that these asm constructs are not used on that port.
+Author: Sébastien Villemot <sebastien@debian.org>
+Forwarded: no
+Last-Update: 2013-06-07
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/CONFIG/src/backend/probe_gas_arm.S
++++ b/CONFIG/src/backend/probe_gas_arm.S
+@@ -1,5 +1,8 @@
+ #define ATL_GAS_ARM
+ #include "atlas_asm.h"
++#ifdef __ARM_ARCH_4T__
++#error "Debian armel is only v4t, but ATLAS needs a more recent ISA"
++#endif
+ #
+ # Linux ARM assembler for:
+ # int asm_probe(int i)
diff --git a/patches/generic.diff b/patches/generic.diff
new file mode 100644 (file)
index 0000000..84c44da
--- /dev/null
@@ -0,0 +1,41 @@
+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.
+Author: Sébastien Villemot <sebastien@debian.org>
+Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=719355
+Last-Update: 2014-07-12
+---
+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.diff b/patches/kfreebsd.diff
new file mode 100644 (file)
index 0000000..d7aafc9
--- /dev/null
@@ -0,0 +1,15 @@
+--- a/CONFIG/src/SpewMakeInc.c
++++ b/CONFIG/src/SpewMakeInc.c
+@@ -805,8 +805,10 @@ int main(int nargs, char **args)
+             fprintf(fpout, " -melf_i386");
+          else if (ptrbits == 64)
+             fprintf(fpout, " -melf_x86_64");
+-         if (OS == OSFreeBSD)
+-            fprintf(fpout, "_fbsd");
++ #ifdef __FreeBSD_kernel__
++          fprintf(fpout, "_fbsd");
++#endif
++
+       }
+    }
+    fprintf(fpout, "\n   F77SYSLIB = %s\n", f77lib ? f77lib : "");
diff --git a/patches/powerpc-dcbt.patch b/patches/powerpc-dcbt.patch
new file mode 100644 (file)
index 0000000..05a20d9
--- /dev/null
@@ -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 <sebastien@debian.org>
+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/ppc64el-abiv2.patch b/patches/ppc64el-abiv2.patch
new file mode 100644 (file)
index 0000000..481feb7
--- /dev/null
@@ -0,0 +1,105 @@
+Origin: http://sourceforge.net/p/math-atlas/patches/65/#3cb1
+Forwarded: http://sourceforge.net/p/math-atlas/patches/65/
+Description: ELFv2 ABI changes for ppc64el
+ For more details, see:
+ https://bugzilla.redhat.com/show_bug.cgi?id=1080073#c40
+Last-Update: 2014-10-24
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=766695
+Reviewed-By: Sébastien Villemot <sebastien@debian.org>
+--- 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 (file)
index 0000000..0b92687
--- /dev/null
@@ -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
+Author: Mauricio Faria de Oliveira <mauricfo@linux.vnet.ibm.com>
+Forwarded: http://sourceforge.net/p/math-atlas/patches/65/
+Last-Update: 2014-10-28
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=766695
+Reviewed-By: Sébastien Villemot <sebastien@debian.org>
+--- 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 <altivec.h>
+ #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 <altivec.h>
+ #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/series b/patches/series
new file mode 100644 (file)
index 0000000..e3c2ac4
--- /dev/null
@@ -0,0 +1,16 @@
+02_rename_lapack_atlas.diff
+static_full_blas_lapack.diff
+shared_libraries.diff
+10_s390.diff
+16_warning-removed.diff
+17_hppa.diff
+18_alpha.diff
+20_armel.diff
+21_mips2.diff
+22_sh.diff
+kfreebsd.diff
+armel-is-v4t.diff
+generic.diff
+ppc64el-abiv2.patch
+ppc64el-ifdef-files-with-lvx.patch
+powerpc-dcbt.patch
diff --git a/patches/shared_libraries.diff b/patches/shared_libraries.diff
new file mode 100644 (file)
index 0000000..91dc8ce
--- /dev/null
@@ -0,0 +1,130 @@
+Description: Create shared versions of the libraries
+Author: David Evans
+        Sébastien Villemot <sebastien@debian.org>
+Last-Update: 2014-07-16
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/makes/Make.lib
++++ b/makes/Make.lib
+@@ -33,6 +33,79 @@ $(tarnam).tar.bz2 :
+       rm -rf $(ARCH)
+       $(BZIP) --best $(tarnam).tar
++fullshared: libatlas.so libcblas.so libf77blas.so liblapack_atlas.so atlas/libblas.so atlas/liblapack.so
++
++libatlas.so: libatlas.so.3
++      ln -sf $< $@ 
++
++libatlas.so.3: libatlas.so.3.0
++      ln -sf $< $@ 
++
++libatlas.so.3.0 : libatlas.a
++      ld $(LDFLAGS) -shared -soname libatlas.so.3 -o $@ \
++        --whole-archive libatlas.a --no-whole-archive -lc $(LIBS) $(F77SYSLIB)
++
++libcblas.so: libcblas.so.3
++      ln -sf $< $@ 
++
++libcblas.so.3: libcblas.so.3.0
++      ln -sf $< $@ 
++
++libcblas.so.3.0 : libcblas.a libatlas.so
++      ld $(LDFLAGS) -shared -soname libcblas.so.3 -o $@ \
++        --whole-archive libcblas.a \
++          --no-whole-archive -L. -latlas $(F77SYSLIB) -lm -lc
++
++libf77blas.so: libf77blas.so.3
++      ln -sf $< $@ 
++
++libf77blas.so.3: libf77blas.so.3.0
++      ln -sf $< $@ 
++
++libf77blas.so.3.0 : libf77blas.a libcblas.so libatlas.so
++      ld $(LDFLAGS) -shared -soname libf77blas.so.3 -o $@ \
++        --whole-archive libf77blas.a \
++          --no-whole-archive -L. -lcblas -latlas $(F77SYSLIB) -lm -lc
++
++liblapack_atlas.so: liblapack_atlas.so.3
++      ln -sf $< $@ 
++
++liblapack_atlas.so.3: liblapack_atlas.so.3.0
++      ln -sf $< $@ 
++
++liblapack_atlas.so.3.0 : liblapack_atlas.a libatlas.so libcblas.so libf77blas.so
++      ld $(LDFLAGS) -shared -soname liblapack_atlas.so.3 -o $@ \
++        --whole-archive liblapack_atlas.a  \
++        --no-whole-archive -L. -lf77blas -lcblas -latlas -lm -lc $(F77SYSLIB)
++
++atlas/libblas.so: atlas/libblas.so.3
++      (cd atlas && ln -sf libblas.so.3 libblas.so)
++
++atlas/libblas.so.3: atlas/libblas.so.3.0
++      (cd atlas && ln -sf libblas.so.3.0 libblas.so.3)
++
++atlas/libblas.so.3.0: libf77blas.a libcblas.a libatlas.so.3.0
++      if test -f libptf77blas.a -a -f libptcblas.a; then \
++              ld $(LDFLAGS) -shared -soname libblas.so.3 -o $@ \
++                 --whole-archive libptf77blas.a libptcblas.a \
++                 --no-whole-archive -L. -latlas $(F77SYSLIB) -lm -lc; \
++      else \
++              ld $(LDFLAGS) -shared -soname libblas.so.3 -o $@ \
++                 --whole-archive libf77blas.a libcblas.a \
++                 --no-whole-archive -L. -latlas $(F77SYSLIB) -lm -lc; \
++      fi
++
++atlas/liblapack.so: atlas/liblapack.so.3
++      (cd atlas && ln -sf liblapack.so.3 liblapack.so)
++
++atlas/liblapack.so.3: atlas/liblapack.so.3.0
++      (cd atlas && ln -sf liblapack.so.3.0 liblapack.so.3)
++
++atlas/liblapack.so.3.0: atlas/liblapack.a atlas/libblas.so libatlas.so.3.0
++      ld $(LDFLAGS) -shared -soname liblapack.so.3 -o $@ \
++         --whole-archive atlas/liblapack.a \
++           --no-whole-archive -L . -lblas -latlas $(F77SYSLIB) -lm -lc
++
+ # ===================================================================
+ # The following commands are to build dynamic/shared objects on Linux
+ # using the gnu gcc or ld
+--- a/Make.top
++++ b/Make.top
+@@ -16,6 +16,7 @@ build:
+       cd bin/ ; ./xatlas_build $(INSTFLAGS)
+       cd lib/ ; $(MAKE) atlas/libblas.a
+       cd lib/ ; $(MAKE) atlas/liblapack.a
++      cd lib/ ; $(MAKE) fullshared
+ time: 
+       ./xatlbench -dc $(BLDdir)/bin/INSTALL_LOG -dp $(BLDdir)/ARCHS/$(ARCH)
+@@ -683,3 +684,21 @@ install_static_lib:
+       - cp $(LIBdir)/libsatlas.so $(INSTdir)/.
+       - cp $(LIBdir)/libtatlas.so $(INSTdir)/.
++install_shared_lib:
++      for lib in atlas cblas f77blas lapack_atlas; do \
++              cp $(LIBdir)/lib$$lib.so.3.0 $(INSTdir)/. ; \
++              ( cd $(INSTdir) && ln -s lib$$lib.so.3.0 lib$$lib.so.3); \
++              ( cd $(INSTdir) && ln -s lib$$lib.so.3 lib$$lib.so); \
++              chmod 0644 $(INSTdir)/lib$$lib.so ;\
++              chmod 0644 $(INSTdir)/lib$$lib.so.3 ;\
++              chmod 0644 $(INSTdir)/lib$$lib.so.3.0 ;\
++      done;
++      mkdir -p $(INSTdir)/atlas
++      for lib in blas lapack; do \
++              cp $(LIBdir)/atlas/lib$$lib.so.3.0 $(INSTdir)/atlas/. ; \
++              ( cd $(INSTdir)/atlas/ && ln -s lib$$lib.so.3.0 lib$$lib.so.3); \
++              ( cd $(INSTdir)/atlas/ && ln -s lib$$lib.so.3 lib$$lib.so); \
++              chmod 0644 $(INSTdir)/atlas/lib$$lib.so ;\
++              chmod 0644 $(INSTdir)/atlas/lib$$lib.so.3 ;\
++              chmod 0644 $(INSTdir)/atlas/lib$$lib.so.3.0 ;\
++      done;
+--- a/CONFIG/src/Makefile
++++ b/CONFIG/src/Makefile
+@@ -624,6 +624,7 @@ $(LIBINSTdir) :
+ install : $(INCINSTdir) $(LIBINSTdir) $(INCINSTdir)/atlas
+       $(MAKE) -f Make.top install_inc INSTdir=$(INCINSTdir) 
+       $(MAKE) -f Make.top install_static_lib INSTdir=$(LIBINSTdir)
++      $(MAKE) -f Make.top install_shared_lib INSTdir=$(LIBINSTdir)
+ confclean: $(CLEANdep)
+       rm -f *core* *.o config?.out
diff --git a/patches/static_full_blas_lapack.diff b/patches/static_full_blas_lapack.diff
new file mode 100644 (file)
index 0000000..ef23fca
--- /dev/null
@@ -0,0 +1,117 @@
+Description: Create full featured static libblas.a and liblapack.a
+ The resulting BLAS library will use the threaded flavour if the build has been
+ configured to create them. Otherwise, the serial library is used.
+Author: David Evans
+Last-Update: 2013-06-05
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/Make.top
++++ b/Make.top
+@@ -14,6 +14,9 @@ leafstart:
+ build:
+       cd bin/ ; $(MAKE) xatlas_build
+       cd bin/ ; ./xatlas_build $(INSTFLAGS)
++      cd lib/ ; $(MAKE) atlas/libblas.a
++      cd lib/ ; $(MAKE) atlas/liblapack.a
++
+ time: 
+       ./xatlbench -dc $(BLDdir)/bin/INSTALL_LOG -dp $(BLDdir)/ARCHS/$(ARCH)
+ C_sanity_test:
+@@ -401,6 +404,7 @@ startup : lib include results EXtest
+       $(MAKE) -f Make.top leafstart leaf=src/blas/reference/level1
+       $(MAKE) -f Make.top leafstart leaf=src/auxil
+       $(MAKE) -f Make.top leafstart leaf=src/testing
++      $(MAKE) -f Make.top leafstart leaf=lib/atlas
+       $(MAKE) -f Make.top leafstart leaf=lib
+       $(MAKE) -f Make.top leafstart leaf=bin
+       cd src/threads ; touch atomic.inc
+@@ -591,6 +595,7 @@ killgrd :
+ lib :
+       mkdir lib
++      mkdir lib/atlas
+ include:
+       mkdir include
+@@ -654,12 +659,17 @@ install_inc:
+       chmod 0644 $(INSTdir)/cblas.h $(INSTdir)/clapack.h
+       cp $(INCAdir)/* $(INSTdir)/atlas/.
+       - chmod 0644 $(INSTdir)/atlas/*
+-install_lib:
++
++install_static_lib:
+       cp $(LIBdir)/libatlas.a $(INSTdir)/.
+       cp $(LIBdir)/libcblas.a $(INSTdir)/.
+       cp $(LIBdir)/liblapack_atlas.a $(INSTdir)/.
++      mkdir -p $(INSTdir)/atlas
++      cp $(LIBdir)/atlas/libblas.a $(INSTdir)/atlas/.
++      cp $(LIBdir)/atlas/liblapack.a $(INSTdir)/atlas/.
+       chmod 0644 $(INSTdir)/libatlas.a  $(INSTdir)/liblapack_atlas.a \
+-                   $(INSTdir)/libcblas.a 
++                   $(INSTdir)/libcblas.a $(INSTdir)/atlas/libblas.a \
++                 $(INSTdir)/atlas/liblapack.a 
+       - cp $(LIBdir)/libf77blas.a $(INSTdir)/.
+       - chmod 0644 $(INSTdir)/libf77blas.a
+       - cp $(LIBdir)/libptcblas.a $(INSTdir)/.
+--- a/makes/Make.lib
++++ b/makes/Make.lib
+@@ -175,6 +175,36 @@ TRYALL :
+            LIBS="$(LIBS)" LIBINSTdir="$(LIBINSTdir)" ; \
+         fi
++
++# Build full netlib blas/lapack libraries:
++atlas/libblas.a: libatlas.a
++      mkdir tmp
++      cd tmp && \
++              ar x ../libatlas.a && \
++              if test -f ../libptf77blas.a -a -f ../libptcblas.a; then \
++                      ar x ../libptf77blas.a && \
++                      ar x ../libptcblas.a; \
++              else \
++                      ar x ../libf77blas.a && \
++                      ar x ../libcblas.a; \
++              fi
++      ar r $@ tmp/*.o
++      rm -rf tmp
++
++atlas/liblapack.a: liblapack_atlas.a libatlas.a
++      mkdir tmp
++      cd tmp && \
++              ar x /usr/lib/liblapack_pic.a && \
++              ar x ../liblapack_atlas.a && \
++              if test -f ../libptcblas.a; then \
++                      ar x ../libptcblas.a; \
++              else \
++                      ar x ../libcblas.a; \
++              fi
++      ar r $@ tmp/*.o
++      rm -rf tmp
++
++
+ #
+ # Builds one shared lib from all ATLAS files
+ #
+--- a/CONFIG/src/Makefile
++++ b/CONFIG/src/Makefile
+@@ -623,7 +623,7 @@ $(LIBINSTdir) :
+       chmod 0755 $(LIBINSTdir)
+ install : $(INCINSTdir) $(LIBINSTdir) $(INCINSTdir)/atlas
+       $(MAKE) -f Make.top install_inc INSTdir=$(INCINSTdir) 
+-      $(MAKE) -f Make.top install_lib INSTdir=$(LIBINSTdir)
++      $(MAKE) -f Make.top install_static_lib INSTdir=$(LIBINSTdir)
+ confclean: $(CLEANdep)
+       rm -f *core* *.o config?.out
+--- a/CONFIG/src/SpewMakeInc.c
++++ b/CONFIG/src/SpewMakeInc.c
+@@ -624,6 +624,9 @@ int main(int nargs, char **args)
+    }
+    fprintf(fpout, "   TESTlib = $(LIBdir)/libtstatlas.a\n\n");
++   fprintf(fpout, "   FULLBLASlib = $(LIBdir)/atlas/libblas.a\n");
++   fprintf(fpout, "   FULLLAPACKlib = $(LIBdir)/atlas/liblapack.a\n");
++
+    fprintf(fpout, "#  -------------------------------------------\n");
+    fprintf(fpout, "#  Upper bound on largest cache size, in bytes\n");
+    fprintf(fpout, "#  -------------------------------------------\n");
diff --git a/rules b/rules
new file mode 100755 (executable)
index 0000000..f996027
--- /dev/null
+++ b/rules
@@ -0,0 +1,195 @@
+#!/usr/bin/make -f
+# Copyright 2008-2010 Sylvestre Ledru <sylvestre@debian.org>
+
+include /usr/share/cdbs/1/rules/debhelper.mk
+
+# NB: the following strings and numbers come from xprint_enums (compilable from the build
+# directory with "make xprint_enums); they can change across releases
+#
+# The trailing number in ARCHS corresponds to the instruction set (ISA):
+# - 1 means no instruction set extension
+# - 768 means SSE1+SSE2 (always available on amd64)
+ifeq ($(DEB_HOST_ARCH),s390x)
+ARCHS=base_IBMz9_1
+else ifeq ($(DEB_HOST_ARCH_CPU),ppc64el)
+ARCHS=base_POWER8_1
+else ifeq ($(DEB_HOST_ARCH_CPU),i386)
+# See http://math-atlas.sourceforge.net/atlas_install/node32.html
+ARCHS=base_x86x87_1
+else ifeq ($(DEB_HOST_ARCH_CPU),amd64)
+ARCHS=base_x86SSE2_768
+else ifeq ($(DEB_HOST_ARCH),armhf)
+ARCHS=base_GENERIC_1
+else
+# The same as 0 (UNKNOWN), except that it does not try autodetection
+# See debian/patches/generic.diff
+ARCHS=base_GENERIC_1
+endif
+
+# Pointer bitwidth
+MODE_BITWIDTH = $(shell dpkg-architecture -qDEB_HOST_ARCH_BITS)
+
+DEB_SHLIBDEPS_INCLUDE_libatlas3-base := $(CURDIR)/debian/libatlas3-base/usr/lib/atlas-base/:$(CURDIR)/debian/libatlas3-base/usr/lib/atlas-base/atlas/
+
+DEB_DH_GENCONTROL_ARGS_ALL := -- -VBuilt-Using="`dpkg-query -W -f='$${source:Package} (= $${source:Version})' liblapack-pic`"
+
+GFORTRAN_LIB_PATH=`$(CC) -print-search-dirs|grep ^install:|awk '{print $$2}'`
+
+# Flags common to both the generic and custom packages
+COMMON_CONFIG_PARAMS := --prefix="$(DEB_DESTDIR)"      \
+       --incdir="$(DEB_DESTDIR)/usr/include/"                  \
+       --libdir="$(DEB_DESTDIR)/usr/lib/$$targetName"          \
+       --cc="${CC}"                                                                    \
+       --cflags="${CFLAGS}"                                                    \
+       -D c -DWALL                                                                     \
+       -b $(MODE_BITWIDTH)                                                     \
+       -Fa alg '-fPIC'                                 \
+       -Ss f77lib "-L$(GFORTRAN_LIB_PATH) -lgfortran -lgcc_s -lpthread"  \
+       -Ss pmake '$(MAKE)'                                     \
+       -Ss flapack /usr/lib/liblapack_pic.a    \
+       -A $$atlasArch                                                                  \
+       -V $$atlasISA                                                                   \
+       -v 2
+
+# Flags used only for the generic package
+# 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.
+GENERIC_CONFIG_PARAMS := \
+       -t 0 \
+       -Ss ADdir ../../../debian/archdefs/$(DEB_HOST_ARCH_CPU) \
+       --cripple-atlas-performance
+
+# Build a custom package optimized for the current arch
+custom: custom-stamp
+.PHONY: custom
+custom-stamp:
+               rm -f configure-stamp
+
+               ncpu=$$(LANG=C cpufreq-info | grep "analyzing CPU" -c);\
+               cpu=0;\
+               while test $$cpu -lt $$ncpu ; do\
+               if test $$(cpufreq-info -p 2>&1 > /dev/null; echo $$?) \
+                       -eq 0 -a -z "$$(LANG=C cpufreq-info -p -c $$cpu | grep performance)" ; then \
+                       echo "frequency governor on cpu=$$cpu is not set to 'performance'"; \
+                       echo "run: 'sudo cpufreq-set -g performance -c cpu#' for each cpu"; \
+                       echo "aborting atlas build"; \
+                       exit 1; \
+               fi; \
+               cpu=$$((cpu+1)) ;\
+               done
+
+               # Here, the trick is pretty simple:
+               # * We don't want to build all the optimized version of Atlas. Just the
+               #   one for the current CPU
+               # * We override ARCHS by base__
+               # * Base is the name of the package (libatlas3-base)
+               # * __ is provided to have the right expression
+               # * the regexp will consider that atlasArch and atlasISA are empty
+               #   therefor, leaving the choice of the optimization to Atlas
+               # * After that, we fall back to the normal build procedure by calling
+               #   debian/rules itself (yep, recursively)
+
+               # Remove all the other archs in this case
+               dch --local='+custom'  "custom build on: `uname -a`"
+               LANG=C debian/rules ARCHS=base__ binary
+               touch $@
+
+common-configure-arch common-configure-indep:: configure-stamp
+configure-stamp:
+               dh_testdir
+
+               set -e;                                                                                 \
+               targetName=`echo $(ARCHS)|sed -e "s|\(.*\)_.*_.*|atlas-\1|g"`; \
+               atlasArch=`echo $(ARCHS)|sed -e "s|.*_\(.*\)_.*|\1|g"`; \
+               atlasISA=`echo $(ARCHS)|sed -e "s|.*_.*_\(.*\)|\1|g"`; \
+               mkdir -p build/$$targetName;                                    \
+               cd build/$$targetName;                                                  \
+               if test "$(ARCHS)" != "base__"; then            \
+               ../../configure $(COMMON_CONFIG_PARAMS) $(GENERIC_CONFIG_PARAMS); \
+               else                                            \
+               ../../configure $(COMMON_CONFIG_PARAMS);        \
+               fi;                                             \
+               echo "Configure done. targetName = $$targetName / atlasArch = $$atlasArch / atlasISA = $$atlasISA";                                                             \
+               if test ! -s Make.inc; then echo "Configure failed: Make.inc not found"; exit 1; fi;                                                                                    \
+               cat Make.inc |grep ARCH|head -1|awk '{print $$3}'; \
+               echo "=============================================="; \
+               cd -
+               touch $@
+
+debian/blas-atlas.pc: debian/blas-atlas.pc.in
+       sed -e "s%@DEB_UPSTREAM_VERSION@%$(DEB_UPSTREAM_VERSION)%" < $< > $@
+
+debian/lapack-atlas.pc: debian/lapack-atlas.pc.in
+       sed -e "s%@DEB_UPSTREAM_VERSION@%$(DEB_UPSTREAM_VERSION)%" < $< > $@
+
+common-build-arch common-build-indep:: build-stamp
+build-stamp: debian/blas-atlas.pc debian/lapack-atlas.pc
+               dh_testdir
+               set -e;                                                                                                 \
+               targetName=`echo $(ARCHS)|sed -e "s|\(.*\)_.*_.*|atlas-\1|g"`; \
+               cd build/$$targetName;                                                                  \
+               $(MAKE) build;                                                                                  \
+               $(MAKE) check || true;
+               test -f build/$$targetName/lib/libptcblas.a && $(MAKE) ptcheck;                                                                         \
+               echo "==============================================";  \
+               cd ../../../
+               # Do not build the help when building the custom package
+               if test "$(ARCHS)" != "base__"; then \
+                       make -C TexDoc atlas_contrib.pdf atlas_devel.pdf atlas_install.pdf cblasqref.pdf  f77blasqref.pdf lapackqref.pdf; \
+               fi
+               #build some stuff manually that is needed for libatlas-test and
+               #seems to not get built if the testsuite fails
+               cd build/atlas-base/interfaces/blas/C/testing && $(MAKE)
+               cd build/atlas-base/interfaces/blas/F77/testing && $(MAKE)
+               touch $@
+
+clean:: clean-work
+clean-work:
+               dh_testdir
+               dh_testroot
+               rm -rf build check
+               rm -f debian/blas-atlas.pc debian/lapack-atlas.pc
+               rm -f configure-stamp build-stamp
+               rm -f TexDoc/*.pdf
+               [ ! -f Makefile ] || $(MAKE) distclean
+.PHONY: clean-work
+
+common-install-arch common-install-indep::
+               dh_testdir
+               dh_testroot
+
+               set -e;                                                                                                 \
+               targetName=`echo $(ARCHS)|sed -e "s|\(.*\)_.*_.*|atlas-\1|g"`; \
+               cd build/$$targetName;                                                                  \
+               echo "make install of $$targetName to $(DEB_DESTDIR)";  \
+               $(MAKE) DESTDIR=$(DEB_DESTDIR) install;                                 \
+               echo "=============================================";   \
+               cd -
+
+install/libatlas-dev::
+       if test -d $(CURDIR)/debian/libatlas-dev/usr/include/; then \
+               rm -rf $(CURDIR)/debian/libatlas-dev/usr/include/;  \
+       fi
+       mkdir -p $(CURDIR)/debian/libatlas-dev/usr/include/
+       mv $(CURDIR)/debian/tmp/usr/include/*.h $(CURDIR)/debian/tmp/usr/include/atlas/
+       mv $(CURDIR)/debian/tmp/usr/include/atlas $(CURDIR)/debian/libatlas-dev/usr/include/
+
+install/libatlas-doc::
+       if test "$(ARCHS)" != "base__"; then \
+               mkdir -p $(CURDIR)/debian/libatlas-doc/usr/share/doc/libatlas-doc/; \
+               cp -R $(CURDIR)/doc/* $(CURDIR)/TexDoc/*.pdf $(CURDIR)/debian/libatlas-doc/usr/share/doc/libatlas-doc/; \
+               rm $(CURDIR)/debian/libatlas-doc/usr/share/doc/libatlas-doc/ChangeLog; \
+       fi
+
+# 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.
+binary-predeb/libatlas3-base::
+       cp debian/libatlas3-base.shlibs debian/libatlas3-base/DEBIAN/shlibs
+
+get-orig-source:
+       -uscan --upstream-version 0
diff --git a/source/format b/source/format
new file mode 100644 (file)
index 0000000..163aaf8
--- /dev/null
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/source/include-binaries b/source/include-binaries
new file mode 100644 (file)
index 0000000..1f592ff
--- /dev/null
@@ -0,0 +1,11 @@
+debian/archdefs/amd64/x86SSE264SSE2.tar.bz2
+debian/archdefs/arm/GENERIC32.tar.bz2
+debian/archdefs/arm/ARMa732.tar.bz2
+debian/archdefs/arm64/GENERIC64.tar.bz2
+debian/archdefs/i386/x86x8732.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/ppc64el/POWER864LE.tar.bz2
+debian/archdefs/s390x/IBMz964.tar.bz2
diff --git a/watch b/watch
new file mode 100644 (file)
index 0000000..4b7ac1f
--- /dev/null
+++ b/watch
@@ -0,0 +1,3 @@
+version=3
+http://sf.net/math-atlas/atlas(\d.*)\.tar\.bz2 debian debian/orig-tar.sh
+