diff --git a/hdf-ppc64le.patch b/hdf-ppc64le.patch index ec7d277..bf71a8b 100644 --- a/hdf-ppc64le.patch +++ b/hdf-ppc64le.patch @@ -60,3 +60,22 @@ diff -up hdf-4.2.10/hdf/src/hdfi.h.ppc64le hdf-4.2.10/hdf/src/hdfi.h /* Linux 64 */ #if defined(__linux__) && defined __x86_64__ && !(defined SUN) /* i.e. 64-bit Linux but not SunOS on Intel */ +--- hdf-4.2.10/mfhdf/libsrc/xdrposix.c.patched ++++ hdf-4.2.10/mfhdf/libsrc/xdrposix.c +@@ -431,7 +431,7 @@ xdrposix_getlong(xdrs, lp) + #endif + { + unsigned char *up = (unsigned char *)lp ; +-#if (defined AIX5L64 || defined __powerpc64__ || defined __s390x__ || (defined __hpux && __LP64__)) ++#if (defined AIX5L64 || (defined __powerpc64__ && !defined __LITTLE_ENDIAN__) || defined __s390x__ || (defined __hpux && __LP64__)) + *lp = 0 ; + up += (sizeof(long) - 4) ; + #endif +@@ -458,7 +458,7 @@ xdrposix_putlong(xdrs, lp) + netlong mycopy = htonl(*lp); + up = (unsigned char *)&mycopy; + #endif +-#if (defined AIX5L64 || defined __powerpc64__ || defined __s390x__ || (defined __hpux && __LP64__)) ++#if (defined AIX5L64 || (defined __powerpc64__ && !defined __LITTLE_ENDIAN__) || defined __s390x__ || (defined __hpux && __LP64__)) + up += (sizeof(long) - 4) ; + #endif diff --git a/hdf.spec b/hdf.spec index 672183d..bdc83bc 100644 --- a/hdf.spec +++ b/hdf.spec @@ -1,6 +1,6 @@ Name: hdf Version: 4.2.10 -Release: 6%{?dist} +Release: 7%{?dist} Summary: A general purpose library and file format for storing scientific data License: BSD Group: System Environment/Libraries @@ -116,13 +116,7 @@ popd %check -# Tests are failing on ppc64le for some reason -# https://bugzilla.redhat.com/show_bug.cgi?id=1134385 -%ifarch ppc64le -make check || : -%else make check -%endif %clean @@ -144,6 +138,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Mon Sep 8 2014 Orion Poplawski - 4.2.10-7 +- Updated patch for ppc64le support (bug #1134385) + * Wed Sep 3 2014 Orion Poplawski - 4.2.10-6 - Add initial attempt at ppc64le support (bug #1134385)