summaryrefslogtreecommitdiff
path: root/idl/source
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2024-03-07 13:46:09 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2024-03-07 20:14:37 +0100
commit87d3f768f3ecded1e1392442181edb287aed9e2e (patch)
tree64de544f05fbae96f466d9c8dc024a8e7d5aae73 /idl/source
parentb117f7d42c7c8bce12d61c01b92b8af4e9aa70b1 (diff)
add sm to --enable-mergelibs=more
Which means (1) We need to extend the weak linkage magic for the sfx2 SFX_TYPEMAP stuff. Just make it unconditional, since it makes no difference for the individual items. (2) The initialisation of global const Sequence data in starmath stops working, because it runs too early. Use function-local static to initialise it on-demand Change-Id: Idc397515cd1d9621a06d237606c19acee600081a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164532 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'idl/source')
-rw-r--r--idl/source/objects/types.cxx4
1 files changed, 3 insertions, 1 deletions
diff --git a/idl/source/objects/types.cxx b/idl/source/objects/types.cxx
index 1089e929043c..3228e1cce378 100644
--- a/idl/source/objects/types.cxx
+++ b/idl/source/objects/types.cxx
@@ -249,7 +249,9 @@ void SvMetaType::WriteSfxItem(
// write the implementation part
rOutStm.WriteOString( "#ifdef SFX_TYPEMAP" ) << endl;
- rOutStm.WriteOString( "#if !defined(_WIN32) && (defined(DISABLE_DYNLOADING) && (defined(ANDROID) || defined(IOS) || defined(EMSCRIPTEN) || defined(LINUX)))" ) << endl;
+ rOutStm.WriteOString( "#if defined(_WIN32)" ) << endl;
+ rOutStm.WriteOString( "__declspec(selectany)" ) << endl;
+ rOutStm.WriteOString( "#else" ) << endl;
rOutStm.WriteOString( "__attribute__((__weak__))" ) << endl;
rOutStm.WriteOString( "#endif" ) << endl;
rOutStm.WriteOString( aTypeName ).WriteOString( aVarName )