[flac-dev] [PATCH 1/5] configure: replace XIPH_C_FIND_ENDIAN by AC_C_BIGENDIAN

Max Horn max at quendi.de
Wed Dec 12 12:33:51 PST 2012


Signed-off-by: Max Horn <max at quendi.de>
---
 configure.ac |  10 +++-
 m4/endian.m4 | 177 -----------------------------------------------------------
 2 files changed, 9 insertions(+), 178 deletions(-)
 delete mode 100644 m4/endian.m4

diff --git a/configure.ac b/configure.ac
index 3899d68..f206b32 100644
--- a/configure.ac
+++ b/configure.ac
@@ -70,7 +70,15 @@ AC_CHECK_HEADERS([sys/param.h])
 
 XIPH_C_BSWAP32
 
-XIPH_C_FIND_ENDIAN
+ac_cv_c_big_endian=0
+ac_cv_c_little_endian=0
+AC_C_BIGENDIAN([ac_cv_c_big_endian=1], [ac_cv_c_little_endian=1], [
+	AC_MSG_WARN([[*****************************************************************]])
+	AC_MSG_WARN([[*** Not able to determine endian-ness of target processor.       ]])
+	AC_MSG_WARN([[*** The constants CPU_IS_BIG_ENDIAN and CPU_IS_LITTLE_ENDIAN in  ]])
+	AC_MSG_WARN([[*** config.h may need to be hand editied.                        ]])
+	AC_MSG_WARN([[*****************************************************************]])
+])
 AC_DEFINE_UNQUOTED(CPU_IS_BIG_ENDIAN, ${ac_cv_c_big_endian},
 					[Target processor is big endian.])
 AC_DEFINE_UNQUOTED(CPU_IS_LITTLE_ENDIAN, ${ac_cv_c_little_endian},
diff --git a/m4/endian.m4 b/m4/endian.m4
deleted file mode 100644
index 87c1f49..0000000
--- a/m4/endian.m4
+++ /dev/null
@@ -1,177 +0,0 @@
-dnl Copyright (C) 2012  Xiph.org Foundation
-dnl
-dnl Redistribution and use in source and binary forms, with or without
-dnl modification, are permitted provided that the following conditions
-dnl are met:
-dnl
-dnl - Redistributions of source code must retain the above copyright
-dnl notice, this list of conditions and the following disclaimer.
-dnl
-dnl - Redistributions in binary form must reproduce the above copyright
-dnl notice, this list of conditions and the following disclaimer in the
-dnl documentation and/or other materials provided with the distribution.
-dnl
-dnl - Neither the name of the Xiph.org Foundation nor the names of its
-dnl contributors may be used to endorse or promote products derived from
-dnl this software without specific prior written permission.
-dnl
-dnl THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-dnl ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-dnl LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-dnl A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR
-dnl CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-dnl EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-dnl PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-dnl PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-dnl LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-dnl NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-dnl SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
-dnl @synopsis XIPH_C_FIND_ENDIAN
-dnl
-dnl Determine endian-ness of target processor.
-dnl @version 1.1	Mar 03 2002
-dnl @author Erik de Castro Lopo <erikd at mega-nerd.com>
-dnl
-dnl Majority written from scratch to replace the standard autoconf macro
-dnl AC_C_BIGENDIAN. Only part remaining from the original is the invocation
-dnl of the AC_TRY_RUN macro.
-dnl
-dnl Find endian-ness in the following way:
-dnl    1) Look in <endian.h>.
-dnl    2) If 1) fails, look in <sys/types.h> and <sys/param.h>.
-dnl    3) If 1) and 2) fails and not cross compiling run a test program.
-dnl    4) If 1) and 2) fails and cross compiling then guess based on target.
-
-AC_DEFUN([XIPH_C_FIND_ENDIAN],
-[AC_CACHE_CHECK(processor byte ordering,
-	ac_cv_c_byte_order,
-
-# Initialize to unknown
-ac_cv_c_byte_order=unknown
-
-if test x$ac_cv_header_endian_h = xyes ; then
-
-	# First try <endian.h> which should set BYTE_ORDER.
-
-	[AC_TRY_LINK([
-		#include <endian.h>
-		#if BYTE_ORDER != LITTLE_ENDIAN
-			not big endian
-		#endif
-		], return 0 ;,
-			ac_cv_c_byte_order=little
-		)]
-
-	[AC_TRY_LINK([
-		#include <endian.h>
-		#if BYTE_ORDER != BIG_ENDIAN
-			not big endian
-		#endif
-		], return 0 ;,
-			ac_cv_c_byte_order=big
-		)]
-
-	fi
-
-if test $ac_cv_c_byte_order = unknown ; then
-
-	[AC_TRY_LINK([
-		#include <sys/types.h>
-		#include <sys/param.h>
-		#if !BYTE_ORDER || !BIG_ENDIAN || !LITTLE_ENDIAN
-			bogus endian macros
-		#endif
-		], return 0 ;,
-
-		[AC_TRY_LINK([
-			#include <sys/types.h>
-			#include <sys/param.h>
-			#if BYTE_ORDER != LITTLE_ENDIAN
-				not big endian
-			#endif
-			], return 0 ;,
-				ac_cv_c_byte_order=little
-			)]
-
-		[AC_TRY_LINK([
-			#include <sys/types.h>
-			#include <sys/param.h>
-			#if BYTE_ORDER != LITTLE_ENDIAN
-				not big endian
-			#endif
-			], return 0 ;,
-				ac_cv_c_byte_order=little
-			)]
-
-		)]
-
- 	fi
-
-if test $ac_cv_c_byte_order = unknown ; then
-	if test $cross_compiling = yes ; then
-		# This is the last resort. Try to guess the target processor endian-ness
-		# by looking at the target CPU type.
-		[
-		case "$target_cpu" in
-			alpha* | i?86* | mipsel* | ia64*)
-				ac_cv_c_byte_order=little
-				;;
-
-			m68* | mips* | powerpc* | hppa* | sparc*)
-				ac_cv_c_byte_order=big
-				;;
-
-			esac
-		]
-	else
-		AC_TRY_RUN(
-		[[
-		int main (void)
-		{	/* Are we little or big endian?  From Harbison&Steele.  */
-			union
-			{	long l ;
-				char c [sizeof (long)] ;
-			} u ;
-			u.l = 1 ;
-			return (u.c [sizeof (long) - 1] == 1);
-			}
-			]], , ac_cv_c_byte_order=big,
-			)
-
-		AC_TRY_RUN(
-		[[int main (void)
-		{	/* Are we little or big endian?  From Harbison&Steele.  */
-			union
-			{	long l ;
-				char c [sizeof (long)] ;
-			} u ;
-			u.l = 1 ;
-			return (u.c [0] == 1);
-			}]], , ac_cv_c_byte_order=little,
-			)
-		fi
-	fi
-
-)
-
-if test $ac_cv_c_byte_order = big ; then
-	ac_cv_c_big_endian=1
-	ac_cv_c_little_endian=0
-elif test $ac_cv_c_byte_order = little ; then
-	ac_cv_c_big_endian=0
-	ac_cv_c_little_endian=1
-else
-	ac_cv_c_big_endian=0
-	ac_cv_c_little_endian=0
-
-	AC_MSG_WARN([[*****************************************************************]])
-	AC_MSG_WARN([[*** Not able to determine endian-ness of target processor.       ]])
-	AC_MSG_WARN([[*** The constants CPU_IS_BIG_ENDIAN and CPU_IS_LITTLE_ENDIAN in  ]])
-	AC_MSG_WARN([[*** config.h may need to be hand editied.                        ]])
-	AC_MSG_WARN([[*****************************************************************]])
-	fi
-
-]
-)# XIPH_C_FIND_ENDIAN
-- 
1.8.0.1.525.gaaf5ad5



More information about the flac-dev mailing list