[patch 1/2] 307-gary-fix-recursive-ltdl-dist-rules.diff

2005-11-10 Thread Gary V. Vaughan
Okay to commit?

Your wish is my command -- now \(non\)?recursive modes don't blow up the
make dist rule of parent projects.  This turned out to be more straight
forward that I had expected, so I went ahead and did it myself.  It also
exposes a bug in the testsuite which I'll address in my next patch.

 Makefile.am   |   10 +-
 libltdl/Makefile.inc  |   41 +++--
 libtoolize.m4sh   |   13 +
 tests/nonrecursive.at |   24 
 tests/recursive.at|   19 +++
 tests/subproject.at   |   15 +++
 6 files changed, 111 insertions(+), 11 deletions(-)

Index: libtool--devo--1.0/ChangeLog
from  Gary V. Vaughan  [EMAIL PROTECTED]
* libltdl/Makefile.inc (EXTRA_DIST): Move files that are not
installed unconditionally to a client from here...
* Makefile.am (EXTRA_DIST): ...to here.
* libtoolize.m4sh: Append the paths to installed files to
EXTRA_DIST in newly copied Makefile.am.
* tests/nonrecursive.at, tests/recursive.at, tests/subproject.at:
Add new dist tests to prevent a regression.

Index: libtool--devo--1.0/Makefile.am
===
--- libtool--devo--1.0.orig/Makefile.am
+++ libtool--devo--1.0/Makefile.am
@@ -214,7 +214,6 @@ $(srcdir)/libltdl/Makefile.am: $(srcdir)
$(SED) -n '/^.. DO NOT REMOVE THIS LINE -- /,$$ \
{ s,libltdl_,,; s,libltdl/,,; s,: libltdl/,: ,; \
  s,\$$(libltdl_,$$(,; p; }' $$in  $$out;
-   chmod a-w $(srcdir)/libltdl/Makefile.am
 
 $(srcdir)/libltdl/Makefile.in: $(srcdir)/libltdl/Makefile.am
cd $(srcdir)/libltdl  $(AUTOMAKE) Makefile
@@ -229,6 +228,15 @@ all-local: $(srcdir)/libltdl/Makefile.in
 
 include libltdl/Makefile.inc
 
+EXTRA_DIST +=libltdl/Makefile.am \
+ libltdl/Makefile.in \
+ libltdl/Makefile.inc \
+ libltdl/config-h.in \
+ libltdl/configure \
+ libltdl/configure.ac \
+ libltdl/aclocal.m4 \
+ libltdl/m4/lt~obsolete.m4
+
 if ! LTDL_SUBDIR_LIBOBJS
 ## workaround for Autoconf 2.59, Automake 1.9.6:
 ## we include these files twice, because of missing LIBOBJDIR support.
Index: libtool--devo--1.0/libltdl/Makefile.inc
===
--- libtool--devo--1.0.orig/libltdl/Makefile.inc
+++ libtool--devo--1.0/libltdl/Makefile.inc
@@ -1,4 +1,4 @@
-## Makefile.am -- Process this file with automake to produce Makefile.in
+## Makefile.inc -- Process this file with automake to produce Makefile.in
 ##
 ## Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
 ##
@@ -117,15 +117,7 @@ CLEANFILES+= libltdl/libltdl.la
 CLEANFILES+= $(LIBOBJS) $(LTLIBOBJS)
 
 EXTRA_DIST+= libltdl/COPYING.LIB \
- libltdl/Makefile.am \
- libltdl/Makefile.in \
- libltdl/Makefile.inc \
- libltdl/README \
- libltdl/config-h.in \
- libltdl/configure \
- libltdl/configure.ac \
- libltdl/aclocal.m4 \
- libltdl/m4/lt~obsolete.m4
+ libltdl/README
 
 ## --- ##
 ## Gnulib Makefile.am snippets ##
Index: libtool--devo--1.0/libtoolize.m4sh
===
--- libtool--devo--1.0.orig/libtoolize.m4sh
+++ libtool--devo--1.0/libtoolize.m4sh
@@ -1066,6 +1066,19 @@ func_nonemptydir_p ()
 
 func_copy_some_files $pkgltdl_files $pkgltdldir/libltdl $ltdldir
 
+# Fixup the EXTRA_DIST contents in Makefile.inc if necessary
+my_makefile=$ltdldir/Makefile.am
+test -f $ltdldir/Makefile.inc  my_makefile=$ltdldir/Makefile.inc
+set -x
+my_save_IFS=$IFS
+IFS=:
+for file in $pkgltdl_files; do
+  IFS=$my_save_IFS
+  test nonrecursive = $ltdl_mode  file=$ltdldir/$file
+  echo EXTRA_DIST += $file  $my_makefile
+done
+IFS=$my_save_IFS
+set +x
 # Unless we share CONFIG_MACRO_DIR with our parent project,
 # copy macros here.
 if test $ltdldir/m4 != $m4dir; then
Index: libtool--devo--1.0/tests/nonrecursive.at
===
--- libtool--devo--1.0.orig/tests/nonrecursive.at
+++ libtool--devo--1.0/tests/nonrecursive.at
@@ -132,5 +132,29 @@ AT_CHECK([test -f $prefix/include/ltdl.h
 
 AT_CLEANUP
 
+
+## - ##
+## Distributing libtoolized project. ##
+## - ##
+
+AT_SETUP([distributing libltdl])
+
+_LTDL_SETUP
+
+LT_AT_LIBTOOLIZE([--copy --ltdl --install --nonrecursive])
+AT_CHECK([if test -f libltdl/configure.ac; then false; fi])
+
+# Support vanilla autoconf-2.59  automake-1.9.6
+for file in argz.c 

[patch 2/2] 308-gary-am-subdir-autotest-aclocal-fix.diff

2005-11-10 Thread Gary V. Vaughan
Okay to commit?

...aforementioned testsuite fix.  All tests pass again with both this
and the last patch applied.

Cheers,
Gary.

 tests/am-subdir.at |4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

Index: libtool--devo--1.0/tests/am-subdir.at
===
--- libtool--devo--1.0.orig/tests/am-subdir.at
+++ libtool--devo--1.0/tests/am-subdir.at
@@ -74,7 +74,7 @@ AT_DATA(expout,
 ** This is libsub **
 ]])
 
-LT_AT_BOOTSTRAP([--copy --ltdl], [], [ignore], [--add-missing])
+LT_AT_BOOTSTRAP([--copy --ltdl], [-I m4], [ignore], [--add-missing])
 
 LT_AT_EXEC_CHECK([subdir/subdemo], 0, expout)
 
@@ -150,7 +150,7 @@ AT_DATA([[subdir/sub.cxx]],
 int libsub::sub (void) { return 27; }
 ]])
 
-LT_AT_BOOTSTRAP([--copy --ltdl], [], [ignore], [--add-missing])
+LT_AT_BOOTSTRAP([--copy --ltdl], [-I m4], [ignore], [--add-missing])
 
 LT_AT_EXEC_CHECK([subdir/subdemo], 0)
 
-- 
Gary V. Vaughan  ())_.  [EMAIL PROTECTED],gnu.org}
Research Scientist   ( '/   http://tkd.kicks-ass.net
GNU Hacker   / )=   http://www.gnu.org/software/libtool
Technical Author   `(_~)_   http://sources.redhat.com/autobook




Re: [patch 2/2] 308-gary-am-subdir-autotest-aclocal-fix.diff

2005-11-10 Thread Ralf Wildenhues
Hi Gary,

* Gary V. Vaughan wrote on Thu, Nov 10, 2005 at 11:38:56AM CET:
 Okay to commit?
 
 ...aforementioned testsuite fix.

Yes, please.  Thanks!

  All tests pass again with both this and the last patch applied.

Can't believe that, though.  :)

(I forgot to remove the autoheader calls from nonrecursive.at together
with my AC_CONFIG_HEADER change last night.  Maybe you have that fixed
in your tree anyway.)

Cheers,
Ralf

  tests/am-subdir.at |4 ++--
  1 files changed, 2 insertions(+), 2 deletions(-)
 
 Index: libtool--devo--1.0/tests/am-subdir.at
 ===
 --- libtool--devo--1.0.orig/tests/am-subdir.at
 +++ libtool--devo--1.0/tests/am-subdir.at
 @@ -74,7 +74,7 @@ AT_DATA(expout,
  ** This is libsub **
  ]])
  
 -LT_AT_BOOTSTRAP([--copy --ltdl], [], [ignore], [--add-missing])
 +LT_AT_BOOTSTRAP([--copy --ltdl], [-I m4], [ignore], [--add-missing])
  
  LT_AT_EXEC_CHECK([subdir/subdemo], 0, expout)
  
 @@ -150,7 +150,7 @@ AT_DATA([[subdir/sub.cxx]],
  int libsub::sub (void) { return 27; }
  ]])
  
 -LT_AT_BOOTSTRAP([--copy --ltdl], [], [ignore], [--add-missing])
 +LT_AT_BOOTSTRAP([--copy --ltdl], [-I m4], [ignore], [--add-missing])
  
  LT_AT_EXEC_CHECK([subdir/subdemo], 0)




Re: [patch 2/2] 308-gary-am-subdir-autotest-aclocal-fix.diff

2005-11-10 Thread Gary V. Vaughan

Ralf Wildenhues wrote:

Hi Gary,


Hallo Ralf,


* Gary V. Vaughan wrote on Thu, Nov 10, 2005 at 11:38:56AM CET:


Okay to commit?

...aforementioned testsuite fix.



Yes, please.  Thanks!


Stalled on 300  301...


All tests pass again with both this and the last patch applied.



Can't believe that, though.  :)

(I forgot to remove the autoheader calls from nonrecursive.at together
with my AC_CONFIG_HEADER change last night.  Maybe you have that fixed
in your tree anyway.)


Patch 300 obviates the need for autoheader calls in the test (well, sorta),
and I'm testing from the end of my patch queue ;-)  I'll post another
status presently.

Cheers,
Gary.
--
Gary V. Vaughan  ())_.  [EMAIL PROTECTED],gnu.org}
Research Scientist   ( '/   http://tkd.kicks-ass.net
GNU Hacker   / )=   http://www.gnu.org/software/libtool
Technical Author   `(_~)_   http://sources.redhat.com/autobook


signature.asc
Description: OpenPGP digital signature


Re: My patch queue status

2005-11-10 Thread Gary V. Vaughan

Readjusted for the last round of commits.

Thanks again to Ralf for taking the time to review these patches -- many
of them deep and complex.

- patches/300-gary-simplify-tests.diff

  http://lists.gnu.org/archive/html/libtool-patches/2005-10/msg00157.html
  reposted for review

+ patches/301-gary-set-macrodir-correctly-for-installcheck.diff

  http://lists.gnu.org/archive/html/libtool-patches/2005-10/msg00071.html
  pre-approved -- awaiting commit of earlier patches

- patches/306-gary-treat-argz-m4-like-ltdl-m4.diff

  http://lists.gnu.org/archive/html/libtool-patches/2005-11/msg00027.html
  needs more discussion

- patches/307-gary-fix-recursive-ltdl-dist-rules.diff

  http://lists.gnu.org/archive/html/libtool-patches/2005-11/msg00107.html
  pending review

+ patches/308-gary-am-subdir-autotest-aclocal-fix.diff

  http://lists.gnu.org/archive/html/libtool-patches/2005-11/msg00108.html
  approved

