| To: vim_dev@googlegroups.com |
| Subject: Patch 7.4.861 |
| Fcc: outbox |
| From: Bram Moolenaar <Bram@moolenaar.net> |
| Mime-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| |
| Patch 7.4.861 (after 7.4.855) |
| Problem: pango_shape_full() is not always available. |
| Solution: Add a configure check. |
| Files: src/configure.in, src/auto/configure, src/config.h.in, |
| src/gui_gtk_x11.c |
| |
| |
| |
| |
| |
| *** 3539,3544 **** |
| --- 3539,3560 ---- |
| AC_MSG_RESULT(yes) |
| fi |
| |
| + if test "x$GTK_CFLAGS" != "x"; then |
| + dnl pango_shape_full() is new, fall back to pango_shape(). |
| + AC_MSG_CHECKING(for pango_shape_full) |
| + ac_save_CFLAGS="$CFLAGS" |
| + ac_save_LIBS="$LIBS" |
| + CFLAGS="$CFLAGS $GTK_CFLAGS" |
| + LIBS="$LIBS $GTK_LIBS" |
| + AC_TRY_COMPILE( |
| + [#include <gtk/gtk.h>], |
| + [ pango_shape_full(NULL, 0, NULL, 0, NULL, NULL); ], |
| + AC_MSG_RESULT(yes); AC_DEFINE(HAVE_PANGO_SHAPE_FULL), |
| + AC_MSG_RESULT(no)) |
| + CFLAGS="$ac_save_CFLAGS" |
| + LIBS="$ac_save_LIBS" |
| + fi |
| + |
| AC_MSG_CHECKING(--disable-gpm argument) |
| AC_ARG_ENABLE(gpm, |
| [ --disable-gpm Don't use gpm (Linux mouse daemon).], , |
| |
| |
| |
| *** 12181,12186 **** |
| --- 12181,12217 ---- |
| $as_echo "yes" >&6; } |
| fi |
| |
| + if test "x$GTK_CFLAGS" != "x"; then |
| + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pango_shape_full" >&5 |
| + $as_echo_n "checking for pango_shape_full... " >&6; } |
| + ac_save_CFLAGS="$CFLAGS" |
| + ac_save_LIBS="$LIBS" |
| + CFLAGS="$CFLAGS $GTK_CFLAGS" |
| + LIBS="$LIBS $GTK_LIBS" |
| + cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
| + /* end confdefs.h. */ |
| + #include <gtk/gtk.h> |
| + int |
| + main () |
| + { |
| + pango_shape_full(NULL, 0, NULL, 0, NULL, NULL); |
| + ; |
| + return 0; |
| + } |
| + _ACEOF |
| + if ac_fn_c_try_compile "$LINENO"; then : |
| + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 |
| + $as_echo "yes" >&6; }; $as_echo "#define HAVE_PANGO_SHAPE_FULL 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_ext |
| + CFLAGS="$ac_save_CFLAGS" |
| + LIBS="$ac_save_LIBS" |
| + fi |
| + |
| { $as_echo "$as_me:${as_lineno-$LINENO}: checking --disable-gpm argument" >&5 |
| $as_echo_n "checking --disable-gpm argument... " >&6; } |
| # Check whether --enable-gpm was given. |
| |
| |
| |
| *** 369,374 **** |
| --- 369,377 ---- |
| #undef HAVE_SOLARIS_ACL |
| #undef HAVE_AIX_ACL |
| |
| + /* Define if pango_shape_full() is available. */ |
| + #undef HAVE_PANGO_SHAPE_FULL |
| + |
| /* Define if you want to add support of GPM (Linux console mouse daemon) */ |
| #undef HAVE_GPM |
| |
| |
| |
| |
| *** 5063,5070 **** |
| --- 5063,5075 ---- |
| * done, because drawing the cursor would change the display. */ |
| item->analysis.shape_engine = default_shape_engine; |
| |
| + #ifdef HAVE_PANGO_SHAPE_FULL |
| pango_shape_full((const char *)s + item->offset, item->length, |
| (const char *)s, len, &item->analysis, glyphs); |
| + #else |
| + pango_shape((const char *)s + item->offset, item->length, |
| + &item->analysis, glyphs); |
| + #endif |
| /* |
| * Fixed-width hack: iterate over the array and assign a fixed |
| * width to each glyph, thus overriding the choice made by the |
| |
| |
| |
| *** 743,744 **** |
| --- 743,746 ---- |
| { /* Add new patch number below this line */ |
| + /**/ |
| + 861, |
| /**/ |
| |
| -- |
| Looking at Perl through Lisp glasses, Perl looks atrocious. |
| |
| /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ |
| /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ |
| \\\ an exciting new programming language -- http://www.Zimbu.org /// |
| \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |