Re: verbose test output (was: MSVC: Preloading in ltdl doesn't heed libname_spec.)

2010-07-08 Thread Bob Friesenhahn

On Thu, 8 Jul 2010, Ralf Wildenhues wrote:



I am thinking that the many test failures under Debian Linux are due
to it using older tool versions such as Autoconf 2.61.


Facts, not thinking, please.  We cannot read your computer's mind.


In this case, the thinking was correct.  Many Debian tests are failing 
due to a demand for Autoconf 2.62 (which Debian stable does not 
supply).  However, as if today, only 6 of 116 tests failed, which is a 
big improvement from a day ago.  Also, as of today, for FreeBSD and 
OS-X "All tests behaved as expected", which is an improvement.


Bob
--
Bob Friesenhahn
bfrie...@simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,http://www.GraphicsMagick.org/



verbose test output (was: MSVC: Preloading in ltdl doesn't heed libname_spec.)

2010-07-08 Thread Ralf Wildenhues
Hello Bob,

* Bob Friesenhahn wrote on Thu, Jul 08, 2010 at 06:34:46PM CEST:
> On Tue, 6 Jul 2010, Ralf Wildenhues wrote:
> >>
> >>Perhaps things are not all that bad.  While 35 of 110 tests fail
> >>under Debian Linux, only these two extra are failing under FreeBSD,
> >>OS-X, and Solaris:
> >>
> >>FAIL: tests/mdemo2-make.test
> >>FAIL: tests/pdemo-make.test
> >
> >It would probably be even more helpful if you posted verbose test
> >failure output (or excerpts), that would make assigning blame easier,
> >I guess.
> 
> Yes.  And in fact it would be even better if the test suite always
> produced/retained "verbose" output for failed tests so that the
> information is always immediately available on demand.

That *is* already the case for the new testsuite.  It even tells you at
the end where to find the file, and to send it.

>  The fact
> that it does not should be considered to be a bug.

For the old testsuite, it will be the case once I have finished the
conversion to the Automake parallel-tests driver.  No wait long but no
time have right now.  Gimme a couple of weekends.

> I am thinking that the many test failures under Debian Linux are due
> to it using older tool versions such as Autoconf 2.61.

Facts, not thinking, please.  We cannot read your computer's mind.

Thanks!
Ralf



Re: MSVC: Preloading in ltdl doesn't heed libname_spec.

2010-07-08 Thread Bob Friesenhahn

On Tue, 6 Jul 2010, Ralf Wildenhues wrote:


Perhaps things are not all that bad.  While 35 of 110 tests fail
under Debian Linux, only these two extra are failing under FreeBSD,
OS-X, and Solaris:

FAIL: tests/mdemo2-make.test
FAIL: tests/pdemo-make.test


It would probably be even more helpful if you posted verbose test
failure output (or excerpts), that would make assigning blame easier,
I guess.


Yes.  And in fact it would be even better if the test suite always 
produced/retained "verbose" output for failed tests so that the 
information is always immediately available on demand.  The fact that 
it does not should be considered to be a bug.


I am thinking that the many test failures under Debian Linux are due 
to it using older tool versions such as Autoconf 2.61.


Bob
--
Bob Friesenhahn
bfrie...@simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,http://www.GraphicsMagick.org/



Re: MSVC: Preloading in ltdl doesn't heed libname_spec.

2010-07-08 Thread Peter Rosin

Hi Ralf,

Den 2010-07-06 07:52 skrev Ralf Wildenhues:

Hi Peter,

any chance you could post your patches inline?  Thanks.


Will do in the future, I hope they will not end up wrapped though...


* Peter Rosin wrote on Mon, Jul 05, 2010 at 02:45:28PM CEST:

http://lists.gnu.org/archive/html/libtool-patches/2009-01/msg00152.html


This is ok with nits below addressed, thanks.


72 hours have passed, no more comments so I'm pushing with nits taken
care of.

Cheers and thanks very much for reviewing,
Peter



Re: MSVC: Preloading in ltdl doesn't heed libname_spec.

2010-07-06 Thread Gary V. Vaughan
Howdy Bob,

On 6 Jul 2010, at 13:19, Ralf Wildenhues wrote:
> * Bob Friesenhahn wrote on Tue, Jul 06, 2010 at 06:48:56AM CEST:
>> On Mon, 5 Jul 2010, Bob Friesenhahn wrote:
>>> Yesterday's libtool was doing quite good with the tests but I am
>>> seeing plenty of failures now for all Unixish targets.  Even Linux
>>> blows failures all over the place.  Not to worry, it is likely
>>> something simple.
>> 
>> Perhaps things are not all that bad.  While 35 of 110 tests fail
>> under Debian Linux, only these two extra are failing under FreeBSD,
>> OS-X, and Solaris:
>> 
>> FAIL: tests/mdemo2-make.test
>> FAIL: tests/pdemo-make.test

You might want to run the new testsuite verbosely too for more
context:

  make check TESTS= TESTSUITEFLAGS='-v'

> It would probably be even more helpful if you posted verbose test
> failure output (or excerpts), that would make assigning blame easier,
> I guess.

For the record, at this commit:

2010-07-05  Peter Rosin  

* tests/export.at [MSVC]: dllimport all imported variables.

All tests behave as expected on Mac OS 10.6.3 (although I have no
gcj or gfortran).

Cheers,
-- 
Gary V. Vaughan (g...@gnu.org)



Re: MSVC: Preloading in ltdl doesn't heed libname_spec.

2010-07-05 Thread Ralf Wildenhues
Hi Bob,

* Bob Friesenhahn wrote on Tue, Jul 06, 2010 at 06:48:56AM CEST:
> On Mon, 5 Jul 2010, Bob Friesenhahn wrote:
> >Yesterday's libtool was doing quite good with the tests but I am
> >seeing plenty of failures now for all Unixish targets.  Even Linux
> >blows failures all over the place.  Not to worry, it is likely
> >something simple.
> 
> Perhaps things are not all that bad.  While 35 of 110 tests fail
> under Debian Linux, only these two extra are failing under FreeBSD,
> OS-X, and Solaris:
> 
> FAIL: tests/mdemo2-make.test
> FAIL: tests/pdemo-make.test

It would probably be even more helpful if you posted verbose test
failure output (or excerpts), that would make assigning blame easier,
I guess.

Cheers,
Ralf



Re: MSVC: Preloading in ltdl doesn't heed libname_spec.

2010-07-05 Thread Ralf Wildenhues
Hi Peter,

any chance you could post your patches inline?  Thanks.

* Peter Rosin wrote on Mon, Jul 05, 2010 at 02:45:28PM CEST:
> http://lists.gnu.org/archive/html/libtool-patches/2009-01/msg00152.html

This is ok with nits below addressed, thanks.

> Make preloading heed libname_spec.
> 
> * libltdl/ltdl.c (libprefix): New static variable describing
> the prefix of static archives.
> (try_dlopen): Use libprefix.
> * libltdl/m4/ltdl.m4 (_LTDL_SETUP): Export prefix of static
> archives to config.h.

Please mention which test case is fixed on which system/compiler by this
patch (the ones you know for sure).

> --- a/libltdl/ltdl.c
> +++ b/libltdl/ltdl.c
> @@ -54,6 +54,10 @@ or obtained by writing to the Free Software Foundation, 
> Inc.,
>  #  define LT_LIBEXT "a"
>  #endif
>  
> +#if !defined(LT_LIBPREFIX)
> +#  define LT_LIBPREFIX "lib"
> +#endif
> +
>  /* This is the maximum symbol size that won't require malloc/free */
>  #undef   LT_SYMBOL_LENGTH
>  #define LT_SYMBOL_LENGTH 128
> @@ -72,6 +76,7 @@ or obtained by writing to the Free Software Foundation, 
> Inc.,
>  static   const char  objdir[]= LT_OBJDIR;
>  static   const char  archive_ext[]   = LT_ARCHIVE_EXT;
>  static  const char   libext[]= LT_LIBEXT;
> +static  const char   libprefix[] = LT_LIBPREFIX;
>  #if defined(LT_MODULE_EXT)
>  static   const char  shlib_ext[] = LT_MODULE_EXT;
>  #endif
> @@ -1272,8 +1277,8 @@ try_dlopen (lt_dlhandle *phandle, const char *filename, 
> const char *ext,
>  
>if (vtable)
>   {
> -   /* name + "." + libext + NULL */
> -   archive_name = MALLOC (char, LT_STRLEN (name) + strlen (libext) + 2);
> +   /* libprefix + name + "." + libext + NULL */
> +   archive_name = MALLOC (char, strlen (libprefix) + LT_STRLEN (name) + 
> strlen (libext) + 2);
> *phandle = (lt_dlhandle) lt__zalloc (sizeof (struct lt__handle));
>  
> if ((*phandle == NULL) || (archive_name == NULL))
> @@ -1285,7 +1290,14 @@ try_dlopen (lt_dlhandle *phandle, const char 
> *filename, const char *ext,
>  
> /* Preloaded modules are always named according to their old
>archive name.  */
> -   sprintf (archive_name, "%s.%s", name, libext);
> +   if (strncmp(name, "lib", 3) == 0)
> + {
> +   sprintf (archive_name, "%s%s.%s", libprefix, name + 3, libext);
> + }
> +   else
> + {
> +   sprintf (archive_name, "%s.%s", name, libext);
> + }
>  
> if (tryall_dlopen (&newhandle, archive_name, advise, vtable) == 0)
>   {

> --- a/libltdl/m4/ltdl.m4
> +++ b/libltdl/m4/ltdl.m4
> @@ -410,6 +410,11 @@ AC_CHECK_FUNCS([strlcat strlcpy], [], 
> [AC_LIBOBJ([lt__strl])])
>  m4_pattern_allow([LT_LIBEXT])dnl
>  AC_DEFINE_UNQUOTED([LT_LIBEXT],["$libext"],[The archive extension])
>  
> +name=
> +lt_libprefix=`eval "\\$ECHO \"$libname_spec\""`

This is simpler, less buggy, and more efficiently written as
   eval "lt_libprefix=\"$libname_spec\""

> +m4_pattern_allow([LT_LIBPREFIX])dnl
> +AC_DEFINE_UNQUOTED([LT_LIBPREFIX],["$lt_libprefix"],[The archive prefix])
> +
>  name=ltdl
>  LTDLOPEN=`eval "\\$ECHO \"$libname_spec\""`

This, too.

>  AC_SUBST([LTDLOPEN])

Cheers,
Ralf



Re: MSVC: Preloading in ltdl doesn't heed libname_spec.

2010-07-05 Thread Bob Friesenhahn

On Mon, 5 Jul 2010, Bob Friesenhahn wrote:


On Mon, 5 Jul 2010, Peter Rosin wrote:


Inspired by the remarkable progress, I'm bringing up this
patch again.


It would be good if the progress was even more remarkable. Yesterday's 
libtool was doing quite good with the tests but I am seeing plenty of 
failures now for all Unixish targets.  Even Linux blows failures all over the 
place.  Not to worry, it is likely something simple.


Perhaps things are not all that bad.  While 35 of 110 tests fail under 
Debian Linux, only these two extra are failing under FreeBSD, OS-X, 
and Solaris:


FAIL: tests/mdemo2-make.test
FAIL: tests/pdemo-make.test

Bob
--
Bob Friesenhahn
bfrie...@simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,http://www.GraphicsMagick.org/



Re: MSVC: Preloading in ltdl doesn't heed libname_spec.

2010-07-05 Thread Bob Friesenhahn

On Mon, 5 Jul 2010, Peter Rosin wrote:


Inspired by the remarkable progress, I'm bringing up this
patch again.


It would be good if the progress was even more remarkable. 
Yesterday's libtool was doing quite good with the tests but I am 
seeing plenty of failures now for all Unixish targets.  Even Linux 
blows failures all over the place.  Not to worry, it is likely 
something simple.


Bob
--
Bob Friesenhahn
bfrie...@simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,http://www.GraphicsMagick.org/



MSVC: Preloading in ltdl doesn't heed libname_spec.

2010-07-05 Thread Peter Rosin

Hi!

Inspired by the remarkable progress, I'm bringing up this
patch again.

The discussion dead-ended last time without anything being
merged into any branch, but follow this thread to get up to
speed:
http://lists.gnu.org/archive/html/libtool-patches/2009-01/msg00152.html

The patch has seen (very) minor adjustments to changes since
then, but the principle is exactly the same.

Cheers,
Peter
commit d2cec6695c6048487774c869d08ddd165ca3c21e
Author: Peter Rosin 
Date:   Mon Jan 26 09:11:44 2009 +0100

Make preloading heed libname_spec.

* libltdl/ltdl.c (libprefix): New static variable describing
the prefix of static archives.
(try_dlopen): Use libprefix.
* libltdl/m4/ltdl.m4 (_LTDL_SETUP): Export prefix of static
archives to config.h.

diff --git a/ChangeLog b/ChangeLog
index f5fa68f..73912d3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2009-11-24  Peter Rosin  
+
+	Make preloading heed libname_spec.
+	* libltdl/ltdl.c (libprefix): New static variable describing
+	the prefix of static archives.
+	(try_dlopen): Use libprefix.
+	* libltdl/m4/ltdl.m4 (_LTDL_SETUP): Export prefix of static
+	archives to config.h.
+
 2010-07-05  Peter Rosin  
 
 	* tests/export.at [MSVC]: dllimport all imported variables.
diff --git a/libltdl/ltdl.c b/libltdl/ltdl.c
index 1213f0d..992584c 100644
--- a/libltdl/ltdl.c
+++ b/libltdl/ltdl.c
@@ -54,6 +54,10 @@ or obtained by writing to the Free Software Foundation, Inc.,
 #  define LT_LIBEXT "a"
 #endif
 
+#if !defined(LT_LIBPREFIX)
+#  define LT_LIBPREFIX "lib"
+#endif
+
 /* This is the maximum symbol size that won't require malloc/free */
 #undef	LT_SYMBOL_LENGTH
 #define LT_SYMBOL_LENGTH	128
@@ -72,6 +76,7 @@ or obtained by writing to the Free Software Foundation, Inc.,
 static	const char	objdir[]		= LT_OBJDIR;
 static	const char	archive_ext[]		= LT_ARCHIVE_EXT;
 static  const char	libext[]		= LT_LIBEXT;
+static  const char	libprefix[]		= LT_LIBPREFIX;
 #if defined(LT_MODULE_EXT)
 static	const char	shlib_ext[]		= LT_MODULE_EXT;
 #endif
@@ -1272,8 +1277,8 @@ try_dlopen (lt_dlhandle *phandle, const char *filename, const char *ext,
 
   if (vtable)
 	{
-	  /* name + "." + libext + NULL */
-	  archive_name = MALLOC (char, LT_STRLEN (name) + strlen (libext) + 2);
+	  /* libprefix + name + "." + libext + NULL */
+	  archive_name = MALLOC (char, strlen (libprefix) + LT_STRLEN (name) + strlen (libext) + 2);
 	  *phandle = (lt_dlhandle) lt__zalloc (sizeof (struct lt__handle));
 
 	  if ((*phandle == NULL) || (archive_name == NULL))
@@ -1285,7 +1290,14 @@ try_dlopen (lt_dlhandle *phandle, const char *filename, const char *ext,
 
 	  /* Preloaded modules are always named according to their old
 	 archive name.  */
-	  sprintf (archive_name, "%s.%s", name, libext);
+	  if (strncmp(name, "lib", 3) == 0)
+	{
+	  sprintf (archive_name, "%s%s.%s", libprefix, name + 3, libext);
+	}
+	  else
+	{
+	  sprintf (archive_name, "%s.%s", name, libext);
+	}
 
 	  if (tryall_dlopen (&newhandle, archive_name, advise, vtable) == 0)
 	{
diff --git a/libltdl/m4/ltdl.m4 b/libltdl/m4/ltdl.m4
index 93de12a..bf1c9bb 100644
--- a/libltdl/m4/ltdl.m4
+++ b/libltdl/m4/ltdl.m4
@@ -410,6 +410,11 @@ AC_CHECK_FUNCS([strlcat strlcpy], [], [AC_LIBOBJ([lt__strl])])
 m4_pattern_allow([LT_LIBEXT])dnl
 AC_DEFINE_UNQUOTED([LT_LIBEXT],["$libext"],[The archive extension])
 
+name=
+lt_libprefix=`eval "\\$ECHO \"$libname_spec\""`
+m4_pattern_allow([LT_LIBPREFIX])dnl
+AC_DEFINE_UNQUOTED([LT_LIBPREFIX],["$lt_libprefix"],[The archive prefix])
+
 name=ltdl
 LTDLOPEN=`eval "\\$ECHO \"$libname_spec\""`
 AC_SUBST([LTDLOPEN])