bin/find-mergedlib-can-be-private.classes.results                          |  
351 ----------
 chart2/inc/ChartModel.hxx                                                  |   
 2 
 chart2/inc/ChartTypeManager.hxx                                            |   
 3 
 chart2/inc/ChartView.hxx                                                   |   
 2 
 chart2/source/inc/Axis.hxx                                                 |   
 2 
 chart2/source/inc/AxisHelper.hxx                                           |   
 3 
 chart2/source/inc/BaseGFXHelper.hxx                                        |   
23 
 chart2/source/inc/CharacterProperties.hxx                                  |   
 8 
 chart2/source/inc/ChartModelHelper.hxx                                     |   
 3 
 chart2/source/inc/ChartType.hxx                                            |   
 2 
 chart2/source/inc/ChartTypeHelper.hxx                                      |   
 3 
 chart2/source/inc/ChartTypeTemplate.hxx                                    |   
 2 
 chart2/source/inc/ChartViewHelper.hxx                                      |   
 9 
 chart2/source/inc/ColorPerPointHelper.hxx                                  |   
 3 
 chart2/source/inc/ControllerLockGuard.hxx                                  |   
 7 
 chart2/source/inc/DataSeries.hxx                                           |   
 2 
 chart2/source/inc/DataSeriesHelper.hxx                                     |   
72 +-
 chart2/source/inc/DataSource.hxx                                           |   
 3 
 chart2/source/inc/DataSourceHelper.hxx                                     |   
 3 
 chart2/source/inc/DataTable.hxx                                            |   
 4 
 chart2/source/inc/Diagram.hxx                                              |   
 2 
 chart2/source/inc/DiagramHelper.hxx                                        |   
 2 
 chart2/source/inc/ErrorBar.hxx                                             |   
 3 
 chart2/source/inc/ExplicitCategoriesProvider.hxx                           |   
 3 
 chart2/source/inc/FillProperties.hxx                                       |   
 4 
 chart2/source/inc/GridProperties.hxx                                       |   
 2 
 chart2/source/inc/LabeledDataSequence.hxx                                  |   
 3 
 chart2/source/inc/Legend.hxx                                               |   
 2 
 chart2/source/inc/LegendHelper.hxx                                         |   
 3 
 chart2/source/inc/LifeTime.hxx                                             |   
 3 
 chart2/source/inc/LinePropertiesHelper.hxx                                 |   
 4 
 chart2/source/inc/MediaDescriptorHelper.hxx                                |   
 3 
 chart2/source/inc/ModifyListenerCallBack.hxx                               |   
 3 
 chart2/source/inc/NumberFormatterWrapper.hxx                               |   
 3 
 chart2/source/inc/OPropertySet.hxx                                         |   
 4 
 chart2/source/inc/ObjectIdentifier.hxx                                     |   
 2 
 chart2/source/inc/PopupRequest.hxx                                         |   
 3 
 chart2/source/inc/PropertyHelper.hxx                                       |   
17 
 chart2/source/inc/ReferenceSizeProvider.hxx                                |   
 2 
 chart2/source/inc/RegressionCurveHelper.hxx                                |   
61 -
 chart2/source/inc/RelativePositionHelper.hxx                               |   
 3 
 chart2/source/inc/RelativeSizeHelper.hxx                                   |   
 3 
 chart2/source/inc/SceneProperties.hxx                                      |   
 5 
 chart2/source/inc/StatisticsHelper.hxx                                     |   
25 
 chart2/source/inc/ThreeDHelper.hxx                                         |   
 3 
 chart2/source/inc/Title.hxx                                                |   
 2 
 chart2/source/inc/TitleHelper.hxx                                          |   
 2 
 chart2/source/inc/UserDefinedProperties.hxx                                |   
 3 
 chart2/source/inc/WrappedDefaultProperty.hxx                               |   
 2 
 chart2/source/inc/WrappedDirectStateProperty.hxx                           |   
 2 
 chart2/source/inc/WrappedIgnoreProperty.hxx                                |   
 4 
 chart2/source/inc/WrappedProperty.hxx                                      |   
 3 
 chart2/source/inc/WrappedPropertySet.hxx                                   |   
 3 
 chart2/source/inc/chartview/DataPointSymbolSupplier.hxx                    |   
 2 
 chart2/source/inc/chartview/DrawModelWrapper.hxx                           |   
 2 
 chart2/source/inc/chartview/ExplicitScaleValues.hxx                        |   
 5 
 chart2/source/inc/chartview/ExplicitValueProvider.hxx                      |   
 3 
 include/basegfx/color/bcolormodifier.hxx                                   |   
 2 
 include/basegfx/utils/systemdependentdata.hxx                              |   
 3 
 include/comphelper/bytereader.hxx                                          |   
 5 
 include/comphelper/errcode.hxx                                             |   
 5 
 include/comphelper/oslfile2streamwrap.hxx                                  |   
 5 
 include/comphelper/propmultiplex2.hxx                                      |   
 5 
 include/comphelper/propshlp.hxx                                            |   
10 
 include/comphelper/seqstream.hxx                                           |   
 2 
 include/docmodel/uno/UnoComplexColor.hxx                                   |   
 3 
 include/drawinglayer/primitive2d/BufferedDecompositionGroupPrimitive2D.hxx |   
 3 
 include/drawinglayer/primitive2d/PolyPolygonColorPrimitive2D.hxx           |   
 3 
 include/drawinglayer/primitive2d/PolygonHairlinePrimitive2D.hxx            |   
 5 
 include/drawinglayer/primitive2d/baseprimitive2d.hxx                       |   
 4 
 include/drawinglayer/processor2d/cairopixelprocessor2d.hxx                 |   
 2 
 include/editeng/unoedsrc.hxx                                               |   
 2 
 include/filter/msfilter/escherex.hxx                                       |   
 2 
 include/framework/generictoolbarcontroller.hxx                             |   
 4 
 include/oox/helper/progressbar.hxx                                         |   
 3 
 include/oox/ole/axcontrol.hxx                                              |   
13 
 include/package/Deflater.hxx                                               |   
 3 
 include/package/Inflater.hxx                                               |   
 3 
 include/sfx2/devtools/DevelopmentToolDockingWindow.hxx                     |   
 2 
 include/sfx2/sidebar/SidebarModelUpdate.hxx                                |   
 3 
 include/svl/itempool.hxx                                                   |   
 3 
 include/svtools/recorditemwindow.hxx                                       |   
 3 
 include/svx/ActionDescriptionProvider.hxx                                  |   
 3 
 include/svx/EnhancedCustomShapeTypeNames.hxx                               |   
 8 
 include/svx/RectangleAlignmentItem.hxx                                     |   
 3 
 include/svx/chrtitem.hxx                                                   |   
 9 
 include/svx/diagram/datamodel.hxx                                          |   
 4 
 include/svx/dialog/ThemeColorEditDialog.hxx                                |   
 5 
 include/svx/dlgctl3d.hxx                                                   |   
 6 
 include/svx/e3ditem.hxx                                                    |   
 3 
 include/svx/e3dsceneupdater.hxx                                            |   
 3 
 include/svx/float3d.hxx                                                    |   
 2 
 include/svx/galleryobjectcollection.hxx                                    |   
 2 
 include/svx/labelitemwindow.hxx                                            |   
 2 
 include/svx/linectrl.hxx                                                   |   
 2 
 include/svx/sdr/contact/viewcontactofe3dscene.hxx                          |   
 2 
 include/svx/sdr/contact/viewcontactofsdrmediaobj.hxx                       |   
 3 
 include/svx/sdr/overlay/overlaypolypolygon.hxx                             |   
 3 
 include/svx/sidebar/AreaPropertyPanelBase.hxx                              |   
 2 
 include/svx/sidebar/LinePropertyPanelBase.hxx                              |   
 2 
 include/svx/svdundo.hxx                                                    |   
 2 
 include/svx/tbcontrl.hxx                                                   |   
 2 
 include/svx/theme/ThemeColorPaletteManager.hxx                             |   
 3 
 include/svx/unodraw/SvxTableShape.hxx                                      |   
 2 
 include/svx/unomodel.hxx                                                   |   
 3 
 include/svx/unoshape.hxx                                                   |   
24 
 include/svx/unoshtxt.hxx                                                   |   
 2 
 include/tools/stream.hxx                                                   |   
 2 
 include/ucbhelper/interactionrequest.hxx                                   |   
 7 
 include/unotools/resmgr.hxx                                                |   
 3 
 include/vcl/BitmapAlphaClampFilter.hxx                                     |   
 3 
 include/vcl/WeldedTabbedNotebookbar.hxx                                    |   
 3 
 include/vcl/builder.hxx                                                    |   
18 
 include/vcl/errinf.hxx                                                     |   
 2 
 include/vcl/filter/pdfdocument.hxx                                         |   
 8 
 include/vcl/glyphitemcache.hxx                                             |   
 4 
 include/vcl/graphictools.hxx                                               |   
 2 
 include/vcl/imapcirc.hxx                                                   |   
 2 
 include/vcl/imappoly.hxx                                                   |   
 2 
 include/vcl/imaprect.hxx                                                   |   
 3 
 include/vcl/metaact.hxx                                                    |   
 4 
 include/vcl/notebookbar/notebookbar.hxx                                    |   
 2 
 include/vcl/opengl/OpenGLWrapper.hxx                                       |   
 3 
 include/vcl/tabpage.hxx                                                    |   
 2 
 include/vcl/toolkit/button.hxx                                             |   
 2 
 include/vcl/toolkit/field.hxx                                              |   
 6 
 include/vcl/toolkit/fixed.hxx                                              |   
 4 
 include/vcl/toolkit/fmtfield.hxx                                           |   
 2 
 include/vcl/toolkit/menubtn.hxx                                            |   
 2 
 include/vcl/toolkit/scrbar.hxx                                             |   
 2 
 include/vcl/toolkit/svlbitm.hxx                                            |   
 4 
 include/vcl/toolkit/treelistbox.hxx                                        |   
 2 
 include/vcl/weldutils.hxx                                                  |   
 4 
 include/xmloff/XMLComplexColorContext.hxx                                  |   
 3 
 svx/inc/galleryfilestorage.hxx                                             |   
 2 
 svx/inc/gallerystoragelocations.hxx                                        |   
 3 
 svx/source/table/sdrtableobjimpl.hxx                                       |   
 2 
 vcl/inc/headless/BitmapHelper.hxx                                          |   
 4 
 vcl/inc/headless/CairoCommon.hxx                                           |   
 4 
 vcl/inc/scrptrun.h                                                         |   
 3 
 vcl/inc/sft.hxx                                                            |   
 3 
 xmloff/source/text/xmllinebreakcontext.hxx                                 |   
 3 
 142 files changed, 416 insertions(+), 617 deletions(-)

New commits:
commit 033aaeec9ee6d7ab78690054ebf1ad8af5e3eff3
Author:     Noel Grandin <noel.gran...@collabora.co.uk>
AuthorDate: Thu Feb 8 14:15:37 2024 +0200
Commit:     Noel Grandin <noel.gran...@collabora.co.uk>
CommitDate: Mon Feb 12 20:25:54 2024 +0100

    use more UNLESS_MERGELIBS
    
    Change-Id: I351a9127fb26369d8f598b6d6519d7e490fa476b
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163190
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk>

diff --git a/bin/find-mergedlib-can-be-private.classes.results 
b/bin/find-mergedlib-can-be-private.classes.results
index 7a05b3697567..c1c6acacb493 100644
--- a/bin/find-mergedlib-can-be-private.classes.results
+++ b/bin/find-mergedlib-can-be-private.classes.results
@@ -1,423 +1,120 @@
-Accelerator
-B3dCamera
-B3dTransformationSet
-B3dViewport
+BitmapConvolutionMatrixFilter
 BitmapMedianFilter
-BitmapMonochromeMatrixFilter
-BitmapPalette
 BitmapPopArtFilter
 BitmapSobelGreyFilter
 CalendarField
-CodeCompleteDataCache
-ConvertChar
-CurrencyBox
-CurrencyFormatter
-CursorWrapper
-DateBox
-DateField
 DdeGetPutItem
 DdeHotLink
 DdeItem
 DdeLink
 DdeService
 DdeTopic
-DockingAreaWindow
 DockingManager
-DoubleCurrencyField
-DoubleNumericField
+DropdownDockingWindow
 E3dCompoundObject
-E3dDefaultAttributes
-E3dExtrudeObj
-E3dPolygonObj
-EditAbstractDialogFactory
 EditUndo
-EditUndoManager
-EditViewCallbacks
 EnhancedCustomShape
-EnhancedCustomShape::FunctionParser
-FileChangedChecker
-FilterMatch
+ErrCode
+ErrCodeMsg
 FixedBitmap
-FixedHyperlink
-FmDesignModeChangedHint
-FmFormObj
-FmFormPageImpl
-FmXFormShell
-FontSelectPattern
-FontSizeNames
+FixedImage
+FocusListenerMultiplexer
 FontSubsetInfo
-FormattedField::StaticFormatter
 FormatterBase
-FreetypeManager::IFSD_Equal
-GroupBox
 HelpLinker
 Hunspell
 Hunzip
-ImageControl
 ImplJobSetup
 IndexerPreProcessor
-IntroWindow
-ListenerMultiplexerBase
-LongCurrencyBox
-LongCurrencyField
-LongCurrencyFormatter
-MenuToggleButton
+KeyListenerMultiplexer
 MetaAction
 MetaArcAction
-MetaBmpAction
 MetaBmpExScalePartAction
-MetaBmpScaleAction
 MetaBmpScalePartAction
 MetaChordAction
-MetaClipRegionAction
-MetaEllipseAction
-MetaFontAction
-MetaGradientExAction
-MetaISectRectClipRegionAction
-MetaISectRegionClipRegionAction
-MetaLayoutModeAction
-MetaMapModeAction
-MetaMoveClipRegionAction
-MetaOverlineColorAction
 MetaPieAction
-MetaPixelAction
 MetaPolyLineAction
 MetaPolyPolygonAction
 MetaPolygonAction
-MetaPopAction
-MetaPushAction
-MetaRasterOpAction
-MetaRefPointAction
-MetaRoundRectAction
-MetaTextAlignAction
 MetaTextArrayAction
-MetaTextColorAction
-MetaTextFillColorAction
-MetaTextLanguageAction
-MetaTextLineColorAction
 MetaWallpaperAction
-MetafileAccessor
-ModuleSizeExceeded
-MoreButton
-MultiListBox
+MouseListenerMultiplexer
+MouseMotionListenerMultiplexer
 MyThes
-NativeNumberWrapper
-NfCurrencyEntry
-NotebookbarTabControlBase
 NotifyEvent
-NumericBox
-NumericField
-OFlowChainedText
-OpenFileDropTargetListener
-OpenGLFramebuffer
 OpenGLZone
-PackedTextureAtlasManager
-PatternBox
-PatternField
-PatternFormatter
-PhysicalFontFamily
-PlaceEditDialog
-PrinterOptions
-ProgressBar
-QueueInfo
-RenderList
+PaintListenerMultiplexer
 SalData
 SalInfoPrinter
 SalPrinter
 SalSystem
-SbClassModuleObject
 SbMethod
-SbxInfo
 SbxObject
-SdrEmbedObjectLink
-SdrGrafBlueItem
 SdrGrafContrastItem
-SdrGrafCropItem
 SdrGrafGamma100Item
-SdrGrafGreenItem
 SdrGrafLuminanceItem
 SdrGrafModeItem
-SdrGrafRedItem
-SdrGrafTransparenceItem
-SdrMeasureField
-SdrMeasureObj
-SdrSignedPercentItem
-SdrTextFixedCellHeightItem
-SdrUndoPageMasterPage
 SelectionListenerMultiplexer
-SfxAllEnumItem
-SfxDocumentInfoItem
-SfxItemSetHint
-SfxMetricItem
-SfxNavigator
-SfxObjectItem
-SfxStatusListener
-SfxStyleSheetModifiedHint
-SfxTemplatePanelControl
-SfxViewFrameItem
-SgaObject
-SkiaPackedSurfaceAtlasManager
+SfxCharmapContainer
 SkiaZone
-SpinButton
 SpinListenerMultiplexer
