changeset 2683:93d13b0adf14

PR2931: Check that freetype defines FT_CONFIG_OPTION_INFINALITY_PATCHSET if enabling infinality 2016-04-21 Andrew John Hughes <gnu.andrew@member.fsf.org> PR2931: Check that freetype defines FT_CONFIG_OPTION_INFINALITY_PATCHSET if enabling infinality * acinclude.m4: (IT_ENABLE_INFINALITY): Depend on IT_CHECK_FOR_FREETYPE and check that FreeType defines FT_CONFIG_OPTION_INFINALITY_PATCHSET. (IT_CHECK_FOR_FREETYPE): Moved from configure.ac to its own macro so IT_ENABLE_INFINALITY can depend on it. * configure.ac: Move FreeType check to its own macro.
author Andrew John Hughes <gnu_andrew@member.fsf.org>
date Thu, 14 Jul 2016 03:47:12 +0100
parents 14bc6630fb5d
children 7e85cdc1efab
files ChangeLog acinclude.m4 configure.ac
diffstat 3 files changed, 41 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Wed Aug 06 16:24:38 2014 +0100
+++ b/ChangeLog	Thu Jul 14 03:47:12 2016 +0100
@@ -1,3 +1,19 @@
+2016-04-21  Andrew John Hughes  <gnu.andrew@member.fsf.org>
+
+	PR2931: Check that freetype defines
+	FT_CONFIG_OPTION_INFINALITY_PATCHSET if
+	enabling infinality
+	* acinclude.m4:
+	(IT_ENABLE_INFINALITY): Depend on
+	IT_CHECK_FOR_FREETYPE and check that
+	FreeType defines
+	FT_CONFIG_OPTION_INFINALITY_PATCHSET.
+	(IT_CHECK_FOR_FREETYPE): Moved from
+	configure.ac to its own macro so
+	IT_ENABLE_INFINALITY can depend on it.
+	* configure.ac:
+	Move FreeType check to its own macro.
+
 2014-07-16  Andrew John Hughes  <gnu.andrew@member.fsf.org>
 
 	PR2931: Turn the infinality patch off by default
--- a/acinclude.m4	Wed Aug 06 16:24:38 2014 +0100
+++ b/acinclude.m4	Thu Jul 14 03:47:12 2016 +0100
@@ -1918,6 +1918,7 @@
 
 AC_DEFUN_ONCE([IT_ENABLE_INFINALITY],
 [
+  AC_REQUIRE([IT_CHECK_FOR_FREETYPE])
   AC_MSG_CHECKING([whether to use fontconfig to provide better font rendering])
   AC_ARG_ENABLE([infinality],
                 [AS_HELP_STRING(--enable-infinality,build with fontconfig font rendering [[default=no]])],
@@ -1943,6 +1944,20 @@
     then
       AC_MSG_ERROR([Infinality support requires fontconfig. Either install fontconfig or --disable-infinality])
     fi
+    AC_MSG_CHECKING([if FreeType is patched with infinality support])
+    AC_LANG_PUSH([C])
+    CFLAGS_SAVED=$CFLAGS
+    CFLAGS="$CFLAGS $FREETYPE2_CFLAGS"
+    AC_LINK_IFELSE([AC_LANG_PROGRAM([[
+    #include <ft2build.h>
+    #include FT_FREETYPE_H
+    #ifndef FT_CONFIG_OPTION_INFINALITY_PATCHSET
+    #error Infinality not supported
+    #endif
+    ]])], [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]); \
+      AC_MSG_ERROR([Infinality support requires infinality support in FreeType.])])
+    CFLAGS=$CFLAGS_SAVED
+    AC_LANG_POP([C])
     AC_SUBST(FONTCONFIG_CFLAGS)
     AC_SUBST(FONTCONFIG_LIBS)
   fi
@@ -2267,6 +2282,16 @@
   AC_SUBST(ALT_CACERTS_FILE)
 ])
 
+AC_DEFUN_ONCE([IT_CHECK_FOR_FREETYPE],
+[
+dnl Check for freetype2 headers and libraries.
+  PKG_CHECK_MODULES(FREETYPE2, freetype2,[]
+	  ,[AC_MSG_ERROR([Could not find freetype2 - \
+  Try installing freetype2-devel.])])
+  AC_SUBST(FREETYPE2_CFLAGS)
+  AC_SUBST(FREETYPE2_LIBS)
+])
+
 AC_DEFUN_ONCE([IT_ENABLE_NASHORN_CHECKSUM],
 [
   AC_REQUIRE([IT_WITH_NASHORN_SRC_ZIP])
--- a/configure.ac	Wed Aug 06 16:24:38 2014 +0100
+++ b/configure.ac	Thu Jul 14 03:47:12 2016 +0100
@@ -284,17 +284,6 @@
 AC_SUBST(XTST_CFLAGS)
 AC_SUBST(XTST_LIBS)
 
-dnl Check for freetype2 headers and libraries.
-PKG_CHECK_MODULES(FREETYPE2, freetype2,[FREETYPE2_FOUND=yes]
-	,[FREETYPE2_FOUND=no])
-if test "x${FREETYPE2_FOUND}" = xno
-then
-  AC_MSG_ERROR([Could not find freetype2 - \
-  Try installing freetype2-devel.])
-fi
-AC_SUBST(FREETYPE2_CFLAGS)
-AC_SUBST(FREETYPE2_LIBS)
-
 dnl Check for alsa headers and libraries (only required for Linux).
 if test "x${BUILD_OS_DIR}" = "xlinux"
 then