summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Vander Stichele <thomas@apestaart.org>2002-08-17 17:57:38 +0000
committerThomas Vander Stichele <thomas@apestaart.org>2002-08-17 17:57:38 +0000
commitde7a0d3426727f219e69e1c9838bffd97cc6682d (patch)
tree4e4c8e1ad66e898f23af1aff32803d072272cfa2
parent34a9b439a6d085222cfe9c647774f47e00d74a51 (diff)
downloadgst-plugins-bad-de7a0d3426727f219e69e1c9838bffd97cc6682d.tar.gz
gst-plugins-bad-de7a0d3426727f219e69e1c9838bffd97cc6682d.tar.bz2
gst-plugins-bad-de7a0d3426727f219e69e1c9838bffd97cc6682d.zip
fixes http://bugzilla.gnome.org/show_bug.cgi?id=90839
Original commit message from CVS: fixes http://bugzilla.gnome.org/show_bug.cgi?id=90839
-rw-r--r--configure.ac7
-rw-r--r--examples/Makefile.am8
-rw-r--r--examples/seeking/Makefile.am4
-rw-r--r--m4/freetype2.m4143
4 files changed, 159 insertions, 3 deletions
diff --git a/configure.ac b/configure.ac
index b1036523..d0c60e6b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -815,6 +815,13 @@ AC_ARG_ENABLE(examples,
esac],
[BUILD_EXAMPLES=yes]) dnl Default value
+dnl seeking needs freetype, so check for it here
+AC_CHECK_FT2(2.0.9,HAVE_FT2=yes,HAVE_FT2=no)
+dnl make the HAVE_FT2 variable available to automake and Makefile.am
+AM_CONDITIONAL(HAVE_FT2, test "x$HAVE_FT2" = "xyes")
+AC_SUBST(FT2_CFLAGS)
+AC_SUBST(FT2_LIBS)
+
dnl ################################################
dnl # Set defines according to variables set above #
dnl ################################################
diff --git a/examples/Makefile.am b/examples/Makefile.am
index 84bec465..de3c7c43 100644
--- a/examples/Makefile.am
+++ b/examples/Makefile.am
@@ -1,5 +1,11 @@
+if HAVE_FT2
+FT2_SUBDIRS=seeking
+else
+FT2_SUBDIRS=
+endif
+
if HAVE_GTK
-GTK_SUBDIRS=dynparams seeking
+GTK_SUBDIRS=dynparams $(FT2_SUBDIRS)
else
GTK_SUBDIRS=
endif
diff --git a/examples/seeking/Makefile.am b/examples/seeking/Makefile.am
index 30003e06..b1dac9c4 100644
--- a/examples/seeking/Makefile.am
+++ b/examples/seeking/Makefile.am
@@ -3,5 +3,5 @@ examples = seek spider_seek
noinst_PROGRAMS = $(examples)
# we have nothing but apps here, we can do this safely
-LIBS = $(GST_LIBS) $(GTK_LIBS) -lfreetype
-CFLAGS = $(GST_CFLAGS) $(GTK_CFLAGS)
+LIBS = $(GST_LIBS) $(GTK_LIBS) $(FT2_LIBS)
+CFLAGS = $(GST_CFLAGS) $(GTK_CFLAGS) $(FT2_CFLAGS)
diff --git a/m4/freetype2.m4 b/m4/freetype2.m4
new file mode 100644
index 00000000..21c6445e
--- /dev/null
+++ b/m4/freetype2.m4
@@ -0,0 +1,143 @@
+# Configure paths for FreeType2
+# Marcelo Magallon 2001-10-26, based on gtk.m4 by Owen Taylor
+
+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_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([
+#include <ft2build.h>
+#include FT_FREETYPE_H
+#include <stdio.h>
+#include <stdlib.h>
+
+int
+main()
+{
+ FT_Library library;
+ FT_Error error;
+
+ error = FT_Init_FreeType(&library);
+
+ if (error)
+ return 1;
+ else
+ {
+ FT_Done_FreeType(library);
+ 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."
+ 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."
+ 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."
+ fi
+ fi
+ FT2_CFLAGS=""
+ FT2_LIBS=""
+ ifelse([$3], , :, [$3])
+fi
+AC_SUBST(FT2_CFLAGS)
+AC_SUBST(FT2_LIBS)
+])