-SvParser<HtmlTokenId>::TokenStackType
-SvParser<int>::TokenStackType
-SvtBasePrintOptions
-SvtPrintFileOptions
-SvtPrinterOptions
-Svx3DCloseBackItem
-Svx3DCloseFrontItem
-Svx3DNormalsKindItem
-Svx3DPerspectiveItem
-Svx3DShadeModeItem
-Svx3DTextureKindItem
-Svx3DTextureModeItem
-Svx3DTextureProjectionXItem
-Svx3DTextureProjectionYItem
-SvxCurrencyToolBoxControl
-SvxEditSourceAdapter
-SvxPasswordDialog
-SvxPropertySetInfoPool
+SvtGraphicFill::Transform
+SvxCharView
+SvxShapeGroupAnyD
+SvxShowText
 SvxTPage
-SvxTextRotateItem
 SyntaxHighlighter::Tokenizer
 SystemWindow::ImplData
-TETextDataObject
-TabDialog
+TBCExtraInfo
+TBCGeneralInfo
 TabPaneValue
 TextListenerMultiplexer
-Throbber
-TimeBox
-TimeFormatter
-UFlowChainedText
-UnoEditControl
-UnoWrapperBase
-VCLXDateField
-VCLXEdit
-VCLXMenuBar
-VCLXSpinField
-ValueSet
-VclBin
 VclBuilder::MenuAndId
 VclBuilder::ParserState
 VclBuilder::sortIntoBestTabTraversalOrder
 VclDrawingArea
 VclGrid
-VclWindowEvent
-XMLDashStyleExport
-XMLDashStyleImport
-XMLGradientStyleExport
-XMLGradientStyleImport
-XMLHatchStyleExport
-XMLHatchStyleImport
-XMLImageStyle
-XMLMarkerStyleExport
-XMLMarkerStyleImport
-XMLShapeStyleContext
-accessibility::AccessibleEditableTextPara
-accessibility::AccessibleParaManager
-avmedia::MediaControlBase
-avmedia::MediaFloater
-basegfx::B2DTrapezoid
-basegfx::B3DPoint
-basegfx::B3DTuple
+WindowListenerMultiplexer
 basegfx::BColorModifier
-basegfx::BColorModifierStack
-basegfx::BColorModifier_RGBLuminanceContrast
-basegfx::BColorModifier_black_and_white
-basegfx::BColorModifier_gamma
-basegfx::BColorModifier_gray
-basegfx::BColorModifier_invert
-basegfx::BColorModifier_replace
-basegfx::ODFGradientInfo
-basegfx::RasterConverter3D
 basegfx::SystemDependentDataHolder
 basegfx::SystemDependentDataManager
-basegfx::triangulator
+basic::vba
 canvas
-char& std::vector<char, std::allocator<char> >
-comphelper::IndexAccessIterator
-comphelper::OAccessibleSelectionHelper
-comphelper::OEventListenerHelper
-comphelper::OPropertySetAggregationHelper
-comphelper::OPropertyStateHelper
-comphelper::OSequenceOutputStream
-comphelper::OStatefulPropertySet
-comphelper::OStreamSection
-comphelper::OWeakEventListenerAdapter
-comphelper::OWrappedAccessibleChildrenManager
-comphelper::PropertyBag
-comphelper::StillReadWriteInteraction
-comphelper::service_decl::ServiceDecl::Factory
+chart
+comphelper::date
 connectivity::sdbcx::IObjectCollection
 connectivity::sdbcx::OGroup
 connectivity::sdbcx::OKey
 dbtools::param::ParameterWrapper
 desktop::CallbackFlushHandler::CallbackData
-dp_misc::AbortChannel
+desktop::CallbackFlushHandler::TimeoutIdle
 drawinglayer::animation::AnimationEntry
-drawinglayer::animation::AnimationEntryFixed
-drawinglayer::animation::AnimationEntryLinear
-drawinglayer::animation::AnimationEntryList
-drawinglayer::animation::AnimationEntryLoop
-drawinglayer::attribute::FillGraphicAttribute
-drawinglayer::attribute::FillHatchAttribute
-drawinglayer::attribute::LineStartEndAttribute
-drawinglayer::attribute::MaterialAttribute3D
-drawinglayer::attribute::Sdr3DLightAttribute
-drawinglayer::attribute::Sdr3DObjectAttribute
-drawinglayer::attribute::SdrFillGraphicAttribute
-drawinglayer::attribute::SdrGlowAttribute
-drawinglayer::attribute::SdrLightingAttribute
-drawinglayer::attribute::SdrLineAttribute
-drawinglayer::attribute::SdrLineFillShadowAttribute3D
-drawinglayer::attribute::SdrLineStartEndAttribute
-drawinglayer::attribute::SdrSceneAttribute
-drawinglayer::attribute::SdrShadowAttribute
-drawinglayer::primitive2d::AnimatedBlinkPrimitive2D
-drawinglayer::primitive2d::AnimatedInterpolatePrimitive2D
 drawinglayer::primitive2d::AnimatedSwitchPrimitive2D
-drawinglayer::primitive2d::BackgroundColorPrimitive2D
-drawinglayer::primitive2d::ControlPrimitive2D
-drawinglayer::primitive2d::DiscreteShadowPrimitive2D
-drawinglayer::primitive2d::Embedded3DPrimitive2D
 drawinglayer::primitive2d::FillGraphicPrimitive2D
-drawinglayer::primitive2d::GlowPrimitive2D
-drawinglayer::primitive2d::GridPrimitive2D
-drawinglayer::primitive2d::GroupPrimitive2D
-drawinglayer::primitive2d::HelplinePrimitive2D
-drawinglayer::primitive2d::InvertPrimitive2D
-drawinglayer::primitive2d::MarkerArrayPrimitive2D
-drawinglayer::primitive2d::MediaPrimitive2D
-drawinglayer::primitive2d::MetafilePrimitive2D
 drawinglayer::primitive2d::ObjectAndViewTransformationDependentPrimitive2D
-drawinglayer::primitive2d::PagePreviewPrimitive2D
-drawinglayer::primitive2d::PolyPolygonGradientPrimitive2D
-drawinglayer::primitive2d::PolyPolygonGraphicPrimitive2D
-drawinglayer::primitive2d::PolyPolygonHatchPrimitive2D
-drawinglayer::primitive2d::PolyPolygonSelectionPrimitive2D
-drawinglayer::primitive2d::PolygonMarkerPrimitive2D
-drawinglayer::primitive2d::PolygonStrokeArrowPrimitive2D
-drawinglayer::primitive2d::ScenePrimitive2D
 drawinglayer::primitive2d::SdrFrameBorderData::SdrConnectStyleData
-drawinglayer::primitive2d::ShadowPrimitive2D
-drawinglayer::primitive2d::TextHierarchyBlockPrimitive2D
-drawinglayer::primitive2d::TextHierarchyBulletPrimitive2D
-drawinglayer::primitive2d::TextHierarchyEditPrimitive2D
-drawinglayer::primitive2d::TextHierarchyFieldPrimitive2D
-drawinglayer::primitive2d::TextHierarchyLinePrimitive2D
-drawinglayer::primitive2d::TextHierarchyParagraphPrimitive2D
 drawinglayer::primitive2d::ViewTransformationDependentPrimitive2D
-drawinglayer::primitive2d::ViewportDependentPrimitive2D
-drawinglayer::primitive2d::WrongSpellPrimitive2D
 drawinglayer::primitive3d
 drawinglayer::primitive3d::BasePrimitive3D
 drawinglayer::primitive3d::BufferedDecompositionPrimitive3D
 drawinglayer::primitive3d::GroupPrimitive3D
-drawinglayer::primitive3d::ModifiedColorPrimitive3D
 drawinglayer::primitive3d::PolyPolygonMaterialPrimitive3D
 drawinglayer::primitive3d::PolygonHairlinePrimitive3D
-drawinglayer::primitive3d::Primitive3DContainer
-drawinglayer::primitive3d::SdrCubePrimitive3D
-drawinglayer::primitive3d::SdrExtrudePrimitive3D
-drawinglayer::primitive3d::SdrLathePrimitive3D
-drawinglayer::primitive3d::SdrPolyPolygonPrimitive3D
 drawinglayer::primitive3d::SdrPrimitive3D
-drawinglayer::primitive3d::SdrSpherePrimitive3D
-drawinglayer::primitive3d::TransformPrimitive3D
-drawinglayer::processor2d::HitTestProcessor2D
-drawinglayer::processor3d::BaseProcessor3D
-drawinglayer::processor3d::CutFindProcessor
-emfio::WinMtfFontStyle
 formula::FormulaTokenIterator::Item
-framework
-framework::AddonMenuManager
-framework::AddonsOptions
-framework::ConfigAccess
-framework::ConstItemContainer
-framework::Converter
-framework::DispatchHelper
-framework::FrameListAnalyzer
-framework::HandlerCache
-framework::InteractionRequest
-framework::MenuAttributes
-framework::MenuConfiguration
-framework::RequestFilterSelect
-framework::RootItemContainer
-framework::SaxNamespaceFilter
-framework::StatusBarConfiguration
-framework::ToolBoxConfiguration
-framework::TransactionManager
-framework::UIConfigurationImporterOOo1x
 legacy::CntInt32
 legacy::SfxBool
-legacy::SvxAdjust
-legacy::SvxBox
-legacy::SvxBrush
-legacy::SvxColor
-legacy::SvxCrossedOut
-legacy::SvxFont
-legacy::SvxFontHeight
-legacy::SvxHorJustify
-legacy::SvxLine
-legacy::SvxPosture
-legacy::SvxTextLine
-legacy::SvxVerJustify
-legacy::SvxWeight
-psp::PrintFontManager::PrintFont
+oox::drawingml::ShapePropertyInfo
+oox::ole::AxControlModelBase
 sdr::SelectionController
-sdr::ViewSelection
-sdr::animation::primitiveAnimator
-sdr::contact::ObjectContactPainter
-sdr::properties::BaseProperties
-sdr::table::Cell
-sfx2::sidebar::Panel
-sfx2::sidebar::SidebarToolBox
-sfx2::sidebar::TabBar
-sfx2::sidebar::TabBar::Item
 svt
-svt::AddressBookSourceDialog
-svt::GenericToolboxController
-svt::GraphicAccess
-svt::IEditImplementation
-svt::MultiLineEditImplementation
-svt::MultiLineTextCell
-svt::OStringTransferable
-svt::PopupMenuControllerBase
-svt::TemplateFolderCache
-svtools::AsynchronLink
-svtools::ToolbarPopup
-svx::DialControl::DialControl_Impl
-svx::IPropertyValueProvider
-svx::sidebar::GalleryControl
 svxform
-svxform::DataNavigatorManager
-svxform::NavigatorFrameManager
-svxform::OLocalExchange
-svxform::OLocalExchangeHelper
-svxform::OSQLParserClient
 toolkitform
-ucbhelper::ActiveDataSink
 ucbhelper::InteractionApprove
 ucbhelper::InteractionDisapprove
 ucbhelper::InteractionSupplyAuthentication
 ucbhelper::InterceptedInteraction
-ucbhelper::SimpleNameClashResolveRequest
-utl::Bootstrap::Impl
 utl::DefaultFontConfiguration
-utl::DesktopTerminationObserver
-utl::FontSubstConfiguration
-utl::OConfigurationValueContainer
-utl::ProgressHandlerWrap
-utl::ZipPackageHelper
 utl::detail::Options
-vcl::AccessibleFactoryAccess
-vcl::EventPoster
 vcl::ExtOutDevData
 vcl::ILibreOfficeKitNotifier
-vcl::ORoadmap
-vcl::OldStylePrintAdaptor
-vcl::PDFWriter::AnyWidget
-vcl::test::OutputDeviceTestGradient
-void OpenGLTexture
-wchar_t& std::vector<wchar_t, std::allocator<wchar_t> >
diff --git a/chart2/inc/ChartModel.hxx b/chart2/inc/ChartModel.hxx
index 1255c4982d14..b2e9a6d87cb8 100644
--- a/chart2/inc/ChartModel.hxx
+++ b/chart2/inc/ChartModel.hxx
@@ -115,7 +115,7 @@ typedef cppu::WeakImplHelper<
 class UndoManager;
 class ChartView;
 
-class OOO_DLLPUBLIC_CHARTTOOLS SAL_LOPLUGIN_ANNOTATE("crosscast") ChartModel 
final :
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) 
SAL_LOPLUGIN_ANNOTATE("crosscast") ChartModel final :
     public impl::ChartModel_Base
 {
 
diff --git a/chart2/inc/ChartTypeManager.hxx b/chart2/inc/ChartTypeManager.hxx
index 71fbf471e66c..41227a4a2df6 100644
--- a/chart2/inc/ChartTypeManager.hxx
+++ b/chart2/inc/ChartTypeManager.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include <cppuhelper/implbase.hxx>
 #include <com/sun/star/lang/XMultiServiceFactory.hpp>
 #include <com/sun/star/lang/XServiceInfo.hpp>
@@ -31,7 +32,7 @@ namespace chart
 {
 class ChartTypeTemplate;
 
-class OOO_DLLPUBLIC_CHARTTOOLS ChartTypeManager final :
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ChartTypeManager final :
         public ::cppu::WeakImplHelper<
         css::lang::XServiceInfo,
         css::lang::XMultiServiceFactory,
diff --git a/chart2/inc/ChartView.hxx b/chart2/inc/ChartView.hxx
index cbee98d8cb4a..e77fe760b67f 100644
--- a/chart2/inc/ChartView.hxx
+++ b/chart2/inc/ChartView.hxx
@@ -82,7 +82,7 @@ struct TimeBasedInfo
  * The View is not responsible to handle single user events (that is instead
  * done by the ChartWindow).
  */
-class OOO_DLLPUBLIC_CHARTVIEW ChartView final : public ::cppu::WeakImplHelper<
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTVIEW) ChartView final : public 
::cppu::WeakImplHelper<
     css::lang::XInitialization
         ,css::lang::XServiceInfo
         ,css::datatransfer::XTransferable
diff --git a/chart2/source/inc/Axis.hxx b/chart2/source/inc/Axis.hxx
index 902a67487cf5..e36acdbad7aa 100644
--- a/chart2/source/inc/Axis.hxx
+++ b/chart2/source/inc/Axis.hxx
@@ -47,7 +47,7 @@ typedef ::cppu::WeakImplHelper<
     Axis_Base;
 }
 
