| From 67f9b6e3c5d2397446d39ab454f691c1ee46d2c0 Mon Sep 17 00:00:00 2001 |
| From: Alexandre Julliard <julliard@winehq.org> |
| Date: Sat, 30 Nov 2013 11:22:25 +0100 |
| Subject: [PATCH] configure: Update FreeType configure checks for the changed |
| headers location. |
| |
| --- |
| configure | 78 +++++++++++++++------------------------------------ |
| configure.ac | 40 +++++++------------------- |
| dlls/gdi32/freetype.c | 62 ++++++++++++++-------------------------- |
| include/config.h.in | 33 ---------------------- |
| 4 files changed, 54 insertions(+), 159 deletions(-) |
| |
| diff --git a/configure b/configure |
| index 80348f3..9b2f2c2 100755 |
| --- a/configure |
| +++ b/configure |
| @@ -11419,7 +11419,21 @@ test "$cross_compiling" = yes || FREETYPE_LIBS=${FREETYPE_LIBS:-`(freetype-confi |
| FREETYPE_LIBS=${FREETYPE_LIBS:-"-lfreetype"} |
| ac_save_CPPFLAGS=$CPPFLAGS |
| CPPFLAGS="$CPPFLAGS $FREETYPE_CFLAGS" |
| -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for -lfreetype" >&5 |
| +for ac_header in ft2build.h |
| +do : |
| + ac_fn_c_check_header_mongrel "$LINENO" "ft2build.h" "ac_cv_header_ft2build_h" "$ac_includes_default" |
| +if test "x$ac_cv_header_ft2build_h" = xyes; then : |
| + cat >>confdefs.h <<_ACEOF |
| +#define HAVE_FT2BUILD_H 1 |
| +_ACEOF |
| + |
| +fi |
| + |
| +done |
| + |
| + if test "$ac_cv_header_ft2build_h" = "yes" |
| + then |
| + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -lfreetype" >&5 |
| $as_echo_n "checking for -lfreetype... " >&6; } |
| if ${ac_cv_lib_soname_freetype+:} false; then : |
| $as_echo_n "(cached) " >&6 |
| @@ -11461,7 +11475,7 @@ fi |
| if test "x$ac_cv_lib_soname_freetype" = "x"; then : |
| { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5 |
| $as_echo "not found" >&6; } |
| - ft_lib=no |
| + FREETYPE_LIBS="" |
| else |
| { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_soname_freetype" >&5 |
| $as_echo "$ac_cv_lib_soname_freetype" >&6; } |
| @@ -11470,51 +11484,11 @@ cat >>confdefs.h <<_ACEOF |
| #define SONAME_LIBFREETYPE "$ac_cv_lib_soname_freetype" |
| _ACEOF |
| |
| - ft_lib=yes |
| -fi |
| - if test "$ft_lib" = "yes" |
| - then |
| - for ac_header in ft2build.h \ |
| - freetype/freetype.h \ |
| - freetype/ftglyph.h \ |
| - freetype/fttypes.h \ |
| - freetype/tttables.h \ |
| - freetype/ftsnames.h \ |
| - freetype/ttnameid.h \ |
| - freetype/ftoutln.h \ |
| - freetype/ftwinfnt.h \ |
| - freetype/ftmodapi.h \ |
| - freetype/ftlcdfil.h |
| -do : |
| - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` |
| -ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "#ifdef HAVE_FT2BUILD_H |
| -# include <ft2build.h> |
| -#endif |
| -" |
| -if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : |
| - cat >>confdefs.h <<_ACEOF |
| -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 |
| -_ACEOF |
| - |
| -fi |
| - |
| -done |
| - |
| - cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
| -/* end confdefs.h. */ |
| -#include <ft2build.h> |
| -#include <freetype/fttrigon.h> |
| -_ACEOF |
| -if ac_fn_c_try_cpp "$LINENO"; then : |
| |
| -$as_echo "#define HAVE_FREETYPE_FTTRIGON_H 1" >>confdefs.h |
| +$as_echo "#define HAVE_FREETYPE 1" >>confdefs.h |
| |
| - wine_cv_fttrigon=yes |
| -else |
| - wine_cv_fttrigon=no |
| -fi |
| -rm -f conftest.err conftest.i conftest.$ac_ext |
| - ac_fn_c_check_type "$LINENO" "FT_TrueTypeEngineType" "ac_cv_type_FT_TrueTypeEngineType" "#include <freetype/ftmodapi.h> |
| + ac_fn_c_check_type "$LINENO" "FT_TrueTypeEngineType" "ac_cv_type_FT_TrueTypeEngineType" "#include <ft2build.h> |
| +#include FT_MODULE_H |
| " |
| if test "x$ac_cv_type_FT_TrueTypeEngineType" = xyes; then : |
| |
| @@ -11525,15 +11499,9 @@ _ACEOF |
| |
| fi |
| |
| - if test "$ac_cv_header_freetype_freetype_h" = "yes" -a "$wine_cv_fttrigon" = "yes" |
| - then |
| - |
| -$as_echo "#define HAVE_FREETYPE 1" >>confdefs.h |
| - |
| - else |
| - FREETYPE_LIBS="" |
| - fi |
| +fi |
| else |
| + FREETYPE_CFLAGS="" |
| FREETYPE_LIBS="" |
| fi |
| CPPFLAGS=$ac_save_CPPFLAGS |
| @@ -11541,14 +11509,14 @@ test -z "$FREETYPE_CFLAGS" || FREETYPE_CFLAGS=`echo " $FREETYPE_CFLAGS" | sed 's |
| test -z "$FREETYPE_LIBS" || FREETYPE_LIBS=`echo " $FREETYPE_LIBS" | sed 's/ -L\([^/]\)/ -L\$(top_builddir)\/\1/g'` |
| |
| fi |
| -if test "x$ac_cv_header_freetype_freetype_h" != xyes -o "x$wine_cv_fttrigon" != xyes; then : |
| +if test "x$ac_cv_lib_soname_freetype" = x; then : |
| case "x$with_freetype" in |
| xno) ;; |
| *) as_fn_error $? "FreeType ${notice_platform}development files not found. Fonts will not be built. |
| Use the --without-freetype option if you really want this." "$LINENO" 5 ;; |
| esac |
| fi |
| -test "x$ac_cv_header_freetype_freetype_h" = xyes -a "x$wine_cv_fttrigon" = xyes || enable_fonts=${enable_fonts:-no} |
| +test "x$ac_cv_lib_soname_freetype" = x && enable_fonts=${enable_fonts:-no} |
| |
| { $as_echo "$as_me:${as_lineno-$LINENO}: checking for parport header/ppdev.h" >&5 |
| $as_echo_n "checking for parport header/ppdev.h... " >&6; } |
| diff --git a/configure.ac b/configure.ac |
| index 81b7027..c4021b4 100644 |
| --- a/configure.ac |
| +++ b/configure.ac |
| @@ -1463,42 +1463,22 @@ then |
| WINE_PACKAGE_FLAGS(FREETYPE,[freetype2],[-lfreetype], |
| [`(freetype-config --cflags || freetype2-config --cflags) 2>/dev/null`], |
| [`(freetype-config --libs || freetype2-config --libs) 2>/dev/null`], |
| - [WINE_CHECK_SONAME(freetype,FT_Init_FreeType,[ft_lib=yes],[ft_lib=no],[$FREETYPE_LIBS]) |
| - if test "$ft_lib" = "yes" |
| + [AC_CHECK_HEADERS([ft2build.h]) |
| + if test "$ac_cv_header_ft2build_h" = "yes" |
| then |
| - AC_CHECK_HEADERS(ft2build.h \ |
| - freetype/freetype.h \ |
| - freetype/ftglyph.h \ |
| - freetype/fttypes.h \ |
| - freetype/tttables.h \ |
| - freetype/ftsnames.h \ |
| - freetype/ttnameid.h \ |
| - freetype/ftoutln.h \ |
| - freetype/ftwinfnt.h \ |
| - freetype/ftmodapi.h \ |
| - freetype/ftlcdfil.h,,, |
| - [#ifdef HAVE_FT2BUILD_H |
| -# include <ft2build.h> |
| -#endif]) |
| - AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <ft2build.h> |
| -#include <freetype/fttrigon.h>]])],[AC_DEFINE(HAVE_FREETYPE_FTTRIGON_H, 1, |
| - [Define if you have the <freetype/fttrigon.h> header file.]) |
| - wine_cv_fttrigon=yes],[wine_cv_fttrigon=no]) |
| - AC_CHECK_TYPES(FT_TrueTypeEngineType,,,[#include <freetype/ftmodapi.h>]) |
| - dnl Check that we have at least freetype/freetype.h |
| - if test "$ac_cv_header_freetype_freetype_h" = "yes" -a "$wine_cv_fttrigon" = "yes" |
| - then |
| - AC_DEFINE(HAVE_FREETYPE, 1, [Define if FreeType 2 is installed]) |
| - else |
| - FREETYPE_LIBS="" |
| - fi |
| + WINE_CHECK_SONAME(freetype,FT_Init_FreeType, |
| + [AC_DEFINE(HAVE_FREETYPE, 1, [Define if FreeType 2 is installed]) |
| + AC_CHECK_TYPES(FT_TrueTypeEngineType,,,[#include <ft2build.h> |
| +#include FT_MODULE_H])], |
| + [FREETYPE_LIBS=""],[$FREETYPE_LIBS]) |
| else |
| + FREETYPE_CFLAGS="" |
| FREETYPE_LIBS="" |
| fi]) |
| fi |
| -WINE_ERROR_WITH(freetype,[test "x$ac_cv_header_freetype_freetype_h" != xyes -o "x$wine_cv_fttrigon" != xyes], |
| +WINE_ERROR_WITH(freetype,[test "x$ac_cv_lib_soname_freetype" = x], |
| [FreeType ${notice_platform}development files not found. Fonts will not be built.]) |
| -test "x$ac_cv_header_freetype_freetype_h" = xyes -a "x$wine_cv_fttrigon" = xyes || enable_fonts=${enable_fonts:-no} |
| +test "x$ac_cv_lib_soname_freetype" = x && enable_fonts=${enable_fonts:-no} |
| |
| dnl **** Check for parport (currently Linux only) **** |
| AC_CACHE_CHECK([for parport header/ppdev.h], ac_cv_c_ppdev, |
| diff --git a/dlls/gdi32/freetype.c b/dlls/gdi32/freetype.c |
| index fb4f2af..e230299 100644 |
| --- a/dlls/gdi32/freetype.c |
| +++ b/dlls/gdi32/freetype.c |
| @@ -77,6 +77,23 @@ |
| #undef SetRectRgn |
| #endif /* HAVE_CARBON_CARBON_H */ |
| |
| +#ifdef HAVE_FT2BUILD_H |
| +#include <ft2build.h> |
| +#include FT_FREETYPE_H |
| +#include FT_GLYPH_H |
| +#include FT_TYPES_H |
| +#include FT_TRUETYPE_TABLES_H |
| +#include FT_SFNT_NAMES_H |
| +#include FT_TRUETYPE_IDS_H |
| +#include FT_OUTLINE_H |
| +#include FT_TRIGONOMETRY_H |
| +#include FT_MODULE_H |
| +#include FT_WINFONTS_H |
| +#ifdef FT_LCD_FILTER_H |
| +#include FT_LCD_FILTER_H |
| +#endif |
| +#endif /* HAVE_FT2BUILD_H */ |
| + |
| #include "windef.h" |
| #include "winbase.h" |
| #include "winternl.h" |
| @@ -95,43 +112,6 @@ WINE_DEFAULT_DEBUG_CHANNEL(font); |
| |
| #ifdef HAVE_FREETYPE |
| |
| -#ifdef HAVE_FT2BUILD_H |
| -#include <ft2build.h> |
| -#endif |
| -#ifdef HAVE_FREETYPE_FREETYPE_H |
| -#include <freetype/freetype.h> |
| -#endif |
| -#ifdef HAVE_FREETYPE_FTGLYPH_H |
| -#include <freetype/ftglyph.h> |
| -#endif |
| -#ifdef HAVE_FREETYPE_TTTABLES_H |
| -#include <freetype/tttables.h> |
| -#endif |
| -#ifdef HAVE_FREETYPE_FTTYPES_H |
| -#include <freetype/fttypes.h> |
| -#endif |
| -#ifdef HAVE_FREETYPE_FTSNAMES_H |
| -#include <freetype/ftsnames.h> |
| -#endif |
| -#ifdef HAVE_FREETYPE_TTNAMEID_H |
| -#include <freetype/ttnameid.h> |
| -#endif |
| -#ifdef HAVE_FREETYPE_FTOUTLN_H |
| -#include <freetype/ftoutln.h> |
| -#endif |
| -#ifdef HAVE_FREETYPE_FTTRIGON_H |
| -#include <freetype/fttrigon.h> |
| -#endif |
| -#ifdef HAVE_FREETYPE_FTWINFNT_H |
| -#include <freetype/ftwinfnt.h> |
| -#endif |
| -#ifdef HAVE_FREETYPE_FTMODAPI_H |
| -#include <freetype/ftmodapi.h> |
| -#endif |
| -#ifdef HAVE_FREETYPE_FTLCDFIL_H |
| -#include <freetype/ftlcdfil.h> |
| -#endif |
| - |
| #ifndef HAVE_FT_TRUETYPEENGINETYPE |
| typedef enum |
| { |
| @@ -186,7 +166,7 @@ MAKE_FUNCPTR(FT_Vector_Transform); |
| MAKE_FUNCPTR(FT_Vector_Unit); |
| static FT_Error (*pFT_Outline_Embolden)(FT_Outline *, FT_Pos); |
| static FT_TrueTypeEngineType (*pFT_Get_TrueType_Engine_Type)(FT_Library); |
| -#ifdef HAVE_FREETYPE_FTLCDFIL_H |
| +#ifdef FT_LCD_FILTER_H |
| static FT_Error (*pFT_Library_SetLcdFilter)(FT_Library, FT_LcdFilter); |
| #endif |
| |
| @@ -924,7 +904,7 @@ static BOOL is_hinting_enabled(void) |
| |
| static BOOL is_subpixel_rendering_enabled( void ) |
| { |
| -#ifdef HAVE_FREETYPE_FTLCDFIL_H |
| +#ifdef FT_LCD_FILTER_H |
| static int enabled = -1; |
| if (enabled == -1) |
| { |
| @@ -3918,7 +3898,7 @@ static BOOL init_freetype(void) |
| /* Don't warn if these ones are missing */ |
| pFT_Outline_Embolden = wine_dlsym(ft_handle, "FT_Outline_Embolden", NULL, 0); |
| pFT_Get_TrueType_Engine_Type = wine_dlsym(ft_handle, "FT_Get_TrueType_Engine_Type", NULL, 0); |
| -#ifdef HAVE_FREETYPE_FTLCDFIL_H |
| +#ifdef FT_LCD_FILTER_H |
| pFT_Library_SetLcdFilter = wine_dlsym(ft_handle, "FT_Library_SetLcdFilter", NULL, 0); |
| #endif |
| |
| @@ -6706,7 +6686,7 @@ static DWORD get_glyph_outline(GdiFont *incoming_font, UINT glyph, UINT format, |
| case WINE_GGO_HBGR_BITMAP: |
| case WINE_GGO_VRGB_BITMAP: |
| case WINE_GGO_VBGR_BITMAP: |
| -#ifdef HAVE_FREETYPE_FTLCDFIL_H |
| +#ifdef FT_LCD_FILTER_H |
| { |
| switch (ft_face->glyph->format) |
| { |
| diff --git a/include/config.h.in b/include/config.h.in |
| index a14db5b..79f8b45 100644 |
| --- a/include/config.h.in |
| +++ b/include/config.h.in |
| @@ -132,39 +132,6 @@ |
| /* Define if FreeType 2 is installed */ |
| #undef HAVE_FREETYPE |
| |
| -/* Define to 1 if you have the <freetype/freetype.h> header file. */ |
| -#undef HAVE_FREETYPE_FREETYPE_H |
| - |
| -/* Define to 1 if you have the <freetype/ftglyph.h> header file. */ |
| -#undef HAVE_FREETYPE_FTGLYPH_H |
| - |
| -/* Define to 1 if you have the <freetype/ftlcdfil.h> header file. */ |
| -#undef HAVE_FREETYPE_FTLCDFIL_H |
| - |
| -/* Define to 1 if you have the <freetype/ftmodapi.h> header file. */ |
| -#undef HAVE_FREETYPE_FTMODAPI_H |
| - |
| -/* Define to 1 if you have the <freetype/ftoutln.h> header file. */ |
| -#undef HAVE_FREETYPE_FTOUTLN_H |
| - |
| -/* Define to 1 if you have the <freetype/ftsnames.h> header file. */ |
| -#undef HAVE_FREETYPE_FTSNAMES_H |
| - |
| -/* Define if you have the <freetype/fttrigon.h> header file. */ |
| -#undef HAVE_FREETYPE_FTTRIGON_H |
| - |
| -/* Define to 1 if you have the <freetype/fttypes.h> header file. */ |
| -#undef HAVE_FREETYPE_FTTYPES_H |
| - |
| -/* Define to 1 if you have the <freetype/ftwinfnt.h> header file. */ |
| -#undef HAVE_FREETYPE_FTWINFNT_H |
| - |
| -/* Define to 1 if you have the <freetype/ttnameid.h> header file. */ |
| -#undef HAVE_FREETYPE_TTNAMEID_H |
| - |
| -/* Define to 1 if you have the <freetype/tttables.h> header file. */ |
| -#undef HAVE_FREETYPE_TTTABLES_H |
| - |
| /* Define to 1 if the system has the type `fsblkcnt_t'. */ |
| #undef HAVE_FSBLKCNT_T |
| |
| -- |
| 1.9.1 |
| |