Add --with-icu=builtin configure option

This commit is contained in:
Kal Conley 2016-02-26 00:35:15 +01:00
parent 0c7fb7419c
commit b424b6c372
2 changed files with 26 additions and 14 deletions

View File

@ -197,17 +197,6 @@ m4_ifdef([GOBJECT_INTROSPECTION_CHECK], [
AM_CONDITIONAL([HAVE_INTROSPECTION], false) AM_CONDITIONAL([HAVE_INTROSPECTION], false)
]) ])
dnl ===========================================================================
have_ucdn=true
if $have_glib; then
have_ucdn=false
fi
if $have_ucdn; then
AC_DEFINE(HAVE_UCDN, 1, [Have UCDN Unicode functions])
fi
AM_CONDITIONAL(HAVE_UCDN, $have_ucdn)
dnl ========================================================================== dnl ==========================================================================
AC_ARG_WITH(cairo, AC_ARG_WITH(cairo,
@ -256,11 +245,11 @@ AM_CONDITIONAL(HAVE_FONTCONFIG, $have_fontconfig)
dnl ========================================================================== dnl ==========================================================================
AC_ARG_WITH(icu, AC_ARG_WITH(icu,
[AS_HELP_STRING([--with-icu=@<:@yes/no/auto@:>@], [AS_HELP_STRING([--with-icu=@<:@yes/no/builtin/auto@:>@],
[Use ICU @<:@default=auto@:>@])],, [Use ICU @<:@default=auto@:>@])],,
[with_icu=auto]) [with_icu=auto])
have_icu=false have_icu=false
if test "x$with_icu" = "xyes" -o "x$with_icu" = "xauto"; then if test "x$with_icu" = "xyes" -o "x$with_icu" = "xbuiltin" -o "x$with_icu" = "xauto"; then
PKG_CHECK_MODULES(ICU, icu-uc, have_icu=true, :) PKG_CHECK_MODULES(ICU, icu-uc, have_icu=true, :)
dnl Fallback to icu-config if ICU pkg-config files could not be found dnl Fallback to icu-config if ICU pkg-config files could not be found
@ -282,14 +271,30 @@ if test "x$with_icu" = "xyes" -o "x$with_icu" = "xauto"; then
fi fi
fi fi
fi fi
if test "x$with_icu" = "xyes" -a "x$have_icu" != "xtrue"; then if test \( "x$with_icu" = "xyes" -o "x$with_icu" = "xbuiltin" \) -a "x$have_icu" != "xtrue"; then
AC_MSG_ERROR([icu support requested but icu-uc not found]) AC_MSG_ERROR([icu support requested but icu-uc not found])
fi fi
if $have_icu; then if $have_icu; then
CXXFLAGS="$CXXFLAGS `$PKG_CONFIG --variable=CXXFLAGS icu-uc`" CXXFLAGS="$CXXFLAGS `$PKG_CONFIG --variable=CXXFLAGS icu-uc`"
AC_DEFINE(HAVE_ICU, 1, [Have ICU library]) AC_DEFINE(HAVE_ICU, 1, [Have ICU library])
if test "x$with_icu" = "xbuiltin"; then
AC_DEFINE(HAVE_ICU_BUILTIN, 1, [Use hb-icu Unicode callbacks])
fi
fi fi
AM_CONDITIONAL(HAVE_ICU, $have_icu) AM_CONDITIONAL(HAVE_ICU, $have_icu)
AM_CONDITIONAL(HAVE_ICU_BUILTIN, $have_icu && test "x$with_icu" = "xbuiltin")
dnl ===========================================================================
have_ucdn=true
if $have_glib || $have_icu && test "x$with_icu" = "xbuiltin"; then
have_ucdn=false
fi
if $have_ucdn; then
AC_DEFINE(HAVE_UCDN, 1, [Have UCDN Unicode functions])
fi
AM_CONDITIONAL(HAVE_UCDN, $have_ucdn)
dnl ========================================================================== dnl ==========================================================================

View File

@ -147,6 +147,12 @@ EXTRA_libharfbuzz_fuzzing_la_DEPENDENCIES = $(EXTRA_libharfbuzz_la_DEPENDENCIES)
CLEANFILES += libharfbuzz-fuzzing.la CLEANFILES += libharfbuzz-fuzzing.la
if HAVE_ICU if HAVE_ICU
if HAVE_ICU_BUILTIN
HBCFLAGS += $(ICU_CFLAGS)
HBLIBS += $(ICU_LIBS)
HBSOURCES += $(HB_ICU_sources)
HBHEADERS += $(HB_ICU_headers)
else
lib_LTLIBRARIES += libharfbuzz-icu.la lib_LTLIBRARIES += libharfbuzz-icu.la
libharfbuzz_icu_la_SOURCES = $(HB_ICU_sources) libharfbuzz_icu_la_SOURCES = $(HB_ICU_sources)
libharfbuzz_icu_la_CPPFLAGS = $(ICU_CFLAGS) libharfbuzz_icu_la_CPPFLAGS = $(ICU_CFLAGS)
@ -155,6 +161,7 @@ libharfbuzz_icu_la_LIBADD = $(ICU_LIBS) libharfbuzz.la
pkginclude_HEADERS += $(HB_ICU_headers) pkginclude_HEADERS += $(HB_ICU_headers)
pkgconfig_DATA += harfbuzz-icu.pc pkgconfig_DATA += harfbuzz-icu.pc
endif endif
endif
EXTRA_DIST += harfbuzz-icu.pc.in EXTRA_DIST += harfbuzz-icu.pc.in
if HAVE_GOBJECT if HAVE_GOBJECT