X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=configure.in;h=cedc9459bc067be56afb268a074f474194adafc7;hb=d7495f035d2eef8b1a1f719dc3c6aa32098135f7;hp=a971abbae7edf93832efb125821e2a568a1730f1;hpb=1bdf3db27451a0873b2c97545f0beab2f5cce06a;p=lilypond.git diff --git a/configure.in b/configure.in index a971abbae7..cedc9459bc 100644 --- a/configure.in +++ b/configure.in @@ -1,248 +1,116 @@ -dnl -*-shell-script-*- -dnl Process this file with autoconf to produce a configure script. - -AC_INIT(flower/choleski.cc) - - -if test x$srcdir != x.; then - echo Please look in the INSTALL instructions for - echo directions for multi-architecture building - - AC_LILY_WARN(This package does not support --srcdir!) -fi - -# if given here, these vars are initted at the checking point. -if test x$host = xNONE; then - OUTDIR_NAME=${OUTDIR_NAME-"out"} -else - OUTDIR_NAME=${OUTDIR_NAME-"out-$host"} -fi - -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, - [ enable-checking set runtime checks (assert calls). Default: on], - [checking_b=$enableval] ) - -AC_ARG_ENABLE(debugging, - [ enable-debugging set debug info. Default: on], - [debug_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(mingw-prefix, - [ mingw-prefix=DIR set the mingw32 directory (standalone windows32 exes)], - [MINGWPREFIX=$enableval], - [MINGWPREFIX=no]) - -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]) - -AC_ARG_ENABLE(out-dir, - [ out-dir set the directory for machine generated files. Default out or out-HOST], - [OUTDIR_NAME=$enableval] - []) - -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" -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 $optimise_b = yes; then - DEFINES="$DEFINES -finline-functions -O2 -DSTRING_UTILS_INLINED" +dnl configure.in -*-shell-script-*- +dnl Process this file with autoconf to produce a configure script. + +# Bootstrap the init proces. +AC_INIT + +# Bootstrap StepMake configure +# For user package: +AC_CONFIG_AUX_DIR([stepmake/bin]) +# For stepmake package: +# AC_CONFIG_AUX_DIR(bin) + + +STEPMAKE_INIT + + + +# List a file that identifies your package. +AC_CONFIG_SRCDIR([lily/main.cc]) + +# Move to aclocal.m4? +AC_CONFIG_HEADER([$CONFIGFILE.hh:config.hh.in]) + +# Uncomment the configuration options your package needs. + + +gui_b=no +AC_ARG_ENABLE(gui, + [ --enable-gui compile with experimental GNOME output module. Default: off], + [gui_b=$enableval]) + +# must come before any header checks +STEPMAKE_COMPILE + +STEPMAKE_PYTHON(REQUIRED,2.1) +STEPMAKE_GCC(REQUIRED, 2.8) +STEPMAKE_CXX(REQUIRED) +STEPMAKE_GXX(REQUIRED, 3.0.5) +STEPMAKE_CXXTEMPLATE +STEPMAKE_LIB(REQUIRED) +# Do not use bison 1.50 and 1.75. +STEPMAKE_BISON(REQUIRED, 1.25) +STEPMAKE_FLEX(REQUIRED) +STEPMAKE_FLEXLEXER(REQUIRED) +AC_LANG_C +STEPMAKE_LOCALE +STEPMAKE_GETTEXT +STEPMAKE_MSGFMT(REQUIRED) +STEPMAKE_TEXMF +STEPMAKE_TEXMF_DIRS +STEPMAKE_GUILE_DEVEL(REQUIRED, 1.6) +STEPMAKE_KPATHSEA +STEPMAKE_MAKEINFO(REQUIRED) +STEPMAKE_PYTHON_DEVEL(REQUIRED) + + +AC_CHECK_HEADERS([assert.h sys/stat.h]) +AC_LANG_PUSH(C++) +AC_CHECK_HEADERS([sstream]) +AC_LANG_POP(C++) +AC_HEADER_STAT +AC_FUNC_MEMCMP +AC_FUNC_VPRINTF +AC_CHECK_FUNCS([gettext isinf memmem snprintf vsnprintf gettext]) + + +# This is developer only anyway, help pkgconfig a bit +export PKG_CONFIG_PATH +PKG_CONFIG_PATH=/usr/lib/pkgconfig:$PKG_CONFIG_PATH +PKG_CONFIG_PATH=/opt/gnome/lib/pkgconfig:$PKG_CONFIG_PATH +PKG_CONFIG_PATH=$HOME/usr/pkg/gnome/lib/pkgconfig:$PKG_CONFIG_PATH +PKG_CONFIG_PATH=$HOME/usr/pkg/pango/lib/pkgconfig:$PKG_CONFIG_PATH + +#STEPMAKE_FREETYPE2 +if test "$gui_b" = "yes"; then + STEPMAKE_GTK2 + STEPMAKE_PANGO 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 +## Optional tools for building documentation, website, extra fonts. -dnl COMPILEINFO="$HOST $host $TARGET $target" -AUTOHEADER="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 - -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_SUBST(OUTDIR_NAME) -AC_SUBST(CXXFLAGS) -AC_SUBST(CPPFLAGS) -AC_SUBST(CXX) -AC_SUBST(ICFLAGS) -AC_SUBST(ILDFLAGS) -AC_SUBST(DEFINES) -AC_SUBST(COMPILEINFO) -AC_SUBST(AUTOHEADER) -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(EXTRA_LIBES) - -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(PODMAN, 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 +# guile executable for some scripts +STEPMAKE_GUILE(OPTIONAL) +# perl for help2man. +STEPMAKE_PERL(OPTIONAL) +# mftrace for generating pfa's, pfb's +STEPMAKE_PROGS(MFTRACE, mftrace, OPTIONAL, 1.0.27) +# new makeinfo for multi-page website docs +STEPMAKE_PROGS(MAKEINFO, makeinfo, OPTIONAL, 4.6) +AC_SUBST(MAKEINFO_VERSION) -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($PODMAN, pod, You should install Perl, version 5 or better) -AC_CHECK_SEARCH_RESULT( $FLEX, flex, Please install Flex, 2.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 -if $CXX --version | grep '2\.7' > /dev/null -then - true -else - AC_LILY_WARN(can't find g++ 2.7) +if test "$optimise_b" = yes; then + DEFINES="$DEFINES -DSTRING_UTILS_INLINED" + AC_DEFINE(STRINGS_UTILS_INLINED) fi -AC_CHECK_HEADER(FlexLexer.h, true, - AC_LILY_WARN(can't find flex header. Please install Flex headers correctly)) -for a in `find . -type d -and -not -name 'out*' -print`; do - if test ! -d $a/$OUTDIR_NAME; then - mkdir $a/$OUTDIR_NAME - fi -done +AC_DEFINE_UNQUOTED(TOPLEVEL_VERSION, "${FULL_VERSION}") +AC_DEFINE_UNQUOTED(FLOWER_VERSION, "${FULL_FLOWER_VERSION}") -AC_CONFIG_SUBDIRS(flower) +# Gather requirements and generate output. +STEPMAKE_END - -AC_OUTPUT(make/$OUTDIR_NAME/Configure_variables.make:make/Configure_variables.make.in - Makefile:make/Toplevel.make.in) -touch make/$OUTDIR_NAME/Site.make +test -n "$CONFIGURATION" && mc=" conf=$CONFIGURATION" || mc="" -cat << END -For making everything, do: - - make # GNU make - -or if you used --outdir=blabla - - make OUTDIR_NAME=blabla - -If you want to make site-wide extensions to the makefiles, please use +cat <