Description: The same SVX_DLLIMPLEMENTATION macro is used for both the svx and svxcore libraries, see svx/Library_svx.mk and svx/Library_svxcore.mk. That is very odd, not at all how it should be done as far as I understand, and I don't understand how it hasn't had any ill effects when building LibreOffice on Windows. (Windows is the only platform where those DLLIMPLEMENTATION things have any effect.) But sadly fixing this is a huge task. I lost patience after spending most of today on it. I doubt it can be done in some automated fashion. There is a very large number of include files that need to be handled. It is a bit unclear to me what actually is in svx and what is in svxcore. And mst says that they can't be combined into one library. Actual Results: . Expected Results: . Reproducible: Always User Profile Reset: No Additional Info: .
Created attachment 155208 [details] How far I got before my patience ran out (The svxcoredllapi.h file is not in the patch but you know what it contains, right.)
To be more concrete, I suddenly start seeing the problem that various SvxRuler entry points are no longer found when building the svxcore DLL. (No idea why these errors haven't happened before.) (This happens in a vendor branch, but as such the SVX_DLLIMPLEMENTATION mess is the same in master, too.) This is not strange as the code for SvxRuler is in the xls library, but the include file misleadingly makes it seem that it might as well be in the svxcore library, as the same SVX_DLLIMPLEMENTATION is used for both. Or something like that. Anyway, I will try to come up with a minimal fix for only this specific issue.)
s/xls/svx
(I fixed the problem (in a quick-and-dirty way) in a vendor branch of ours with d5d9d4d7502efba4340e8117a55a28d831a2104b , no idea why something similar is not needed in master etc.)
Hi Tor, Do you think we can turn this into an easyhack ?
Sure, if somebody other than me mentors the easyhacker;)
(In reply to Tor Lillqvist from comment #6) > Sure, if somebody other than me mentors the easyhacker;) yep, the mailing list it a better place for questions
<https://gerrit.libreoffice.org/c/core/+/87794> "tdf#128302: Split SVXCORE_DLLPUBLIC from SVX_DLLPUBLIC"
Stephan Bergmann committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/ff546a5dd35d6a31f01c70a9b995afc1f7b7389e tdf#128302: Split SVXCORE_DLLPUBLIC from SVX_DLLPUBLIC It will be available in 6.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.