X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=configure.in;h=7edb9bc87aea7051bac2afa55a0dc7238a79e3f3;hb=0280e8eceed6ec62b90395156784553f3b35e4f4;hp=95a848b4767b863d9c0259b223db30fd6d2f7be1;hpb=ce5315498fcaaf17d5eb1b320014e96defbb7dfb;p=lilypond.git diff --git a/configure.in b/configure.in index 95a848b476..7edb9bc87a 100644 --- a/configure.in +++ b/configure.in @@ -1,274 +1,81 @@ -dnl -*-shell-script-*- -dnl Process this file with autoconf to produce a configure script. - -dnl should cache result. -dnl should look in $prefix first. - - -AC_DEFUN(AC_TEX_PREFIX, [ - - - AC_MSG_CHECKING(TeX/MF root dir directory) - - find_root_prefix="$prefix" - - - test "x$find_root_prefix" = xNONE && find_root_prefix="$ac_default_prefix" - find_texpostfix=""; - for postfix in "/lib/tex/" "/lib/texmf" "/lib" "/tex" "/texmf"; do - find_texprefix="$find_root_prefix$postfix" - if test -d $find_texprefix; then - find_texpostfix=$postfix - break; - fi - done - - if test "x$find_texpostfix" = x; then - find_texpostfix='/lib/texmf/tex' - AC_MSG_WARN(Cannot determine the TeX-directory. Please use --enable-tex-prefix) - fi - - find_texprefix="$find_root_prefix/$find_texpostfix" - - # only assign if variablename not empty - if test x != "x$1"; then - $1='${prefix}'/"$find_texpostfix" - fi - AC_MSG_RESULT($find_texprefix) - -]) - - -# find a directory inside a prefix, -# $1 the prefix (expanded version) -# $2 variable to assign -# $3 the directory name -# $4 description -AC_DEFUN(AC_FIND_DIR_IN_PREFIX, [ - - AC_MSG_CHECKING($4 directory) - find_dirdir=`(cd $1; - $FIND ./ -type d -a -name $3 -print |sort|head -1|sed 's#^\./##')` - - - if test "x$find_dirdir" = x; then - find_dirdir="/$3"; - AC_MSG_WARN(Cannot determine $4 subdirectory. Please set from command-line) - true - fi - $2=$find_dirdir - AC_MSG_RESULT($1/$find_dirdir) -]) - -AC_DEFUN(AC_TEX_SUBDIR, [ -dnl AC_REQUIRE([AC_TEX_PREFIX]) - AC_FIND_DIR_IN_PREFIX($find_texprefix, $1, tex,TeX input) - $1="$TEXPREFIX/$$1" -]) - -AC_DEFUN(AC_MF_SUBDIR, [ -dnl AC_REQUIRE([AC_TEX_PREFIX]) - AC_FIND_DIR_IN_PREFIX($find_texprefix, $1, source, MF input) - $1="$TEXPREFIX/$$1" -]) - -AC_INIT(flower/choleski.cc) - -# if given here, these vars are initted at the checking point. -printing_b=no -checking_b=yes -debug_b=yes -optimise_b=no -profile_b=no - -AC_LANG_CPLUSPLUS - -AC_ARG_ENABLE(printing, - [ enable-printing turn on debug printing], - [printing_b=$enableval]) - - -AC_ARG_ENABLE(checking, - [ disable-checking set runtime checks (assert calls)], - [checking_b=$enableval] ) - -AC_ARG_ENABLE(debugging, - [ disable-debugging set debug info ], - [debug_b=$enableval]) - -AC_ARG_ENABLE(optimise, - [ enable-optimise use maximal speed optimisations], - [optimise_b=$enableval]) - - -AC_ARG_ENABLE(profiling, - [ enable-profiling compile with gprof support], - [profile_b=$enableval]) - -AC_ARG_ENABLE(tex-prefix, - [ tex-prefix=DIR set the tex-directory to find TeX subdirectories. (default: PREFIX)], - [TEXPREFIX=$enableval], - [TEXPREFIX=auto] ) - -AC_ARG_ENABLE(tex-dir, - [ tex-dir=DIR set the directory to put LilyPond TeX files in. ], - [TEXDIR=$enableval], - [TEXDIR=auto] ) -AC_ARG_ENABLE(mf-dir, - [ mf-dir=DIR set the directory to put LilyPond MetaFont files in.], - [MFDIR=$enableval], - [MFDIR=auto] ) - -if test $profile_b = yes; then - EXTRA_LIBES="-pg" - DEFINES="$DEFINES -pg" -fi - -if test $printing_b = no; then - DEFINES="$DEFINES -DNPRINT=1" -fi - -if test $debug_b = yes; then - DEFINES="$DEFINES -g" -fi -if test $checking_b = no; then - DEFINES="$DEFINES -DNDEBUG=1" +dnl configure.in -*-shell-script-*- +dnl Process this file with autoconf to produce a configure script. + +# Bootstrap the init proces. List a file identifies your package. +AC_INIT(make/lilypond.lsm.in) +AC_CONFIG_HEADER($CONFIGFILE.h:config.hh.in) + +# Bootstrap StepMake configure +STEPMAKE_INIT + +# For all packages except the StepMake package itself +AC_CONFIG_SUBDIRS(stepmake) + +# Uncomment the configuration options your package needs. + +# must come before any header checks +STEPMAKE_COMPILE + +STEPMAKE_GCC(REQUIRED, 2.8) +STEPMAKE_CXX(REQUIRED) +STEPMAKE_GXX(REQUIRED, 2.95) +STEPMAKE_CXXTEMPLATE +STEPMAKE_LIB(REQUIRED) +STEPMAKE_BISON(REQUIRED, 1.25) +STEPMAKE_FLEX(REQUIRED) +STEPMAKE_FLEXLEXER(REQUIRED) +STEPMAKE_LOCALE +STEPMAKE_GETTEXT +STEPMAKE_MSGFMT(REQUIRED) +STEPMAKE_TEXMF +STEPMAKE_TEXMF_DIRS +STEPMAKE_GUILE_DEVEL(REQUIRED, 1.4) +STEPMAKE_KPATHSEA +STEPMAKE_MAKEINFO(REQUIRED) +STEPMAKE_PYTHON_DEVEL(REQUIRED) + + +AC_HAVE_HEADERS(assert.h sys/stat.h sstream) +AC_HEADER_STAT + +AC_FUNC_MEMCMP +AC_FUNC_VPRINTF +AC_CHECK_FUNCS(memmem snprintf vsnprintf gettext isinf) + + +## Optional tools for building documentation, website, extra fonts. + +# guile executable for some scripts +STEPMAKE_GUILE(OPTIONAL) +# perl for help2man. +STEPMAKE_PERL(OPTIONAL) +# pktrace for generating pfa's, pfb's +STEPMAKE_PROGS(PKTRACE, pktrace, OPTIONAL, 1.0.3) +# new makeinfo for multi-page website docs +STEPMAKE_PROGS(MAKEINFO, makeinfo, OPTIONAL, 4.1) + + +if test "$optimise_b" = yes; then + DEFINES="$DEFINES -DSTRING_UTILS_INLINED" + AC_DEFINE(STRINGS_UTILS_INLINED) fi -if test $optimise_b = yes; then - DEFINES="$DEFINES -O2 -DSTRING_UTILS_INLINED" -fi -dnl COMPILEINFO="$HOST $host $TARGET $target" -AUTOHEADER="This file was automatically generated by configure" -CXXFLAGS=${CXXFLAGS:-""} # we don't want -g -O junk -AC_PROG_CXX -AC_PROG_RANLIB -AC_PROG_INSTALL -AC_CHECK_PROGS(FIND, find, error) +AC_DEFINE_UNQUOTED(TOPLEVEL_VERSION, "${FULL_VERSION}") +AC_DEFINE_UNQUOTED(FLOWER_VERSION, "${FULL_FLOWER_VERSION}") -dnl should check out -print -if test FIND = error; then - AC_MSG_WARN(Couldn't find \`find'. Please use --enable-tex-dir) -fi - -AC_SUBST(CXX) -AC_SUBST(DEFINES) -AC_SUBST(COMPILEINFO) -AC_SUBST(AUTOHEADER) -AC_SUBST(BISON) -AC_SUBST(FLEX) -AC_SUBST(TEXPREFIX) -AC_SUBST(TEXDIR) -AC_SUBST(MFDIR) -AC_SUBST(EXTRA_LIBES) +# Gather requirements and generate output. +STEPMAKE_END -AC_CHECK_PROGS(BISON, bison, error) -AC_CHECK_PROGS(FLEX, flex, error) -AC_CHECK_PROGS(MAKE, make, error) -AC_CHECK_PROGS(PODMAN, pod2man, error) - -if test "x$TEXPREFIX" = xauto ; then - AC_TEX_PREFIX(TEXPREFIX) -else - find_texprefix=$TEXPREFIX -fi - -if test "x$TEXDIR" = xauto ; then - AC_TEX_SUBDIR(TEXDIR) -fi +test -n "$CONFIGURATION" && mc=" conf=$CONFIGURATION" || mc="" -if test "x$MFDIR" = xauto; then - AC_MF_SUBDIR(MFDIR) -fi - -if test $MAKE = "error" -then - AC_MSG_ERROR(Please install GNU make) -else - $MAKE -v| grep GNU > /dev/null - if test "$?" = 1 - then - AC_MSG_WARN(Please install *GNU* make) - fi -fi - -if test $BISON = "error" -then - AC_MSG_WARN(can't find bison. Please install Bison (1.25 or better)) -else - bison_version=`$BISON --version| sed 's/^.*version 1.//g' ` - if test $bison_version -lt 25; then - AC_MSG_WARN(Your bison is too old (1.$bison_version). Please install 1.25) - fi -fi - -if test $PODMAN = "error" -then - AC_MSG_WARN(can't find pod. You should install Perl (version 5 or better)) -fi - -if test $FLEX = "error" -then - AC_MSG_WARN(can't find flex. Please install Flex (2.5 or better)) -fi - -if $CXX --version | grep '2\.7' > /dev/null -then - true -else - AC_MSG_WARN(can't find g++ 2.7) -fi - -AC_CHECK_HEADER(FlexLexer.h, true, - AC_MSG_WARN(can't find flex header. Please install Flex headers correctly)) -AC_CONFIG_SUBDIRS(flower) -AC_OUTPUT(make/out/Configure_variables.make:make/Configure_variables.make.in) - - - -dnl URG!!!!!! -eval "DIR_DATADIR=$datadir" -DIR_DATADIR="$DIR_DATADIR/lilypond" -AC_MSG_CHECKING - -cat << EOF > lib/out/config.hh +cat <> lib/out/config.hh - -touch make/out/Site.make - -# ugr -(cd mi2mu; CXX="$ac_cv_prog_CXX" ../bin/make_version > out/version.hh -dnl echo 0 > out/.build -) -# rgu -sed 's/TOPLEVEL_//g' < .version > lily/.version -(cd lily; CXX="$ac_cv_prog_CXX" ../bin/make_version > out/version.hh -) - -cat << END -Finished configuring. For making everything, do: - - make all - -If you only want help on the make targets, do a - - make help - -assuming that \`make' is GNU make, of course. - -If you want to make site-wide extensions to the makefiles, please use - - make/out/Site.make - -END -