Use a configure check for bswap16 instead of gcc version #ifdefs.
authorRalph Giles <giles@thaumas.net>
Tue, 4 Nov 2014 19:58:45 +0000 (11:58 -0800)
committerErik de Castro Lopo <erikd@mega-nerd.com>
Wed, 5 Nov 2014 05:18:48 +0000 (21:18 -0800)
Fixes a build problem on apple clang.

Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
configure.ac
include/share/endswap.h

index dae619e..3ed4e7f 100644 (file)
@@ -67,6 +67,7 @@ AC_CHECK_HEADERS([stdint.h inttypes.h byteswap.h sys/param.h termios.h x86intrin
 AC_HEADER_TIOCGWINSZ
 
 XIPH_C_BSWAP32
+XIPH_C_BSWAP16
 
 ac_cv_c_big_endian=0
 ac_cv_c_little_endian=0
index 86bf857..dece49c 100644 (file)
@@ -34,7 +34,7 @@
 #if HAVE_BSWAP32                       /* GCC and Clang */
 
 /* GCC prior to 4.8 didn't provide bswap16 on x86_64 */
-#if __GNUC__ <= 4 && __GNUC_MINOR__ < 8
+#ifndef HAVE_BSWAP16
 static inline unsigned short __builtin_bswap16(unsigned short a)
 {
        return (a<<8)|(a>>8);