|
|
|
@ -1,88 +1,104 @@ |
|
|
|
|
# Configure paths for FreeType2 |
|
|
|
|
# Marcelo Magallon 2001-10-26, based on gtk.m4 by Owen Taylor |
|
|
|
|
# |
|
|
|
|
# serial 2 |
|
|
|
|
|
|
|
|
|
dnl AC_CHECK_FT2([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) |
|
|
|
|
dnl Test for FreeType2, and define FT2_CFLAGS and FT2_LIBS |
|
|
|
|
dnl |
|
|
|
|
# AC_CHECK_FT2([MINIMUM-VERSION [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) |
|
|
|
|
# Test for FreeType 2, and define FT2_CFLAGS and FT2_LIBS. |
|
|
|
|
# MINIMUM-VERSION is what libtool reports; the default is `7.0.1' (this is |
|
|
|
|
# FreeType 2.0.4). |
|
|
|
|
# |
|
|
|
|
AC_DEFUN([AC_CHECK_FT2], |
|
|
|
|
[dnl |
|
|
|
|
dnl Get the cflags and libraries from the freetype-config script |
|
|
|
|
dnl |
|
|
|
|
AC_ARG_WITH(ft-prefix, |
|
|
|
|
[ --with-ft-prefix=PREFIX |
|
|
|
|
Prefix where FreeType is installed (optional)], |
|
|
|
|
ft_config_prefix="$withval", ft_config_prefix="") |
|
|
|
|
AC_ARG_WITH(ft-exec-prefix, |
|
|
|
|
[ --with-ft-exec-prefix=PREFIX |
|
|
|
|
Exec prefix where FreeType is installed (optional)], |
|
|
|
|
ft_config_exec_prefix="$withval", ft_config_exec_prefix="") |
|
|
|
|
AC_ARG_ENABLE(freetypetest, |
|
|
|
|
[ --disable-freetypetest Do not try to compile and run |
|
|
|
|
a test FreeType program], |
|
|
|
|
[], enable_fttest=yes) |
|
|
|
|
|
|
|
|
|
if test x$ft_config_exec_prefix != x ; then |
|
|
|
|
ft_config_args="$ft_config_args --exec-prefix=$ft_config_exec_prefix" |
|
|
|
|
if test x${FT2_CONFIG+set} != xset ; then |
|
|
|
|
FT2_CONFIG=$ft_config_exec_prefix/bin/freetype-config |
|
|
|
|
fi |
|
|
|
|
fi |
|
|
|
|
if test x$ft_config_prefix != x ; then |
|
|
|
|
ft_config_args="$ft_config_args --prefix=$ft_config_prefix" |
|
|
|
|
if test x${FT2_CONFIG+set} != xset ; then |
|
|
|
|
FT2_CONFIG=$ft_config_prefix/bin/freetype-config |
|
|
|
|
fi |
|
|
|
|
fi |
|
|
|
|
AC_PATH_PROG(FT2_CONFIG, freetype-config, no) |
|
|
|
|
|
|
|
|
|
min_ft_version=ifelse([$1], ,6.1.0,$1) |
|
|
|
|
AC_MSG_CHECKING(for FreeType - version >= $min_ft_version) |
|
|
|
|
no_ft="" |
|
|
|
|
if test "$FT2_CONFIG" = "no" ; then |
|
|
|
|
no_ft=yes |
|
|
|
|
else |
|
|
|
|
FT2_CFLAGS=`$FT2_CONFIG $ft_config_args --cflags` |
|
|
|
|
FT2_LIBS=`$FT2_CONFIG $ft_config_args --libs` |
|
|
|
|
ft_config_major_version=`$FT2_CONFIG $ft_config_args --version | \ |
|
|
|
|
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` |
|
|
|
|
ft_config_minor_version=`$FT2_CONFIG $ft_config_args --version | \ |
|
|
|
|
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` |
|
|
|
|
ft_config_micro_version=`$FT2_CONFIG $ft_config_args --version | \ |
|
|
|
|
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` |
|
|
|
|
ft_min_major_version=`echo $min_ft_version | \ |
|
|
|
|
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` |
|
|
|
|
ft_min_minor_version=`echo $min_ft_version | \ |
|
|
|
|
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` |
|
|
|
|
ft_min_micro_version=`echo $min_ft_version | \ |
|
|
|
|
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` |
|
|
|
|
if test x$enable_fttest = xyes ; then |
|
|
|
|
ft_config_is_lt="" |
|
|
|
|
if test $ft_config_major_version -lt $ft_min_major_version ; then |
|
|
|
|
ft_config_is_lt=yes |
|
|
|
|
else |
|
|
|
|
if test $ft_config_major_version -eq $ft_min_major_version ; then |
|
|
|
|
if test $ft_config_minor_version -lt $ft_min_minor_version ; then |
|
|
|
|
ft_config_is_lt=yes |
|
|
|
|
else |
|
|
|
|
if test $ft_config_minor_version -eq $ft_min_minor_version ; then |
|
|
|
|
if test $ft_config_micro_version -lt $ft_min_micro_version ; then |
|
|
|
|
ft_config_is_lt=yes |
|
|
|
|
fi |
|
|
|
|
fi |
|
|
|
|
fi |
|
|
|
|
fi |
|
|
|
|
fi |
|
|
|
|
if test x$ft_config_is_lt = xyes ; then |
|
|
|
|
no_ft=yes |
|
|
|
|
else |
|
|
|
|
ac_save_CFLAGS="$CFLAGS" |
|
|
|
|
ac_save_LIBS="$LIBS" |
|
|
|
|
CFLAGS="$CFLAGS $FT2_CFLAGS" |
|
|
|
|
LIBS="$FT2_LIBS $LIBS" |
|
|
|
|
dnl |
|
|
|
|
dnl Sanity checks for the results of freetype-config to some extent |
|
|
|
|
dnl |
|
|
|
|
AC_TRY_RUN([ |
|
|
|
|
[# Get the cflags and libraries from the freetype-config script |
|
|
|
|
# |
|
|
|
|
AC_ARG_WITH([ft-prefix], |
|
|
|
|
dnl don't quote AS_HELP_STRING! |
|
|
|
|
AS_HELP_STRING([--with-ft-prefix=PREFIX], |
|
|
|
|
[Prefix where FreeType is installed (optional)]), |
|
|
|
|
[ft_config_prefix="$withval"], |
|
|
|
|
[ft_config_prefix=""]) |
|
|
|
|
|
|
|
|
|
AC_ARG_WITH([ft-exec-prefix], |
|
|
|
|
dnl don't quote AS_HELP_STRING! |
|
|
|
|
AS_HELP_STRING([--with-ft-exec-prefix=PREFIX], |
|
|
|
|
[Exec prefix where FreeType is installed (optional)]), |
|
|
|
|
[ft_config_exec_prefix="$withval"], |
|
|
|
|
[ft_config_exec_prefix=""]) |
|
|
|
|
|
|
|
|
|
AC_ARG_ENABLE([freetypetest], |
|
|
|
|
dnl don't quote AS_HELP_STRING! |
|
|
|
|
AS_HELP_STRING([--disable-freetypetest], |
|
|
|
|
[Do not try to compile and run a test FreeType program]), |
|
|
|
|
[], |
|
|
|
|
[enable_fttest=yes]) |
|
|
|
|
|
|
|
|
|
if test x$ft_config_exec_prefix != x ; then |
|
|
|
|
ft_config_args="$ft_config_args --exec-prefix=$ft_config_exec_prefix" |
|
|
|
|
if test x${FT2_CONFIG+set} != xset ; then |
|
|
|
|
FT2_CONFIG=$ft_config_exec_prefix/bin/freetype-config |
|
|
|
|
fi |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
if test x$ft_config_prefix != x ; then |
|
|
|
|
ft_config_args="$ft_config_args --prefix=$ft_config_prefix" |
|
|
|
|
if test x${FT2_CONFIG+set} != xset ; then |
|
|
|
|
FT2_CONFIG=$ft_config_prefix/bin/freetype-config |
|
|
|
|
fi |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
AC_PATH_PROG([FT2_CONFIG], [freetype-config], [no]) |
|
|
|
|
|
|
|
|
|
min_ft_version=m4_if([$1], [], [7.0.1], [$1]) |
|
|
|
|
AC_MSG_CHECKING([for FreeType -- version >= $min_ft_version]) |
|
|
|
|
no_ft="" |
|
|
|
|
if test "$FT2_CONFIG" = "no" ; then |
|
|
|
|
no_ft=yes |
|
|
|
|
else |
|
|
|
|
FT2_CFLAGS=`$FT2_CONFIG $ft_config_args --cflags` |
|
|
|
|
FT2_LIBS=`$FT2_CONFIG $ft_config_args --libs` |
|
|
|
|
ft_config_major_version=`$FT2_CONFIG $ft_config_args --version | \ |
|
|
|
|
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` |
|
|
|
|
ft_config_minor_version=`$FT2_CONFIG $ft_config_args --version | \ |
|
|
|
|
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` |
|
|
|
|
ft_config_micro_version=`$FT2_CONFIG $ft_config_args --version | \ |
|
|
|
|
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` |
|
|
|
|
ft_min_major_version=`echo $min_ft_version | \ |
|
|
|
|
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` |
|
|
|
|
ft_min_minor_version=`echo $min_ft_version | \ |
|
|
|
|
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` |
|
|
|
|
ft_min_micro_version=`echo $min_ft_version | \ |
|
|
|
|
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` |
|
|
|
|
if test x$enable_fttest = xyes ; then |
|
|
|
|
ft_config_is_lt="" |
|
|
|
|
if test $ft_config_major_version -lt $ft_min_major_version ; then |
|
|
|
|
ft_config_is_lt=yes |
|
|
|
|
else |
|
|
|
|
if test $ft_config_major_version -eq $ft_min_major_version ; then |
|
|
|
|
if test $ft_config_minor_version -lt $ft_min_minor_version ; then |
|
|
|
|
ft_config_is_lt=yes |
|
|
|
|
else |
|
|
|
|
if test $ft_config_minor_version -eq $ft_min_minor_version ; then |
|
|
|
|
if test $ft_config_micro_version -lt $ft_min_micro_version ; then |
|
|
|
|
ft_config_is_lt=yes |
|
|
|
|
fi |
|
|
|
|
fi |
|
|
|
|
fi |
|
|
|
|
fi |
|
|
|
|
fi |
|
|
|
|
if test x$ft_config_is_lt = xyes ; then |
|
|
|
|
no_ft=yes |
|
|
|
|
else |
|
|
|
|
ac_save_CFLAGS="$CFLAGS" |
|
|
|
|
ac_save_LIBS="$LIBS" |
|
|
|
|
CFLAGS="$CFLAGS $FT2_CFLAGS" |
|
|
|
|
LIBS="$FT2_LIBS $LIBS" |
|
|
|
|
|
|
|
|
|
# |
|
|
|
|
# Sanity checks for the results of freetype-config to some extent. |
|
|
|
|
# |
|
|
|
|
AC_RUN_IFELSE([ |
|
|
|
|
AC_LANG_SOURCE([[ |
|
|
|
|
|
|
|
|
|
#include <ft2build.h> |
|
|
|
|
#include FT_FREETYPE_H |
|
|
|
|
#include <stdio.h> |
|
|
|
@ -92,7 +108,7 @@ int |
|
|
|
|
main() |
|
|
|
|
{ |
|
|
|
|
FT_Library library; |
|
|
|
|
FT_Error error; |
|
|
|
|
FT_Error error; |
|
|
|
|
|
|
|
|
|
error = FT_Init_FreeType(&library); |
|
|
|
|
|
|
|
|
@ -104,40 +120,59 @@ main() |
|
|
|
|
return 0; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
],, no_ft=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) |
|
|
|
|
CFLAGS="$ac_save_CFLAGS" |
|
|
|
|
LIBS="$ac_save_LIBS" |
|
|
|
|
fi # test $ft_config_version -lt $ft_min_version |
|
|
|
|
fi # test x$enable_fttest = xyes |
|
|
|
|
fi # test "$FT2_CONFIG" = "no" |
|
|
|
|
if test x$no_ft = x ; then |
|
|
|
|
AC_MSG_RESULT(yes) |
|
|
|
|
ifelse([$2], , :, [$2]) |
|
|
|
|
else |
|
|
|
|
AC_MSG_RESULT(no) |
|
|
|
|
if test "$FT2_CONFIG" = "no" ; then |
|
|
|
|
echo "*** The freetype-config script installed by FreeType 2 could not be found." |
|
|
|
|
echo "*** If FreeType 2 was installed in PREFIX, make sure PREFIX/bin is in" |
|
|
|
|
echo "*** your path, or set the FT2_CONFIG environment variable to the" |
|
|
|
|
echo "*** full path to freetype-config." |
|
|
|
|
|
|
|
|
|
]]) |
|
|
|
|
], |
|
|
|
|
[], |
|
|
|
|
[no_ft=yes], |
|
|
|
|
[echo $ECHO_N "cross compiling; assuming OK... $ECHO_C"]) |
|
|
|
|
|
|
|
|
|
CFLAGS="$ac_save_CFLAGS" |
|
|
|
|
LIBS="$ac_save_LIBS" |
|
|
|
|
fi # test $ft_config_version -lt $ft_min_version |
|
|
|
|
fi # test x$enable_fttest = xyes |
|
|
|
|
fi # test "$FT2_CONFIG" = "no" |
|
|
|
|
|
|
|
|
|
if test x$no_ft = x ; then |
|
|
|
|
AC_MSG_RESULT([yes]) |
|
|
|
|
m4_if([$2], [], [:], [$2]) |
|
|
|
|
else |
|
|
|
|
if test x$ft_config_is_lt = xyes ; then |
|
|
|
|
echo "*** Your installed version of the FreeType 2 library is too old." |
|
|
|
|
echo "*** If you have different versions of FreeType 2, make sure that" |
|
|
|
|
echo "*** correct values for --with-ft-prefix or --with-ft-exec-prefix" |
|
|
|
|
echo "*** are used, or set the FT2_CONFIG environment variable to the" |
|
|
|
|
echo "*** full path to freetype-config." |
|
|
|
|
AC_MSG_RESULT([no]) |
|
|
|
|
if test "$FT2_CONFIG" = "no" ; then |
|
|
|
|
AC_MSG_WARN([ |
|
|
|
|
|
|
|
|
|
The freetype-config script installed by FreeType 2 could not be found. |
|
|
|
|
If FreeType 2 was installed in PREFIX, make sure PREFIX/bin is in |
|
|
|
|
your path, or set the FT2_CONFIG environment variable to the |
|
|
|
|
full path to freetype-config. |
|
|
|
|
]) |
|
|
|
|
else |
|
|
|
|
echo "*** The FreeType test program failed to run. If your system uses" |
|
|
|
|
echo "*** shared libraries and they are installed outside the normal" |
|
|
|
|
echo "*** system library path, make sure the variable LD_LIBRARY_PATH" |
|
|
|
|
echo "*** (or whatever is appropiate for your system) is correctly set." |
|
|
|
|
if test x$ft_config_is_lt = xyes ; then |
|
|
|
|
AC_MSG_WARN([ |
|
|
|
|
|
|
|
|
|
Your installed version of the FreeType 2 library is too old. |
|
|
|
|
If you have different versions of FreeType 2, make sure that |
|
|
|
|
correct values for --with-ft-prefix or --with-ft-exec-prefix |
|
|
|
|
are used, or set the FT2_CONFIG environment variable to the |
|
|
|
|
full path to freetype-config. |
|
|
|
|
]) |
|
|
|
|
else |
|
|
|
|
AC_MSG_WARN([ |
|
|
|
|
|
|
|
|
|
The FreeType test program failed to run. If your system uses |
|
|
|
|
shared libraries and they are installed outside the normal |
|
|
|
|
system library path, make sure the variable LD_LIBRARY_PATH |
|
|
|
|
(or whatever is appropiate for your system) is correctly set. |
|
|
|
|
]) |
|
|
|
|
fi |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
FT2_CFLAGS="" |
|
|
|
|
FT2_LIBS="" |
|
|
|
|
m4_if([$3], [], [:], [$3]) |
|
|
|
|
fi |
|
|
|
|
FT2_CFLAGS="" |
|
|
|
|
FT2_LIBS="" |
|
|
|
|
ifelse([$3], , :, [$3]) |
|
|
|
|
fi |
|
|
|
|
AC_SUBST(FT2_CFLAGS) |
|
|
|
|
AC_SUBST(FT2_LIBS) |
|
|
|
|
]) |
|
|
|
|
|
|
|
|
|
AC_SUBST([FT2_CFLAGS]) |
|
|
|
|
AC_SUBST([FT2_LIBS])]) |
|
|
|
|
|
|
|
|
|
# end of freetype2.m4 |
|
|
|
|