Re: [PATCH 366] Libtoolize now advises AC_CONFIG_MACRO_DIR use where appropriate.

2008-04-24 Thread Ralf Wildenhues
* 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.

2008-04-23 Thread Ralf Wildenhues
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.

2008-04-23 Thread Gary V. Vaughan

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.

2008-04-22 Thread Gary V. Vaughan
* 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.

2008-04-22 Thread Ralf Wildenhues
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.

2008-04-22 Thread Ralf Wildenhues
* 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.

2008-04-22 Thread Gary V. Vaughan

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