Charles Wilson wrote:
> * 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.
> ---
> Reposted without change from -take5, here:
> http://lists.gnu.org/archive/html/libtool-patches/2009-01/msg00232.html
> 
> This patch has been in use in the cygwin distribution since 2009-02-20.

Ping?

FYI, the cygwin distribution recently (Jul 4) released an updated
binutils package (2.19.51) for cygwin-1.7.  This version supports the
  --identify
and
  --identify-strict
options -- so, at least on cygwin-1.7 we won't be using the
func_cygming_dll_for_implib_fallback function.

Now, with the redesign proposed by Ralf back in January and implemented
(take 3? take 4? I forget), we ordinarily use NEITHER
  func_cygming_dll_for_implib_fallback
nor
  dlltool --identify-strict
because, in the ordinary case, we have a libtool .la file and use it to
track implib<->dll.  NOW, the only time either of these two methods is
used, is when someone specifies explicitly an implib or DLL on the link
command passed to libtool:

  libtool mode=link .... /my/path/foo.dll.a -lbar-3.dll

BUT...it's still nice that the (faster, less kludgy) dlltool method can
now be used on cygwin-1.7. (No, the standard toolchain from the
mingw.org guys doesn't yet support --identify-strict, so it still uses
the fallback).

--
Chuck


Reply via email to