Package: release.debian.org
Severity: normal
User: release.debian....@packages.debian.org
Usertags: unblock

Please unblock package atlas 3.10.2-5. The changelog is the following:

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.

The debdiff is attached.

Thanks,

-- 
 .''`.    Sébastien Villemot
: :' :    Debian Developer
`. `'     http://www.dynare.org/sebastien
  `-      GPG Key: 4096R/381A7594
Les fichiers binaires /tmp/95wIwL9sCB/atlas-3.10.2/debian/archdefs/arm64/GENERIC64.tar.bz2 et /tmp/NcFeUbX1_a/atlas-3.10.2/debian/archdefs/arm64/GENERIC64.tar.bz2 sont différents
Les fichiers binaires /tmp/95wIwL9sCB/atlas-3.10.2/debian/archdefs/ppc64el/GENERIC64LE.tar.bz2 et /tmp/NcFeUbX1_a/atlas-3.10.2/debian/archdefs/ppc64el/GENERIC64LE.tar.bz2 sont différents
diff -Nru atlas-3.10.2/debian/archdefs/README atlas-3.10.2/debian/archdefs/README
--- atlas-3.10.2/debian/archdefs/README	2014-07-12 12:23:26.000000000 +0200
+++ atlas-3.10.2/debian/archdefs/README	2014-11-15 12:22:45.000000000 +0100
@@ -12,9 +12,11 @@
     the "-mfloat-abi=armhf" and "-mfpu=vfpv3" flags
   + ARMv732NEON (for armhf): same than ARMv732; note that this one is not used
     for the generic package, but only for the custom one
+- arm64: ATLAS 3.10.2 / asachi.debian.org / sid / 2014-10-25
 - 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
 - powerpc: ATLAS 3.10.1 / partch.debian.org / sid / 2013-06-06
+- ppc64el: ATLAS 3.10.2 / pastel.debian.net / sid / 2014-10-24
 - s390x: ATLAS 3.10.1 / zelenka.debian.org / sid / 2013-06-06
 - sparc: ATLAS 3.10.1 / smetana.debian.org / wheezy / 2013-06-06
diff -Nru atlas-3.10.2/debian/changelog atlas-3.10.2/debian/changelog
--- atlas-3.10.2/debian/changelog	2014-10-15 21:35:41.000000000 +0200
+++ atlas-3.10.2/debian/changelog	2014-11-15 13:58:30.000000000 +0100
@@ -1,3 +1,20 @@
+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 <sebast...@debian.org>  Sat, 15 Nov 2014 13:53:31 +0100
+
 atlas (3.10.2-4) unstable; urgency=medium
 
   [ Alastair McKinstry ]
