summaryrefslogtreecommitdiff
path: root/include/vcl/builderfactory.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'include/vcl/builderfactory.hxx')
-rw-r--r--include/vcl/builderfactory.hxx16
1 files changed, 13 insertions, 3 deletions
diff --git a/include/vcl/builderfactory.hxx b/include/vcl/builderfactory.hxx
index 4b8801341f49..1b2d01bd918c 100644
--- a/include/vcl/builderfactory.hxx
+++ b/include/vcl/builderfactory.hxx
@@ -13,22 +13,32 @@
#include <vcl/vclptr.hxx>
#include <vcl/builder.hxx>
+// For iOS, SAL_DLLPUBLIC_EXPORT actually expands to __attribute__
+// ((visibility("hidden"))). (Ditto for other DISABLE_DYNLOADING
+// cases, but let it be as is for them for now.) Undo that trick.
+
+#ifdef IOS
+#define BUILDER_FACTORY_EXPORT __attribute__ ((visibility("default")))
+#else
+#define BUILDER_FACTORY_EXPORT SAL_DLLPUBLIC_EXPORT
+#endif
+
#define VCL_BUILDER_FACTORY(typeName) \
- extern "C" SAL_DLLPUBLIC_EXPORT void make##typeName(VclPtr<vcl::Window> & rRet, VclPtr<vcl::Window> & pParent, VclBuilder::stringmap & rMap) \
+ extern "C" BUILDER_FACTORY_EXPORT void make##typeName(VclPtr<vcl::Window> & rRet, VclPtr<vcl::Window> & pParent, VclBuilder::stringmap & rMap) \
{ \
(void)rMap; \
rRet = VclPtr<typeName>::Create(pParent); \
}
#define VCL_BUILDER_FACTORY_ARGS(typeName,arg1) \
- extern "C" SAL_DLLPUBLIC_EXPORT void make##typeName(VclPtr<vcl::Window> & rRet, VclPtr<vcl::Window> & pParent, VclBuilder::stringmap & rMap) \
+ extern "C" BUILDER_FACTORY_EXPORT void make##typeName(VclPtr<vcl::Window> & rRet, VclPtr<vcl::Window> & pParent, VclBuilder::stringmap & rMap) \
{ \
(void)rMap; \
rRet = VclPtr<typeName>::Create(pParent,arg1); \
}
#define VCL_BUILDER_FACTORY_CONSTRUCTOR(typeName,arg2) \
- extern "C" SAL_DLLPUBLIC_EXPORT void make##typeName(VclPtr<vcl::Window> & rRet, VclPtr<vcl::Window> & pParent, VclBuilder::stringmap & rMap) \
+ extern "C" BUILDER_FACTORY_EXPORT void make##typeName(VclPtr<vcl::Window> & rRet, VclPtr<vcl::Window> & pParent, VclBuilder::stringmap & rMap) \
{ \
OUString sBorder = BuilderUtils::extractCustomProperty(rMap); \
WinBits wb = arg2; \