]> git.donarmstrong.com Git - lilypond.git/blobdiff - stepmake/aclocal.m4
* scm/framework-gnome.scm: Add pango decoders.
[lilypond.git] / stepmake / aclocal.m4
index e1d0b37af1be6b7ebeab8fcd6faf3265069d9285..a592a8ab0d08cd772fcd7369a6b524c053ddbe71 100644 (file)
@@ -1014,3 +1014,91 @@ AC_DEFUN(STEPMAKE_WARN, [
 ])
 
 
+dnl PKG_CHECK_MODULES(GSTUFF, gtk+-2.0 >= 1.3 glib = 1.3.4, action-if, action-not)
+dnl defines GSTUFF_LIBS, GSTUFF_CFLAGS, see pkg-config man page
+dnl also defines GSTUFF_PKG_ERRORS on error
+AC_DEFUN(PKG_CHECK_MODULES, [
+  succeeded=no
+
+  if test -z "$PKG_CONFIG"; then
+    AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
+  fi
+
+  if test "$PKG_CONFIG" = "no" ; then
+     echo "*** The pkg-config script could not be found. Make sure it is"
+     echo "*** in your path, or set the PKG_CONFIG environment variable"
+     echo "*** to the full path to pkg-config."
+     echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config."
+  else
+     PKG_CONFIG_MIN_VERSION=0.9.0
+     if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then
+        AC_MSG_CHECKING(for $2)
+
+        if $PKG_CONFIG --exists "$2" ; then
+            AC_MSG_RESULT(yes)
+            succeeded=yes
+
+            AC_MSG_CHECKING($1_CFLAGS)
+            $1_CFLAGS=`$PKG_CONFIG --cflags "$2"`
+            AC_MSG_RESULT($$1_CFLAGS)
+
+            AC_MSG_CHECKING($1_LIBS)
+            $1_LIBS=`$PKG_CONFIG --libs "$2"`
+            AC_MSG_RESULT($$1_LIBS)
+        else
+            $1_CFLAGS=""
+            $1_LIBS=""
+            ## If we have a custom action on failure, don't print errors, but 
+            ## do set a variable so people can do so.
+            $1_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"`
+            ifelse([$4], ,echo $$1_PKG_ERRORS,)
+        fi
+
+        AC_SUBST($1_CFLAGS)
+        AC_SUBST($1_LIBS)
+     else
+        echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer."
+        echo "*** See http://www.freedesktop.org/software/pkgconfig"
+     fi
+  fi
+
+  if test $succeeded = yes; then
+     ifelse([$3], , :, [$3])
+  else
+     ifelse([$4], , AC_MSG_ERROR([Library requirements ($2) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them.]), [$4])
+  fi
+])
+
+
+AC_DEFUN(STEPMAKE_FREETYPE2, [
+    PKG_CHECK_MODULES(FREETYPE2, freetype2 >= 0, have_freetype2=true, true)
+    if $have_freetype2 ; then
+       AC_DEFINE(HAVE_FREETYPE2)
+       AC_SUBST(FREETYPE2_CFLAGS)
+       AC_SUBST(FREETYPE2_LIBS)
+    fi
+])
+
+AC_DEFUN(STEPMAKE_GTK2, [
+    PKG_CHECK_MODULES(GTK2, gtk+-2.0 >= 2.4.0, have_gtk2=true, true)
+    if $have_gtk2 ; then
+       AC_DEFINE(HAVE_GTK2)
+       AC_SUBST(GTK2_CFLAGS)
+       AC_SUBST(GTK2_LIBS)
+    fi
+])
+
+AC_DEFUN(STEPMAKE_PANGO, [
+    PKG_CHECK_MODULES(PANGO, pango >= 1.5.0, have_pango_cvs=true, true)
+    if $have_pango_cvs ; then
+       AC_DEFINE(HAVE_PANGO_CVS)
+       PANGO_CFLAGS="$PANGO_CFLAGS $GTK2_CFLAGS"
+       PANGO_LIBS="$PANGO_LIBS $GTK2_LIBS"
+       CPPFLAGS="$PANGO_CFLAGS $CPPFLAGS"
+       LIBS="$PANGO_LIBS $LIBS"
+       AC_CHECK_HEADERS([pango/pangofc-fontmap.h])
+       AC_CHECK_FUNCS([pango_fc_font_map_add_decoder_find_func])
+       AC_SUBST(PANGO_CFLAGS)
+       AC_SUBST(PANGO_LIBS)
+fi
+])