+ #actually, that sucks.
+ # tja looks like a typo. Default is optimisation off. --hwn
+
+ AC_ARG_ENABLE(optimise,
+ [ enable-optimise use maximal speed optimisations. Default: off],
+ [optimise_b=$enableval])
+
+ AC_ARG_ENABLE(profiling,
+ [ enable-profiling compile with gprof support. Default: off],
+ [profile_b=$enableval])
+
+ AC_ARG_ENABLE(debugging,
+ [ enable-debugging set debug info. Default: on],
+ [debug_b=$enableval])
+
+ AC_ARG_ENABLE(mingw-prefix,
+ [ enable-mingw-prefix=DIR set the mingw32 directory (standalone windows32 exes)],
+ [MINGWPREFIX=$enableval],
+ [MINGWPREFIX=no])
+
+ if test "$checking_b" = no; then
+ # ugh
+ AC_DEFINE(NDEBUG)
+ DEFINES="$DEFINES -DNDEBUG"
+ fi
+
+ if test "$optimise_b" = yes; then
+ OPTIMIZE="-O2 -finline-functions"
+ fi
+
+ if test "$optimise_b" = no; then
+ OPTIMIZE=""
+ fi
+
+ if test $profile_b = yes; then
+ EXTRA_LIBES="-pg"
+ OPTIMIZE="$OPTIMIZE -pg"
+ fi
+
+ if test $debug_b = yes; then
+ OPTIMIZE="$OPTIMIZE -g"
+ fi
+
+ # however, C++ support in mingw32 v 0.1.4 is still flaky
+ if test x$MINGWPREFIX != xno; then
+ ICFLAGS="-I$MINGWPREFIX/include"
+ ILDFLAGS="-$MINGWPREFIX/lib"
+ fi
+
+ AC_PROG_CC
+ LD='$(CC)'
+ AC_SUBST(LD)
+
+ CFLAGS="$CFLAGS $OPTIMIZE"
+ CPPFLAGS=${CPPFLAGS:-""}
+ AC_SUBST(CFLAGS)
+ AC_SUBST(CPPFLAGS)
+ AC_SUBST(LDFLAGS)
+ AC_SUBST(ICFLAGS)
+ AC_SUBST(ILDFLAGS)
+ AC_SUBST(DEFINES)
+ AC_SUBST(EXTRA_LIBES)
+])
+
+AC_DEFUN(AC_STEPMAKE_CXX, [
+ AC_LANG_CPLUSPLUS
+ AC_PROG_CXX
+
+ AC_CHECK_HEADER(FlexLexer.h, true,
+ AC_STEPMAKE_WARN(can"\'"t find flex header. Please install Flex headers correctly))
+
+ CPPFLAGS="$CPPFLAGS $DEFINES"
+ CXXFLAGS="$CXXFLAGS $OPTIMIZE"
+ LDFLAGS="$LDFLAGS $EXTRA_LIBES"
+
+ AC_SUBST(CXXFLAGS)
+ AC_SUBST(CXX)
+ LD='$(CXX)'
+ AC_SUBST(LD)
+])
+
+AC_DEFUN(AC_STEPMAKE_CXXTEMPLATE, [
+ AC_CACHE_CHECK([whether explicit instantiation is needed],
+ lily_cv_need_explicit_instantiation,
+ AC_TRY_LINK([
+ template <class T> struct foo { static int baz; };
+ template <class T> int foo<T>::baz = 1;
+ ], [ return foo<int>::baz; ],
+ lily_cv_need_explicit_instantiation=no,
+ lily_cv_need_explicit_instantiation=yes))
+ if test x"$lily_cv_need_explicit_instantiation"x = x"yes"x; then
+ AC_DEFINE(NEED_EXPLICIT_INSTANTIATION)
+ fi
+])
+
+AC_DEFUN(AC_STEPMAKE_DATADIR, [
+ if test "$datadir" = "\${prefix}/share"; then
+ datadir='${prefix}/share/'$package
+ fi
+ DIR_DATADIR=${datadir}
+ presome=${prefix}
+ if test "$prefix" = "NONE"; then
+ presome=${ac_default_prefix}
+ fi
+ DIR_DATADIR=`echo ${DIR_DATADIR} | sed "s!\\\${prefix}!$presome!"`
+ AC_SUBST(datadir)
+ AC_SUBST(DIR_DATADIR)
+ AC_DEFINE_UNQUOTED(DIR_DATADIR, "${DIR_DATADIR}")
+])
+
+AC_DEFUN(AC_STEPMAKE_END, [
+ AC_OUTPUT($CONFIGFILE.make:config.make.in)
+
+ rm -f GNUmakefile
+ cp make/toplevel.make.in ./GNUmakefile
+ chmod 444 GNUmakefile
+])
+
+AC_DEFUN(AC_STEPMAKE_GXX, [
+ # ugh autoconf
+ # urg, egcs: how to check for egcs >= 1.1?
+ changequote(<<, >>)dnl
+ if $CXX --version | egrep '2\.[89]' > /dev/null ||
+ $CXX --version | grep 'egcs' > /dev/null
+ changequote([, ])dnl
+ then
+ true
+ else
+ AC_STEPMAKE_WARN(can\'t find g++ 2.8 or egcs 1.1)
+ fi
+])
+
+AC_DEFUN(AC_STEPMAKE_GUILE, [
+ GUILE_FLAGS
+ if guile-config --version 2>&1 | grep -q 'version 1\.[012]'; then
+ AC_STEPMAKE_WARN(Guile version 1.3 or better needed)
+ fi
+])
+
+AC_DEFUN(AC_STEPMAKE_INIT, [
+
+ . $srcdir/VERSION
+ FULL_VERSION=$MAJOR_VERSION.$MINOR_VERSION.$PATCH_LEVEL
+ if test x$MY_PATCH_LEVEL != x; then
+ FULL_VERSION=$FULL_VERSION.$MY_PATCH_LEVEL
+ fi
+
+ # urg: don't "fix" this: irix doesn't know about [:lower:] and [:upper:]
+ changequote(<<, >>)dnl
+ PACKAGE=`echo $PACKAGE_NAME | tr '[a-z]' '[A-Z]'`
+ 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!"`
+
+ AC_MSG_CHECKING(Package)
+ if test "x$PACKAGE" = "xSTEPMAKE"; then
+ AC_MSG_RESULT(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
+ AC_MSG_RESULT($PACKAGE)
+ AC_MSG_CHECKING(for stepmake)
+ # Check for installed stepmake
+ if test -d $stepmake; then
+ AC_MSG_RESULT($stepmake)
+ else
+ stepmake='$(depth)'/stepmake
+ AC_MSG_RESULT(./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)
+ AC_DEFINE_UNQUOTED(PACKAGE, "${PACKAGE_NAME}")
+ AC_DEFINE_UNQUOTED(TOPLEVEL_VERSION, "${FULL_VERSION}")
+
+ if test "$package_depth" = "" ; then
+ package_depth="."
+ else
+ package_depth="../$package_depth"
+ fi
+ export package_depth
+ AC_SUBST(package_depth)
+
+ AUTOGENERATE="This file was automatically generated by configure"
+ AC_SUBST(AUTOGENERATE)
+ absolute_builddir="`pwd`"
+ AC_SUBST(absolute_builddir)
+
+ STATE_VECTOR=`ls make/STATE-VECTOR 2>/dev/null`
+ if test "x$STATE_VECTOR" != "x"; then
+ STATE_VECTOR="\$(depth)/$STATE_VECTOR"
+ fi
+ AC_SUBST(STATE_VECTOR)
+
+ CONFIGSUFFIX=
+ AC_ARG_ENABLE(config,
+ [ enable-config=FILE put configure settings in config-FILE.make],
+ [CONFIGSUFFIX=$enableval])
+
+ if test "$CONFIGSUFFIX" != "" ; then
+ CONFIGFILE=config-$CONFIGSUFFIX
+ else
+ CONFIGFILE=config
+ fi
+ AC_SUBST(CONFIGSUFFIX)
+
+ AC_CANONICAL_HOST
+ AC_CHECK_PROGS(MAKE, gmake make, error)
+ AC_CHECK_PROGS(FIND, find, error)
+
+dnl system supplied INSTALL is unsafe; use our own install.
+dnl AC_PROG_INSTALL
+dnl if test "$INSTALL" = "bin/install-sh"; then
+dnl export INSTALL="\$\(depth\)/bin/install-sh"
+dnl fi
+
+ AC_CHECK_PROGS(TAR, tar, error)
+
+ if test "x`uname`" = "xHP-UX"; then
+ AC_PATH_PROG(BASH, bash, /bin/sh)
+ AC_STEPMAKE_WARN(avoiding buggy /bin/sh)
+ AC_PATH_PROG(SHELL, bash, /bin/ksh)
+ else
+ AC_PATH_PROG(BASH, bash, /bin/sh)
+ SHELL=/bin/sh
+ AC_SUBST(SHELL)
+ fi
+
+
+ AC_PATH_PROG(PYTHON, ${PYTHON:-python}, -echo no python)
+ AC_SUBST(PYTHON)
+
+ if test $MAKE != "error" ; then
+ $MAKE -v 2> /dev/null | grep GNU > /dev/null
+ if test "$?" = 1
+ then
+ AC_STEPMAKE_WARN(Please install *GNU* make)
+ fi
+ fi
+
+ AC_CHECK_SEARCH_RESULT($PYTHON, python, You should install Python)
+
+ if test "x$OSTYPE" = "xcygwin32" || test "x$OSTYPE" = "xWindows_NT"; then
+ LN=cp # hard link does not work under cygnus-nt
+ LN_S='cp -r' # symbolic link does not work for native nt
+ ZIP="zip -r -9" #
+ DOTEXE=.exe
+ # urg
+ # DIRSEP='\\'
+ # PATHSEP=';'
+ #
+ # cygwin fixes all these things.
+ # it seems these were used because of dos-style TEXINPUTS and
+ # MFINPUTS needed for miktex.
+ # but this breaks parsing of all other cygwin/unix style paths.
+ #
+ # if your (mik)tex breaks, make a:
+ # /usr/local/bin/tex:
+ # #!/bin/sh
+ # TEXINPUTS=`cygpath -pw $TEXINPUTS` /texmf/miktex/bin/tex $*
+ #
+ # and
+ #
+ # /usr/local/bin/mf:
+ # #!/bin/sh
+ # MFINPUTS=`cygpath -pw $MFINPUTS` /texmf/miktex/bin/mf $*
+ #
+ # this way, you may have buildscripts/out/lilypond-profile
+ # 'automatically' sourced from /usr/etc/profile.d/ too.
+ #
+ DIRSEP='/'
+ PATHSEP=':'
+ INSTALL="\$(SHELL) \$(stepdir)/../bin/install-dot-exe.sh -c"
+ else
+ DIRSEP='/'
+ PATHSEP=':'
+ LN=ln
+ LN_S='ln -s'
+ ZIP="zip -r -9"
+ 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_SUBST(PATHSEP)
+ AC_SUBST(DIRSEP)
+
+ AC_STEPMAKE_DATADIR
+])
+
+AC_DEFUN(AC_STEPMAKE_LEXYACC, [
+ # ugh, automake: we want (and check for) bison
+ AC_PROG_YACC
+ # ugh, automake: we want (and check for) flex
+ # AC_PROG_LEX
+ # urg: automake 1.3: hope this doesn't break 1.2 ac_cv_pro_lex_root hack...
+
+ # AC_DECL_YYTEXT
+ # ugh, ugh
+ ac_cv_prog_lex_root=lex.yy
+
+ AC_CHECK_PROGS(BISON, bison, error)
+ AC_CHECK_PROGS(FLEX, flex, error)
+ AC_CHECK_SEARCH_RESULT($BISON, bison, Please install Bison, 1.25 or newer)
+ AC_CHECK_SEARCH_RESULT($FLEX, flex, Please install Flex, 2.5 or newer)
+
+ if test $BISON != "error"; then
+ bison_version=`$BISON --version | sed 's/^.*version 1.//g'`
+ if test `echo $bison_version | sed 's/\..*$//g'` -lt 25; then
+ AC_STEPMAKE_WARN(Your bison is a bit old (1.$bison_version). You might have to install 1.25)
+ fi
+ fi
+
+ AC_SUBST(BISON)
+ AC_SUBST(FLEX)
+])
+
+AC_DEFUN(AC_STEPMAKE_LIB, [
+ AC_CHECK_PROGS(AR, ar, error)
+ AC_PROG_RANLIB
+
+ AC_SUBST(AR)
+ AC_SUBST(RANLIB)
+])
+
+AC_DEFUN(AC_STEPMAKE_LIBTOOL, [
+ # libtool.info ...
+ # **Never** try to set library version numbers so that they correspond
+ # to the release number of your package. This is an abuse that only
+ # fosters misunderstanding of the purpose of library versions.
+
+ REVISION=$PATCH_LEVEL
+ # CURRENT=$MINOR_VERSION
+ CURRENT=`expr $MINOR_VERSION + 1`
+ # AGE=$(expr $MAJOR_VERSION + 1)
+ AGE=$MAJOR_VERSION
+ AC_SUBST(CURRENT)
+ AC_SUBST(REVISION)
+ AC_SUBST(AGE)
+])
+
+AC_DEFUN(AC_STEPMAKE_LOCALE, [
+ lang=English
+ ALL_LINGUAS="en nl"
+
+ # with/enable ??
+ AC_ARG_WITH(localedir,
+ [ with-localedir=LOCALE use LOCALE as locale dir. Default: PREFIX/share/locale ],
+ localedir=$with_localedir,
+ localedir='${prefix}/share/locale')
+
+ AC_ARG_WITH(lang,
+ [ with-lang=LANG use LANG as language to emit messages],
+ language=$with_lang,
+ language=English)
+
+ AC_MSG_CHECKING(language)
+ case "$language" in
+ En* | en* | Am* | am* | US* | us*)
+ lang=English;;
+ NL | nl | Du* | du* | Ned* | ned*)
+ lang=Dutch;;
+ "")
+ lang=English;;
+ *)
+ lang=unknown;;
+ esac
+ AC_MSG_RESULT($lang)
+
+ if test "$lang" = "unknown" ; then
+ AC_STEPMAKE_WARN($language not supported; available are: $ALL_LINGUAS)
+ fi
+
+])
+
+AC_DEFUN(AC_STEPMAKE_GETTEXT, [
+ DIR_LOCALEDIR=${localedir}
+ presome=${prefix}
+ if test "$prefix" = "NONE"; then
+ presome=${ac_default_prefix}
+ fi
+ DIR_LOCALEDIR=`echo ${DIR_LOCALEDIR} | sed "s!\\\${prefix}!$presome!"`
+ AC_SUBST(localedir)
+ AC_SUBST(DIR_LOCALEDIR)
+ AC_DEFINE_UNQUOTED(DIR_LOCALEDIR, "${DIR_LOCALEDIR}")
+
+ AC_CHECK_LIB(intl, gettext)
+ AC_CHECK_FUNCS(gettext)
+])
+
+AC_DEFUN(AC_STEPMAKE_MAN, [
+ AC_CHECK_PROGS(GROFF, groff ditroff, -echo no groff)
+ AC_CHECK_PROGS(TROFF, troff, -echo no troff)
+ AC_CHECK_PROGS(TBL, tbl, cat)
+])
+
+AC_DEFUN(AC_STEPMAKE_MSGFMT, [
+ # AC_CHECK_PROGS(MSGFMT, msgfmt, -echo no msgfmt)
+ AC_CHECK_PROGS(MSGFMT, msgfmt, \$(SHELL) \$(step-bindir)/fake-msgfmt.sh )
+ AC_MSG_CHECKING(whether msgfmt accepts -o)
+ msgfmt_output="`msgfmt -o bla 2>&1 | grep usage`"
+ if test "$msgfmt_output" = ""; then
+ AC_MSG_RESULT(yes)
+ else
+ # urg
+ MSGFMT="\$(SHELL) \$(step-bindir)/fake-msgfmt.sh"
+ AC_MSG_RESULT(no)
+ AC_STEPMAKE_WARN(please install msgfmt from GNU gettext)
+ fi
+ if test ! -n "$MSGFMT"; then
+ AC_STEPMAKE_WARN(please install msgfmt from GNU gettext)
+ fi
+])
+
+#why has this been dropped?
+AC_DEFUN(XXAC_STEPMAKE_TEXMF_DIRS, [
+ AC_ARG_ENABLE(tex-prefix,
+ [ enable-tex-prefix=DIR set the tex-directory to find TeX subdirectories. (default: PREFIX)],
+ [TEXPREFIX=$enableval],
+ [TEXPREFIX=auto] )
+
+ AC_ARG_ENABLE(tex-dir,
+ [ enable-tex-dir=DIR set the directory to put $PACKAGE_NAME TeX files in. ],
+ [TEXDIR=$enableval],
+ [TEXDIR=auto] )
+
+ AC_ARG_ENABLE(mf-dir,
+ [ enable-mf-dir=DIR set the directory to put $PACKAGE_NAME MetaFont files in. ],
+ [MFDIR=$enableval],
+ [MFDIR=auto])
+
+ if test "x$TEXPREFIX" = xauto ; then
+ AC_TEX_PREFIX(TEXPREFIX)
+ else
+ find_texprefix=$TEXPREFIX
+ fi
+
+ if test "x$MFDIR" = xauto; then
+ AC_MF_SUBDIR(MFDIR)
+ fi
+
+ if test "x$TEXDIR" = xauto ; then
+ AC_TEX_SUBDIR(TEXDIR)
+ fi
+ AC_SUBST(TEXPREFIX)
+ AC_SUBST(TEXDIR)
+ AC_SUBST(MFDIR)