- patches/1-ralf-fix-ltdl-config-dist.diff

  awaiting Ralf's version

- patches/272-gary-sync-m4sh-utils.diff

  deferred until post-2.0

Cheers,
Gary.
--
Gary V. Vaughan  ())_.  [EMAIL PROTECTED],gnu.org}
Research Scientist   ( '/   http://tkd.kicks-ass.net
GNU Hacker   / )=   http://www.gnu.org/software/libtool
Technical Author   `(_~)_   http://sources.redhat.com/autobook


signature.asc
Description: OpenPGP digital signature


Re: [patch 18/19] 300-gary-simplify-tests.diff

2005-11-10 Thread Ralf Wildenhues
Hi Gary,

* Gary V. Vaughan wrote on Tue, Oct 18, 2005 at 11:15:20AM CEST:
 Redone against current HEAD + previous patches  feedback.  Okay to commit?

Yes, modulo nits below.  Thanks.

Cheers,
Ralf

 Index: libtool--devo--1.0/ChangeLog
 from  Gary V. Vaughan  [EMAIL PROTECTED]
   * tests/testsuite.at (LT_AT_BOOTSTRAP): Allow passing arguments to
   configure.
   * tests/old-m4-iface.at, tests/subproject.at: Use LT_AT_BOOTSTRAP./
 
 Index: libtool--devo--1.0/tests/am-subdir.at
 ===
 --- libtool--devo--1.0.orig/tests/am-subdir.at
 +++ libtool--devo--1.0/tests/am-subdir.at
 @@ -31,6 +31,7 @@ AT_DATA([[configure.ac]],
  [[AC_INIT([subdir-demo], ]]AT_PACKAGE_VERSION[[, ]]AT_PACKAGE_BUGREPORT[[)
  AM_INIT_AUTOMAKE([subdir-objects foreign])
  LT_INIT([win32-dll])
 +AC_PROG_CC
  AM_PROG_CC_C_O
  AC_CONFIG_FILES([Makefile])
  AC_OUTPUT
 @@ -73,8 +74,8 @@ AT_DATA(expout,
  ** This is libsub **
  ]])
  
 -LT_AT_BOOTSTRAP
 -LT_AT_MAKE
 +LT_AT_BOOTSTRAP([--copy --ltdl], [], [ignore], [--add-missing])

Remove the --ltdl here. am-subdir test has nothing to do with libltdl.
Please make sure that when you install 308 (which touches the same
line), you don't undo that change again.

 +
  LT_AT_EXEC_CHECK([subdir/subdemo], 0, expout)
  
  AT_CLEANUP
 @@ -91,6 +92,7 @@ LT_AT_TAG([CXX])
  AT_DATA([[configure.ac]],
  [[AC_INIT([subdir-demo], ]]AT_PACKAGE_VERSION[[, ]]AT_PACKAGE_BUGREPORT[[)
  AM_INIT_AUTOMAKE([subdir-objects foreign])
 +AC_PROG_CC
  AM_PROG_CC_C_O
  AC_PROG_CXX
  AC_PROG_CXXCPP
 @@ -148,8 +150,8 @@ AT_DATA([[subdir/sub.cxx]],
  int libsub::sub (void) { return 27; }
  ]])
  
 -LT_AT_BOOTSTRAP
 -LT_AT_MAKE
 +LT_AT_BOOTSTRAP([--copy --ltdl], [], [ignore], [--add-missing])

Ditto.

 +
  LT_AT_EXEC_CHECK([subdir/subdemo], 0)
  
  AT_CLEANUP
 Index: libtool--devo--1.0/tests/nonrecursive.at
 ===
 --- libtool--devo--1.0.orig/tests/nonrecursive.at
 +++ libtool--devo--1.0/tests/nonrecursive.at
 @@ -76,13 +76,7 @@ for file in argz.c lt__dirent.c lt__strl
cp libltdl/$file $file
  done
  
 -LT_AT_ACLOCAL([-I libltdl/m4])
 -LT_AT_AUTOHEADER
 -LT_AT_AUTOMAKE([--add-missing --copy])
 -LT_AT_AUTOCONF
 -
 -LT_AT_CONFIGURE
 -LT_AT_MAKE
 +LT_AT_BOOTSTRAP([ignore], [-I libltdl/m4], [], [--add-missing --copy])

Please put `ignore' for the autoheader position here.
Otherwise, the test fails (my missing fixup, see other mail).

  
  AT_CHECK([test -f libltdl/libltdlc.la])
  
 @@ -105,13 +99,7 @@ for file in argz.c lt__dirent.c lt__strl
cp libltdl/$file $file
  done
  
 -LT_AT_ACLOCAL([-I libltdl/m4])
 -LT_AT_AUTOHEADER
 -LT_AT_AUTOMAKE([--add-missing --copy])
 -LT_AT_AUTOCONF
 -
 -LT_AT_CONFIGURE
 -LT_AT_MAKE
 +LT_AT_BOOTSTRAP([ignore], [-I libltdl/m4], [], [--add-missing --copy])

Ditto.

  
  AT_CHECK([test -f libltdl/libltdlc.la])
  
 @@ -136,13 +124,8 @@ for file in argz.c lt__dirent.c lt__strl
cp libltdl/$file $file
  done
  
 -LT_AT_ACLOCAL([-I libltdl/m4])
 -LT_AT_AUTOHEADER
 -LT_AT_AUTOMAKE([--add-missing --copy])
 -LT_AT_AUTOCONF
 -
 -LT_AT_CONFIGURE([--enable-ltdl-install --prefix=$prefix])
 -LT_AT_MAKE([all install])
 +LT_AT_BOOTSTRAP([ignore], [-I libltdl/m4], [], [--add-missing --copy], [],
 + [--enable-ltdl-install --prefix=$prefix], [all install])

Ditto.

  
  AT_CHECK([test -f $prefix/lib/libltdl.la])
  AT_CHECK([test -f $prefix/include/ltdl.h])
 Index: libtool--devo--1.0/tests/old-m4-iface.at
 ===
 --- libtool--devo--1.0.orig/tests/old-m4-iface.at
 +++ libtool--devo--1.0/tests/old-m4-iface.at
 @@ -71,14 +71,11 @@ LT_AT_LIBTOOLIZE([--install])
  
  # This is slightly bogus, since only libtool.m4 was required in aclocal.m4
  # with libtool-1.5x...
 -test -f aclocal.m4 \
 -|| cat $macrodir/libtool.m4 $macrodir/ltoptions.m4 \
 - $macrodir/ltsugar.m4 $macrodir/ltversion.m4  aclocal.m4 \
 -|| exit 1
 -
 -LT_AT_AUTOCONF([--force])
 -LT_AT_CONFIGURE
 -LT_AT_MAKE
 +AT_CHECK([test -f aclocal.m4 ||
 +  cat $macrodir/libtool.m4 $macrodir/ltoptions.m4 \
 +  $macrodir/ltsugar.m4 $macrodir/ltversion.m4  aclocal.m4])
 +
 +LT_AT_BOOTSTRAP([ignore], [ignore], [ignore], [ignore], [--force])
  
  LT_AT_EXEC_CHECK([./old], 0, [Hello, World!])
  
 @@ -133,11 +130,8 @@ [EMAIL PROTECTED]@: [EMAIL PROTECTED]@
   $(LTCOMPILE) -c -o $@ $
  ]])
  
 -LT_AT_LIBTOOLIZE([--ltdl --install])
 -LT_AT_ACLOCAL([-I libltdl/m4])
 -LT_AT_AUTOCONF([--force])
 -LT_AT_CONFIGURE
 -LT_AT_MAKE
 +LT_AT_BOOTSTRAP([--ltdl --install], [-I libltdl/m4], [ignore], [ignore],
 + [--force])
  
  LT_AT_EXEC_CHECK([./ltdldemo], 0, [ignore])
  
 Index: libtool--devo--1.0/tests/subproject.at
 ===
 --- libtool--devo--1.0.orig/tests/subproject.at
 +++ libtool--devo--1.0/tests/subproject.at
 @@ -52,13 +52,7 @@ AT_SETUP([compiling softlinked libltdl])
  
  _LTDL_SETUP
  
 

FYI: simplify tests [300]

2005-11-10 Thread Gary V. Vaughan
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Applied to HEAD.

  * looking for [EMAIL PROTECTED]/libtool--devo--1.0--patch-369 to compare with
  * comparing to [EMAIL PROTECTED]/libtool--devo--1.0--patch-369
  M  tests/old-m4-iface.at
  M  ChangeLog
  M  tests/nonrecursive.at
  M  tests/am-subdir.at
  M  tests/testsuite.at
  M  tests/subproject.at
  
  * modified files
  
  Index: Changelog
  from  Gary V. Vaughan  [EMAIL PROTECTED]
  
* tests/testsuite.at (LT_AT_BOOTSTRAP): Allow passing arguments to
configure.
* tests/old-m4-iface.at, tests/subproject.at: Use LT_AT_BOOTSTRAP.
  
  --- orig/tests/am-subdir.at
  +++ mod/tests/am-subdir.at
  @@ -31,6 +31,7 @@
   [[AC_INIT([subdir-demo], ]]AT_PACKAGE_VERSION[[, ]]AT_PACKAGE_BUGREPORT[[)
   AM_INIT_AUTOMAKE([subdir-objects foreign])
   LT_INIT([win32-dll])
  +AC_PROG_CC
   AM_PROG_CC_C_O
   AC_CONFIG_FILES([Makefile])
   AC_OUTPUT
  @@ -73,8 +74,8 @@
   ** This is libsub **
   ]])
   
  -LT_AT_BOOTSTRAP
  -LT_AT_MAKE
  +LT_AT_BOOTSTRAP([--copy], [], [ignore], [--add-missing])
  +
   LT_AT_EXEC_CHECK([subdir/subdemo], 0, expout)
   
   AT_CLEANUP
  @@ -91,6 +92,7 @@
   AT_DATA([[configure.ac]],
   [[AC_INIT([subdir-demo], ]]AT_PACKAGE_VERSION[[, ]]AT_PACKAGE_BUGREPORT[[)
   AM_INIT_AUTOMAKE([subdir-objects foreign])
  +AC_PROG_CC
   AM_PROG_CC_C_O
   AC_PROG_CXX
   AC_PROG_CXXCPP
  @@ -148,8 +150,8 @@
   int libsub::sub (void) { return 27; }
   ]])
   
  -LT_AT_BOOTSTRAP
  -LT_AT_MAKE
  +LT_AT_BOOTSTRAP([--copy], [], [ignore], [--add-missing])
  +
   LT_AT_EXEC_CHECK([subdir/subdemo], 0)
   
   AT_CLEANUP
  
  
  --- orig/tests/nonrecursive.at
  +++ mod/tests/nonrecursive.at
  @@ -76,13 +76,7 @@
 cp libltdl/$file $file
   done
   
  -LT_AT_ACLOCAL([-I libltdl/m4])
  -LT_AT_AUTOHEADER
  -LT_AT_AUTOMAKE([--add-missing --copy])
  -LT_AT_AUTOCONF
  -
  -LT_AT_CONFIGURE
  -LT_AT_MAKE
  +LT_AT_BOOTSTRAP([ignore], [-I libltdl/m4], [ignore], [--add-missing --copy])
   
   AT_CHECK([test -f libltdl/libltdlc.la])
   
  @@ -105,13 +99,7 @@
 cp libltdl/$file $file
   done
   
  -LT_AT_ACLOCAL([-I libltdl/m4])
  -LT_AT_AUTOHEADER
  -LT_AT_AUTOMAKE([--add-missing --copy])
  -LT_AT_AUTOCONF
  -
  -LT_AT_CONFIGURE
  -LT_AT_MAKE
  +LT_AT_BOOTSTRAP([ignore], [-I libltdl/m4], [ignore], [--add-missing --copy])
   
   AT_CHECK([test -f libltdl/libltdlc.la])
   
  @@ -136,13 +124,8 @@
 cp libltdl/$file $file
   done
   
  -LT_AT_ACLOCAL([-I libltdl/m4])
  -LT_AT_AUTOHEADER
  -LT_AT_AUTOMAKE([--add-missing --copy])
  -LT_AT_AUTOCONF
  -
  -LT_AT_CONFIGURE([--enable-ltdl-install --prefix=$prefix])
  -LT_AT_MAKE([all install])
  +LT_AT_BOOTSTRAP([ignore], [-I libltdl/m4], [ignore], [--add-missing --copy],
  + [], [--enable-ltdl-install --prefix=$prefix], [all install])
   
   AT_CHECK([test -f $prefix/lib/libltdl.la])
   AT_CHECK([test -f $prefix/include/ltdl.h])
  
  
  --- orig/tests/old-m4-iface.at
  +++ mod/tests/old-m4-iface.at
  @@ -71,14 +71,11 @@
   
   # This is slightly bogus, since only libtool.m4 was required in aclocal.m4
   # with libtool-1.5x...
  -test -f aclocal.m4 \
  -|| cat $macrodir/libtool.m4 $macrodir/ltoptions.m4 \
  - $macrodir/ltsugar.m4 $macrodir/ltversion.m4  aclocal.m4 \
  -|| exit 1
  -
  -LT_AT_AUTOCONF([--force])
  -LT_AT_CONFIGURE
  -LT_AT_MAKE
  +AT_CHECK([test -f aclocal.m4 ||
  +  cat $macrodir/libtool.m4 $macrodir/ltoptions.m4 \
  +  $macrodir/ltsugar.m4 $macrodir/ltversion.m4  aclocal.m4])
  +
  +LT_AT_BOOTSTRAP([ignore], [ignore], [ignore], [ignore], [--force])
   
   LT_AT_EXEC_CHECK([./old], 0, [Hello, World!])
   
  @@ -133,11 +130,8 @@
