fi
])
+AC_DEFUN(STEPMAKE_PANGO_FT2_WITH_OTF_FEATURE, [
+ PKG_CHECK_MODULES(PANGO_FT2, $1 >= $3,
+ have_pangoft2_with_otf_feature=yes, true)
+ if test "$have_pangoft2_with_otf_feature" = yes ; then
+ AC_DEFINE(HAVE_PANGO16)
+ AC_DEFINE(HAVE_PANGO_FT2)
+ AC_DEFINE(HAVE_PANGO_FT2_WITH_OTF_FEATURE)
+ # Do not pollute user-CPPFLAGS with configure-CPPFLAGS
+ save_CPPFLAGS="$CPPFLAGS"
+ save_LIBS="$LIBS"
+ CPPFLAGS="$CPPFLAGS $PANGO_FT2_CFLAGS"
+ LIBS="$PANGO_FT2_LIBS $LIBS"
+ AC_CHECK_HEADERS([pango/pangoft2.h])
+ AC_CHECK_FUNCS([pango_ft2_font_map_create_context])
+ AC_SUBST(PANGO_FT2_CFLAGS)
+ AC_SUBST(PANGO_FT2_LIBS)
+ CPPFLAGS="$save_CPPFLAGS"
+ LIBS="$save_LIBS"
+ else
+ # UGR
+ #r="lib$1-dev or $1-devel"e
+ r="libpango1.0-dev or pango?-devel"
+ ver="`pkg-config --modversion $1`"
+ STEPMAKE_ADD_ENTRY($2, ["$r >= $3 (It is required if you'd like "])
+ STEPMAKE_ADD_ENTRY($2, ["to use OpenType font feature. "])
+ STEPMAKE_ADD_ENTRY($2, ["installed: $ver)"])
+ fi
+])
+
AC_DEFUN(STEPMAKE_FONTCONFIG, [
PKG_CHECK_MODULES(FONTCONFIG, $1 >= $3, have_fontconfig=yes, true)
if test "$have_fontconfig" = yes ; then
/* define if you have pango FT2 binding */
#define HAVE_PANGO_FT2 0
+/* define if you have pango FT2 binding with OpenType font feature */
+#define HAVE_PANGO_FT2_WITH_OTF_FEATURE 0
+
/* define if Guile has types scm_t_hash_fold_fn and scm_t_hash_handle_fn */
#define HAVE_GUILE_HASH_FUNC 0
HOST_ARCH=`$CC -dumpmachine`
AC_SUBST(HOST_ARCH)
-STEPMAKE_PANGO_FT2(pangoft2, REQUIRED, 1.38.0)
+STEPMAKE_PANGO_FT2_WITH_OTF_FEATURE(pangoft2, OPTIONAL, 1.38.0)
+if test "$have_pangoft2_with_otf_feature" != yes ; then
+ STEPMAKE_PANGO_FT2(pangoft2, REQUIRED, 1.6.0)
+fi
STEPMAKE_FONTCONFIG(fontconfig, REQUIRED, 2.4.0)
STEPMAKE_FREETYPE2(freetype2, REQUIRED, 2.1.10)
if (!features_str.empty())
{
+#if HAVE_PANGO_FT2_WITH_OTF_FEATURE
PangoAttrList *list = pango_attr_list_new();
PangoAttribute *features_attr = pango_attr_font_features_new(features_str.c_str());
pango_attr_list_insert(list, features_attr);
pango_layout_set_attributes(layout, list);
pango_attr_list_unref(list);
+#else
+ warning (_f ("OpenType font feature `%s' cannot be used "
+ "since this binary is configured without the feature.",
+ features_str.c_str ()));
+#endif
}
pango_layout_set_text (layout, str.c_str (), -1);