libtool-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 0/7] Support for toolchains that are not $host-native.


From: Peter Rosin
Subject: Re: [PATCH 0/7] Support for toolchains that are not $host-native.
Date: Fri, 03 Sep 2010 09:15:14 +0200
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.8) Gecko/20100802 Thunderbird/3.1.2

Den 2010-09-02 15:06 skrev Peter Rosin:
> Den 2010-09-01 22:30 skrev Peter Rosin:
>> Hi!
>>
>> I was going to hold off this until after I had run the testsuite one more
>> time with the latest fixes, but the recent message from Gary made me post
>> right away. By the Lay of Murphy, I'm sure I'll regret it...
>>
>> This series is a rebased and updated version of the patches posted in
>> http://lists.gnu.org/archive/html/libtool-patches/2010-08/msg00222.html
>>
>> I have reason to believe that these patches will make the testsuite
>> results cleaner for MinGW (gcc) on MSYS, MSVC on MSYS, MSVC on Cygwin
>> and have no impact on gcc on Cygwin.
>>
>> I will post details in a day of so when the testsuite has finished
>> running...
> 
> 
> I have made some notes after each testsuite excerpt.

I have now rerun the testsuite on MSVC on MSYS, but with a ar-lib fix
for backslashed files, and on MSVC on Cygwin, with a LN_S="cp -p"
override. I may also have rebased the patches on top of a few new
patches on the master branch, I actually don't remember. I have not
rerun the testsuite the gcc, since ar-lib isn't used in that case so
the bug fix there can't have an impact and the fact that I'm running
the testsuite with a tweaked LN_S in one case should not have an
impact in other cases.

Here are the results, with notes after each testsuite excerpt.


Testsuite results for MSVC on MSYS
==================================

configured as:
../libtool-msvc/configure CC="/c/cygwin/home/peda/automake/lib/compile cl" 
CFLAGS="-MD -Zi -EHsc" CXX="/c/cygwin/home/peda/automake/lib/compile cl" 
CXXFLAGS="-MD -Zi -EHsc" LD=link NM="dumpbin -symbols" STRIP=: 
AR="/c/cygwin/home/peda/automake/lib/ar-lib lib" RANLIB=: F77=no FC=no GCJ=no 
--enable-dependency-tracking

## ------------------------------- ##
## GNU Libtool 2.2.11a test suite. ##
## ------------------------------- ##

Shell option parser generator.

  1: short option splitting                          ok
  2: enhanced shell short option splitting           ok
  3: long option splitting                           ok
  4: XSI long option splitting                       ok
  5: option appending                                ok
  6: enhanced shell option appending                 ok

Libtoolize operation.

  7: libtoolize macro installation                   ok
  8: libtoolize macro directory mismatch error       ok
  9: libtoolize macro serial update                  ok
 10: libtoolize config files serial update           ok
 11: diagnose missing LT_CONFIG_LTDL_DIR             ok
 12: copy ltdl.m4 with shared macro directory        ok
 13: correctly parse LTDL_INIT from configure.ac     ok
 14: diagnose missing LTDL_INIT invocation           ok
 15: upgrading verbatim style aclocal.m4             ok
 16: verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR     ok
 17: nonrecursive ltdl with AC_CONFIG_MACRO_DIR      ok
 18: subproject ltdl with non-shared directories     ok
 19: LIBTOOLIZE_OPTIONS                              ok
 20: cleanup old installation                        ok

Testing libtool functions.

 21: standard command line options                   ok
 22: mode short-hands                                ok
 23: debug tracing                                   ok
 24: duplicate members in archive tests              ok
 25: duplicate convenience archive names             FAILED 
(duplicate_conv.at:79)
 26: preserve duplicate convenience deps             skipped 
(duplicate_deps.at:66)
 27: passing CC flags through libtool                ok
 28: passing CXX flags through libtool               ok
 29: passing F77 flags through libtool               skipped (flags.at:24)
 30: passing FC flags through libtool                skipped (flags.at:24)
 31: passing GCJ flags through libtool               skipped (flags.at:24)
 32: inherited_linker_flags                          ok
 33: C convenience archives                          ok
 34: C++ convenience archives                        ok
 35: F77 convenience archives                        skipped 
(convenience.at:111)
 36: FC convenience archives                         skipped 
(convenience.at:171)
 37: Java convenience archives                       skipped 