$(LTCOMPILE) -c -o $@ $
   ]])
   
  -LT_AT_LIBTOOLIZE([--ltdl --install])
  -LT_AT_ACLOCAL([-I libltdl/m4])
  -LT_AT_AUTOCONF([--force])
  -LT_AT_CONFIGURE
  -LT_AT_MAKE
  +LT_AT_BOOTSTRAP([--ltdl --install], [-I libltdl/m4], [ignore], [ignore],
  + [--force])
   
   LT_AT_EXEC_CHECK([./ltdldemo], 0, [ignore])
   
  
  
  --- orig/tests/subproject.at
  +++ mod/tests/subproject.at
  @@ -52,13 +52,7 @@
   
   _LTDL_SETUP
   
  -LT_AT_LIBTOOLIZE([--ltdl])
  -LT_AT_ACLOCAL([-I sub/ltdl/m4])
  -LT_AT_AUTOMAKE([--add-missing --copy])
  -LT_AT_AUTOCONF
  -
  -LT_AT_CONFIGURE
  -LT_AT_MAKE
  +LT_AT_BOOTSTRAP([--ltdl], [-I sub/ltdl/m4], [ignore], [--add-missing --copy])
   
   AT_CHECK([test -f sub/ltdl/libltdlc.la])
   
  @@ -73,13 +67,8 @@
   
   _LTDL_SETUP
   
  -LT_AT_LIBTOOLIZE([--copy --ltdl])
  -LT_AT_ACLOCAL([-I sub/ltdl/m4])
  -LT_AT_AUTOMAKE([--add-missing --copy])
  -LT_AT_AUTOCONF
  -
  -LT_AT_CONFIGURE
  -LT_AT_MAKE
  +LT_AT_BOOTSTRAP([--copy --ltdl], [-I sub/ltdl/m4], [ignore],
  + [--add-missing --copy])
   
   AT_CHECK([test -f sub/ltdl/libltdlc.la])
   
  @@ -96,13 +85,9 @@
   
   _LTDL_SETUP
   
  -LT_AT_LIBTOOLIZE([--copy --ltdl])
  -LT_AT_ACLOCAL([-I sub/ltdl/m4])
  -LT_AT_AUTOMAKE([--add-missing --copy])
  -LT_AT_AUTOCONF
  -
  -LT_AT_CONFIGURE([--enable-ltdl-install --prefix=$prefix])
  -LT_AT_MAKE([all install])
  

Re: FYI: (non)recursive mode fixups

2005-11-10 Thread Ralf Wildenhues
Hi Gary,

* Gary V. Vaughan wrote on Thu, Nov 10, 2005 at 12:29:08PM CET:
 Ralf Wildenhues wrote:
 
 I'll eventually try this, together with (s)editing of Makefile.inc so it
 can be used nonrecursively with subdir names other than libltdl/.
 
 No need... 'tis done.  Hmmm, does one of the modes still require libltdl?
 I thought I'd fixed that already?

nonrecursive mode, as far as I can see.  If you could fix it: great!

I believe it should be rather easy: something like the sed script in
toplevel Makefile.am, in the rule for $(srcdir)/libltdl/Makefile.am,
only now in libtoolize, and with nonempty replacements.

Cheers,
Ralf




Re: My patch queue status

2005-11-10 Thread Ralf Wildenhues
Hi Gary,

* Gary V. Vaughan wrote on Thu, Nov 10, 2005 at 03:15:19PM CET:
 
 - patches/300-gary-simplify-tests.diff
 
   http://lists.gnu.org/archive/html/libtool-patches/2005-10/msg00157.html
   reposted for review

Reviewed already.  :)

 + patches/301-gary-set-macrodir-correctly-for-installcheck.diff
 
   http://lists.gnu.org/archive/html/libtool-patches/2005-10/msg00071.html
   pre-approved -- awaiting commit of earlier patches

No such patch.  Neither in the URL you list, nor can I find it in
a mail of yours.

 - patches/306-gary-treat-argz-m4-like-ltdl-m4.diff
 
   http://lists.gnu.org/archive/html/libtool-patches/2005-11/msg00027.html
   needs more discussion

Yep, will think about it.

 - patches/307-gary-fix-recursive-ltdl-dist-rules.diff
 
   http://lists.gnu.org/archive/html/libtool-patches/2005-11/msg00107.html
   pending review

How'd that get in the list archives so quickly?  I'll review it soon.

 + patches/308-gary-am-subdir-autotest-aclocal-fix.diff
 
   http://lists.gnu.org/archive/html/libtool-patches/2005-11/msg00108.html
   approved
 
 - patches/1-ralf-fix-ltdl-config-dist.diff
 
   awaiting Ralf's version

Soon, too.  :)


Cheers,
Ralf




Re: My patch queue status

2005-11-10 Thread Gary V. Vaughan

Ralf Wildenhues wrote:

Hi Gary,


Hallo Ralf!


* Gary V. Vaughan wrote on Thu, Nov 10, 2005 at 03:15:19PM CET:


- patches/300-gary-simplify-tests.diff

 http://lists.gnu.org/archive/html/libtool-patches/2005-10/msg00157.html
 reposted for review


Reviewed already.  :)


Applied already! :-p


+ patches/301-gary-set-macrodir-correctly-for-installcheck.diff

 http://lists.gnu.org/archive/html/libtool-patches/2005-10/msg00071.html
 pre-approved -- awaiting commit of earlier patches



No such patch.  Neither in the URL you list, nor can I find it in
a mail of yours.


Guess I didn't post the patch, but since you say in the referenced mail:

  'If you're bored, you could also
  fix Makefile.am, testsuite.at to point $macrodir to the installed
  directory for `installcheck'.'

..that's what I did.  I'll post it presently incase you spot any nits.


- patches/306-gary-treat-argz-m4-like-ltdl-m4.diff

 http://lists.gnu.org/archive/html/libtool-patches/2005-11/msg00027.html
 needs more discussion
 
Yep, will think about it.


Okay, cool.


- patches/307-gary-fix-recursive-ltdl-dist-rules.diff

 http://lists.gnu.org/archive/html/libtool-patches/2005-11/msg00107.html
 pending review


How'd that get in the list archives so quickly?  I'll review it soon.


My thoughts exactly!  Must've hit the list at just the right time...


+ patches/308-gary-am-subdir-autotest-aclocal-fix.diff

 http://lists.gnu.org/archive/html/libtool-patches/2005-11/msg00108.html
 approved


Committed!


- patches/1-ralf-fix-ltdl-config-dist.diff

 awaiting Ralf's version


Soon, too.  :)


Okay!

Cheers,
Gary.
--
Gary V. Vaughan  ())_.  [EMAIL PROTECTED],gnu.org}
Research Scientist   ( '/   http://tkd.kicks-ass.net
GNU Hacker   / )=   http://www.gnu.org/software/libtool
Technical Author   `(_~)_   http://sources.redhat.com/autobook


signature.asc
Description: OpenPGP digital signature


301-gary-set-macrodir-correctly-for-installcheck.diff

2005-11-10 Thread Gary V. Vaughan
Okay to commit?

 Makefile.am   |6 --
 tests/old-m4-iface.at |4 ++--
 tests/testsuite.at|1 -
 3 files changed, 6 insertions(+), 5 deletions(-)

Index: libtool--devo--1.0/ChangeLog
from  Gary V. Vaughan  [EMAIL PROTECTED]
* tests/testsuite.ac (macrodir): Don't set it here...
* Makefile.am (BUILDCHECK_ENVIRONMENT, INSTALLCHECK_ENVIRONMENT):
...set it here to pick up files from the right place in context.

Index: libtool--devo--1.0/Makefile.am
===
--- libtool--devo--1.0.orig/Makefile.am
+++ libtool--devo--1.0/Makefile.am
@@ -389,11 +389,13 @@ TESTS_ENVIRONMENT = MAKE=$(MAKE) CC=$
 
 BUILDCHECK_ENVIRONMENT = _lt_pkgdatadir=$(abs_top_srcdir) \
LIBTOOLIZE=$(abs_top_builddir)/libtoolize \
-   LIBTOOL=$(abs_top_builddir)/libtool
+   LIBTOOL=$(abs_top_builddir)/libtool \
+   aclocaldir=$(abs_top_srcdir)/libltdl/m4
 
 INSTALLCHECK_ENVIRONMENT = \
LIBTOOLIZE=$(bindir)/`echo libtoolize | sed 
'$(program_transform_name)'` \
-   LIBTOOL=$(bindir)/`echo libtool | sed '$(program_transform_name)'`
+   LIBTOOL=$(bindir)/`echo libtool | sed '$(program_transform_name)'` \
+   aclocaldir=$(aclocaldir)
 
 check-recursive: $(srcdir)/$(TESTSUITE)
 
