From: Sébastien Villemot Date: Sat, 6 Aug 2016 18:27:27 +0000 (+0000) Subject: Import atlas_3.10.3-1.debian.tar.xz X-Git-Tag: archive/raspbian/3.10.3-3+rpi1~2^2~17^2 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=7b3e346c03bc52179211115dbdda041e45915294;p=atlas.git Import atlas_3.10.3-1.debian.tar.xz [dgit import tarball atlas 3.10.3-1 atlas_3.10.3-1.debian.tar.xz] --- 7b3e346c03bc52179211115dbdda041e45915294 diff --git a/NEWS.Debian b/NEWS.Debian new file mode 100644 index 0000000..b18b2d4 --- /dev/null +++ b/NEWS.Debian @@ -0,0 +1,19 @@ +atlas (3.8.3-25) unstable; urgency=low + + Before version 3.8.3-25, optimized binary packages were provided. + However, due to the fact that most Atlas optimisation are done at build + time, it has been decided to remove them and give priority to locally built + packages. + See README.Debian on how to rebuild Atlas optimized packages. + + -- Sylvestre Ledru Wed, 25 Aug 2010 21:42:25 +0200 + +atlas (3.8.3-18) experimental; urgency=low + + * Since Atlas 3.8.3-10, it is trivial to switch between the various Atlas + optimized version. + More information are available here: + http://wiki.debian.org/DebianScience/LinearAlgebraLibraries + + -- Sylvestre Ledru Thu, 25 Mar 2010 23:39:26 +0100 + diff --git a/README.Debian b/README.Debian new file mode 100644 index 0000000..eeda5a2 --- /dev/null +++ b/README.Debian @@ -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 , Fri, 7 Jun 2013 12:07:33 +0200 + -- Sylvestre Ledru , Tue, 15 May 2012 18:05:34 +0200 diff --git a/README.source b/README.source new file mode 100644 index 0000000..c7868c5 --- /dev/null +++ b/README.source @@ -0,0 +1,46 @@ +Recreating upstream tarball +=========================== + +atlas*.tar.gz is modified from upstream. + +*.pdf are removed from the tarball and the TexDoc directory from the CVS +AtlasBase module is included. + + +Tuning of the library +===================== + +The ATLAS build system, before creating the binaries, first performs a very +long series of timing tests in order to tune the library to the precise CPU on +which it is built. + +However, this process sometimes fails because reliable timings cannot be +obtained. In that case, the build log will contain the following near the end: +"VARIATION EXCEEDS TOLERANCE, RERUN WITH HIGHER REPS". The solution is simply +to run the build again [1]. + +This situation is not convenient for build daemons, because it means that for +every new source package, it is necessary to ask for several give backs before +getting the package compiled on all arches. + +In order to overcome this problem, the generic ATLAS package uses pre-computed +timings (called architectural defaults in the ATLAS jargon). These are located +under debian/archdefs/$(DEB_HOST_ARCH_CPU). The name of the tarballs +corresponds to the architecture detected by ATLAS (variable ARCH in +build/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 , Sat, 25 Oct 2014 19:12:20 +0200 + diff --git a/TODO b/TODO new file mode 100644 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 index 0000000..ad94c7b --- /dev/null +++ b/archdefs/README @@ -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 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 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 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 index 0000000..9dfa6e0 Binary files /dev/null and b/archdefs/arm64/GENERIC64.tar.bz2 differ diff --git a/archdefs/i386/x86x8732.tar.bz2 b/archdefs/i386/x86x8732.tar.bz2 new file mode 100644 index 0000000..554c778 Binary files /dev/null and b/archdefs/i386/x86x8732.tar.bz2 differ diff --git a/archdefs/mips/GENERIC32.tar.bz2 b/archdefs/mips/GENERIC32.tar.bz2 new file mode 100644 index 0000000..d6997ca Binary files /dev/null and b/archdefs/mips/GENERIC32.tar.bz2 differ diff --git a/archdefs/mips64el/GENERIC64.tar.bz2 b/archdefs/mips64el/GENERIC64.tar.bz2 new file mode 100644 index 0000000..ef45e33 Binary files /dev/null and b/archdefs/mips64el/GENERIC64.tar.bz2 differ diff --git a/archdefs/mipsel/GENERIC32.tar.bz2 b/archdefs/mipsel/GENERIC32.tar.bz2 new file mode 100644 index 0000000..bfb2eb0 Binary files /dev/null and b/archdefs/mipsel/GENERIC32.tar.bz2 differ diff --git a/archdefs/powerpc/GENERIC32.tar.bz2 b/archdefs/powerpc/GENERIC32.tar.bz2 new file mode 100644 index 0000000..dd53459 Binary files /dev/null and b/archdefs/powerpc/GENERIC32.tar.bz2 differ diff --git a/archdefs/ppc64el/POWER864LE.tar.bz2 b/archdefs/ppc64el/POWER864LE.tar.bz2 new file mode 100644 index 0000000..e23c438 Binary files /dev/null and b/archdefs/ppc64el/POWER864LE.tar.bz2 differ diff --git a/archdefs/s390x/IBMz964.tar.bz2 b/archdefs/s390x/IBMz964.tar.bz2 new file mode 100644 index 0000000..6136ce2 Binary files /dev/null and b/archdefs/s390x/IBMz964.tar.bz2 differ diff --git a/blas-atlas.pc.in b/blas-atlas.pc.in new file mode 100644 index 0000000..3cb9d3b --- /dev/null +++ b/blas-atlas.pc.in @@ -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 index 0000000..6c88d31 --- /dev/null +++ b/changelog @@ -0,0 +1,1550 @@ +atlas (3.10.3-1) unstable; urgency=low + + [ Sébastien Villemot ] + * Imported Upstream version 3.10.3. (Closes: #833139) + * Drop d/p/cpu-throttling-check.diff, no longer needed. + Replace it with new --cripple-atlas-performance option. + * Drop d/p/ppc64el-new-archdef-name.patch, applied upstream. + * Drop d/p/armhf.diff, no longer needed. + * d/rules: update architecture/ISA names/enums. + * Update archdefs for ppc64el, arm64 and armhf. + * d/control: + + drop useless Section field for binary package libatlas-test. + + bump Standards-Version to 3.9.8, no changes needed. + + use secure URLs for Vcs-* fields. + * Improve shell syntax in preinst scripts. + Thanks to Wolfgang Karall-Ahlborn (Closes: #805406) + + [ Dimitri John Ledkov ] + * d/rules: on ppc64el set ARCHES to POWER8. + + -- Sébastien Villemot Sat, 06 Aug 2016 20:27:27 +0200 + +atlas (3.10.2-9) unstable; urgency=medium + + [ Sébastien Villemot ] + * d/p/powerpc-dcbt.patch: new patch. + Fixes FTBFS on powerpc with recent binutils. + + [ Aurelien Jarno ] + * Add archdef for mips64el. (Closes: #804577) + + -- Sébastien Villemot Mon, 23 Nov 2015 19:21:55 +0100 + +atlas (3.10.2-8) unstable; urgency=medium + + * Remove transitional package libatlas3gf-base. + * Remove archdef for sparc. + * Mark libatlas-dev as arch:any. + It contains generated header files that can differ across architectures. + * Remove a few obsolete Suggests/Recommends/Conflicts. + + -- Sébastien Villemot Fri, 06 Nov 2015 18:54:00 +0100 + +atlas (3.10.2-7) unstable; urgency=medium + + [ Andreas Beckmann ] + * libatlas-base-dev.preinst: Cleanup obsolete alternatives dating back to + lenny. (Closes: #776089) + + -- Sébastien Villemot Sat, 24 Jan 2015 23:06:27 +0100 + +atlas (3.10.2-6) unstable; urgency=medium + + * Add missing files in archdef for mips. + More precisely, add missing GENERIC32/lapack/gcc/atlas_{c,z}GetNB_geqrf.h in + debian/archdef/mips/GENERIC32.tar.bz2. The absence of these files was making + the compilation insanely long on some buildds, causing FTBFS by timeout. + (Closes: #770379) + + -- Sébastien Villemot Sat, 22 Nov 2014 13:37:44 +0100 + +atlas (3.10.2-5) unstable; urgency=medium + + * Add archdef for arm64. Drastically diminishes build time, and avoids random + FTBFS. (Closes: #763805) + * Add ppc64el support. + - New patches (thanks, Michael Normand et al). + + ppc64el-abiv2.patch + + ppc64el-ifdef-files-with-lvx.patch + + ppc64el-new-archdef-name.patch + - debian/archdefs/ppc64el/GENERIC64LE.tar.bz2: add archdefs/timings. + - debian/archdefs/README: updated accordingly. + Thanks to Mauricio Faria de Oliveira for putting this together. + (Closes: #766695) + * Fix paths in debian/README.source. + + -- Sébastien Villemot Sat, 15 Nov 2014 13:53:31 +0100 + +atlas (3.10.2-4) unstable; urgency=medium + + [ Alastair McKinstry ] + * Add pkg-config file atlas-blas.pc and atlas-lapack.pc alias via + update-alternatives. + + -- Sébastien Villemot Wed, 15 Oct 2014 21:35:39 +0200 + +atlas (3.10.2-3) unstable; urgency=medium + + * libatlas3-base: add dependency on libblas-common. + The goal is to make BLAS implementations multi-arch safe by preventing the + co-installability of, say, libblas3:amd64 and libatlas3-base:i386. See + * Drop obsolete note in libatlas3-base package description about former + optimized packages. + * Bump Standards-Version to 3.9.6, no changes needed. + + -- Sébastien Villemot Sat, 27 Sep 2014 20:24:41 +0200 + +atlas (3.10.2-2) unstable; urgency=medium + + * shared_libraries.diff: no longer include ATLAS-specific symbols in + libblas.so and liblapack.so. Rather dynamically link those libraries with + libatlas.so. This makes it possible to use liblapack.so from ATLAS with a + libblas.so coming from somewhere else. Thanks to Guillem Jover for + suggesting this solution. (Closes: #576972) + * Revert back to a higher priority in the LAPACK alternatives. + The priority had been lowered in 3.8.4-8 in order to minimize the incidence + of #576972, so this is no longer needed. + + -- Sébastien Villemot Tue, 05 Aug 2014 18:13:33 +0200 + +atlas (3.10.2-1) unstable; urgency=medium + + * Imported Upstream version 3.10.2 + * fix-non-threaded-build.diff: remove patch, fixed upstream. + * debian/rules: update to reflect numbering change for architectures. + * Remove Sylvestre Ledru from Uploaders. Thanks Sylvestre for your work! + * Remove architectural defaults for obsolete ia64 arch. + * Drop obsolete code in maintainer scripts to deal with the transitions + libblas.so.3gf => libblas.so.3 and liblapack.so.3gf => liblapack.so.3. + * Improvement to debian/orig-tar.sh: save CVS download time. + * Remove duplicate changelog in libatlas-doc. + + -- Sébastien Villemot Sat, 12 Jul 2014 13:40:15 +0200 + +atlas (3.10.1-4) unstable; urgency=medium + + * libatlas3gf-base: update long description to suppress lintian warning. + * Remove architectural defaults for obsolete s390 arch. + * Use the new GENERIC arch name for powerpc, instead of POWER3. + Hopefully that will fix the FTBFS on powerpc. + + -- Sébastien Villemot Mon, 03 Feb 2014 18:16:51 +0000 + +atlas (3.10.1-3) unstable; urgency=medium + + * libatlas-base-dev now provides liblapack.so. + * Remove unused libatlas-3.so, libatlas-3gf.so and libatlas.so.* virtual + packages. + * Rewrite logic in libatlas3-base.postinst. (Closes: #719142) + * Disable autodetection of machine type on archs for which ATLAS does not + provide generic-enough architectural defaults. This is achieved by creating + a GENERIC machine type (see generic.diff). In particular, this ensures that + the package created on an armel buildd with an ARMv7 will be generic. + (Closes: #719355) + * Register documentation to doc-base. + * Bump Standards-Version to 3.9.5, no changes needed. + + -- Sébastien Villemot Wed, 29 Jan 2014 19:23:08 +0100 + +atlas (3.10.1-2) unstable; urgency=low + + * Allow the generic package to build on machines with CPU throttling + enabled. Otherwise the package FTBFS on some buildds (e.g. biber). + Implementation is done by reactivating the "-Si cputhrchk 0" flag + (cpu-throtthling-check.diff), and using it in debian/rules. + * Add architectural defaults for armel and mips. + * armhf.diff: do not enforce 32-registers FPU for Fortran + + -- Sébastien Villemot Sat, 27 Jul 2013 14:26:05 +0200 + +atlas (3.10.1-1) experimental; urgency=low + + [ Sylvestre Ledru ] + * New upstream release (Closes: #609287) + + [ Sébastien Villemot ] + * Provide architectural defaults (i.e. precomputed timings) for all + release archs (except armel and mips for the time being, due to slow + porterboxes). This will make the package build much faster and should + eliminate transient build failures due to excessive variance in the + timings. + * Move symlinks for lib{cblas,f77blas,atlas,lapack_atlas} out of the + libblas.so.3 alternative and make them always present, so that + software relying on these libs do not break when another alternative + is selected for BLAS + * ATLAS now has improved ARM support with native asm constructs. This required + the following tunes: + + armel-is-v4t.diff: new patch, prevents FTBFS on armel; otherwise, + ATLAS uses asm constructs too recent for the platform (armel is only v4t) + + debian/rules: on armhf, define the ATL_ARM_HARDFP flag; otherwise the asm + constructs use the soft-float ABI for passing floating points + + on armhf, ensure that -mfloat-abi=softfp and -mcpu=vfpv3 flags are never + used; this is implemented via a patch (armhf.diff) and by the use of fixed + archdefs + * The generic package is now built without multi-threading, because otherwise + the package fails to build on some single-processor machines (this required + the introduction of a patch: fix-non-threaded-build.diff). As a side effect, + the build of the custom package gracefully handles non-threaded + builds. (Closes: #602524) + * Add libblas.a as slave in the libblas.so alternative (Closes: #701921) + * Add symlinks for lib{f77blas,atlas}.a in /usr/lib (Closes: #666203) + * Modify shlibs file of libatlas3-base, such that packages using + libblas/liblapack depend on any BLAS/LAPACK alternative, while packages + depending on ATLAS-specific libraries (e.g. libatlas.so) depend specifically + on libatlas3-base. + * corei1.diff: remove patch, applied upstream + * Use my @debian.org email address + * Remove obsolete DM-Upload-Allowed flag + * Switch VCS to git + * Remove Conflicts/Replaces against pre-squeeze packages + * libatlas-base-dev now provides libblas.so, as libblas-dev + * No longer use -Wa,--noexecstack in CFLAGS, it makes the package FTBFS + * Do not use POWER3 arch for powerpcspe port (Closes: #701068) + * Bump to debhelper compat level 9 + * README.Debian: mention that devscripts is needed to compile the custom + package (Closes: #697431) + * Bump Standards-Version to 3.9.4. As a consequence, add Built-Using + fields because the package embeds stuff from liblapack-pic + + -- Sébastien Villemot Tue, 11 Jun 2013 15:58:16 +0200 + +atlas (3.8.4-9.1) unstable; urgency=low + + * Non-maintainer upload. + * libatlas3gf-base: Add Breaks: octave3.2 (Closes: #706328) + This fixes some upgrade paths by removing the obsolete octave3.2 (and its + triggers) a bit earlier. This is a workaround for dpkg bug #671711: dpkg + may run trigger processing for a package even if its dependencies are not + satisfied. The octave3.2 triggers may be run in such a state (with + liblapack* and libblas* unpacked but unconfigured, therefore the + alternatives may not be setup or dangling) and will fail, aborting the + upgrade, even if octave3.2 would be removed later anyway. + Similar Breaks exist in libblas3 and libarpack2 to cover more incarnations + of this bug. + + -- Andreas Beckmann Sun, 28 Apr 2013 22:25:26 +0200 + +atlas (3.8.4-9) unstable; urgency=low + + [ Sébastien Villemot ] + * libatlas-test: put in devel/extra, to reflect override + * Force generic PPC CPU when building a non-custom package on a PPC arch + (Closes: #680096) + + [ Sylvestre Ledru ] + * Use series for list the patches + * Patches refreshed + + -- Sébastien Villemot Sat, 04 Aug 2012 11:56:20 +0000 + +atlas (3.8.4-8) unstable; urgency=low + + * libatlas3-base.prerm, libatlas3gf-base.prerm: avoid crash if libblas.so.3gf + or liblapack.so.3gf already deleted + * Add 3gf compat symlinks for libcblas, libf77blas and liblapack_atlas + (to avoid breakage of some reverse deps) + * In the LAPACK alternatives, use a lower priority than Netlib (in order to + minimize the incidence of #576972) + * Update and clean-up README.Debian + * Mention known build failures in README.source + * libatlas3gf-base transitional package: + + move to section oldlibs + + mark as arch:all + * Add myself to Uploaders + * Set DM-Upload-Allowed to yes + + -- Sébastien Villemot Sun, 24 Jun 2012 15:36:49 +0000 + +atlas (3.8.4-7) unstable; urgency=low + + * Force generic x86 CPU when building a non-custom package on an x86 arch + (Closes: #676885) + * Force 2 threads when not building a custom package (as was the case up + to and including 3.8.3-30) + * Fix detection of some Intel Core i1 CPUs (corei1.diff) + + -- Sébastien Villemot Wed, 13 Jun 2012 16:33:20 +0200 + +atlas (3.8.4-6) unstable; urgency=low + + * Yet an other stupid bug... + Merci à Rafael Laboissiere (Closes: #676614) + + -- Sylvestre Ledru Fri, 08 Jun 2012 20:16:49 +0200 + +atlas (3.8.4-5) unstable; urgency=low + + * Bring back slave alternative for liblapack.so.3gf. + Merci à Sébastien Villemot (Closes: #676495) + + -- Sylvestre Ledru Thu, 07 Jun 2012 13:02:23 +0200 + +atlas (3.8.4-4) unstable; urgency=low + + * Upload in unstable (Closes: #673357) + + -- Sylvestre Ledru Sat, 02 Jun 2012 17:33:13 +0200 + +atlas (3.8.4-4~exp9) experimental; urgency=low + + * Drop the old conflict on libblas-3.so + + -- Sylvestre Ledru Thu, 31 May 2012 19:55:12 +0200 + +atlas (3.8.4-4~exp8) experimental; urgency=low + + * Replaces and Breaks updated against the right versions of other impacted + packages + * Force the right version to build against liblapack-dev and libblas-dev + * Add a missing conflict + + -- Sylvestre Ledru Tue, 22 May 2012 14:32:20 +0200 + +atlas (3.8.4-4~exp7) experimental; urgency=low + + * Fix a mixed between postinst & preinst (Closes: #643767) + + -- Sylvestre Ledru Sun, 20 May 2012 17:21:33 +0200 + +atlas (3.8.4-4~exp6) experimental; urgency=low + + * Moved removal from postinst to preinst + + -- Sylvestre Ledru Fri, 18 May 2012 16:06:24 +0200 + +atlas (3.8.4-4~exp5) experimental; urgency=low + + * libblas and liblapack were not correctly named causing upgrades to fails. + (Closes: #643767) + * Update the README.Debian and TODO regarding recent changes + + -- Sylvestre Ledru Tue, 15 May 2012 18:06:16 +0200 + +atlas (3.8.4-4~exp4) experimental; urgency=low + + * Remove libblas.so.3gf liblapack.so.3gf references before the install + * Fix a typo in the CPU freq (Closes: #672783) + + -- Sylvestre Ledru Fri, 18 May 2012 16:06:16 +0200 + +atlas (3.8.4-4~exp3) experimental; urgency=low + + * Update standards version to version 3.9.3 + + -- Sylvestre Ledru Tue, 10 Apr 2012 22:01:50 +0200 + +atlas (3.8.4-4~exp2) experimental; urgency=low + + * Join modifications with blas, lapack, atlas and openblas. + Declare the replacements of all *3gf blas & lapack implementation + (See bug #660607) + * postinst-has-useless-call-to-ldconfig & postrm-has-useless-call-to-ldconfig + fixed + * copyright-refers-to-deprecated-bsd-license-file fixed + * libatlas3gf-base is now a transitional package to libatlas3-base + * Fix a FTBFS under sh4. Thanks to Nobuhiro Iwamatsu for the patch + (Closes: #605650) + + -- Sylvestre Ledru Mon, 20 Feb 2012 18:58:04 +0100 + +atlas (3.8.4-4~exp1) experimental; urgency=low + + * Rename libblas3gf package => libblas3 + * Rename libblas.so.3gf => libblas.so.3 + + -- Sylvestre Ledru Sun, 04 Sep 2011 14:47:41 +0200 + +atlas (3.8.4-3) unstable; urgency=low + + * Revert change about devscripts being in the build-dep (see bug #628104) + * Fix an error about missing tests when building custom package + (Closes: #629528) + * Fix an error about the pdf which cannot be found when building custom + package. + + -- Sylvestre Ledru Tue, 07 Jun 2011 20:56:49 +0200 + +atlas (3.8.4-2) unstable; urgency=low + + * Fix the FTBFS under kfreebsd (kfreebsd.diff) (Closes: #628424) + * Update of the README.Ddebian with more information + * devscripts added into the build-dep of atlas (Closes: #628104) + + -- Sylvestre Ledru Mon, 30 May 2011 23:58:17 +0200 + +atlas (3.8.4-1) unstable; urgency=low + + * New upstream release + * force -j 1 of make removed (hopefully fixes the FTBFS) + * -Si cputhrchk 0 removed + * Standards-Version updated to version 3.9.2 + * Switch to dpkg-source 3.0 (quilt) format + + -- Sylvestre Ledru Mon, 16 May 2011 13:52:42 +0200 + +atlas (3.8.3-30) unstable; urgency=low + + * Update of the README.Debian (typos, old stuff, etc) + * Some clean up and simplification of debian/rules + (removed rules to build preoptimized packages) + * Remove Recommends on libblas3gf when installing libatlas + * Drop control.in (was used when we were build pre-optimized packages) + + -- Sylvestre Ledru Sat, 19 Mar 2011 09:47:02 +0100 + +atlas (3.8.3-29) unstable; urgency=low + + [ Simon McVittie ] + * Run 'make check' and 'make ptcheck' to build the tests, then install them + in libatlas-test (Closes: #588418) + + -- Sylvestre Ledru Tue, 23 Nov 2010 22:55:34 +0100 + +atlas (3.8.3-28) unstable; urgency=low + + * Support of sh4. Thanks to Nobuhiro Iwamatsu. (Closes: #595896) + * Fix a typo in the README.Debian. Thanks to Jan Medlock. (Closes: #595981) + * Clean up of the old .install, postinst & prerm files + + -- Sylvestre Ledru Wed, 27 Oct 2010 21:05:48 +0200 + +atlas (3.8.3-27) unstable; urgency=low + + * Fix a build issue with 64 archs. This issue has been introduced by upload + 3.8.3-25 + + -- Sylvestre Ledru Sun, 05 Sep 2010 13:06:51 +0200 + +atlas (3.8.3-26) unstable; urgency=low + + * Fix a bug on localized system. For example, the custom build failed on a + russian (ru_RU) system. Thanks to Damir Islamov for providing the fix. + * Provide more information on how to rebuild custom packages in + README.Debian + * Provide multithreaded Atlas libraries by default. Many thanks to + Dirk Eddelbuettel for the patch. (Closes: #595326) + * Standards-Version updated to version 3.9.1 + + -- Sylvestre Ledru Sat, 04 Sep 2010 00:46:03 +0200 + +atlas (3.8.3-25) unstable; urgency=low + + * Drop all optimized packages. + Before version 3.8.3-25, optimized binary packages were provided. + However, due to the fact that most Atlas optimisation are done at build + time, it has been decided to remove them and give priority to locally built + packages. + See README.Debian on how to rebuild Atlas optimized packages. + * Force the number of threads to 2 + + -- Sylvestre Ledru Wed, 25 Aug 2010 21:14:57 +0200 + +atlas (3.8.3-24) unstable; urgency=low + + [ Denis Barbier ] + * Build system should stop on the first error (Closes: #581620). + * Update of the vcs metadata + + -- Sylvestre Ledru Wed, 07 Jul 2010 08:39:08 +0200 + +atlas (3.8.3-23) unstable; urgency=low + + * Disable parallel build. This might be the cause of FTBFS. + (Closes: #581620, #581621, #584366) + + -- Sylvestre Ledru Tue, 06 Jul 2010 11:38:55 +0200 + +atlas (3.8.3-22) unstable; urgency=low + + * sse3 & core2sse3 packages removed for hurd + * Fix a build issue under mips & mipsel (patch 21_mips2.diff) + * Fix a custom build issue. Thanks to Adrian Benson for the patch + (Closes: #576987, #579990) + + -- Sylvestre Ledru Tue, 11 May 2010 11:39:10 +0200 + +atlas (3.8.3-21) unstable; urgency=low + + * Maintainer changed to the Debian Science Team + * Simplification of the s390 detection + * armel detection added (Closes: #243447, #355355) + * Revert the sse and sse2 for ia64 (introduced in 3.8.3-18) since these + extensions do not exist on this CPU. + + -- Sylvestre Ledru Thu, 29 Apr 2010 18:03:14 +0200 + +atlas (3.8.3-20) unstable; urgency=low + + * Fix a problem on the custom build (Closes: #576755) + * Some patches renamed to make sure of their order + * Fix a FTBFS under mips, hppa & alpha (Closes: #576891) + * Add conflicts on libblas{-dev} (<1.2-5) and liblapack{-dev} (<3.2.1-4) + to make sure that the update-alternatives mecanism can be used + (Closes: #576855) + * Fix a priority with 2.0 packages + + -- Sylvestre Ledru Thu, 08 Apr 2010 17:51:05 +0200 + +atlas (3.8.3-19) unstable; urgency=low + + * Upload to unstable (Closes: #536686, #561299, #521056, #569397, #571108 + #344091, #450692, #517826, #571108, #504586, #552464, #524459) + (LP: #458202, #376739, #406520, #505339, #523365, #363510) + + -- Sylvestre Ledru Sun, 28 Mar 2010 01:05:53 +0100 + +atlas (3.8.3-18) experimental; urgency=low + + * Youpi, it is working! + * Fix a build error with ia64. It also deserves sse & sse2 packages. + Could not find if sse3 is well supported for such arch. + * NEWS.Debian added + * README.Debian added with "how to switch between blas/lapack + implementation" + * Probably the last upload in experimental before unstable. + + -- Sylvestre Ledru Thu, 25 Mar 2010 23:39:26 +0100 + +atlas (3.8.3-17) experimental; urgency=low + + * Was it failing because I removed this stupid target ?! + + -- Sylvestre Ledru Wed, 24 Mar 2010 08:44:01 +0100 + +atlas (3.8.3-16) experimental; urgency=low + + * Put back randomCrashOnBuild.diff. It was not the reason + * Disable modification introduced in 3.8.3-14 about DEB_SHLIBDEPS_INCLUDE + and put back LD_LIBRARY_PATH=$(CURDIR)/debian/tmp/usr/lib/atlas-base/ + (Closes: #574999) + + -- Sylvestre Ledru Tue, 23 Mar 2010 15:11:12 +0100 + +atlas (3.8.3-15) experimental; urgency=low + + * randomCrashOnBuild.diff was crashing many builds + + -- Sylvestre Ledru Mon, 22 Mar 2010 16:18:59 +0000 + +atlas (3.8.3-14) experimental; urgency=low + + * Might fix the random compilation bug. Thanks to R. Clint Whaley (upstream) + for the fix (randomCrashOnBuild.diff) + * Fix a useless dep on libatlas3gf-base from all optimized packages + (not necessary) + * Explicit link against -lpthread added + + -- Sylvestre Ledru Sat, 20 Mar 2010 10:16:38 +0100 + +atlas (3.8.3-13) experimental; urgency=low + + * Support of hurd (hurd.diff) + + -- Sylvestre Ledru Wed, 10 Mar 2010 13:16:42 +0100 + +atlas (3.8.3-12) experimental; urgency=low + + * Don't make the assumption that /proc/cpuinfo is available everywhere. + Should fix the build issue on hurd-i386 + + -- Sylvestre Ledru Sun, 07 Mar 2010 12:14:38 +0100 + +atlas (3.8.3-11) experimental; urgency=low + + * Explicit link against lgfortran & libgcc_s + * Old useless / non sense conflicts removed + + -- Sylvestre Ledru Sat, 06 Mar 2010 00:29:33 +0100 + +atlas (3.8.3-10) experimental; urgency=low + + * postinst & prerm added for each packages to manage update-alternatives + See: http://wiki.debian.org/DebianScience/LinearAlgebraLibraries + * Now, custom built version of Atlas has now incrementing version number + Thanks to Adrian Benson for the idea and the implementation + * Check that CPU frequencies are correctly set. Thanks to Adrian Benson. + (Closes: #571322) + * Some old Conflicts: removed + * Vcs-Browser & Vcs-Svn updated (packaged moved to Debian Science) + * Maintainer updated + * Standards-Version updated to version 3.8.4 + + -- Sylvestre Ledru Tue, 02 Mar 2010 19:48:55 +0100 + +atlas (3.8.3-9) experimental; urgency=low + + * Fixes kfreebsd* build error (melf.diff added) + * Standards-Version updated to version 3.8.4 + * -lc added back. The problem was due to -melf_i386 which was failing + under kfreebsd. (10_remove-lc.diff removed) + + -- Sylvestre Ledru Sun, 14 Feb 2010 12:07:56 +0100 + +atlas (3.8.3-8) experimental; urgency=low + + * README.Debian updated with the information relative to ld.so.conf.d/ + * if Make.inc cannot be found after the configure, fail debian/rules + * Port on s390 + * Patch check-exists.diff added to avoid error when rebuilding + * Do not perform the check of CPU extensions under kfreebsd-i386 + (Closes: #565852) + * -lc removed from build process which was failing under kfreebsd-amd64 + (Closes: #566942) + + -- Sylvestre Ledru Wed, 10 Feb 2010 16:39:09 +0100 + +atlas (3.8.3-7) experimental; urgency=low + + * Bad dependencies libatlas3gf-{sse,sse2,sse3,core2sse3} depend on + libatlas3gf-base. (Closes: #551689) + + -- Sylvestre Ledru Thu, 26 Nov 2009 12:02:23 +0100 + +atlas (3.8.3-6) experimental; urgency=low + + * Fix a bad typo in the libatlas3-amd64sse3-dev package. + Thanks to Ryo IGARASHI for spotting it (Closes: #555301) + * libatlas3gf-core2sse3 package declaration was missing in debian/control + Thanks to Ryo IGARASHI for spotting it (Closes: #551689) + * Ondrej has been removed from uploaders (since 3.8.3-1) (Closes: #550412) + + -- Sylvestre Ledru Mon, 09 Nov 2009 11:37:09 +0100 + +atlas (3.8.3-5) experimental; urgency=low + + * Add (= ${binary:Version}) on -dev packages + (Lintian: weak-library-dev-dependency) + + -- Sylvestre Ledru Mon, 26 Oct 2009 06:52:05 +0100 + +atlas (3.8.3-4) experimental; urgency=low + + * Fix some descriptions issues + * libatlas3gf-amd64sse3-dev and libatlas-corei7sse3-dev erroneously depend + on libatlas-core2sse3. Thanks to Adrian Benson to point out this silly + issue (Closes: #551689) + + -- Sylvestre Ledru Sat, 24 Oct 2009 22:44:30 +0200 + +atlas (3.8.3-3) experimental; urgency=low + + * Missing dependency against ghostscript (Closes: #548646) + * cblas.h & catlas.h are now installed into /usr/include/atlas + (Closes: #432860, #481217, #548539) + + -- Sylvestre Ledru Sun, 27 Sep 2009 23:51:49 +0200 + +atlas (3.8.3-2) experimental; urgency=low + + * Improve CPU extension check + + -- Sylvestre Ledru Sat, 26 Sep 2009 02:39:07 +0200 + +atlas (3.8.3-1) experimental; urgency=low + + * New upstream version (Closes: #382880) + * debian/rules rewritten from scratch + * Provides more documentation in the libatlas-doc packages + * debian/copyright updated + * Add myself to the uploader + * Vcs-Browser & Vcs-Svn added + * packages libatlas-3dnow-dev & libatlas3gf-3dnow obsoletes + * packages libatlas-sse3-dev and libatlas3-sse3 added + * libatlas-headers renamed to libatlas-dev + * libatlas-dev is now in section libdevel + * fakeroot debian/rules custom will generated a package called + ../libatlas3gf-base_*.deb which will contain an optimized version of + Atlas just for the current arch. + * README.Debian updated to reflect the different changes + * README.source added to explain where sources of the PDF are + * Standards-Version updated to 3.8.3 + * compat updated to version 7 + * Camm & Ondrej removed as uploaders + * Use of David Cournapeau's patches (many thanks for this great work) + * Change of my email address since I am now DD + + -- Sylvestre Ledru Thu, 17 Sep 2009 23:31:54 +0200 + +atlas (3.6.0-23) unstable; urgency=low + + * Split patches out of the diff.gz and integrated them as dpatch patches. + * Removing debian/used_lapack_version in clean + * Use the changelog from liblapack-dev to find the current lapack version as + we don't build-depend on the lapack3 package. + + [ Sylvestre Ledru ] + * Watch file updated + * Standards-Version changed to 3.8.0 + * Copyright file updated + * Some "set -e" were missing + + -- Bernd Zeimetz Thu, 16 Oct 2008 11:55:46 +0200 + +atlas (3.6.0-22) unstable; urgency=low + + [ Bernd Zeimetz ] + * Maintainer changed to Debian Scientific Computing Team, adding Camm + Maguire and Ondrej Certik as Uploaders. + * Acknowledging the previous NMUs, thanks for taking care of the package! + * DM-Upload-Allowed: yes field added + * Fixing FTBFS error due to inlining the same function several times. Thanks + to Matt Kraai for the patch (Closes: #486974). + + -- Ondrej Certik Mon, 11 Aug 2008 21:41:25 +0200 + +atlas (3.6.0-21.5) unstable; urgency=low + + * Non-maintainer upload to fix cruft I introduced in previous NMU. + * Remove debian/po/OLD and debian/po/NEW + + -- Christian Perrier Sun, 11 May 2008 10:17:38 +0200 + +atlas (3.6.0-21.4) unstable; urgency=low + + * Non-maintainer upload to fix pending l10n issues and FTBFS. + + [ Christian Perrier ] + * debian/*.templates, debian/po/*.po: Fix name of packages in last + sentence of the debconf templates and in the translations + Closes: #372366 + * Add new debconf translations: + - Japanese, thanks TANAKA Atushi + - Spanish, thanks Felipe Caminos + - Finnish, thanks Esko Arajärvi + - Galician. Closes: #472589 + * Update Vietnamese debconf translation, thanks Clytie Siddall + * debian/po/POTFILES.in: Changed atlas3 into libatlas3gf + * [Lintian] Use Homepage: field in debian/control + * [Lintian] Put -dev packages in section libdevel + + [ Matthias Klose ] + * Don't build with -mlongcall on powerpc, fixes build failure. + + -- Christian Perrier Tue, 25 Mar 2008 18:22:19 +0100 + +atlas (3.6.0-21.3) unstable; urgency=low + + * Link using gfortran instead of gcc. + * Build-depend on gfortran. + + -- Matthias Klose Tue, 05 Feb 2008 03:46:01 +0100 + +atlas (3.6.0-21.2) unstable; urgency=low + + * Upload to unstable. + + -- Matthias Klose Sun, 03 Feb 2008 01:03:27 +0000 + +atlas (3.6.0-21.1) experimental; urgency=low + + * Build using gfortran-4.3/gcc-4.3. + * debian/*.files: Add new library sonames. + * debian/fixshlibs*: Use new 'gf' names. + * tune/blas/gemm/CASES/*cases.flg: Remove absolute path for gcc binary. + + -- Matthias Klose Sun, 20 Jan 2008 03:01:00 +0100 + +atlas (3.6.0-21) unstable; urgency=low + + * gfortran transition + + -- Camm Maguire Thu, 08 Nov 2007 11:53:06 -0500 + +atlas3 (3.6.0-20.6) unstable; urgency=high + + * Non-maintainer upload. + * High-urgency upload for RC bugfix. + * Use prefetchnta instead of prefetchw in the SSE2 code, for compatibility + with EM64T systems. Closes: #393870. + + -- Steve Langasek Sun, 18 Feb 2007 03:01:31 -0800 + +atlas3 (3.6.0-20.5) unstable; urgency=low + + * Non-maintainer upload. + * Support GNU/kFreeBSD. Closes: #379161 + * Stop attempting to build on m68k and arm + + -- Christian Perrier Sat, 27 Jan 2007 10:15:04 +0100 + +atlas3 (3.6.0-20.4) unstable; urgency=low + + * Non-maintainer upload to fix long-longstanding l10n issues + * Remove most part of the debconf templates which are way too much + intrusive. Closes: #235732, #388816, #388817, #388818, #388821 + Move them to README.Debian + * Turn the remaining notes into "error" templates + * Launch debconf-updatepo in the clean target. Closes: #335549 + * Debconf translation updates: + - Added Vietnamese. Closes: #313129 + - Added Czech. Closes: #310248 + - Updated Czech. Closes: #335566 + - Updated Dutch. Closes: #388104, #375315, #392214 + - Added Swedish. Closes: #336825 + - Added Georgian (sent during the NMU l10n fix campaign) + - Added Portuguese. Closes: #394649 + - Added German. Closes: #407843 + - Added Romanian + - Added Portuguese. Closes: #408019 + - Added Russian. Closes: #408145 + + -- Christian Perrier Tue, 23 Jan 2007 06:02:00 +0100 + +atlas3 (3.6.0-20.2) unstable; urgency=low + + * NMU. + * Remove debian/control fiddling in favour of using debhelper -s + (instead of debhelper -a) Thanks to Jeroen van Wolffelaar + for the patch. Closes: #350748 + + -- Frederik Schüler Mon, 22 May 2006 12:19:06 +0000 + +atlas3 (3.6.0-20.1) unstable; urgency=low + + * NMU. + * debian/rules: apply patch from Yaroslav Halchenko to add missing + targets. Closes: #351646 + + -- Bill Allombert Sat, 13 May 2006 22:53:16 +0000 + +atlas3 (3.6.0-20) unstable; urgency=high + + * Have gcc 4.0 and greater recognized as a good compiler in config.c + * Remove bx from the clobber list in camm_dpa.h as is explicitly pushed + and restored + * static proclamation syntax change to uumtst.c + * Slightly modify ATL_F77wrap_tr{m,s}v.c to work around gcc 4.0 bug when + using -fomit-frame-pointer + * Now can build with gcc >=4.0, Closes: #315908. + + -- Camm Maguire Wed, 28 Sep 2005 17:35:48 +0000 + +atlas3 (3.6.0-19) unstable; urgency=high + + * Ignore SIGFPE on alpha in uumtst.c. FIXME -- work with upstream to + fix the matrix generator to avoid floating point underflow, which is + apparently the origin of this signal. Closes: #278331. + * Run xdfindCE on smaller problem sizes on arm, as its emulated floating + point is too slow. + * FIXME -- clean build specific patches between builds, keeping base in + place for timing/testing runs + * Add support for arch-specific as opposed to build specific patches in + base/patch_sys. FIXME, unapply build-specific patches between builds. + + -- Camm Maguire Tue, 26 Oct 2004 20:11:07 +0000 + +atlas3 (3.6.0-18) unstable; urgency=high + + * Fix AB_DEBUG variable for m68k in debian/rules, Closes: #277881 + * Rework shlibs and shlibdeps processing to ensure that there are no + self depends in library packages -- Closes: #277589. The solution + taken here is to make the shlibs files in the standard fashion with + dh_makeshlibs, edit the entries to reflect the reference and virtual + alternatives, run dh_shlibdeps -a against atlas3-base for robustness, + rerun on library packages only using the shlibs in each package to + resolve its own dependencies, then finally rewrite the shlibs files to + refer to atlas3-base as the first virtual alternative in all files for + consistency. + * Fix atlas3-altivec.config, Closes: #277600. FIXME -- cpu, cpu model, + and cpu family need systematization. + * Run testers with TRNG:=10 100 10 on alpha to workaround SIGFPE issue + in xduumtst for now. FIXME. Perhaps Jan-Jaap van der Heijden + can help? + + -- Camm Maguire Mon, 25 Oct 2004 11:36:52 +0000 + +atlas3 (3.6.0-17) unstable; urgency=high + + * Fix typo in altivec config + * ev5 -> ev6 + * README.Debian edits for the above + * Replace alpha base build record with an ev5 timed goto build, which + also runs correctly on ev4. Thanks to Jan-Jaap van der Heijden + + * Amend copyright file to note that on alpha, the GOTO kernels in the + distributed binary builds, as well as in any possible user build, make + the ATLAS license LGPL. + * cpu model -> cpu family in atlas3-2.0.config. Closes: #275333. + * Link shared libs to remove undefined symbols + * remove duplicate alternatives in shlibs files via mymakeshlibs + * Build-depend on lapack (>= 3.0.20000531a-5) to get {s,d}gesdd fixes + * Add debug=$(AB_DEBUG) to static run of debian/ab as well as shared. + * Backoff m68k build to O2. + * 5 Mflops for m68k and arm testers to speed up autobuilds + * dh_installmanpages -> dh_installman + * retime atlas3-base on a PII in attempt to uncover an apparent error in + ade4 use, but in vain. + * Pass testers over prime matrix dimensions + + -- Camm Maguire Tue, 19 Oct 2004 14:39:14 +0000 + +atlas3 (3.6.0-16) unstable; urgency=low + + * Add missing control-hppa for new subarch build + * Fix custom package build rules, Closes: #267715 + * Bug fix: "atlas3-ev5-dev depends on atlas2-headers", thanks to + Jan-Jaap van der Heijden (Closes: #269387). atlas2-headers -> + atlas3-headers in control files + + -- Camm Maguire Wed, 1 Sep 2004 17:32:11 +0000 + +atlas3 (3.6.0-15) unstable; urgency=low + + * Add m68k build record + * Add pa risc 2.0 build record as hppa subarch + * Updated README.Debian on certain isa extension selections for custom + builds on hppa, sparc, and alpha + * template edits for ev5, 2.0, v9, and altivec + + -- Camm Maguire Thu, 8 Jul 2004 20:53:03 +0000 + +atlas3 (3.6.0-14) unstable; urgency=low + + * Bug fix: "octave2.1 fails to start on PowerPC", thanks to Jan Medlock + (Closes: #253540). Add LONGCALLS variable to debian/rules, supplement + -fPIC with -mlong-calls on arm, hppa, mips and mipsel, and with + -mlongcall on powerpc. + * Bug fix: "better description for atlas3-3dnow", thanks to Roberto + Gliese (Closes: #254429). Fix typo in all descriptions + * Suggest higher atlas3 isa extension pacakges with substvar + libs:Suggests. + + -- Camm Maguire Wed, 30 Jun 2004 23:28:19 +0000 + +atlas3 (3.6.0-13) unstable; urgency=low + + * g77 -> /usr/bin/g77 in ia64 build record + + -- Camm Maguire Sun, 6 Jun 2004 17:02:31 +0000 + +atlas3 (3.6.0-12) unstable; urgency=low + + * export all environment vars in env files -- should get an arm record + now + * Add ia64 build record + * Default BFLOPS and CACHE variables 20 and 512 for m68k and arm to + speed up build. + * Bug fix: "atlas3: FTBFS on amd64", thanks to Frederik Schueler + (Closes: #252737). Fixed g77 path in amd64 build record + + -- Camm Maguire Sun, 6 Jun 2004 03:21:13 +0000 + +atlas3 (3.6.0-11) unstable; urgency=low + + * Add CONFIG_DEFS environment facility to config.c, and set to -DWALL + for arm base build in attempts to work around broken cpu rusage timer + there. + * switch back ppc base and altivec build records after successful + autobuilder test run + + -- Camm Maguire Sat, 5 Jun 2004 03:42:51 +0000 + +atlas3 (3.6.0-10) unstable; urgency=low + + * Remove hardocded arch directory from new ppc altivec build, currently + running as base. + * Add alpha base build record as machine ev4 + * Fix CARCH sed replacement in debian/rules: $(MY_ISA) -> $* + * Need to redo ia64 build record to get correct fortran to C + conventions. + + -- Camm Maguire Fri, 4 Jun 2004 21:18:04 +0000 + +atlas3 (3.6.0-9) unstable; urgency=low + + * Remove erroneous local paths from ia64 build record + * Install powerpc altivec build record, switch base and altivec builds + temporarily to have the autobuilder run the tests against the build + * Fix alpha -> powerpc error in control-powerpc + * Install control scripts for altivec ppc build + * Add v9 sparc build record and control scripts + * Add amd64 (pure64) build record, sse2 isaext in base build, mach set + to 'Hammer' + * default x86_64 machine detection in config.c to amd hammer 64. + * modify config.c to detect UltraSparc mach settings as a v9 isa + extension + + -- Camm Maguire Thu, 3 Jun 2004 23:07:12 +0000 + +atlas3 (3.6.0-8) unstable; urgency=low + + * updated watch file + * installed ia64 build record (base) using machine 'Itanium' + * applied sparc patch to tune/blas/gemm/CASES/ATL_dmm4x4x8_US.c as per + errata file + * added s390 base build record with empty machine type + + -- Camm Maguire Tue, 1 Jun 2004 21:56:37 +0000 + +atlas3 (3.6.0-7) unstable; urgency=low + + * Add sparc build record + * Add powerpc base build record + * Remove malformed ia64 build record to time again + * Add hook for altivec ppc package to time build record on next + autobuild + + -- Camm Maguire Mon, 31 May 2004 15:50:14 +0000 + +atlas3 (3.6.0-6) unstable; urgency=low + + * Add clapack.h to atlas3-headers + * changelog -> UTF8 + * Reinstall broken build recors on hppa mips mipsel alpha and ia64 + * ChangeLog -> changelog for lintian + + -- Camm Maguire Sat, 29 May 2004 15:53:11 +0000 + +atlas3 (3.6.0-5) unstable; urgency=low + + * Add ia64 build record, use itanium 2 for base build environment + * Fix two ia64 bugs in config.c, l 1854 && L 2155 + * Add line in debian/config.expect to proceed with selected flags when + they don't match arch defaults. + * Add powerpc base environment to sidestep altivec, use G4 + * Add alpha ev5 build record, this is the goto build which should be + changed to ev6 at some point due to an outstanding bug + * make ev4 alpha environment for base build + * add hppa base build record, blank MACH string for architecture UNKNOWN + * change default sparc detection to UNKNOWN in config.c, l 3255 + * Add mipsel build record with blank MACH base environment setting + * Add mips build record with blank MACH base environment setting + * max m68k l2 cache at 512K in attempt to get the autobuild to not + timeout. + * Bug fix: "atlas3-sse2-dev: /usr/lib/libblas-3.a does not exist", + thanks to Erik Schnetter (Closes: #249523). Add .a slave alternative + links. + * Bug fix: "atlas3-sse2 package can't be set up due to awk error", + thanks to Mierle Keir (Closes: #234232). Fix awk error in + atlas3-sse2.postinst. + * Bug fix: "atlas3: FTBFS amd64: Pure64 is using 64bit ABI", thanks to + Goswin Brederlow (Closes: #249585). Default BIT to 2 on amd64, rm -f + out CONFIG/fname.o CONFIG/cname.o in clean target. + * Bug fix: "atlas3: [INTL:fr] French debconf templates translation", + thanks to Christian Perrier (Closes: #231935). Add fr.po + * Bug fix: "[INTL:nl] new Dutch po-debconf translation", thanks to Luk + Claes (Closes: #241314). Add nl.po + + -- Camm Maguire Fri, 28 May 2004 21:18:34 +0000 + +atlas3 (3.6.0-4) unstable; urgency=low + + * Fix error in debian/rules regarding installation of atlas_type.h + + -- Camm Maguire Fri, 6 Feb 2004 23:21:25 +0000 + +atlas3 (3.6.0-3) unstable; urgency=low + + * Port recent bug fixes from atlas2, listed below. + * Fixed development alternatives to go with the new library locations. + * Bug fix: "atlas3-base-dev: Depends on g77 is missing", thanks to + Torsten Werner ( #226376). Added to all -dev packages. + * Bug fix: "atlas3-headers: Does have all needed header files for + compiling other programs using atlas", thanks to Tomas Ukkonen + ( #227453). Added include/atlas_aux.h and + include/Linux_base_static/atlas_type.h to atlas3-headers pkg. + * Bug fix: "The package description does not follow Debian policy", + thanks to Javier Fernández-Sanguino Peña ( #209452). Reworded + descriptions. + * Bug fix: "atlas3-base: package description is suboptimal", thanks to + Jochen Voss ( #227752). Reworded descriptions. Binary + packages suggest blas and lapack to assist in debugging, as any + program linking against one of these libraries can be cross checked + against the reference versions at runtime without recompilation via + the use of the LD_LIBRARY_PATH environment variable. -dev packages + suggest both blas-doc and lapack-doc. -test package recommends blas + and lapack. + * Bug fix: "atlas: Please switch to gettext-based debconf templates", + thanks to Christian Perrier ( #205812). Ran automated + procedure on templates. + * Bug fix: "atlas: French translation of gettext debconf templates", + thanks to Christian Perrier ( #206596). Installed po/fr.po. + * Fixed expect build depends for newer expect package + * Moved library locations to better take advantage of new hwcap behavior + in ldconfig. Atlas supplied blas and lapack libraries are now in + /usr/lib/atlas/{,sse,sse2,3dnow,etc}/. Edited templates accordingly. + + -- Camm Maguire Fri, 16 Jan 2004 17:46:09 +0000 + +atlas3 (3.6.0-2) unstable; urgency=low + + * Fix reference blas/lapack copy error in debian/rules, testers were not + being correctly run against reference libraries + + -- Camm Maguire Wed, 14 Jan 2004 17:19:49 +0000 + +atlas3 (3.6.0-1) unstable; urgency=low + + * New upstream release + + -- Camm Maguire Thu, 8 Jan 2004 04:05:49 +0000 + +atlas3 (3.5.19-1) unstable; urgency=low + + * New upstream release + + -- Camm Maguire Thu, 18 Dec 2003 21:00:04 +0000 + +atlas (3.2.1ln-11) unstable; urgency=low + + * Remove atlas and blas dependencies from atlas packages, Closes: + #196294, Closes: #196471, Closes: #196568. + * Fix broken shlibs to now list atlas2-base | atlas2 for native atlas + libs + + -- Camm Maguire Fri, 20 Jun 2003 15:06:19 +0000 + +atlas (3.2.1ln-10) unstable; urgency=low + + * Remove build-depends on g77-3.0 [alpha], Closes: #196257 + + -- Camm Maguire Thu, 5 Jun 2003 18:54:27 +0000 + +atlas (3.2.1ln-9) unstable; urgency=low + + * Link libblas.so with lg2c, liblapack.so with lblas lg2c, Closes: + #193874 + + -- Camm Maguire Thu, 5 Jun 2003 13:38:23 +0000 + +atlas (3.2.1ln-8) unstable; urgency=low + + * Fixed ATL_walltime.c for gcc-3.3, Closes: #194081 + * gcc-3.3 changes to SSE header files + * debian/compat set to 4, versioned debhelper build-depends + * Newer standards + * Lintian cleanup, Author(s) => Authors + * Do postrm ld.so.conf edit and ldconfig only if argument is 'remove' + * Make use of '${misc:Depends}' + * Load debconf module in appropriate postinst scripts (for lintian) + * Remove INSTALL.txt from atlas-doc + * Let debhelper handle ldconfig calls + * Remove dh_undocumented from rules + * Create /etc/ld.so.conf.d/atlas.conf if not there, Closes: #150309 + * Append newline to /etc/ld.so.conf.d/atlas.conf if doesn't end with one, Closes: + #192030 + * dev packages suggest blas-doc, Closes: #168466 + * Make postrm scripts handle empty ld.so.conf + + -- Camm Maguire Thu, 5 Jun 2003 02:43:38 +0000 + +atlas (3.2.1ln-7) unstable; urgency=high + + * Forgot to read DEFAULTS variable in config.expect + * Need g77-3.0 on alpha to link with lapack, workaround for -mieee bug + in g77-2.95 on alpha + + -- Camm Maguire Sat, 13 Apr 2002 10:07:52 -0400 + +atlas (3.2.1ln-6) unstable; urgency=high + + * Installed build record for s390 + * libblas2.so and liblapack2.so alternative support, Closes: #139073 + * Accept cpu flag xmm2 as well for SSE2 capability + * Added DEFAULTS variable in debian/rules to allow custom building + with no upstream atlas defaults; edited README.Debian + * Clarifications to README.Debian, Closes: #141745 + + -- Camm Maguire Wed, 10 Apr 2002 22:27:49 -0400 + +atlas (3.2.1ln-5) unstable; urgency=low + + * Renamed .new directory holding temporary build record to avoid + conflict with main rules iteration over subarchitectures + * Installed mips/mipsel build records + * Architecture string reset to any, as any existing failure bugs + should be reassigned to the compiler + * Minor bugfixes to included blas testers, should be no longer used + + -- Camm Maguire Sat, 23 Mar 2002 12:42:50 -0500 + +atlas (3.2.1ln-4) unstable; urgency=low + + * Removed Provides atlas-dev from atlas2-headers + * Added mips support + * echo build record to stdout when doing a timed build, can get build + records this way from the autobuilder output + * Small arch specific patch to enable build on s390 + + -- Camm Maguire Tue, 19 Mar 2002 21:11:43 -0500 + +atlas (3.2.1ln-3) unstable; urgency=low + + * Changed lapackF tester rules to prevent lapack tests from running + twice + * chmod +x debian/mm fixing man page generation failure on ppc + * Patch to fix strmm errors with 3dnow/sse + + -- Camm Maguire Mon, 11 Mar 2002 10:10:12 -0500 + +atlas (3.2.1ln-2) unstable; urgency=low + + * cblas functions into atlas provided libblas + * Powerpc base build record added + * Versioned Conflicts/Replaces on atlas2-dev for atlas2-headers, + Closes: #135188 + * Changed debian/ab to accept versioned compiler names, possibly in + home directory tree. + * Removed blas-testers from package + * Build-Depends on blas-test + * Manpages for atlas-test, build-depend on help2man + * Removed blas dat examples from package, now in blas-test + * Fail catching rules for testers + * Less flops for testers on slower machines, currently m68k + * Build record rules added + + -- Camm Maguire Sat, 23 Feb 2002 17:14:57 -0500 + +atlas (3.2.1ln-1) unstable; urgency=low + + * Unbundled lapack source, now use lapack.a and lapack_pic.a from new + lapack packages + * hppa base build record, based on parisc 2.0 build + * ORed construction in shlibs and shlibs.local + * Removed cblas.h from headers package: now in blas-dev + * Architecture string added to debian/control source section. HPPA -- + compiler can't handle single precision real/complex routines, + Closes: #133665 + * MIPSEL -- compiler can't handle large branches + * New shlibs(.local), Closes: #134177 + * Elaborated short package descriptions, Closes: #134303 + * Elaborated short package descriptions, Closes: #134305 + * Clarified header package description, Closes: #134304 + * ARM -- timer can't determine parameters within precision + * Reworked debconf priorities, Closes: #133147 + * References to blas1 -> blas in all files + * Removing cblas.h Closes: #134488 + + -- Camm Maguire Sun, 17 Feb 2002 22:16:43 -0500 + +atlas (3.2.1l-5) unstable; urgency=low + + * Build record installed for ia64 + * Patch target facility in debian/rules for selectively applying + patches to source for different archs + * IA64 patch installed to work around current compiler bugs + * Added support for {atlas2,lapack2,blas2}-dev virtual packages + + -- Camm Maguire Fri, 1 Feb 2002 19:43:51 -0500 + +atlas (3.2.1l-4) unstable; urgency=low + + * Fixed typo PIII -> PIV in sse2 descriptions and templates, Closes: + #126040 + * Added arch dirs for remaining woody archs, s390, mips, mipsel and + arm + * Commented out blank environment variable settings in env files + + -- Camm Maguire Sat, 29 Dec 2001 00:16:36 -0500 + +atlas (3.2.1l-3) unstable; urgency=low + + * Fixed typo in Build-Depends + * Fixed spelling errors, Closes: #124427, Closes: #124428, Closes: + #124429 + + -- Camm Maguire Wed, 19 Dec 2001 01:11:06 -0500 + +atlas (3.2.1l-2) unstable; urgency=low + + * Added conflicts/replaces to control-i386 so new package named + upgrade old ones. + + -- Camm Maguire Sat, 1 Dec 2001 12:18:32 -0500 + +atlas (3.2.1l-1) unstable; urgency=low + + * Included lapack source in source package to avoid 'apt-get source', + Closes: #112136 + * Removed Build-Depend on apt + * Build-Depend on blas1-dev + * Replace 'apt-get source blas' with 'cp /usr/lib/libblas* blas-1.0/' + * Replaced SRC/s{ht}o dirs in lapack subbuild with newly provided + debian/{shared,static} of the Debian lapack package build + * Replaced -O3 -> -O alpha workaround in main Makefile with an awk + gsub just where its needed in the tester binary compiles + * Added provisional build log for m68k + * slasrt -> dlasrt in dlalsd.f in lapack source, Closes: #111377 + * Added used_lapack_version to docs for library builds, Closes: + #111380 + * Lintian cleans: remove dh_testversion, standards version 3.5.6.0 + * Corrected 3dnow.txt path in atlas2-athlon.templates, Closes: #114286 + * Added m68k build record + * Add missing F77= (needed for m68k) to lapack-3.0/debian/rules + * Build-Depend on fort77 [m68k] + * Changed package names on i386: athlon ->3dnow, p3 ->sse, p4 ->sse2 + * Changed i386 library directories to follow 2.4.x names, + /usr/lib/{3dnow,sse,sse2} + * Had custom target build appropriate isa extension package for build- + time cpu, thereby keeping isa extension instructions out of /usr/lib + * Added cache probe of /proc/cpuinfo to speed custom builds where + /proc/cpuinfo reports cache + * Changed fpu label to base for generic builds + * Updated README.Debian for new custom build packaging + * Updated lapack routines from errata page to fix Cholesky and LU + solve errors + * Applied trsm complex performance enhancement from errata page + * Fixed Athlon defaults from errata page + * Applied Nan number fix from errata page + * Fixed ntra->nout bug in c_sblat3.f, line 1342 + * Made atlas build-depend on gcc-2.95 on i386, and conflict with 3.0 + there, for performance and config script output reasons. + + -- Camm Maguire Thu, 29 Nov 2001 16:02:44 -0500 + +atlas (3.2.1-12) unstable; urgency=low + + * Quoted alpha F90 build options, Closes: #109767 + * Added alpha build records for base and ev5. + + -- Camm Maguire Sun, 26 Aug 2001 21:39:57 -0400 + +atlas (3.2.1-11) unstable; urgency=low + + * Architecture for atlas2-base-dev set to any + * Architecture for atlas2-headers set to all + * Prepended to LD_LIBRARY_PATH for tests, instead of overwriting + + -- Camm Maguire Thu, 26 Jul 2001 15:48:27 -0400 + +atlas (3.2.1-10) unstable; urgency=low + + * Minor changes to debian/rules to build lapack testers correctly, and + to thereby correctly demonstrate acceleration with atlas lapack + routines + * Added chmod +x debian/mymakeshlibs, Closes: #106428 + * Modifications to README.Debian to reflect automatic /etc/ld.so.conf.d/atlas.conf + treatment. + * Added base sparc build record + + -- Camm Maguire Tue, 24 Jul 2001 22:50:38 -0400 + +atlas (3.2.1-9) unstable; urgency=low + + * Assemble debian/control as part of build, including only packages + relevant to arch, Closes: #105887 + * Made shlibs files list virtual package dependencies, obviating the + need for shlibs.local for packages build-depending on atlas and + wishing to make use of the atlas2, blas2, and lapack2 virtual + packages + + -- Camm Maguire Thu, 19 Jul 2001 17:12:52 -0400 + +atlas (3.2.1-8) unstable; urgency=low + + * Changed sections/priorities in control to match override + * Elimininated dependency of atlas-test on libpthread + * Removed erroneous set default istrue in atlas2-base.config + * Added build dir for hppa, Closes: #104684 + * Removed -fPIC from tester binary object builds + + -- Camm Maguire Sun, 15 Jul 2001 20:53:52 -0400 + +atlas (3.2.1-7) unstable; urgency=low + + * Removed blas Makefile patch to account for changes in blas -7 + + -- Camm Maguire Tue, 10 Jul 2001 23:34:22 -0400 + +atlas (3.2.1-6) unstable; urgency=low + + * Used -l switch on dh_shlibdeps to catch libfakeroot location, + Closes: #103851 + + -- Camm Maguire Sun, 8 Jul 2001 23:41:00 -0400 + +atlas (3.2.1-5) unstable; urgency=low + + * Replaced erroneously deleted Build-depends, Closes: #102370 + + -- Camm Maguire Fri, 6 Jul 2001 12:21:06 -0400 + +atlas (3.2.1-4) unstable; urgency=low + + * Made changes in debian/ab so that script works with mawk and gawk + * Added SSE2 binary for Pentium 4 and higher machines + * Replaced build records with gzipped uuencoded versions to save + space, Build-Depends added on sharutils + * Had sse libs check for kernel 2.2.x and kernel 2.4.x /proc/cpuinfo + flags + + -- Camm Maguire Wed, 4 Jul 2001 19:38:22 -0400 + +atlas (3.2.1-3) unstable; urgency=low + + * Debconf templates + * Updated control entries to smoothly upgrade from 3.0 + * Renamed new atlas2-dev package to atlas2-headers, to facilitate + upgrade from old atlas2-dev with different components + * Automatic configuration of ldso to 1) use best installed atlas + binary on running system, and 2) use atlas-provided blas and lapack + libs in preference to reference versions + * Added m68k directory to enable default build on this arch. Closes: + #102766 + + -- Camm Maguire Mon, 2 Jul 2001 18:18:37 -0400 + +atlas (3.2.1-2) unstable; urgency=low + + * Added rule to config.expect to kill old subdirs + * New xmm build record without threads + * New fpu build record without threads + * Moved debian/ppc to debian/powerpc, enabling build on this platform. + Closes: #88220 + * Moved 3dnowext to 3dnow, as code can run on both k6 and athlon + * Updated Build-Depends, Closes: #102370 + + -- Camm Maguire Tue, 26 Jun 2001 23:04:13 -0400 + +atlas (3.2.1-1) unstable; urgency=low + + * New upstream release + + -- Camm Maguire Fri, 30 Mar 2001 17:10:06 -0500 + +atlas (3.2.0-1) unstable; urgency=low + + * New upstream release + + -- Camm Maguire Thu, 21 Dec 2000 14:08:24 -0500 + +atlas (3.0-7) frozen unstable; urgency=low + + * Added cblas objects to /usr/lib/atlas/liblapack, closing #61286 + + -- Camm Maguire Sat, 1 Apr 2000 19:11:43 +0200 + +atlas (3.0-6) frozen; urgency=low + + * Development header files were missing -- fixed. + * Added note about performance variance with LDA to README.Debian + * Passed -ff90 in F90OPTS to lapack, like in 3.0-5 package + + -- Camm Maguire Tue, 29 Feb 2000 20:44:58 +0100 + +atlas (3.0-5) frozen; urgency=low + + * Added -F 200 to ?l2blastst runs to get valid time comparisons for + quick tests + + -- Camm Maguire Tue, 29 Feb 2000 19:40:28 +0100 + +atlas (3.0-4) frozen; urgency=low + + * Added 'make clean' to lapack target to ensure that static lapack lib + is build correctly + * Added development links in blas-1.0 subdirectory so that testing + binaries get dynamically linked against blas + * Fixed error in shlibs.local + * Added suggests lapack-doc for atlas2-dev + * Added -F 200 to l2blastst results to get valid time comparisons for + quick tests + + -- Camm Maguire Wed, 19 Jan 2000 16:25:35 +0100 + +atlas (3.0-3) frozen; urgency=low + + * Removed brackets from expect script, works with more expect versions + now + * Added build dependency on apt + * Added workarounds to allow building on alpha (g77/complex abs1 + issue, mmsearch compilation bug with -O3, timer problem -> -DWALL) + * Patched config.c to auto detect alpha 21264 + * Removed Linux_debug build directories + * Fixed expect script error + * Added /proc/cpuinfo to test results file + + -- Camm Maguire Thu, 13 Jan 2000 18:35:53 +0100 + +atlas (3.0-2) frozen; urgency=low + + * Releasing build with gcc 2.95.2, prior build had segfaults apparently + due to compiler error (egcs 2.91.66) + * Added build integrity test step to debian/rules + + -- Camm Maguire Fri, 7 Jan 2000 22:48:35 -0500 + +atlas (3.0-1) frozen; urgency=low + + * Applied fixes as listed on www.cs.utk.edu/~rwhaley/ATLAS/errata.html + * New upstream release, supplying full BLAS support + + -- Camm Maguire Thu, 23 Dec 1999 12:04:54 -0500 + +atlas (2.0-8) unstable; urgency=low + + * Added some build dependencies + * Latest g77 won't compile icamax.f from reference BLAS on alpha; + used f2c here instead + * Altered config.c to find libblas.a in BLAS dir of source + * Changed the build process to use ATLAS' native config program + under expect + + -- Camm Maguire Thu, 23 Dec 1999 12:04:54 -0500 + +atlas (2.0-7) unstable; urgency=low + + * Changed toplevel Makefiles to allow proper compilation on generic + platforms. As found on netlib, atlas has an interactive build + process. A custom 'config' program is compiled and run, which prompts + the user for certain information, and writes the toplevel Makefiles. + This procedure doesn't fit well with automated building under Debian, + so a (pair of) generic Makefiles has been provided for compilation on + Debian systems. Some fields were inadvertantly left in these files + which pertain to the specific hardware of this maintainer, making + building on some machines impossible. This update should allow for + proper building on all Debian systems. Furthermore, these Makefiles + have been verified to produce libraries with essentially the same + performance on the matintainer's hardware. In the future, perhaps the + proper way to do this is to run the atlas config program under some + special shell, like 'expect'. This would in addition require + automated editing of these files by debian/rules. + + -- Camm Maguire Fri, 17 Dec 1999 14:53:06 -0500 + +atlas (2.0-6) unstable; urgency=low + + * Fixed typo in rules: rm -r -> rm -f + + -- Camm Maguire Wed, 8 Dec 1999 08:52:01 -0500 + +atlas (2.0-5) unstable; urgency=low + + * Removed 'make clean' from clean target of rules, as atlas doesn't use this + * Removed ConfDump.log in clean target, closing #52083 + + -- Camm Maguire Mon, 6 Dec 1999 23:11:29 -0500 + +atlas (2.0-4) unstable; urgency=low + + * Added LD_LIBRARY_PATH to dh_shlibdeps to get dependencies right on + machines where atlas and blas are not installed :-) + + -- Camm Maguire Tue, 30 Nov 1999 17:53:47 -0500 + +atlas (2.0-3) unstable; urgency=low + + * Added atlas-test package to provide benchmarking with installed blas + * Bumped soname to 2 to match blas package + * Added runtime blas library switching notes in README.Debian + * Removed 'atlas' package and the 'atlasconfig' script: To tune + atlas for the end user's hardware, the procedure now is to + rebuild the atlas1{-dev} package(s) from the Debian source + * Moved optimized blas library to /usr/lib/atlas (closes #51300) + + -- Camm Maguire Mon, 29 Nov 1999 13:33:05 -0500 + +atlas (2.0-2) unstable; urgency=low + + * Fixed debian/rules to build correclt after clean unpack (closes #50508) + + -- Camm Maguire Thu, 18 Nov 1999 14:09:13 -0500 + +atlas (2.0-1) unstable; urgency=low + + * Initial Release. + + -- Camm Maguire Tue, 14 Sep 1999 09:28:44 -0400 + + diff --git a/compat b/compat new file mode 100644 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 index 0000000..7b5adeb --- /dev/null +++ b/control @@ -0,0 +1,94 @@ +Source: atlas +Section: devel +Priority: optional +Maintainer: Debian Science Team +Uploaders: Sébastien Villemot +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 index 0000000..08adc21 --- /dev/null +++ b/copyright @@ -0,0 +1,62 @@ +This package was debianized by Camm Maguire on +Tue, 14 Sep 1999 09:28:44 -0400 and rewritten by Sylvestre Ledru + on September 2009. + +It was downloaded from http://math-atlas.sourceforge.net/ + +Upstream Authors: + R. Clint Whaley + Jack Dongarra + 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 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 index 0000000..23f1332 --- /dev/null +++ b/lapack-atlas.pc.in @@ -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 index 0000000..70dbae3 --- /dev/null +++ b/libatlas-base-dev.install @@ -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 index 0000000..74d032e --- /dev/null +++ b/libatlas-base-dev.links @@ -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 index 0000000..5c1d211 --- /dev/null +++ b/libatlas-base-dev.postinst @@ -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 index 0000000..014dd61 --- /dev/null +++ b/libatlas-base-dev.preinst @@ -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 index 0000000..105a765 --- /dev/null +++ b/libatlas-base-dev.prerm @@ -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 index 0000000..8eebe28 --- /dev/null +++ b/libatlas-doc.doc-base.contrib @@ -0,0 +1,14 @@ +Document: atlas-contrib +Title: User contribution to ATLAS +Author: R. Clint Whaley +Abstract: This paper describes the method by which users can speed up ATLAS for themselves, + as well as contribute any such speedup to the ATLAS project. It’s written to get you + started, in a highly informal (read sloppy) fashion. There’s a lot of material that + optimally should be covered in detail, which is only hinted at in this document. Since + no real attempt has been made to make the document sheerly backward referential, + it is recommended that the user at least skim the entire section before attempting to + understand and/or apply information from a given subsection. +Section: Programming + +Format: PDF +Files: /usr/share/doc/libatlas-doc/atlas_contrib.pdf.gz diff --git a/libatlas-doc.doc-base.devel b/libatlas-doc.doc-base.devel new file mode 100644 index 0000000..f280e64 --- /dev/null +++ b/libatlas-doc.doc-base.devel @@ -0,0 +1,10 @@ +Document: atlas-devel +Title: A Collaborative guide to ATLAS Development +Author: R. Clint Whaley and Peter Soendergaard +Abstract: This paper exists to get you started if you want to do some ATLAS development. + The hope is that as new developers work on ATLAS, they will add to this note, so that + this information grows with time. +Section: Programming + +Format: PDF +Files: /usr/share/doc/libatlas-doc/atlas_devel.pdf.gz diff --git a/libatlas-doc.doc-base.install b/libatlas-doc.doc-base.install new file mode 100644 index 0000000..6eccf0a --- /dev/null +++ b/libatlas-doc.doc-base.install @@ -0,0 +1,14 @@ +Document: atlas-install +Title: ATLAS Installation Guide +Author: R. Clint Whaley +Abstract: This note provides a brief overview of ATLAS, and describes how to install it. + It includes extensive discussion of common configure options, and describes why they + might be employed on various platforms. In addition to discussing how to configure and + build the ATLAS package, this note also describes how an installer can confirm that + the resulting libraries are producing correct answers and running efficiently. Extensive + examples are provided, including a full-length example showing the installation of both + ATLAS and LAPACK on an example architecture. +Section: Programming + +Format: PDF +Files: /usr/share/doc/libatlas-doc/atlas_install.pdf.gz diff --git a/libatlas-test.install b/libatlas-test.install new file mode 100644 index 0000000..5b3e91a --- /dev/null +++ b/libatlas-test.install @@ -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 index 0000000..98ba78c --- /dev/null +++ b/libatlas3-base.install @@ -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 index 0000000..a668f1f --- /dev/null +++ b/libatlas3-base.links @@ -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 index 0000000..0714a94 --- /dev/null +++ b/libatlas3-base.postinst @@ -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 index 0000000..8a862e4 --- /dev/null +++ b/libatlas3-base.preinst @@ -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 index 0000000..eb8f305 --- /dev/null +++ b/libatlas3-base.prerm @@ -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 index 0000000..5a7e6bd --- /dev/null +++ b/libatlas3-base.shlibs @@ -0,0 +1,6 @@ +libatlas 3 libatlas3-base +libcblas 3 libatlas3-base +libf77blas 3 libatlas3-base +liblapack_atlas 3 libatlas3-base +libblas 3 libblas3 | libblas.so.3 +liblapack 3 liblapack3 | liblapack.so.3 diff --git a/orig-tar.exclude b/orig-tar.exclude new file mode 100644 index 0000000..ccad6a6 --- /dev/null +++ b/orig-tar.exclude @@ -0,0 +1,2 @@ +CVS +*.pdf diff --git a/orig-tar.sh b/orig-tar.sh new file mode 100755 index 0000000..76746ac --- /dev/null +++ b/orig-tar.sh @@ -0,0 +1,19 @@ +#!/bin/sh -e + +# called by uscan with '--upstream-version' +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 index 0000000..4302e51 --- /dev/null +++ b/patches/02_rename_lapack_atlas.diff @@ -0,0 +1,109 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 02_rename_lapack_atlas.dpatch.dpatch by +## +## 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 index 0000000..59c459c --- /dev/null +++ b/patches/10_s390.diff @@ -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 index 0000000..d47d5a4 --- /dev/null +++ b/patches/16_warning-removed.diff @@ -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 index 0000000..c7818d4 --- /dev/null +++ b/patches/17_hppa.diff @@ -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 index 0000000..09010f7 --- /dev/null +++ b/patches/18_alpha.diff @@ -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 index 0000000..49cc16a --- /dev/null +++ b/patches/20_armel.diff @@ -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 index 0000000..7ffa4ea --- /dev/null +++ b/patches/21_mips2.diff @@ -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 index 0000000..350e4e1 --- /dev/null +++ b/patches/22_sh.diff @@ -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 index 0000000..f099f48 --- /dev/null +++ b/patches/armel-is-v4t.diff @@ -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 +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 index 0000000..84c44da --- /dev/null +++ b/patches/generic.diff @@ -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 +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 index 0000000..d7aafc9 --- /dev/null +++ b/patches/kfreebsd.diff @@ -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 index 0000000..05a20d9 --- /dev/null +++ b/patches/powerpc-dcbt.patch @@ -0,0 +1,277 @@ +Description: Fix FTBFS on powerpc with recent binutils + A recent modification in binutils (see + https://sourceware.org/ml/binutils/2015-04/msg00332.html) introduced a change + in the way the ppc assembly instructions "dcbt" and "dcbtst" are handled. + When compiling on a generic ppc processor, the 3-arguments form of those + instructions is no longer accepted, and one must instead use a 2-arguments + form (ignoring the TH argument). + . + Incidentally, the binutils change also fixed a bug in the way those + instructions were handled. On a generic ppc processor, they used to be + interpreted in the so-called "embedded" form ("dcbt TH, RA, RB", only used on + some embedded machines), while they should have been interpreted in the + so-called "server" form ("dcbt RA, RB, TH"). The ATLAS assembly directive were + apparently written in "server" form, and were therefore mis-assemblied. + . + Ideally, this patch should be improved in order to use the TH argument on + machines that support it (only needed in atlas_prefetch.h; other instances use + the default zero value for TH). +Author: Sébastien Villemot +Forwarded: no +Last-Update: 2015-11-23 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- a/include/atlas_prefetch.h ++++ b/include/atlas_prefetch.h +@@ -101,15 +101,15 @@ + #elif defined(ATL_GAS_PPC) && !defined(ATL_ARCH_POWER4) + #if defined(__GNUC__) || defined(__IBM_GCC_ASM) + #define ATL_pfl1R(mem) \ +- __asm__ __volatile__ ("dcbt 0, %0, 0" : : "r" ((mem))) ++ __asm__ __volatile__ ("dcbt 0, %0" : : "r" ((mem))) + #define ATL_pfl1W(mem) \ + __asm__ __volatile__ ("dcbtst 0, %0" : : "r" ((mem))) + #define ATL_pfST(mem) \ +- __asm__ __volatile__ ("dcbt 0, %0, 1" : : "r" ((mem))) ++ __asm__ __volatile__ ("dcbt 0, %0" : : "r" ((mem))) + #define ATL_pfl1STi(mem, str) \ + __asm__ __volatile__ ("rlwinm %0, %0, 0, 0, 24\n\t" \ + "ori %0, %0, 96+%2\n\t" \ +- "dcbt 0, %0, 8" \ ++ "dcbt 0, %0" \ + : "=r" (mem) \ + : "0" (mem), "i" (str)) + +--- a/tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c ++++ b/tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c +@@ -350,7 +350,7 @@ MLOOPU: + #endif + vmaddfp vC01, vA0, vB1, vC33 + vmaddfp vC11, vA1, vB1, vC33 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + vmaddfp vC21, vA2, vB1, vC33 + addi pfA, pfA, 64 + vmaddfp vC31, vA3, vB1, vC33 +@@ -737,7 +737,7 @@ MLOOPU: + #endif + vmaddfp vC02, va0, vb2, vC02 + vmaddfp vC12, va1, vb2, vC12 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + vmaddfp vC22, va2, vb2, vC22 + addi pfB, pfB, 64 + vmaddfp vC32, va3, vb2, vC32 +@@ -2337,7 +2337,7 @@ MPEELEDU: + #endif + vmaddfp vC01, vA0, vB1, vC33 + vmaddfp vC11, vA1, vB1, vC33 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + vmaddfp vC21, vA2, vB1, vC33 + addi pfA, pfA, 64 + vmaddfp vC31, vA3, vB1, vC33 +@@ -2724,7 +2724,7 @@ MPEELEDU: + #endif + vmaddfp vC02, va0, vb2, vC02 + vmaddfp vC12, va1, vb2, vC12 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + vmaddfp vC22, va2, vb2, vC22 + addi pfB, pfB, 64 + vmaddfp vC32, va3, vb2, vC32 +--- a/tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c ++++ b/tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c +@@ -436,7 +436,7 @@ MLOOP: + fmadd rC00, rA0, rB0, rC00 + lfd rb3, 8+KB3*8(pB0) + fmadd rC10, rA1, rB0, rC10 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + addi pfB, pfB, 128 + fmadd rC20, rA2, rB0, rC20 + fmadd rC30, rA3, rB0, rC30 +@@ -2565,7 +2565,7 @@ MLOOP: + #if KB > 1 + fmadd rC00, ra0, rb0, rC00 + fmadd rC10, ra1, rb0, rC10 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + addi pfA, pfA, 128 + fmadd rC20, ra2, rb0, rC20 + fmadd rC30, ra3, rb0, rC30 +--- a/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c ++++ b/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c +@@ -353,9 +353,9 @@ MLOOP: + fmul rC11, rA1, rB1 + fmul rC21, rA2, rB1 + fmul rC31, rA3, rB1 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + addi pfA, pfA, 128 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + addi pfB, pfB, 128 + fmul rC02, rA0, rB2 + fmul rC12, rA1, rB2 +@@ -438,9 +438,9 @@ MLOOP: + fmadd rC12, rA1, rB2, rC12 + fmadd rC22, rA2, rB2, rC22 + fmadd rC32, rA3, rB2, rC32 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + addi pfA, pfA, 128 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + addi pfB, pfB, 128 + fmadd rC03, rA0, rB3, rC03 + fmadd rC13, rA1, rB3, rC13 +@@ -467,8 +467,8 @@ MLOOP: + fmadd rC10, rA1, rB0, rC10 + fmadd rC20, rA2, rB0, rC20 + fmadd rC30, rA3, rB0, rC30 +- dcbt 0, pfA, 0 +- dcbt 0, pfB, 0 ++ dcbt 0, pfA ++ dcbt 0, pfB + addi pfA, pfA, 128 + addi pfB, pfB, 128 + fmadd rC01, rA0, rB1, rC01 +@@ -3956,9 +3956,9 @@ MPEELED: + fmul rC11, rA1, rB1 + fmul rC21, rA2, rB1 + fmul rC31, rA3, rB1 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + addi pfA, pfA, 128 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + addi pfB, pfB, 128 + fmul rC02, rA0, rB2 + fmul rC12, rA1, rB2 +@@ -4041,9 +4041,9 @@ MPEELED: + fmadd rC12, rA1, rB2, rC12 + fmadd rC22, rA2, rB2, rC22 + fmadd rC32, rA3, rB2, rC32 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + addi pfA, pfA, 128 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + addi pfB, pfB, 128 + fmadd rC03, rA0, rB3, rC03 + fmadd rC13, rA1, rB3, rC13 +@@ -4070,8 +4070,8 @@ MPEELED: + fmadd rC10, rA1, rB0, rC10 + fmadd rC20, rA2, rB0, rC20 + fmadd rC30, rA3, rB0, rC30 +- dcbt 0, pfA, 0 +- dcbt 0, pfB, 0 ++ dcbt 0, pfA ++ dcbt 0, pfB + addi pfA, pfA, 128 + addi pfB, pfB, 128 + fmadd rC01, rA0, rB1, rC01 +--- a/tune/blas/gemm/CASES/ATL_dmm8x4x2_vsx.c ++++ b/tune/blas/gemm/CASES/ATL_dmm8x4x2_vsx.c +@@ -60,7 +60,7 @@ static inline vector TYPE vec_mergel(vec + #ifndef ATL_GOT_L1PREFETCH + #ifdef _ARCH_PPC + #undef ATL_pfl1R +-#define ATL_pfl1R(mem) { __asm__ volatile ("dcbt 0, %0, 0" : : "r" ((mem))); } ++#define ATL_pfl1R(mem) { __asm__ volatile ("dcbt 0, %0" : : "r" ((mem))); } + #endif + #endif + +--- a/tune/blas/gemm/CASES/ATL_smm4x4x128_av.c ++++ b/tune/blas/gemm/CASES/ATL_smm4x4x128_av.c +@@ -376,7 +376,7 @@ MLOOP: + #endif + vmaddfp vC01, vA0, vB1, vC33 + vmaddfp vC11, vA1, vB1, vC33 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + vmaddfp vC21, vA2, vB1, vC33 + addi pfA, pfA, 64 + vmaddfp vC31, vA3, vB1, vC33 +@@ -763,7 +763,7 @@ MLOOP: + #endif + vmaddfp vC02, va0, vb2, vC02 + vmaddfp vC12, va1, vb2, vC12 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + vmaddfp vC22, va2, vb2, vC22 + addi pfB, pfB, 64 + vmaddfp vC32, va3, vb2, vC32 +@@ -1352,7 +1352,7 @@ MLOOP: + #endif + vmaddfp vC01, vA0, vB1, vC01 + #ifdef BETAX +- dcbt 0, pBETA, 0 ++ dcbt 0, pBETA + #endif + vmaddfp vC11, vA1, vB1, vC11 + vmaddfp vC21, vA2, vB1, vC21 +@@ -2319,7 +2319,7 @@ MPEELED: + #endif + vmaddfp vC01, vA0, vB1, vC33 + vmaddfp vC11, vA1, vB1, vC33 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + vmaddfp vC21, vA2, vB1, vC33 + addi pfA, pfA, 64 + vmaddfp vC31, vA3, vB1, vC33 +@@ -2706,7 +2706,7 @@ MPEELED: + #endif + vmaddfp vC02, va0, vb2, vC02 + vmaddfp vC12, va1, vb2, vC12 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + vmaddfp vC22, va2, vb2, vC22 + addi pfB, pfB, 64 + vmaddfp vC32, va3, vb2, vC32 +@@ -4379,7 +4379,7 @@ MLOOPU: + #endif + vmaddfp vC01, vA0, vB1, vC33 + vmaddfp vC11, vA1, vB1, vC33 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + vmaddfp vC21, vA2, vB1, vC33 + addi pfA, pfA, 64 + vmaddfp vC31, vA3, vB1, vC33 +@@ -4766,7 +4766,7 @@ MLOOPU: + #endif + vmaddfp vC02, va0, vb2, vC02 + vmaddfp vC12, va1, vb2, vC12 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + vmaddfp vC22, va2, vb2, vC22 + addi pfB, pfB, 64 + vmaddfp vC32, va3, vb2, vC32 +@@ -5355,7 +5355,7 @@ MLOOPU: + #endif + vmaddfp vC01, vA0, vB1, vC01 + #ifdef BETAX +- dcbt 0, pBETA, 0 ++ dcbt 0, pBETA + #endif + vmaddfp vC11, vA1, vB1, vC11 + vmaddfp vC21, vA2, vB1, vC21 +@@ -6397,7 +6397,7 @@ MPEELEDU: + #endif + vmaddfp vC01, vA0, vB1, vC33 + vmaddfp vC11, vA1, vB1, vC33 +- dcbt 0, pfA, 0 ++ dcbt 0, pfA + vmaddfp vC21, vA2, vB1, vC33 + addi pfA, pfA, 64 + vmaddfp vC31, vA3, vB1, vC33 +@@ -6784,7 +6784,7 @@ MPEELEDU: + #endif + vmaddfp vC02, va0, vb2, vC02 + vmaddfp vC12, va1, vb2, vC12 +- dcbt 0, pfB, 0 ++ dcbt 0, pfB + vmaddfp vC22, va2, vb2, vC22 + addi pfB, pfB, 64 + vmaddfp vC32, va3, vb2, vC32 diff --git a/patches/ppc64el-abiv2.patch b/patches/ppc64el-abiv2.patch new file mode 100644 index 0000000..481feb7 --- /dev/null +++ b/patches/ppc64el-abiv2.patch @@ -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 +--- a/tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c ++++ b/tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c +@@ -268,7 +268,7 @@ Mjoin(.,ATL_USERMM): + .globl Mjoin(_,ATL_USERMM) + Mjoin(_,ATL_USERMM): + #else +- #if defined(ATL_USE64BITS) ++ #if defined(ATL_USE64BITS) && _CALL_ELF != 2 + /* + * Official Program Descripter section, seg fault w/o it on Linux/PPC64 + */ +@@ -324,8 +324,15 @@ ATL_USERMM: + #endif + + #ifdef ATL_USE64BITS ++#if _CALL_ELF == 2 ++/* ABIv2 */ ++ ld pC0, 104(r1) ++ ld incCn, 112(r1) ++#else ++/* ABIv1 */ + ld pC0, 120(r1) + ld incCn, 128(r1) ++#endif + #elif defined(ATL_AS_OSX_PPC) || defined(ATL_AS_AIX_PPC) + lwz pC0, 68(r1) + lwz incCn, 72(r1) +--- a/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c ++++ b/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c +@@ -170,13 +170,21 @@ void ATL_USERMM(const int M, const int N + const TYPE beta, TYPE *C, const int ldc) + (r10) 8(r1) + ******************************************************************************* +-64 bit ABIs: ++64 bit ABIv1s: + r3 r4 r5 r6/f1 + void ATL_USERMM(const int M, const int N, const int K, const TYPE alpha, + r7 r8 r9 r10 + const TYPE *A, const int lda, const TYPE *B, const int ldb, + f2 120(r1) 128(r1) + const TYPE beta, TYPE *C, const int ldc) ++ ++64 bit ABIv2s: ++ r3 r4 r5 r6/f1 ++void ATL_USERMM(const int M, const int N, const int K, const TYPE alpha, ++ r7 r8 r9 r10 ++ const TYPE *A, const int lda, const TYPE *B, const int ldb, ++ f2 104(r1) 112(r1) ++ const TYPE beta, TYPE *C, const int ldc) + #endif + #ifdef ATL_AS_AIX_PPC + .csect .text[PR] +@@ -202,7 +210,7 @@ Mjoin(.,ATL_USERMM): + .globl Mjoin(_,ATL_USERMM) + Mjoin(_,ATL_USERMM): + #else +- #if defined(ATL_USE64BITS) ++ #if defined(ATL_USE64BITS) && _CALL_ELF != 2 + /* + * Official Program Descripter section, seg fault w/o it on Linux/PPC64 + */ +@@ -257,9 +265,17 @@ ATL_USERMM: + #endif + #endif + ++ + #if defined (ATL_USE64BITS) ++#if _CALL_ELF == 2 ++/* ABIv2 */ ++ ld pC0, 104(r1) ++ ld incCn, 112(r1) ++#else ++/* ABIv1 */ + ld pC0, 120(r1) + ld incCn, 128(r1) ++#endif + #elif defined(ATL_AS_OSX_PPC) || defined(ATL_AS_AIX_PPC) + lwz pC0, 68(r1) + lwz incCn, 72(r1) +--- a/tune/blas/gemm/CASES/ATL_dmm4x4x2pf_av.c ++++ b/tune/blas/gemm/CASES/ATL_dmm4x4x2pf_av.c +@@ -405,8 +405,15 @@ Mjoin(_,ATL_USERMM): + */ + #ifdef ATL_GAS_LINUX_PPC + #ifdef ATL_USE64BITS ++ #if _CALL_ELF == 2 ++ /* ABIv2 */ ++ ld pC0, 104(r1) ++ ld incCn, 112(r1) ++ #else ++ /* ABIv1 */ + ld pC0, 120(r1) + ld incCn, 128(r1) ++ #endif + #else + lwz incCn, FSIZE+8(r1) + #endif diff --git a/patches/ppc64el-ifdef-files-with-lvx.patch b/patches/ppc64el-ifdef-files-with-lvx.patch new file mode 100644 index 0000000..0b92687 --- /dev/null +++ b/patches/ppc64el-ifdef-files-with-lvx.patch @@ -0,0 +1,114 @@ +Description: Skip optimizations for big-endian PowerPC. + Some of the existing optimized files/cases for PowerPC + contain assembly instructions with implicit big-endian + behavior - thus incorrect for the little-endian mode - + incurring tests failures during the build (i.e., FTBFS). + This is being worked on; this is the workaround for now. + . + Note: this is an alternative for Michael Normand's patch + 'atlas.3.10.2-ppc64le_do_not_use_files_with_lvx.patch', + in order not to touch file lists/indexes, but only C + source code, so the C preprocessor can avoid code per-arch. + . + For more details, see: + https://bugzilla.redhat.com/show_bug.cgi?id=1080073#c40 +Author: Mauricio Faria de Oliveira +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 +--- a/tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c ++++ b/tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c +@@ -7,6 +7,11 @@ + * meaning that this kernel will do an extra store of vector C to memory + * for load by the scalar FPU. + */ ++ ++#if defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) ++/* FIXME: port to little-endian powerpc64. */ ++#else ++ + #include "atlas_asm.h" + + #if !defined(ATL_AS_OSX_PPC) && !defined(ATL_GAS_LINUX_PPC) +@@ -4257,3 +4262,5 @@ MPEELEDU: + ld r3, FST(r1) + addi r1, r1, FSIZE + blr ++ ++#endif /* little-endian powerpc64 */ +--- a/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c ++++ b/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c +@@ -28,6 +28,10 @@ + * + */ + ++#if defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) ++/* FIXME: port to little-endian powerpc64. */ ++#else ++ + #include "atlas_asm.h" + /* + * NOTE: this kernel written by R. Clint Whaley, but it uses two key ideas +@@ -7502,3 +7506,5 @@ DONE: + addi r1, r1, FSIZE + #endif + blr ++ ++#endif /* little-endian powerpc64 */ +--- a/tune/blas/gemm/CASES/ATL_dmm8x4x2_vsx.c ++++ b/tune/blas/gemm/CASES/ATL_dmm8x4x2_vsx.c +@@ -27,6 +27,10 @@ + * + */ + ++#if defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) ++/* FIXME: port to little-endian powerpc64. */ ++#else ++ + #include + #include "atlas_misc.h" + #include "atlas_prefetch.h" /* ATL_pfl1R, ATL_pfl1W */ +@@ -659,3 +663,5 @@ void ATL_USERMM + } + } + } ++ ++#endif /* little-endian powerpc64 */ +--- a/tune/blas/gemm/CASES/ATL_smm4x4x128_av.c ++++ b/tune/blas/gemm/CASES/ATL_smm4x4x128_av.c +@@ -28,6 +28,9 @@ + * + */ + ++#if defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) ++/* FIXME: port to little-endian powerpc64. */ ++#else + + #include "atlas_asm.h" + +@@ -8340,3 +8343,5 @@ MPEELEDU: + ld r3, FST(r1) + addi r1, r1, FSIZE + blr ++ ++#endif /* little-endian powerpc64 */ +--- a/tune/blas/gemm/CASES/ATL_smm8x2x4_av.c ++++ b/tune/blas/gemm/CASES/ATL_smm8x2x4_av.c +@@ -27,6 +27,10 @@ + * + */ + ++#if defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) ++/* FIXME: port to little-endian powerpc64. */ ++#else ++ + #include + #include "atlas_misc.h" + #include "atlas_prefetch.h" /* ATL_pfl1R, ATL_pfl1W */ +@@ -326,3 +330,5 @@ void ATL_USERMM + } + } + } ++ ++#endif /* little-endian powerpc64 */ diff --git a/patches/series b/patches/series new file mode 100644 index 0000000..e3c2ac4 --- /dev/null +++ b/patches/series @@ -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 index 0000000..91dc8ce --- /dev/null +++ b/patches/shared_libraries.diff @@ -0,0 +1,130 @@ +Description: Create shared versions of the libraries +Author: David Evans + Sébastien Villemot +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 index 0000000..ef23fca --- /dev/null +++ b/patches/static_full_blas_lapack.diff @@ -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 index 0000000..8c33710 --- /dev/null +++ b/rules @@ -0,0 +1,191 @@ +#!/usr/bin/make -f +# Copyright 2008-2010 Sylvestre Ledru + +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_ARMa7_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; \ + 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 + 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 index 0000000..163aaf8 --- /dev/null +++ b/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/source/include-binaries b/source/include-binaries new file mode 100644 index 0000000..1f592ff --- /dev/null +++ b/source/include-binaries @@ -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 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 +