diff -Nru atlas-3.10.2/debian/patches/ppc64el-abiv2.patch atlas-3.10.2/debian/patches/ppc64el-abiv2.patch
--- atlas-3.10.2/debian/patches/ppc64el-abiv2.patch	1970-01-01 01:00:00.000000000 +0100
+++ atlas-3.10.2/debian/patches/ppc64el-abiv2.patch	2014-11-15 13:01:09.000000000 +0100
@@ -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 <sebast...@debian.org>
+--- a/tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c
++++ b/tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c
+@@ -268,7 +268,7 @@ Mjoin(.,ATL_USERMM):
+ 	.globl  Mjoin(_,ATL_USERMM)
+ Mjoin(_,ATL_USERMM):
+    #else
+-      #if defined(ATL_USE64BITS)
++      #if defined(ATL_USE64BITS) && _CALL_ELF != 2
+ /*
+  *      Official Program Descripter section, seg fault w/o it on Linux/PPC64
+  */
+@@ -324,8 +324,15 @@ ATL_USERMM:
+ #endif
+ 
+ #ifdef ATL_USE64BITS
++#if _CALL_ELF == 2
++/* ABIv2 */
++        ld      pC0, 104(r1)
++        ld      incCn, 112(r1)
++#else
++/* ABIv1 */
+         ld      pC0, 120(r1)
+         ld      incCn, 128(r1)
++#endif
+ #elif defined(ATL_AS_OSX_PPC) || defined(ATL_AS_AIX_PPC)
+         lwz     pC0, 68(r1)
+         lwz     incCn,  72(r1)
+--- a/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c
++++ b/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c
+@@ -170,13 +170,21 @@ void ATL_USERMM(const int M, const int N
+                 const TYPE beta, TYPE *C, const int ldc)
+                                   (r10)    8(r1)
+ *******************************************************************************
+-64 bit ABIs:
++64 bit ABIv1s:
+                          r3           r4           r5             r6/f1
+ void ATL_USERMM(const int M, const int N, const int K, const TYPE alpha,
+                            r7             r8             r9            r10
+                 const TYPE *A, const int lda, const TYPE *B, const int ldb,
+                              f2   120(r1)        128(r1)
+                 const TYPE beta, TYPE *C, const int ldc)
++
++64 bit ABIv2s:
++                         r3           r4           r5             r6/f1
++void ATL_USERMM(const int M, const int N, const int K, const TYPE alpha,
++                           r7             r8             r9            r10
++                const TYPE *A, const int lda, const TYPE *B, const int ldb,
++                             f2   104(r1)        112(r1)
++                const TYPE beta, TYPE *C, const int ldc)
+ #endif
+ #ifdef ATL_AS_AIX_PPC
+         .csect .text[PR]
+@@ -202,7 +210,7 @@ Mjoin(.,ATL_USERMM):
+ 	.globl  Mjoin(_,ATL_USERMM)
+ Mjoin(_,ATL_USERMM):
+    #else
+-      #if defined(ATL_USE64BITS)
++      #if defined(ATL_USE64BITS) && _CALL_ELF != 2
+ /*
+  *      Official Program Descripter section, seg fault w/o it on Linux/PPC64
+  */
+@@ -257,9 +265,17 @@ ATL_USERMM:
+    #endif
+ #endif
+ 
++
+ #if defined (ATL_USE64BITS)
++#if _CALL_ELF == 2
++/* ABIv2 */
++        ld      pC0, 104(r1)
++        ld      incCn, 112(r1)
++#else
++/* ABIv1 */
+         ld      pC0, 120(r1)
+         ld      incCn, 128(r1)
++#endif
+ #elif defined(ATL_AS_OSX_PPC) || defined(ATL_AS_AIX_PPC)
+         lwz     pC0, 68(r1)
+         lwz     incCn,  72(r1)
+--- a/tune/blas/gemm/CASES/ATL_dmm4x4x2pf_av.c
++++ b/tune/blas/gemm/CASES/ATL_dmm4x4x2pf_av.c
+@@ -405,8 +405,15 @@ Mjoin(_,ATL_USERMM):
+  */
+ #ifdef ATL_GAS_LINUX_PPC
+    #ifdef ATL_USE64BITS
++      #if _CALL_ELF == 2
++      /* ABIv2 */
++        ld      pC0, 104(r1)
++        ld      incCn, 112(r1)
++      #else
++      /* ABIv1 */
+ 	ld 	pC0, 120(r1)
+ 	ld 	incCn, 128(r1)
++      #endif
+    #else
+ 	lwz	incCn, FSIZE+8(r1)
+    #endif
diff -Nru atlas-3.10.2/debian/patches/ppc64el-ifdef-files-with-lvx.patch atlas-3.10.2/debian/patches/ppc64el-ifdef-files-with-lvx.patch
--- atlas-3.10.2/debian/patches/ppc64el-ifdef-files-with-lvx.patch	1970-01-01 01:00:00.000000000 +0100
+++ atlas-3.10.2/debian/patches/ppc64el-ifdef-files-with-lvx.patch	2014-11-15 13:01:43.000000000 +0100
@@ -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 <mauri...@linux.vnet.ibm.com>
+Forwarded: http://sourceforge.net/p/math-atlas/patches/65/
+Last-Update: 2014-10-28
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=766695
+Reviewed-By: Sébastien Villemot <sebast...@debian.org>
+--- a/tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c
++++ b/tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c
+@@ -7,6 +7,11 @@
+  * meaning that this kernel will do an extra store of vector C to memory
+  * for load by the scalar FPU.
+  */
++
++#if defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
++/* FIXME: port to little-endian powerpc64. */
++#else
++
+ #include "atlas_asm.h"
+ 
+ #if !defined(ATL_AS_OSX_PPC) && !defined(ATL_GAS_LINUX_PPC)
+@@ -4257,3 +4262,5 @@ MPEELEDU:
+         ld      r3, FST(r1)
+         addi    r1, r1, FSIZE
+         blr
++
++#endif	/* little-endian powerpc64 */
+--- a/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c
++++ b/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c
+@@ -28,6 +28,10 @@
+  *
+  */
+ 
++#if defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
++/* FIXME: port to little-endian powerpc64. */
++#else
++
+ #include "atlas_asm.h"
+ /*
+  * NOTE: this kernel written by R. Clint Whaley, but it uses two key ideas
+@@ -7502,3 +7506,5 @@ DONE:
+         addi    r1, r1, FSIZE
+ #endif
+         blr
++
++#endif  /* little-endian powerpc64 */
+--- a/tune/blas/gemm/CASES/ATL_dmm8x4x2_vsx.c
++++ b/tune/blas/gemm/CASES/ATL_dmm8x4x2_vsx.c
+@@ -27,6 +27,10 @@
+  *
+  */
+ 
++#if defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
++/* FIXME: port to little-endian powerpc64. */
++#else
++
+ #include <altivec.h>
+ #include "atlas_misc.h"
+ #include "atlas_prefetch.h"               /* ATL_pfl1R, ATL_pfl1W */
+@@ -651,3 +655,5 @@ void ATL_USERMM
+         }
+     }
+ }
++
++#endif  /* little-endian powerpc64 */
+--- a/tune/blas/gemm/CASES/ATL_smm4x4x128_av.c
++++ b/tune/blas/gemm/CASES/ATL_smm4x4x128_av.c
+@@ -28,6 +28,9 @@
+  *
+  */
+ 
++#if defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
++/* FIXME: port to little-endian powerpc64. */
++#else
+ 
+ #include "atlas_asm.h"
+ 
+@@ -8340,3 +8343,5 @@ MPEELEDU:
+         ld      r3, FST(r1)
+         addi    r1, r1, FSIZE
+         blr
++
++#endif  /* little-endian powerpc64 */
+--- a/tune/blas/gemm/CASES/ATL_smm8x2x4_av.c
++++ b/tune/blas/gemm/CASES/ATL_smm8x2x4_av.c
+@@ -27,6 +27,10 @@
+  *
+  */
+ 
++#if defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
++/* FIXME: port to little-endian powerpc64. */
++#else
++
+ #include <altivec.h>
+ #include "atlas_misc.h"
+ #include "atlas_prefetch.h"               /* ATL_pfl1R, ATL_pfl1W */
+@@ -326,3 +330,5 @@ void ATL_USERMM
+         }
+     }
+ }
++
++#endif  /* little-endian powerpc64 */
diff -Nru atlas-3.10.2/debian/patches/ppc64el-new-archdef-name.patch atlas-3.10.2/debian/patches/ppc64el-new-archdef-name.patch
--- atlas-3.10.2/debian/patches/ppc64el-new-archdef-name.patch	1970-01-01 01:00:00.000000000 +0100
+++ atlas-3.10.2/debian/patches/ppc64el-new-archdef-name.patch	2014-11-15 13:01:52.000000000 +0100
@@ -0,0 +1,21 @@
+Origin: https://bugzilla.redhat.com/show_bug.cgi?id=1080073#c43
+Forwarded: http://sourceforge.net/p/math-atlas/patches/66/
+Description: Append 'LE' to archdef on little-endian PowerPC64
+ 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 <sebast...@debian.org>
+--- a/CONFIG/src/SpewMakeInc.c
++++ b/CONFIG/src/SpewMakeInc.c
+@@ -550,6 +550,10 @@ int main(int nargs, char **args)
+    fprintf(fpout, "#  -------------------------------------------------\n");
+    fprintf(fpout, "   ARCH = %s", machnam[mach]);
+    fprintf(fpout, "%d", ptrbits);
++   /* for ppc64le archi add 'LE' characters */
++   #if defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
++      fprintf(fpout, "%s", "LE");
++   #endif
+    if (ISAX)
+       fprintf(fpout, "%s", ISAXNAM[ISAX]);
+    if (!USEIEEE)
diff -Nru atlas-3.10.2/debian/patches/series atlas-3.10.2/debian/patches/series
--- atlas-3.10.2/debian/patches/series	2014-07-12 12:47:33.000000000 +0200
+++ atlas-3.10.2/debian/patches/series	2014-11-15 12:34:04.000000000 +0100
@@ -13,3 +13,6 @@
 armhf.diff
 cpu-throttling-check.diff
 generic.diff