(convenience.at:231)
 38: Link order test                                 ok
 39: Link order of deplibs                           ok
 40: Failure tests                                   ok
 41: shlibpath_overrides_runpath                     skipped (shlibpath.at:54)
 42: Runpath in libtool library files                ok
 43: static linking flags for programs               FAILED (static.at:198)
 44: ccache -all-static                              ok
 45: Export test                                     ok
 46: sys_lib_search_path                             skipped (search-path.at:57)
 47: indirect convenience                            ok
 48: indirect uninstalled                            ok
 49: static library contains static library          ok
 50: both of -o prog and -o prog$EXEEXT work         ok
 51: execute mode                                    ok
 52: bindir compile check                            ok
 53: bindir basic lib test                           ok
 54: bindir install tests                            ok
 55: cwrapper for uninstalled executables            ok
 56: deplib in subdir                                ok
 57: inferred tag                                    ok
 58: CXX inferred tag                                ok
 59: F77 inferred tag                                skipped (infer-tag.at:56)
 60: FC inferred tag                                 skipped (infer-tag.at:70)
 61: GCJ inferred tag                                skipped (infer-tag.at:84)
 62: localized compiler messages                     ok
 63: nocase library search                           ok
 64: Install tests                                   ok
 65: versioning                                      ok

DESTDIR tests

 66: Simple DESTDIR install                          ok
 67: DESTDIR with in-package deplibs                 ok

Support for older m4 interface.

 68: AM_PROG_LIBTOOL                                 ok
 69: AC_WITH_LTDL                                    ok

Libtool subdir-objects support.

 70: C subdir-objects                                ok
 71: C++ subdir-objects                              ok

Libltdl functionality.

 72: lt_dlexit unloading libs                        FAILED (lt_dlexit.at:147)
 73: lt_dlopenadvise library loading                 ok
 74: lt_dlopen error messages                        skipped (lt_dlopen.at:31)
 75: lt_dlopen archive                               skipped (lt_dlopen_a.at:94)
 76: lt_dlopenext error messages                     ok
 77: libdir of installed modules                     ok
 78: ltdl API                                        ok
 79: dlloader API                                    ok
 80: loadlibrary error messages                      ok
 81: syntax of .la files                             expected failure 
(lalib-syntax.at:133)
 82: resident modules                                ok
 83: SList functionality                             ok
 84: enforced lib prefix                             FAILED 
(need_lib_prefix.at:170)

Standalone Libltdl.

 85: compiling softlinked libltdl                    ok
 86: compiling copied libltdl                        ok
 87: installable libltdl                             ok
 88: linking libltdl without autotools               ok

Subproject Libltdl.

 89: compiling softlinked libltdl                    ok
 90: compiling copied libltdl                        ok
 91: installable libltdl                             ok
 92: linking libltdl without autotools               ok

Nonrecursive Automake Libltdl.

 93: compiling softlinked libltdl                    ok
 94: compiling copied libltdl                        ok
 95: installable libltdl                             ok 

Recursive Automake Libltdl.

 96: compiling softlinked libltdl                    ok
 97: compiling copied libltdl                        ok
 98: installable libltdl                             ok

C++ template tests.

 99: simple template test                            ok
100: template test with subdirs                      ok

Constructors.

101: C++ static constructors                         ok
102: C++ exception handling                          skipped (exceptions.at:362)

libtool script generation.

103: config.status                                   ok
104: config.lt                                       ok

Libtool usage in GCC

105: AC_NO_EXECUTABLES                               ok

Detecting identical deplibs.

106: build tree relpaths                             expected failure 
(deplibs-ident.at:68)

configure interface to libltdl.

107: installable libltdl                             ok
108: --with-ltdl-include/lib                         ok
109: --with-included-ltdl                            ok
110: convenience libltdl                             ok

Libtool stress test.

111: Link option thorough search test                ok
112: Run tests with low max_cmd_len                  FAILED (cmdline_wrap.at:43)
113: override pic_flag at configure time             skipped (pic_flag.at:39)

Mac OS X tests

114: darwin fat compile                              skipped (darwin.at:42)
115: darwin concurrent library extraction            ok
116: darwin gdb debug information                    skipped (darwin.at:154)
117: deplibs without file command                    ok

sysroot tests