Index: libtool--devo--1.0/tests/old-m4-iface.at
===
--- libtool--devo--1.0.orig/tests/old-m4-iface.at
+++ libtool--devo--1.0/tests/old-m4-iface.at
@@ -72,8 +72,8 @@ LT_AT_LIBTOOLIZE([--install])
 # This is slightly bogus, since only libtool.m4 was required in aclocal.m4
 # with libtool-1.5x...
 AT_CHECK([test -f aclocal.m4 ||
-  cat $macrodir/libtool.m4 $macrodir/ltoptions.m4 \
-  $macrodir/ltsugar.m4 $macrodir/ltversion.m4  aclocal.m4])
+  cat $aclocaldir/libtool.m4 $aclocaldir/ltoptions.m4 \
+  $aclocaldir/ltsugar.m4 $aclocaldir/ltversion.m4  aclocal.m4])
 
 LT_AT_BOOTSTRAP([ignore], [ignore], [ignore], [ignore], [--force])
 
Index: libtool--devo--1.0/tests/testsuite.at
===
--- libtool--devo--1.0.orig/tests/testsuite.at
+++ libtool--devo--1.0/tests/testsuite.at
@@ -25,7 +25,6 @@ m4_divert_push([PREPARE_TESTS])dnl
 : ${AUTOMAKE=automake}
 : ${AUTORECONF=autoreconf}
 export ACLOCAL AUTOHEADER AUTOCONF AUTOMAKE AUTORECONF
-macrodir=$abs_top_srcdir/libltdl/m4
 eval `$LIBTOOL --config | grep ^EGREP=`
 eval `$LIBTOOL --config | $EGREP '^(host|host_os|host_alias|build|ECHO)='`
 configure_options=
-- 
Gary V. Vaughan  ())_.  [EMAIL PROTECTED],gnu.org}
Research Scientist   ( '/   http://tkd.kicks-ass.net
GNU Hacker   / )=   http://www.gnu.org/software/libtool
Technical Author   `(_~)_   http://sources.redhat.com/autobook




Re: 301-gary-set-macrodir-correctly-for-installcheck.diff

2005-11-10 Thread Ralf Wildenhues
Hi Gary,

* Gary V. Vaughan wrote on Thu, Nov 10, 2005 at 04:37:46PM CET:
 Okay to commit?

There's an obvious overlap with
http://lists.gnu.org/archive/html/libtool-patches/2005-11/msg00088.html
:)

I chose tst_aclocaldir over aclocaldir as a name, in order to avoid any
possible conflict; since my proposed patch also undoes the `make -e',
that might be less of an issue, but better be safe than sorry.

How about you s/aclocaldir/tst_/ and commit, and I pick up the rest of
my patch then (maybe after review ;) ?

Cheers,
Ralf

  Makefile.am   |6 --
  tests/old-m4-iface.at |4 ++--
  tests/testsuite.at|1 -
  3 files changed, 6 insertions(+), 5 deletions(-)
 
 Index: libtool--devo--1.0/ChangeLog
 from  Gary V. Vaughan  [EMAIL PROTECTED]
   * tests/testsuite.ac (macrodir): Don't set it here...
   * Makefile.am (BUILDCHECK_ENVIRONMENT, INSTALLCHECK_ENVIRONMENT):
   ...set it here to pick up files from the right place in context.





FYI: set macrodir correctly for installcheck [301]

2005-11-10 Thread Gary V. Vaughan
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Applied to HEAD.

Had to tweak slightly to make test-5 work with installcheck.

  * looking for [EMAIL PROTECTED]/libtool--devo--1.0--patch-372 to compare with
  * comparing to [EMAIL PROTECTED]/libtool--devo--1.0--patch-372
  M  Makefile.am
  M  libtoolize.m4sh
  M  tests/old-m4-iface.at
  M  tests/libtoolize.at
  M  ChangeLog
  M  tests/testsuite.at
  
  * modified files
  
  Index: Changelog
  from  Gary V. Vaughan  [EMAIL PROTECTED]
* tests/testsuite.ac (macrodir): Don't set it here...
* Makefile.am (BUILDCHECK_ENVIRONMENT, INSTALLCHECK_ENVIRONMENT):
...set it here to pick up files from the right place in context.
* tests/libtoolize.at, tests/old-m4-iface.at: Adjust.
* libtoolize.m4sh: Take tst_aclocaldir into account when running
inside the test harness.
  
  2005-11-10  Gary V. Vaughan  [EMAIL PROTECTED]
  
  --- orig/Makefile.am
  +++ mod/Makefile.am
  @@ -389,11 +389,13 @@
   
   BUILDCHECK_ENVIRONMENT = _lt_pkgdatadir=$(abs_top_srcdir) \
LIBTOOLIZE=$(abs_top_builddir)/libtoolize \
  - LIBTOOL=$(abs_top_builddir)/libtool
  + LIBTOOL=$(abs_top_builddir)/libtool \
  + tst_aclocaldir=$(abs_top_srcdir)/libltdl/m4
   
   INSTALLCHECK_ENVIRONMENT = \
LIBTOOLIZE=$(bindir)/`echo libtoolize | sed 
'$(program_transform_name)'` \
  - LIBTOOL=$(bindir)/`echo libtool | sed '$(program_transform_name)'`
  + LIBTOOL=$(bindir)/`echo libtool | sed '$(program_transform_name)'` \
  + tst_aclocaldir=$(aclocaldir)
   
   check-recursive: $(srcdir)/$(TESTSUITE)
   
  
  
  --- orig/libtoolize.m4sh
  +++ mod/libtoolize.m4sh
  @@ -1030,6 +1030,7 @@
   pkgdatadir=$_lt_pkgdatadir/libltdl
   aclocaldir=$_lt_pkgdatadir/libltdl/m4
 fi
  +  test -n $tst_aclocaldir  aclocaldir=$tst_aclocaldir
 func_nonemptydir_p pkgltdldir
 func_nonemptydir_p pkgdatadir
 func_nonemptydir_p aclocaldir
  
  
  --- orig/tests/libtoolize.at
  +++ mod/tests/libtoolize.at
  @@ -369,10 +369,10 @@
   libtoolize: putting files in AC_CONFIG_AUX_DIR, \`config'.
   libtoolize: copying file \`config/ltmain.sh'
   libtoolize: You should add the contents of the following files to 
\`aclocal.m4':
  -libtoolize:   \`$_lt_pkgdatadir/libltdl/m4/libtool.m4'
  -libtoolize:   \`$_lt_pkgdatadir/libltdl/m4/ltoptions.m4'
  -libtoolize:   \`$_lt_pkgdatadir/libltdl/m4/ltversion.m4'
  -libtoolize:   \`$_lt_pkgdatadir/libltdl/m4/ltsugar.m4'
  +libtoolize:   \`$tst_aclocaldir/libtool.m4'
  +libtoolize:   \`$tst_aclocaldir/ltoptions.m4'
  +libtoolize:   \`$tst_aclocaldir/ltversion.m4'
  +libtoolize:   \`$tst_aclocaldir/ltsugar.m4'
   EOF]
   
   LT_AT_CHECK_LIBTOOLIZE([--copy], 0, expout)
  
  
  --- orig/tests/old-m4-iface.at
  +++ mod/tests/old-m4-iface.at
  @@ -72,8 +72,8 @@
   # This is slightly bogus, since only libtool.m4 was required in aclocal.m4
   # with libtool-1.5x...
   AT_CHECK([test -f aclocal.m4 ||
  -  cat $macrodir/libtool.m4 $macrodir/ltoptions.m4 \
  -  $macrodir/ltsugar.m4 $macrodir/ltversion.m4  aclocal.m4])
  +  cat $tst_aclocaldir/libtool.m4 $tst_aclocaldir/ltoptions.m4 \
  +$tst_aclocaldir/ltsugar.m4 $tst_aclocaldir/ltversion.m4  
aclocal.m4])
   
   LT_AT_BOOTSTRAP([ignore], [ignore], [ignore], [ignore], [--force])
   
  
  
  --- orig/tests/testsuite.at
  +++ mod/tests/testsuite.at
  @@ -25,7 +25,6 @@
   : ${AUTOMAKE=automake}
   : ${AUTORECONF=autoreconf}
   export ACLOCAL AUTOHEADER AUTOCONF AUTOMAKE AUTORECONF
  -macrodir=$abs_top_srcdir/libltdl/m4
   eval `$LIBTOOL --config | grep ^EGREP=`
   eval `$LIBTOOL --config | $EGREP '^(host|host_os|host_alias|build|ECHO)='`
   configure_options=
  
  
  
- -- 
Gary V. Vaughan  ())_.  [EMAIL PROTECTED],gnu.org}
Research Scientist   ( '/   http://tkd.kicks-ass.net
GNU Hacker   / )=   http://www.gnu.org/software/libtool
Technical Author   `(_~)_   http://sources.redhat.com/autobook
_
This patch notification generated by tlaapply version 1.0
http://tkd.kicks-ass.net/arch/[EMAIL PROTECTED]/cvs-utils--tla--1.0
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.1 (Darwin)

iD8DBQFDc4jrFRMICSmD1gYRAvdAAKCc2F9KpXZBFRy4aiA1NyRJh0RaogCfYR3I
oMWUs3UHL4yQK5yLUvYXemI=
=qKzr
-END PGP SIGNATURE-




Re: 301-gary-set-macrodir-correctly-for-installcheck.diff

2005-11-10 Thread Gary V. Vaughan

Ralf Wildenhues wrote:

Hi Gary,


Hallo Ralf!


* Gary V. Vaughan wrote on Thu, Nov 10, 2005 at 04:37:46PM CET:


Okay to commit?



How about you s/aclocaldir/tst_/ and commit, and I pick up the rest of
my patch then (maybe after review ;) ?


Deal.  I'll try to review tomorrow.

