[patch #9313] _LT_SYS_DYNAMIC_LINKER: Untagged variable values may be inconsistent across tags.

2017-05-02 Thread Michael Haubenwallner
Follow-up Comment #1, patch #9313 (project libtool):

On another thought:
Is is advised to configure libtool itself with F77=no and FC=no when these
would be found by PATH search but are not msvc based ones?

___

Reply to this item at:

  

___
  Message sent via/by Savannah
  http://savannah.gnu.org/




[patch #9313] _LT_SYS_DYNAMIC_LINKER: Untagged variable values may be inconsistent across tags.

2017-04-20 Thread Michael Haubenwallner
Additional Item Attachment, patch #9313 (project libtool):

File name: 0001-check-dynamic-linker-characteristics-for-CC-only.patch Size:3
KB


___

Reply to this item at:

  

___
  Message sent via/by Savannah
  http://savannah.gnu.org/




[patch #9313] _LT_SYS_DYNAMIC_LINKER: Untagged variable values may be inconsistent across tags.

2017-04-20 Thread Michael Haubenwallner
URL:
  

 Summary: _LT_SYS_DYNAMIC_LINKER: Untagged variable values may
be inconsistent across tags.
 Project: GNU Libtool
Submitted by: haubi
Submitted on: Thu 20 Apr 2017 04:25:04 PM CEST
Category: None
Priority: 5 - Normal
  Status: None
 Privacy: Public
 Assigned to: None
Originator Email: 
 Open/Closed: Open
 Discussion Lock: Any

___

Details:

Although _LT_SYS_DYNAMIC_LINKER does support the [TAG] argument, almost all of
the variables it does set are untagged variables.

While untagged variables are (expected to be) defined using the "C" language
compiler, their values apply for each other language (=tag) as well.

As _LT_SYS_DYNAMIC_LINKER is run for multiple tags, these untagged variables
are redefined again for no good reason. While this is not a problem by itself,
it is a needless slowdown for the configure script.

However, a problem does arise when their values change with different language
compilers, for example when using MSVC cl.exe as the C compiler (with Cygwin
as the POSIX system):

*./configure CC=cl.exe CXX='cl.exe /TP'* results in libname_spec='ltdl' for
the empty tag, which is incorporated into LTDLOPEN, causing libltdl/ltdl.c to
refer lt_ltdl__LTX_preloaded_symbols.

But subsequent checks for F77 and FC run _LT_SYS_DYNAMIC_LINKER with
$cc_basename != "cl.exe", causing libname_spec='libltdl', which finally ends
up in the libtool script, causing lt_libltdl__LTX_preloaded_symbols to be
generated.
Note "libltdl" != "ltdl" in the symbol name.

The error message seen here is:

   Creating library libltdl/.libs/libltdl.dll.lib and object
libltdl/.libs/libltdl.dll.exp
libltdl_libltdl_la-ltdl.obj : error LNK2019: unresolved external symbol
_lt_ltdl_LTX_preloaded_symbols referenced in function _lt_dlinit
libltdl/.libs/libltdl-7.dll : fatal error LNK1120: 1 unresolved externals
make[2]: *** [Makefile:1139: libltdl/libltdl.la] Error 2





___

Reply to this item at:

  

___
  Message sent via/by Savannah
  http://savannah.gnu.org/