+ AC_MSG_CHECKING([for architectures to use in universal binary])
+ AC_MSG_RESULT([$OSX_ARCH_OPTS])
+
+ dnl NOTE: Only the compiler driver needs arch flags. The link editor
+ dnl is incapable of using them but the compiler driver (which we use
+ dnl as LD when building dynamic libraries) uses them to invoke the
+ dnl real ld multiple times. If we moved to libtool -dynamic we would
+ dnl need no arch flags because libtool automatically invokes ld for
+ dnl every architecture found in the fat input files.
+ dnl
+ dnl For static library builds, AR/RANLIB automatically create proper
+ dnl fat archives although AR is unable to update them once RANLIB has
+ dnl made them into proper fat archives. Fortunately, our link process
+ dnl simply removes the .a file before using ar to create a new one.
+ dnl If we did move to libtool -static we still wouldn't need arch flags
+ dnl because libtool automatically figures it out based on input.
+ retest_macosx_linking=yes
+
+ dnl HACK: PCH could be made to work by precompiling for each architecture into separate directories
+ dnl and including all architecture directories with each compiler invocation.
+ dnl That would require a major rework of Bakefile and at the same time it would be nice to have
+ dnl Objective-C++ precompiled headers.
+ AC_MSG_WARN([Disabling precompiled headers due to universal binary build.])
+ bk_use_pch=no
+else
+ if test "x$wxUSE_MAC_ARCH" != xno; then
+ OSX_ARCH_OPTS=$wxUSE_MAC_ARCH
+ fi
+fi
+
+if test "x$OSX_ARCH_OPTS" != "x"; then
+ dnl Check if there is more than one architecture
+ if echo $OSX_ARCH_OPTS | grep -q ","; then
+ disable_macosx_deps=yes
+ fi
+
+ OSX_ARCH_OPTS=`echo $OSX_ARCH_OPTS | sed -e 's/^/-arch /' -e 's/,/ -arch /g'`
+
+ CXXFLAGS="$OSX_ARCH_OPTS $CXXFLAGS"
+ CFLAGS="$OSX_ARCH_OPTS $CFLAGS"
+ OBJCXXFLAGS="$OSX_ARCH_OPTS $OBJCXXFLAGS"
+ OBJCFLAGS="$OSX_ARCH_OPTS $OBJCFLAGS"
+ LDFLAGS="$OSX_ARCH_OPTS $LDFLAGS"
+fi