summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Messier <mmessier@grapetv.org>2007-05-17 17:21:39 -0400
committerMatt Messier <mmessier@grapetv.org>2007-05-17 17:21:39 -0400
commit171e2f880e22241465808dd758e64415c1972aaf (patch)
treee322a53ed2647ee0f13db356c6351da397f84e90
parent5da77351d0e7edf28d5f6118207df609f52abd06 (diff)
downloadxine-lib-171e2f880e22241465808dd758e64415c1972aaf.tar.gz
xine-lib-171e2f880e22241465808dd758e64415c1972aaf.tar.bz2
Mac OS X universal binary build cleanups
-rw-r--r--configure.ac2
-rw-r--r--lib/os_internal.h89
-rw-r--r--m4/decoders.m42
3 files changed, 40 insertions, 53 deletions
diff --git a/configure.ac b/configure.ac
index 684a2a830..8eaa270ce 100644
--- a/configure.ac
+++ b/configure.ac
@@ -803,7 +803,7 @@ AC_SUBST(PASS2_CFLAGS)
test x"$DEFAULT_OCFLAGS" = x"" && DEFAULT_OCFLAGS='$(O3_CFLAGS)'
AC_SUBST(DEFAULT_OCFLAGS)
-if test x"$arch_x86" = x"yes"; then
+if test x"$arch_x86" = x"yes" && test x"$enable_macosx_universal" = x"no"; then
AC_DEFINE([ARCH_X86], [], [Define this if you're running x86 architecture])
AC_DEFINE([HAVE_MMX], [], [Define this if you can compile MMX asm instructions])
fi
diff --git a/lib/os_internal.h b/lib/os_internal.h
index e461b5581..49b9330e5 100644
--- a/lib/os_internal.h
+++ b/lib/os_internal.h
@@ -8,72 +8,57 @@
*/
#if defined(__APPLE__) && defined(XINE_MACOSX_UNIVERSAL_BINARY)
-#if !defined(__ppc__) && !defined(__ppc64__) && !defined(__i386__) && !defined(__x86_64__)
+/* __ppc__, __ppc64__, __i386__, __x86_64__ are interesting arch macros */
+#if defined(__ppc__) || defined(__ppc64__)
+#define ARCH_PPC
+#if defined(__ppc64__)
+#define HOST_ARCH "darwin/powerpc64"
+#else
+#define HOST_ARCH "darwin/powerpc"
+#endif
+#elif defined(__i386__) || defined(__x86_64__)
+#define ARCH_X86
+#define BITFIELD_LSBF
+#define HAVE_MMX
+#if defined(__x86_64__)
+#define ARCH_X86_64
+#define HOST_ARCH "darwin/x86_64"
+#elif defined(__i386__)
+#define ARCH_X86_32
+#define HOST_ARCH "darwin/x86_32"
+#else
#error unrecognized/unsupported CPU type building for Apple Darwin
#endif
+#endif
-/* First get rid of anything that initial configure might have set */
-#undef ARCH_PPC
-#undef ARCH_X86
-#undef ARCH_X86_32
-#undef ARCH_X86_64
-#undef BITFIELD_LSBF
-#undef ENABLE_ALTIVEC
-#undef FPM_64BIT
-#undef FPM_DEFAULT
-#undef FPM_INTEL
-#undef FPM_PPC
-#undef HAVE_MMX
-#undef HOST_ARCH
-#undef HOST_DARWIN
+/* See /Developer/SDKs/MacOSX10.4u.sdk/usr/include/machine/limits.h */
+#if SIZEOF_INT != 4
#undef SIZEOF_INT
-#undef SIZEOF_LONG
-#undef SIZEOF_LONG_LONG
-#undef WORDS_BIGENDIAN
+#define SIZEOF_INT 4
+#endif
-#define HOST_DARWIN 1
+#if defined(__LP64__) && SIZEOF_LONG != 8
+#undef SIZEOF_LONG
+#define SIZEOF_LONG 8
+#elif !defined(__LP64__) && SIZEOF_LONG != 4
+#undef SIZEOF_LONG
+#define SIZEOF_LONG 4
+#endif
/* WORDS_BIGENDIAN (replaces AC_C_BIGENDIAN autoconf test at compile time) */
#include <machine/endian.h>
#if BYTE_ORDER == BIG_ENDIAN
#define WORDS_BIGENDIAN 1
+#else
+#undef WORDS_BIGENDIAN
#endif
-/* __ppc__, __ppc64__, __i386__, __x86_64__ are interesting arch macros */
-#if defined(__ppc__)
-#define ARCH_PPC
-#define FPM_PPC 1
-#define HOST_ARCH "darwin/powerpc"
-#define SIZEOF_INT 4
-#define SIZEOF_LONG 4
-#define SIZEOF_LONG_LONG 8
-#elif defined(__ppc64__)
-#define ARCH_PPC
+#if defined(__LP64__)
#define FPM_64BIT 1
-#define SIZEOF_INT 4
-#define SIZEOF_LONG 8
-#define SIZEOF_LONG_LONG 8
-#define HOST_ARCH "darwin/powerpc64"
-#elif defined(__i386__)
-#define ARCH_X86
-#define ARCH_X86_32
-#define BITFIELD_LSBF
+#elif defined(__ppc__) || defined(__ppc64__)
+#define FPM_PPC 1
+#elif defined(__i386__) || defined(__x86_64__)
#define FPM_INTEL 1
-#define HAVE_MMX
-#define HOST_ARCH "darwin/i386"
-#define SIZEOF_INT 4
-#define SIZEOF_LONG 4
-#define SIZEOF_LONG_LONG 8
-#elif defined(__x86_64__)
-#define ARCH_X86
-#define ARCH_X86_64
-#define BITFIELD_LSBF
-#define FPM_64BIT 1
-#define HAVE_MMX
-#define HOST_ARCH "darwin/x64_64"
-#define SIZEOF_INT 4
-#define SIZEOF_LONG 8
-#define SIZEOF_LONG_LONG 8
#endif
#endif /* __APPLE__ */
diff --git a/m4/decoders.m4 b/m4/decoders.m4
index 9f9ae9aeb..58d1c56e5 100644
--- a/m4/decoders.m4
+++ b/m4/decoders.m4
@@ -253,6 +253,8 @@ use internal ffmpeg.
arm*-*)
AC_DEFINE([FPM_ARM], 1, [Define to select libmad fixed point arithmetic implementation])
;;
+ universal-*)
+ ;;
*)
AC_DEFINE([FPM_DEFAULT], 1, [Define to select libmad fixed point arithmetic implementation])
;;