summaryrefslogtreecommitdiff
path: root/autoconf/m4
diff options
context:
space:
mode:
authorReid Spencer <rspencer@reidspencer.com>2006-07-26 20:45:12 +0000
committerReid Spencer <rspencer@reidspencer.com>2006-07-26 20:45:12 +0000
commit93b59c61db5c9d677abcbc7c3f9ffcc05d19255a (patch)
treeb31458e601154d82ae19e1348f59ab13166a4d7a /autoconf/m4
parent7d84661210fcedf8583c75849f09fe83facd541e (diff)
downloadllvm-93b59c61db5c9d677abcbc7c3f9ffcc05d19255a.tar.gz
llvm-93b59c61db5c9d677abcbc7c3f9ffcc05d19255a.tar.bz2
llvm-93b59c61db5c9d677abcbc7c3f9ffcc05d19255a.tar.xz
For PR814:
Add a macro for getting the build host extension for executable. Patch contributed by Anton Korobeynikov. Thanks! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29304 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'autoconf/m4')
-rw-r--r--autoconf/m4/build_exeext.m442
1 files changed, 42 insertions, 0 deletions
diff --git a/autoconf/m4/build_exeext.m4 b/autoconf/m4/build_exeext.m4
new file mode 100644
index 0000000000..e44b58b8d9
--- /dev/null
+++ b/autoconf/m4/build_exeext.m4
@@ -0,0 +1,42 @@
+# Check for the extension used for executables on build platform.
+# This is necessary for cross-compiling where the build platform
+# may differ from the host platform.
+AC_DEFUN([AC_BUILD_EXEEXT],
+[
+AC_MSG_CHECKING([for executable suffix on build platform])
+AC_CACHE_VAL(ac_cv_build_exeext,
+[if test "$CYGWIN" = yes || test "$MINGW32" = yes; then
+ ac_cv_build_exeext=.exe
+else
+ ac_build_prefix=${build_alias}-
+
+ AC_CHECK_PROG(BUILD_CC, ${ac_build_prefix}gcc, ${ac_build_prefix}gcc)
+ if test -z "$BUILD_CC"; then
+ AC_CHECK_PROG(BUILD_CC, gcc, gcc)
+ if test -z "$BUILD_CC"; then
+ AC_CHECK_PROG(BUILD_CC, cc, cc, , , /usr/ucb/cc)
+ fi
+ fi
+ test -z "$BUILD_CC" && AC_MSG_ERROR([no acceptable cc found in \$PATH])
+ ac_build_link='${BUILD_CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&AS_MESSAGE_LOG_FD'
+ rm -f conftest*
+ echo 'int main () { return 0; }' > conftest.$ac_ext
+ ac_cv_build_exeext=
+ if AC_TRY_EVAL(ac_build_link); then
+ for file in conftest.*; do
+ case $file in
+ *.c | *.o | *.obj) ;;
+ *) ac_cv_build_exeext=`echo $file | sed -e s/conftest//` ;;
+ esac
+ done
+ else
+ AC_MSG_ERROR([installation or configuration problem: compiler cannot create executables.])
+ fi
+ rm -f conftest*
+ test x"${ac_cv_build_exeext}" = x && ac_cv_build_exeext=blank
+fi])
+BUILD_EXEEXT=""
+test x"${ac_cv_build_exeext}" != xblank && BUILD_EXEEXT=${ac_cv_build_exeext}
+AC_MSG_RESULT(${ac_cv_build_exeext})
+ac_build_exeext=$BUILD_EXEEXT
+AC_SUBST(BUILD_EXEEXT)])