mirror of
https://github.com/vim/vim.git
synced 2025-09-29 04:34:16 -04:00
patch 9.0.1765: Error when cross-compiling Vim
Problem: Error when cross-compiling Vim Solution: use AC_CHECK_SIZEOF to find sizeof(wchar_t) This fixes an error when cross compiling. closes: #12828 Bug: https://bugs.gentoo.org/889430 Signed-off-by: Mike Gilbert <floppym@gentoo.org> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
4924ad099f
commit
a055b441f5
275
src/auto/configure
vendored
275
src/auto/configure
vendored
@@ -1980,114 +1980,6 @@ $as_echo "$ac_res" >&6; }
|
|||||||
|
|
||||||
} # ac_fn_c_check_func
|
} # ac_fn_c_check_func
|
||||||
|
|
||||||
# ac_fn_c_check_type LINENO TYPE VAR INCLUDES
|
|
||||||
# -------------------------------------------
|
|
||||||
# Tests whether TYPE exists after having included INCLUDES, setting cache
|
|
||||||
# variable VAR accordingly.
|
|
||||||
ac_fn_c_check_type ()
|
|
||||||
{
|
|
||||||
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
|
|
||||||
$as_echo_n "checking for $2... " >&6; }
|
|
||||||
if eval \${$3+:} false; then :
|
|
||||||
$as_echo_n "(cached) " >&6
|
|
||||||
else
|
|
||||||
eval "$3=no"
|
|
||||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
|
||||||
/* end confdefs.h. */
|
|
||||||
$4
|
|
||||||
int
|
|
||||||
main ()
|
|
||||||
{
|
|
||||||
if (sizeof ($2))
|
|
||||||
return 0;
|
|
||||||
;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
_ACEOF
|
|
||||||
if ac_fn_c_try_compile "$LINENO"; then :
|
|
||||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
|
||||||
/* end confdefs.h. */
|
|
||||||
$4
|
|
||||||
int
|
|
||||||
main ()
|
|
||||||
{
|
|
||||||
if (sizeof (($2)))
|
|
||||||
return 0;
|
|
||||||
;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
_ACEOF
|
|
||||||
if ac_fn_c_try_compile "$LINENO"; then :
|
|
||||||
|
|
||||||
else
|
|
||||||
eval "$3=yes"
|
|
||||||
fi
|
|
||||||
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
|
||||||
fi
|
|
||||||
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
|
||||||
fi
|
|
||||||
eval ac_res=\$$3
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
|
|
||||||
$as_echo "$ac_res" >&6; }
|
|
||||||
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
|
|
||||||
|
|
||||||
} # ac_fn_c_check_type
|
|
||||||
|
|
||||||
# ac_fn_c_find_uintX_t LINENO BITS VAR
|
|
||||||
# ------------------------------------
|
|
||||||
# Finds an unsigned integer type with width BITS, setting cache variable VAR
|
|
||||||
# accordingly.
|
|
||||||
ac_fn_c_find_uintX_t ()
|
|
||||||
{
|
|
||||||
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uint$2_t" >&5
|
|
||||||
$as_echo_n "checking for uint$2_t... " >&6; }
|
|
||||||
if eval \${$3+:} false; then :
|
|
||||||
$as_echo_n "(cached) " >&6
|
|
||||||
else
|
|
||||||
eval "$3=no"
|
|
||||||
# Order is important - never check a type that is potentially smaller
|
|
||||||
# than half of the expected target width.
|
|
||||||
for ac_type in uint$2_t 'unsigned int' 'unsigned long int' \
|
|
||||||
'unsigned long long int' 'unsigned short int' 'unsigned char'; do
|
|
||||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
|
||||||
/* end confdefs.h. */
|
|
||||||
$ac_includes_default
|
|
||||||
int
|
|
||||||
main ()
|
|
||||||
{
|
|
||||||
static int test_array [1 - 2 * !((($ac_type) -1 >> ($2 / 2 - 1)) >> ($2 / 2 - 1) == 3)];
|
|
||||||
test_array [0] = 0;
|
|
||||||
return test_array [0];
|
|
||||||
|
|
||||||
;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
_ACEOF
|
|
||||||
if ac_fn_c_try_compile "$LINENO"; then :
|
|
||||||
case $ac_type in #(
|
|
||||||
uint$2_t) :
|
|
||||||
eval "$3=yes" ;; #(
|
|
||||||
*) :
|
|
||||||
eval "$3=\$ac_type" ;;
|
|
||||||
esac
|
|
||||||
fi
|
|
||||||
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
|
||||||
if eval test \"x\$"$3"\" = x"no"; then :
|
|
||||||
|
|
||||||
else
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
eval ac_res=\$$3
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
|
|
||||||
$as_echo "$ac_res" >&6; }
|
|
||||||
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
|
|
||||||
|
|
||||||
} # ac_fn_c_find_uintX_t
|
|
||||||
|
|
||||||
# ac_fn_c_compute_int LINENO EXPR VAR INCLUDES
|
# ac_fn_c_compute_int LINENO EXPR VAR INCLUDES
|
||||||
# --------------------------------------------
|
# --------------------------------------------
|
||||||
# Tries to find the compile-time value of EXPR in a program that includes
|
# Tries to find the compile-time value of EXPR in a program that includes
|
||||||
@@ -2270,6 +2162,114 @@ rm -f conftest.val
|
|||||||
as_fn_set_status $ac_retval
|
as_fn_set_status $ac_retval
|
||||||
|
|
||||||
} # ac_fn_c_compute_int
|
} # ac_fn_c_compute_int
|
||||||
|
|
||||||
|
# ac_fn_c_check_type LINENO TYPE VAR INCLUDES
|
||||||
|
# -------------------------------------------
|
||||||
|
# Tests whether TYPE exists after having included INCLUDES, setting cache
|
||||||
|
# variable VAR accordingly.
|
||||||
|
ac_fn_c_check_type ()
|
||||||
|
{
|
||||||
|
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
|
||||||
|
$as_echo_n "checking for $2... " >&6; }
|
||||||
|
if eval \${$3+:} false; then :
|
||||||
|
$as_echo_n "(cached) " >&6
|
||||||
|
else
|
||||||
|
eval "$3=no"
|
||||||
|
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||||
|
/* end confdefs.h. */
|
||||||
|
$4
|
||||||
|
int
|
||||||
|
main ()
|
||||||
|
{
|
||||||
|
if (sizeof ($2))
|
||||||
|
return 0;
|
||||||
|
;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
_ACEOF
|
||||||
|
if ac_fn_c_try_compile "$LINENO"; then :
|
||||||
|
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||||
|
/* end confdefs.h. */
|
||||||
|
$4
|
||||||
|
int
|
||||||
|
main ()
|
||||||
|
{
|
||||||
|
if (sizeof (($2)))
|
||||||
|
return 0;
|
||||||
|
;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
_ACEOF
|
||||||
|
if ac_fn_c_try_compile "$LINENO"; then :
|
||||||
|
|
||||||
|
else
|
||||||
|
eval "$3=yes"
|
||||||
|
fi
|
||||||
|
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||||
|
fi
|
||||||
|
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||||
|
fi
|
||||||
|
eval ac_res=\$$3
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
|
||||||
|
$as_echo "$ac_res" >&6; }
|
||||||
|
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
|
||||||
|
|
||||||
|
} # ac_fn_c_check_type
|
||||||
|
|
||||||
|
# ac_fn_c_find_uintX_t LINENO BITS VAR
|
||||||
|
# ------------------------------------
|
||||||
|
# Finds an unsigned integer type with width BITS, setting cache variable VAR
|
||||||
|
# accordingly.
|
||||||
|
ac_fn_c_find_uintX_t ()
|
||||||
|
{
|
||||||
|
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uint$2_t" >&5
|
||||||
|
$as_echo_n "checking for uint$2_t... " >&6; }
|
||||||
|
if eval \${$3+:} false; then :
|
||||||
|
$as_echo_n "(cached) " >&6
|
||||||
|
else
|
||||||
|
eval "$3=no"
|
||||||
|
# Order is important - never check a type that is potentially smaller
|
||||||
|
# than half of the expected target width.
|
||||||
|
for ac_type in uint$2_t 'unsigned int' 'unsigned long int' \
|
||||||
|
'unsigned long long int' 'unsigned short int' 'unsigned char'; do
|
||||||
|
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||||
|
/* end confdefs.h. */
|
||||||
|
$ac_includes_default
|
||||||
|
int
|
||||||
|
main ()
|
||||||
|
{
|
||||||
|
static int test_array [1 - 2 * !((($ac_type) -1 >> ($2 / 2 - 1)) >> ($2 / 2 - 1) == 3)];
|
||||||
|
test_array [0] = 0;
|
||||||
|
return test_array [0];
|
||||||
|
|
||||||
|
;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
_ACEOF
|
||||||
|
if ac_fn_c_try_compile "$LINENO"; then :
|
||||||
|
case $ac_type in #(
|
||||||
|
uint$2_t) :
|
||||||
|
eval "$3=yes" ;; #(
|
||||||
|
*) :
|
||||||
|
eval "$3=\$ac_type" ;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||||
|
if eval test \"x\$"$3"\" = x"no"; then :
|
||||||
|
|
||||||
|
else
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
eval ac_res=\$$3
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
|
||||||
|
$as_echo "$ac_res" >&6; }
|
||||||
|
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
|
||||||
|
|
||||||
|
} # ac_fn_c_find_uintX_t
|
||||||
cat >auto/config.log <<_ACEOF
|
cat >auto/config.log <<_ACEOF
|
||||||
This file contains any messages produced by compilers while
|
This file contains any messages produced by compilers while
|
||||||
running configure, to aid debugging if configure makes a mistake.
|
running configure, to aid debugging if configure makes a mistake.
|
||||||
@@ -9204,43 +9204,40 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
|||||||
|
|
||||||
LDFLAGS="$ac_save_LDFLAGS"
|
LDFLAGS="$ac_save_LDFLAGS"
|
||||||
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of wchar_t is 2 bytes" >&5
|
# The cast to long int works around a bug in the HP C Compiler
|
||||||
$as_echo_n "checking size of wchar_t is 2 bytes... " >&6; }
|
# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
|
||||||
if ${ac_cv_small_wchar_t+:} false; then :
|
# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
|
||||||
|
# This bug is HP SR number 8606223364.
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of wchar_t" >&5
|
||||||
|
$as_echo_n "checking size of wchar_t... " >&6; }
|
||||||
|
if ${ac_cv_sizeof_wchar_t+:} false; then :
|
||||||
$as_echo_n "(cached) " >&6
|
$as_echo_n "(cached) " >&6
|
||||||
else
|
else
|
||||||
if test "$cross_compiling" = yes; then :
|
if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (wchar_t))" "ac_cv_sizeof_wchar_t" "$ac_includes_default"; then :
|
||||||
as_fn_error $? "failed to compile test program" "$LINENO" 5
|
|
||||||
else
|
|
||||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
|
||||||
/* end confdefs.h. */
|
|
||||||
|
|
||||||
#include <X11/Xlib.h>
|
else
|
||||||
#if STDC_HEADERS
|
if test "$ac_cv_type_wchar_t" = yes; then
|
||||||
# include <stdlib.h>
|
{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
|
||||||
# include <stddef.h>
|
$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
|
||||||
#endif
|
as_fn_error 77 "cannot compute sizeof (wchar_t)
|
||||||
int main()
|
See \`config.log' for more details" "$LINENO" 5; }
|
||||||
{
|
else
|
||||||
if (sizeof(wchar_t) <= 2)
|
ac_cv_sizeof_wchar_t=0
|
||||||
exit(1);
|
fi
|
||||||
exit(0);
|
fi
|
||||||
}
|
|
||||||
|
fi
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_wchar_t" >&5
|
||||||
|
$as_echo "$ac_cv_sizeof_wchar_t" >&6; }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
cat >>confdefs.h <<_ACEOF
|
||||||
|
#define SIZEOF_WCHAR_T $ac_cv_sizeof_wchar_t
|
||||||
_ACEOF
|
_ACEOF
|
||||||
if ac_fn_c_try_run "$LINENO"; then :
|
|
||||||
ac_cv_small_wchar_t="no"
|
|
||||||
else
|
|
||||||
ac_cv_small_wchar_t="yes"
|
|
||||||
fi
|
|
||||||
rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
|
|
||||||
conftest.$ac_objext conftest.beam conftest.$ac_ext
|
|
||||||
fi
|
|
||||||
|
|
||||||
fi
|
|
||||||
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_small_wchar_t" >&5
|
if test "$ac_cv_sizeof_wchar_t" -le 2; then
|
||||||
$as_echo "$ac_cv_small_wchar_t" >&6; }
|
|
||||||
if test "x$ac_cv_small_wchar_t" = "xyes" ; then
|
|
||||||
$as_echo "#define SMALL_WCHAR_T 1" >>confdefs.h
|
$as_echo "#define SMALL_WCHAR_T 1" >>confdefs.h
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
@@ -2416,25 +2416,8 @@ else
|
|||||||
|
|
||||||
LDFLAGS="$ac_save_LDFLAGS"
|
LDFLAGS="$ac_save_LDFLAGS"
|
||||||
|
|
||||||
AC_MSG_CHECKING(size of wchar_t is 2 bytes)
|
AC_CHECK_SIZEOF([wchar_t])
|
||||||
AC_CACHE_VAL(ac_cv_small_wchar_t,
|
if test "$ac_cv_sizeof_wchar_t" -le 2; then
|
||||||
[AC_RUN_IFELSE([AC_LANG_SOURCE([
|
|
||||||
#include <X11/Xlib.h>
|
|
||||||
#if STDC_HEADERS
|
|
||||||
# include <stdlib.h>
|
|
||||||
# include <stddef.h>
|
|
||||||
#endif
|
|
||||||
int main()
|
|
||||||
{
|
|
||||||
if (sizeof(wchar_t) <= 2)
|
|
||||||
exit(1);
|
|
||||||
exit(0);
|
|
||||||
}])],
|
|
||||||
ac_cv_small_wchar_t="no",
|
|
||||||
ac_cv_small_wchar_t="yes",
|
|
||||||
AC_MSG_ERROR(failed to compile test program))])
|
|
||||||
AC_MSG_RESULT($ac_cv_small_wchar_t)
|
|
||||||
if test "x$ac_cv_small_wchar_t" = "xyes" ; then
|
|
||||||
AC_DEFINE(SMALL_WCHAR_T)
|
AC_DEFINE(SMALL_WCHAR_T)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@@ -695,6 +695,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 */
|
||||||
|
/**/
|
||||||
|
1765,
|
||||||
/**/
|
/**/
|
||||||
1764,
|
1764,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user