Cheers,
Gary.
--
Gary V. Vaughan  ())_.  [EMAIL PROTECTED],gnu.org}
Research Scientist   ( '/   http://tkd.kicks-ass.net
GNU Hacker   / )=   http://www.gnu.org/software/libtool
Technical Author   `(_~)_   http://sources.redhat.com/autobook


signature.asc
Description: OpenPGP digital signature


FYI: speedup bootstrap

2005-11-10 Thread Ralf Wildenhues
Applied the patch to CVS HEAD.  Gary agreed.  :))

Cheers,
Ralf

* Ralf Wildenhues wrote on Sun, Oct 23, 2005 at 02:42:38PM CEST:
 
 * libltdl/m4/ltsugar.m4 (lt_join, lt_combine, lt_dict_filter):
 Rewrite to eliminate tail recursion; use ..
 (lt_unquote): New trivial helper macro.
 * libltdl/m4/libtool.m4 (_lt_decl_filter): Document.
 
 Index: libltdl/m4/libtool.m4
 ===
 RCS file: /cvsroot/libtool/libtool/libltdl/m4/libtool.m4,v
 retrieving revision 1.27
 diff -u -r1.27 libtool.m4
 --- libltdl/m4/libtool.m4 13 Oct 2005 13:22:55 -  1.27
 +++ libltdl/m4/libtool.m4 23 Oct 2005 09:02:45 -
 @@ -335,6 +335,10 @@
  # -
  m4_define([lt_decl_tag_varnames],
  [_lt_decl_filter([tagged?], [yes], $@)])
 +
 +
 +# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
 +# -
  m4_define([_lt_decl_filter],
  [m4_case([$#],
[0], [m4_fatal([$0: too few arguments: $#])],
 Index: libltdl/m4/ltsugar.m4
 ===
 RCS file: /cvsroot/libtool/libtool/libltdl/m4/ltsugar.m4,v
 retrieving revision 1.1
 diff -u -r1.1 ltsugar.m4
 --- libltdl/m4/ltsugar.m4 22 Aug 2005 22:33:35 -  1.1
 +++ libltdl/m4/ltsugar.m4 23 Oct 2005 09:02:45 -
 @@ -23,12 +23,12 @@
[1], [],
[2], [[$2]],
[m4_ifval([$2],
 -[m4_ifval([$3],
 -  [[$2][$1][]$0([$1], m4_shiftn(2, $@))],
 -[m4_if([$#], [3],
 -   [$2],
 -[$0([$1], [$2], m4_shiftn(3, $@))])])],
 -   [$0([$1], m4_shiftn(2, $@))])])[]dnl
 +[[$2][]m4_foreach(_lt_Arg, lt_car([m4_shiftn(2, $@)]),
 +[_$0([$1], _lt_Arg)])],
 +[$0([$1], m4_shiftn(2, $@))])])[]dnl
 +])
 +m4_define([_lt_join],
 +[m4_ifval([$2],[$1][$2])[]dnl
  ])
  
  
 @@ -43,6 +43,7 @@
  [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
 [$#], 1, [],
 [m4_dquote(m4_shift($@))])])
 +m4_define([lt_unquote], $1)
  
  
  # lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
 @@ -52,14 +53,11 @@
  # has the form PREFIXmINFIXSUFFIXn.
  m4_define([lt_combine],
  [m4_if([$2], [], [],
 -   [lt_join(m4_quote(m4_default([$1], [[, ]])),
 - _$0([$1], lt_car($2)[$3], m4_shiftn(3, $@)),
 - $0([$1], lt_cdr($2), m4_shiftn(2, $@)))])])
 -m4_define([_lt_combine],
 -[m4_if([$3], [], [],
 -   [lt_join(m4_quote(m4_default([$1], [[, ]])),
 - [$2$3],
 - $0([$1], [$2], m4_shiftn(3, $@)))])[]dnl
 +  [m4_if([$4], [], [],
 +[lt_join(m4_quote(m4_default([$1], [[, ]])),
 +  lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_prefix, [$2],
 +[m4_foreach(_Lt_suffix, lt_car([m4_shiftn(3, $@)]),
 +[_Lt_prefix[]$3[]_Lt_suffix ])])])])dnl
  ])
  
  
 @@ -104,10 +102,10 @@
  
  
  # lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
 -# 
 +# --
  m4_define([lt_dict_filter],
  [m4_if([$5], [], [],
[lt_join(m4_quote(m4_default([$4], [[, ]])),
 -m4_quote(lt_if_dict_fetch([$1], [$5], [$2], [$3], [$5])),
 -m4_quote($0([$1], [$2], [$3], [$4], m4_shiftn(5, $@])dnl
 +   lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, 
 lt_car([m4_shiftn(4, $@)]),
 +   [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key 
 ])])])[]dnl
  ])
 
 




Re: Nit in func_win32_libid (branch-1.5)

2005-11-10 Thread Ralf Wildenhues
Hi Charles,

* Charles Wilson wrote on Thu, Nov 10, 2005 at 04:07:47AM CET:
 This has been bugging me since we last looked at this piece of code 
 (2005-09-25) and we didn't take the opportunity to fix it then.
 
 Should be obvious...also needed in ltmain.m4sh of HEAD.

Thank you for the patch.  Applied to HEAD and branch-1-5.

Cheers,
Ralf

 2005-11-09  Charles Wilson  [EMAIL PROTECTED]
 
   * ltmain.in (func_win32_libid): use $SED not sed.
 
 --
 Chuck

 Index: ltmain.in
 ===
 RCS file: /cvsroot/libtool/libtool/Attic/ltmain.in,v
 retrieving revision 1.334.2.94
 diff -u -r1.334.2.94 ltmain.in
 --- ltmain.in 7 Nov 2005 22:54:24 -   1.334.2.94
 +++ ltmain.in 10 Nov 2005 02:54:19 -
 @@ -157,7 +157,7 @@
  if eval $OBJDUMP -f $1 | $SED -e '10q' 2/dev/null | \
$EGREP -e 'file format pe-i386(.*architecture: i386)?' /dev/null ; 
 then
win32_nmres=`eval $NM -f posix -A $1 | \
 - sed -n -e '1,100{/ I /{s,.*,import,;p;q;};}'`
 + $SED -n -e '1,100{/ I /{s,.*,import,;p;q;};}'`
case $win32_nmres in
import*)  win32_libid_type=x86 archive import;;
*)win32_libid_type=x86 archive static;;




Re: SCO/bugfix patch 7 of 10: Improve SCO platform support

2005-11-10 Thread Ralf Wildenhues
Hi Kean,

* Kean Johnston wrote on Wed, Nov 09, 2005 at 10:26:11AM CET:
 I believe hardcode_libdir_flag_spec should be set to 
   '${wl}-R,$libdir'
 in any case.  This has little to do with absolute sonames, but with the
 dependent programs finding the library.  So the SCOABSPATH hack is
 mixing up different issues here.
 Not at all. If you are using absolute path names you have absolutely
 no need to have a DT_RUNPATH entry in the executable, and in fact,
 having one there can change the runtime semantics of the program
 becuase the search order for libraries will be subtly different

D'oh, I read the logic the wrong way round (i.e., I thought you added
the -R$libdir only when SCOABSPATH was set, not when it was unset).
Sorry for that confusion.

 (for any shared libraries that do *not* have absolute path names
 becuase they were constructed before the libtool patch). That has
 forseeable, albeit unlikely, security implications. Here's why.
 
 Suppose, for arguments sake, you had an a.out with a DT_RUNPATH
 entry pointing to /usr/pgsql/lib. That a.out is has the following
 DT_NEEDED entries:
/usr/lib/libc.so.1
/usr/pgsql/lib/libpq.so.8
libz.so.1
 
 The /usr/pgsql directory is owned by the PostgreSQL db admin, who
 in BigCorp, isn't root, just a DBA. All that DBA needs to do to
 get root on that machine is put in a libz.so.1 in /usr/pgsql/lib
 and wait for root to run a postgres command at voila, they have
 root access.
 
 Without the DT_RUNPATH entry, the RTLD will use the normal
 LD_LIBRARY_PATH and standard system locations, which we can assume
 a competant root will protect himself from.

Ah, ok.  Hmm, this means though that we /may/ need to refine my
absolute-soname proposal.

- When linking against a library that has an absolute soname, we should
  not add its path to rpath.  This probably requires that the installed
  library has a .la file present, and the absolute path setting is
  recorded there, so we can know about this fact.

Now what I don't know is: Do we also need to parameterize this question?
IOW: if an absolute soname overrides whatever other paths are used for
searching, then we wouldn't have to take care of this step.  OTOH, if it
could not be overridden at all at link time (as opposed to at execution
time), that would prevent DESTDIR setups, which would suck. :-/
(I don't know if such a system exists.)

With your current SCOABSPATH hack, the information would not be present
in the installed .la files, so when you finally upgrade to a working
-absolute-soname libtool, you will still have to install everything
again, or we'd have to add yet another (really gross, and
system-dependent) hack to find out whether the soname of the installed
library is absolute.  Right?  The change of hardcode_libdir_flag_spec
depends not on whether your currently compiled library will have
absolute soname, but whether your installations of its dependencies had
it.

Other than above thoughts: your scenario _is_ pretty artificial, don't
you think?  I mean, if you either don't trust your PostgreSQL db admin,
or if you have a root admin that executes postgres commands (or any
commands at all, FWIW) without thinking, you have bigger problems than
worrying about shared library searching?!  I mean, he could just add
malicious code right in libpq anyway, no need for any shared library
search order games?  ;)
(But you do have a point anyway: you might want to guard against him
inadvertantly installing a different libz there.)

Cheers,
Ralf




Re: SCO/bugfix patch 7 of 10: Improve SCO platform support

2005-11-10 Thread Ralf Wildenhues
Hi Kean,

* Kean Johnston wrote on Wed, Nov 09, 2005 at 10:18:27AM CET:
 Well, I believe the SCOABSPATH is not only ugly, but also broken (from a
 libtool perspective): if you have a package which creates two libraries,
 one depending on the other, your uninstalled library will link against a
 previous installed version, if that exists.  While testing, this is
 wrong.
 I agree its ugly but its a necessary evil. All the point you raise
 about it being generalized are valid, and I will help out as much
 as I can to make that happen. But its going to take a while for
 2.0 to be adopted. Meanwhile, I believe a new release of 1.5 is
 imminent, and people are likely to upgrade to that, and it will be
 around for a while. The problem is, as things currently stand,
 libtool will create shared libraries that expose a severe security
 flaw.

OK.  I'll take the SCOABSPATH, but would rather like it a bit
differently, if you agree:

The way I understand your intentions, it should suffice if you can
decide at configure time about the absoluteness of the paths (rather
than at link time).  So you could do this instead:

  if test -z $SCOABSPATH; then
archive_cmds='bla bla'
archive_expsyms_cmds='bla otherbla'
  else
# ...
  fi

which would be at least a lot more readable.

Could you or Tim resubmit the patch like this for branch-1-5?
Then, when you forward-port to CVS HEAD, leave out the SCOABSPATH part;
we shall try to get -allow-absolute-soname working (and can still think
about moving the hack forward if that doesn't work out).  At the first
occurrence of SCOABSPATH, please add a comment that this thingy will not
be supported, and that it breaks testing of uninstalled libraries.

Would this be ok with you?

Cheers,
Ralf




Re: SCO/bugfix patch 7 of 10: Improve SCO platform support

2005-11-10 Thread Tim Rice
On Thu, 10 Nov 2005, Ralf Wildenhues wrote:

 
 Could you or Tim resubmit the patch like this for branch-1-5?

I'll let Kean work on this one.

 Then, when you forward-port to CVS HEAD, leave out the SCOABSPATH part;

Here is the forward port without the SCOABSPATH bits.

And how it looks on my platforms.
http://www.multitalents.net/head-status.html

-- 
Tim RiceMultitalents(707) 887-1469
[EMAIL PROTECTED]
--- libltdl/m4/libtool.m4.old   2005-11-08 12:11:19.0 -0800
+++ libltdl/m4/libtool.m4   2005-11-10 05:48:07.0 -0800
@@ -2364,13 +2364,6 @@
   sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
   ;;
 
-sco3.2v5*)
-  version_type=osf
-  soname_spec='${libname}${release}${shared_ext}$major'
-  library_names_spec='${libname}${release}${shared_ext}$versuffix 
${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  shlibpath_var=LD_LIBRARY_PATH
-  ;;
-
 solaris*)
   version_type=linux
   need_lib_prefix=no
@@ -2396,7 +2389,7 @@
   need_version=yes
   ;;
 
-sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+sysv4 | sysv4.3*)
   version_type=linux
   library_names_spec='${libname}${release}${shared_ext}$versuffix 
${libname}${release}${shared_ext}$major $libname${shared_ext}'
   soname_spec='${libname}${release}${shared_ext}$major'
@@ -2428,6 +2421,28 @@
   fi
   ;;
 
+sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
+  version_type=freebsd-elf
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='${libname}${release}${shared_ext}$versuffix 
${libname}${release}${shared_ext} $libname${shared_ext}'
+  soname_spec='${libname}${release}${shared_ext}$major'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=yes
+  hardcode_into_libs=yes
+  if test $with_gnu_ld = yes; then
+sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib 
/usr/lib /lib'
+  else
+sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
+case $host_os in
+  sco3.2v5*)
+sys_lib_search_path_spec=$sys_lib_search_path_spec /lib
+   ;;
+esac
+  fi
+  sys_lib_dlsearch_path_spec='/usr/lib'
+  ;;
+
 tpf*)
   # TPF is a cross-target only.  Preferred cross-host = GNU/Linux.
   version_type=linux
@@ -2849,19 +2864,15 @@
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-sco3.2v5*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
 solaris*)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]*)
+sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+sysv4 | sysv4.3*)
   case $host_vendor in
   motorola)
 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB 
(shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
@@ -2882,13 +2893,12 @@
   siemens)
 lt_cv_deplibs_check_method=pass_all
 ;;
+  pc)
+lt_cv_deplibs_check_method=pass_all
+;;
   esac
   ;;
 
-sysv4*uw2* | unixware7*)
-  lt_cv_deplibs_check_method=pass_all
-  ;;
-
 tpf*)
   lt_cv_deplibs_check_method=pass_all
   ;;
@@ -3490,15 +3500,6 @@
;;
   psos*)
;;
-  sco*)
-   case $cc_basename in
- CC*)
-   _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
-   ;;
- *)
-   ;;
-   esac
-   ;;
   solaris*)
case $cc_basename in
  CC*)
@@ -3530,6 +3531,15 @@
;;
esac
;;
+  sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+   case $cc_basename in
+ CC*)
+   _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+   _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+   _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+   ;;
+   esac
+   ;;
   tandem*)
case $cc_basename in
  NCC*)
@@ -3540,8 +3550,6 @@
;;
esac
;;
-  unixware*)
-   ;;
   vxworks*)
;;
   *)
@@ -3715,11 +3723,6 @@
   _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
   ;;
 
-sco3.2v5*)
-  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kpic'
-  _LT_TAGVAR(lt_prog_compiler_static, $1)='-dn'
-  ;;
-
 solaris*)
   _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
   _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
@@ -3737,7 +3740,7 @@
   _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
   ;;
 
-sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+sysv4 | sysv4.2uw2* | sysv4.3*)
   _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
   _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
   _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
@@ -3750,6 +3753,12 @@
   fi
   ;;
 
+sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+  _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+  _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+  ;;
+
 unicos*)
   _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
   

small change for nonrecursive

2005-11-10 Thread Ralf Wildenhues
include_HEADERS is a generic variable, too, so it should be appended as
well.  OK to apply to HEAD?

Cheers,
Ralf

* Makefile.am, libltdl/Makefile.inc (INSTALL_LTDL):
For nonrecursive mode, add to include_HEADERS as well.
* doc/libtool.texi (Invoking libtoolize, Distributing libltdl),
tests/nonrecursive.at: Adjusted, and removed TABS from .texi.

Index: Makefile.am
===
RCS file: /cvsroot/libtool/libtool/Makefile.am,v
retrieving revision 1.177
diff -u -r1.177 Makefile.am
--- Makefile.am 7 Nov 2005 14:16:14 -   1.177
+++ Makefile.am 10 Nov 2005 19:49:36 -
@@ -36,6 +36,7 @@
 MOSTLYCLEANFILES   =
 DISTCLEANFILES =
 
+include_HEADERS=
 noinst_LTLIBRARIES =
 lib_LTLIBRARIES=
 EXTRA_LTLIBRARIES  =
@@ -204,6 +205,7 @@
  echo 'AM_CPPFLAGS ='; \
  echo 'AM_LDFLAGS ='; \
  echo 'BUILT_SOURCES ='; \
+ echo 'include_HEADERS ='; \
  echo 'noinst_LTLIBRARIES ='; \
  echo 'lib_LTLIBRARIES ='; \
  echo 'EXTRA_LTLIBRARIES ='; \
Index: doc/libtool.texi
===
RCS file: /cvsroot/libtool/libtool/doc/libtool.texi,v
retrieving revision 1.204
diff -u -r1.204 libtool.texi
--- doc/libtool.texi7 Nov 2005 14:35:35 -   1.204
+++ doc/libtool.texi10 Nov 2005 19:49:36 -
@@ -2259,18 +2259,19 @@
 @example
 ## libltdl/Makefile.inc @r{appends to the following variables}
 ## @r{so we set them here before including it:}
-BUILT_SOURCES =
+BUILT_SOURCES   =
 
 AM_CPPFLAGS=
 AM_LDFLAGS =
 
+include_HEADERS=
 noinst_LTLIBRARIES =
-lib_LTLIBRARIES   =
+lib_LTLIBRARIES   =
 EXTRA_LTLIBRARIES  =
 
-EXTRA_DIST=
+EXTRA_DIST   =
 
-CLEANFILES=
+CLEANFILES   =
 MOSTLYCLEANFILES   =
 
 include libltdl/Makefile.inc
@@ -2707,7 +2708,7 @@
 
 @example
 trick$ @kbd{ls /usr/lib/libbfd*}
-/usr/lib/libbfd.a  /usr/lib/libbfd.so.2.7.0.2
+/usr/lib/libbfd.a   /usr/lib/libbfd.so.2.7.0.2
 /usr/lib/libbfd.so
 trick$
 @end example
@@ -4254,6 +4255,7 @@
 CLEANFILES =
 MOSTLYCLEANFILES =
 
+include_HEADERS =
 noinst_LTLIBRARIES =
 lib_LTLIBRARIES =
 EXTRA_LTLIBRARIES =
Index: libltdl/Makefile.inc
===
RCS file: /cvsroot/libtool/libtool/libltdl/Makefile.inc,v
retrieving revision 1.2
diff -u -r1.2 Makefile.inc
--- libltdl/Makefile.inc9 Nov 2005 21:38:09 -   1.2
+++ libltdl/Makefile.inc10 Nov 2005 19:49:36 -
@@ -39,7 +39,7 @@
 ltdlinclude_HEADERS= libltdl/libltdl/lt_system.h \
  libltdl/libltdl/lt_error.h \
  libltdl/libltdl/lt_dlloader.h
-include_HEADERS= libltdl/ltdl.h
+include_HEADERS   += libltdl/ltdl.h
 lib_LTLIBRARIES   += libltdl/libltdl.la
 endif
 
Index: tests/nonrecursive.at
===
RCS file: /cvsroot/libtool/libtool/tests/nonrecursive.at,v
retrieving revision 1.2
diff -u -r1.2 nonrecursive.at
--- tests/nonrecursive.at   10 Nov 2005 14:57:50 -  1.2
+++ tests/nonrecursive.at   10 Nov 2005 19:49:38 -
@@ -43,6 +43,7 @@
 AM_CPPFLAGS=
 AM_LDFLAGS =
 
+include_HEADERS=
 noinst_LTLIBRARIES =
 lib_LTLIBRARIES= foo.la
 EXTRA_LTLIBRARIES  =




Re: [patch 1/2] 307-gary-fix-recursive-ltdl-dist-rules.diff

2005-11-10 Thread Ralf Wildenhues
Hi Gary,

* Gary V. Vaughan wrote on Thu, Nov 10, 2005 at 11:35:49AM CET:
 Okay to commit?

No.  The test suite modifies the source.  After a testsuite run,
libltdl/Makefile.am will contain, for example, 6 lines of the form:
| EXTRA_DIST += ltdl.c

and quite a bit of other garbage.

 Your wish is my command -- now \(non\)?recursive modes don't blow up the
 make dist rule of parent projects.  This turned out to be more straight
 forward that I had expected, so I went ahead and did it myself.  It also
 exposes a bug in the testsuite which I'll address in my next patch.

Well, for me,
| Recursive Automake Libltdl.
|  34: distributing libltdl

fails because it wants to distribute configure.ac in one run,
and Makefile.inc in another, and

| Subproject Libltdl.
|  25: distributing libltdl  FAILED (subproject.at:109)

searches for Makefile.inc as well.  I assume all followup failures.

Since you do `make distcheck' inside our testsuite now, this patch _has_
to go in after undoing the `make -e'.  So it needs to come after my
patch, or will fail mysteriously in some environments.  :)

Further nits below.  Also, I wonder why you can't just add a
  LT_AT_MAKE([distcheck])
at the end of the existing tests.  That would save a bunch of time,
without really less test coverage?

Cheers,
Ralf

  Makefile.am   |   10 +-
  libltdl/Makefile.inc  |   41 +++--
  libtoolize.m4sh   |   13 +
  tests/nonrecursive.at |   24 
  tests/recursive.at|   19 +++
  tests/subproject.at   |   15 +++
  6 files changed, 111 insertions(+), 11 deletions(-)
 
 Index: libtool--devo--1.0/ChangeLog
 from  Gary V. Vaughan  [EMAIL PROTECTED]
   * libltdl/Makefile.inc (EXTRA_DIST): Move files that are not
   installed unconditionally to a client from here...
   * Makefile.am (EXTRA_DIST): ...to here.
   * libtoolize.m4sh: Append the paths to installed files to
   EXTRA_DIST in newly copied Makefile.am.
   * tests/nonrecursive.at, tests/recursive.at, tests/subproject.at:
   Add new dist tests to prevent a regression.
 
 Index: libtool--devo--1.0/Makefile.am
 ===
 --- libtool--devo--1.0.orig/Makefile.am
 +++ libtool--devo--1.0/Makefile.am
 @@ -214,7 +214,6 @@ $(srcdir)/libltdl/Makefile.am: $(srcdir)
   $(SED) -n '/^.. DO NOT REMOVE THIS LINE -- /,$$ \
   { s,libltdl_,,; s,libltdl/,,; s,: libltdl/,: ,; \
 s,\$$(libltdl_,$$(,; p; }' $$in  $$out;
 - chmod a-w $(srcdir)/libltdl/Makefile.am

Why do you need this?

  
  $(srcdir)/libltdl/Makefile.in: $(srcdir)/libltdl/Makefile.am
   cd $(srcdir)/libltdl  $(AUTOMAKE) Makefile
 @@ -229,6 +228,15 @@ all-local: $(srcdir)/libltdl/Makefile.in
  
  include libltdl/Makefile.inc
  
 +EXTRA_DIST +=  libltdl/Makefile.am \
 +   libltdl/Makefile.in \
 +   libltdl/Makefile.inc \
 +   libltdl/config-h.in \
 +   libltdl/configure \
 +   libltdl/configure.ac \
 +   libltdl/aclocal.m4 \
 +   libltdl/m4/lt~obsolete.m4
 +
  if ! LTDL_SUBDIR_LIBOBJS
  ## workaround for Autoconf 2.59, Automake 1.9.6:
  ## we include these files twice, because of missing LIBOBJDIR support.
 Index: libtool--devo--1.0/libltdl/Makefile.inc
 ===
 --- libtool--devo--1.0.orig/libltdl/Makefile.inc
 +++ libtool--devo--1.0/libltdl/Makefile.inc
 @@ -1,4 +1,4 @@
 -## Makefile.am -- Process this file with automake to produce Makefile.in
 +## Makefile.inc -- Process this file with automake to produce Makefile.in
  ##
  ## Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
  ##
 @@ -117,15 +117,7 @@ CLEANFILES  += libltdl/libltdl.la
  CLEANFILES  += $(LIBOBJS) $(LTLIBOBJS)
  
  EXTRA_DIST  += libltdl/COPYING.LIB \
 -   libltdl/Makefile.am \
 -   libltdl/Makefile.in \
 -   libltdl/Makefile.inc \
 -   libltdl/README \
 -   libltdl/config-h.in \
 -   libltdl/configure \
 -   libltdl/configure.ac \
 -   libltdl/aclocal.m4 \
 -   libltdl/m4/lt~obsolete.m4
 +   libltdl/README
  
  ## --- ##
  ## Gnulib Makefile.am snippets ##
 Index: libtool--devo--1.0/libtoolize.m4sh
 ===
 --- libtool--devo--1.0.orig/libtoolize.m4sh
 +++ libtool--devo--1.0/libtoolize.m4sh
 @@ -1066,6 +1066,19 @@ func_nonemptydir_p ()
  
  func_copy_some_files $pkgltdl_files $pkgltdldir/libltdl $ltdldir
  
 +# Fixup the EXTRA_DIST contents in Makefile.inc if necessary
 +my_makefile=$ltdldir/Makefile.am
 +test -f $ltdldir/Makefile.inc  

