X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=stepmake%2Faclocal.m4;h=c06224717b002f795b4ef184a37f48931c1b15f9;hb=c58b9bd118958423656e674c25d940cdec71f58a;hp=9e386f392261244fb2fabc34c9ca44e76a170fb3;hpb=e344ae579fa1d81fc6c6f3049494697872fd39f9;p=lilypond.git diff --git a/stepmake/aclocal.m4 b/stepmake/aclocal.m4 index 9e386f3922..c06224717b 100644 --- a/stepmake/aclocal.m4 +++ b/stepmake/aclocal.m4 @@ -32,9 +32,13 @@ AC_DEFUN(STEPMAKE_GET_VERSION, [ ## for compatibility reasons. ## grab the first version number in --version output. - eval _ver=\"\`("$1" --version || "$1" -V) 2>&1 | grep '\(^\| \)[0-9][0-9]*\.[0-9]' \ - | head -n 1 \ - | tr ' ' '\n' | sed 's/\([0-9][0-9]*\.[0-9][0-9.]*\).*/\1/g' | grep '\(^\| \)[0-9][0-9]*\.[0-9]' | head -n 1\`\" + eval _ver=\"\`("$1" --version || "$1" -V) 2>&1 | + grep -E '(^| )[0-9][0-9]*\.[0-9]' | + head -n 1 | + tr ' ' '\n' | + sed 's/\([0-9][0-9]*\.[0-9][0-9.]*\).*/\1/g' | + grep -E '(^| )[0-9][0-9]*\.[0-9]' | + head -n 1\`\" if test -z "$_ver"; then ## If empty, try date [fontforge] @@ -163,8 +167,7 @@ AC_DEFUN(STEPMAKE_BISON, [ fi ]) - -AC_DEFUN(STEPMAKE_COMPILE, [ +AC_DEFUN(STEPMAKE_COMPILE_BEFORE, [ # -O is necessary to get inlining CFLAGS=${CFLAGS-""} CXXFLAGS=${CXXFLAGS-$CFLAGS} @@ -175,19 +178,23 @@ AC_DEFUN(STEPMAKE_COMPILE, [ pipe_b=yes AC_ARG_ENABLE(debugging, - [ --enable-debugging compile with debugging info. Default: on], + [AS_HELP_STRING([--enable-debugging], + [compile with debugging info. Default: on])], [debug_b=$enableval]) AC_ARG_ENABLE(optimising, - [ --enable-optimising compile with optimising. Default: on], + [AS_HELP_STRING([--enable-optimising], + [compile with optimising. Default: on])], [optimise_b=$enableval]) AC_ARG_ENABLE(profiling, - [ --enable-profiling compile with gprof support. Default: off], + [AS_HELP_STRING([--enable-profiling], + [compile with gprof support. Default: off])], [profile_b=$enableval]) AC_ARG_ENABLE(pipe, - [ --enable-pipe compile with -pipe. Default: on], + [AS_HELP_STRING([--enable-pipe], + [compile with -pipe. Default: on])], [pipe_b=$enableval]) if test "$optimise_b" = yes; then @@ -204,8 +211,13 @@ AC_DEFUN(STEPMAKE_COMPILE, [ if test $debug_b = yes; then OPTIMIZE="$OPTIMIZE -g" fi - - AC_PROG_CC +]) + +AC_DEFUN(STEPMAKE_COMPILE, [ + + AC_REQUIRE([STEPMAKE_COMPILE_BEFORE]) + AC_REQUIRE([AC_PROG_CC]) + STEPMAKE_OPTIONAL_REQUIRED(CC, cc, $1) LD='$(CC)' AC_SUBST(LD) @@ -215,12 +227,12 @@ AC_DEFUN(STEPMAKE_COMPILE, [ save_cflags="$CFLAGS" CFLAGS=" -pipe $CFLAGS"; AC_CACHE_CHECK([whether compiler understands -pipe], - [stepmake_cflags_pipe], + [stepmake_cv_cflags_pipe], AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[/* -pipe test */]])], - [stepmake_cflags_pipe=yes], - [stepmake_cflags_pipe=no])) + [stepmake_cv_cflags_pipe=yes], + [stepmake_cv_cflags_pipe=no])) CFLAGS=$save_cflags - if test $stepmake_cflags_pipe = yes; then + if test $stepmake_cv_cflags_pipe = yes; then OPTIMIZE="$OPTIMIZE -pipe" fi fi @@ -250,7 +262,6 @@ AC_DEFUN(STEPMAKE_COMPILE, [ ]) AC_DEFUN(STEPMAKE_CXX, [ - AC_LANG([C++]) AC_PROG_CXX STEPMAKE_OPTIONAL_REQUIRED(CXX, c++, $1) @@ -265,12 +276,12 @@ AC_DEFUN(STEPMAKE_CXX, [ AC_DEFUN(STEPMAKE_CXXTEMPLATE, [ AC_CACHE_CHECK([whether explicit instantiation is needed], - lily_cv_need_explicit_instantiation, + stepmake_cv_need_explicit_instantiation, AC_LINK_IFELSE([AC_LANG_PROGRAM([[ template struct foo { static int baz; }; template int foo::baz = 1; - ]], [[ return foo::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 + ]], [[ return foo::baz; ]])],[stepmake_cv_need_explicit_instantiation=no],[stepmake_cv_need_explicit_instantiation=yes])) + if test x"$stepmake_cv_need_explicit_instantiation"x = x"yes"x; then AC_DEFINE(NEED_EXPLICIT_INSTANTIATION) fi ]) @@ -317,7 +328,31 @@ AC_DEFUN(STEPMAKE_LIBDIR, [ ]) +AC_DEFUN(STEPMAKE_PREFIX_EXPAND_FIXUP, [ + # undo expanding of explicit --infodir=/usr/share + # to ease install-time override with prefix=... + strip=`echo $includedir | eval sed s@^$prefix@@` + if test "$includedir" = "`eval echo $prefix$strip`"; then + includedir='${prefix}'$strip'' + fi + strip=`echo $libdir | eval sed s@^$exec_prefix@@` + if test "$libdir" = "`eval echo $exec_prefix$strip`"; then + libdir='${exec_prefix}'$strip'' + fi + strip=`echo $infodir | eval sed s@^$datarootdir@@` + if test "$infodir" = "`eval echo $datarootdir$strip`"; then + infodir='${datarootdir}'$strip'' + fi + strip=`echo $mandir | eval sed s@^$datarootdir@@` + if test "$mandir" = "`eval echo $datarootdir$strip`"; then + mandir='${datarootdir}'$strip'' + fi +]) + + AC_DEFUN(STEPMAKE_END, [ + STEPMAKE_PREFIX_EXPAND_FIXUP + AC_SUBST(OPTIONAL) AC_SUBST(REQUIRED) @@ -377,6 +412,7 @@ EOF print 'depth=' + ('../' * ( $d-1 ) ) print 'include \$(depth)/config\$(if \$(conf),-\$(conf),).make' print 'include \$(configure-srcdir)/$mf' +print 'MODULE_INCLUDES += \$(src-dir)/\$(outbase)' EOF done for mf in `cd $srcdir ; find -maxdepth $d -mindepth $d -name '*.make' | grep -v config.make `; do @@ -390,7 +426,7 @@ EOF cat < GNUmakefile -depth = ./ +depth = . include config\$(if \$(conf),-\$(conf),).make include \$(configure-srcdir)/GNUmakefile.in EOF @@ -419,9 +455,8 @@ AC_DEFUN(STEPMAKE_FLEXLEXER, [ fi # check for yyFlexLexer.yy_current_buffer, # in 2.5.4 <= flex < 2.5.29 - AC_LANG_PUSH(C++) AC_CACHE_CHECK([for yyFlexLexer.yy_current_buffer], - [stepmake_flexlexer_yy_current_buffer], + [stepmake_cv_flexlexer_yy_current_buffer], AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ using namespace std; #include @@ -434,12 +469,11 @@ class yy_flex_lexer: public yyFlexLexer } }; ]])], - [stepmake_flexlexer_yy_current_buffer=yes], - [stepmake_flexlexer_yy_current_buffer=no])) - if test $stepmake_flexlexer_yy_current_buffer = yes; then + [stepmake_cv_flexlexer_yy_current_buffer=yes], + [stepmake_cv_flexlexer_yy_current_buffer=no])) + if test $stepmake_cv_flexlexer_yy_current_buffer = yes; then AC_DEFINE(HAVE_FLEXLEXER_YY_CURRENT_BUFFER, 1, [Define to 1 if yyFlexLexer has yy_current_buffer.]) fi - AC_LANG_POP(C++) ]) @@ -478,24 +512,8 @@ AC_DEFUN(STEPMAKE_GETTEXT, [ AC_SUBST(localedir) AC_DEFINE_UNQUOTED(LOCALEDIR, ["${LOCALEDIR}"]) - # ouch. autoconf <= 2.57's gettext check fails for - # g++ >= 3.3 (with -std=gnu++98, the default). - # While the check is OK for g++ -std=c++98, - # LilyPond needs GNU g++, so who is to blame here? - # Use a workaround until this is resolved: - # for g++ >= 3.3, select C language. - GCC_UNSUPPORTED= - STEPMAKE_CHECK_VERSION_UNSUPPORTED(CXX, GCC_UNSUPPORTED, 3.3) - if test -n "$GCC_UNSUPPORTED"; then - AC_MSG_WARN([autoconf <= 2.59 with g++ >= 3.3 gettext test broken.]) - AC_MSG_WARN([Trying gcc, cross fingers.]) - AC_LANG_PUSH(C) - fi AC_CHECK_LIB(intl, gettext) AC_CHECK_FUNCS(gettext) - if test -n "$GCC_UNSUPPORTED"; then - AC_LANG_POP(C) - fi ]) @@ -610,7 +628,6 @@ AC_DEFUN(STEPMAKE_GXX, [ AC_DEFUN(STEPMAKE_INIT, [ - AC_PREREQ(2.50) . $srcdir/VERSION FULL_VERSION=$MAJOR_VERSION.$MINOR_VERSION.$PATCH_LEVEL MICRO_VERSION=$PATCH_LEVEL @@ -732,8 +749,9 @@ AC_DEFUN(STEPMAKE_INIT, [ CONFIGSUFFIX= AC_ARG_ENABLE(config, - [ --enable-config=CONF put settings in config-CONF.make and config-CONF.h; - do `make conf=CONF' to get output in ./out-CONF], + [AS_HELP_STRING([--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]) ##'`# @@ -824,12 +842,14 @@ AC_DEFUN(STEPMAKE_LOCALE, [ # with/enable ?? AC_ARG_WITH(localedir, - [ --with-localedir=DIR location of locales. Default: PREFIX/share/locale ], + [AS_HELP_STRING([--with-localedir=DIR], + [location of locales. 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], + [AS_HELP_STRING([--with-lang=LANG], + [use LANG as language to emit messages])], language=$with_lang, language=English) @@ -933,30 +953,32 @@ AC_DEFUN(STEPMAKE_PYTHON, [ AC_DEFUN(STEPMAKE_PYTHON_DEVEL, [ AC_ARG_WITH(python-include, - [ --with-python-include=DIR - location of the python include dir],[ - if test "$withval" = "yes" -o "$withval" = "no"; then - AC_MSG_WARN(Usage: --with-python-include=includedir) - else - PYTHON_CFLAGS="-I${withval}" - fi - ]) + [AS_HELP_STRING([--with-python-include=DIR], + [location of the python include dir])],[ + if test "$withval" = "yes" -o "$withval" = "no"; then + AC_MSG_WARN(Usage: --with-python-include=includedir) + else + PYTHON_CFLAGS="-I${withval}" + fi + ]) AC_ARG_WITH(python-lib, - [ --with-python-lib=NAME name of the python lib],[ - if test "$withval" = "yes" -o "$withval" = "no"; then - AC_MSG_WARN(Usage: --with-python-lib=name) - else - LDFLAGS="$LDFLAGS -l${withval}" - fi - ]) + [AS_HELP_STRING([--with-python-lib=NAME], + [name of the python lib])],[ + if test "$withval" = "yes" -o "$withval" = "no"; then + AC_MSG_WARN(Usage: --with-python-lib=name) + else + LDFLAGS="$LDFLAGS -l${withval}" + fi + ]) AC_CHECK_PROGS(PYTHON_CONFIG, python-config, no) if test -z "$PYTHON_CFLAGS" -a "$PYTHON_CONFIG" != "no"; then # Clean out junk: http://bugs.python.org/issue3290 # Python headers may need some -f* flags, leave them in. - PYTHON_CFLAGS=`$PYTHON_CONFIG --cflags | sed -e 's/ -\(W\|D\|O\|m\)\(\w\|-\|=\)\+//g'` + # We want the sed commands to look like 's/-[WDOm][[:alnum:][:punct:]][[:alnum:][:punct:]]*//g' and 's/-arch [^[:space:]]*//g', but automake eats brackets. + PYTHON_CFLAGS=`$PYTHON_CONFIG --cflags | sed -e 's/-[[WDOm]][[[:alnum:][:punct:]]][[[:alnum:][:punct:]]]*//g' | sed -e 's/-arch @<:@^@<:@:space:@:>@@:>@*//g'` PYTHON_LDFLAGS=`$PYTHON_CONFIG --ldflags` fi @@ -983,21 +1005,19 @@ AC_DEFUN(STEPMAKE_PYTHON_DEVEL, [ AC_DEFUN(STEPMAKE_STL_DATA_METHOD, [ - AC_LANG_PUSH(C++) AC_CACHE_CHECK([for stl.data () method], - [stepmake_stl_data_method], + [stepmake_cv_stl_data_method], AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ #include using namespace std; vector v; void *p = v.data (); ]])], - [stepmake_stl_data_method=yes], - [stepmake_stl_data_method=no])) - if test $stepmake_stl_data_method = yes; then + [stepmake_cv_stl_data_method=yes], + [stepmake_cv_stl_data_method=no])) + if test $stepmake_cv_stl_data_method = yes; then AC_DEFINE(HAVE_STL_DATA_METHOD, 1, [define if stl classes have data () method]) fi - AC_LANG_POP(C++) ]) @@ -1009,7 +1029,6 @@ AC_DEFUN(STEPMAKE_TEXMF_DIRS, [ AC_DEFUN(STEPMAKE_TEXMF, [ STEPMAKE_PROGS(METAFONT, mf-nowin mf mfw mfont, $1) STEPMAKE_PROGS(METAPOST, mpost, $1) - # STEPMAKE_PROGS(INIMETAFONT, inimf inimfont "$METAFONT -ini", $1) AC_MSG_CHECKING(for working metafont mode) modelist='ljfour lj4 lj3 lj2 ljet laserjet' @@ -1106,28 +1125,6 @@ AC_DEFUN(STEPMAKE_FREETYPE2, [ fi ]) -AC_DEFUN(STEPMAKE_GTK2, [ - PKG_CHECK_MODULES(GTK2, $1 >= $3, have_gtk2=yes, true) - if test "$have_gtk2" = yes ; then - AC_DEFINE(HAVE_GTK2) - # Do not pollute user-CPPFLAGS with configure-CPPFLAGS - save_CPPFLAGS="$CPPFLAGS" - save_LIBS="$LIBS" - CPPFLAGS="$GTK2_CFLAGS $CPPFLAGS" - LIBS="$GTK2_LIBS $LIBS" - AC_SUBST(GTK2_CFLAGS) - AC_SUBST(GTK2_LIBS) - CPPFLAGS="$save_CPPFLAGS" - LIBS="$save_LIBS" - else - # UGR - # r="lib$1-dev or $1-devel" - r="libgtk2.0-dev or gtk2-devel" - ver="`pkg-config --modversion $1`" - STEPMAKE_ADD_ENTRY($2, ["$r >= $3 (installed: $ver)"]) - fi -]) - AC_DEFUN(STEPMAKE_PANGO, [ PKG_CHECK_MODULES(PANGO, $1 >= $3, have_pango16=yes, true) if test "$have_pango16" = yes ; then