| OLD | NEW |
| (Empty) |
| 1 # multiarch.m4 serial 5 | |
| 2 dnl Copyright (C) 2008, 2009, 2010, 2011 Free Software Foundation, Inc. | |
| 3 dnl This file is free software; the Free Software Foundation | |
| 4 dnl gives unlimited permission to copy and/or distribute it, | |
| 5 dnl with or without modifications, as long as this notice is preserved. | |
| 6 | |
| 7 # Determine whether the compiler is or may be producing universal binaries. | |
| 8 # | |
| 9 # On MacOS X 10.5 and later systems, the user can create libraries and | |
| 10 # executables that work on multiple system types--known as "fat" or | |
| 11 # "universal" binaries--by specifying multiple '-arch' options to the | |
| 12 # compiler but only a single '-arch' option to the preprocessor. Like | |
| 13 # this: | |
| 14 # | |
| 15 # ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ | |
| 16 # CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ | |
| 17 # CPP="gcc -E" CXXCPP="g++ -E" | |
| 18 # | |
| 19 # Detect this situation and set the macro AA_APPLE_UNIVERSAL_BUILD at the | |
| 20 # beginning of config.h and set APPLE_UNIVERSAL_BUILD accordingly. | |
| 21 | |
| 22 AC_DEFUN_ONCE([gl_MULTIARCH], | |
| 23 [ | |
| 24 dnl Code similar to autoconf-2.63 AC_C_BIGENDIAN. | |
| 25 gl_cv_c_multiarch=no | |
| 26 AC_COMPILE_IFELSE( | |
| 27 [AC_LANG_SOURCE( | |
| 28 [[#ifndef __APPLE_CC__ | |
| 29 not a universal capable compiler | |
| 30 #endif | |
| 31 typedef int dummy; | |
| 32 ]])], | |
| 33 [ | |
| 34 dnl Check for potential -arch flags. It is not universal unless | |
| 35 dnl there are at least two -arch flags with different values. | |
| 36 arch= | |
| 37 prev= | |
| 38 for word in ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}; do | |
| 39 if test -n "$prev"; then | |
| 40 case $word in | |
| 41 i?86 | x86_64 | ppc | ppc64) | |
| 42 if test -z "$arch" || test "$arch" = "$word"; then | |
| 43 arch="$word" | |
| 44 else | |
| 45 gl_cv_c_multiarch=yes | |
| 46 fi | |
| 47 ;; | |
| 48 esac | |
| 49 prev= | |
| 50 else | |
| 51 if test "x$word" = "x-arch"; then | |
| 52 prev=arch | |
| 53 fi | |
| 54 fi | |
| 55 done | |
| 56 ]) | |
| 57 if test $gl_cv_c_multiarch = yes; then | |
| 58 AC_DEFINE([AA_APPLE_UNIVERSAL_BUILD], [1], | |
| 59 [Define if the compiler is building for multiple architectures of Apple pl
atforms at once.]) | |
| 60 APPLE_UNIVERSAL_BUILD=1 | |
| 61 else | |
| 62 APPLE_UNIVERSAL_BUILD=0 | |
| 63 fi | |
| 64 AC_SUBST([APPLE_UNIVERSAL_BUILD]) | |
| 65 ]) | |
| OLD | NEW |