Re: [PATCH 366] Libtoolize now advises AC_CONFIG_MACRO_DIR use where appropriate.
* Gary V. Vaughan wrote on Thu, Apr 24, 2008 at 05:34:39AM CEST: On 23 Apr 2008, at 17:26, Ralf Wildenhues wrote: It seems that one of your patches causes this test failure: --- expout 2008-04-23 22:41:22.0 +0200 +++ /home/ralf/libtool/write/build/tests/testsuite.dir/at-stdout 2008-04-23 22:41:22.0 +0200 @@ -1,3 +1,6 @@ +libtoolize: You should add the contents of the following files to `aclocal.m4': +libtoolize: `/home/ralf/libtool/write/build/../libtool/libltdl/m4/ libtool.m4' +libtoolize: `/home/ralf/libtool/write/build/../libtool/libltdl/m4/ lt~obsolete.m4' libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac and libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree. libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am. 10. libtoolize.at:651: 10. verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR (libtoolize.at:651): FAILED (libtoolize.at:759) Can you try again with a fresh checkout? I can't reproduce here :-( Still fails. Here's a hint: when you run aclocal in libtoolize.at:692, my aclocal.m4 file contains -- snip -- # This should need upgrading: # serial 25 LT_INIT AC_DEFUN([LT_INIT], [blah]) # This is newer than the upgrade version: # serial 9 ltoptions.m4 # This is older than the upgrade version: # serial 1 ltversion.m4 -- snip -- both before and after running aclocal. How is that sed script that runs later going to change serials for libtool.m4 if aclocal.m4 doesn't contain it at all? Maybe a difference in our installed automake and/or libtool versions? I have 1.10.1 and 2.2.3a master HEAD respectively. Ahh. When I use master automake instead of 1.10.1, I can reproduce the succeeding of the test. But say, why are you even running aclocal when aclocal.m4 is hand generated? Still doesn't explain though how you see this with 1.10.1. Cheers, Ralf
Re: [PATCH 366] Libtoolize now advises AC_CONFIG_MACRO_DIR use where appropriate.
Hi Gary, * Gary V. Vaughan wrote on Wed, Apr 23, 2008 at 12:04:02AM CEST: On 22 Apr 2008, at 15:27, Ralf Wildenhues wrote: I'm wondering a bit whether we should recommend putting ACLOCAL_AMFLAGS = -I MACRO-DIR in the toplevel Makefile.am. Agreed. I'll add that before I push. It seems that one of your patches causes this test failure: Cheers, Ralf # -*- compilation -*- 10. libtoolize.at:651: testing ... ../../libtool/tests/libtoolize.at:685: /home/ralf/libtool/write/build/libtoolize --copy ../../libtool/tests/libtoolize.at:692: $ACLOCAL stderr: stdout: ../../libtool/tests/libtoolize.at:759: /home/ralf/libtool/write/build/libtoolize --copy --- expout 2008-04-23 22:41:22.0 +0200 +++ /home/ralf/libtool/write/build/tests/testsuite.dir/at-stdout 2008-04-23 22:41:22.0 +0200 @@ -1,3 +1,6 @@ +libtoolize: You should add the contents of the following files to `aclocal.m4': +libtoolize: `/home/ralf/libtool/write/build/../libtool/libltdl/m4/libtool.m4' +libtoolize: `/home/ralf/libtool/write/build/../libtool/libltdl/m4/lt~obsolete.m4' libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac and libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree. libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am. 10. libtoolize.at:651: 10. verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR (libtoolize.at:651): FAILED (libtoolize.at:759)
Re: [PATCH 366] Libtoolize now advises AC_CONFIG_MACRO_DIR use where appropriate.
Hi Ralf, On 23 Apr 2008, at 17:26, Ralf Wildenhues wrote: * Gary V. Vaughan wrote on Wed, Apr 23, 2008 at 12:04:02AM CEST: On 22 Apr 2008, at 15:27, Ralf Wildenhues wrote: I'm wondering a bit whether we should recommend putting ACLOCAL_AMFLAGS = -I MACRO-DIR in the toplevel Makefile.am. Agreed. I'll add that before I push. It seems that one of your patches causes this test failure: Cheers, Ralf # -*- compilation -*- 10. libtoolize.at:651: testing ... ../../libtool/tests/libtoolize.at:685: /home/ralf/libtool/write/ build/libtoolize --copy ../../libtool/tests/libtoolize.at:692: $ACLOCAL stderr: stdout: ../../libtool/tests/libtoolize.at:759: /home/ralf/libtool/write/ build/libtoolize --copy --- expout 2008-04-23 22:41:22.0 +0200 +++ /home/ralf/libtool/write/build/tests/testsuite.dir/at-stdout 2008-04-23 22:41:22.0 +0200 @@ -1,3 +1,6 @@ +libtoolize: You should add the contents of the following files to `aclocal.m4': +libtoolize: `/home/ralf/libtool/write/build/../libtool/libltdl/m4/ libtool.m4' +libtoolize: `/home/ralf/libtool/write/build/../libtool/libltdl/m4/ lt~obsolete.m4' libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac and libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree. libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am. 10. libtoolize.at:651: 10. verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR (libtoolize.at:651): FAILED (libtoolize.at:759) Can you try again with a fresh checkout? I can't reproduce here :-( ] history 1998 git clone [EMAIL PROTECTED]:/srv/git/libtool.git 1999 cd libtool 2000 ./bootstrap 2001 mkdir +build 2002 cd +build 2003 ../configure 2004 make ] make check-local ... Libtoolize operation. 1: libtoolize macro installation ok 2: libtoolize macro directory mismatch error ok 3: libtoolize macro serial update ok 4: libtoolize config files serial update ok 5: diagnose missing LT_CONFIG_LTDL_DIR ok 6: copy ltdl.m4 with shared macro directoryok 7: correctly parse LTDL_INIT from configure.ac ok 8: diagnose missing LTDL_INIT invocation ok 9: upgrading verbatim style aclocal.m4 ok 10: verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR ok 11: nonrecursive ltdl with AC_CONFIG_MACRO_DIR ok 12: subproject ltdl with non-shared directories ok ... ## - ## ## Test results. ## ## - ## 65 tests behaved as expected. 6 tests were skipped. [[no fortran or java on this host]] Maybe a difference in our installed automake and/or libtool versions? I have 1.10.1 and 2.2.3a master HEAD respectively. Cheers, Gary -- ())_. Email me: [EMAIL PROTECTED] ( '/ Read my blog: http://blog.azazil.net / )= ...and my book: http://sources.redhat.com/autobook `(_~)_ PGP.sig Description: This is a digitally signed message part
[PATCH 366] Libtoolize now advises AC_CONFIG_MACRO_DIR use where appropriate.
* libtoolize.at (func_check_macros): Always advise use of AC_CONFIG_MACRO_DIR when not able to copy libtool macros into the project tree. * tests/libtoolize.at: Update expected test output. * NEWS: Updated. --- Okay to apply? ChangeLog |7 +++ NEWS|2 ++ libtoolize.m4sh | 17 - tests/libtoolize.at | 15 --- 4 files changed, 29 insertions(+), 12 deletions(-) diff --git a/ChangeLog b/ChangeLog index 136f2b4..9f815db 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,12 @@ 2008-04-21 Gary V. Vaughan [EMAIL PROTECTED] + Libtoolize now advises AC_CONFIG_MACRO_DIR use where appropriate. + * libtoolize.at (func_check_macros): Always advise use of + AC_CONFIG_MACRO_DIR when not able to copy libtool macros into + the project tree. + * tests/libtoolize.at: Update expected test output. + * NEWS: Updated. + Only complain that files are up-to-date with --force. As a side effect, this also means that when `aclocal' copies the libtool macros into `aclocal.m4' libtoolize complains only about diff --git a/NEWS b/NEWS index df43da7..8e675c0 100644 --- a/NEWS +++ b/NEWS @@ -18,6 +18,8 @@ New in 2.2.4: 2008-??-??: CVS version 2.2.3a, Libtool team: (i.e. AC_CONFIG_MACRO_DIR is not being used), libtoolize no longer reports that all macros need to be added to `aclocal.m4', and diagnoses only the macro files that are missing or not up-to-date. + - libtoolize now advises use of AC_CONFIG_MACRO_DIR to keep matching +libtool macros in-tree where appropriate. New in 2.2.2: 2008-04-01: CVS version 2.2.1a, Libtool team: diff --git a/libtoolize.m4sh b/libtoolize.m4sh index f83353e..2a4cb1a 100644 --- a/libtoolize.m4sh +++ b/libtoolize.m4sh @@ -1325,16 +1325,15 @@ func_check_macros () ac_config_macro_dir_advised=false # Suggest modern idioms for storing autoconf macros: -if test -z $ac_macrodir$ltdldir; then - if test -z $macrodir || test x$macrodir = x.; then -func_echo Consider adding \`AC_CONFIG_MACRO_DIR([m4])' to $configure_ac and -func_echo rerunning libtoolize, to keep the correct libtool macros in-tree. - elif test -z $ac_macrodir$ltdldir; then -func_echo Consider adding \`AC_CONFIG_MACRO_DIR([$macrodir])' to $configure_ac, -func_echo and rerunning libtoolize and aclocal. - fi +if test -z $macrodir || test x$macrodir = x.; then + func_echo Consider adding \`AC_CONFIG_MACRO_DIR([m4])' to $configure_ac and + func_echo rerunning libtoolize, to keep the correct libtool macros in-tree. +elif test -z $ac_macrodir$ltdldir; then + func_echo Consider adding \`AC_CONFIG_MACRO_DIR([$macrodir])' to $configure_ac, + func_echo and rerunning libtoolize and aclocal. +fi -elif test -z $macrodir; then +if test -n $ac_macrodir$ltdldir test -z $macrodir; then my_ac_config_macro_srcdir=$aclocaldir if $opt_ltdl test $macrodir != $subproject_macrodir; then my_ac_config_macro_srcdir=$subproject_macrodir diff --git a/tests/libtoolize.at b/tests/libtoolize.at index 4f67386..3ed3290 100644 --- a/tests/libtoolize.at +++ b/tests/libtoolize.at @@ -505,6 +505,8 @@ AC_OUTPUT AT_DATA([expout], [[libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `build-aux'. libtoolize: copying file `build-aux/ltmain.sh' +libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac and +libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree. libtoolize: You should add the contents of the following files to `aclocal.m4': libtoolize: `/usr/local/share/aclocal/libtool.m4' libtoolize: `/usr/local/share/aclocal/ltoptions.m4' @@ -634,6 +636,8 @@ AC_DEFUN([LT_INIT], AT_DATA([expout], [[libtoolize: putting auxiliary files in `.'. libtoolize: copying file `./ltmain.sh' +libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac and +libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree. libtoolize: You should add the contents of the following files to `aclocal.m4': libtoolize: `/usr/local/share/aclocal/libtool.m4' libtoolize: `/usr/local/share/aclocal/ltversion.m4' @@ -648,8 +652,6 @@ LT_AT_CHECK_LIBTOOLIZE([--copy], 0, expout) ## Upgrading an aclocal maintained aclocal.m4 without AC_CONFIG_MACRO_DIR. ## ## --- ## -rm -f aclocal.m4 - LT_AT_ACLOCAL() ## The following code is adapted (and simplified) from libtoolize.m4sh @@ -711,7 +713,12 @@ $SED -e 's,^#.*serial.*ltoptions.m4$,# serial 9 ltoptions.m4,' \ aclocal.m4 aclocal.m4t mv -f aclocal.m4t aclocal.m4 -LT_AT_CHECK_LIBTOOLIZE([--copy], 0) +AT_DATA([expout], +[[libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac and +libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree. +]]) + +LT_AT_CHECK_LIBTOOLIZE([--copy], 0,
Re: [PATCH 366] Libtoolize now advises AC_CONFIG_MACRO_DIR use where appropriate.
Hi Gary, * Gary V. Vaughan wrote on Tue, Apr 22, 2008 at 08:51:39AM CEST: * libtoolize.at (func_check_macros): Always advise use of AC_CONFIG_MACRO_DIR when not able to copy libtool macros into the project tree. * tests/libtoolize.at: Update expected test output. * NEWS: Updated. --- Okay to apply? Yes this is OK. Thank you. I'm wondering a bit whether we should recommend putting ACLOCAL_AMFLAGS = -I MACRO-DIR in the toplevel Makefile.am. Cheers, Ralf
Re: [PATCH 366] Libtoolize now advises AC_CONFIG_MACRO_DIR use where appropriate.
* Ralf Wildenhues wrote on Tue, Apr 22, 2008 at 07:49:25PM CEST: * Gary V. Vaughan wrote on Tue, Apr 22, 2008 at 08:51:39AM CEST: * libtoolize.at (func_check_macros): Always advise use of AC_CONFIG_MACRO_DIR when not able to copy libtool macros into the project tree. * tests/libtoolize.at: Update expected test output. * NEWS: Updated. --- Okay to apply? Yes this is OK. Thank you. I'm wondering a bit whether we should recommend putting ACLOCAL_AMFLAGS = -I MACRO-DIR in the toplevel Makefile.am. I'm further wondering whether you may want to output the AC_CONFIG_MACRO_DIR recommendation only in verbose mode. Rationale: people may consciously choose not to do so for some reason, and be annoyed by being told to do otherwise. There have been prior such bug reports, so there are users who care. Cheers, Ralf
Re: [PATCH 366] Libtoolize now advises AC_CONFIG_MACRO_DIR use where appropriate.
Hallo Ralf, On 22 Apr 2008, at 15:27, Ralf Wildenhues wrote: * Ralf Wildenhues wrote on Tue, Apr 22, 2008 at 07:49:25PM CEST: * Gary V. Vaughan wrote on Tue, Apr 22, 2008 at 08:51:39AM CEST: * libtoolize.at (func_check_macros): Always advise use of AC_CONFIG_MACRO_DIR when not able to copy libtool macros into the project tree. * tests/libtoolize.at: Update expected test output. * NEWS: Updated. --- Okay to apply? Yes this is OK. Thank you. Thanks for the review! I'm wondering a bit whether we should recommend putting ACLOCAL_AMFLAGS = -I MACRO-DIR in the toplevel Makefile.am. Agreed. I'll add that before I push. I'm further wondering whether you may want to output the AC_CONFIG_MACRO_DIR recommendation only in verbose mode. Rationale: people may consciously choose not to do so for some reason, and be annoyed by being told to do otherwise. There have been prior such bug reports, so there are users who care. I'd rather wait to see if we get complaints before worrying about that too much... especially if we can convert more people to modern idioms in the mean time. Cheers, Gary -- ())_. Email me: [EMAIL PROTECTED] ( '/ Read my blog: http://blog.azazil.net / )= ...and my book: http://sources.redhat.com/autobook `(_~)_ PGP.sig Description: This is a digitally signed message part