X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=stepmake%2Faclocal.m4;h=e4a4cb65b29a19d43f20fb9e740f80994d069fa8;hb=d7017035d83599b886ebe35b52bd74bc7f838797;hp=77074a62dca865b94151d27e0416a3fd02a9966e;hpb=a6a4b3fc2009f17a1a48cca0c11bfd3f38645937;p=lilypond.git diff --git a/stepmake/aclocal.m4 b/stepmake/aclocal.m4 index 77074a62dc..e4a4cb65b2 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} @@ -204,8 +207,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 +223,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 @@ -265,12 +273,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 +325,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 +409,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 @@ -421,7 +454,7 @@ AC_DEFUN(STEPMAKE_FLEXLEXER, [ # 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,9 +467,9 @@ 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++) @@ -956,7 +989,8 @@ AC_DEFUN(STEPMAKE_PYTHON_DEVEL, [ 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 @@ -985,16 +1019,16 @@ 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++)