Bug 470455 - test_database_sync_embed_visits.js leaks, r=sdwilsh
[wine-gecko.git] / modules / freetype2 / builds / unix / freetype2.m4
blobd1da07d9c11fcb2410de2172898b9c3c7929c0c0
1 # Configure paths for FreeType2
2 # Marcelo Magallon 2001-10-26, based on gtk.m4 by Owen Taylor
4 # Copyright 2001, 2003, 2007 by
5 # David Turner, Robert Wilhelm, and Werner Lemberg.
7 # This file is part of the FreeType project, and may only be used, modified,
8 # and distributed under the terms of the FreeType project license,
9 # LICENSE.TXT.  By continuing to use, modify, or distribute this file you
10 # indicate that you have read the license and understand and accept it
11 # fully.
13 # As a special exception to the FreeType project license, this file may be
14 # distributed as part of a program that contains a configuration script
15 # generated by Autoconf, under the same distribution terms as the rest of
16 # that program.
18 # serial 2
20 # AC_CHECK_FT2([MINIMUM-VERSION [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
21 # Test for FreeType 2, and define FT2_CFLAGS and FT2_LIBS.
22 # MINIMUM-VERSION is what libtool reports; the default is `7.0.1' (this is
23 # FreeType 2.0.4).
25 AC_DEFUN([AC_CHECK_FT2],
26   [# Get the cflags and libraries from the freetype-config script
27    #
28    AC_ARG_WITH([ft-prefix],
29      dnl don't quote AS_HELP_STRING!
30      AS_HELP_STRING([--with-ft-prefix=PREFIX],
31                     [Prefix where FreeType is installed (optional)]),
32      [ft_config_prefix="$withval"],
33      [ft_config_prefix=""])
35    AC_ARG_WITH([ft-exec-prefix],
36      dnl don't quote AS_HELP_STRING!
37      AS_HELP_STRING([--with-ft-exec-prefix=PREFIX],
38                     [Exec prefix where FreeType is installed (optional)]),
39      [ft_config_exec_prefix="$withval"],
40      [ft_config_exec_prefix=""])
42    AC_ARG_ENABLE([freetypetest],
43      dnl don't quote AS_HELP_STRING!
44      AS_HELP_STRING([--disable-freetypetest],
45                     [Do not try to compile and run a test FreeType program]),
46      [],
47      [enable_fttest=yes])
49    if test x$ft_config_exec_prefix != x ; then
50      ft_config_args="$ft_config_args --exec-prefix=$ft_config_exec_prefix"
51      if test x${FT2_CONFIG+set} != xset ; then
52        FT2_CONFIG=$ft_config_exec_prefix/bin/freetype-config
53      fi
54    fi
56    if test x$ft_config_prefix != x ; then
57      ft_config_args="$ft_config_args --prefix=$ft_config_prefix"
58      if test x${FT2_CONFIG+set} != xset ; then
59        FT2_CONFIG=$ft_config_prefix/bin/freetype-config
60      fi
61    fi
63    AC_PATH_PROG([FT2_CONFIG], [freetype-config], [no])
65    min_ft_version=m4_if([$1], [], [7.0.1], [$1])
66    AC_MSG_CHECKING([for FreeType -- version >= $min_ft_version])
67    no_ft=""
68    if test "$FT2_CONFIG" = "no" ; then
69      no_ft=yes
70    else
71      FT2_CFLAGS=`$FT2_CONFIG $ft_config_args --cflags`
72      FT2_LIBS=`$FT2_CONFIG $ft_config_args --libs`
73      ft_config_major_version=`$FT2_CONFIG $ft_config_args --version | \
74        sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
75      ft_config_minor_version=`$FT2_CONFIG $ft_config_args --version | \
76        sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
77      ft_config_micro_version=`$FT2_CONFIG $ft_config_args --version | \
78        sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
79      ft_min_major_version=`echo $min_ft_version | \
80        sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
81      ft_min_minor_version=`echo $min_ft_version | \
82        sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
83      ft_min_micro_version=`echo $min_ft_version | \
84        sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
85      if test x$enable_fttest = xyes ; then
86        ft_config_is_lt=""
87        if test $ft_config_major_version -lt $ft_min_major_version ; then
88          ft_config_is_lt=yes
89        else
90          if test $ft_config_major_version -eq $ft_min_major_version ; then
91            if test $ft_config_minor_version -lt $ft_min_minor_version ; then
92              ft_config_is_lt=yes
93            else
94              if test $ft_config_minor_version -eq $ft_min_minor_version ; then
95                if test $ft_config_micro_version -lt $ft_min_micro_version ; then
96                  ft_config_is_lt=yes
97                fi
98              fi
99            fi
100          fi
101        fi
102        if test x$ft_config_is_lt = xyes ; then
103          no_ft=yes
104        else
105          ac_save_CFLAGS="$CFLAGS"
106          ac_save_LIBS="$LIBS"
107          CFLAGS="$CFLAGS $FT2_CFLAGS"
108          LIBS="$FT2_LIBS $LIBS"
110          #
111          # Sanity checks for the results of freetype-config to some extent.
112          #
113          AC_RUN_IFELSE([
114              AC_LANG_SOURCE([[
116 #include <ft2build.h>
117 #include FT_FREETYPE_H
118 #include <stdio.h>
119 #include <stdlib.h>
122 main()
124   FT_Library library;
125   FT_Error  error;
127   error = FT_Init_FreeType(&library);
129   if (error)
130     return 1;
131   else
132   {
133     FT_Done_FreeType(library);
134     return 0;
135   }
138              ]])
139            ],
140            [],
141            [no_ft=yes],
142            [echo $ECHO_N "cross compiling; assuming OK... $ECHO_C"])
144          CFLAGS="$ac_save_CFLAGS"
145          LIBS="$ac_save_LIBS"
146        fi             # test $ft_config_version -lt $ft_min_version
147      fi               # test x$enable_fttest = xyes
148    fi                 # test "$FT2_CONFIG" = "no"
150    if test x$no_ft = x ; then
151      AC_MSG_RESULT([yes])
152      m4_if([$2], [], [:], [$2])
153    else
154      AC_MSG_RESULT([no])
155      if test "$FT2_CONFIG" = "no" ; then
156        AC_MSG_WARN([
158   The freetype-config script installed by FreeType 2 could not be found.
159   If FreeType 2 was installed in PREFIX, make sure PREFIX/bin is in
160   your path, or set the FT2_CONFIG environment variable to the
161   full path to freetype-config.
162        ])
163      else
164        if test x$ft_config_is_lt = xyes ; then
165          AC_MSG_WARN([
167   Your installed version of the FreeType 2 library is too old.
168   If you have different versions of FreeType 2, make sure that
169   correct values for --with-ft-prefix or --with-ft-exec-prefix
170   are used, or set the FT2_CONFIG environment variable to the
171   full path to freetype-config.
172          ])
173        else
174          AC_MSG_WARN([
176   The FreeType test program failed to run.  If your system uses
177   shared libraries and they are installed outside the normal
178   system library path, make sure the variable LD_LIBRARY_PATH
179   (or whatever is appropriate for your system) is correctly set.
180          ])
181        fi
182      fi
184      FT2_CFLAGS=""
185      FT2_LIBS=""
186      m4_if([$3], [], [:], [$3])
187    fi
189    AC_SUBST([FT2_CFLAGS])
190    AC_SUBST([FT2_LIBS])])
192 # end of freetype2.m4