Re: FYI: set macrodir correctly for installcheck [301]

2005-11-10 Thread Gary V. Vaughan
Ralf Wildenhues wrote:
 Hi Gary,

Hallo Ralf!

 * Gary V. Vaughan wrote on Thu, Nov 10, 2005 at 06:52:45PM CET:
 
Applied to HEAD.

Had to tweak slightly to make test-5 work with installcheck.
 
 
 Why?  That would be a bug.  The whole point of tst_aclocaldir was that
 it does _not_ appear in libtoolize.
 
 And in fact, over here, this change:
 
 
  --- orig/libtoolize.m4sh
  +++ mod/libtoolize.m4sh
  @@ -1030,6 +1030,7 @@
   pkgdatadir=$_lt_pkgdatadir/libltdl
   aclocaldir=$_lt_pkgdatadir/libltdl/m4
 fi
  +  test -n $tst_aclocaldir  aclocaldir=$tst_aclocaldir
 func_nonemptydir_p pkgltdldir
 func_nonemptydir_p pkgdatadir
 func_nonemptydir_p aclocaldir
 
 
 is not needed at all.

Huh?  test 5 can't possibly pass for installcheck without it, because
there is no setting for _lt_pkgdatadir in INSTALLCHECK_ENVIRONMENT...
I'm all for a cleaner fix than my tweak if you have it though! :-)

Cheers,
Gary.
-- 
Gary V. Vaughan  ())_.  [EMAIL PROTECTED],gnu.org}
Research Scientist   ( '/   http://tkd.kicks-ass.net
GNU Hacker   / )=   http://www.gnu.org/software/libtool
Technical Author   `(_~)_   http://sources.redhat.com/autobook


signature.asc
Description: OpenPGP digital signature


Re: FYI: set macrodir correctly for installcheck [301]

2005-11-10 Thread Ralf Wildenhues
Hi Gary,

* Gary V. Vaughan wrote on Thu, Nov 10, 2005 at 09:06:40PM CET:
 Ralf Wildenhues wrote:
  * Gary V. Vaughan wrote on Thu, Nov 10, 2005 at 06:52:45PM CET:
 
 Had to tweak slightly to make test-5 work with installcheck.
  
  Why?  That would be a bug.  The whole point of tst_aclocaldir was that
  it does _not_ appear in libtoolize.
  
  And in fact, over here, this change:

   +  test -n $tst_aclocaldir  aclocaldir=$tst_aclocaldir
  
  is not needed at all.
 
 Huh?  test 5 can't possibly pass for installcheck without it, because
 there is no setting for _lt_pkgdatadir in INSTALLCHECK_ENVIRONMENT...
 I'm all for a cleaner fix than my tweak if you have it though! :-)

Did you actually see this failure?  If yes, could you please post the
corresponding testsuite.log failure output?

For installcheck, the normal pkgdatadir setting in libtoolize should
just suffice: the files will be installed there.  And, in fact, both
`installcheck' after `make install' as well as `distcheck' pass here
without above line.

Cheers,
Ralf




Re: [patch 1/2] 307-gary-fix-recursive-ltdl-dist-rules.diff

2005-11-10 Thread Gary V. Vaughan
Argh! I seem to have posted an in development version of this patch
somehow, sorry.  Here is the real patch.  If you had weird non-repeatable
results in tests, and corrupted libltdl/Makefile.am before, this version
doesn't have that problem.

Okay to commit this version?

Cheers,
Gary.

 Makefile.am   |   10 +++-
 libltdl/Makefile.inc  |   10 
 libtoolize.m4sh   |   61 +-
 tests/libtoolize.at   |2 -
 tests/nonrecursive.at |   30 
 tests/recursive.at|   25 
 tests/subproject.at   |   21 +
 7 files changed, 128 insertions(+), 31 deletions(-)

Index: libtool--devo--1.0/ChangeLog
from  Gary V. Vaughan  [EMAIL PROTECTED]
* libltdl/Makefile.inc (EXTRA_DIST): Move files that are not
installed unconditionally to a client from here...
* Makefile.am (EXTRA_DIST): ...to here.
* libtoolize.m4sh: Append the paths to installed files to
EXTRA_DIST in newly copied Makefile.am.
(func_copy_cb): Add glob_nolink argument for files that cannot be
softlinked during ltdl installation.  Changed all callers.
* tests/libtoolize.at: Adjust output matching for glob_nolink
files.
* tests/nonrecursive.at, tests/recursive.at, tests/subproject.at:
Add new dist tests to prevent a regression.

Index: libtool--devo--1.0/Makefile.am
===
--- libtool--devo--1.0.orig/Makefile.am
+++ libtool--devo--1.0/Makefile.am
@@ -214,7 +214,6 @@ $(srcdir)/libltdl/Makefile.am: $(srcdir)
$(SED) -n '/^.. DO NOT REMOVE THIS LINE -- /,$$ \
{ s,libltdl_,,; s,libltdl/,,; s,: libltdl/,: ,; \
  s,\$$(libltdl_,$$(,; p; }' $$in  $$out;
-   chmod a-w $(srcdir)/libltdl/Makefile.am
 
 $(srcdir)/libltdl/Makefile.in: $(srcdir)/libltdl/Makefile.am
cd $(srcdir)/libltdl  $(AUTOMAKE) Makefile
@@ -229,6 +228,15 @@ all-local: $(srcdir)/libltdl/Makefile.in
 
 include libltdl/Makefile.inc
 
+EXTRA_DIST +=libltdl/Makefile.am \
+ libltdl/Makefile.in \
+ libltdl/Makefile.inc \
+ libltdl/config-h.in \
+ libltdl/configure \
+ libltdl/configure.ac \
+ libltdl/aclocal.m4 \
+ libltdl/m4/lt~obsolete.m4
+
 if ! LTDL_SUBDIR_LIBOBJS
 ## workaround for Autoconf 2.59, Automake 1.9.6:
 ## we include these files twice, because of missing LIBOBJDIR support.
Index: libtool--devo--1.0/libltdl/Makefile.inc
===
--- libtool--devo--1.0.orig/libltdl/Makefile.inc
+++ libtool--devo--1.0/libltdl/Makefile.inc
@@ -117,15 +117,7 @@ CLEANFILES+= libltdl/libltdl.la
 CLEANFILES+= $(LIBOBJS) $(LTLIBOBJS)
 
 EXTRA_DIST+= libltdl/COPYING.LIB \
- libltdl/Makefile.am \
- libltdl/Makefile.in \
- libltdl/Makefile.inc \
- libltdl/README \
- libltdl/config-h.in \
- libltdl/configure \
- libltdl/configure.ac \
- libltdl/aclocal.m4 \
- libltdl/m4/lt~obsolete.m4
+ libltdl/README
 
 ## --- ##
 ## Gnulib Makefile.am snippets ##
Index: libtool--devo--1.0/libtoolize.m4sh
===
--- libtool--devo--1.0.orig/libtoolize.m4sh
+++ libtool--devo--1.0/libtoolize.m4sh
@@ -192,7 +192,7 @@ configure_ac=configure.in
 }
 
 
-# func_copy srcfile destfile
+# func_copy srcfile destfile [glob_nolink]
 # A wrapper for func_copy_cb that accepts arguments in the same order
 # as the cp(1) shell command.
 func_copy ()
@@ -217,7 +217,8 @@ func_copy ()
 
   func_copy_cb $my_f1 \
 `$ECHO X$1 | $Xsed -e $dirname` \
-`$ECHO X$2 | $Xsed -e $dirname`
+`$ECHO X$2 | $Xsed -e $dirname` \
+   $3
 
 fi
 
@@ -225,16 +226,18 @@ func_copy ()
 }
 
 
-# func_copy_cb filename srcdir destdir
+# func_copy_cb filename srcdir destdir [glob_nolink]
 # If option `--copy' was specified, or soft-linking SRCFILE to DESTFILE fails,
 # then try to copy SRCFILE to DESTFILE (without changing the timestamp if
-# possible).
+# possible).  If FILENAME matches GLOB_NOLINK, it will never be softlinked.
 func_copy_cb ()
 {
 $opt_debug
 my_file=$1
 my_srcdir=$2
 my_destdir=$3
+my_glob_nolink=$4
+my_opt_link=$opt_link
 copy_return_status=1
 
 # Libtool is probably misinstalled if this happens:
@@ -248,7 +251,11 @@ func_copy_cb ()
 func_mkdir_p `$ECHO X$my_destdir/$my_file | $Xsed -e $dirname`
 
 $RM $my_destdir/$my_file
-if $opt_link  $LN_S $my_srcdir/$my_file $my_destdir/$my_file; then
+if test -n $my_glob_nolink; then
+  eval 

Re: [patch 1/2] 307-gary-fix-recursive-ltdl-dist-rules.diff

2005-11-10 Thread Gary V. Vaughan
Ralf Wildenhues wrote:
 Hi Gary,

Hallo Ralf,

Thanks for the review!

 * Gary V. Vaughan wrote on Thu, Nov 10, 2005 at 11:35:49AM CET:
 
Okay to commit?
 
 No.  The test suite modifies the source.  After a testsuite run,
 libltdl/Makefile.am will contain, for example, 6 lines of the form:
 | EXTRA_DIST += ltdl.c
 
 and quite a bit of other garbage.

Argh... the only fiddly bit of the patch was adding the glob_nolink
parameters so that I could make sure that Makefile.{am,inc} are
always copied to prevent the EXTRA_DIST goo from following the link
back to the source file.  It works for me, can you debug it on your
machine?  Or send me a trace please?

Your wish is my command -- now \(non\)?recursive modes don't blow up the
make dist rule of parent projects.  This turned out to be more straight
forward that I had expected, so I went ahead and did it myself.  It also
exposes a bug in the testsuite which I'll address in my next patch.
 
 
 Well, for me,
 | Recursive Automake Libltdl.
 |  34: distributing libltdl
 
 fails because it wants to distribute configure.ac in one run,
 and Makefile.inc in another, and

That's because your source Makefile.am is corrupted.

 | Subproject Libltdl.
 |  25: distributing libltdl  FAILED 
 (subproject.at:109)
 
 searches for Makefile.inc as well.  I assume all followup failures.

Likewise.

 Since you do `make distcheck' inside our testsuite now, this patch _has_
 to go in after undoing the `make -e'.  So it needs to come after my
 patch, or will fail mysteriously in some environments.  :)

