Re: [PATCH] [cygwin|mingw] fix dlpreopen with --disable-static take 4

2009-02-13 Thread Charles Wilson
Charles Wilson wrote:

 The attached, re-re-re-re-revised patch addresses these two issues, but
 is otherwise the same as take 4. 

Ping.
Most recent version is the take 5 attachment, in this message from two
weeks ago:
http://lists.gnu.org/archive/html/libtool-patches/2009-01/msg00232.html

ChangeLog repeated (with slight revisions) for convenience:

* libltdl/config/general.m4sh: Update copyright year.
(func_tr_sh): New function.
* libltdl/config/ltmain.m4sh (func_generate_dlsyms) [cygwin|mingw]:
Obtain DLL name corresponding to import library by using value
stored in unique variable libfile_$(transliterated implib name).
If that fails, use $sharedlib_from_linklib_cmd to extract DLL
name from import library directly. Also, properly extract dlsyms
from the import library.
(func_mode_link) [cygwin|mingw]: Prefer to dlpreopen DLLs
over static libs when both are available.  When dlpreopening
DLLs, use linklib (that is, import lib) as dlpreopen file,
rather than DLL. Store name of associated la file in
unique variable libfile_$(transliterated implib name)
for later use.
(func_win32_libid): Accomodate pei-i386 import libs
as well as pe-i386.
(func_cygming_dll_for_implib): New function.
(func_cygming_dll_for_implib_fallback): New function.
(func_cygming_dll_for_implib_fallback_core): New function.
(func_cygming_gnu_implib_p): New function.
(func_cygming_ms_implib_p): New function.
* libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Adjust sed
expressions for lt_cv_sys_global_symbol_to_c_name_address and
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
as trailing space after module name is optional.
(_LT_LINKER_SHLIBS) [cygwin|mingw][C++]:
Set exclude_expsyms correctly for $host. Simplify regular
expression in export_symbols_cmds.
(_LT_LINKER_SHLIBS) [cygwin|mingw|pw32][C]: Set exclude_expsyms
correctly for $host. Enable export_symbols_cmds to identify
DATA exports by _nm_ prefix.
(_LT_CHECK_SHAREDLIB_FROM_LINKLIB): New macro sets
sharedlib_from_linklib_cmd variable.
(_LT_DECL_DLLTOOL): New macro ensures DLLTOOL is always set.

--
Chuck




Re: [PATCH] [cygwin|mingw] fix dlpreopen with --disable-static take 4

2009-01-21 Thread Charles Wilson
Charles Wilson wrote:
 Test suite on cygwin/native in progress. Assumming test suite passes, OK?
 Comments, Review, Discussion?

All tests pass (cygwin/native):

Old suite:
===
All 113 tests passed
(11 tests were not run)
===

New suite:
76 tests behaved as expected.
5 tests were skipped.

--
Chuck





Re: [PATCH] [cygwin|mingw] fix dlpreopen with --disable-static take 4

2009-01-21 Thread Charles Wilson
Charles Wilson wrote:
Reviewing my own submission...
 (func_cygming_dll_for_implib_core): New function.

This function is actually called
func_cygming_dll_for_implib_fallback_core
Need to correct log history.

 (func_cygming_implib_p): New function.

Confusing. There is already a func_win32_implib_p which is less specific
(returns true when [effectively]
  func_cygming_implib_p || func_cygming_ms_implib_p || (any other kind
of implib)
This one should be called func_cygming_gnu_implib_p as a parallel with
the _cygming_ms_ one.

--
Chuck