Edit

thodg/cgminer/m4/multiarch.m4

Branch :

  • Show log

    Commit

  • Author : Con Kolivas
    Date : 2011-07-04 19:49:03
    Hash : 3320c627
    Message : Added previously missing gnulib files. Conflicts: ocl.c

  • m4/multiarch.m4
  • # multiarch.m4 serial 6
    dnl Copyright (C) 2008-2011 Free Software Foundation, Inc.
    dnl This file is free software; the Free Software Foundation
    dnl gives unlimited permission to copy and/or distribute it,
    dnl with or without modifications, as long as this notice is preserved.
    
    # Determine whether the compiler is or may be producing universal binaries.
    #
    # On MacOS X 10.5 and later systems, the user can create libraries and
    # executables that work on multiple system types--known as "fat" or
    # "universal" binaries--by specifying multiple '-arch' options to the
    # compiler but only a single '-arch' option to the preprocessor.  Like
    # this:
    #
    #     ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
    #                 CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
    #                 CPP="gcc -E" CXXCPP="g++ -E"
    #
    # Detect this situation and set APPLE_UNIVERSAL_BUILD accordingly.
    
    AC_DEFUN_ONCE([gl_MULTIARCH],
    [
      dnl Code similar to autoconf-2.63 AC_C_BIGENDIAN.
      gl_cv_c_multiarch=no
      AC_COMPILE_IFELSE(
        [AC_LANG_SOURCE(
          [[#ifndef __APPLE_CC__
             not a universal capable compiler
            #endif
            typedef int dummy;
          ]])],
        [
         dnl Check for potential -arch flags.  It is not universal unless
         dnl there are at least two -arch flags with different values.
         arch=
         prev=
         for word in ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}; do
           if test -n "$prev"; then
             case $word in
               i?86 | x86_64 | ppc | ppc64)
                 if test -z "$arch" || test "$arch" = "$word"; then
                   arch="$word"
                 else
                   gl_cv_c_multiarch=yes
                 fi
                 ;;
             esac
             prev=
           else
             if test "x$word" = "x-arch"; then
               prev=arch
             fi
           fi
         done
        ])
      if test $gl_cv_c_multiarch = yes; then
        APPLE_UNIVERSAL_BUILD=1
      else
        APPLE_UNIVERSAL_BUILD=0
      fi
      AC_SUBST([APPLE_UNIVERSAL_BUILD])
    ])