118: -L=.../lib -l                                   skipped (sysroot.at:203)
119: -L SYSROOT/.../lib -l                           skipped (sysroot.at:204)
120: SYSROOT/.../*.la                                skipped (sysroot.at:205)

## ------------- ##
## Test results. ##
## ------------- ##

ERROR: 99 tests were run,
7 failed (2 expected failures).
21 tests were skipped.
## -------------------------- ##
## testsuite.log was created. ##
## -------------------------- ##

Please send `tests/testsuite.log' and all information you think might help:

   To: <address@hidden>
   Subject: [GNU Libtool 2.2.11a] testsuite: 25 43 72 84 112 failed

You may investigate any problem if you feel able to do so, in which
case the test suite provides a good starting point.  Its output may
be found below `tests/testsuite.dir'.

make: *** [check-local] Error 1

Notes:
25:  MSVC doesn't support -r -o
43:  Just wont work, MSVC can't select between static or shared libs, you
     have to select for it.
72:  Unsure what's going on. Old failure.
84:  Unsure what's going on. Old failure.
102: There are some dllimport work needed, but that's not enough since the
     C++ name mangling on MSVC creates symbols that are "hard" for the
     preloader.
112: The results are exactly the same as w/o low max_cmd_len. Skips
     and fails on the exact same lines.


Testsuite results for MSVC on Cygwin
====================================

configured as:
../libtool-msvc/configure CC="/home/peda/automake/lib/compile cl" CFLAGS="-MD 
-Zi -EHsc" CXX="/home/peda/automake/lib/compile cl" CXXFLAGS="-MD -Zi -EHsc" 
LD=link NM="dumpbin -symbols" STRIP=: AR="/home/peda/automake/lib/ar-lib lib" 
RANLIB=: F77=no FC=no GCJ=no --enable-dependency-tracking 
lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 
lt_cv_to_tool_file_cmd=func_convert_file_cygwin_to_w32 --build=i686-pc-cygwin 
--host=i686-pc-mingw32

and the testsuite run as:
make check-local LN_S="cp -p"

## ------------------------------- ##
## GNU Libtool 2.2.11a test suite. ##
## ------------------------------- ##

Shell option parser generator.

  1: short option splitting                          ok
  2: enhanced shell short option splitting           ok
  3: long option splitting                           ok
  4: XSI long option splitting                       ok
  5: option appending                                ok
  6: enhanced shell option appending                 ok

Libtoolize operation.

  7: libtoolize macro installation                   ok
  8: libtoolize macro directory mismatch error       ok
  9: libtoolize macro serial update                  ok
 10: libtoolize config files serial update           ok
 11: diagnose missing LT_CONFIG_LTDL_DIR             ok
 12: copy ltdl.m4 with shared macro directory        ok
 13: correctly parse LTDL_INIT from configure.ac     ok
 14: diagnose missing LTDL_INIT invocation           ok
 15: upgrading verbatim style aclocal.m4             ok
 16: verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR     ok
 17: nonrecursive ltdl with AC_CONFIG_MACRO_DIR      ok
 18: subproject ltdl with non-shared directories     ok
 19: LIBTOOLIZE_OPTIONS                              ok
 20: cleanup old installation                        ok

Testing libtool functions.

 21: standard command line options                   ok
 22: mode short-hands                                ok
 23: debug tracing                                   ok
 24: duplicate members in archive tests              ok
 25: duplicate convenience archive names             FAILED 
(duplicate_conv.at:79)
 26: preserve duplicate convenience deps             skipped 
(duplicate_deps.at:66)
 27: passing CC flags through libtool                ok
 28: passing CXX flags through libtool               ok
 29: passing F77 flags through libtool               skipped (flags.at:24)
 30: passing FC flags through libtool                skipped (flags.at:24)
 31: passing GCJ flags through libtool               skipped (flags.at:24)
 32: inherited_linker_flags                          ok
 33: C convenience archives                          ok
 34: C++ convenience archives                        ok
 35: F77 convenience archives                        skipped 
(convenience.at:111)
 36: FC convenience archives                         skipped 
(convenience.at:171)
 37: Java convenience archives                       skipped 
(convenience.at:231)
 38: Link order test                                 ok
 39: Link order of deplibs                           ok
 40: Failure tests                                   ok
 41: shlibpath_overrides_runpath                     skipped (shlibpath.at:54)
 42: Runpath in libtool library files                ok
 43: static linking flags for programs               FAILED (static.at:198)
 44: ccache -all-static                              ok
 45: Export test                                     ok
 46: sys_lib_search_path                             skipped (search-path.at:57)
 47: indirect convenience                            ok
 48: indirect uninstalled                            ok
 49: static library contains static library          ok
 50: both of -o prog and -o prog$EXEEXT work         ok
 51: execute mode                                    ok
 52: bindir compile check                            ok
 53: bindir basic lib test                           ok
 54: bindir install tests                            ok
 55: cwrapper for uninstalled executables            ok
 56: deplib in subdir                                ok
 57: inferred tag                                    ok
 58: CXX inferred tag                                ok
 59: F77 inferred tag                                skipped (infer-tag.at:56)
 60: FC inferred tag                                 skipped (infer-tag.at:70)
 61: GCJ inferred tag                                skipped (infer-tag.at:84)
 62: localized compiler messages                     ok
 63: nocase library search                           skipped (nocase.at:31)
 64: Install tests                                   ok
 65: versioning                                      ok

DESTDIR tests

 66: Simple DESTDIR install                          ok
 67: DESTDIR with in-package deplibs                 ok

Support for older m4 interface.

 68: AM_PROG_LIBTOOL                                 ok
 69: AC_WITH_LTDL                                    ok

Libtool subdir-objects support.

 70: C subdir-objects                                ok
 71: C++ subdir-objects                              ok

Libltdl functionality.

 72: lt_dlexit unloading libs                        FAILED (lt_dlexit.at:147)
 73: lt_dlopenadvise library loading                 skipped 
(lt_dladvise.at:387)
 74: lt_dlopen error messages                        skipped (lt_dlopen.at:31)
 75: lt_dlopen archive                               skipped (lt_dlopen_a.at:94)
 76: lt_dlopenext error messages                     skipped 
(lt_dlopenext.at:235)
 77: libdir of installed modules                     skipped 
(ltdl-libdir.at:118)
 78: ltdl API                                        ok
 79: dlloader API                                    ok
 80: loadlibrary error messages                      ok
 81: syntax of .la files                             skipped 
(lalib-syntax.at:133)
 82: resident modules                                ok
 83: SList functionality                             ok
 84: enforced lib prefix                             skipped 
(need_lib_prefix.at:170)

Standalone Libltdl.

 85: compiling softlinked libltdl                    ok
 86: compiling copied libltdl                        ok
 87: installable libltdl                             ok
 88: linking libltdl without autotools               ok

Subproject Libltdl.

 89: compiling softlinked libltdl                    ok
 90: compiling copied libltdl                        ok
 91: installable libltdl                             ok
 92: linking libltdl without autotools               ok

Nonrecursive Automake Libltdl.

 93: compiling softlinked libltdl                    ok
 94: compiling copied libltdl                        ok
 95: installable libltdl                             ok

Recursive Automake Libltdl.

 96: compiling softlinked libltdl                    ok
 97: compiling copied libltdl                        ok
 98: installable libltdl                             ok

C++ template tests.

 99: simple template test                            ok
100: template test with subdirs                      ok

Constructors.

101: C++ static constructors                         ok
102: C++ exception handling                          skipped (exceptions.at:362)

libtool script generation.

103: config.status                                   ok
104: config.lt                                       ok

Libtool usage in GCC

105: AC_NO_EXECUTABLES                               ok

Detecting identical deplibs.

106: build tree relpaths                             expected failure 
(deplibs-ident.at:68)

configure interface to libltdl.

107: installable libltdl                             ok
108: --with-ltdl-include/lib                         ok
109: --with-included-ltdl                            ok
110: convenience libltdl                             ok

Libtool stress test.

111: Link option thorough search test                ok
112: Run tests with low max_cmd_len                  FAILED (cmdline_wrap.at:43)
113: override pic_flag at configure time             skipped (pic_flag.at:39)

Mac OS X tests

114: darwin fat compile                              skipped (darwin.at:42)
115: darwin concurrent library extraction            ok
116: darwin gdb debug information                    ok
117: deplibs without file command                    ok

sysroot tests

118: -L=.../lib -l                                   skipped (sysroot.at:203)
119: -L SYSROOT/.../lib -l                           skipped (sysroot.at:204)
120: SYSROOT/.../*.la                                skipped (sysroot.at:205)

## ------------- ##
## Test results. ##
## ------------- ##

ERROR: 94 tests were run,
5 failed (1 expected failure).
26 tests were skipped.
## -------------------------- ##
## testsuite.log was created. ##
## -------------------------- ##

Please send `tests/testsuite.log' and all information you think might help:

   To: <address@hidden>
   Subject: [GNU Libtool 2.2.11a] testsuite: 25 43 72 112 failed

You may investigate any problem if you feel able to do so, in which
case the test suite provides a good starting point.  Its output may
be found below `tests/testsuite.dir'.

make: *** [check-local] Error 1


Notes:
25:  MSVC doesn't support -r -o
43:  Just wont work, MSVC can't select between static or shared libs, you
     have to select for it.
63:  I would have liked it if nocase library search was active in this case.
72:  Unsure what's going on. Old failure.
84:  Unsure what's going on. Old failure.
102: There are some dllimport work needed, but that's not enough since the
     C++ name mangling on MSVC creates symbols that are "hard" for the
     preloader.
112: The results are exactly the same as w/o low max_cmd_len. Skips
     and fails on the exact same lines.


If you compare these two testsuite runs a few tests that fail on MSYS
skip on Cygwin. That's normal as the Cygwin case is a cross where things
sometimes skip instead of fail. There are also one test (116) that skip
on MSYS but are ok on Cygwin, I also think that's normal since MSYS is
not as POSIXy as Cygwin.

There are a few unexpected skips in the "Libltdl functionality" group
for MSVC on Cygwin (73 76 77) that I haven't looked into yet.

All in all, these patches bahave as I expect them to, it's still not
all the way, but good enough for now.

Cheers,
Peter



reply via email to

[Prev in Thread] Current Thread [Next in Thread]