libtool
[Top][All Lists]
Advanced

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

Re: Obsoleting LT_SCOPE


From: Peter Rosin
Subject: Re: Obsoleting LT_SCOPE
Date: Tue, 25 Oct 2011 21:11:23 +0200
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20110929 Thunderbird/7.0.1

Charles Wilson skrev 2011-10-25 17:34:
> On 10/25/2011 11:03 AM, Peter Rosin wrote:
>> Gary V. Vaughan skrev 2011-10-25 14:17:
>> I configures both the way I usually configure libtool for msvc, i.e.
>>
>> ../configure autobuild_mode=msvc 
>> 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
>>
>> The testsuite result seems identical, with two good old failures:
> 
> Be sure and check the exports from libltdl*.dll from <before> and <after>...

Right, good suggestion:

$ diff -u libtool-2.4.2/msvc/libltdl/.libs/ltdl.dll.lib.nm 
libtool-2.4.2-no-lt-scope/msvc/libltdl/.libs/ltdl.dll.lib.nm
--- libtool-2.4.2/msvc/libltdl/.libs/ltdl.dll.lib.nm    2011-10-25 20:44:58 
+0200
+++ libtool-2.4.2-no-lt-scope/msvc/libltdl/.libs/ltdl.dll.lib.nm        
2011-10-25 20:44:21 +0200
@@ -21,15 +21,6 @@
 00000000 I .idata$4
 00000000 I .idata$5
 00000000 I .idata$6
-00000000 T .text
-         U __IMPORT_DESCRIPTOR_ltdl-7
-00000000 I __imp__loadlibrary_LTX_get_vtable
-00000000 T _loadlibrary_LTX_get_vtable
-
-ltdl-7.dll:
-00000000 I .idata$4
-00000000 I .idata$5
-00000000 I .idata$6

 ltdl-7.dll:
 00000000 I .idata$4

I'm not sure what the implication is, but I think it's benign. I suspect that
the loadlibrary convenience lib is preloaded by libltdl and that stock 2.4.2
dllimports the symbol even though it's not really the right thing to do since
the symbol is right there in the static convenience lib.

However, and more importantly, I also found this in the build logs of both
stock 2.4.2 and 2.4.2-no-lt-scope:

cl -link -EXPORT:lt__alloc_die,DATA
...
   -link -EXPORT:lt_ltdl_LTX_preloaded_symbols,DATA
...

So, there are indeed data exports in libltdl. Anyone trying to make use of
those exports w/o LT_SCOPE doing the dllimport dance will probably fail. So,
we need a test case exercising one or the other of those exports. Or both.

Cheers,
Peter



reply via email to

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