Oh yes, good point.  Okay, NP.

 Further nits below.  Also, I wonder why you can't just add a
   LT_AT_MAKE([distcheck])

Force of habit.  Yes, s/all distcheck/distcheck/g is better.  Thanks.

 at the end of the existing tests.  That would save a bunch of time,
 without really less test coverage?

ACK.

Index: libtool--devo--1.0/ChangeLog
from  Gary V. Vaughan  [EMAIL PROTECTED]
  * libltdl/Makefile.inc (EXTRA_DIST): Move files that are not
  installed unconditionally to a client from here...
  * Makefile.am (EXTRA_DIST): ...to here.
  * libtoolize.m4sh: Append the paths to installed files to
  EXTRA_DIST in newly copied Makefile.am.
  * tests/nonrecursive.at, tests/recursive.at, tests/subproject.at:
  Add new dist tests to prevent a regression.

Index: libtool--devo--1.0/Makefile.am
===
--- libtool--devo--1.0.orig/Makefile.am
+++ libtool--devo--1.0/Makefile.am
@@ -214,7 +214,6 @@ $(srcdir)/libltdl/Makefile.am: $(srcdir)
  $(SED) -n '/^.. DO NOT REMOVE THIS LINE -- /,$$ \
  { s,libltdl_,,; s,libltdl/,,; s,: libltdl/,: ,; \
s,\$$(libltdl_,$$(,; p; }' $$in  $$out;
- chmod a-w $(srcdir)/libltdl/Makefile.am
 
 
 Why do you need this?

We use tar to install Makefile.am into the user's tree so permission
bit are propogated into the user's tree, Without the writable bit the
EXTRA_DIST stanzas can't be concatenated by libtoolize... I should
note that in the ChangeLog, sorry.

Index: libtool--devo--1.0/libtoolize.m4sh
===
--- libtool--devo--1.0.orig/libtoolize.m4sh
+++ libtool--devo--1.0/libtoolize.m4sh
@@ -1066,6 +1066,19 @@ func_nonemptydir_p ()
 
 func_copy_some_files $pkgltdl_files $pkgltdldir/libltdl $ltdldir
 
+# Fixup the EXTRA_DIST contents in Makefile.inc if necessary
+my_makefile=$ltdldir/Makefile.am
+test -f $ltdldir/Makefile.inc  my_makefile=$ltdldir/Makefile.inc
+set -x
  
 Remove your debugging traces! ;)
 (They make tests fail, too)

Ah boo... brown paper bag please!

+my_save_IFS=$IFS
+IFS=:
+for file in $pkgltdl_files; do
+  IFS=$my_save_IFS
+  test nonrecursive = $ltdl_mode  file=$ltdldir/$file
+  echo EXTRA_DIST += $file  $my_makefile
+done
+IFS=$my_save_IFS
+set +x 
 
 Ditto.

Make that two...

Cheers,
Gary.
-- 
Gary V. Vaughan  ())_.  [EMAIL PROTECTED],gnu.org}
Research Scientist   ( '/   http://tkd.kicks-ass.net
GNU Hacker   / )=   http://www.gnu.org/software/libtool
Technical Author   `(_~)_   http://sources.redhat.com/autobook


signature.asc
Description: OpenPGP digital signature


Re: [patch 1/2] 307-gary-fix-recursive-ltdl-dist-rules.diff

2005-11-10 Thread Ralf Wildenhues
Hi Gary,

* Gary V. Vaughan wrote on Thu, Nov 10, 2005 at 09:39:27PM CET:
 Argh! I seem to have posted an in development version of this patch
 somehow, sorry.  Here is the real patch.  If you had weird non-repeatable
 results in tests, and corrupted libltdl/Makefile.am before, this version
 doesn't have that problem.

Good.  

 Okay to commit this version?

No.  With this, in any of the three subproject/(non)recursive modes,
one of Makefile.{am,inc} will end up with a newer time stamp (and
Makefile.in won't match Makefile.am's contents).

This breaks your long work on making libltdl/subproject installable and
usable without Autoconf or Automake.  Even more, aclocal.m4 won't be out
of date, so aclocal won't be run, but a subsequent automake will fail if
its version doesn't match exactly the one you used to build Libtool.

Our installed Makefile.{am,in} should look exactly like they end up for
subproject, and not be modified for them, I believe.  The other modes do
not care about rerunning autotools: for them it is required anyway.

Cheers,
Ralf

 Index: libtool--devo--1.0/ChangeLog
 from  Gary V. Vaughan  [EMAIL PROTECTED]
   * libltdl/Makefile.inc (EXTRA_DIST): Move files that are not
   installed unconditionally to a client from here...
   * Makefile.am (EXTRA_DIST): ...to here.
   * libtoolize.m4sh: Append the paths to installed files to
   EXTRA_DIST in newly copied Makefile.am.
   (func_copy_cb): Add glob_nolink argument for files that cannot be
   softlinked during ltdl installation.  Changed all callers.
   * tests/libtoolize.at: Adjust output matching for glob_nolink
   files.
   * tests/nonrecursive.at, tests/recursive.at, tests/subproject.at:
   Add new dist tests to prevent a regression.




Re: SCO/bugfix patch 7 of 10: Improve SCO platform support

2005-11-10 Thread Kean Johnston

The way I understand your intentions, it should suffice if you can
decide at configure time about the absoluteness of the paths (rather
than at link time).  So you could do this instead:

  if test -z $SCOABSPATH; then
archive_cmds='bla bla'
archive_expsyms_cmds='bla otherbla'
  else
# ...
  fi

which would be at least a lot more readable.

Sure, I can do that, I'm open for compromise :) The only reason
I did it the way it currently stands is it allows me to do the
following:

  ./configure
  make install
  make clean
  SCOABSPATH=1 make install DESTDIR=/whatever

with no intervening re-running of configure in between. In fact
the SCOABSPATH thing as it currently stands used to look a great
deal neater. Perhaps this would be more acceptable (I suspect it
might), so that I can preserve the above behaviour (line split
by mailer, not in script):

  archive_cmds='$CC -shared
${wl},-h${SCOABSPATH:+${install_libdir}/}$soname -o $lib
$libobjs $deplibs $compiler_flags'

It has the exact same effect, but looks a *great* deal cleaner.
In fact, before I submitted the patch thats how it looked. I
changed it to the current mechanism becuase I thought it made
it more obvious what was happening. But I can see your point
about it being ugly as sin.

If even that is too ugly for you, then I guess I can live with
the pain of having to re-run configure to enable the absolute
path stuff, but I'm really hoping not :)


about moving the hack forward if that doesn't work out).  At the first
occurrence of SCOABSPATH, please add a comment that this thingy will not
be supported, and that it breaks testing of uninstalled libraries.

I can certainly do that. Is there a suitable place in the doc
for platform specific quirks that I can document it more
eloquently and obviously too?

Kean




Re: SCO/bugfix patch 7 of 10: Improve SCO platform support

2005-11-10 Thread Ralf Wildenhues
Hi Kean,

* Kean Johnston wrote on Thu, Nov 10, 2005 at 10:35:09PM CET:
 The way I understand your intentions, it should suffice if you can
 decide at configure time about the absoluteness of the paths (rather
 than at link time).  So you could do this instead:
 
   if test -z $SCOABSPATH; then

 which would be at least a lot more readable.
 Sure, I can do that, I'm open for compromise :) The only reason
 I did it the way it currently stands is it allows me to do the
 following:
 
   ./configure
   make install
   make clean
   SCOABSPATH=1 make install DESTDIR=/whatever

I know.  You could even `find . -name \*.la | xargs rm' to avoid the
`make clean'.

 with no intervening re-running of configure in between. In fact
 the SCOABSPATH thing as it currently stands used to look a great
 deal neater. Perhaps this would be more acceptable (I suspect it
 might), so that I can preserve the above behaviour (line split
 by mailer, not in script):
 
   archive_cmds='$CC -shared
 ${wl},-h${SCOABSPATH:+${install_libdir}/}$soname -o $lib
 $libobjs $deplibs $compiler_flags'
 
 It has the exact same effect, but looks a *great* deal cleaner.
 In fact, before I submitted the patch thats how it looked. I
 changed it to the current mechanism becuase I thought it made
 it more obvious what was happening. But I can see your point
 about it being ugly as sin.

Well, this is better than your previous version.  Still, innocent users
happening to compile a package see the SCOABSPATH, and this is what bugs
me (yes, I know #users = 2).

 If even that is too ugly for you, then I guess I can live with
 the pain of having to re-run configure to enable the absolute
 path stuff, but I'm really hoping not :)

Since this is really for a dying libtool branch, what the heck, repost
as above.  At least it would match your usage pattern with
-absolute-soname, too.

 about moving the hack forward if that doesn't work out).  At the first
 occurrence of SCOABSPATH, please add a comment that this thingy will not
 be supported, and that it breaks testing of uninstalled libraries.
 I can certainly do that. Is there a suitable place in the doc
 for platform specific quirks that I can document it more
 eloquently and obviously too?

I had hoped doc/notes.texi (CVS HEAD) to be for platform specific
questions, but: I definitely don't want to see it in there.  I don't
want it prominently documented; just people that find it anyway should
also be able to find the comment do not rely on this.

Cheers,
Ralf




On HP-UX 11.x, link with cc, not ld (sync with HEAD)

2005-11-10 Thread Albert Chin
On HEAD, we link with cc rather than ld on HP-UX 11.x. Backport to
1.5. Dunno why I didn't do this long time ago when I submitted the cc
linking patches for Solaris, IRIX, etc.

2005-11-10  Albert Chin-A-Young  [EMAIL PROTECTED]

* libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [ hpux10 ]:
Link with cc rather than ld (backport from HEAD).

-- 
albert chin ([EMAIL PROTECTED])
Index: libtool.m4
===
RCS file: /cvsroot/libtool/libtool/Attic/libtool.m4,v
retrieving revision 1.314.2.128
diff -u -3 -p -r1.314.2.128 libtool.m4
--- libtool.m4  10 Nov 2005 18:29:38 -  1.314.2.128
+++ libtool.m4  11 Nov 2005 03:44:03 -
@@ -5792,7 +5792,26 @@ EOF
   _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
   ;;
 
-hpux10* | hpux11*)
+hpux10*)
+  if test $GCC = yes; then
+   _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname 
${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+  else
+   _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir 
-o $lib $libobjs $deplibs $linker_flags'
+  fi
+  if test $with_gnu_ld = no; then
+   _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+   _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
+
+   _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+   _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+
+   # hardcode_minus_L: Not really in the search PATH,
+   # but as the default location of the library.
+   _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
+  fi
+  ;;
+
+hpux11*)
   if test $GCC = yes -a $with_gnu_ld = no; then
case $host_cpu in
hppa*64*|ia64*)
@@ -5805,10 +5824,10 @@ EOF
   else
case $host_cpu in
hppa*64*|ia64*)
- _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $libobjs 
$deplibs $linker_flags'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib 
$libobjs $deplibs $compiler_flags'
  ;;
*)
- _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir 
-o $lib $libobjs $deplibs $linker_flags'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b 
${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
  ;;
esac
   fi