diff options
author | Bram Moolenaar <Bram@vim.org> | 2014-10-11 14:47:26 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2014-10-11 14:47:26 +0200 |
commit | cbc246a331dc8dea49f6ad443be3d10ec68ef2c2 (patch) | |
tree | 28143a4a295066093221ed840dde7c2ada513181 /src | |
parent | 2a9853925bee1b85247cd5f4ccf98fec1871d1f7 (diff) | |
download | vim-git-cbc246a331dc8dea49f6ad443be3d10ec68ef2c2.tar.gz |
updated for version 7.4.475v7.4.475
Problem: Can't compile on a system where Xutf8SetWMProperties() is not in
the X11 library. Issue 265.
Solution: Add a configure check.
Diffstat (limited to 'src')
-rwxr-xr-x | src/auto/configure | 53 | ||||
-rw-r--r-- | src/config.h.in | 3 | ||||
-rw-r--r-- | src/configure.in | 29 | ||||
-rw-r--r-- | src/os_unix.c | 7 | ||||
-rw-r--r-- | src/version.c | 2 |
5 files changed, 68 insertions, 26 deletions
diff --git a/src/auto/configure b/src/auto/configure index b0fba306e..f5195b246 100755 --- a/src/auto/configure +++ b/src/auto/configure @@ -12732,16 +12732,15 @@ $as_echo "$vim_cv_memcpy_handles_overlap" >&6; } fi - -if test "$enable_multibyte" = "yes"; then +if test "x$with_x" = "xyes"; then cflags_save=$CFLAGS - ldflags_save=$LDFLAGS - if test "x$x_includes" != "xNONE" ; then - CFLAGS="$CFLAGS -I$x_includes" - LDFLAGS="$X_LIBS $LDFLAGS -lX11" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether X_LOCALE needed" >&5 + libs_save=$LIBS + LIBS="$LIBS $X_LIBS $GUI_LIB_LOC $GUI_X_LIBS $X_PRE_LIBS $X_LIB $X_EXTRA_LIBS" + CFLAGS="$CFLAGS $X_CFLAGS" + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether X_LOCALE needed" >&5 $as_echo_n "checking whether X_LOCALE needed... " >&6; } - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include <X11/Xlocale.h> int @@ -12774,7 +12773,7 @@ _ACEOF if ac_fn_c_try_link "$LINENO"; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } - $as_echo "#define X_LOCALE 1" >>confdefs.h + $as_echo "#define X_LOCALE 1" >>confdefs.h else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 @@ -12787,9 +12786,41 @@ else $as_echo "no" >&6; } fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Xutf8SetWMProperties() can be used" >&5 +$as_echo_n "checking whether Xutf8SetWMProperties() can be used... " >&6; } + 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 Xutf8SetWMProperties (); +int +main () +{ +return Xutf8SetWMProperties (); + ; + 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; } + $as_echo "#define HAVE_XUTF8SETWMPROPERTIES 1" >>confdefs.h + +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + CFLAGS=$cflags_save - LDFLAGS=$ldflags_save + LIBS=$libs_save fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _xpg4_setrunelocale in -lxpg4" >&5 diff --git a/src/config.h.in b/src/config.h.in index 7f16e622a..b8168a55f 100644 --- a/src/config.h.in +++ b/src/config.h.in @@ -446,3 +446,6 @@ /* Define if we have AvailabilityMacros.h on Mac OS X */ #undef HAVE_AVAILABILITYMACROS_H + +/* Define if Xutf8SetWMProperties() is in an X library. */ +#undef HAVE_XUTF8SETWMPROPERTIES diff --git a/src/configure.in b/src/configure.in index 62785e171..ff1f4824b 100644 --- a/src/configure.in +++ b/src/configure.in @@ -3730,21 +3730,24 @@ fi dnl Check for multibyte locale functions dnl Find out if _Xsetlocale() is supported by libX11. dnl Check if X_LOCALE should be defined. - -if test "$enable_multibyte" = "yes"; then +if test "x$with_x" = "xyes"; then cflags_save=$CFLAGS - ldflags_save=$LDFLAGS - if test "x$x_includes" != "xNONE" ; then - CFLAGS="$CFLAGS -I$x_includes" - LDFLAGS="$X_LIBS $LDFLAGS -lX11" - AC_MSG_CHECKING(whether X_LOCALE needed) - AC_TRY_COMPILE([#include <X11/Xlocale.h>],, - AC_TRY_LINK_FUNC([_Xsetlocale], [AC_MSG_RESULT(yes) - AC_DEFINE(X_LOCALE)], AC_MSG_RESULT(no)), - AC_MSG_RESULT(no)) - fi + libs_save=$LIBS + LIBS="$LIBS $X_LIBS $GUI_LIB_LOC $GUI_X_LIBS $X_PRE_LIBS $X_LIB $X_EXTRA_LIBS" + CFLAGS="$CFLAGS $X_CFLAGS" + + AC_MSG_CHECKING(whether X_LOCALE needed) + AC_TRY_COMPILE([#include <X11/Xlocale.h>],, + AC_TRY_LINK_FUNC([_Xsetlocale], [AC_MSG_RESULT(yes) + AC_DEFINE(X_LOCALE)], AC_MSG_RESULT(no)), + AC_MSG_RESULT(no)) + + AC_MSG_CHECKING(whether Xutf8SetWMProperties() can be used) + AC_TRY_LINK_FUNC([Xutf8SetWMProperties], [AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_XUTF8SETWMPROPERTIES)], AC_MSG_RESULT(no)) + CFLAGS=$cflags_save - LDFLAGS=$ldflags_save + LIBS=$libs_save fi dnl Link with xpg4, it is said to make Korean locale working diff --git a/src/os_unix.c b/src/os_unix.c index b49afc3f8..6209605cf 100644 --- a/src/os_unix.c +++ b/src/os_unix.c @@ -1960,9 +1960,12 @@ get_x11_thing(get_title, test_only) return retval; } -/* Are Xutf8 functions available? Avoid error from old compilers. */ +/* Xutf8 functions are not avaialble on older systems. Note that on some + * systems X_HAVE_UTF8_STRING may be defined in a header file but + * Xutf8SetWMProperties() is not in the X11 library. Configure checks for + * that and defines HAVE_XUTF8SETWMPROPERTIES. */ #if defined(X_HAVE_UTF8_STRING) && defined(FEAT_MBYTE) -# if X_HAVE_UTF8_STRING +# if X_HAVE_UTF8_STRING && HAVE_XUTF8SETWMPROPERTIES # define USE_UTF8_STRING # endif #endif diff --git a/src/version.c b/src/version.c index 89088200d..78c3baa2a 100644 --- a/src/version.c +++ b/src/version.c @@ -742,6 +742,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 475, +/**/ 474, /**/ 473, |