On 16. Jul, 2009, at 15:39, Andreas Pakulat wrote:

On 16.07.09 15:26:16, Eric Noulard wrote:
2009/7/16 Michael Wild <[email protected]>:

May be there is some equivalent on Windows platform too
http://msdn.microsoft.com/en-us/library/ms682586(VS.85).aspx
[just pointing the link, I'm really no windows expert and ....
don't want to become one :-) ]

Seriously, that platform is just plain broken if you ask me.
__declspec(dllimport), __declspec(dllexport)?! What were they thinking?

Visibility control in shared libs may not be considered as evil,
GCC even supports that feature:

http://gcc.gnu.org/wiki/Visibility

in particular you may read "2.2 Export Control" in
http://people.redhat.com/drepper/dsohowto.pdf

GCC visibility is only half of the broken system that Microsoft
invented. It only declares what symbols should be visible when linking
to the library, but msvc even forces the user of a library to explain to
the linker which symbols he wants to use (the dllimport stuff). Thats
plain broken, the linker should be able to figure that out himself - ld
does it.


Problem is, their broken binary format requires to know at _COMPILE_ time that a symbol will be linked from a DLL. Nothing the linker can do about, really... At least as far as I understand it, but then I'm not sure MS understands it themselves.

Hell, ever had a look at windows.h and the stuff it includes? Gives you the creeps!

Michael

_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to