forked from OSchip/llvm-project
Make --disable-libffi work on systems with libffi installed. Also
make no-ffi the default even on systems with libffi. This fixes http://llvm.org/PR5018. llvm-svn: 95712
This commit is contained in:
parent
893047d43e
commit
914050bc5a
|
@ -727,13 +727,13 @@ fi
|
|||
|
||||
dnl --enable-libffi : check whether the user wants to turn off libffi:
|
||||
AC_ARG_ENABLE(libffi,AS_HELP_STRING(
|
||||
--enable-libffi,[Check for the presence of libffi (default is YES)]),,
|
||||
enableval=yes)
|
||||
case "$enableval" in
|
||||
yes) llvm_cv_enable_libffi="yes" ;;
|
||||
no) llvm_cv_enable_libffi="no" ;;
|
||||
*) AC_MSG_ERROR([Invalid setting for --enable-libffi. Use "yes" or "no"]) ;;
|
||||
esac
|
||||
--enable-libffi,[Check for the presence of libffi (default is NO)]),
|
||||
[case "$enableval" in
|
||||
yes) llvm_cv_enable_libffi="yes" ;;
|
||||
no) llvm_cv_enable_libffi="no" ;;
|
||||
*) AC_MSG_ERROR([Invalid setting for --enable-libffi. Use "yes" or "no"]) ;;
|
||||
esac],
|
||||
llvm_cv_enable_libffi=no)
|
||||
|
||||
dnl Only Windows needs dynamic libCompilerDriver to support plugins.
|
||||
if test "$llvm_cv_os_type" = "Win32" ; then
|
||||
|
@ -1021,7 +1021,7 @@ dnl libffi is optional; used to call external functions from the interpreter
|
|||
if test "$llvm_cv_enable_libffi" = "yes" ; then
|
||||
AC_SEARCH_LIBS(ffi_call,ffi,AC_DEFINE([HAVE_FFI_CALL],[1],
|
||||
[Define if libffi is available on this platform.]),
|
||||
AC_MSG_WARN([libffi not found - disabling external calls from interpreter]))
|
||||
AC_MSG_ERROR([libffi not found - configure without --enable-libffi to compile without it]))
|
||||
fi
|
||||
|
||||
dnl mallinfo is optional; the code can compile (minus features) without it
|
||||
|
|
|
@ -1410,7 +1410,7 @@ Optional Features:
|
|||
%a (default is YES)
|
||||
--enable-bindings Build specific language bindings:
|
||||
all,auto,none,{binding-name} (default=auto)
|
||||
--enable-libffi Check for the presence of libffi (default is YES)
|
||||
--enable-libffi Check for the presence of libffi (default is NO)
|
||||
--enable-llvmc-dynamic Link LLVMC dynamically (default is NO, unless on
|
||||
Win32)
|
||||
--enable-llvmc-dynamic-plugins
|
||||
|
@ -5203,18 +5203,17 @@ fi
|
|||
|
||||
# Check whether --enable-libffi was given.
|
||||
if test "${enable_libffi+set}" = set; then
|
||||
enableval=$enable_libffi;
|
||||
else
|
||||
enableval=yes
|
||||
fi
|
||||
|
||||
case "$enableval" in
|
||||
yes) llvm_cv_enable_libffi="yes" ;;
|
||||
no) llvm_cv_enable_libffi="no" ;;
|
||||
*) { { echo "$as_me:$LINENO: error: Invalid setting for --enable-libffi. Use \"yes\" or \"no\"" >&5
|
||||
enableval=$enable_libffi; case "$enableval" in
|
||||
yes) llvm_cv_enable_libffi="yes" ;;
|
||||
no) llvm_cv_enable_libffi="no" ;;
|
||||
*) { { echo "$as_me:$LINENO: error: Invalid setting for --enable-libffi. Use \"yes\" or \"no\"" >&5
|
||||
echo "$as_me: error: Invalid setting for --enable-libffi. Use \"yes\" or \"no\"" >&2;}
|
||||
{ (exit 1); exit 1; }; } ;;
|
||||
esac
|
||||
esac
|
||||
else
|
||||
llvm_cv_enable_libffi=no
|
||||
fi
|
||||
|
||||
|
||||
if test "$llvm_cv_os_type" = "Win32" ; then
|
||||
llvmc_dynamic="yes"
|
||||
|
@ -11036,7 +11035,7 @@ else
|
|||
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
||||
lt_status=$lt_dlunknown
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 11039 "configure"
|
||||
#line 11038 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
#if HAVE_DLFCN_H
|
||||
|
@ -13371,8 +13370,9 @@ cat >>confdefs.h <<\_ACEOF
|
|||
_ACEOF
|
||||
|
||||
else
|
||||
{ echo "$as_me:$LINENO: WARNING: libffi not found - disabling external calls from interpreter" >&5
|
||||
echo "$as_me: WARNING: libffi not found - disabling external calls from interpreter" >&2;}
|
||||
{ { echo "$as_me:$LINENO: error: libffi not found - configure without --enable-libffi to compile without it" >&5
|
||||
echo "$as_me: error: libffi not found - configure without --enable-libffi to compile without it" >&2;}
|
||||
{ (exit 1); exit 1; }; }
|
||||
fi
|
||||
|
||||
fi
|
||||
|
|
|
@ -604,7 +604,11 @@ on LLVM 2.6, this section lists some "gotchas" that you may run into upgrading
|
|||
from the previous release.</p>
|
||||
|
||||
<ul>
|
||||
<li>...</li>
|
||||
<li>The LLVM interpreter now defaults to <em>not</em> using <tt>libffi</tt> even
|
||||
if you have it installed. This makes it more likely that an LLVM built on one
|
||||
system will work when copied to a similar system. To use <tt>libffi</tt>,
|
||||
configure with <tt>--enable-libffi</tt>.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue