Initial support for being able to specify the llvm-gcc to use like this:

--with-llvmgcc="gcc-4.5 -fplugin=dragonegg.so"

llvm-svn: 120149
This commit is contained in:
Duncan Sands 2010-11-25 17:47:42 +00:00
parent faec0b3c74
commit 606d5c0424
2 changed files with 14 additions and 16 deletions

View File

@ -1425,10 +1425,9 @@ AC_CHECK_FUNCS([__dso_handle])
dnl Check wether llvm-gcc is based on dragonegg
AC_CACHE_CHECK([whether llvm-gcc is dragonegg],[llvm_cv_llvmgcc_dragonegg],
[llvm_cv_llvmgcc_dragonegg="no"
if test -x "$LLVMGCC" ; then
if test -n "$LLVMGCC" ; then
cp /dev/null conftest.c
"$LLVMGCC" -fplugin-arg-dragonegg-emit-ir -S -o - conftest.c | \
grep 'target datalayout =' > /dev/null 2>&1
$LLVMGCC -fplugin-arg-dragonegg-emit-ir -S -o - conftest.c > /dev/null 2>&1
if test $? -eq 0 ; then
llvm_cv_llvmgcc_dragonegg="yes"
fi
@ -1450,9 +1449,9 @@ AC_SUBST(LLVMCC_EMITIR_FLAG)
dnl See if the llvm-gcc executable can compile to LLVM assembly
AC_CACHE_CHECK([whether llvm-gcc is sane],[llvm_cv_llvmgcc_sanity],
[llvm_cv_llvmgcc_sanity="no"
if test -x "$LLVMGCC" ; then
if test -n "$LLVMGCC" ; then
cp /dev/null conftest.c
"$LLVMGCC" "$LLVMCC_EMITIR_FLAG" -S -o - conftest.c | \
$LLVMGCC "$LLVMCC_EMITIR_FLAG" -S -o - conftest.c | \
grep 'target datalayout =' > /dev/null 2>&1
if test $? -eq 0 ; then
llvm_cv_llvmgcc_sanity="yes"
@ -1464,13 +1463,13 @@ dnl Since we have a sane llvm-gcc, identify it and its sub-tools
dnl Furthermore, add some information about the tools
if test "$llvm_cv_llvmgcc_sanity" = "yes" ; then
AC_MSG_CHECKING([llvm-gcc component support])
llvmcc1path=`"$LLVMGCC" --print-prog-name=cc1`
llvmcc1path=`$LLVMGCC --print-prog-name=cc1`
AC_SUBST(LLVMCC1,$llvmcc1path)
llvmcc1pluspath=`"$LLVMGCC" --print-prog-name=cc1plus`
llvmcc1pluspath=`$LLVMGCC --print-prog-name=cc1plus`
AC_SUBST(LLVMCC1PLUS,$llvmcc1pluspath)
llvmgccdir=`echo "$llvmcc1path" | sed 's,/libexec/.*,,'`
AC_SUBST(LLVMGCCDIR,$llvmgccdir)
llvmgcclangs=[`"$LLVMGCC" -v --help 2>&1 | grep '^Configured with:' | sed 's/^.*--enable-languages=\([^ ]*\).*/\1/'`]
llvmgcclangs=[`$LLVMGCC -v --help 2>&1 | grep '^Configured with:' | sed 's/^.*--enable-languages=\([^ ]*\).*/\1/'`]
AC_SUBST(LLVMGCC_LANGS,$llvmgcclangs)
AC_SUBST(LLVMGCC_DRAGONEGG,$llvm_cv_llvmgcc_dragonegg)
AC_SUBST(LLVMGCC_DISABLEOPT_FLAGS)

15
llvm/configure vendored
View File

@ -20586,10 +20586,9 @@ if test "${llvm_cv_llvmgcc_dragonegg+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
llvm_cv_llvmgcc_dragonegg="no"
if test -x "$LLVMGCC" ; then
if test -n "$LLVMGCC" ; then
cp /dev/null conftest.c
"$LLVMGCC" -fplugin-arg-dragonegg-emit-ir -S -o - conftest.c | \
grep 'target datalayout =' > /dev/null 2>&1
$LLVMGCC -fplugin-arg-dragonegg-emit-ir -S -o - conftest.c > /dev/null 2>&1
if test $? -eq 0 ; then
llvm_cv_llvmgcc_dragonegg="yes"
fi
@ -20615,9 +20614,9 @@ if test "${llvm_cv_llvmgcc_sanity+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
llvm_cv_llvmgcc_sanity="no"
if test -x "$LLVMGCC" ; then
if test -n "$LLVMGCC" ; then
cp /dev/null conftest.c
"$LLVMGCC" "$LLVMCC_EMITIR_FLAG" -S -o - conftest.c | \
$LLVMGCC "$LLVMCC_EMITIR_FLAG" -S -o - conftest.c | \
grep 'target datalayout =' > /dev/null 2>&1
if test $? -eq 0 ; then
llvm_cv_llvmgcc_sanity="yes"
@ -20631,16 +20630,16 @@ echo "${ECHO_T}$llvm_cv_llvmgcc_sanity" >&6; }
if test "$llvm_cv_llvmgcc_sanity" = "yes" ; then
{ echo "$as_me:$LINENO: checking llvm-gcc component support" >&5
echo $ECHO_N "checking llvm-gcc component support... $ECHO_C" >&6; }
llvmcc1path=`"$LLVMGCC" --print-prog-name=cc1`
llvmcc1path=`$LLVMGCC --print-prog-name=cc1`
LLVMCC1=$llvmcc1path
llvmcc1pluspath=`"$LLVMGCC" --print-prog-name=cc1plus`
llvmcc1pluspath=`$LLVMGCC --print-prog-name=cc1plus`
LLVMCC1PLUS=$llvmcc1pluspath
llvmgccdir=`echo "$llvmcc1path" | sed 's,/libexec/.*,,'`
LLVMGCCDIR=$llvmgccdir
llvmgcclangs=`"$LLVMGCC" -v --help 2>&1 | grep '^Configured with:' | sed 's/^.*--enable-languages=\([^ ]*\).*/\1/'`
llvmgcclangs=`$LLVMGCC -v --help 2>&1 | grep '^Configured with:' | sed 's/^.*--enable-languages=\([^ ]*\).*/\1/'`
LLVMGCC_LANGS=$llvmgcclangs
LLVMGCC_DRAGONEGG=$llvm_cv_llvmgcc_dragonegg