summaryrefslogtreecommitdiff
path: root/include/vcl/field.hxx
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2020-03-04 20:27:36 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2020-03-06 08:18:06 +0100
commit47b4ee1a1a2a0212ffcf3e85647e9f9f67276ee3 (patch)
tree4dc94e2ea216efee2b583a9fa4ecd13fe884889d /include/vcl/field.hxx
parentcedc8a942e451a63dd1e7dae7f25642c0fcb4be8 (diff)
limit symbols exported when using --enable-mergelibs
when doing LTO and --enable-mergelibs, we can improve the effectiveness of LTO by marking more code as internal to the merged library. So introduce a new macro UNLESS_MERGELIBS, which we can wrap around *_DLLPUBLIC annotations Also introduced here is a script that can be run on a completed build to determine which classes can be marked with this macro. Change-Id: I73fb87c897489da53791277d0b66b01f884ba061 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89991 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'include/vcl/field.hxx')
-rw-r--r--include/vcl/field.hxx5
1 files changed, 3 insertions, 2 deletions
diff --git a/include/vcl/field.hxx b/include/vcl/field.hxx
index 9260859874f0..dbb4f358963d 100644
--- a/include/vcl/field.hxx
+++ b/include/vcl/field.hxx
@@ -22,6 +22,7 @@
#include <memory>
#include <vcl/dllapi.h>
+#include <config_options.h>
#include <tools/link.hxx>
#include <tools/date.hxx>
#include <tools/time.hxx>
@@ -228,7 +229,7 @@ private:
OUString maCustomUnitText;
};
-class VCL_DLLPUBLIC DateFormatter : public FormatterBase
+class UNLESS_MERGELIBS(VCL_DLLPUBLIC) DateFormatter : public FormatterBase
{
private:
std::unique_ptr<CalendarWrapper> mxCalendarWrapper;
@@ -474,7 +475,7 @@ public:
virtual void dispose() override;
};
-class VCL_DLLPUBLIC TimeField final : public SpinField, public TimeFormatter
+class UNLESS_MERGELIBS(VCL_DLLPUBLIC) TimeField final : public SpinField, public TimeFormatter
{
private:
tools::Time maFirst;