]> git.donarmstrong.com Git - lilypond.git/blobdiff - stepmake/aclocal.m4
release: 1.1.0
[lilypond.git] / stepmake / aclocal.m4
index 06abbe832a0a47909bc8ca5166e2959af7972184..804112114198f8aa41cc94275fc3ece20d2b034e 100644 (file)
@@ -5,6 +5,7 @@ AC_DEFUN(AC_STEPMAKE_COMPILE, [
     # -O is necessary to get inlining
     OPTIMIZE=""
     CXXFLAGS=${CXXFLAGS:-""}
+    CFLAGS=${CFLAGS:-""}
     checking_b=yes
     optimise_b=no
     profile_b=no
@@ -152,6 +153,16 @@ AC_DEFUN(AC_STEPMAKE_GXX, [
     fi
 ])
 
+AC_DEFUN(AC_STEPMAKE_GUILE, [
+    # urg, must check for different functions in libguile
+    # to force new check iso reading from cache
+    AC_CHECK_LIB(guile, scm_shell, \
+      LIBS="-lguile $LIBS" AC_DEFINE(HAVE_LIBGUILE), \
+      AC_CHECK_LIB(readline, readline) \
+      AC_CHECK_LIB(dl, dlopen) \
+      AC_CHECK_LIB(guile, scm_boot_guile))
+])
+
 AC_DEFUN(AC_STEPMAKE_INIT, [
 
     . $srcdir/VERSION
@@ -166,16 +177,44 @@ AC_DEFUN(AC_STEPMAKE_INIT, [
     package=`echo $PACKAGE_NAME | tr '[A-Z]' '[a-z]'`
     changequote([, ])dnl
 
+    # No versioning on directory names of sub-packages 
+    # urg, urg
+    stepmake=${datadir}/stepmake
+    presome=${prefix}
+    if test "$prefix" = "NONE"; then
+           presome=${ac_default_prefix}
+    fi
+    stepmake=`echo ${stepmake} | sed "s!\\\${prefix}!$presome!"`
+
     if test "x$PACKAGE" = "xSTEPMAKE"; then
         echo Stepmake package!
        (cd stepmake; rm -f stepmake; ln -s ../stepmake .)
        (cd stepmake; rm -f bin; ln -s ../bin .)
        AC_CONFIG_AUX_DIR(bin)
+       stepmake=stepmake
     else
         echo Package: $PACKAGE
-       AC_CONFIG_AUX_DIR(stepmake/bin)
+       # Check for installed stepmake
+       if test -d $stepmake; then
+           echo Using installed stepmake: $stepmake
+       else
+           stepmake='$(depth)'/stepmake
+           echo Using local stepmake: $datadir/stepmake not found
+       fi
+       AC_CONFIG_AUX_DIR(\
+         $HOME/usr/local/share/stepmake/bin\
+         $HOME/usr/local/lib/stepmake/bin\
+         $HOME/usr/share/stepmake/bin\
+         $HOME/usr/lib/stepmake/bin\
+         /usr/local/share/stepmake/bin\
+         /usr/local/lib/stepmake/bin\
+         /usr/share/stepmake/bin\
+         /usr/lib/stepmake/bin\
+         stepmake/bin\
+       )
     fi
 
+    AC_SUBST(stepmake)
     AC_SUBST(package)
     AC_SUBST(PACKAGE)
     AC_SUBST(PACKAGE_NAME)
@@ -190,10 +229,6 @@ AC_DEFUN(AC_STEPMAKE_INIT, [
     absolute_builddir="`pwd`"
     AC_SUBST(absolute_builddir)
 
-    # No versioning on directory names of sub-packages 
-    stepmake=stepmake
-    AC_SUBST(stepmake)
-
     STATE_VECTOR=`ls make/STATE-VECTOR 2>/dev/null`
     if test "x$STATE_VECTOR" != "x"; then
        STATE_VECTOR="\$(depth)/$STATE_VECTOR"
@@ -226,7 +261,7 @@ dnl    fi
     AC_CHECK_PROGS(TAR, tar, error)
     AC_CHECK_PROGS(BASH, bash, /bin/sh)
 
-    AC_PATH_PROG(PYTHON, python, -echo no python)
+    AC_PATH_PROG(PYTHON, ${PYTHON:-python}, -echo no python)
     AC_SUBST(PYTHON)
 
 
@@ -248,22 +283,24 @@ dnl    fi
        DOTEXE=.exe
        DIRSEP='\\'
        PATHSEP=';'
-       INSTALL="\$(stepdir)/../bin/install-dot-exe.sh -c"
+       INSTALL="\$(SHELL) \$(stepdir)/../bin/install-dot-exe.sh -c"
     else
        DIRSEP='/'
        PATHSEP=':'
        LN=ln
        LN_S='ln -s'
        ZIP="zip -r -9"
-        INSTALL="\$(stepdir)/../bin/install-sh -c"
+        INSTALL="\$(SHELL) \$(stepdir)/../bin/install-sh -c"
     fi
     AC_SUBST(DOTEXE)
     AC_SUBST(ZIP)
     AC_SUBST(LN)
     AC_SUBST(LN_S)
     AC_SUBST(INSTALL)
-   AC_DEFINE_UNQUOTED(DIRSEP, '${DIRSEP}')
-     AC_DEFINE_UNQUOTED(PATHSEP, '${PATHSEP}')
+    AC_DEFINE_UNQUOTED(DIRSEP, '${DIRSEP}')
+    AC_DEFINE_UNQUOTED(PATHSEP, '${PATHSEP}')
+    AC_SUBST(PATHSEP)
+    AC_SUBST(DIRSEP)
   
    
     AC_STEPMAKE_DATADIR
@@ -391,7 +428,7 @@ AC_DEFUN(AC_STEPMAKE_MSGFMT, [
     fi
 ])
 
-AC_DEFUN(AC_STEPMAKE_TEXMF, [
+AC_DEFUN(AC_STEPMAKE_TEXMF_DIRS, [
     AC_ARG_ENABLE(tex-prefix,
     [  enable-tex-prefix=DIR   set the tex-directory to find TeX subdirectories. (default: PREFIX)],
     [TEXPREFIX=$enableval],
@@ -420,12 +457,29 @@ AC_DEFUN(AC_STEPMAKE_TEXMF, [
     if test "x$TEXDIR" = xauto ; then
        AC_TEX_SUBDIR(TEXDIR)
     fi
-
     AC_SUBST(TEXPREFIX)
     AC_SUBST(TEXDIR)
     AC_SUBST(MFDIR)
 ])
 
+AC_DEFUN(AC_STEPMAKE_TEXMF, [
+    # urg, never know what names these teTeX guys will think up
+    AC_CHECK_PROGS(METAFONT, mf, no)
+    if test "x$METAFONT" = "xno"; then
+       AC_CHECK_PROGS(MFONT, mfont, -echo no mf or mfont)
+       METAFONT=$MFONT
+    fi
+
+    AC_CHECK_PROGS(METAPOST, mp, no)
+    if test "x$METAPOST" = "xno"; then
+       AC_CHECK_PROGS(MPOST, mpost, -echo no mp or mpost)
+       METAPOST=$MPOST
+    fi
+
+    AC_SUBST(METAFONT)
+    AC_SUBST(METAPOST)
+])
+
 AC_DEFUN(AC_STEPMAKE_WARN, [
     AC_MSG_WARN($1)
     warn_b=yes
@@ -433,20 +487,26 @@ AC_DEFUN(AC_STEPMAKE_WARN, [
 
 AC_DEFUN(AC_STEPMAKE_YODL, [
     if test "x$YODL" = "x"; then 
+       AC_CHECK_PROGS(STRIPROFF, striproff, -echo no striproff)
        AC_CHECK_PROGS(YODL, yodl, -echo no yodl)
        AC_CHECK_PROGS(YODL2HTML, yodl2html, -echo no yodl)
        AC_CHECK_PROGS(YODL2LATEX, yodl2latex, )
        AC_CHECK_PROGS(YODL2MAN, yodl2man, -echo no yodl)
+       AC_CHECK_PROGS(YODL2MSLESS, yodl2msless, -echo no yodl)
        AC_CHECK_PROGS(YODL2TEXINFO, yodl2texinfo, -echo no yodl)
        AC_CHECK_PROGS(YODL2TXT, yodl2txt, -echo no yodl)
+       YODL2LESS_DIR='$(bindir)/'
     else
+       AC_SUBST(STRIPROFF)
        AC_SUBST(YODL)
        AC_SUBST(YODL2HTML)
        AC_SUBST(YODL2LATEX)
+       AC_SUBST(YODL2LESS_DIR)
        AC_SUBST(YODL2MAN)
+       AC_SUBST(YODL2MSLESS)
        AC_SUBST(YODL2TEXINFO)
        AC_SUBST(YODL2TXT)
-       export YODL YODL2HTML YODL2LATEX YODL2MAN YODL2TEXINFO YODL2TXT
+       export STRIPROFF YODL YODL2HTML YODL2LATEX YODL2MAN YODL2MSLESS YODL2TEXINFO YODL2TXT
     fi
     if test "x$YODL" = "-echo no yodl"; then
        AC_STEPMAKE_WARN(Did not find YODL (Yodl is Yet Oneother Document Language, see http://www.cs.uu.nl/~hanwen/yodl))
@@ -555,6 +615,7 @@ AC_DEFUN(AC_CHECK_SEARCH_RESULT, [
        fi
 ])
 
+
 # Configure paths for GTK+
 # Owen Taylor     97-11-3
 
@@ -566,7 +627,7 @@ AC_DEFUN(AM_PATH_GTK,
 dnl Get the cflags and libraries from the gtk-config script
 dnl
   AC_PATH_PROG(GTK_CONFIG, gtk-config, no)
-  min_gtk_version=ifelse([$1], ,0.99.7,$1)
+  min_gtk_version=ifelse([$1], ,1.1.1,$1)
   AC_MSG_CHECKING(for GTK - version >= $min_gtk_version)
   no_gtk=""
   if test "$GTK_CONFIG" != "no" ; then
@@ -624,22 +685,224 @@ main ()
 
 
 # Configure paths for GTK--
-# Jan Nieuwenhuizen   98-06-3
+# Erik Andersen        30 May 1998
+# Modified by Tero Pulkkinen (added the compiler checks... I hope they work..)
+
+dnl Test for GTK__, and define GTK___CFLAGS and GTK___LIBS
+dnl   to be used as follows:
+dnl AM_PATH_GTKMM([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
+dnl
+
+dnl Get the cflags and libraries from the gtkmm-config script
+dnl
+AC_ARG_WITH(gtkmm-prefix,[  --with-gtkmm-prefix=PREFIX
+                          Prefix where GTK-- is installed (optional)],
+            gtkmm_config_prefix="$withval", gtkmm_config_prefix="")
+AC_ARG_WITH(gtkmm-exec-prefix,[  --with-gtkmm-exec-prefix=PREFIX
+                          Exec prefix where GTK-- is installed (optional)],
+            gtkmm_config_exec_prefix="$withval", gtkmm_config_exec_prefix="")
+AC_ARG_ENABLE(gtkmmtest, [  --disable-gtkmmtest     Do not try to compile and run a test GTK-- program],
+                   , enable_gtkmmtest=yes)
+
+  if test x$gtkmm_config_exec_prefix != x ; then
+     gtkmm_config_args="$gtkmm_config_args --exec-prefix=$gtkmm_config_exec_prefix"
+     if test x${GTKMM_CONFIG+set} != xset ; then
+        GTKMM_CONFIG=$gtkmm_config_exec_prefix/bin/gtkmm-config
+     fi
+  fi
+  if test x$gtkmm_config_prefix != x ; then
+     gtkmm_config_args="$gtkmm_config_args --prefix=$gtkmm_config_prefix"
+     if test x${GTKMM_CONFIG+set} != xset ; then
+        GTKMM_CONFIG=$gtkmm_config_prefix/bin/gtkmm-config
+     fi
+  fi
+
+
+AC_DEFUN(AM_PATH_GTKMM,
+[dnl 
+
+dnl
+dnl Check check if the installed GTK-- is sufficiently new.
+dnl
+  AC_PATH_PROG(GTKMM_CONFIG, gtkmm-config, no)
+  min_gtkmm_version=ifelse([$1], ,0.9.14,$1)
 
-dnl AM_PATH_GTK__([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
-dnl Test for GTK--, and define GTK___CFLAGS and GTK___LIBS
+  AC_MSG_CHECKING(for GTK-- - version >= $min_gtkmm_version)
+  no_gtkmm=""
+  if test "$GTKMM_CONFIG" = "no" ; then
+    no_gtkmm=yes
+  else
+    AC_LANG_SAVE
+    AC_LANG_CPLUSPLUS
+
+    GTK___CFLAGS=`$GTKMM_CONFIG $gtkmm_config_args --cflags`
+    GTK___LIBS=`$GTKMM_CONFIG $gtkmm_config_args --libs`
+    gtkmm_config_major_version=`$GTKMM_CONFIG $gtkmm_config_args --version | \
+           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
+    gtkmm_config_minor_version=`$GTKMM_CONFIG $gtkmm_config_args --version | \
+           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
+    gtkmm_config_micro_version=`$GTKMM_CONFIG $gtkmm_config_args --version | \
+           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
+    if test "x$enable_gtkmmtest" = "xyes" ; then
+      ac_save_CXXFLAGS="$CXXFLAGS"
+      ac_save_LIBS="$LIBS"
+      CXXFLAGS="$CXXFLAGS $GTK___CFLAGS"
+      LIBS="$LIBS $GTK___LIBS"
+dnl
+dnl Now check if the installed GTK-- is sufficiently new. (Also sanity
+dnl checks the results of gtkmm-config to some extent
+dnl
+      rm -f conf.gtkmmtest
+      AC_TRY_RUN([
+#include <gtk--.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+int 
+main ()
+{
+  int major, minor, micro;
+  char *tmp_version;
+
+  system ("touch conf.gtkmmtest");
+
+  /* HP/UX 0 (%@#!) writes to sscanf strings */
+  tmp_version = g_strdup("$min_gtkmm_version");
+  if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
+     printf("%s, bad version string\n", "$min_gtkmm_version");
+     exit(1);
+   }
+
+  if ((gtkmm_major_version != $gtkmm_config_major_version) ||
+      (gtkmm_minor_version != $gtkmm_config_minor_version) ||
+      (gtkmm_micro_version != $gtkmm_config_micro_version))
+    {
+      printf("\n*** 'gtkmm-config --version' returned %d.%d.%d, but GTK-- (%d.%d.%d)\n", 
+             $gtkmm_config_major_version, $gtkmm_config_minor_version, $gtkmm_config_micro_version,
+             gtkmm_major_version, gtkmm_minor_version, gtkmm_micro_version);
+      printf ("*** was found! If gtkmm-config was correct, then it is best\n");
+      printf ("*** to remove the old version of GTK--. You may also be able to fix the error\n");
+      printf("*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing\n");
+      printf("*** /etc/ld.so.conf. Make sure you have run ldconfig if that is\n");
+      printf("*** required on your system.\n");
+      printf("*** If gtkmm-config was wrong, set the environment variable GTKMM_CONFIG\n");
+      printf("*** to point to the correct copy of gtkmm-config, and remove the file config.cache\n");
+      printf("*** before re-running configure\n");
+    } 
+/* GTK-- does not have the GTKMM_*_VERSION constants */
+/* 
+  else if ((gtkmm_major_version != GTKMM_MAJOR_VERSION) ||
+          (gtkmm_minor_version != GTKMM_MINOR_VERSION) ||
+           (gtkmm_micro_version != GTKMM_MICRO_VERSION))
+    {
+      printf("*** GTK-- header files (version %d.%d.%d) do not match\n",
+            GTKMM_MAJOR_VERSION, GTKMM_MINOR_VERSION, GTKMM_MICRO_VERSION);
+      printf("*** library (version %d.%d.%d)\n",
+            gtkmm_major_version, gtkmm_minor_version, gtkmm_micro_version);
+    }
+*/
+  else
+    {
+      if ((gtkmm_major_version > major) ||
+        ((gtkmm_major_version == major) && (gtkmm_minor_version > minor)) ||
+        ((gtkmm_major_version == major) && (gtkmm_minor_version == minor) && (gtkmm_micro_version >= micro)))
+      {
+        return 0;
+       }
+     else
+      {
+        printf("\n*** An old version of GTK-- (%d.%d.%d) was found.\n",
+               gtkmm_major_version, gtkmm_minor_version, gtkmm_micro_version);
+        printf("*** You need a version of GTK-- newer than %d.%d.%d. The latest version of\n",
+              major, minor, micro);
+        printf("*** GTK-- is always available from ftp://ftp.gtk.org.\n");
+        printf("***\n");
+        printf("*** If you have already installed a sufficiently new version, this error\n");
+        printf("*** probably means that the wrong copy of the gtkmm-config shell script is\n");
+        printf("*** being found. The easiest way to fix this is to remove the old version\n");
+        printf("*** of GTK--, but you can also set the GTKMM_CONFIG environment to point to the\n");
+        printf("*** correct copy of gtkmm-config. (In this case, you will have to\n");
+        printf("*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf\n");
+        printf("*** so that the correct libraries are found at run-time))\n");
+      }
+    }
+  return 1;
+}
+],, no_gtkmm=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
+       CXXFLAGS="$ac_save_CXXFLAGS"
+       LIBS="$ac_save_LIBS"
+     fi
+  fi
+  if test "x$no_gtkmm" = x ; then
+     AC_MSG_RESULT(yes)
+     ifelse([$2], , :, [$2])     
+  else
+     AC_MSG_RESULT(no)
+     if test "$GTKMM_CONFIG" = "no" ; then
+       echo "*** The gtkmm-config script installed by GTK-- could not be found"
+       echo "*** If GTK-- was installed in PREFIX, make sure PREFIX/bin is in"
+       echo "*** your path, or set the GTK_CONFIG environment variable to the"
+       echo "*** full path to gtk-config."
+       echo "*** The gtkmm-config script was not available in GTK-- versions"
+       echo "*** prior to 0.9.12. Perhaps you need to update your installed"
+       echo "*** version to 0.9.12 or later"
+     else
+       if test -f conf.gtkmmtest ; then
+        :
+       else
+          echo "*** Could not run GTK-- test program, checking why..."
+          CXXFLAGS="$CFLAGS $GTKMM_CXXFLAGS"
+          LIBS="$LIBS $GTK___LIBS"
+          AC_TRY_LINK([
+#include <gtk--.h>
+#include <stdio.h>
+],      [ return ((gtkmm_major_version) || (gtkmm_minor_version) || (gtkmm_micro_version)); ],
+        [ echo "*** The test program compiled, but did not run. This usually means"
+          echo "*** that the run-time linker is not finding GTK-- or finding the wrong"
+          echo "*** version of GTK--. If it is not finding GTK--, you'll need to set your"
+          echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
+          echo "*** to the installed location  Also, make sure you have run ldconfig if that"
+          echo "*** is required on your system"
+         echo "***"
+          echo "*** If you have an old version installed, it is best to remove it, although"
+          echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" ],
+        [ echo "*** The test program failed to compile or link. See the file config.log for the"
+          echo "*** exact error that occured. This usually means GTK-- was incorrectly installed"
+          echo "*** or that you have moved GTK-- since it was installed. In the latter case, you"
+          echo "*** may want to edit the gtkmm-config script: $GTKMM_CONFIG" ])
+          CXXFLAGS="$ac_save_CXXFLAGS"
+          LIBS="$ac_save_LIBS"
+       fi
+     fi
+     GTK___CFLAGS=""
+     GTK__LIBS=""
+     ifelse([$3], , :, [$3])
+     AC_LANG_RESTORE
+  fi
+  AC_SUBST(GTK___CFLAGS)
+  AC_SUBST(GTK___LIBS)
+  rm -f conf.gtkmmtest
+])
+
+# Configure paths for GTK--DRAW
+# Derek Quinn Wyatt   98-08-21  (adapted from Jan Nieuwenhuizen's code)
+
+dnl AM_PATH_GTK__DRAW([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
+dnl Test for GTK--DRAW, and define GTK___CFLAGS and GTK___LIBS
 dnl
-AC_DEFUN(AM_PATH_GTK__,
+AC_DEFUN(AM_PATH_GTK__DRAW,
 [dnl 
 dnl Get the cflags and libraries from the gtk__-config script
 dnl
-  min_gtk___version=ifelse([$1], ,0.9.4,$1)
-  AC_MSG_CHECKING(for GTK-- - version >= $min_gtk___version)
+  AC_PATH_PROG(GTKMM_CONFIG, gtkmm-config, no)
+  min_gtk___version=ifelse([$1], ,0.0.5,$1)
+  AC_MSG_CHECKING(for GTK--DRAW - version >= $min_gtk___version)
   no_gtk__=""
-  if test "$GTK_CONFIG" != "no" ; then
-    GTK___CFLAGS=`$GTK_CONFIG --cflags`
-    GTK_LIBS=`$GTK_CONFIG --libs`
-    GTK___LIBS="$GTK_LIBS -lgtkmm"
+  if test "$GTKMM_CONFIG" != "no" ; then
+    GTK___CFLAGS=`$GTKMM_CONFIG --cflags`
+    GTK___LIBS=`$GTKMM_CONFIG --libs`
+    GTK___DLIBS="$GTK___LIBS -lgtkmmdraw"
+    GTK___LIBS="$GTK___DLIBS"
     ac_save_CFLAGS="$CFLAGS"
     ac_save_LIBS="$LIBS"
     ac_save_CXXFLAGS="$CXXFLAGS"