forked from aniani/vim
updated for version 7.4a.029
Problem: Can't build with MzScheme on Ubuntu 13.04. Solution: Add configure check for the "ffi" library.
This commit is contained in:
85
src/auto/configure
vendored
85
src/auto/configure
vendored
@@ -5014,13 +5014,90 @@ $as_echo "needed" >&6; }
|
|||||||
$as_echo "not needed" >&6; }
|
$as_echo "not needed" >&6; }
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ffi_type_void in -lffi" >&5
|
||||||
|
$as_echo_n "checking for ffi_type_void in -lffi... " >&6; }
|
||||||
|
if test "${ac_cv_lib_ffi_ffi_type_void+set}" = set; then :
|
||||||
|
$as_echo_n "(cached) " >&6
|
||||||
|
else
|
||||||
|
ac_check_lib_save_LIBS=$LIBS
|
||||||
|
LIBS="-lffi $LIBS"
|
||||||
|
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||||
|
/* end confdefs.h. */
|
||||||
|
|
||||||
|
/* Override any GCC internal prototype to avoid an error.
|
||||||
|
Use char because int might match the return type of a GCC
|
||||||
|
builtin and then its argument prototype would still apply. */
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C"
|
||||||
|
#endif
|
||||||
|
char ffi_type_void ();
|
||||||
|
int
|
||||||
|
main ()
|
||||||
|
{
|
||||||
|
return ffi_type_void ();
|
||||||
|
;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
_ACEOF
|
||||||
|
if ac_fn_c_try_link "$LINENO"; then :
|
||||||
|
ac_cv_lib_ffi_ffi_type_void=yes
|
||||||
|
else
|
||||||
|
ac_cv_lib_ffi_ffi_type_void=no
|
||||||
|
fi
|
||||||
|
rm -f core conftest.err conftest.$ac_objext \
|
||||||
|
conftest$ac_exeext conftest.$ac_ext
|
||||||
|
LIBS=$ac_check_lib_save_LIBS
|
||||||
|
fi
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ffi_ffi_type_void" >&5
|
||||||
|
$as_echo "$ac_cv_lib_ffi_ffi_type_void" >&6; }
|
||||||
|
if test "x$ac_cv_lib_ffi_ffi_type_void" = x""yes; then :
|
||||||
|
MZSCHEME_LIBS="$MZSCHEME_LIBS -lffi"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
MZSCHEME_CFLAGS="${MZSCHEME_CFLAGS} -I${SCHEME_INC} \
|
MZSCHEME_CFLAGS="${MZSCHEME_CFLAGS} -I${SCHEME_INC} \
|
||||||
-DMZSCHEME_COLLECTS='\"${SCHEME_COLLECTS}collects\"'"
|
-DMZSCHEME_COLLECTS='\"${SCHEME_COLLECTS}collects\"'"
|
||||||
MZSCHEME_SRC="if_mzsch.c"
|
|
||||||
MZSCHEME_OBJ="objects/if_mzsch.o"
|
|
||||||
MZSCHEME_PRO="if_mzsch.pro"
|
|
||||||
$as_echo "#define FEAT_MZSCHEME 1" >>confdefs.h
|
|
||||||
|
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if compile and link flags for MzScheme are sane" >&5
|
||||||
|
$as_echo_n "checking if compile and link flags for MzScheme are sane... " >&6; }
|
||||||
|
cflags_save=$CFLAGS
|
||||||
|
libs_save=$LIBS
|
||||||
|
CFLAGS="$CFLAGS $MZSCHEME_CFLAGS"
|
||||||
|
LIBS="$LIBS $MZSCHEME_LIBS"
|
||||||
|
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||||
|
/* end confdefs.h. */
|
||||||
|
|
||||||
|
int
|
||||||
|
main ()
|
||||||
|
{
|
||||||
|
|
||||||
|
;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
_ACEOF
|
||||||
|
if ac_fn_c_try_link "$LINENO"; then :
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
|
||||||
|
$as_echo "yes" >&6; }; mzs_ok=yes
|
||||||
|
else
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no: MZSCHEME DISABLED" >&5
|
||||||
|
$as_echo "no: MZSCHEME DISABLED" >&6; }; mzs_ok=no
|
||||||
|
fi
|
||||||
|
rm -f core conftest.err conftest.$ac_objext \
|
||||||
|
conftest$ac_exeext conftest.$ac_ext
|
||||||
|
CFLAGS=$cflags_save
|
||||||
|
LIBS=$libs_save
|
||||||
|
if test $mzs_ok = yes; then
|
||||||
|
MZSCHEME_SRC="if_mzsch.c"
|
||||||
|
MZSCHEME_OBJ="objects/if_mzsch.o"
|
||||||
|
MZSCHEME_PRO="if_mzsch.pro"
|
||||||
|
$as_echo "#define FEAT_MZSCHEME 1" >>confdefs.h
|
||||||
|
|
||||||
|
else
|
||||||
|
MZSCHEME_CFLAGS=
|
||||||
|
MZSCHEME_LIBS=
|
||||||
|
MZSCHEME_EXTRA=
|
||||||
|
MZSCHEME_MZC=
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
@@ -702,12 +702,34 @@ if test "$enable_mzschemeinterp" = "yes"; then
|
|||||||
AC_MSG_RESULT(not needed)
|
AC_MSG_RESULT(not needed)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
dnl On Ubuntu this fixes "undefined reference to symbol 'ffi_type_void'".
|
||||||
|
AC_CHECK_LIB(ffi, ffi_type_void, [MZSCHEME_LIBS="$MZSCHEME_LIBS -lffi"])
|
||||||
|
|
||||||
MZSCHEME_CFLAGS="${MZSCHEME_CFLAGS} -I${SCHEME_INC} \
|
MZSCHEME_CFLAGS="${MZSCHEME_CFLAGS} -I${SCHEME_INC} \
|
||||||
-DMZSCHEME_COLLECTS='\"${SCHEME_COLLECTS}collects\"'"
|
-DMZSCHEME_COLLECTS='\"${SCHEME_COLLECTS}collects\"'"
|
||||||
MZSCHEME_SRC="if_mzsch.c"
|
|
||||||
MZSCHEME_OBJ="objects/if_mzsch.o"
|
dnl Test that we can compile a simple program with these CFLAGS and LIBS.
|
||||||
MZSCHEME_PRO="if_mzsch.pro"
|
AC_MSG_CHECKING([if compile and link flags for MzScheme are sane])
|
||||||
AC_DEFINE(FEAT_MZSCHEME)
|
cflags_save=$CFLAGS
|
||||||
|
libs_save=$LIBS
|
||||||
|
CFLAGS="$CFLAGS $MZSCHEME_CFLAGS"
|
||||||
|
LIBS="$LIBS $MZSCHEME_LIBS"
|
||||||
|
AC_TRY_LINK(,[ ],
|
||||||
|
AC_MSG_RESULT(yes); mzs_ok=yes,
|
||||||
|
AC_MSG_RESULT(no: MZSCHEME DISABLED); mzs_ok=no)
|
||||||
|
CFLAGS=$cflags_save
|
||||||
|
LIBS=$libs_save
|
||||||
|
if test $mzs_ok = yes; then
|
||||||
|
MZSCHEME_SRC="if_mzsch.c"
|
||||||
|
MZSCHEME_OBJ="objects/if_mzsch.o"
|
||||||
|
MZSCHEME_PRO="if_mzsch.pro"
|
||||||
|
AC_DEFINE(FEAT_MZSCHEME)
|
||||||
|
else
|
||||||
|
MZSCHEME_CFLAGS=
|
||||||
|
MZSCHEME_LIBS=
|
||||||
|
MZSCHEME_EXTRA=
|
||||||
|
MZSCHEME_MZC=
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
AC_SUBST(MZSCHEME_SRC)
|
AC_SUBST(MZSCHEME_SRC)
|
||||||
AC_SUBST(MZSCHEME_OBJ)
|
AC_SUBST(MZSCHEME_OBJ)
|
||||||
|
@@ -727,6 +727,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
29,
|
||||||
/**/
|
/**/
|
||||||
28,
|
28,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user