Bug 65053 - Add configure option to enable/disable ICU support
authorBehdad Esfahbod <behdad@behdad.org>
Mon, 27 May 2013 23:04:40 +0000 (19:04 -0400)
committerBehdad Esfahbod <behdad@behdad.org>
Mon, 27 May 2013 23:04:40 +0000 (19:04 -0400)
configure.ac

index bcb0e52..c995f36 100644 (file)
@@ -166,26 +166,36 @@ AM_CONDITIONAL(HAVE_CAIRO_FT, $have_cairo_ft)
 
 dnl ==========================================================================
 
-PKG_CHECK_MODULES(ICU, icu-uc, have_icu=true, have_icu=false)
-dnl Fallback to icu-config if ICU pkg-config files could not be found
-if test "$have_icu" != "true"; then
-       AC_CHECK_TOOL(ICU_CONFIG, icu-config, no)
-       AC_MSG_CHECKING([for ICU by using icu-config fallback])
-       if test "$ICU_CONFIG" != "no" && "$ICU_CONFIG" --version >/dev/null; then
-               have_icu=true
-               # We don't use --cflags as this gives us a lot of things that we don't
-               # necessarily want, like debugging and optimization flags
-               # See man (1) icu-config for more info.
-               ICU_CFLAGS=`$ICU_CONFIG --cppflags`
-               ICU_LIBS=`$ICU_CONFIG --ldflags-searchpath --ldflags-libsonly`
-               AC_SUBST(ICU_CFLAGS)
-               AC_SUBST(ICU_LIBS)
-               AC_MSG_RESULT([yes])
-       else
-               AC_MSG_RESULT([no])
+AC_ARG_WITH(icu,
+       [AS_HELP_STRING([--with-icu=@<:@yes/no/auto@:>@],
+                       [Use ICU @<:@default=auto@:>@])],,
+       [with_icu=auto])
+have_icu=false
+if test "x$with_icu" = "xyes" -o "x$with_icu" = "xauto"; then
+       PKG_CHECK_MODULES(ICU, icu-uc, have_icu=true, have_icu=false)
+
+       dnl Fallback to icu-config if ICU pkg-config files could not be found
+       if test "$have_icu" != "true"; then
+               AC_CHECK_TOOL(ICU_CONFIG, icu-config, no)
+               AC_MSG_CHECKING([for ICU by using icu-config fallback])
+               if test "$ICU_CONFIG" != "no" && "$ICU_CONFIG" --version >/dev/null; then
+                       have_icu=true
+                       # We don't use --cflags as this gives us a lot of things that we don't
+                       # necessarily want, like debugging and optimization flags
+                       # See man (1) icu-config for more info.
+                       ICU_CFLAGS=`$ICU_CONFIG --cppflags`
+                       ICU_LIBS=`$ICU_CONFIG --ldflags-searchpath --ldflags-libsonly`
+                       AC_SUBST(ICU_CFLAGS)
+                       AC_SUBST(ICU_LIBS)
+                       AC_MSG_RESULT([yes])
+               else
+                       AC_MSG_RESULT([no])
+               fi
        fi
 fi
-
+if test "x$with_icu" = "xyes" -a "x$have_icu" != "xtrue"; then
+       AC_MSG_ERROR([icu support requested but icu-uc not found])
+fi
 if $have_icu; then
        CXXFLAGS="$CXXFLAGS `$PKG_CONFIG --variable=CXXFLAGS icu-uc`"
        AC_DEFINE(HAVE_ICU, 1, [Have ICU library])