summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2014-10-11 14:47:26 +0200
committerBram Moolenaar <Bram@vim.org>2014-10-11 14:47:26 +0200
commitcbc246a331dc8dea49f6ad443be3d10ec68ef2c2 (patch)
tree28143a4a295066093221ed840dde7c2ada513181
parent2a9853925bee1b85247cd5f4ccf98fec1871d1f7 (diff)
downloadvim-git-7.4.475.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.
-rwxr-xr-xsrc/auto/configure53
-rw-r--r--src/config.h.in3
-rw-r--r--src/configure.in29
-rw-r--r--src/os_unix.c7
-rw-r--r--src/version.c2
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,