libtool-patches
[Top][All Lists]
Advanced

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

Re: [patch #6448] [MSVC 7/7] Add MSVC Support


From: Peter Rosin
Subject: Re: [patch #6448] [MSVC 7/7] Add MSVC Support
Date: Fri, 15 Aug 2008 13:44:30 +0200
User-agent: Thunderbird 2.0.0.16 (Windows/20080708)

Ralf Wildenhues skrev:
Hi Peter,

* Peter Rosin wrote on Wed, Aug 13, 2008 at 09:40:17PM CEST:
  72: stresstest.at:31   Link option thorough search test
Automatic path conversion in MSYS doesn't kick in for the argument
-OUT:/some/absolute/path so lib.exe barfs.
Commenting out absolute paths from the stress test reveals a couple of
other problems...

Who'd have thought that.  ;-)

First, when l3='-rpath /nonexistent' and st='-no-install', I see no
reason for linking main using main-static.lo, so clear the mst variable
for this case.

I'm not sure whether I understand the logic behind this reasoning.
If l3='-rpath /nonexistent', then liba.la will be an uninstalled shared
library.  That means that import semantics must be used, right?

Right (unless you link with -static).

2008-08-13  Peter Rosin <address@hidden>

        * tests/stresstest.at: Link with main.lo when liba is shared
        and linking main with -no-install.

Ahh, the actual commit message makes this much clearer.  :-)
IOW, I only had problems parsing the paragraph above, the actual
patch is fine with me, although it might do with some comment at the
case matching logic which doesn't look trivial any more (like: "if
-static is not passed, and the library is shared, then we have to use
-DLIBA_DLL_IMPORT, thus main.lo").

You got it. I have pushed this patch, with the extra comment, and with
a couple of whitespace fixes in the immediate vicinity.

2008-08-13  Peter Rosin <address@hidden>

        * tests/stresstest.at [MSVC]: dllimport all imported
        variables.

This is also ok with nits below addressed/explained.

Pushed, see below.

Thanks,
Ralf

--- a/tests/stresstest.at
+++ b/tests/stresstest.at
@@ -93,29 +93,35 @@ AT_DATA(main.c,

-extern int v9(void);
[...]
+LIBA_SCOPE_VAR int v9(void);

Why does this one need annotation?  If functions need this, then the
naming of the #define is certainly suboptimal.

My mistake, removed in the patch I pushed.

[...]
 LIBA_SCOPE int (*const v12) (void);

Why doesn't this one need LIBA_SCOPE_VAR annotation only?
(I guess I'm to search for the answer to this one in Brian's post)

That I don't know. It's the same in export.at (probably copied one
way or the other). I just left it as is, and changing it is
orthogonal to this, so should be a separate patch anyway, right?

Likewise for both in the other hunk:

Same treatment.

I also pushed the link-order.at patch as shown in
http://www.mail-archive.com/address@hidden/msg04063.html

Cheers,
Peter




reply via email to

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