+ppc64el-new-archdef-name.patch
+ppc64el-abiv2.patch
+ppc64el-ifdef-files-with-lvx.patch
diff -Nru atlas-3.10.2/debian/README.source atlas-3.10.2/debian/README.source
--- atlas-3.10.2/debian/README.source	2014-07-12 12:23:26.000000000 +0200
+++ atlas-3.10.2/debian/README.source	2014-10-25 19:12:20.000000000 +0200
@@ -33,14 +33,14 @@
 the following:
 
  debuild -us -uc -B    (will be very long, because timings will be computed)
- cd build/ARCHS
+ 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
+ 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 <sebast...@debian.org>, Thu,  6 Jun 2013 11:41:28 +0200
+ -- Sébastien Villemot <sebast...@debian.org>, Sat, 25 Oct 2014 19:12:20 +0200
 
diff -Nru atlas-3.10.2/debian/source/include-binaries atlas-3.10.2/debian/source/include-binaries
--- atlas-3.10.2/debian/source/include-binaries	2014-07-12 12:23:26.000000000 +0200
+++ atlas-3.10.2/debian/source/include-binaries	2014-11-15 12:22:45.000000000 +0100
@@ -2,9 +2,11 @@
 debian/archdefs/arm/GENERIC32.tar.bz2
 debian/archdefs/arm/ARMv732.tar.bz2
 debian/archdefs/arm/ARMv732NEON.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/powerpc/GENERIC32.tar.bz2
+debian/archdefs/ppc64el/GENERIC64LE.tar.bz2
 debian/archdefs/s390x/IBMz964.tar.bz2
 debian/archdefs/sparc/USI32.tar.bz2

Attachment: signature.asc
Description: Digital signature

Reply via email to