X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=aclocal.m4;h=3003cbd938eec27cd4eb075798847334cab0a441;hb=eb0c8399c37d7d58c904622fc7947b34ee245b9d;hp=caee78ed689c2ec3ef1c521d12b1712ad6bc8c1c;hpb=157eb5cf819e2a1f1e90a9d5c96e604cc7241723;p=lilypond.git diff --git a/aclocal.m4 b/aclocal.m4 index caee78ed68..3003cbd938 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -1,55 +1,45 @@ -dnl WARNING WARNING WARNING WARNING -dnl do not edit! this is aclocal.m4, generated from stepmake/aclocal.m4 -dnl WARNING WARNING WARNING WARNING -dnl do not edit! this is aclocal.m4, generated from stepmake/aclocal.m4 -dnl WARNING WARNING WARNING WARNING -dnl do not edit! this is aclocal.m4, generated from stepmake/aclocal.m4 dnl aclocal.m4 -*-shell-script-*- dnl StepMake subroutines for configure.in +AC_DEFUN(AC_STEPMAKE_BIBTEX2HTML, [ + AC_CHECK_PROGS(BIBTEX2HTML, bibtex2html bib2html, error) + if test "$BIBTEX2HTML" = "bib2html"; then + BIBTEX2HTML_FLAGS='$< $(@)' + else + BIBTEX2HTML_FLAGS='-o $(@D)/$(*F) $<' + fi + AC_SUBST(BIBTEX2HTML) + AC_SUBST(BIBTEX2HTML_FLAGS) +]) + + AC_DEFUN(AC_STEPMAKE_COMPILE, [ # -O is necessary to get inlining - OPTIMIZE="" - CXXFLAGS=${CXXFLAGS:-""} CFLAGS=${CFLAGS:-""} + CXXFLAGS=${CXXFLAGS:-$CFLAGS} + LDFLAGS=${LDFLAGS:-""} checking_b=yes - optimise_b=no + optimise_b=yes profile_b=no debug_b=yes AC_ARG_ENABLE(checking, - [ enable-checking set runtime checks (assert calls). Default: on], + [ --enable-checking set runtime checks (assert calls). Default: on], [checking_b=$enableval] ) - # actually, the default is: tja='-O' to get inlining... - # off='' --jcn + AC_ARG_ENABLE(debugging, + [ --enable-debugging compile with debugging info. Default: on], + [debug_b=$enableval]) - #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], + AC_ARG_ENABLE(optimising, + [ --enable-optimising compile with optimising. Default: on], [optimise_b=$enableval]) - + AC_ARG_ENABLE(profiling, - [ enable-profiling compile with gprof support. Default: off], + [ --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 "$printing_b" = no; then - # ugh - AC_DEFINE(NPRINT) - DEFINES="$DEFINES -DNPRINT" - fi - if test "$checking_b" = no; then # ugh AC_DEFINE(NDEBUG) @@ -60,9 +50,6 @@ AC_DEFUN(AC_STEPMAKE_COMPILE, [ OPTIMIZE="-O2 -finline-functions" fi - if test "$optimise_b" = no; then - OPTIMIZE="" - fi if test $profile_b = yes; then EXTRA_LIBES="-pg" @@ -73,11 +60,6 @@ AC_DEFUN(AC_STEPMAKE_COMPILE, [ 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)' @@ -85,6 +67,20 @@ AC_DEFUN(AC_STEPMAKE_COMPILE, [ CFLAGS="$CFLAGS $OPTIMIZE" CPPFLAGS=${CPPFLAGS:-""} + + AC_MSG_CHECKING([for IEEE-conformance compiler flags]) + save_cflags="$CFLAGS" + case "$host" in + alpha*-*-*) + dnl should do compile test? + AC_MSG_RESULT(-mieee) + CFLAGS="-mieee $CFLAGS" + ;; + *) + AC_MSG_RESULT([none]) + ;; + esac + AC_SUBST(cross_compiling) AC_SUBST(CFLAGS) AC_SUBST(CPPFLAGS) AC_SUBST(LDFLAGS) @@ -103,7 +99,7 @@ AC_DEFUN(AC_STEPMAKE_CXX, [ CPPFLAGS="$CPPFLAGS $DEFINES" CXXFLAGS="$CXXFLAGS $OPTIMIZE" - LDFLAGS=$EXTRA_LIBES + LDFLAGS="$LDFLAGS $EXTRA_LIBES" AC_SUBST(CXXFLAGS) AC_SUBST(CXX) @@ -135,48 +131,91 @@ AC_DEFUN(AC_STEPMAKE_DATADIR, [ presome=${ac_default_prefix} fi DIR_DATADIR=`echo ${DIR_DATADIR} | sed "s!\\\${prefix}!$presome!"` + AC_SUBST(datadir) AC_SUBST(DIR_DATADIR) + + dnl yeah, so fuck me gently with a cactus: this doesnt belong here + dnl Please take the person responsible for inventing shell-scripts out + dnl and shoot him. On behalf of the sane world, thank you. + dnl DIR_SHAREDSTATEDIR="foobar" + dnl AC_SUBST(DIR_SHAREDSTATEDIR) + 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 + # regular in-place build + # test for srcdir_build = yes ? + if test "$builddir" = "."; then + rm -f $srcdir/GNUmakefile + cp $srcdir/GNUmakefile.in $srcdir/GNUmakefile + chmod 444 $srcdir/GNUmakefile + else # --srcdir build + rm -f GNUmakefile + cp $srcdir/make/srcdir.make.in GNUmakefile + chmod 444 GNUmakefile + fi ]) AC_DEFUN(AC_STEPMAKE_GXX, [ - # ugh autoconf - # urg, egcs: how to check for egcs >= 1.1? + AC_MSG_CHECKING("g++ version") + cxx_version=`$CXX --version` + AC_MSG_RESULT("$cxx_version") changequote(<<, >>)dnl - if $CXX --version | grep '2\.8' > /dev/null || - $CXX --version | grep 'egcs' > /dev/null + # urg, egcs: how to check for egcs >= 1.1? + if expr "$cxx_version" : '.*2\.[89]' > /dev/null || + expr "$cxx_version" : '.*egcs' > /dev/null || + expr "$cxx_version" : '3\.0' > /dev/null changequote([, ])dnl then true else - AC_STEPMAKE_WARN(can\'t find g++ 2.8 or egcs 1.1) + AC_STEPMAKE_WARN(can\'t find g++ 2.8, 2.9, 3.0 or egcs 1.1) fi ]) AC_DEFUN(AC_STEPMAKE_GUILE, [ - # on some systems, -lguile succeeds for guile-1.3 - # others need readline, dl (or even more) - # urg, must check for different functions in libguile - # to force new check iso reading from cache - - # gh_scm2doubles,gh_doubles2scm are new in 1.3 - GUILE_FLAGS - AC_CHECK_LIB(guile, gh_scm2doubles, - [LIBS="`echo $GUILE_LDFLAGS | sed -e 's/-L[[/-_a-zA-Z0-9]]\+ //g'` $LIBS" - AC_DEFINE(HAVE_LIBGUILE)], , $GUILE_LDFLAGS dnl - ) - if test "$ac_cv_lib_guile_gh_scm2doubles" != yes ; then - AC_STEPMAKE_WARN(You should install guile 1.3 or newer) + ## First, let's just see if we can find Guile at all. + AC_MSG_CHECKING("for guile-config") + for guile_config in guile-config $target-guile-config $build-guile-config; do + AC_MSG_RESULT("$guile_config") + if ! $guile_config --version > /dev/null 2>&1 ; then + AC_MSG_WARN("cannot execute $guile_config") + AC_MSG_CHECKING("if we are cross compiling") + guile_config=error + else + break + fi + done + if test "$guile_config" = "error"; then + AC_MSG_ERROR("cannot find guile-config; is Guile installed?") + exit 1 fi + AC_MSG_CHECKING("Guile version") + need_guile_version="1.3.4" + need_guile_version_numeric=100304 + guile_version=`$guile_config --version 2>&1 | awk '{print $NF}'` + guile_version_numeric=`echo $guile_version | awk -F. ' +{if ([$]3) {last = [$]3} +else {last =0}} +{printf "%s%s%s\n",[$]1*100, [$]2*10,last}'` + AC_MSG_RESULT("$guile_version") + if test $guile_version_numeric -lt $need_guile_version_numeric + then + AC_STEPMAKE_WARN("Guile version "$need_guile_version" or newer is needed") + fi + changequote(<<, >>)dnl + GUILE_MAJOR_VERSION=`expr $guile_version : '\([0-9]*\)'` + GUILE_MINOR_VERSION=`expr $guile_version : '[0-9]*\.\([0-9]*\)'` + changequote([, ])dnl + GUILE_FLAGS + AC_PATH_PROG(GUILE, guile, error) + AC_SUBST(GUILE) + AC_DEFINE_UNQUOTED(GUILE_MAJOR_VERSION, $GUILE_MAJOR_VERSION) + AC_DEFINE_UNQUOTED(GUILE_MINOR_VERSION, $GUILE_MINOR_VERSION) ]) AC_DEFUN(AC_STEPMAKE_INIT, [ @@ -202,23 +241,66 @@ AC_DEFUN(AC_STEPMAKE_INIT, [ fi stepmake=`echo ${stepmake} | sed "s!\\\${prefix}!$presome!"` + # urg, how is this supposed to work? + if test "$program_prefix" = "NONE"; then + program_prefix= + fi + if test "$program_suffix" = "NONE"; then + program_suffix= + fi + 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_MSG_CHECKING(builddir) + if test "$srcdir" = "."; then + builddir=. + else + absolute_builddir="`pwd`" + package_absolute_builddir="`dirname $absolute_builddir`" + package_srcdir="`dirname $srcdir`" + builddir="`dirname $package_srcdir`/`basename $package_absolute_builddir`/`basename $absolute_builddir`" + fi + AC_MSG_RESULT($builddir) + + (cd stepmake 2>/dev/null || mkdir stepmake) + (cd stepmake; rm -f stepmake; ln -s ../$srcdir/stepmake .) + (cd stepmake; rm -f bin; ln -s ../$srcdir/bin .) AC_CONFIG_AUX_DIR(bin) stepmake=stepmake else AC_MSG_RESULT($PACKAGE) + + AC_MSG_CHECKING(builddir) + if test "$srcdir" = "."; then + builddir=. + srcdir_build=no + else + absolute_builddir="`pwd`" +# builddir="`dirname $srcdir`/`basename $absolute_builddir`" + builddir="`bash $srcdir/buildscripts/walk.sh \"$srcdir\"`" + srcdir_build=yes + fi + AC_MSG_RESULT($builddir) + if expr "$srcdir" : '/' > /dev/null 2>&1; then + absolute_srcdir=yes + AC_STEPMAKE_WARN(Absolute --srcdir specified: $srcdir) + fi + 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)) + if test "$absolute_srcdir" != "yes"; then + stepmake='$(depth)'/$srcdir/stepmake + else + stepmake=$srcdir/stepmake + fi + AC_MSG_RESULT($srcdir/stepmake ($datadir/stepmake not found)) fi + AC_CONFIG_AUX_DIR(\ $HOME/usr/local/share/stepmake/bin\ $HOME/usr/local/lib/stepmake/bin\ @@ -229,9 +311,11 @@ AC_DEFUN(AC_STEPMAKE_INIT, [ /usr/share/stepmake/bin\ /usr/lib/stepmake/bin\ stepmake/bin\ + $srcdir/stepmake/bin\ ) fi + AC_SUBST(builddir) AC_SUBST(stepmake) AC_SUBST(package) AC_SUBST(PACKAGE) @@ -249,25 +333,15 @@ AC_DEFUN(AC_STEPMAKE_INIT, [ 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]) + [ --enable-config=CONF put settings in config-CONF.make and config-CONF.h; + do \`make conf=CONF' to get output in ./out-CONF], + [CONFIGURATION=$enableval]) - if test "$CONFIGSUFFIX" != "" ; then - CONFIGFILE=config-$CONFIGSUFFIX - else - CONFIGFILE=config - fi + test -n "$CONFIGURATION" && CONFIGSUFFIX="-$CONFIGURATION" + CONFIGFILE=config$CONFIGSUFFIX AC_SUBST(CONFIGSUFFIX) AC_CANONICAL_HOST @@ -310,8 +384,9 @@ dnl fi 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 + program_suffix=.exe # urg + # ROOTSEP=':' # DIRSEP='\\' # PATHSEP=';' # @@ -334,10 +409,12 @@ dnl fi # this way, you may have buildscripts/out/lilypond-profile # 'automatically' sourced from /usr/etc/profile.d/ too. # + ROOTSEP=':' DIRSEP='/' PATHSEP=':' INSTALL="\$(SHELL) \$(stepdir)/../bin/install-dot-exe.sh -c" else + ROOTSEP=':' DIRSEP='/' PATHSEP=':' LN=ln @@ -345,7 +422,8 @@ dnl fi ZIP="zip -r -9" INSTALL="\$(SHELL) \$(stepdir)/../bin/install-sh -c" fi - AC_SUBST(DOTEXE) + AC_SUBST(program_prefix) + AC_SUBST(program_suffix) AC_SUBST(ZIP) AC_SUBST(LN) AC_SUBST(LN_S) @@ -355,10 +433,37 @@ dnl fi AC_SUBST(PATHSEP) AC_SUBST(DIRSEP) - AC_STEPMAKE_DATADIR ]) +AC_DEFUN(AC_STEPMAKE_KPATHSEA, [ + + kpathsea_b=yes + #FIXME --with-xxx is meant for specifying a PATH too, + # so this should read: --enable-kpathsea, + # or --with-kpathsea-include=PATH --with-kpathsea-lib=PATH + AC_ARG_WITH(kpathsea, + [ --with-kpathsea use kpathsea lib. Default: on], + [kpathsea_b=$with_kpathsea]) + + if test "$kpathsea_b" != "no"; then + AC_HAVE_HEADERS(kpathsea/kpathsea.h) + AC_CHECK_LIB(kpathsea, kpse_find_file) + AC_CHECK_FUNCS(kpse_find_file,, AC_ERROR(Cannot find kpathsea functions. You should install kpathsea; see INSTALL.txt. Rerun ./configure --without-kpathsea only if kpathsea is not available for your platform.)) + fi + AC_MSG_CHECKING(whether to use kpathsea) + if test "$kpathsea_b" != no; then + AC_MSG_RESULT(yes) + KPATHSEA=1 + else + AC_MSG_RESULT(no) + KPATHSEA=0 + fi + + AC_SUBST(KPATHSEA) + AC_DEFINE_UNQUOTED(KPATHSEA, $KPATHSEA) +]) + AC_DEFUN(AC_STEPMAKE_LEXYACC, [ # ugh, automake: we want (and check for) bison AC_PROG_YACC @@ -416,12 +521,13 @@ AC_DEFUN(AC_STEPMAKE_LOCALE, [ # with/enable ?? AC_ARG_WITH(localedir, - [ with-localedir=LOCALE use LOCALE as locale dir. Default: PREFIX/share/locale ], + [ --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], + [ --with-lang=LANG use LANG as language to emit messages], language=$with_lang, language=English) @@ -459,6 +565,32 @@ AC_DEFUN(AC_STEPMAKE_GETTEXT, [ AC_CHECK_FUNCS(gettext) ]) +AC_DEFUN(AC_STEPMAKE_MAKEINFO, [ + AC_CHECK_PROGS(MAKEINFO, makeinfo, error) + if test "$MAKEINFO" != "error"; then + AC_MSG_CHECKING(whether makeinfo can split html by @node) + mkdir -p out + makeinfo --html --output=out/split < /dev/null || { - echo "configure: cannot find guile-config; is Guile installed?" 1>&2 - exit 1 - } - GUILE_CFLAGS="`guile-config compile`" - GUILE_LDFLAGS="`guile-config link`" + if ! $guile_config link > /dev/null ; then + AC_MSG_RESULT("cannot execute $guile_config") + AC_MSG_ERROR("cannot find guile-config; is Guile installed?") + exit 1 + fi + GUILE_CFLAGS="`$guile_config compile`" + GUILE_LDFLAGS="`$guile_config link`" AC_SUBST(GUILE_CFLAGS) AC_SUBST(GUILE_LDFLAGS) AC_MSG_RESULT(yes) @@ -1084,37 +1243,3 @@ main () AC_SUBST(GTK___CFLAGS) AC_SUBST(GTK___LIBS) ]) - -dnl GUILE_FLAGS --- set flags for compiling and linking with Guile -dnl -dnl This macro runs the `guile-config' script, installed with Guile, -dnl to find out where Guile's header files and libraries are -dnl installed. It sets two variables, marked for substitution, as -dnl by AC_SUBST. -dnl -dnl GUILE_CFLAGS --- flags to pass to a C or C++ compiler to build -dnl code that uses Guile header files. This is almost -dnl always just a -I flag. -dnl -dnl GUILE_LDFLAGS --- flags to pass to the linker to link a -dnl program against Guile. This includes `-lguile' for -dnl the Guile library itself, any libraries that Guile -dnl itself requires (like -lqthreads), and so on. It may -dnl also include a -L flag to tell the compiler where to -dnl find the libraries. - -AC_DEFUN([GUILE_FLAGS],[ -## The GUILE_FLAGS macro. - ## First, let's just see if we can find Guile at all. - AC_MSG_CHECKING(for Guile) - guile-config link > /dev/null || { - echo "configure: cannot find guile-config; is Guile installed?" 1>&2 - exit 1 - } - GUILE_CFLAGS="`guile-config compile`" - GUILE_LDFLAGS="`guile-config link`" - AC_SUBST(GUILE_CFLAGS) - AC_SUBST(GUILE_LDFLAGS) - AC_MSG_RESULT(yes) -]) -