> there is a link error in writerperfect's cdrimport, caused by libcdr/lcms2 > libraries. So as far as I understand it, on Windows a library uses dllexport > when it is being built and dllimport when something else is built against it.
Actually, when importing, the dllimport attribute is optional (for functions, not for data); it only makes the run-time linkage a bit faster. The problem here was (as far as I could see) that the stdcall attribute wasn't used either unless CMS_DLL was defined. "stdcall" is a calling convention that despite its name is *not* the "standard" one for C code on (32-bit) Windows. That is "cdecl". "stdcall" is a historical artefact still used by the core Windows API itself, and by 3rd-party coders that seem to live in the past. (Yeah, personal opinion, not "fact".) (In 64-bit Windows much of the historical baggage has been cleaned out and there is just one calling convention.) Pushed your patch, with a clarification of the comment. --tml _______________________________________________ LibreOffice mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice
