summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/zziplib/files/zziplib-0.13.52-sparc-aligned-access.patch')
-rw-r--r--dev-libs/zziplib/files/zziplib-0.13.52-sparc-aligned-access.patch33
1 files changed, 0 insertions, 33 deletions
diff --git a/dev-libs/zziplib/files/zziplib-0.13.52-sparc-aligned-access.patch b/dev-libs/zziplib/files/zziplib-0.13.52-sparc-aligned-access.patch
deleted file mode 100644
index 87ee790465a4..000000000000
--- a/dev-libs/zziplib/files/zziplib-0.13.52-sparc-aligned-access.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-This patch for zziplib (0.13.50) fixes a bus error on Linux/SPARC.
-
-Since SPARC machines are big endian and zip files are stored in little endian,
-zziplib needs to do byte swapping. On GNU/Linux this is usually done using
-glibc's bswap_{16,32,64} functions but in this case calling one of these
-functions triggers a bus error. This patch completes upstreams work to
-implement ZZIP_HAVE_ALIGNED_ACCESS_REQUIRED for machines which required aligned
-access.
-After applying the patch zziplib needs to be compiled with
--DZZIP_HAVE_ALIGNED_ACCESS_REQUIRED
-
-To reproduce it run (in the src dir):
- cd Linux_*_sparc64.d && ./bins/zzcat test/test/README
-or
- make check
-
-Problem found by: Ferris McCormick <fmccor@gentoo.org>
-Patch written by: Friedrich Oslage <bluebird@gentoo.org>
- with advice from: Mike Frysinger <vapier@gentoo.org>
-
-http://bugs.gentoo.org/239472
-
---- zzip/fetch.c
-+++ zzip/fetch.c
-@@ -17,7 +17,7 @@
- #include <zzip/fetch.h>
-
- #if defined ZZIP_WORDS_BIGENDIAN && \
-- defined bswap_16 && defined bswap_32 && defined bswap_64
-+ defined bswap_16 && defined bswap_32 && defined bswap_64 && !defined(ZZIP_HAVE_ALIGNED_ACCESS_REQUIRED)
- # define __ZZIP_GET16(__p) bswap_16(*(uint16_t*)(__p))
- # define __ZZIP_GET32(__p) bswap_32(*(uint32_t*)(__p))
- # define __ZZIP_SET16(__p,__x) (*(uint16_t*)(__p) = bswap_16((uint16_t)(__x)))