X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=configure.in;h=6f70a28f4396e2b2aff561cf1aa251a83604b037;hb=38655bc28e73a0b218ba1582bdb84bab0fdfec4b;hp=c1d2bb5cce614730f69a6307d51a9ef74e040ad6;hpb=2059367f59496fb11796bd2cf239f6b58625231e;p=lilypond.git diff --git a/configure.in b/configure.in index c1d2bb5cce..6f70a28f43 100644 --- a/configure.in +++ b/configure.in @@ -1,292 +1,82 @@ -dnl -*-shell-script-*- -dnl Process this file with autoconf to produce a configure script. +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.3.4) +STEPMAKE_KPATHSEA +STEPMAKE_MAKEINFO(REQUIRED) +STEPMAKE_PYTHON_DEVEL(REQUIRED) + + +# AC_HAVE_HEADERS(limits.h malloc.h string.h unistd.h values.h) +AC_HAVE_HEADERS(assert.h sys/stat.h) +AC_HEADER_STAT +AC_FUNC_MEMCMP +AC_FUNC_VPRINTF +AC_CHECK_FUNCS(memmem snprintf vsnprintf gettext isinf) -AC_INIT(flower/choleski.cc) -AC_CONFIG_HEADER($CONFIGFILE.hh:config.hh.in) #ugh flower/out/ -AC_CONFIG_AUX_DIR(bin) -AC_CANONICAL_HOST - - -. $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 - - -. $srcdir/flower/VERSION -FULL_FLOWER_VERSION=$MAJOR_VERSION.$MINOR_VERSION.$PATCH_LEVEL - -# 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) - -# turn off shared libraries by default (may be enabled using --enable-shared) -#AM_DISABLE_SHARED -#AM_PROG_LIBTOOL - -# 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 - -# -O is necessary to get inlining -OPTIMIZE="-O" -printing_b=no -checking_b=yes -optimise_b=no -profile_b=no -CONFIGSUFFIX= -debug_b=yes - - - -AC_LANG_CPLUSPLUS - -AC_ARG_ENABLE(printing, - [ enable-printing turn on debug printing. Default: off], - [printing_b=$enableval]) - -AC_ARG_ENABLE(checking, - [ enable-checking set runtime checks (assert calls). Default: on], - [checking_b=$enableval] ) - -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]) - -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 LilyPond TeX files in. ], - [TEXDIR=$enableval], - [TEXDIR=auto] ) -AC_ARG_ENABLE(mf-dir, - [ enable-mf-dir=DIR set the directory to put LilyPond MetaFont files in. ], - [MFDIR=$enableval], - [MFDIR=auto]) +## Optional tools for building documentation, website, extra fonts. -AC_ARG_ENABLE(config, - [ enable-config=FILE put configure settings in config-FILE.make], - [CONFIGSUFFIX=$enableval]) - +# 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 "$printing_b" = no; then - # ugh - AC_DEFINE(NPRINT) - DEFINES="$DEFINES -DNPRINT" -fi - -if test "$checking_b" = no; then - # ugh - AC_DEFINE(NDEBUG) - DEFINES="$DEFINES -DNDEBUG" -fi if test "$optimise_b" = yes; then - DEFINES="$DEFINES -finline-functions -DSTRING_UTILS_INLINED" - OPTIMIZE="-O2" + DEFINES="$DEFINES -DSTRING_UTILS_INLINED" AC_DEFINE(STRINGS_UTILS_INLINED) fi -if test $profile_b = yes; then - EXTRA_LIBES="-pg" - DEFINES="$DEFINES -pg" -fi - -if test $debug_b = yes; then - DEFINES="$DEFINES -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 - -if test "x$OSTYPE" = "xWindows_NT"; then - LN=cp # hard link does not work under cygnus-nt (yet?) - ZIP="zip -r -9" # -else - LN=ln - ZIP="zip -r -9" -fi - -if test "$CONFIGSUFFIX" != "" ; then - CONFIGFILE=config-$CONFIGSUFFIX -else - CONFIGFILE=config -fi - - - -dnl COMPILEINFO="$HOST $host $TARGET $target" -AUTOGENERATE="This file was automatically generated by configure" -CPPFLAGS=${CPPFLAGS:-""} # we don't want -g -O junk -# CXXFLAGS=${CXXFLAGS:-""} # we don't want -g -O junk -CXXFLAGS="$DEFINES $OPTIMIZE" -LDFLAGS=$EXTRA_LIBES - -AC_PROG_CXX -AC_PROG_RANLIB -AC_PROG_INSTALL -AC_CHECK_PROGS(TAR, tar, error) -AC_CHECK_PROGS(FIND, find, error) - -dnl should check out -print -AC_CHECK_SEARCH_RESULT($FIND, \`find\'. Please use --enable-tex-dir) - -AC_FUNC_MEMCMP -AC_FUNC_VPRINTF -AC_CHECK_FUNCS(memmem snprintf ) AC_DEFINE_UNQUOTED(TOPLEVEL_VERSION, "${FULL_VERSION}") AC_DEFINE_UNQUOTED(FLOWER_VERSION, "${FULL_FLOWER_VERSION}") -# ugh: produces "${prefix}/share/lilypond" -# DIR_DATADIR=$datadir/lilypond -# ugh: produces "NONE/share/lilypond" -# DIR_DATADIR=$prefix/share/lilypond - -DIR_DATADIR=$prefix/share/lilypond -if test x$prefix = xNONE; then - DIR_DATADIR=/usr/local/share/lilypond -fi -AC_DEFINE_UNQUOTED(DIR_DATADIR, "${DIR_DATADIR}") - -absolute_builddir="`pwd`" - -AC_SUBST(CXXFLAGS) -AC_SUBST(CPPFLAGS) -AC_SUBST(LDFLAGS) -AC_SUBST(CXX) -AC_SUBST(ICFLAGS) -AC_SUBST(ILDFLAGS) -AC_SUBST(DEFINES) -AC_SUBST(RANLIB) -AC_SUBST(COMPILEINFO) -AC_SUBST(AUTOGENERATE) -AC_SUBST(BISON) -AC_SUBST(FLEX) -AC_SUBST(LN) -AC_SUBST(PERL) -AC_SUBST(PYTHON) -AC_SUBST(ZIP) -AC_SUBST(TEXPREFIX) -AC_SUBST(TEXDIR) -AC_SUBST(MFDIR) -AC_SUBST(DIR_DATADIR) -AC_SUBST(absolute_builddir) -AC_SUBST(EXTRA_LIBES) -AC_SUBST(CONFIGSUFFIX) -AC_CHECK_PROGS(BISON, bison, error) -AC_CHECK_PROGS(FLEX, flex, error) -AC_CHECK_PROGS(MAKE, make, error) -AC_PATH_PROG(PERL, perl, error) -AC_PATH_PROG(PYTHON, python, error) -AC_CHECK_PROGS(POD2HTML, pod2html, error) -AC_CHECK_PROGS(POD2MAN, pod2man, error) - - -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_JUNK_ARGS( [if test "x$MFDIR" = xauto; then -# AC_MF_SUBDIR(MFDIR) -# fi] -# ) - -AC_CHECK_SEARCH_RESULT($MAKE, GNU make, You should install GNU make) -AC_CHECK_SEARCH_RESULT($BISON, bison, Please install Bison, 1.25 or better) -AC_CHECK_SEARCH_RESULT($PERL, perl, You should install Perl, version 5 or better) -AC_CHECK_SEARCH_RESULT($PYTHON, python, You should install Python) -AC_CHECK_SEARCH_RESULT($FLEX, flex, Please install Flex, 2.5 or better) -AC_CHECK_SEARCH_RESULT($POD2MAN, pod, You should install Perl, version 5 or better) - - -if test $MAKE != "error" ; then - $MAKE -v| grep GNU > /dev/null - if test "$?" = 1 - then - AC_LILY_WARN(Please install *GNU* make) - fi -fi - -if test $BISON != "error"; then - bison_version=`$BISON --version| sed 's/^.*version 1.//g' ` - if test $bison_version -lt 25; then - AC_LILY_WARN(Your bison is too old (1.$bison_version). Please install 1.25) - fi -fi - - -# ugh autoconf -changequote(<<, >>)dnl -if $CXX --version | grep '2\.[78]' > /dev/null || - $CXX --version | grep 'egcs' > /dev/null -changequote([, ])dnl -then - true -else - AC_LILY_WARN(can't find g++ 2.7, 2.8 or egcs) -fi - -AC_CHECK_HEADER(FlexLexer.h, true, - AC_LILY_WARN(can't find flex header. Please install Flex headers correctly)) -touch stamp-h.in +# Gather requirements and generate output. +STEPMAKE_END +test -n "$CONFIGURATION" && mc=" conf=$CONFIGURATION" || mc="" -# first do Foobar/Makefile then Foobar/include/Makefile -AC_OUTPUT($CONFIGFILE.make:config.make.in) +cat <