[Debian-med-packaging] Bug#579239: libbio-scf-perl - FTBFS: #error Neither BIG nor LITTLE endian defined
Bastian Blank
waldi at debian.org
Tue Apr 27 16:56:44 UTC 2010
tag 579239 patch
thanks
On Mon, Apr 26, 2010 at 11:50:52PM +0900, Charles Plessy wrote:
> Le Mon, Apr 26, 2010 at 02:42:17PM +0200, Bastian Blank a écrit :
> > Endianess is always defined in <endian.h>.
Patch.
diff -Nru staden-io-lib-1.12.2/debian/changelog staden-io-lib-1.12.2/debian/changelog
--- staden-io-lib-1.12.2/debian/changelog 2010-04-27 16:54:18.000000000 +0000
+++ staden-io-lib-1.12.2/debian/changelog 2010-04-27 16:54:18.000000000 +0000
@@ -1,3 +1,10 @@
+staden-io-lib (1.12.2-1.1) UNRELEASED; urgency=low
+
+ * Non-maintainer upload.
+ * Fix endianess detection. (closes: #579239)
+
+ -- Bastian Blank <waldi at debian.org> Tue, 27 Apr 2010 09:12:09 +0000
+
staden-io-lib (1.12.2-1) unstable; urgency=low
* New upstream release: extra options in srf2fastq and API changes in
diff -Nru staden-io-lib-1.12.2/io_lib/os.h staden-io-lib-1.12.2/io_lib/os.h
--- staden-io-lib-1.12.2/io_lib/os.h 2009-09-15 13:29:23.000000000 +0000
+++ staden-io-lib-1.12.2/io_lib/os.h 2010-04-27 16:54:18.000000000 +0000
@@ -189,91 +189,19 @@
/*
*-----------------------------------------------------------------------------
* Machine endianness.
- * These are overridden at the end when using autoconf, but are here for
- * when being built as part of the Staden Package.
*-----------------------------------------------------------------------------
*/
-/*
- * First guess via autoconf. This is here as endianness can only be computed
- * by autoconf for the machine we're building on. Hence cross-compilations
- * or MacOSX "fat binaries" cannot work via autoconf in this manner.
- *
- * These provide a default for when the machine specific ifdefs below do you
- * catch your system type.
- */
-#ifdef HAVE_CONFIG_H
-# if defined(WORDS_BIGENDIAN)
-# ifdef SP_LITTLE_ENDIAN
-# undef SP_LITTLE_ENDIAN
-# endif
-# define SP_BIG_ENDIAN
-# else
-# ifdef SP_BIG_ENDIAN
-# undef SP_BIG_ENDIAN
-# endif
-# define SP_LITTLE_ENDIAN
-# endif
-#endif
-
-/*
- * x86 equivalents
- */
-#if defined(__i386__) || defined(__i386) || defined(__amd64__) || defined(__amd64)
-# if defined(SP_BIG_ENDIAN)
-# undef SP_BIG_ENDIAN
-# endif
-# define SP_LITTLE_ENDIAN
-#endif
-
-/*
- * DEC Alpha
- */
-#if defined(__alpha__) || defined(__alpha)
-# if defined(SP_LITTLE_ENDIAN)
-# undef SP_LITTLE_ENDIAN
-# endif
-# define SP_BIG_ENDIAN
-#endif
-
-/*
- * SUN Sparc
- */
-#if defined(__sparc__) || defined(__sparc)
-# if defined(SP_LITTLE_ENDIAN)
-# undef SP_LITTLE_ENDIAN
-# endif
-# define SP_BIG_ENDIAN
-#endif
+#include <endian.h>
-/*
- * PowerPC
- */
-#if defined(__ppc__) || defined(__ppc)
-# if defined(SP_LITTLE_ENDIAN)
-# undef SP_LITTLE_ENDIAN
-# endif
-# define SP_BIG_ENDIAN
-#endif
-
-/* Some catch-alls */
-#if defined(__LITTLE_ENDIAN__) || defined(__LITTLEENDIAN__)
+#if __BYTE_ORDER == __LITTLE_ENDIAN
# define SP_LITTLE_ENDIAN
-#endif
-
-#if defined(__BIG_ENDIAN__) || defined(__BIGENDIAN__)
+#elif __BYTE_ORDER == __BIG_ENDIAN
# define SP_BIG_ENDIAN
+#else
+# error Unknown endianess
#endif
-#if defined(SP_BIG_ENDIAN) && defined(SP_LITTLE_ENDIAN)
-# error Both BIG and LITTLE endian defined. Fix os.h and/or Makefile
-#endif
-
-#if !defined(SP_BIG_ENDIAN) && !defined(SP_LITTLE_ENDIAN)
-# error Neither BIG nor LITTLE endian defined. Fix os.h and/or Makefile
-#endif
-
-
/*
*-----------------------------------------------------------------------------
* Typedefs for data sizes. Note there's umpteen versions of typedefs here
--
Phasers locked on target, Captain.
More information about the Debian-med-packaging
mailing list