-class OOO_DLLPUBLIC_CHARTTOOLS Axis final :
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) Axis final :
     public impl::Axis_Base,
     public ::property::OPropertySet
 {
diff --git a/chart2/source/inc/AxisHelper.hxx b/chart2/source/inc/AxisHelper.hxx
index 5b9de9d9a1b0..7b764473a7d2 100644
--- a/chart2/source/inc/AxisHelper.hxx
+++ b/chart2/source/inc/AxisHelper.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include "charttoolsdllapi.hxx"
 #include <com/sun/star/chart2/ScaleData.hpp>
 #include <rtl/ref.hxx>
@@ -44,7 +45,7 @@ class ChartType;
 class Diagram;
 class GridProperties;
 
-class OOO_DLLPUBLIC_CHARTTOOLS AxisHelper
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) AxisHelper
 {
 public:
     static css::uno::Reference< css::chart2::XScaling > createLinearScaling();
diff --git a/chart2/source/inc/BaseGFXHelper.hxx 
b/chart2/source/inc/BaseGFXHelper.hxx
index 18481031e2ef..4ba4a65c8250 100644
--- a/chart2/source/inc/BaseGFXHelper.hxx
+++ b/chart2/source/inc/BaseGFXHelper.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include <basegfx/matrix/b3dhommatrix.hxx>
 #include <basegfx/range/b2irectangle.hxx>
 #include <basegfx/tuple/b3dtuple.hxx>
@@ -36,23 +37,23 @@ namespace com::sun::star::drawing { struct 
PolyPolygonShape3D; }
 namespace chart::BaseGFXHelper
 {
 
-OOO_DLLPUBLIC_CHARTTOOLS ::basegfx::B3DRange getBoundVolume( const 
css::drawing::PolyPolygonShape3D& rPolyPoly );
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ::basegfx::B3DRange getBoundVolume( 
const css::drawing::PolyPolygonShape3D& rPolyPoly );
 
-OOO_DLLPUBLIC_CHARTTOOLS ::basegfx::B3DRange getBoundVolume( const 
std::vector<std::vector<css::drawing::Position3D>>& rPolyPoly );
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ::basegfx::B3DRange getBoundVolume( 
const std::vector<std::vector<css::drawing::Position3D>>& rPolyPoly );
 
-OOO_DLLPUBLIC_CHARTTOOLS ::basegfx::B2IRectangle makeRectangle(
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ::basegfx::B2IRectangle 
makeRectangle(
             const css::awt::Point& rPosition,
             const css::awt::Size& rSize );
 
-OOO_DLLPUBLIC_CHARTTOOLS ::basegfx::B2IRectangle makeRectangle( const 
css::awt::Rectangle& rRect );
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ::basegfx::B2IRectangle 
makeRectangle( const css::awt::Rectangle& rRect );
 
-OOO_DLLPUBLIC_CHARTTOOLS css::awt::Point B2IRectangleToAWTPoint(
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) css::awt::Point 
B2IRectangleToAWTPoint(
             const ::basegfx::B2IRectangle& rB2IRectangle );
 
-OOO_DLLPUBLIC_CHARTTOOLS css::awt::Size B2IRectangleToAWTSize(
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) css::awt::Size 
B2IRectangleToAWTSize(
             const ::basegfx::B2IRectangle& rB2IRectangle );
 
-OOO_DLLPUBLIC_CHARTTOOLS css::awt::Rectangle toAwtRectangle(const 
basegfx::B2IRectangle& rB2IRectangle);
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) css::awt::Rectangle 
toAwtRectangle(const basegfx::B2IRectangle& rB2IRectangle);
 
 ::basegfx::B3DVector Direction3DToB3DVector(
     const css::drawing::Direction3D& rDirection );
@@ -66,17 +67,17 @@ css::drawing::Direction3D B3DVectorToDirection3D(
 css::drawing::Position3D B3DVectorToPosition3D(
     const ::basegfx::B3DVector& rB3DVector );
 
-OOO_DLLPUBLIC_CHARTTOOLS ::basegfx::B3DHomMatrix HomogenMatrixToB3DHomMatrix(
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ::basegfx::B3DHomMatrix 
HomogenMatrixToB3DHomMatrix(
     const css::drawing::HomogenMatrix & rHomogenMatrix );
 
-OOO_DLLPUBLIC_CHARTTOOLS
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
 css::drawing::HomogenMatrix B3DHomMatrixToHomogenMatrix(
     const ::basegfx::B3DHomMatrix & rB3DMatrix );
 
-OOO_DLLPUBLIC_CHARTTOOLS ::basegfx::B3DTuple GetRotationFromMatrix(
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ::basegfx::B3DTuple 
GetRotationFromMatrix(
     const ::basegfx::B3DHomMatrix & rB3DMatrix );
 
-OOO_DLLPUBLIC_CHARTTOOLS ::basegfx::B3DTuple GetScaleFromMatrix(
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ::basegfx::B3DTuple 
GetScaleFromMatrix(
     const ::basegfx::B3DHomMatrix & rB3DMatrix );
 
 void ReduceToRotationMatrix( ::basegfx::B3DHomMatrix & rB3DMatrix );
diff --git a/chart2/source/inc/CharacterProperties.hxx 
b/chart2/source/inc/CharacterProperties.hxx
index 4dd7a4fbd113..40367f9b943d 100644
--- a/chart2/source/inc/CharacterProperties.hxx
+++ b/chart2/source/inc/CharacterProperties.hxx
@@ -120,14 +120,14 @@ namespace CharacterProperties
         FAST_PROPERTY_ID_END_CHAR_PROP
     };
 
-    OOO_DLLPUBLIC_CHARTTOOLS void AddPropertiesToVector(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void AddPropertiesToVector(
         std::vector< css::beans::Property > & rOutProperties );
 
-    OOO_DLLPUBLIC_CHARTTOOLS void AddDefaultsToMap( ::chart::tPropertyValueMap 
& rOutMap );
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void AddDefaultsToMap( 
::chart::tPropertyValueMap & rOutMap );
 
-    OOO_DLLPUBLIC_CHARTTOOLS bool IsCharacterPropertyHandle( sal_Int32 nHandle 
);
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) bool IsCharacterPropertyHandle( 
sal_Int32 nHandle );
 
-    OOO_DLLPUBLIC_CHARTTOOLS css::awt::FontDescriptor 
createFontDescriptorFromPropertySet(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) css::awt::FontDescriptor 
createFontDescriptorFromPropertySet(
         const css::uno::Reference< css::beans::XMultiPropertySet > & 
xMultiPropSet );
 }
 
diff --git a/chart2/source/inc/ChartModelHelper.hxx 
b/chart2/source/inc/ChartModelHelper.hxx
index 9c18af92be6a..ec904ce8a7be 100644
--- a/chart2/source/inc/ChartModelHelper.hxx
+++ b/chart2/source/inc/ChartModelHelper.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include <com/sun/star/awt/Size.hpp>
 #include "charttoolsdllapi.hxx"
 #include <rtl/ref.hxx>
@@ -43,7 +44,7 @@ class DataSeries;
 class Diagram;
 class InternalDataProvider;
 
-class OOO_DLLPUBLIC_CHARTTOOLS ChartModelHelper
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ChartModelHelper
 {
 public:
     static rtl::Reference< InternalDataProvider > createInternalDataProvider(
diff --git a/chart2/source/inc/ChartType.hxx b/chart2/source/inc/ChartType.hxx
index 84e8048e0f5c..fa55cf05694f 100644
--- a/chart2/source/inc/ChartType.hxx
+++ b/chart2/source/inc/ChartType.hxx
@@ -59,7 +59,7 @@ typedef ::cppu::WeakImplHelper<
     ChartType_Base;
 }
 
-class OOO_DLLPUBLIC_CHARTTOOLS ChartType :
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ChartType :
     public impl::ChartType_Base,
     public ::property::OPropertySet
 {
diff --git a/chart2/source/inc/ChartTypeHelper.hxx 
b/chart2/source/inc/ChartTypeHelper.hxx
index 379f96ad0e44..83a83363004c 100644
--- a/chart2/source/inc/ChartTypeHelper.hxx
+++ b/chart2/source/inc/ChartTypeHelper.hxx
@@ -19,6 +19,7 @@
 
 #pragma once
 
+#include <config_options.h>
 #include <com/sun/star/drawing/Direction3D.hpp>
 #include "charttoolsdllapi.hxx"
 #include <rtl/ref.hxx>
@@ -31,7 +32,7 @@ namespace chart
 class ChartType;
 class DataSeries;
 
-class OOO_DLLPUBLIC_CHARTTOOLS ChartTypeHelper
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ChartTypeHelper
 {
 public:
     static bool isSupportingGeometryProperties(  const rtl::Reference< 
::chart::ChartType >& xChartType, sal_Int32 nDimensionCount );
diff --git a/chart2/source/inc/ChartTypeTemplate.hxx 
b/chart2/source/inc/ChartTypeTemplate.hxx
index b22165e79fa9..ffd7cca26599 100644
--- a/chart2/source/inc/ChartTypeTemplate.hxx
+++ b/chart2/source/inc/ChartTypeTemplate.hxx
@@ -79,7 +79,7 @@ class LabeledDataSequence;
 
     * create an XLegend via the global service factory, set it at the diagram.
  */
-class OOO_DLLPUBLIC_CHARTTOOLS ChartTypeTemplate : public 
::cppu::WeakImplHelper<
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ChartTypeTemplate : public 
::cppu::WeakImplHelper<
         css::chart2::XChartTypeTemplate,
         css::lang::XServiceName >
 {
diff --git a/chart2/source/inc/ChartViewHelper.hxx 
b/chart2/source/inc/ChartViewHelper.hxx
index be70dd9fecb4..0ffe60220f60 100644
--- a/chart2/source/inc/ChartViewHelper.hxx
+++ b/chart2/source/inc/ChartViewHelper.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include "charttoolsdllapi.hxx"
 #include <rtl/ref.hxx>
 
@@ -34,9 +35,11 @@ class ChartModel;
 
 namespace ChartViewHelper
 {
-OOO_DLLPUBLIC_CHARTTOOLS void setViewToDirtyState(const 
rtl::Reference<ChartModel>& xChartModel);
-OOO_DLLPUBLIC_CHARTTOOLS void
-setViewToDirtyState_UNO(const 
css::uno::Reference<css::chart2::XChartDocument>& xChartModel);
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+void setViewToDirtyState(const rtl::Reference<ChartModel>& xChartModel);
+
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+void setViewToDirtyState_UNO(const 
css::uno::Reference<css::chart2::XChartDocument>& xChartModel);
 };
 
 } //namespace chart
diff --git a/chart2/source/inc/ColorPerPointHelper.hxx 
b/chart2/source/inc/ColorPerPointHelper.hxx
index 43a8d56802ca..575019e9bbb2 100644
--- a/chart2/source/inc/ColorPerPointHelper.hxx
+++ b/chart2/source/inc/ColorPerPointHelper.hxx
@@ -19,6 +19,7 @@
 
 #pragma once
 
+#include <config_options.h>
 #include "charttoolsdllapi.hxx"
 #include <rtl/ref.hxx>
 
@@ -29,7 +30,7 @@ namespace chart
 {
 class DataSeries;
 
-class OOO_DLLPUBLIC_CHARTTOOLS ColorPerPointHelper
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ColorPerPointHelper
 {
 public:
     static bool hasPointOwnColor(
diff --git a/chart2/source/inc/ControllerLockGuard.hxx 
b/chart2/source/inc/ControllerLockGuard.hxx
index f9de7aa5b4dc..b9da29954a02 100644
--- a/chart2/source/inc/ControllerLockGuard.hxx
+++ b/chart2/source/inc/ControllerLockGuard.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include "charttoolsdllapi.hxx"
 #include <rtl/ref.hxx>
 
@@ -36,7 +37,7 @@ namespace chart
     unlockControllers in the DTOR.  Using this ensures that controllers do not
     remain locked when leaving a function even in case an exception is thrown.
  */
-class OOO_DLLPUBLIC_CHARTTOOLS ControllerLockGuardUNO
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ControllerLockGuardUNO
 {
 public:
     explicit ControllerLockGuardUNO(rtl::Reference<::chart::ChartModel> 
xModel);
@@ -62,7 +63,7 @@ private:
     Use the ControllerLockHelperGuard to lock/unlock the model during a block 
of
     instructions.
  */
-class OOO_DLLPUBLIC_CHARTTOOLS ControllerLockHelper
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ControllerLockHelper
 {
 public:
     explicit ControllerLockHelper(rtl::Reference<::chart::ChartModel> xModel);
@@ -80,7 +81,7 @@ private:
     do not remain locked when leaving a function even in case an exception is
     thrown.
  */
-class OOO_DLLPUBLIC_CHARTTOOLS ControllerLockHelperGuard
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ControllerLockHelperGuard
 {
 public:
     explicit ControllerLockHelperGuard(ControllerLockHelper& rHelper);
diff --git a/chart2/source/inc/DataSeries.hxx b/chart2/source/inc/DataSeries.hxx
index e643486d5992..3705ea3fdab4 100644
--- a/chart2/source/inc/DataSeries.hxx
+++ b/chart2/source/inc/DataSeries.hxx
@@ -60,7 +60,7 @@ typedef ::cppu::WeakImplHelper<
     DataSeries_Base;
 }
 
-class OOO_DLLPUBLIC_CHARTTOOLS DataSeries
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) DataSeries
     final
     : public impl::DataSeries_Base
     , public ::property::OPropertySet
diff --git a/chart2/source/inc/DataSeriesHelper.hxx 
b/chart2/source/inc/DataSeriesHelper.hxx
index b1f4e0ba3441..2015398a7681 100644
--- a/chart2/source/inc/DataSeriesHelper.hxx
+++ b/chart2/source/inc/DataSeriesHelper.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include "StackMode.hxx"
 #include "charttoolsdllapi.hxx"
 #include <com/sun/star/uno/Reference.h>
@@ -46,8 +47,8 @@ namespace chart { class LabeledDataSequence; }
 namespace chart::DataSeriesHelper
 {
 
-OOO_DLLPUBLIC_CHARTTOOLS OUString
-    getRole( const 
css::uno::Reference<css::chart2::data::XLabeledDataSequence>& 
xLabeledDataSequence );
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+OUString getRole( const 
css::uno::Reference<css::chart2::data::XLabeledDataSequence>& 
xLabeledDataSequence );
 
 /** Retrieves the data sequence in the given data source that matches the
     given role.  If more than one sequences match the role, the first match
@@ -59,7 +60,8 @@ OOO_DLLPUBLIC_CHARTTOOLS OUString
     @param aRole
         The role that is to be filtered out.
 */
-OOO_DLLPUBLIC_CHARTTOOLS css::uno::Reference< 
css::chart2::data::XLabeledDataSequence >
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+css::uno::Reference< css::chart2::data::XLabeledDataSequence >
     getDataSequenceByRole( const css::uno::Reference< 
css::chart2::data::XDataSource > & xSource,
                            const OUString& aRole,
                            bool bMatchPrefix = false );
@@ -73,16 +75,18 @@ OOO_DLLPUBLIC_CHARTTOOLS css::uno::Reference< 
css::chart2::data::XLabeledDataSeq
     @param aRole
         The role that is to be filtered out.
 */
-OOO_DLLPUBLIC_CHARTTOOLS std::vector<
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+std::vector<
   css::uno::Reference< css::chart2::data::XLabeledDataSequence > >
     getAllDataSequencesByRole( const css::uno::Sequence< css::uno::Reference< 
css::chart2::data::XLabeledDataSequence > > & aDataSequences,
                                const OUString& aRole );
-OOO_DLLPUBLIC_CHARTTOOLS std::vector<
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+std::vector<
   css::uno::Reference< css::chart2::data::XLabeledDataSequence > >
     getAllDataSequencesByRole( const std::vector< css::uno::Reference< 
css::chart2::data::XLabeledDataSequence > > & aDataSequences,
                                const OUString& aRole );
 
-OOO_DLLPUBLIC_CHARTTOOLS
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
 std::vector< css::uno::Reference< css::chart2::data::XLabeledDataSequence > >
 getAllDataSequences(
     const std::vector<rtl::Reference<::chart::DataSeries> >& aSeries );
@@ -91,79 +95,95 @@ getAllDataSequences(
     into a data source.  The order of sequences will match the order of the 
data
     series.
  */
-OOO_DLLPUBLIC_CHARTTOOLS rtl::Reference< ::chart::DataSource >
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+rtl::Reference< ::chart::DataSource >
     getDataSource( const std::vector< rtl::Reference< ::chart::DataSeries > > 
& aSeries );
 
-OOO_DLLPUBLIC_CHARTTOOLS void setStackModeAtSeries(
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+void setStackModeAtSeries(
     const std::vector< rtl::Reference< ::chart::DataSeries > > & aSeries,
     const rtl::Reference< ::chart::BaseCoordinateSystem > & 
xCorrespondingCoordinateSystem,
     StackMode eStackMode );
 
-OOO_DLLPUBLIC_CHARTTOOLS sal_Int32 getAttachedAxisIndex(
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+sal_Int32 getAttachedAxisIndex(
     const rtl::Reference< ::chart::DataSeries > & xSeries );
 
 /// @param nAxisIndex, if -1 it is determined by the given data series via 
getAttachedAxisIndex
-OOO_DLLPUBLIC_CHARTTOOLS sal_Int32 getNumberFormatKeyFromAxis(
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+sal_Int32 getNumberFormatKeyFromAxis(
     const rtl::Reference< ::chart::DataSeries > & xSeries,
     const rtl::Reference< ::chart::BaseCoordinateSystem > & 
xCorrespondingCoordinateSystem,
     sal_Int32 nDimensionIndex,
     sal_Int32 nAxisIndex = -1 );
 
-OOO_DLLPUBLIC_CHARTTOOLS
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
 rtl::Reference< ::chart::BaseCoordinateSystem >
     getCoordinateSystemOfSeries(
         const rtl::Reference< ::chart::DataSeries > & xSeries,
         const rtl::Reference< ::chart::Diagram > & xDiagram );
 
-OOO_DLLPUBLIC_CHARTTOOLS
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
 rtl::Reference< ::chart::ChartType >
     getChartTypeOfSeries(
         const rtl::Reference< ::chart::DataSeries > & xSeries,
         const rtl::Reference< ::chart::Diagram > & xDiagram );
 
-OOO_DLLPUBLIC_CHARTTOOLS void deleteSeries(
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+void deleteSeries(
     const rtl::Reference< ::chart::DataSeries > & xSeries,
     const rtl::Reference< ::chart::ChartType > & xChartType );
 
-OOO_DLLPUBLIC_CHARTTOOLS void switchSymbolsOnOrOff(
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+void switchSymbolsOnOrOff(
     const rtl::Reference< ::chart::DataSeries > & xSeries,
     bool bSymbolsOn, sal_Int32 nSeriesIndex );
 
-OOO_DLLPUBLIC_CHARTTOOLS void switchLinesOnOrOff(
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+void switchLinesOnOrOff(
     const rtl::Reference< ::chart::DataSeries > & xSeries,
     bool bLinesOn );
 
-OOO_DLLPUBLIC_CHARTTOOLS
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
 void makeLinesThickOrThin( const rtl::Reference< ::chart::DataSeries > & 
xSeries, bool bThick );
 
-OOO_DLLPUBLIC_CHARTTOOLS void setPropertyAlsoToAllAttributedDataPoints(
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+void setPropertyAlsoToAllAttributedDataPoints(
         const rtl::Reference< ::chart::DataSeries >& xSeries,
         const OUString& rPropertyName,
         const css::uno::Any& rPropertyValue );
 
 
-OOO_DLLPUBLIC_CHARTTOOLS bool hasAttributedDataPointDifferentValue(
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+bool hasAttributedDataPointDifferentValue(
     const rtl::Reference< ::chart::DataSeries >& xSeries,
     const OUString& rPropertyName,
     const css::uno::Any& rPropertyValue );
 
-OOO_DLLPUBLIC_CHARTTOOLS
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
 sal_Int32 translateIndexFromHiddenToFullSequence( sal_Int32 nClippedIndex, 
const css::uno::Reference<
         css::chart2::data::XDataSequence >& xDataSequence, bool bTranslate );
 
-OOO_DLLPUBLIC_CHARTTOOLS bool hasDataLabelsAtSeries( const rtl::Reference< 
::chart::DataSeries >& xSeries );
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+bool hasDataLabelsAtSeries( const rtl::Reference< ::chart::DataSeries >& 
xSeries );
 
-OOO_DLLPUBLIC_CHARTTOOLS bool hasDataLabelsAtPoints( const rtl::Reference< 
::chart::DataSeries >& xSeries );
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+bool hasDataLabelsAtPoints( const rtl::Reference< ::chart::DataSeries >& 
xSeries );
 
-OOO_DLLPUBLIC_CHARTTOOLS bool hasDataLabelAtPoint( const rtl::Reference< 
::chart::DataSeries >& xSeries, sal_Int32 nPointIndex );
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+bool hasDataLabelAtPoint( const rtl::Reference< ::chart::DataSeries >& 
xSeries, sal_Int32 nPointIndex );
 
-OOO_DLLPUBLIC_CHARTTOOLS void insertDataLabelsToSeriesAndAllPoints( const 
rtl::Reference< ::chart::DataSeries >& xSeries );
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+void insertDataLabelsToSeriesAndAllPoints( const rtl::Reference< 
::chart::DataSeries >& xSeries );
 
-OOO_DLLPUBLIC_CHARTTOOLS void insertDataLabelToPoint( const 
css::uno::Reference< css::beans::XPropertySet >& xPointPropertySet );
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+void insertDataLabelToPoint( const css::uno::Reference< 
css::beans::XPropertySet >& xPointPropertySet );
 
-OOO_DLLPUBLIC_CHARTTOOLS void deleteDataLabelsFromSeriesAndAllPoints( const 
rtl::Reference< ::chart::DataSeries >& xSeries );
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+void deleteDataLabelsFromSeriesAndAllPoints( const rtl::Reference< 
::chart::DataSeries >& xSeries );
 
-OOO_DLLPUBLIC_CHARTTOOLS void deleteDataLabelsFromPoint( const 
css::uno::Reference< css::beans::XPropertySet >& xPointPropertySet );
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
+void deleteDataLabelsFromPoint( const css::uno::Reference< 
css::beans::XPropertySet >& xPointPropertySet );
 
 } //  namespace chart::DataSeriesHelper
 
diff --git a/chart2/source/inc/DataSource.hxx b/chart2/source/inc/DataSource.hxx
index 6e9b84ed9bd9..9b976e439a66 100644
--- a/chart2/source/inc/DataSource.hxx
+++ b/chart2/source/inc/DataSource.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include <com/sun/star/lang/XServiceInfo.hpp>
 #include <com/sun/star/chart2/data/XDataSource.hpp>
 #include <com/sun/star/chart2/data/XDataSink.hpp>
@@ -29,7 +30,7 @@ namespace chart
 {
 class LabeledDataSequence;
 
-class OOO_DLLPUBLIC_CHARTTOOLS DataSource final : public
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) DataSource final : public
     ::cppu::WeakImplHelper<
         css::lang::XServiceInfo,
         css::chart2::data::XDataSource,
diff --git a/chart2/source/inc/DataSourceHelper.hxx 
b/chart2/source/inc/DataSourceHelper.hxx
index 52ed68945917..7b08cafc22a7 100644
--- a/chart2/source/inc/DataSourceHelper.hxx
+++ b/chart2/source/inc/DataSourceHelper.hxx
@@ -19,6 +19,7 @@
 
 #pragma once
 
+#include <config_options.h>
 #include "charttoolsdllapi.hxx"
 #include <com/sun/star/uno/Reference.h>
 #include <com/sun/star/uno/Sequence.h>
@@ -39,7 +40,7 @@ class DataSource;
 class Diagram;
 class LabeledDataSequence;
 
-class OOO_DLLPUBLIC_CHARTTOOLS DataSourceHelper
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) DataSourceHelper
 {
 public:
         static css::uno::Reference< css::chart2::data::XDataSequence >
diff --git a/chart2/source/inc/DataTable.hxx b/chart2/source/inc/DataTable.hxx
index da15e264f4f6..fdebc6f1751a 100644
--- a/chart2/source/inc/DataTable.hxx
+++ b/chart2/source/inc/DataTable.hxx
@@ -27,8 +27,8 @@ typedef cppu::WeakImplHelper<css::chart2::XDataTable, 
css::lang::XServiceInfo,
     DataTable_Base;
 
 /** Data table implementation */
-class OOO_DLLPUBLIC_CHARTTOOLS DataTable final : public DataTable_Base,
-                                                 public 
::property::OPropertySet
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) DataTable final : public 
DataTable_Base,
+                                                                   public 
::property::OPropertySet
 {
 public:
     explicit DataTable();
diff --git a/chart2/source/inc/Diagram.hxx b/chart2/source/inc/Diagram.hxx
index 1d3e8bd78901..62e9eeeac69a 100644
--- a/chart2/source/inc/Diagram.hxx
+++ b/chart2/source/inc/Diagram.hxx
@@ -72,7 +72,7 @@ typedef ::cppu::WeakImplHelper<
     Diagram_Base;
 }
 
-class OOO_DLLPUBLIC_CHARTTOOLS Diagram
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) Diagram
     final
     : public impl::Diagram_Base
     , public ::property::OPropertySet
diff --git a/chart2/source/inc/DiagramHelper.hxx 
b/chart2/source/inc/DiagramHelper.hxx
index c65bce883dd3..a989fa548a02 100644
--- a/chart2/source/inc/DiagramHelper.hxx
+++ b/chart2/source/inc/DiagramHelper.hxx
@@ -51,7 +51,7 @@ class DataSeries;
 class Diagram;
 class LabeledDataSequence;
 
-class OOO_DLLPUBLIC_CHARTTOOLS DiagramHelper
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) DiagramHelper
 {
 public:
 
diff --git a/chart2/source/inc/ErrorBar.hxx b/chart2/source/inc/ErrorBar.hxx
index ed6d646be5a0..939b95c739e8 100644
--- a/chart2/source/inc/ErrorBar.hxx
+++ b/chart2/source/inc/ErrorBar.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include "charttoolsdllapi.hxx"
 
 #include <cppuhelper/implbase.hxx>
@@ -74,7 +75,7 @@ private:
     sal_Int32 meStyle;
 
 public:
-    OOO_DLLPUBLIC_CHARTTOOLS explicit ErrorBar();
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) explicit ErrorBar();
     virtual ~ErrorBar() override;
 
     /// XServiceInfo declarations
diff --git a/chart2/source/inc/ExplicitCategoriesProvider.hxx 
b/chart2/source/inc/ExplicitCategoriesProvider.hxx
index c393b49a8624..73bc258c9922 100644
--- a/chart2/source/inc/ExplicitCategoriesProvider.hxx
+++ b/chart2/source/inc/ExplicitCategoriesProvider.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include "charttoolsdllapi.hxx"
 #include <unotools/weakref.hxx>
 #include <com/sun/star/uno/Reference.h>
@@ -55,7 +56,7 @@ public:
     virtual css::uno::Sequence< OUString > getStringsForLevel( sal_Int32 
nIndex ) const = 0;
 };
 
-class OOO_DLLPUBLIC_CHARTTOOLS ExplicitCategoriesProvider final
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ExplicitCategoriesProvider 
final
 {
 public:
     ExplicitCategoriesProvider( const rtl::Reference< 
::chart::BaseCoordinateSystem >& xCooSysModel
diff --git a/chart2/source/inc/FillProperties.hxx 
b/chart2/source/inc/FillProperties.hxx
index 84759cfa0ced..ce1c6d83629c 100644
--- a/chart2/source/inc/FillProperties.hxx
+++ b/chart2/source/inc/FillProperties.hxx
@@ -63,10 +63,10 @@ namespace FillProperties
         , PROP_FILL_BACKGROUND
     };
 
-    OOO_DLLPUBLIC_CHARTTOOLS void AddPropertiesToVector(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void AddPropertiesToVector(
         std::vector< css::beans::Property > & rOutProperties );
 
-    OOO_DLLPUBLIC_CHARTTOOLS void AddDefaultsToMap( ::chart::tPropertyValueMap 
& rOutMap );
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void AddDefaultsToMap( 
::chart::tPropertyValueMap & rOutMap );
 }
 
 } //  namespace chart
diff --git a/chart2/source/inc/GridProperties.hxx 
b/chart2/source/inc/GridProperties.hxx
index e5264a1b2fe0..da19322675e3 100644
--- a/chart2/source/inc/GridProperties.hxx
+++ b/chart2/source/inc/GridProperties.hxx
@@ -39,7 +39,7 @@ typedef ::cppu::WeakImplHelper<
     GridProperties_Base;
 }
 
-class OOO_DLLPUBLIC_CHARTTOOLS GridProperties final :
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) GridProperties final :
         public impl::GridProperties_Base,
         public ::property::OPropertySet
 {
diff --git a/chart2/source/inc/LabeledDataSequence.hxx 
b/chart2/source/inc/LabeledDataSequence.hxx
index ab5338420be3..aa37753695f9 100644
--- a/chart2/source/inc/LabeledDataSequence.hxx
+++ b/chart2/source/inc/LabeledDataSequence.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include <cppuhelper/implbase.hxx>
 
 #include <com/sun/star/chart2/data/XLabeledDataSequence2.hpp>
@@ -40,7 +41,7 @@ typedef cppu::WeakImplHelper<
     LabeledDataSequence_Base;
 }
 
-class OOO_DLLPUBLIC_CHARTTOOLS LabeledDataSequence final :
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) LabeledDataSequence final :
         public impl::LabeledDataSequence_Base
 {
 public:
diff --git a/chart2/source/inc/Legend.hxx b/chart2/source/inc/Legend.hxx
index 9caa0c7b06bb..dbc3db602400 100644
--- a/chart2/source/inc/Legend.hxx
+++ b/chart2/source/inc/Legend.hxx
@@ -42,7 +42,7 @@ typedef ::cppu::WeakImplHelper<
     Legend_Base;
 }
 
-class OOO_DLLPUBLIC_CHARTTOOLS Legend final :
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) Legend final :
     public impl::Legend_Base,
     public ::property::OPropertySet
 {
diff --git a/chart2/source/inc/LegendHelper.hxx 
b/chart2/source/inc/LegendHelper.hxx
index f2bf2e55fefb..c46131bd2bc4 100644
--- a/chart2/source/inc/LegendHelper.hxx
+++ b/chart2/source/inc/LegendHelper.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include <com/sun/star/uno/Reference.hxx>
 #include <rtl/ref.hxx>
 #include "charttoolsdllapi.hxx"
@@ -32,7 +33,7 @@ namespace chart
 class Diagram;
 class Legend;
 
-class OOO_DLLPUBLIC_CHARTTOOLS LegendHelper
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) LegendHelper
 {
 public:
     static rtl::Reference< ::chart::Legend >
diff --git a/chart2/source/inc/LifeTime.hxx b/chart2/source/inc/LifeTime.hxx
index e16edd1e595a..582d10086b78 100644
--- a/chart2/source/inc/LifeTime.hxx
+++ b/chart2/source/inc/LifeTime.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include <mutex>
 #include <osl/conditn.hxx>
 #include <comphelper/interfacecontainer4.hxx>
@@ -35,7 +36,7 @@ namespace com::sun::star::view { class 
XSelectionChangeListener; }
 namespace apphelper
 {
 
-class OOO_DLLPUBLIC_CHARTTOOLS LifeTimeManager
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) LifeTimeManager
 {
 friend class LifeTimeGuard;
 public:
diff --git a/chart2/source/inc/LinePropertiesHelper.hxx 
b/chart2/source/inc/LinePropertiesHelper.hxx
index 2999de81a76f..efa5a6e6b847 100644
--- a/chart2/source/inc/LinePropertiesHelper.hxx
+++ b/chart2/source/inc/LinePropertiesHelper.hxx
@@ -48,10 +48,10 @@ namespace LinePropertiesHelper
         PROP_LINE_CAP
     };
 
-    OOO_DLLPUBLIC_CHARTTOOLS void AddPropertiesToVector(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void AddPropertiesToVector(
         std::vector< css::beans::Property > & rOutProperties );
 
-    OOO_DLLPUBLIC_CHARTTOOLS void AddDefaultsToMap( ::chart::tPropertyValueMap 
& rOutMap );
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void AddDefaultsToMap( 
::chart::tPropertyValueMap & rOutMap );
 
     bool IsLineVisible( const css::uno::Reference<
         css::beans::XPropertySet >& xLineProperties );
diff --git a/chart2/source/inc/MediaDescriptorHelper.hxx 
b/chart2/source/inc/MediaDescriptorHelper.hxx
index cfef8fc14f68..46edb2657598 100644
--- a/chart2/source/inc/MediaDescriptorHelper.hxx
+++ b/chart2/source/inc/MediaDescriptorHelper.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include <com/sun/star/uno/Sequence.hxx>
 #include <com/sun/star/uno/Reference.hxx>
 #include <com/sun/star/beans/PropertyValue.hpp>
@@ -43,7 +44,7 @@ namespace com::sun::star::io { class XStream; }
 namespace apphelper
 {
 
-class OOO_DLLPUBLIC_CHARTTOOLS MediaDescriptorHelper final
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) MediaDescriptorHelper final
 {
 public:
     MediaDescriptorHelper( const css::uno::Sequence< css::beans::PropertyValue 
> & rMediaDescriptor );
diff --git a/chart2/source/inc/ModifyListenerCallBack.hxx 
b/chart2/source/inc/ModifyListenerCallBack.hxx
index 406804189e73..b1b704c86002 100644
--- a/chart2/source/inc/ModifyListenerCallBack.hxx
+++ b/chart2/source/inc/ModifyListenerCallBack.hxx
@@ -19,6 +19,7 @@
 
 #pragma once
 
+#include <config_options.h>
 #include <tools/link.hxx>
 #include <com/sun/star/util/XModifyBroadcaster.hpp>
 #include <com/sun/star/util/XModifyListener.hpp>
@@ -32,7 +33,7 @@ without becoming a XModifyListener yourself
 
 class ModifyListenerCallBack_impl;
 
-class OOO_DLLPUBLIC_CHARTTOOLS ModifyListenerCallBack final
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ModifyListenerCallBack final
 {
 public:
     explicit ModifyListenerCallBack(const Link<void*, void>& rCallBack);
diff --git a/chart2/source/inc/NumberFormatterWrapper.hxx 
b/chart2/source/inc/NumberFormatterWrapper.hxx
index c3412fc9c91c..aff249d84f33 100644
--- a/chart2/source/inc/NumberFormatterWrapper.hxx
+++ b/chart2/source/inc/NumberFormatterWrapper.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include "charttoolsdllapi.hxx"
 #include <com/sun/star/util/XNumberFormatsSupplier.hpp>
 #include <tools/date.hxx>
@@ -28,7 +29,7 @@ class Color;
 namespace chart
 {
 
-class OOO_DLLPUBLIC_CHARTTOOLS NumberFormatterWrapper final
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) NumberFormatterWrapper final
 {
 public:
     NumberFormatterWrapper( const css::uno::Reference< 
css::util::XNumberFormatsSupplier >& xSupplier );
diff --git a/chart2/source/inc/OPropertySet.hxx 
b/chart2/source/inc/OPropertySet.hxx
index aa5d2e7cd4ba..0dd19a236e8a 100644
--- a/chart2/source/inc/OPropertySet.hxx
+++ b/chart2/source/inc/OPropertySet.hxx
@@ -18,6 +18,8 @@
  */
 #pragma once
 
+
+#include <config_options.h>
 // helper classes
 #include <cppuhelper/basemutex.hxx>
 #include <cppuhelper/propshlp.hxx>
@@ -34,7 +36,7 @@
 namespace property
 {
 
-class OOO_DLLPUBLIC_CHARTTOOLS OPropertySet :
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) OPropertySet :
     protected cppu::BaseMutex,
     public ::cppu::OBroadcastHelper,
     // includes beans::XPropertySet, XMultiPropertySet and XFastPropertySet
diff --git a/chart2/source/inc/ObjectIdentifier.hxx 
b/chart2/source/inc/ObjectIdentifier.hxx
index aefbd4c8a6e7..5cfd6a1671b1 100644
--- a/chart2/source/inc/ObjectIdentifier.hxx
+++ b/chart2/source/inc/ObjectIdentifier.hxx
@@ -79,7 +79,7 @@ enum ObjectType
     OBJECTTYPE_UNKNOWN
 };
 
-class OOO_DLLPUBLIC_CHARTTOOLS ObjectIdentifier
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ObjectIdentifier
 {
     //CID == ClassifiedIdentifier <--> name of shape
     //semicolon, colon, equal sign and slash have special meanings in a CID
diff --git a/chart2/source/inc/PopupRequest.hxx 
b/chart2/source/inc/PopupRequest.hxx
index a755fdfa3c85..90fe315d2471 100644
--- a/chart2/source/inc/PopupRequest.hxx
+++ b/chart2/source/inc/PopupRequest.hxx
@@ -9,6 +9,7 @@
 
 #pragma once
 
+#include <config_options.h>
 #include "charttoolsdllapi.hxx"
 
 #include <comphelper/compbase.hxx>
@@ -21,7 +22,7 @@ namespace impl
 typedef comphelper::WeakComponentImplHelper<css::awt::XRequestCallback> 
PopupRequest_Base;
 }
 
-class OOO_DLLPUBLIC_CHARTTOOLS PopupRequest final : public 
impl::PopupRequest_Base
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) PopupRequest final : public 
impl::PopupRequest_Base
 {
 public:
     explicit PopupRequest();
diff --git a/chart2/source/inc/PropertyHelper.hxx 
b/chart2/source/inc/PropertyHelper.hxx
index 14aa57609534..3e1949057361 100644
--- a/chart2/source/inc/PropertyHelper.hxx
+++ b/chart2/source/inc/PropertyHelper.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include <com/sun/star/beans/Property.hpp>
 #include <com/sun/star/uno/Any.hxx>
 #include "charttoolsdllapi.hxx"
@@ -41,7 +42,7 @@ namespace PropertyHelper
 
     @return The name used for storing this element in the table
 */
-OOO_DLLPUBLIC_CHARTTOOLS OUString addLineDashUniqueNameToTable(
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) OUString 
addLineDashUniqueNameToTable(
     const css::uno::Any & rValue,
     const css::uno::Reference< css::lang::XMultiServiceFactory > & xFact,
     const OUString & rPreferredName );
@@ -51,7 +52,7 @@ OOO_DLLPUBLIC_CHARTTOOLS OUString 
addLineDashUniqueNameToTable(
 
     @return The name used for storing this element in the table
 */
-OOO_DLLPUBLIC_CHARTTOOLS OUString addGradientUniqueNameToTable(
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) OUString 
addGradientUniqueNameToTable(
     const css::uno::Any & rValue,
     const css::uno::Reference< css::lang::XMultiServiceFactory > & xFact,
     const OUString & rPreferredName );
@@ -61,7 +62,7 @@ OOO_DLLPUBLIC_CHARTTOOLS OUString 
addGradientUniqueNameToTable(
 
     @return The name used for storing this element in the table
 */
-OOO_DLLPUBLIC_CHARTTOOLS
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
 OUString addTransparencyGradientUniqueNameToTable(
     const css::uno::Any & rValue,
     const css::uno::Reference< css::lang::XMultiServiceFactory > & xFact,
@@ -72,7 +73,7 @@ OUString addTransparencyGradientUniqueNameToTable(
 
     @return The name used for storing this element in the table
 */
-OOO_DLLPUBLIC_CHARTTOOLS OUString addHatchUniqueNameToTable(
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) OUString addHatchUniqueNameToTable(
     const css::uno::Any & rValue,
     const css::uno::Reference< css::lang::XMultiServiceFactory > & xFact,
     const OUString & rPreferredName );
@@ -82,7 +83,7 @@ OOO_DLLPUBLIC_CHARTTOOLS OUString addHatchUniqueNameToTable(
 
     @return The name used for storing this element in the table
 */
-OOO_DLLPUBLIC_CHARTTOOLS OUString addBitmapUniqueNameToTable(
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) OUString addBitmapUniqueNameToTable(
     const css::uno::Any & rValue,
     const css::uno::Reference< css::lang::XMultiServiceFactory > & xFact,
     const OUString & rPreferredName );
@@ -92,7 +93,7 @@ OOO_DLLPUBLIC_CHARTTOOLS OUString addBitmapUniqueNameToTable(
 
     @param any is the value encapsulated in the variant type Any
  */
-OOO_DLLPUBLIC_CHARTTOOLS
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS)
 void setPropertyValueAny( tPropertyValueMap & rOutMap, tPropertyValueMapKey 
key,
                           const css::uno::Any & rAny );
 
@@ -111,7 +112,7 @@ template< typename Value >
 template<>
     void setPropertyValue< css::uno::Any >( tPropertyValueMap & rOutMap, 
tPropertyValueMapKey key, const css::uno::Any & rAny );
 
-OOO_DLLPUBLIC_CHARTTOOLS void setPropertyValueDefaultAny( tPropertyValueMap & 
rOutMap, tPropertyValueMapKey key, const css::uno::Any & rAny );
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void setPropertyValueDefaultAny( 
tPropertyValueMap & rOutMap, tPropertyValueMapKey key, const css::uno::Any & 
rAny );
 
 /** Calls setPropertyValue() but asserts that the given property hasn't been 
set
     before.
@@ -130,7 +131,7 @@ template<>
 
 /** Calls setPropertyValueDefault() with an empty Any as value
  */
-OOO_DLLPUBLIC_CHARTTOOLS void setEmptyPropertyValueDefault( tPropertyValueMap 
& rOutMap, tPropertyValueMapKey key );
+UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void setEmptyPropertyValueDefault( 
tPropertyValueMap & rOutMap, tPropertyValueMapKey key );
 
 } // namespace PropertyHelper
 
diff --git a/chart2/source/inc/ReferenceSizeProvider.hxx 
b/chart2/source/inc/ReferenceSizeProvider.hxx
index dbacd093ff24..f3626b03d193 100644
--- a/chart2/source/inc/ReferenceSizeProvider.hxx
+++ b/chart2/source/inc/ReferenceSizeProvider.hxx
@@ -38,7 +38,7 @@ namespace com::sun::star {
 namespace chart
 {
 
-class OOO_DLLPUBLIC_CHARTTOOLS ReferenceSizeProvider
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ReferenceSizeProvider
 {
 public:
 
diff --git a/chart2/source/inc/RegressionCurveHelper.hxx 
b/chart2/source/inc/RegressionCurveHelper.hxx
index f9d919506460..fc0c2abcd5b7 100644
--- a/chart2/source/inc/RegressionCurveHelper.hxx
+++ b/chart2/source/inc/RegressionCurveHelper.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include <svx/chrtitem.hxx>
 #include "charttoolsdllapi.hxx"
 #include <rtl/ref.hxx>
@@ -46,20 +47,20 @@ namespace chart::RegressionCurveHelper
     rtl::Reference<::chart::RegressionCurveModel>
         createRegressionCurveByServiceName( std::u16string_view aServiceName );
 
-    OOO_DLLPUBLIC_CHARTTOOLS bool hasMeanValueLine(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) bool hasMeanValueLine(
         const css::uno::Reference<css::chart2::XRegressionCurveContainer> & 
xRegCnt );
-    OOO_DLLPUBLIC_CHARTTOOLS bool hasMeanValueLine(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) bool hasMeanValueLine(
         const rtl::Reference<::chart::DataSeries> & xRegCnt );
 
-    OOO_DLLPUBLIC_CHARTTOOLS bool isMeanValueLine(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) bool isMeanValueLine(
         const css::uno::Reference<css::chart2::XRegressionCurve> & xRegCurve );
-    OOO_DLLPUBLIC_CHARTTOOLS bool isMeanValueLine(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) bool isMeanValueLine(
         const rtl::Reference<::chart::RegressionCurveModel> & xRegCurve );
 
-    OOO_DLLPUBLIC_CHARTTOOLS rtl::Reference<::chart::RegressionCurveModel>
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) 
rtl::Reference<::chart::RegressionCurveModel>
         getMeanValueLine(
             const css::uno::Reference<css::chart2::XRegressionCurveContainer> 
& xRegCnt );
-    OOO_DLLPUBLIC_CHARTTOOLS rtl::Reference<::chart::RegressionCurveModel>
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) 
rtl::Reference<::chart::RegressionCurveModel>
         getMeanValueLine(
             const rtl::Reference<::chart::DataSeries> & xRegCnt );
 
@@ -68,31 +69,31 @@ namespace chart::RegressionCurveHelper
          @param xSeriesProp
              If set, this property-set will be used to apply a line color
      */
-    OOO_DLLPUBLIC_CHARTTOOLS void addMeanValueLine(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void addMeanValueLine(
         css::uno::Reference<css::chart2::XRegressionCurveContainer> const & 
xRegCnt,
         const css::uno::Reference<css::beans::XPropertySet>& xSeriesProp );
-    OOO_DLLPUBLIC_CHARTTOOLS void addMeanValueLine(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void addMeanValueLine(
         rtl::Reference<::chart::DataSeries> const & xRegCnt,
         const css::uno::Reference<css::beans::XPropertySet>& xSeriesProp );
 
-    OOO_DLLPUBLIC_CHARTTOOLS void removeMeanValueLine(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void removeMeanValueLine(
         css::uno::Reference<css::chart2::XRegressionCurveContainer> const & 
xRegCnt );
-    OOO_DLLPUBLIC_CHARTTOOLS void removeMeanValueLine(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void removeMeanValueLine(
         rtl::Reference<::chart::DataSeries> const & xRegCnt );
 
     /** Returns the first regression curve found that is not of type
         mean-value line
      */
-    OOO_DLLPUBLIC_CHARTTOOLS rtl::Reference<::chart::RegressionCurveModel>
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) 
rtl::Reference<::chart::RegressionCurveModel>
         getFirstCurveNotMeanValueLine(
             const css::uno::Reference<css::chart2::XRegressionCurveContainer>& 
xCurveContainer );
-    OOO_DLLPUBLIC_CHARTTOOLS rtl::Reference<::chart::RegressionCurveModel>
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) 
rtl::Reference<::chart::RegressionCurveModel>
         getFirstCurveNotMeanValueLine(
             const rtl::Reference<::chart::DataSeries>& xCurveContainer );
 
     /** Returns the regression curve found at the index provided.
      */
-    OOO_DLLPUBLIC_CHARTTOOLS rtl::Reference<::chart::RegressionCurveModel>
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) 
rtl::Reference<::chart::RegressionCurveModel>
         getRegressionCurveAtIndex(
             const rtl::Reference<::chart::DataSeries>& xCurveContainer,
             sal_Int32 aIndex);
@@ -100,10 +101,10 @@ namespace chart::RegressionCurveHelper
     /** Returns the type of the first regression curve found that is not of 
type
         mean-value line
      */
-    OOO_DLLPUBLIC_CHARTTOOLS SvxChartRegress 
getFirstRegressTypeNotMeanValueLine(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) SvxChartRegress 
getFirstRegressTypeNotMeanValueLine(
         const css::uno::Reference<css::chart2::XRegressionCurveContainer>& 
xCurveContainer );
 
-    OOO_DLLPUBLIC_CHARTTOOLS SvxChartRegress getRegressionType(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) SvxChartRegress 
getRegressionType(
         const css::uno::Reference<css::chart2::XRegressionCurve>& xCurve );
 
     /** @param xPropertySource is taken as source to copy all properties from 
if
@@ -111,7 +112,7 @@ namespace chart::RegressionCurveHelper
         @param xEquationProperties is set at the new regression curve as
                equation properties if not null
     */
-    OOO_DLLPUBLIC_CHARTTOOLS rtl::Reference<::chart::RegressionCurveModel>
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) 
rtl::Reference<::chart::RegressionCurveModel>
         addRegressionCurve(
             SvxChartRegress eType,
             css::uno::Reference<css::chart2::XRegressionCurveContainer> const 
& xCurveContainer,
@@ -119,7 +120,7 @@ namespace chart::RegressionCurveHelper
                     css::uno::Reference<css::beans::XPropertySet>(),
             const css::uno::Reference<css::beans::XPropertySet>& 
xEquationProperties =
                     css::uno::Reference<css::beans::XPropertySet>() );
-    OOO_DLLPUBLIC_CHARTTOOLS rtl::Reference<::chart::RegressionCurveModel>
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) 
rtl::Reference<::chart::RegressionCurveModel>
         addRegressionCurve(
             SvxChartRegress eType,
             rtl::Reference<::chart::DataSeries> const & xCurveContainer,
@@ -128,20 +129,20 @@ namespace chart::RegressionCurveHelper
             const css::uno::Reference<css::beans::XPropertySet>& 
xEquationProperties =
                     css::uno::Reference<css::beans::XPropertySet>() );
 
-    OOO_DLLPUBLIC_CHARTTOOLS bool removeAllExceptMeanValueLine(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) bool 
removeAllExceptMeanValueLine(
         rtl::Reference<::chart::DataSeries> const & xCurveContainer );
 
-    OOO_DLLPUBLIC_CHARTTOOLS void removeEquations(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void removeEquations(
         rtl::Reference<::chart::DataSeries> const & xCurveContainer );
 
-    OOO_DLLPUBLIC_CHARTTOOLS rtl::Reference<::chart::RegressionCurveModel>
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) 
rtl::Reference<::chart::RegressionCurveModel>
         changeRegressionCurveType(
             SvxChartRegress eType,
             css::uno::Reference<css::chart2::XRegressionCurveContainer> const 
& xRegressionCurveContainer,
             css::uno::Reference<css::chart2::XRegressionCurve> const & 
xRegressionCurve );
 
     /// returns a calculator object for regression curves (used by the view)
-    OOO_DLLPUBLIC_CHARTTOOLS rtl::Reference<::chart::RegressionCurveCalculator>
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) 
rtl::Reference<::chart::RegressionCurveCalculator>
         createRegressionCurveCalculatorByServiceName( std::u16string_view 
aServiceName );
 
     /** recalculates the regression parameters according to the data given in
@@ -169,33 +170,33 @@ namespace chart::RegressionCurveHelper
         necessary that the data::XDataSource is an XDataSeries, thus this 
parameter
         also changed.
      */
-    OOO_DLLPUBLIC_CHARTTOOLS void initializeCurveCalculator(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void initializeCurveCalculator(
         const css::uno::Reference<css::chart2::XRegressionCurveCalculator>& 
xOutCurveCalculator,
         const rtl::Reference<::chart::DataSeries>& xSeries,
         const rtl::Reference<::chart::ChartModel>& xModel );
 
-    OOO_DLLPUBLIC_CHARTTOOLS OUString getUINameForRegressionCurve(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) OUString 
getUINameForRegressionCurve(
         const css::uno::Reference<css::chart2::XRegressionCurve>& xCurve );
 
-    OOO_DLLPUBLIC_CHARTTOOLS OUString getRegressionCurveName(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) OUString getRegressionCurveName(
         const css::uno::Reference<css::chart2::XRegressionCurve>& xCurve );
 
-    OOO_DLLPUBLIC_CHARTTOOLS OUString getRegressionCurveGenericName(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) OUString 
getRegressionCurveGenericName(
         const css::uno::Reference<css::chart2::XRegressionCurve>& xCurve );
 
-    OOO_DLLPUBLIC_CHARTTOOLS OUString getRegressionCurveSpecificName(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) OUString 
getRegressionCurveSpecificName(
         const css::uno::Reference<css::chart2::XRegressionCurve>& xCurve );
 
-    OOO_DLLPUBLIC_CHARTTOOLS void resetEquationPosition(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void resetEquationPosition(
         const css::uno::Reference<css::chart2::XRegressionCurve>& xCurve );
 
     /// @return the index of the given curve in the given container. -1 if not 
contained
-    OOO_DLLPUBLIC_CHARTTOOLS sal_Int32 getRegressionCurveIndex(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) sal_Int32 
getRegressionCurveIndex(
         const rtl::Reference<::chart::DataSeries>& xContainer,
         const rtl::Reference<::chart::RegressionCurveModel>& xCurve );
 
-    OOO_DLLPUBLIC_CHARTTOOLS bool hasEquation(const 
css::uno::Reference<css::chart2::XRegressionCurve>& xCurve );
-    OOO_DLLPUBLIC_CHARTTOOLS bool MayHaveCorrelationCoefficient(const 
css::uno::Reference<css::chart2::XRegressionCurve>& xCurve );
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) bool hasEquation(const 
css::uno::Reference<css::chart2::XRegressionCurve>& xCurve );
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) bool 
MayHaveCorrelationCoefficient(const 
css::uno::Reference<css::chart2::XRegressionCurve>& xCurve );
 
 } //  namespace chart
 
diff --git a/chart2/source/inc/RelativePositionHelper.hxx 
b/chart2/source/inc/RelativePositionHelper.hxx
index 5a6bcbbc85af..03ea72eebeed 100644
--- a/chart2/source/inc/RelativePositionHelper.hxx
+++ b/chart2/source/inc/RelativePositionHelper.hxx
@@ -19,6 +19,7 @@
 
 #pragma once
 
+#include <config_options.h>
 #include <com/sun/star/chart2/RelativePosition.hpp>
 #include <com/sun/star/drawing/Alignment.hpp>
 #include <com/sun/star/awt/Point.hpp>
@@ -30,7 +31,7 @@ namespace com::sun::star::chart2 { struct RelativeSize; }
 namespace chart
 {
 
-class OOO_DLLPUBLIC_CHARTTOOLS RelativePositionHelper
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) RelativePositionHelper
 {
 public:
     /** returns the upper left corner of an object that has size aObjectSize 
and
diff --git a/chart2/source/inc/RelativeSizeHelper.hxx 
b/chart2/source/inc/RelativeSizeHelper.hxx
index b07876bb67d3..6b3dbb7c2dee 100644
--- a/chart2/source/inc/RelativeSizeHelper.hxx
+++ b/chart2/source/inc/RelativeSizeHelper.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include "charttoolsdllapi.hxx"
 
 namespace com::sun::star::awt { struct Size; }
@@ -28,7 +29,7 @@ class SvxShapeText;
 namespace chart
 {
 
-class OOO_DLLPUBLIC_CHARTTOOLS RelativeSizeHelper
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) RelativeSizeHelper
 {
 public:
     static double calculate(
diff --git a/chart2/source/inc/SceneProperties.hxx 
b/chart2/source/inc/SceneProperties.hxx
index ab7d89711af4..1fdae1b6703f 100644
--- a/chart2/source/inc/SceneProperties.hxx
+++ b/chart2/source/inc/SceneProperties.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include "PropertyHelper.hxx"
 #include "FastPropertyIdRanges.hxx"
 #include "charttoolsdllapi.hxx"
@@ -71,10 +72,10 @@ namespace SceneProperties
         PROP_SCENE_LIGHT_ON_8
     };
 
-    OOO_DLLPUBLIC_CHARTTOOLS void AddPropertiesToVector(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void AddPropertiesToVector(
         std::vector< css::beans::Property > & rOutProperties );
 
-    OOO_DLLPUBLIC_CHARTTOOLS void AddDefaultsToMap( ::chart::tPropertyValueMap 
& rOutMap );
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void AddDefaultsToMap( 
::chart::tPropertyValueMap & rOutMap );
 }
 
 } //  namespace chart
diff --git a/chart2/source/inc/StatisticsHelper.hxx 
b/chart2/source/inc/StatisticsHelper.hxx
index e7008020022c..f38a27ba500f 100644
--- a/chart2/source/inc/StatisticsHelper.hxx
+++ b/chart2/source/inc/StatisticsHelper.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include <com/sun/star/uno/Reference.h>
 #include <rtl/ustring.hxx>
 #include <rtl/ref.hxx>
@@ -39,33 +40,33 @@ namespace chart::StatisticsHelper
 
         @see http://mathworld.wolfram.com/Variance.html
      */
-    OOO_DLLPUBLIC_CHARTTOOLS double getVariance( const css::uno::Sequence< 
double > & rData );
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) double getVariance( const 
css::uno::Sequence< double > & rData );
 
     // square root of the variance
-    OOO_DLLPUBLIC_CHARTTOOLS double getStandardDeviation( const 
css::uno::Sequence< double > & rData );
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) double getStandardDeviation( 
const css::uno::Sequence< double > & rData );
 
     // also called "Standard deviation of the mean (SDOM)"
-    OOO_DLLPUBLIC_CHARTTOOLS double getStandardError( const 
css::uno::Sequence< double > & rData );
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) double getStandardError( const 
css::uno::Sequence< double > & rData );
 
-    OOO_DLLPUBLIC_CHARTTOOLS css::uno::Reference< 
css::chart2::data::XLabeledDataSequence >
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) css::uno::Reference< 
css::chart2::data::XLabeledDataSequence >
         getErrorLabeledDataSequenceFromDataSource(
             const css::uno::Reference< css::chart2::data::XDataSource > & 
xDataSource,
             bool bPositiveValue,
             bool bYError = true );
 
-    OOO_DLLPUBLIC_CHARTTOOLS css::uno::Reference< 
css::chart2::data::XDataSequence >
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) css::uno::Reference< 
css::chart2::data::XDataSequence >
         getErrorDataSequenceFromDataSource(
             const css::uno::Reference< css::chart2::data::XDataSource > & 
xDataSource,
             bool bPositiveValue,
             bool bYError = true );
 
-    OOO_DLLPUBLIC_CHARTTOOLS double getErrorFromDataSource(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) double getErrorFromDataSource(
         const css::uno::Reference< css::chart2::data::XDataSource > & 
xDataSource,
         sal_Int32 nIndex,
         bool bPositiveValue,
         bool bYError = true );
 
-    OOO_DLLPUBLIC_CHARTTOOLS void setErrorDataSequence(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void setErrorDataSequence(
         const css::uno::Reference< css::chart2::data::XDataSource > & 
xDataSource,
         const css::uno::Reference< css::chart2::data::XDataProvider > & 
xDataProvider,
         const OUString & rNewRange,
@@ -74,26 +75,26 @@ namespace chart::StatisticsHelper
         OUString const * pXMLRange = nullptr );
 
     /// @return the newly created or existing error bar object
-    OOO_DLLPUBLIC_CHARTTOOLS css::uno::Reference< css::beans::XPropertySet >
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) css::uno::Reference< 
css::beans::XPropertySet >
         addErrorBars(
             const rtl::Reference< ::chart::DataSeries > & xDataSeries,
             sal_Int32 nStyle,
             bool bYError = true );
 
-    OOO_DLLPUBLIC_CHARTTOOLS css::uno::Reference< css::beans::XPropertySet >
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) css::uno::Reference< 
css::beans::XPropertySet >
         getErrorBars(
             const rtl::Reference< ::chart::DataSeries > & xDataSeries,
             bool bYError = true );
 
-    OOO_DLLPUBLIC_CHARTTOOLS bool hasErrorBars(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) bool hasErrorBars(
         const rtl::Reference< ::chart::DataSeries > & xDataSeries,
         bool bYError = true );
 
-    OOO_DLLPUBLIC_CHARTTOOLS void removeErrorBars(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void removeErrorBars(
         const rtl::Reference< ::chart::DataSeries > & xDataSeries,
         bool bYError = true );
 
-    OOO_DLLPUBLIC_CHARTTOOLS bool usesErrorBarRanges(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) bool usesErrorBarRanges(
         const rtl::Reference< ::chart::DataSeries > & xDataSeries,
         bool bYError = true );
 
diff --git a/chart2/source/inc/ThreeDHelper.hxx 
b/chart2/source/inc/ThreeDHelper.hxx
index a8fc1d63fb40..2c43fff6c71a 100644
--- a/chart2/source/inc/ThreeDHelper.hxx
+++ b/chart2/source/inc/ThreeDHelper.hxx
@@ -19,6 +19,7 @@
 
 #pragma once
 
+#include <config_options.h>
 #include <com/sun/star/drawing/CameraGeometry.hpp>
 #include <rtl/ref.hxx>
 #include "charttoolsdllapi.hxx"
@@ -47,7 +48,7 @@ enum CuboidPlanePosition
     CuboidPlanePosition_Back
 };
 
-class OOO_DLLPUBLIC_CHARTTOOLS ThreeDHelper
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) ThreeDHelper
 {
 public:
 
diff --git a/chart2/source/inc/Title.hxx b/chart2/source/inc/Title.hxx
index 2f21b6040232..230267918de2 100644
--- a/chart2/source/inc/Title.hxx
+++ b/chart2/source/inc/Title.hxx
@@ -40,7 +40,7 @@ typedef ::cppu::WeakImplHelper<
     Title_Base;
 }
 
-class OOO_DLLPUBLIC_CHARTTOOLS Title final :
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) Title final :
     public impl::Title_Base,
     public ::property::OPropertySet
 {
diff --git a/chart2/source/inc/TitleHelper.hxx 
b/chart2/source/inc/TitleHelper.hxx
index ac9f9618799b..bd9a1836605d 100644
--- a/chart2/source/inc/TitleHelper.hxx
+++ b/chart2/source/inc/TitleHelper.hxx
@@ -33,7 +33,7 @@ namespace com::sun::star::uno { class XComponentContext; }
 namespace chart
 {
 
-class OOO_DLLPUBLIC_CHARTTOOLS TitleHelper
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) TitleHelper
 {
 public:
     enum eTitleType
diff --git a/chart2/source/inc/UserDefinedProperties.hxx 
b/chart2/source/inc/UserDefinedProperties.hxx
index 07ab7b5bbcef..3d4e587db745 100644
--- a/chart2/source/inc/UserDefinedProperties.hxx
+++ b/chart2/source/inc/UserDefinedProperties.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include "FastPropertyIdRanges.hxx"
 #include "charttoolsdllapi.hxx"
 
@@ -45,7 +46,7 @@ namespace UserDefinedProperties
         PROP_XML_USERDEF
     };
 
-    OOO_DLLPUBLIC_CHARTTOOLS void AddPropertiesToVector(
+    UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) void AddPropertiesToVector(
         std::vector< css::beans::Property > & rOutProperties );
 }
 
diff --git a/chart2/source/inc/WrappedDefaultProperty.hxx 
b/chart2/source/inc/WrappedDefaultProperty.hxx
index 757eef248b01..f9fdbff2cbf9 100644
--- a/chart2/source/inc/WrappedDefaultProperty.hxx
+++ b/chart2/source/inc/WrappedDefaultProperty.hxx
@@ -24,7 +24,7 @@
 namespace chart
 {
 
-class OOO_DLLPUBLIC_CHARTTOOLS WrappedDefaultProperty : public WrappedProperty
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) WrappedDefaultProperty : 
public WrappedProperty
 {
 public:
     explicit WrappedDefaultProperty(
diff --git a/chart2/source/inc/WrappedDirectStateProperty.hxx 
b/chart2/source/inc/WrappedDirectStateProperty.hxx
index 28398efd8155..082a70ed0a76 100644
--- a/chart2/source/inc/WrappedDirectStateProperty.hxx
+++ b/chart2/source/inc/WrappedDirectStateProperty.hxx
@@ -23,7 +23,7 @@
 
 namespace chart
 {
-class OOO_DLLPUBLIC_CHARTTOOLS WrappedDirectStateProperty : public 
WrappedProperty
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) WrappedDirectStateProperty : 
public WrappedProperty
 {
 public:
     explicit WrappedDirectStateProperty(const OUString& rOuterName, const 
OUString& rInnerName);
diff --git a/chart2/source/inc/WrappedIgnoreProperty.hxx 
b/chart2/source/inc/WrappedIgnoreProperty.hxx
index a031097bda01..22c1673cc956 100644
--- a/chart2/source/inc/WrappedIgnoreProperty.hxx
+++ b/chart2/source/inc/WrappedIgnoreProperty.hxx
@@ -26,7 +26,7 @@
 namespace chart
 {
 
-class OOO_DLLPUBLIC_CHARTTOOLS WrappedIgnoreProperty final : public 
WrappedProperty
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) WrappedIgnoreProperty final : 
public WrappedProperty
 {
 public:
     WrappedIgnoreProperty( const OUString& rOuterName, const css::uno::Any& 
rDefaultValue );
@@ -47,7 +47,7 @@ private:
     mutable css::uno::Any  m_aCurrentValue;
 };
 
-class OOO_DLLPUBLIC_CHARTTOOLS WrappedIgnoreProperties
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) WrappedIgnoreProperties
 {
 public:
     static void addIgnoreLineProperties( std::vector< 
std::unique_ptr<WrappedProperty> >& rList );
diff --git a/chart2/source/inc/WrappedProperty.hxx 
b/chart2/source/inc/WrappedProperty.hxx
index 1ec91f71f93e..de6e0095e354 100644
--- a/chart2/source/inc/WrappedProperty.hxx
+++ b/chart2/source/inc/WrappedProperty.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include <com/sun/star/beans/PropertyState.hpp>
 #include <com/sun/star/uno/Any.hxx>
 #include <rtl/ustring.hxx>
@@ -33,7 +34,7 @@ namespace com::sun::star::uno { template <class 
interface_type> class Reference;
 namespace chart
 {
 
-class OOO_DLLPUBLIC_CHARTTOOLS WrappedProperty
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) WrappedProperty
 {
     /** The property visible to the outer PropertySet in the 
PropertySetWrapper may have a different name, type and value than
     a corresponding property of the inner PropertySet. Use this class to do 
the conversion between the two.
diff --git a/chart2/source/inc/WrappedPropertySet.hxx 
b/chart2/source/inc/WrappedPropertySet.hxx
index ec3d43632c26..dabc6e33c5c4 100644
--- a/chart2/source/inc/WrappedPropertySet.hxx
+++ b/chart2/source/inc/WrappedPropertySet.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include "WrappedProperty.hxx"
 #include "charttoolsdllapi.hxx"
 #include <com/sun/star/beans/XMultiPropertySet.hpp>
@@ -36,7 +37,7 @@ namespace cppu { class OPropertyArrayHelper; }
 namespace chart
 {
 
-class OOO_DLLPUBLIC_CHARTTOOLS WrappedPropertySet :
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTTOOLS) WrappedPropertySet :
                          public ::cppu::WeakImplHelper
                          < css::beans::XPropertySet
                          , css::beans::XMultiPropertySet
diff --git a/chart2/source/inc/chartview/DataPointSymbolSupplier.hxx 
b/chart2/source/inc/chartview/DataPointSymbolSupplier.hxx
index 58d8a9ff2e4d..304b0f5a486f 100644
--- a/chart2/source/inc/chartview/DataPointSymbolSupplier.hxx
+++ b/chart2/source/inc/chartview/DataPointSymbolSupplier.hxx
@@ -29,7 +29,7 @@ namespace com::sun::star::drawing { struct Direction3D; }
 namespace chart
 {
 
-class OOO_DLLPUBLIC_CHARTVIEW DataPointSymbolSupplier
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTVIEW) DataPointSymbolSupplier
 {
 public:
     static rtl::Reference< SvxShapeGroup >
diff --git a/chart2/source/inc/chartview/DrawModelWrapper.hxx 
b/chart2/source/inc/chartview/DrawModelWrapper.hxx
index 080587e7ecfe..e555fb7ab021 100644
--- a/chart2/source/inc/chartview/DrawModelWrapper.hxx
+++ b/chart2/source/inc/chartview/DrawModelWrapper.hxx
@@ -35,7 +35,7 @@ class SdrObject;
 namespace chart
 {
 
-class OOO_DLLPUBLIC_CHARTVIEW DrawModelWrapper final : private SdrModel
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTVIEW) DrawModelWrapper final : 
private SdrModel
 {
 private:
     rtl::Reference<SvxDrawPage> m_xMainDrawPage;
diff --git a/chart2/source/inc/chartview/ExplicitScaleValues.hxx 
b/chart2/source/inc/chartview/ExplicitScaleValues.hxx
index a49dddeb6658..07b8290cb7db 100644
--- a/chart2/source/inc/chartview/ExplicitScaleValues.hxx
+++ b/chart2/source/inc/chartview/ExplicitScaleValues.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include <chartview/chartviewdllapi.hxx>
 #include <com/sun/star/chart/TimeInterval.hpp>
 #include <com/sun/star/chart2/AxisOrientation.hpp>
@@ -35,7 +36,7 @@ namespace chart
 /** This structure contains the explicit values for a scale like Minimum and 
Maximum.
     See also css::chart2::ScaleData.
 */
-struct OOO_DLLPUBLIC_CHARTVIEW ExplicitScaleData
+struct UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTVIEW) ExplicitScaleData
 {
     ExplicitScaleData();
 
@@ -73,7 +74,7 @@ struct ExplicitSubIncrement
 
 /** describes how tickmarks are positioned on the scale of an axis.
 */
-struct OOO_DLLPUBLIC_CHARTVIEW ExplicitIncrementData
+struct UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTVIEW) ExplicitIncrementData
 {
     ExplicitIncrementData();
 
diff --git a/chart2/source/inc/chartview/ExplicitValueProvider.hxx 
b/chart2/source/inc/chartview/ExplicitValueProvider.hxx
index 4370e38cf1b8..f4bc4aac874b 100644
--- a/chart2/source/inc/chartview/ExplicitValueProvider.hxx
+++ b/chart2/source/inc/chartview/ExplicitValueProvider.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include <sal/types.h>
 #include <chartview/chartviewdllapi.hxx>
 #include <rtl/ref.hxx>
@@ -48,7 +49,7 @@ class ChartModel;
 struct ExplicitIncrementData;
 struct ExplicitScaleData;
 
-class OOO_DLLPUBLIC_CHARTVIEW SAL_LOPLUGIN_ANNOTATE("crosscast") 
ExplicitValueProvider
+class UNLESS_MERGELIBS(OOO_DLLPUBLIC_CHARTVIEW) 
SAL_LOPLUGIN_ANNOTATE("crosscast") ExplicitValueProvider
 {
 public:
     /** Gives calculated scale and increment values for a given xAxis in the 
current view.
diff --git a/include/basegfx/color/bcolormodifier.hxx 
b/include/basegfx/color/bcolormodifier.hxx
index b1d4620b6e6d..59f277555c30 100644
--- a/include/basegfx/color/bcolormodifier.hxx
+++ b/include/basegfx/color/bcolormodifier.hxx
@@ -381,7 +381,7 @@ namespace basegfx
 
     /** mix a part of the original color with randomized color (mainly for 
debug visualizations)
     */
-    class SAL_WARN_UNUSED BASEGFX_DLLPUBLIC BColorModifier_randomize final : 
public BColorModifier
+    class SAL_WARN_UNUSED UNLESS_MERGELIBS(BASEGFX_DLLPUBLIC) 
BColorModifier_randomize final : public BColorModifier
     {
     private:
         // [0.0 .. 1.0] where 0.0 is no randomize, 1.0 is all random and 
in-between
diff --git a/include/basegfx/utils/systemdependentdata.hxx 
b/include/basegfx/utils/systemdependentdata.hxx
index 9304153c1327..a77a8fb8f886 100644
--- a/include/basegfx/utils/systemdependentdata.hxx
+++ b/include/basegfx/utils/systemdependentdata.hxx
@@ -9,6 +9,7 @@
 
 #pragma once
 
+#include <config_options.h>
 #include <sal/types.h>
 #include <basegfx/basegfxdllapi.h>
 #include <memory>
@@ -41,7 +42,7 @@ namespace basegfx
         virtual void flushAll() = 0;
     };
 
-    class BASEGFX_DLLPUBLIC SystemDependentData
+    class UNLESS_MERGELIBS(BASEGFX_DLLPUBLIC) SystemDependentData
     {
     private:
         // noncopyable
diff --git a/include/comphelper/bytereader.hxx 
b/include/comphelper/bytereader.hxx
index f683473bf3de..9b43c293b611 100644
--- a/include/comphelper/bytereader.hxx
+++ b/include/comphelper/bytereader.hxx
@@ -8,6 +8,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include <sal/types.h>
 #include <comphelper/comphelperdllapi.h>
 
@@ -17,7 +18,7 @@ namespace comphelper
  * Interface that we can cast to, to bypass the inefficiency of using 
Sequence<sal_Int8>
  * when reading via XInputStream.
  */
-class COMPHELPER_DLLPUBLIC SAL_LOPLUGIN_ANNOTATE("crosscast") ByteReader
+class UNLESS_MERGELIBS(COMPHELPER_DLLPUBLIC) 
SAL_LOPLUGIN_ANNOTATE("crosscast") ByteReader
 {
 public:
     virtual ~ByteReader();
@@ -28,7 +29,7 @@ public:
  * Interface that we can cast to, to bypass the inefficiency of using 
Sequence<sal_Int8>
  * when writing via XOutputStream.
  */
-class COMPHELPER_DLLPUBLIC SAL_LOPLUGIN_ANNOTATE("crosscast") ByteWriter
+class UNLESS_MERGELIBS(COMPHELPER_DLLPUBLIC) 
SAL_LOPLUGIN_ANNOTATE("crosscast") ByteWriter
 {
 public:
     virtual ~ByteWriter();
diff --git a/include/comphelper/errcode.hxx b/include/comphelper/errcode.hxx
index 8198512ff3e1..000f2c761da9 100644
--- a/include/comphelper/errcode.hxx
+++ b/include/comphelper/errcode.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include <rtl/ustring.hxx>
 #include <comphelper/comphelperdllapi.h>
 #include <ostream>
@@ -140,7 +141,7 @@ public:
     }
 
     /// Return a string suitable for debug output, the same as the operator<< 
function
-    COMPHELPER_DLLPUBLIC OUString toString() const;
+    UNLESS_MERGELIBS(COMPHELPER_DLLPUBLIC) OUString toString() const;
     
     template <typename... Args> bool anyOf(Args... args) const
     {
@@ -230,7 +231,7 @@ public:
     bool operator!=(const ErrCodeMsg& rOther) const { return mnCode != 
rOther.mnCode; }
 
     /// Return a string suitable for debug output, the same as the operator<< 
function
-    COMPHELPER_DLLPUBLIC OUString toString() const;
+    UNLESS_MERGELIBS(COMPHELPER_DLLPUBLIC) OUString toString() const;
 
 private:
     ErrCode mnCode;
diff --git a/include/comphelper/oslfile2streamwrap.hxx 
b/include/comphelper/oslfile2streamwrap.hxx
index c80c7b3447dc..79bd808af452 100644
--- a/include/comphelper/oslfile2streamwrap.hxx
+++ b/include/comphelper/oslfile2streamwrap.hxx
@@ -19,6 +19,7 @@
 #ifndef INCLUDED_COMPHELPER_OSLFILE2STREAMWRAP_HXX
 #define INCLUDED_COMPHELPER_OSLFILE2STREAMWRAP_HXX
 
+#include <config_options.h>
 #include <com/sun/star/io/XOutputStream.hpp>
 #include <com/sun/star/io/XInputStream.hpp>
 #include <cppuhelper/implbase.hxx>
@@ -35,7 +36,7 @@ namespace comphelper
 class OSLInputStreamWrapper final : public 
::cppu::WeakImplHelper<css::io::XInputStream>
 {
 public:
-    COMPHELPER_DLLPUBLIC OSLInputStreamWrapper(::osl::File& _rStream);
+    UNLESS_MERGELIBS(COMPHELPER_DLLPUBLIC) OSLInputStreamWrapper(::osl::File& 
_rStream);
 
 private:
     virtual ~OSLInputStreamWrapper() override;
@@ -57,7 +58,7 @@ private:
 class OSLOutputStreamWrapper final : public 
::cppu::WeakImplHelper<css::io::XOutputStream>
 {
 public:
-    COMPHELPER_DLLPUBLIC OSLOutputStreamWrapper(::osl::File& _rFile);
+    UNLESS_MERGELIBS(COMPHELPER_DLLPUBLIC) OSLOutputStreamWrapper(::osl::File& 
_rFile);
 
 private:
     virtual ~OSLOutputStreamWrapper() override;
diff --git a/include/comphelper/propmultiplex2.hxx 
b/include/comphelper/propmultiplex2.hxx
index ff3a9abaf2ef..16ff2abf1a65 100644
--- a/include/comphelper/propmultiplex2.hxx
+++ b/include/comphelper/propmultiplex2.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include <com/sun/star/beans/XPropertyChangeListener.hpp>
 #include <cppuhelper/implbase.hxx>
 #include <comphelper/comphelperdllapi.h>
@@ -39,7 +40,7 @@ class OPropertyChangeMultiplexer2;
 //= OPropertyChangeListener
 
 /// simple listener adapter for property sets
-class COMPHELPER_DLLPUBLIC OPropertyChangeListener2
+class UNLESS_MERGELIBS(COMPHELPER_DLLPUBLIC) OPropertyChangeListener2
 {
     friend class OPropertyChangeMultiplexer2;
 
@@ -70,7 +71,7 @@ class SAL_DLLPUBLIC_TEMPLATE OPropertyChangeMultiplexer_Base2
     : public cppu::WeakImplHelper<css::beans::XPropertyChangeListener>
 {
 };
-class COMPHELPER_DLLPUBLIC OPropertyChangeMultiplexer2 final
+class UNLESS_MERGELIBS(COMPHELPER_DLLPUBLIC) OPropertyChangeMultiplexer2 final
     : public OPropertyChangeMultiplexer_Base2
 {
     friend class OPropertyChangeListener2;
diff --git a/include/comphelper/propshlp.hxx b/include/comphelper/propshlp.hxx
index e3a177783cca..cd59b52c8afe 100644
--- a/include/comphelper/propshlp.hxx
+++ b/include/comphelper/propshlp.hxx
@@ -18,6 +18,7 @@
  */
 #pragma once
 
+#include <config_options.h>
 #include <comphelper/multiinterfacecontainer4.hxx>
 
 #include <com/sun/star/beans/XPropertySet.hpp>
@@ -43,10 +44,11 @@ namespace comphelper
    This is a modified copy of the cppuhelper::OPropertySetHelper class, except
    that is uses std::mutex instead of osl::Mutex.
  */
-class COMPHELPER_DLLPUBLIC OPropertySetHelper : public virtual 
comphelper::UnoImplBase,
-                                                public 
css::beans::XMultiPropertySet,
-                                                public 
css::beans::XFastPropertySet,
-                                                public css::beans::XPropertySet
+class UNLESS_MERGELIBS(COMPHELPER_DLLPUBLIC) OPropertySetHelper
+    : public virtual comphelper::UnoImplBase,
+      public css::beans::XMultiPropertySet,
+      public css::beans::XFastPropertySet,
+      public css::beans::XPropertySet
 {
 public:
     OPropertySetHelper();
diff --git a/include/comphelper/seqstream.hxx b/include/comphelper/seqstream.hxx
index 8e2ae36d17c2..405b7937407b 100644
--- a/include/comphelper/seqstream.hxx
+++ b/include/comphelper/seqstream.hxx
@@ -33,7 +33,7 @@ namespace comphelper
 {
 
 /** Base class for wrappers around memory data that want to be exposed as an 
XInputStream */
-class COMPHELPER_DLLPUBLIC MemoryInputStream
+class UNLESS_MERGELIBS(COMPHELPER_DLLPUBLIC) MemoryInputStream
     : public ::cppu::WeakImplHelper< css::io::XInputStream, css::io::XSeekable 
>,
       public comphelper::ByteReader
 {
diff --git a/include/docmodel/uno/UnoComplexColor.hxx 
b/include/docmodel/uno/UnoComplexColor.hxx
index f80e75454c3f..4c584b2ab7c4 100644
--- a/include/docmodel/uno/UnoComplexColor.hxx
+++ b/include/docmodel/uno/UnoComplexColor.hxx
@@ -9,6 +9,7 @@
 
 #pragma once
 
+#include <config_options.h>
 #include <cppuhelper/implbase.hxx>
 
 #include <com/sun/star/util/Color.hpp>
@@ -17,7 +18,7 @@
 #include <docmodel/dllapi.h>
 #include <docmodel/color/ComplexColor.hxx>
 
-class DOCMODEL_DLLPUBLIC UnoComplexColor final
+class UNLESS_MERGELIBS(DOCMODEL_DLLPUBLIC) UnoComplexColor final
     : public cppu::WeakImplHelper<css::util::XComplexColor>
 {
 private:
diff --git 
a/include/drawinglayer/primitive2d/BufferedDecompositionGroupPrimitive2D.hxx 
b/include/drawinglayer/primitive2d/BufferedDecompositionGroupPrimitive2D.hxx
index 778c52c94e24..f160a1ec118b 100644
--- a/include/drawinglayer/primitive2d/BufferedDecompositionGroupPrimitive2D.hxx
+++ b/include/drawinglayer/primitive2d/BufferedDecompositionGroupPrimitive2D.hxx
@@ -33,7 +33,8 @@ namespace drawinglayer::primitive2d
     For discussion please refer to BufferedDecompositionPrimitive2D, this is 
the same
     but for GroupPrimitive2D which want to buffer their decomposition
  */
-class DRAWINGLAYER_DLLPUBLIC BufferedDecompositionGroupPrimitive2D : public 
GroupPrimitive2D
+class UNLESS_MERGELIBS(DRAWINGLAYER_DLLPUBLIC) 
BufferedDecompositionGroupPrimitive2D
+    : public GroupPrimitive2D
 {
 private:
     // exclusive helper for Primitive2DFlusher
diff --git a/include/drawinglayer/primitive2d/PolyPolygonColorPrimitive2D.hxx 
b/include/drawinglayer/primitive2d/PolyPolygonColorPrimitive2D.hxx
index 0bb67c3d0c7a..47c9bbb83b0b 100644
--- a/include/drawinglayer/primitive2d/PolyPolygonColorPrimitive2D.hxx
+++ b/include/drawinglayer/primitive2d/PolyPolygonColorPrimitive2D.hxx
@@ -68,7 +68,8 @@ public:
     sometimes useful for simpler tasks and decomposes to a
     more generalized PolyPolygonColorPrimitive2D (see above)
 */
-class DRAWINGLAYER_DLLPUBLIC FilledRectanglePrimitive2D final : public 
BasePrimitive2D
+class UNLESS_MERGELIBS(DRAWINGLAYER_DLLPUBLIC) FilledRectanglePrimitive2D final
+    : public BasePrimitive2D
 {
 private:
     /// the  geometry
diff --git a/include/drawinglayer/primitive2d/PolygonHairlinePrimitive2D.hxx 
b/include/drawinglayer/primitive2d/PolygonHairlinePrimitive2D.hxx
index bcee8a5ec0d4..c2127ec8d993 100644
--- a/include/drawinglayer/primitive2d/PolygonHairlinePrimitive2D.hxx
+++ b/include/drawinglayer/primitive2d/PolygonHairlinePrimitive2D.hxx
@@ -70,7 +70,7 @@ public:
     PolygonHairlinePrimitive2D (see above). It is also a
     hairline-primitive, see above.
 */
-class DRAWINGLAYER_DLLPUBLIC SingleLinePrimitive2D final : public 
BasePrimitive2D
+class UNLESS_MERGELIBS(DRAWINGLAYER_DLLPUBLIC) SingleLinePrimitive2D final : 
public BasePrimitive2D
 {
 private:
     /// the line geometry
@@ -112,7 +112,8 @@ public:
     sometimes useful for simpler tasks and decomposes to a
     more generalized PolygonHairlinePrimitive2D (see above)
 */
-class DRAWINGLAYER_DLLPUBLIC LineRectanglePrimitive2D final : public 
BasePrimitive2D
+class UNLESS_MERGELIBS(DRAWINGLAYER_DLLPUBLIC) LineRectanglePrimitive2D final
+    : public BasePrimitive2D
 {
 private:
     /// the  geometry
diff --git a/include/drawinglayer/primitive2d/baseprimitive2d.hxx 
b/include/drawinglayer/primitive2d/baseprimitive2d.hxx
index 4d6d6250a52c..276e8adf817c 100644
--- a/include/drawinglayer/primitive2d/baseprimitive2d.hxx
+++ b/include/drawinglayer/primitive2d/baseprimitive2d.hxx
@@ -19,6 +19,7 @@
 
 #pragma once
 
+#include <config_options.h>
 #include <drawinglayer/drawinglayerdllapi.h>
 
 #include <drawinglayer/primitive2d/Primitive2DContainer.hxx>
@@ -171,7 +172,8 @@ public:
   object, we just wrap the top level BasePrimitive2D in this class when we need
   to pass them over UNO
 */
-class DRAWINGLAYERCORE_DLLPUBLIC UnoPrimitive2D final : public 
BasePrimitive2DImplBase
+class UNLESS_MERGELIBS(DRAWINGLAYERCORE_DLLPUBLIC) UnoPrimitive2D final
+    : public BasePrimitive2DImplBase
 {
     UnoPrimitive2D(const UnoPrimitive2D&) = delete;
     UnoPrimitive2D& operator=(const UnoPrimitive2D&) = delete;
diff --git a/include/drawinglayer/processor2d/cairopixelprocessor2d.hxx 
b/include/drawinglayer/processor2d/cairopixelprocessor2d.hxx
index 2324b9f619e8..f10ac22fa461 100644
--- a/include/drawinglayer/processor2d/cairopixelprocessor2d.hxx
+++ b/include/drawinglayer/processor2d/cairopixelprocessor2d.hxx
@@ -37,7 +37,7 @@ class SingleLinePrimitive2D;
 
 namespace drawinglayer::processor2d
 {
-class DRAWINGLAYER_DLLPUBLIC CairoPixelProcessor2D final : public 
BaseProcessor2D
+class UNLESS_MERGELIBS(DRAWINGLAYER_DLLPUBLIC) CairoPixelProcessor2D final : 
public BaseProcessor2D
 {
     // the modifiedColorPrimitive stack
     basegfx::BColorModifierStack maBColorModifierStack;
diff --git a/include/editeng/unoedsrc.hxx b/include/editeng/unoedsrc.hxx
index 1537f00a743c..82695e2e9031 100644
--- a/include/editeng/unoedsrc.hxx
+++ b/include/editeng/unoedsrc.hxx
@@ -138,7 +138,7 @@ public:
     SvxEditSource::UpdateData(). This copies back the data to the model's
     EditTextObject/OutlinerParaObject.
  */
-class EDITENG_DLLPUBLIC SvxTextForwarder
+class UNLESS_MERGELIBS(EDITENG_DLLPUBLIC) SvxTextForwarder
 {
 public:
     virtual             ~SvxTextForwarder() COVERITY_NOEXCEPT_FALSE;
diff --git a/include/filter/msfilter/escherex.hxx 
b/include/filter/msfilter/escherex.hxx
index 48ed81d0ffd6..b8845ae240a5 100644
--- a/include/filter/msfilter/escherex.hxx
+++ b/include/filter/msfilter/escherex.hxx
@@ -452,7 +452,7 @@ namespace com::sun::star {
     }
 }
 
-struct MSFILTER_DLLPUBLIC EscherConnectorListEntry
+struct UNLESS_MERGELIBS(MSFILTER_DLLPUBLIC) EscherConnectorListEntry
 {
     css::uno::Reference< css::drawing::XShape >   mXConnector;
     css::awt::Point                               maPointA;
diff --git a/include/framework/generictoolbarcontroller.hxx 
b/include/framework/generictoolbarcontroller.hxx
index 17aab6338ee2..91a81cf096e6 100644
--- a/include/framework/generictoolbarcontroller.hxx
+++ b/include/framework/generictoolbarcontroller.hxx
@@ -26,7 +26,7 @@
 namespace framework
 {
 
-class FWK_DLLPUBLIC GenericToolbarController final : public 
svt::ToolboxController
+class UNLESS_MERGELIBS(FWK_DLLPUBLIC) GenericToolbarController final : public 
svt::ToolboxController
 {
     public:
         GenericToolbarController( const css::uno::Reference< 
css::uno::XComponentContext >& rxContext,
@@ -67,7 +67,7 @@ class FWK_DLLPUBLIC GenericToolbarController final : public 
svt::ToolboxControll
         OUString            m_aEnumCommand;
 };
 
-class FWK_DLLPUBLIC ImageOrientationController final : public 
svt::ToolboxController
+class UNLESS_MERGELIBS(FWK_DLLPUBLIC) ImageOrientationController final : 
public svt::ToolboxController
 {
 public:
     ImageOrientationController(const 
css::uno::Reference<css::uno::XComponentContext>& rContext,
diff --git a/include/oox/helper/progressbar.hxx 
b/include/oox/helper/progressbar.hxx
index e1c5c0a99699..7adcb75c5c61 100644
--- a/include/oox/helper/progressbar.hxx
+++ b/include/oox/helper/progressbar.hxx
@@ -20,6 +20,7 @@
 #ifndef INCLUDED_OOX_HELPER_PROGRESSBAR_HXX
 #define INCLUDED_OOX_HELPER_PROGRESSBAR_HXX
 
+#include <config_options.h>
 #include <memory>
 
 #include <com/sun/star/uno/Reference.hxx>
@@ -36,7 +37,7 @@ namespace oox {
 
 /** Interface for progress bar classes.
  */
-class OOX_DLLPUBLIC IProgressBar
+class UNLESS_MERGELIBS(OOX_DLLPUBLIC) IProgressBar
 {
 public:
     virtual             ~IProgressBar();
diff --git a/include/oox/ole/axcontrol.hxx b/include/oox/ole/axcontrol.hxx
index 28559ecbd1b9..efd21dee3fa5 100644
--- a/include/oox/ole/axcontrol.hxx
+++ b/include/oox/ole/axcontrol.hxx
@@ -20,6 +20,7 @@
 #ifndef INCLUDED_OOX_OLE_AXCONTROL_HXX
 #define INCLUDED_OOX_OLE_AXCONTROL_HXX
 
+#include <config_options.h>
 #include <memory>
 #include <vector>
 
@@ -557,7 +558,7 @@ public: // direct access needed for legacy VML drawing 
controls
 
 
 /** Model for a Forms 2.0 image. */
-class OOX_DLLPUBLIC AxImageModel final : public AxControlModelBase
+class UNLESS_MERGELIBS(OOX_DLLPUBLIC) AxImageModel final : public 
AxControlModelBase
 {
 public:
     explicit            AxImageModel();
@@ -583,7 +584,7 @@ private:
     bool                mbPicTiling;        ///< True = picture is repeated.
 };
 
-class OOX_DLLPUBLIC AxTabStripModel final : public AxFontDataModel
+class UNLESS_MERGELIBS(OOX_DLLPUBLIC) AxTabStripModel final : public 
AxFontDataModel
 {
 public:
     explicit            AxTabStripModel();
@@ -640,7 +641,7 @@ public: // direct access needed for legacy VML drawing 
controls
 
 
 /** Model for a Forms 2.0 toggle button. */
-class OOX_DLLPUBLIC AxToggleButtonModel final : public AxMorphDataModelBase
+class UNLESS_MERGELIBS(OOX_DLLPUBLIC) AxToggleButtonModel final : public 
AxMorphDataModelBase
 {
 public:
     explicit            AxToggleButtonModel();
@@ -841,7 +842,7 @@ public:
     virtual void        convertProperties( PropertyMap& rPropMap, const 
ControlConverter& rConv ) const override;
 };
 
-class OOX_DLLPUBLIC AxPageModel final : public AxContainerModelBase
+class UNLESS_MERGELIBS(OOX_DLLPUBLIC) AxPageModel final : public 
AxContainerModelBase
 {
 public:
     explicit            AxPageModel();
@@ -850,7 +851,7 @@ public:
     virtual void        convertProperties( PropertyMap& rPropMap, const 
ControlConverter& rConv ) const override;
 };
 
-class OOX_DLLPUBLIC AxMultiPageModel final : public AxContainerModelBase
+class UNLESS_MERGELIBS(OOX_DLLPUBLIC) AxMultiPageModel final : public 
AxContainerModelBase
 {
 public:
     explicit            AxMultiPageModel();
@@ -865,7 +866,7 @@ public:
 
 
 /** Model for a Forms 2.0 user form. */
-class OOX_DLLPUBLIC AxUserFormModel final : public AxContainerModelBase
+class UNLESS_MERGELIBS(OOX_DLLPUBLIC) AxUserFormModel final : public 
AxContainerModelBase
 {
 public:
     explicit            AxUserFormModel();
diff --git a/include/package/Deflater.hxx b/include/package/Deflater.hxx
index 2a5c9d103260..4d0ce5083e92 100644
--- a/include/package/Deflater.hxx
+++ b/include/package/Deflater.hxx
@@ -20,6 +20,7 @@
 #ifndef INCLUDED_PACKAGE_DEFLATER_HXX
 #define INCLUDED_PACKAGE_DEFLATER_HXX
 
+#include <config_options.h>
 #include <com/sun/star/uno/Sequence.hxx>
 #include <package/packagedllapi.hxx>
 #include <memory>
@@ -28,7 +29,7 @@ struct z_stream_s;
 
 namespace ZipUtils {
 
-class DLLPUBLIC_PACKAGE Deflater final
+class UNLESS_MERGELIBS(DLLPUBLIC_PACKAGE) Deflater final
 {
     typedef struct z_stream_s z_stream;
 
diff --git a/include/package/Inflater.hxx b/include/package/Inflater.hxx
index d8b36e175a6b..e0d44d21d6f6 100644
--- a/include/package/Inflater.hxx
+++ b/include/package/Inflater.hxx
@@ -20,6 +20,7 @@
 #ifndef INCLUDED_PACKAGE_INFLATER_HXX
 #define INCLUDED_PACKAGE_INFLATER_HXX
 
+#include <config_options.h>
 #include <com/sun/star/uno/Sequence.hxx>
 #include <package/packagedllapi.hxx>
 #include <memory>
@@ -28,7 +29,7 @@ struct z_stream_s;
 
 namespace ZipUtils {
 
-class DLLPUBLIC_PACKAGE Inflater final
+class UNLESS_MERGELIBS(DLLPUBLIC_PACKAGE) Inflater final
 {
     typedef struct z_stream_s z_stream;
 
diff --git a/include/sfx2/devtools/DevelopmentToolDockingWindow.hxx 
b/include/sfx2/devtools/DevelopmentToolDockingWindow.hxx
index de576e797ae1..9cd1efeb352e 100644
--- a/include/sfx2/devtools/DevelopmentToolDockingWindow.hxx
+++ b/include/sfx2/devtools/DevelopmentToolDockingWindow.hxx
@@ -28,7 +28,7 @@
  * Contains two sides. Left side contains the simplified DOM tree and
  * the right side the object inspector tree.
  */
-class SFX2_DLLPUBLIC DevelopmentToolDockingWindow final : public 
SfxDockingWindow
+class UNLESS_MERGELIBS(SFX2_DLLPUBLIC) DevelopmentToolDockingWindow final : 
public SfxDockingWindow
 {
 private:
     std::unique_ptr<ObjectInspectorWidgets> mpObjectInspectorWidgets;
diff --git a/include/sfx2/sidebar/SidebarModelUpdate.hxx 
b/include/sfx2/sidebar/SidebarModelUpdate.hxx
index 33b273f14345..83533a5469a0 100644
--- a/include/sfx2/sidebar/SidebarModelUpdate.hxx
+++ b/include/sfx2/sidebar/SidebarModelUpdate.hxx
@@ -9,6 +9,7 @@
 
 #pragma once
 
+#include <config_options.h>
 #include <sfx2/dllapi.h>
 
 namespace com::sun::star::frame
@@ -22,7 +23,7 @@ template <typename> class Reference;
 
 namespace sfx2::sidebar
 {
-class SFX2_DLLPUBLIC SAL_LOPLUGIN_ANNOTATE("crosscast") SidebarModelUpdate
+class UNLESS_MERGELIBS(SFX2_DLLPUBLIC) SAL_LOPLUGIN_ANNOTATE("crosscast") 
SidebarModelUpdate
 {
 public:
     virtual ~SidebarModelUpdate();
diff --git a/include/svl/itempool.hxx b/include/svl/itempool.hxx
index 244083c67b0c..066cbedae7a8 100644
--- a/include/svl/itempool.hxx
+++ b/include/svl/itempool.hxx
@@ -19,6 +19,7 @@
 
 #pragma once
 
+#include <config_options.h>
 #include <rtl/ref.hxx>
 #include <svl/poolitem.hxx>
 #include <svl/svldllapi.h>
@@ -93,7 +94,7 @@ public:
     virtual const SfxPoolItem* getItem() const override { return 
m_pItem.get(); }
 };
 
-class SVL_DLLPUBLIC ItemInfoUser : public ItemInfo
+class UNLESS_MERGELIBS(SVL_DLLPUBLIC) ItemInfoUser : public ItemInfo
 {
     const SfxPoolItem* m_pItem;
 
diff --git a/include/svtools/recorditemwindow.hxx 
b/include/svtools/recorditemwindow.hxx
index 63f46849c469..68d642ce4b7f 100644
--- a/include/svtools/recorditemwindow.hxx
+++ b/include/svtools/recorditemwindow.hxx
@@ -39,7 +39,8 @@ private:
     void FirePosition(bool bForce);
 };
 
-class SVT_DLLPUBLIC RecordItemWindow : public InterimItemWindow, public 
RecordItemWindowBase
+class UNLESS_MERGELIBS(SVT_DLLPUBLIC) RecordItemWindow : public 
InterimItemWindow,
+                                                         public 
RecordItemWindowBase
 {
 public:
     RecordItemWindow(vcl::Window* pParent);
diff --git a/include/svx/ActionDescriptionProvider.hxx 
b/include/svx/ActionDescriptionProvider.hxx
index 4aa889eb1f38..25f0088eaeb6 100644
--- a/include/svx/ActionDescriptionProvider.hxx
+++ b/include/svx/ActionDescriptionProvider.hxx
@@ -20,6 +20,7 @@
 #ifndef INCLUDED_SVX_ACTIONDESCRIPTIONPROVIDER_HXX
 #define INCLUDED_SVX_ACTIONDESCRIPTIONPROVIDER_HXX
 
+#include <config_options.h>
 #include <rtl/ustring.hxx>
 #include <svx/svxdllapi.h>
 
@@ -29,7 +30,7 @@ The strings are intended to be provided to the user e.g. as 
description for undo
 The name of the object acted on and the type of action needs to be given as 
input parameter.
 */
 
-class SVX_DLLPUBLIC ActionDescriptionProvider
+class UNLESS_MERGELIBS(SVX_DLLPUBLIC) ActionDescriptionProvider
 {
 public:
     enum class ActionType
diff --git a/include/svx/EnhancedCustomShapeTypeNames.hxx 
b/include/svx/EnhancedCustomShapeTypeNames.hxx
index b369c8c42c9d..923d0753bbf6 100644
--- a/include/svx/EnhancedCustomShapeTypeNames.hxx
+++ b/include/svx/EnhancedCustomShapeTypeNames.hxx
@@ -19,15 +19,17 @@
 
 #ifndef INCLUDED_SVX_ENHANCEDCUSTOMSHAPETYPENAMES_HXX
 #define INCLUDED_SVX_ENHANCEDCUSTOMSHAPETYPENAMES_HXX
+
+#include <config_options.h>
 #include <svx/msdffdef.hxx>
 #include <svx/svxdllapi.h>
 #include <rtl/ustring.hxx>
 
 namespace EnhancedCustomShapeTypeNames
 {
-SVXCORE_DLLPUBLIC MSO_SPT Get(const OUString&);
-e 
... etc. - the rest is truncated

Reply via email to