2 # This file is part of the LibreOffice project.
4 # This Source Code Form is subject to the terms of the Mozilla Public
5 # License, v. 2.0. If a copy of the MPL was not distributed with this
6 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 from optparse
import OptionParser
12 import xml
.etree
.ElementTree
as ET
14 # foo_component_getFactory functions are split into groups, so that you could
15 # choose e.g. 'core' and 'writer' functionality and through factory_map,
16 # relevant function sections will be referenced in lo_get_factory_map().
17 # That prevents garbage collector to ignore them as unused.
19 # The same groups are used for constructor based implementations
20 # referenced in lo_get_constructor_map().
23 ("libi18npoollo.a", "i18npool_component_getFactory"),
24 ("libvcllo.a", "vcl_component_getFactory"),
25 ("libsvtlo.a", "svt_component_getFactory"),
28 core_constructor_list
= [
29 # animations/source/animcore/animcore.component
30 "com_sun_star_animations_AnimatePhysics_get_implementation",
31 # basic/util/sb.component
32 ("com_sun_star_comp_sfx2_DialogLibraryContainer_get_implementation","#if HAVE_FEATURE_SCRIPTING"),
33 ("com_sun_star_comp_sfx2_ScriptLibraryContainer_get_implementation", "#if HAVE_FEATURE_SCRIPTING"),
34 # UnoControls/util/ctl.component
35 "stardiv_UnoControls_FrameControl_get_implementation",
36 "stardiv_UnoControls_ProgressBar_get_implementation",
37 "stardiv_UnoControls_ProgressMonitor_get_implementation",
38 "stardiv_UnoControls_StatusIndicator_get_implementation",
39 # canvas/source/factory/canvasfactory.component
40 "com_sun_star_comp_rendering_CanvasFactory_get_implementation",
41 # canvas/source/vcl/vclcanvas.component
42 "com_sun_star_comp_rendering_Canvas_VCL_get_implementation",
43 "com_sun_star_comp_rendering_SpriteCanvas_VCL_get_implementation",
44 # chart2/source/chartcore.component
45 "com_sun_star_chart2_ExponentialScaling_get_implementation",
46 "com_sun_star_chart2_LinearScaling_get_implementation",
47 "com_sun_star_chart2_LogarithmicScaling_get_implementation",
48 "com_sun_star_chart2_PowerScaling_get_implementation",
49 "com_sun_star_comp_chart_AreaChartType_get_implementation",
50 "com_sun_star_comp_chart_BarChartType_get_implementation",
51 "com_sun_star_comp_chart_BubbleChartType_get_implementation",
52 "com_sun_star_comp_chart_CachedDataSequence_get_implementation",
53 "com_sun_star_comp_chart_CandleStickChartType_get_implementation",
54 "com_sun_star_comp_chart_ChartTypeManager_get_implementation",
55 "com_sun_star_comp_chart_ColumnChartType_get_implementation",
56 "com_sun_star_comp_chart_DataSeries_get_implementation",
57 "com_sun_star_comp_chart_DataSource_get_implementation",
58 "com_sun_star_comp_chart_FilledNetChartType_get_implementation",
59 "com_sun_star_comp_chart_FormattedString_get_implementation",
60 "com_sun_star_comp_chart_InternalDataProvider_get_implementation",
61 "com_sun_star_comp_chart_LineChartType_get_implementation",
62 "com_sun_star_comp_chart_NetChartType_get_implementation",
63 "com_sun_star_comp_chart_PieChartType_get_implementation",
64 "com_sun_star_comp_chart_ScatterChartType_get_implementation",
65 "com_sun_star_comp_chart2_Axis_get_implementation",
66 "com_sun_star_comp_chart2_CartesianCoordinateSystem2d_get_implementation",
67 "com_sun_star_comp_chart2_CartesianCoordinateSystem3d_get_implementation",
68 "com_sun_star_comp_chart2_ChartController_get_implementation",
69 "com_sun_star_comp_chart2_ChartModel_get_implementation",
70 "com_sun_star_comp_chart2_ChartView_get_implementation",
71 "com_sun_star_comp_chart2_ConfigDefaultColorScheme_get_implementation",
72 "com_sun_star_comp_chart2_Diagram_get_implementation",
73 "com_sun_star_comp_chart2_ErrorBar_get_implementation",
74 "com_sun_star_comp_chart2_ExponentialRegressionCurve_get_implementation",
75 "com_sun_star_comp_chart2_GridProperties_get_implementation",
76 "com_sun_star_comp_chart2_LabeledDataSequence_get_implementation",
77 "com_sun_star_comp_chart2_Legend_get_implementation",
78 "com_sun_star_comp_chart2_LinearRegressionCurve_get_implementation",
79 "com_sun_star_comp_chart2_LogarithmicRegressionCurve_get_implementation",
80 "com_sun_star_comp_chart2_MeanValueRegressionCurve_get_implementation",
81 "com_sun_star_comp_chart2_MovingAverageRegressionCurve_get_implementation",
82 "com_sun_star_comp_chart2_PageBackground_get_implementation",
83 "com_sun_star_comp_chart2_PolarCoordinateSystem2d_get_implementation",
84 "com_sun_star_comp_chart2_PolarCoordinateSystem3d_get_implementation",
85 "com_sun_star_comp_chart2_PolynomialRegressionCurve_get_implementation",
86 "com_sun_star_comp_chart2_PotentialRegressionCurve_get_implementation",
87 "com_sun_star_comp_chart2_RegressionEquation_get_implementation",
88 "com_sun_star_comp_chart2_Title_get_implementation",
89 "com_sun_star_comp_chart2_XMLFilter_get_implementation",
90 # chart2/source/controller/chartcontroller.component
91 "com_sun_star_comp_chart2_ChartDocumentWrapper_get_implementation",
92 "com_sun_star_comp_chart2_ChartFrameLoader_get_implementation",
93 "com_sun_star_comp_chart2_WizardDialog_get_implementation",
94 "org_libreoffice_chart2_Chart2ToolboxController",
95 "org_libreoffice_comp_chart2_sidebar_ChartPanelFactory",
96 # comphelper/util/comphelp.component
97 "com_sun_star_comp_MemoryStream",
98 "com_sun_star_comp_task_OfficeRestartManager",
99 "AnyCompareFactory_get_implementation",
100 "IndexedPropertyValuesContainer_get_implementation",
101 "NamedPropertyValuesContainer_get_implementation",
102 "com_sun_star_comp_comphelper_OPropertyBag",
103 "com_sun_star_comp_SequenceInputStreamService",
104 "com_sun_star_comp_SequenceOutputStreamService",
105 "com_sun_star_comp_util_OfficeInstallationDirectories",
106 "org_openoffice_comp_comphelper_EnumerableMap",
107 # configmgr/source/configmgr.component
108 "com_sun_star_comp_configuration_ConfigurationProvider_get_implementation",
109 "com_sun_star_comp_configuration_ConfigurationRegistry_get_implementation",
110 "com_sun_star_comp_configuration_DefaultProvider_get_implementation",
111 "com_sun_star_comp_configuration_ReadOnlyAccess_get_implementation",
112 "com_sun_star_comp_configuration_ReadWriteAccess_get_implementation",
113 "com_sun_star_comp_configuration_Update_get_implementation",
114 # connectivity/source/manager/sdbc2.component
115 ("connectivity_OSDBCDriverManager_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY"),
116 # connectivity/source/drivers/dbase/dbase.component
117 ("connectivity_dbase_ODriver", "#if HAVE_FEATURE_DBCONNECTIVITY"),
118 # cppcanvas/source/uno/mtfrenderer.component
119 "com_sun_star_comp_rendering_MtfRenderer_get_implementation",
120 # cui/util/cui.component
121 "com_sun_star_cui_ColorPicker_get_implementation",
122 # dbaccess/util/dba.component
123 "com_sun_star_comp_dba_DataAccessDescriptorFactory",
124 "com_sun_star_comp_dba_OCommandDefinition",
125 "com_sun_star_comp_dba_OComponentDefinition",
126 "com_sun_star_comp_dba_ODatabaseContext_get_implementation",
127 "com_sun_star_comp_dba_ODatabaseDocument",
128 "com_sun_star_comp_dba_ODatabaseSource",
129 "com_sun_star_comp_dba_ORowSet_get_implementation",
130 # desktop/lokclipboard.component
131 ("desktop_LOKClipboard_get_implementation", "#ifndef IOS"),
132 # drawinglayer/drawinglayer.component
133 "drawinglayer_XPrimitive2DRenderer",
134 # embeddedobj/util/embobj.component
135 "embeddedobj_UNOEmbeddedObjectCreator_get_implementation",
136 "embeddedobj_OOoEmbeddedObjectFactory_get_implementation",
137 "embeddedobj_OOoSpecialEmbeddedObjectFactory_get_implementation",
138 # emfio/emfio.component
139 "emfio_emfreader_XEmfParser_get_implementation",
140 # eventattacher/source/evtatt.component
141 "eventattacher_EventAttacher",
142 # extensions/source/logging/log.component
143 ("com_sun_star_comp_extensions_FileHandler", "#ifdef ANDROID"),
144 ("com_sun_star_comp_extensions_LoggerPool", "#ifdef ANDROID"),
145 ("com_sun_star_comp_extensions_PlainTextFormatter", "#ifdef ANDROID"),
146 ("com_sun_star_comp_extensions_SimpleTextFormatter", "#ifdef ANDROID"),
147 # extensions/source/bibliography/bib.component
148 "extensions_BibliographyLoader_get_implementation",
149 # filter/source/config/cache/filterconfig1.component
150 "filter_ConfigFlush_get_implementation",
151 "filter_TypeDetection_get_implementation",
152 "filter_FrameLoaderFactory_get_implementation",
153 "filter_FilterFactory_get_implementation",
154 "filter_ContentHandlerFactory_get_implementation",
155 # filter/source/odfflatxml/odfflatxml.component
156 "filter_OdfFlatXml_get_implementation",
157 # filter/source/pdf/pdffilter.component
158 "filter_PdfDecomposer_get_implementation",
159 "filter_PDFExportInteractionHandler_get_implementation",
160 "filter_PDFFilter_get_implementation",
161 "filter_PDFDialog_get_implementation",
162 # filter/source/xmlfilterdetect/xmlfd.component
163 "filter_XMLFilterDetect_get_implementation",
164 # filter/source/xmlfilteradaptor/xmlfa.component
165 "filter_XmlFilterAdaptor_get_implementation",
166 # filter/source/storagefilterdetect/storagefd.component
167 "filter_StorageFilterDetect_get_implementation",
168 # forms/util/frm.component
169 ("com_sun_star_comp_forms_FormOperations_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
170 ("com_sun_star_comp_forms_ODatabaseForm_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
171 ("com_sun_star_comp_forms_OFormattedFieldWrapper_ForcedFormatted_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
172 ("com_sun_star_comp_form_ORichTextControl_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
173 ("com_sun_star_comp_forms_ORichTextModel_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
174 ("com_sun_star_comp_forms_OScrollBarModel_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
175 ("com_sun_star_comp_forms_OSpinButtonModel_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
176 ("com_sun_star_form_Model_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
177 ("com_sun_star_form_OButtonControl_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
178 ("com_sun_star_form_OButtonModel_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
179 ("com_sun_star_form_OCheckBoxControl_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
180 ("com_sun_star_form_OCheckBoxModel_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
181 ("com_sun_star_form_OComboBoxControl_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
182 ("com_sun_star_form_OComboBoxModel_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
183 ("com_sun_star_form_ODateControl_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
184 ("com_sun_star_form_ODateModel_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
185 ("com_sun_star_form_OEditControl_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
186 ("com_sun_star_form_OEditModel_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
187 ("com_sun_star_form_OFixedTextModel_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
188 ("com_sun_star_form_OFormsCollection_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
189 ("com_sun_star_form_OGridControlModel_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
190 ("com_sun_star_form_OGroupBoxModel_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
191 ("com_sun_star_form_OListBoxControl_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
192 ("com_sun_star_form_OListBoxModel_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
193 ("com_sun_star_form_ONumericModel_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
194 ("com_sun_star_form_ONumericControl_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
195 ("com_sun_star_form_ORadioButtonControl_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
196 ("com_sun_star_form_ORadioButtonModel_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
197 ("com_sun_star_form_XForms_get_implementation", "#if HAVE_FEATURE_DBCONNECTIVITY && !ENABLE_FUZZERS"),
198 # framework/util/fwk.component
199 "com_sun_star_comp_framework_AutoRecovery_get_implementation",
200 "com_sun_star_comp_framework_Desktop_get_implementation",
201 "com_sun_star_comp_framework_DocumentAcceleratorConfiguration_get_implementation",
202 "com_sun_star_comp_framework_Frame_get_implementation",
203 "com_sun_star_comp_framework_GlobalAcceleratorConfiguration_get_implementation",
204 "com_sun_star_comp_framework_JobExecutor_get_implementation",
205 "com_sun_star_comp_framework_jobs_JobDispatch_get_implementation",
206 "com_sun_star_comp_framework_LayoutManager_get_implementation",
207 "com_sun_star_comp_framework_ModuleManager_get_implementation",
208 "com_sun_star_comp_framework_ModuleUIConfigurationManager_get_implementation",
209 "com_sun_star_comp_framework_ModuleUIConfigurationManagerSupplier_get_implementation",
210 "com_sun_star_comp_framework_PathSettings_get_implementation",
211 "com_sun_star_comp_framework_PathSubstitution_get_implementation",
212 "com_sun_star_comp_framework_ObjectMenuController_get_implementation",
213 "com_sun_star_comp_framework_PopupMenuControllerFactory_get_implementation",
214 "com_sun_star_comp_framework_ControlMenuController_get_implementation",
215 "com_sun_star_comp_framework_ThesaurusMenuController_get_implementation",
216 "com_sun_star_comp_framework_ToolbarAsMenuController_get_implementation",
217 "com_sun_star_comp_framework_ResourceMenuController_get_implementation",
218 "com_sun_star_comp_framework_StatusIndicatorFactory_get_implementation",
219 "com_sun_star_comp_framework_TaskCreator_get_implementation",
220 "com_sun_star_comp_framework_ToolBarControllerFactory_get_implementation",
221 "com_sun_star_comp_framework_UIConfigurationManager_get_implementation",
222 "com_sun_star_comp_framework_UIElementFactoryManager_get_implementation",
223 "com_sun_star_comp_framework_URLTransformer_get_implementation",
224 "com_sun_star_comp_framework_WindowStateConfiguration_get_implementation",
225 "com_sun_star_comp_framework_ModuleAcceleratorConfiguration_get_implementation",
226 "org_apache_openoffice_comp_framework_ContextChangeEventMultiplexer_get_implementation",
227 # i18npool/util/i18npool.component
228 "com_sun_star_i18n_BreakIterator_get_implementation",
229 "com_sun_star_i18n_BreakIterator_Unicode_get_implementation",
230 "com_sun_star_i18n_CharacterClassification_get_implementation",
231 "com_sun_star_i18n_CharacterClassification_Unicode_get_implementation",
232 "com_sun_star_i18n_Collator_get_implementation",
233 "com_sun_star_i18n_LocaleDataImpl_get_implementation",
234 "com_sun_star_i18n_NativeNumberSupplier_get_implementation",
235 "com_sun_star_i18n_NumberFormatCodeMapper_get_implementation",
236 "com_sun_star_i18n_Transliteration_get_implementation",
237 "com_sun_star_i18n_Transliteration_IGNORE_CASE_get_implementation",
238 "com_sun_star_i18n_Transliteration_IGNORE_KANA_get_implementation",
239 "com_sun_star_i18n_Transliteration_IGNORE_WIDTH_get_implementation",
240 "com_sun_star_text_DefaultNumberingProvider_get_implementation",
241 ("i18npool_BreakIterator_ja_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_ja"),
242 ("i18npool_BreakIterator_ko_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_ko"),
243 ("i18npool_BreakIterator_th_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_th"),
244 ("i18npool_BreakIterator_zh_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_zh"),
245 ("i18npool_BreakIterator_zh_TW_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_zh"),
246 "i18npool_CalendarImpl_get_implementation",
247 "i18npool_Calendar_ROC_get_implementation",
248 "i18npool_Calendar_dangi_get_implementation",
249 "i18npool_Calendar_buddhist_get_implementation",
250 "i18npool_Calendar_gengou_get_implementation",
251 "i18npool_Calendar_gregorian_get_implementation",
252 "i18npool_Calendar_hanja_get_implementation",
253 "i18npool_Calendar_hanja_yoil_get_implementation",
254 "i18npool_Calendar_hijri_get_implementation",
255 "i18npool_Calendar_jewish_get_implementation",
256 "i18npool_ChapterCollator_get_implementation",
257 "i18npool_Collator_Unicode_get_implementation",
258 "i18npool_IndexEntrySupplier_get_implementation",
259 "i18npool_IndexEntrySupplier_Unicode_get_implementation",
260 "i18npool_IndexEntrySupplier_asian_get_implementation",
261 ("i18npool_IndexEntrySupplier_ja_phonetic_alphanumeric_first_by_syllable_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_ja"),
262 ("i18npool_IndexEntrySupplier_ja_phonetic_alphanumeric_first_by_consonant_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_ja"),
263 ("i18npool_IndexEntrySupplier_ja_phonetic_alphanumeric_last_by_syllable_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_ja"),
264 ("i18npool_IndexEntrySupplier_ja_phonetic_alphanumeric_last_by_consonant_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_ja"),
265 ("i18npool_InputSequenceChecker_hi_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_hi"),
266 ("i18npool_InputSequenceChecker_th_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_th"),
267 ("i18npool_TextConversion_ko_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_ko"),
268 ("i18npool_TextConversion_zh_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_zh"),
269 "i18npool_CharToNumEastIndic_ar_get_implementation",
270 ("i18npool_CharToNumFullwidth_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_ja"),
271 ("i18npool_CharToNumHangul_ko_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_ko"),
272 "i18npool_CharToNumIndic_ar_get_implementation",
273 ("i18npool_CharToNumIndic_hi_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_hi"),
274 ("i18npool_CharToNumKanjiShort_ja_JP_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_ja"),
275 ("i18npool_CharToNumKanjiTraditional_ja_JP_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_ja"),
276 ("i18npool_CharToNumLower_ko_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_ko"),
277 ("i18npool_CharToNumUpper_ko_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_ko"),
278 ("i18npool_CharToNum_th_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_th"),
279 ("i18npool_NumToTextFullwidth_zh_CN_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_zh"),
280 ("i18npool_NumToTextFullwidth_zh_TW_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_zh"),
281 ("i18npool_NumToTextLower_zh_CN_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_zh"),
282 ("i18npool_NumToTextLower_zh_TW_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_zh"),
283 ("i18npool_NumToTextUpper_zh_CN_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_zh"),
284 ("i18npool_NumToTextUpper_zh_TW_get_implementation", "#if WITH_LOCALE_ALL || WITH_LOCALE_zh"),
285 # i18nsearch/sourceh/search/i18nsearch.component
286 "i18npool_TextSearch_get_implementation",
287 # io/source/io.component
288 "io_Pump_get_implementation",
289 "io_ODataInputStream_get_implementation",
290 "io_ODataOutputStream_get_implementation",
291 "io_OMarkableInputStream_get_implementation",
292 "io_OMarkableOutputStream_get_implementation",
293 "io_OObjectInputStream_get_implementation",
294 "io_OObjectOutputStream_get_implementation",
295 "io_OPipeImpl_get_implementation",
296 "io_OAcceptor_get_implementation",
297 "io_OConnector_get_implementation",
298 "io_OTextInputStream_get_implementation",
299 "io_OTextOutputStream_get_implementation",
300 # linguistic/source/lng.component
301 "linguistic_ConvDicList_get_implementation",
302 "linguistic_DicList_get_implementation",
303 "linguistic_LinguProps_get_implementation",
304 "linguistic_LngSvcMgr_get_implementation",
305 "linguistic_GrammarCheckingIterator_get_implementation",
306 # linguistic/source/spellcheck/MacOSXSpellMacOSXSpell.component
307 ("lingucomponent_MacSpellChecker_get_implementation", "#ifdef IOS"),
308 # lingucomponent/source/spellcheck/languagetool/LanguageTool.component
309 ("lingucomponent_LanguageToolGrammarChecker_get_implementation", "#if !ENABLE_FUZZERS"),
310 ("lingucomponent_NumberText_get_implementation", "#if !ENABLE_FUZZERS"),
311 # lingucomponent/source/thesaurus/libnth/lnth.component
312 "lingucomponent_Thesaurus_get_implementation",
313 "lingucomponent_SpellChecker_get_implementation",
314 "lingucomponent_LangGuess_get_implementation",
315 "lingucomponent_Hyphenator_get_implementation",
316 # package/source/xstor/xstor.component
317 "package_OStorageFactory_get_implementation",
318 # package/util/package2.component
319 "package_OZipFileAccess_get_implementation",
320 "package_ZipPackage_get_implementation",
321 "package_ManifestReader_get_implementation",
322 "package_ManifestWriter_get_implementation",
323 # sax/source/expatwrap/expwrap.component
324 "com_sun_star_comp_extensions_xml_sax_FastParser_get_implementation",
325 "com_sun_star_comp_extensions_xml_sax_ParserExpat_get_implementation",
326 "com_sun_star_extensions_xml_sax_Writer_get_implementation",
327 # scripting/util/scriptframe.component
328 ("scripting_BrowseNodeFactoryImpl_get_implementation", "#if HAVE_FEATURE_SCRIPTING"),
329 ("scripting_MasterScriptProvider_get_implementation", "#if HAVE_FEATURE_SCRIPTING"),
330 ("scripting_MasterScriptProviderFactory_get_implementation", "#if HAVE_FEATURE_SCRIPTING"),
331 ("scripting_ScriptingFrameworkURIHelper_get_implementation", "#if HAVE_FEATURE_SCRIPTING"),
332 # scripting/source/basprov/basprov.component
333 ("scripting_BasicProviderImpl_get_implementation", "#if HAVE_FEATURE_SCRIPTING"),
334 # sfx2/util/sfx.component
335 "SfxDocumentMetaData_get_implementation",
336 "com_sun_star_comp_office_FrameLoader_get_implementation",
337 "com_sun_star_comp_sfx2_AppDispatchProvider_get_implementation",
338 "com_sun_star_comp_sfx2_DocumentTemplates_get_implementation",
339 "com_sun_star_comp_sfx2_GlobalEventBroadcaster_get_implementation",
340 # shell/source/backends/localebe/localebe1.component
341 "shell_LocaleBackend_get_implementation",
342 # sot/util/sot.component
343 "com_sun_star_comp_embed_OLESimpleStorage",
344 # stoc/source/inspect/introspection.component
345 "com_sun_star_comp_stoc_Introspection_get_implementation",
346 # stoc/source/invocation_adapter/invocadapt.component
347 "stoc_invocation_adapter_get_implementation",
348 # stoc/source/corereflection/reflection.component
349 "com_sun_star_comp_stoc_CoreReflection_get_implementation",
350 # stoc/source/proxy_factory/proxyfac.component
351 "stoc_FactoryImpl_get_implementation",
352 # stoc/util/stocservices.component
353 "com_sun_star_comp_stoc_OServiceManagerWrapper_get_implementation",
354 "com_sun_star_comp_stoc_TypeConverter_get_implementation",
355 "com_sun_star_comp_uri_ExternalUriReferenceTranslator_get_implementation",
356 "com_sun_star_comp_uri_UriReferenceFactory_get_implementation",
357 "com_sun_star_comp_uri_UriSchemeParser_vndDOTsunDOTstarDOTexpand_get_implementation",
358 "com_sun_star_comp_uri_UriSchemeParser_vndDOTsunDOTstarDOTscript_get_implementation",
359 # starmath/util/sm.component
360 "Math_FormulaDocument_get_implementation",
361 "Math_XMLContentExporter_get_implementation",
362 "Math_XMLExporter_get_implementation",
363 "Math_XMLImporter_get_implementation",
364 "Math_XMLMetaExporter_get_implementation",
365 "Math_XMLOasisMetaExporter_get_implementation",
366 "Math_XMLOasisMetaImporter_get_implementation",
367 "Math_XMLOasisSettingsExporter_get_implementation",
368 "Math_XMLOasisSettingsImporter_get_implementation",
369 "Math_XMLSettingsExporter_get_implementation",
370 "com_sun_star_comp_Math_MathTypeFilter_get_implementation",
371 # svl/source/fsstor/fsstorage.component
372 "svl_FSStorageFactory_get_implementation",
373 # vcl/vcl.android.component
374 "com_sun_star_graphic_GraphicObject_get_implementation",
375 "com_sun_star_comp_graphic_GraphicMapper_get_implementation",
376 "com_sun_star_comp_graphic_GraphicProvider_get_implementation",
377 "com_sun_star_frame_VCLSessionManagerClient_get_implementation",
378 "vcl_FontIdentificator_get_implementation",
379 # svgio/svgio.component
380 "svgio_XSvgParser_get_implementation",
381 # svx/util/svx.component
382 "com_sun_star_comp_svx_CharacterSpacingToolBoxControl_get_implementation",
383 "com_sun_star_comp_svx_CTLToolBoxControl_get_implementation",
384 "com_sun_star_comp_svx_LineSpacingToolBoxControl_get_implementation",
385 "com_sun_star_comp_svx_NumberingToolBoxControl_get_implementation",
386 "com_sun_star_comp_svx_SmartTagMenuController_get_implementation",
387 "com_sun_star_comp_svx_UnderlineToolBoxControl_get_implementation",
388 "com_sun_star_drawing_EnhancedCustomShapeEngine_get_implementation",
389 "com_sun_star_drawing_SvxShapeCollection_get_implementation",
390 "com_sun_star_svx_FontHeightToolBoxController_get_implementation",
391 "org_apache_openoffice_comp_svx_sidebar_PanelFactory_get_implementation",
392 # svx/util/svxcore.component
393 "com_sun_star_comp_graphic_PrimitiveFactory2D_get_implementation",
394 "com_sun_star_comp_Draw_GraphicExporter_get_implementation",
395 "com_sun_star_comp_svx_ColorToolBoxControl_get_implementation",
396 "com_sun_star_comp_svx_FontNameToolBoxControl_get_implementation",
397 "com_sun_star_comp_svx_FrameToolBoxControl_get_implementation",
398 "com_sun_star_comp_Svx_GraphicExportHelper_get_implementation",
399 "com_sun_star_comp_Svx_GraphicImportHelper_get_implementation",
400 "com_sun_star_comp_svx_LineEndToolBoxControl_get_implementation",
401 "com_sun_star_comp_svx_LineStyleToolBoxControl_get_implementation",
402 "com_sun_star_comp_svx_StyleToolBoxControl_get_implementation",
403 "com_sun_star_comp_svx_StylesPreviewToolBoxControl_get_implementation",
404 # toolkit/util/tk.component
405 "com_sun_star_comp_embed_HatchWindowFactory_get_implementation",
406 "stardiv_Toolkit_StdTabController_get_implementation",
407 "stardiv_Toolkit_UnoButtonControl_get_implementation",
408 "stardiv_Toolkit_UnoCheckBoxControl_get_implementation",
409 "stardiv_Toolkit_UnoComboBoxControl_get_implementation",
410 "stardiv_Toolkit_UnoControlButtonModel_get_implementation",
411 "stardiv_Toolkit_UnoControlCheckBoxModel_get_implementation",
412 "stardiv_Toolkit_UnoControlComboBoxModel_get_implementation",
413 "stardiv_Toolkit_UnoControlContainer_get_implementation",
414 "stardiv_Toolkit_UnoControlContainerModel_get_implementation",
415 "stardiv_Toolkit_UnoControlDateFieldModel_get_implementation",
416 "stardiv_Toolkit_UnoControlDialogModel_get_implementation",
417 "stardiv_Toolkit_UnoControlFixedTextModel_get_implementation",
418 "stardiv_Toolkit_UnoControlFormattedFieldModel_get_implementation",
419 "stardiv_Toolkit_UnoControlGroupBoxModel_get_implementation",
420 "stardiv_Toolkit_UnoControlListBoxModel_get_implementation",
421 "stardiv_Toolkit_UnoControlNumericFieldModel_get_implementation",
422 "stardiv_Toolkit_UnoControlRadioButtonModel_get_implementation",
423 "stardiv_Toolkit_UnoControlScrollBarModel_get_implementation",
424 "stardiv_Toolkit_UnoDateFieldControl_get_implementation",
425 "stardiv_Toolkit_UnoGroupBoxControl_get_implementation",
426 "stardiv_Toolkit_UnoListBoxControl_get_implementation",
427 "stardiv_Toolkit_UnoNumericFieldControl_get_implementation",
428 "stardiv_Toolkit_UnoRadioButtonControl_get_implementation",
429 "stardiv_Toolkit_UnoSpinButtonModel_get_implementation",
430 "stardiv_Toolkit_VCLXPointer_get_implementation",
431 "stardiv_Toolkit_VCLXPopupMenu_get_implementation",
432 "stardiv_Toolkit_VCLXToolkit_get_implementation",
433 # ucb/source/core/ucb1.component
434 "ucb_UcbCommandEnvironment_get_implementation",
435 "ucb_UcbContentProviderProxyFactory_get_implementation",
436 "ucb_UcbPropertiesManager_get_implementation",
437 "ucb_UcbStore_get_implementation",
438 "ucb_UniversalContentBroker_get_implementation",
439 "ucb_OFileAccess_get_implementation",
440 # ucb/source/ucp/file/ucpfile1.component
441 "ucb_file_FileProvider_get_implementation",
442 # ucb/source/ucp/expand/ucpexpand1.component
443 ("ucb_expand_ExpandContentProviderImpl_get_implementation", "#ifdef ANDROID"),
444 # ucb/source/sorter/srtrs1.component
445 "ucb_SortedDynamicResultSetFactory_get_implementation",
446 # ucb/source/tdoc/ucptdoc1.component
447 "ucb_tdoc_ContentProvider_get_implementation",
448 "ucb_tdoc_DocumentContentFactory_get_implementation",
449 # ucb/source/ucp/ucphier1.component
450 "ucb_HierarchyContentProvider_get_implementation",
451 "ucb_HierarchyDataSource_get_implementation",
452 # ucb/source/ucp/package/ucppkg1
453 "ucb_package_ContentProvider_get_implementation",
454 # unotools/util/utl.component
455 "unotools_ServiceDocument_get_implementation",
456 "unotools_OTempFileService_get_implementation",
457 # unoxml/source/rdf/unordf.component
458 "unoxml_rdfRepository_get_implementation",
459 "unoxml_CURI_get_implementation",
460 "unoxml_CLiteral_get_implementation",
461 "unoxml_CBlankNode_get_implementation",
462 # unoxml/source/service/unoxml.component
463 "unoxml_CXPathAPI_get_implementation",
464 "unoxml_CSAXDocumentBuilder_get_implementation",
465 "unoxml_CDocumentBuilder_get_implementation",
466 # uui/util/uui.component
467 "com_sun_star_comp_uui_UUIInteractionHandler_get_implementation",
468 "com_sun_star_comp_uui_UUIInteractionRequestStringResolver_get_implementation",
470 "dtrans_CMimeContentTypeFactory_get_implementation",
471 "vcl_SystemClipboard_get_implementation",
472 # xmloff/source/transform/xof.component
473 "xmloff_XMLCalcContentImportOOO_get_implementation",
474 "xmloff_XMLCalcImportOOO_get_implementation",
475 "xmloff_XMLCalcMetaImportOOO_get_implementation",
476 "xmloff_XMLCalcSettingsImportOOO_get_implementation",
477 "xmloff_XMLCalcStylesImportOOO_get_implementation",
478 "xmloff_XMLChartContentImportOOO_get_implementation",
479 "xmloff_XMLChartImportOOO_get_implementation",
480 "xmloff_XMLChartStylesImportOOO_get_implementation",
481 "xmloff_XMLDrawContentImportOOO_get_implementation",
482 "xmloff_XMLDrawImportOOO_get_implementation",
483 "xmloff_XMLDrawMetaImportOOO_get_implementation",
484 "xmloff_XMLDrawSettingsImportOOO_get_implementation",
485 "xmloff_XMLDrawStylesImportOOO_get_implementation",
486 "xmloff_XMLImpressContentImportOOO_get_implementation",
487 "xmloff_XMLImpressImportOOO_get_implementation",
488 "xmloff_XMLImpressMetaImportOOO_get_implementation",
489 "xmloff_XMLImpressSettingsImportOOO_get_implementation",
490 "xmloff_XMLImpressStylesImportOOO_get_implementation",
491 "xmloff_XMLMathMetaImportOOO_get_implementation",
492 "xmloff_XMLMathSettingsImportOOO_get_implementation",
493 "xmloff_OOo2OasisTransformer_get_implementation",
494 "xmloff_Oasis2OOoTransformer_get_implementation",
495 "xmloff_XMLAutoTextEventImportOOO_get_implementation",
496 "xmloff_XMLWriterContentImportOOO_get_implementation",
497 "xmloff_XMLWriterImportOOO_get_implementation",
498 "xmloff_XMLWriterMetaImportOOO_get_implementation",
499 "xmloff_XMLWriterSettingsImportOOO_get_implementation",
500 "xmloff_XMLWriterStylesImportOOO_get_implementation",
501 "xmloff_XMLMetaImportOOO_get_implementation",
502 # xmloff/util/xo.component
503 "XMLMetaExportComponent_get_implementation",
504 "XMLMetaExportOOo_get_implementation",
505 "XMLMetaImportComponent_get_implementation",
506 "XMLVersionListPersistence_get_implementation",
507 "com_sun_star_comp_Impress_XMLOasisImporter_get_implementation",
508 "com_sun_star_comp_Impress_XMLOasisExporter_get_implementation",
509 "com_sun_star_comp_Impress_XMLOasisStylesExporter_get_implementation",
510 "com_sun_star_comp_Impress_XMLOasisContentExporter_get_implementation",
511 "com_sun_star_comp_Impress_XMLOasisMetaExporter_get_implementation",
512 "com_sun_star_comp_Impress_XMLOasisMetaImporter_get_implementation",
513 "com_sun_star_comp_Impress_XMLOasisContentImporter_get_implementation",
514 "com_sun_star_comp_Impress_XMLOasisStylesImporter_get_implementation",
515 "com_sun_star_comp_Impress_XMLOasisSettingsExporter_get_implementation",
516 "com_sun_star_comp_Impress_XMLOasisSettingsImporter_get_implementation",
517 "com_sun_star_comp_Impress_XMLExporter_get_implementation",
518 "com_sun_star_comp_Draw_XMLExporter_get_implementation",
519 "com_sun_star_comp_Draw_XMLOasisSettingsExporter_get_implementation",
520 "com_sun_star_comp_Draw_XMLOasisMetaExporter_get_implementation",
521 "com_sun_star_comp_Draw_XMLOasisContentExporter_get_implementation",
522 "com_sun_star_comp_Draw_XMLOasisStylesExporter_get_implementation",
523 "com_sun_star_comp_Draw_XMLOasisExporter_get_implementation",
524 "com_sun_star_comp_Draw_XMLOasisImporter_get_implementation",
525 "com_sun_star_comp_Draw_XMLOasisStylesImporter_get_implementation",
526 "com_sun_star_comp_Draw_XMLOasisContentImporter_get_implementation",
527 "com_sun_star_comp_Draw_XMLOasisMetaImporter_get_implementation",
528 "com_sun_star_comp_Draw_XMLOasisSettingsImporter_get_implementation",
529 "com_sun_star_comp_Xmloff_AnimationsImport",
530 "com_sun_star_comp_DrawingLayer_XMLExporter_get_implementation",
531 "com_sun_star_comp_Impress_XMLClipboardExporter_get_implementation",
532 "com_sun_star_comp_Chart_XMLOasisImporter_get_implementation",
533 "com_sun_star_comp_Chart_XMLOasisMetaImporter_get_implementation",
534 "com_sun_star_comp_Chart_XMLOasisMetaExporter_get_implementation",
535 "com_sun_star_comp_Chart_XMLOasisStylesExporter_get_implementation",
536 "com_sun_star_comp_Chart_XMLOasisContentExporter_get_implementation",
537 "com_sun_star_comp_Chart_XMLExporter_get_implementation",
538 "com_sun_star_comp_Chart_XMLStylesExporter_get_implementation",
539 "com_sun_star_comp_Chart_XMLContentExporter_get_implementation",
540 "com_sun_star_comp_Chart_XMLOasisStylesImporter_get_implementation",
541 "com_sun_star_comp_Chart_XMLOasisContentImporter_get_implementation",
542 "com_sun_star_comp_Chart_XMLOasisExporter_get_implementation",
543 "com_sun_star_comp_Writer_XMLOasisAutotextEventsExporter_get_implementation",
544 "com_sun_star_comp_Writer_XMLAutotextEventsExporter_get_implementation",
545 "com_sun_star_comp_Writer_XMLOasisAutotextEventsImporter_get_implementation",
546 # xmlscript/util/xmlscript.component
547 "com_sun_star_comp_xml_input_SaxDocumentHandler_get_implementation",
548 "com_sun_star_comp_xmlscript_XMLBasicExporter",
549 "com_sun_star_comp_xmlscript_XMLOasisBasicExporter",
550 # xmlsecurity/util/xmlsecurity.component
551 ("com_sun_star_security_CertificateContainer_get_implementation", "#if HAVE_FEATURE_NSS"),
552 ("com_sun_star_security_DocumentDigitalSignatures_get_implementation", "#if HAVE_FEATURE_NSS"),
553 # xmlsecurity/util/xsec_xmlsec.component
554 ("com_sun_star_xml_crypto_NSSInitializer_get_implementation", "#if HAVE_FEATURE_NSS"),
555 ("com_sun_star_xml_crypto_SEInitializer_get_implementation", "#if HAVE_FEATURE_NSS"),
556 ("com_sun_star_xml_security_SEInitializer_Gpg_get_implementation", "#if HAVE_FEATURE_GPGME"),
557 ("com_sun_star_xml_crypto_SecurityEnvironment_get_implementation", "#if HAVE_FEATURE_NSS"),
558 ("com_sun_star_xml_wrapper_XMLDocumentWrapper_get_implementation", "#if HAVE_FEATURE_NSS"),
559 ("com_sun_star_xml_wrapper_XMLElementWrapper_get_implementation", "#if HAVE_FEATURE_NSS"),
560 ("com_sun_star_xml_crypto_XMLSecurityContext_get_implementation", "#if HAVE_FEATURE_NSS"),
561 ("com_sun_star_xml_crypto_XMLSignature_get_implementation", "#if HAVE_FEATURE_NSS"),
562 # oox/util/oox.component
563 "com_sun_star_comp_oox_core_FastTokenHandler_get_implementation",
564 "com_sun_star_comp_oox_FormatDetector_get_implementation",
565 "com_sun_star_comp_oox_docprop_DocumentPropertiesImporter_get_implementation",
566 "com_sun_star_comp_oox_ppt_PowerPointImport_get_implementation",
567 "com_sun_star_comp_oox_crypto_StrongEncryptionDataSpace_get_implementation",
570 # edit group for apps, where you can edit documents
571 edit_factory_list
= [
574 edit_constructor_list
= [
575 # framework/util/fwk.component
576 "com_sun_star_comp_framework_GlobalAcceleratorConfiguration_get_implementation",
577 "com_sun_star_comp_framework_UICommandDescription_get_implementation",
578 # i18npool/util/i18npool.component
579 "com_sun_star_i18n_InputSequenceChecker_get_implementation",
580 "com_sun_star_i18n_OrdinalSuffix_get_implementation",
581 # sc/util/sc.component
582 "Calc_XMLOasisContentExporter_get_implementation",
583 "Calc_XMLOasisExporter_get_implementation",
584 "Calc_XMLOasisMetaExporter_get_implementation",
585 "Calc_XMLOasisSettingsExporter_get_implementation",
586 "Calc_XMLOasisStylesExporter_get_implementation",
587 "Calc_FilterOptionsDialog_get_implementation",
588 # starmath/util/sm.component
589 "Math_XMLContentExporter_get_implementation",
590 "Math_XMLOasisMetaExporter_get_implementation",
591 "Math_XMLOasisSettingsExporter_get_implementation",
592 "Math_XMLImporter_get_implementation",
593 "Math_XMLOasisMetaImporter_get_implementation",
594 "Math_XMLOasisSettingsImporter_get_implementation",
595 # starmath/util/smd.component
596 "math_FormatDetector_get_implementation",
597 # sw/util/sw.component
598 "com_sun_star_comp_Writer_XMLOasisContentExporter_get_implementation",
599 "com_sun_star_comp_Writer_XMLOasisExporter_get_implementation",
600 "com_sun_star_comp_Writer_XMLOasisMetaExporter_get_implementation",
601 "com_sun_star_comp_Writer_XMLOasisSettingsExporter_get_implementation",
602 "com_sun_star_comp_Writer_XMLOasisStylesExporter_get_implementation",
603 "com_sun_star_comp_Writer_WriterModule_get_implementation",
604 "org_apache_openoffice_comp_sw_sidebar_SwPanelFactory_get_implementation",
608 math_factory_list
= [
611 math_constructor_list
= [
612 # starmath/util/sm.component
613 "Math_XMLOasisMetaExporter_get_implementation",
614 "Math_XMLOasisSettingsExporter_get_implementation",
617 calc_factory_list
= [
620 calc_constructor_list
= [
621 # avmedia/util/avmedia.component
622 ("com_sun_star_comp_framework_SoundHandler_get_implementation", "#if HAVE_FEATURE_AVMEDIA"),
623 # sc/util/sc.component
624 "ScPanelFactory_get_implementation",
625 "Calc_SpreadsheetDocument_get_implementation",
626 "Calc_XMLOasisContentImporter_get_implementation",
627 "Calc_XMLOasisImporter_get_implementation",
628 "Calc_XMLOasisMetaImporter_get_implementation",
629 "Calc_XMLOasisSettingsImporter_get_implementation",
630 "Calc_XMLOasisStylesImporter_get_implementation",
631 "Calc_ScSpreadsheetSettings_get_implementation",
632 # sc/util/scd.component
633 "com_sun_star_comp_calc_ExcelBiffFormatDetector_get_implementation",
634 "com_sun_star_comp_calc_FormatDetector_get_implementation",
635 # sc/util/scfilt.component
636 "com_sun_star_comp_oox_xls_ExcelFilter_get_implementation",
637 "com_sun_star_comp_oox_xls_FormulaParser_get_implementation",
638 # sc/util/vbaobj.component
639 ("Calc_ScVbaApplication_get_implementation", "#if HAVE_FEATURE_SCRIPTING"),
640 ("ScVbaEventsHelper_get_implementation", "#if HAVE_FEATURE_SCRIPTING"),
641 ("ScVbaGlobals_get_implementation", "#if HAVE_FEATURE_SCRIPTING"),
642 ("Calc_ScVbaHyperlink_get_implementation", "#if HAVE_FEATURE_SCRIPTING"),
643 ("ScVbaTextFrame_get_implementation", "#if HAVE_FEATURE_SCRIPTING"),
644 ("Calc_ScVbaWindow_get_implementation", "#if HAVE_FEATURE_SCRIPTING"),
645 ("Calc_ScVbaWorkbook_get_implementation", "#if HAVE_FEATURE_SCRIPTING"),
646 ("Calc_ScVbaWorksheet_get_implementation", "#if HAVE_FEATURE_SCRIPTING"),
647 ("Calc_ScVbaRange_get_implementation", "#if HAVE_FEATURE_SCRIPTING"),
648 # scaddins/source/analysis/analysis.component
649 "scaddins_AnalysisAddIn_get_implementation",
650 # scaddins/source/datefunc/date.component
651 "scaddins_ScaDateAddIn_get_implementation",
652 # scaddins/source/pricing/pricing.component
653 "scaddins_ScaPricingAddIn_get_implementation",
654 # svl/util/svl.component
655 "com_sun_star_uno_util_numbers_SvNumberFormatsSupplierServiceObject_get_implementation",
656 "com_sun_star_uno_util_numbers_SvNumberFormatterServiceObject_get_implementation",
657 # scripting/source/vbaevents/vbaevents.component
658 ("ooo_vba_VBAToOOEventDesc_get_implementation", "#if HAVE_FEATURE_SCRIPTING"),
659 ("ooo_vba_EventListener_get_implementation", "#if HAVE_FEATURE_SCRIPTING"),
662 draw_factory_list
= [
665 draw_constructor_list
= [
666 # animations/source/animcore/animcore.component
667 "com_sun_star_animations_AnimateColor_get_implementation",
668 "com_sun_star_animations_AnimateMotion_get_implementation",
669 "com_sun_star_animations_AnimateSet_get_implementation",
670 "com_sun_star_animations_AnimateTransform_get_implementation",
671 "com_sun_star_animations_Animate_get_implementation",
672 "com_sun_star_animations_Audio_get_implementation",
673 "com_sun_star_animations_Command_get_implementation",
674 "com_sun_star_animations_IterateContainer_get_implementation",
675 "com_sun_star_animations_ParallelTimeContainer_get_implementation",
676 "com_sun_star_animations_SequenceTimeContainer_get_implementation",
677 "com_sun_star_animations_TransitionFilter_get_implementation",
678 # desktop/source/deployment/deployment.component
679 "com_sun_star_comp_deployment_ExtensionManager_get_implementation",
680 "com_sun_star_comp_deployment_PackageInformationProvider_get_implementation",
681 "com_sun_star_comp_deployment_PackageManagerFactory_get_implementation",
682 "com_sun_star_comp_deployment_ProgressLog_get_implementation",
683 "com_sun_star_comp_deployment_component_PackageRegistryBackend_get_implementation",
684 "com_sun_star_comp_deployment_configuration_PackageRegistryBackend_get_implementation",
685 "com_sun_star_comp_deployment_executable_PackageRegistryBackend_get_implementation",
686 "com_sun_star_comp_deployment_help_PackageRegistryBackend_get_implementation",
687 "com_sun_star_comp_deployment_script_PackageRegistryBackend_get_implementation",
688 "com_sun_star_comp_deployment_sfwk_PackageRegistryBackend_get_implementation",
689 # embedded/source/msole/emboleobj.windows.component
690 "embeddedobj_OleEmbeddedObjectFactory_get_implementation",
691 # filter/source/svg/svgfilter.component
692 "filter_SVGFilter_get_implementation",
693 "filter_SVGWriter_get_implementation",
694 # sd/util/sd.component
695 "sd_DrawingDocument_get_implementation",
696 "com_sun_star_comp_Draw_DrawingModule_get_implementation",
697 "sd_PresentationDocument_get_implementation",
698 "com_sun_star_comp_Draw_PresenterHelper_get_implementation",
699 "com_sun_star_comp_Draw_PresenterPreviewCache_get_implementation",
700 "com_sun_star_comp_Draw_SlideRenderer_get_implementation",
701 "com_sun_star_comp_draw_SdHtmlOptionsDialog_get_implementation",
702 "com_sun_star_comp_sd_InsertSlideController_get_implementation",
703 "com_sun_star_comp_sd_SlideLayoutController_get_implementation",
704 "com_sun_star_comp_sd_DisplayModeController_get_implementation",
705 "RandomAnimationNode_get_implementation",
706 "com_sun_star_comp_Draw_framework_ResourceID_get_implementation",
707 "org_openoffice_comp_Draw_framework_PanelFactory_get_implementation",
708 "css_comp_Impress_oox_PowerPointExport",
709 # sd/util/sdd.component
710 "com_sun_star_comp_draw_FormatDetector_get_implementation",
711 # writerperfect/source/draw/wpftdraw.component
712 "com_sun_star_comp_Draw_VisioImportFilter_get_implementation",
713 # sdext/source/pdfimport/pdfimport.component
714 ("sdext_PDFIHybridAdaptor_get_implementation", "#if HAVE_FEATURE_PDFIMPORT"),
715 ("sdext_PDFIRawAdaptor_Writer_get_implementation", "#if HAVE_FEATURE_PDFIMPORT"),
716 ("sdext_PDFIRawAdaptor_Draw_get_implementation", "#if HAVE_FEATURE_PDFIMPORT"),
717 ("sdext_PDFIRawAdaptor_Impress_get_implementation", "#if HAVE_FEATURE_PDFIMPORT"),
718 ("sdext_PDFDetector_get_implementation", "#if HAVE_FEATURE_PDFIMPORT"),
721 writer_factory_list
= [
724 writer_constructor_list
= [
725 # filter/source/textfilterdetect/textfd.component
726 "com_sun_star_comp_filters_PlainTextFilterDetect_get_implementation",
727 # sw/util/sw.component
728 "Writer_SwTextDocument_get_implementation",
729 "com_sun_star_comp_Writer_XMLOasisContentImporter_get_implementation",
730 "com_sun_star_comp_Writer_XMLOasisImporter_get_implementation",
731 "com_sun_star_comp_Writer_XMLOasisMetaImporter_get_implementation",
732 "com_sun_star_comp_Writer_XMLOasisSettingsImporter_get_implementation",
733 "com_sun_star_comp_Writer_XMLOasisStylesImporter_get_implementation",
734 "com_sun_star_util_comp_FinalThreadManager_get_implementation",
735 # sw/util/swd.component
736 "com_sun_star_comp_writer_FormatDetector_get_implementation",
737 # sw/util/msword.component
738 "com_sun_star_comp_Writer_RtfExport_get_implementation",
739 "com_sun_star_comp_Writer_DocxExport_get_implementation",
740 # writerfilter/util/writerfilter.component
741 "com_sun_star_comp_Writer_RtfFilter_get_implementation",
742 "com_sun_star_comp_Writer_WriterFilter_get_implementation",
743 # writerperfect/source/writer/wpftwriter.component
744 "com_sun_star_comp_Writer_EPUBExportFilter_get_implementation",
748 'core' : core_factory_list
,
749 'edit' : edit_factory_list
,
750 'math' : math_factory_list
,
751 'calc' : calc_factory_list
,
752 'draw' : draw_factory_list
,
753 'writer' : writer_factory_list
,
757 'core' : core_constructor_list
,
758 'edit' : edit_constructor_list
,
759 'math' : math_constructor_list
,
760 'calc' : calc_constructor_list
,
761 'draw' : draw_constructor_list
,
762 'writer' : writer_constructor_list
,
766 'NotebookbarTabControl',
767 'NotebookbarToolBox',
770 def get_constructor_guard(constructor
):
771 if type(full_constructor_map
[constructor
]) is bool:
774 return full_constructor_map
[constructor
]
776 # instead of outputting native-code.cxx, reduce the services.rdb according to
777 # the constraints, so that we can easily emulate what services do we need to
778 # add for a fully functional file loading / saving / ...
779 def limit_rdb(services_rdb
, full_factory_map
, full_constructor_map
):
780 ET
.register_namespace('','http://openoffice.org/2010/uno-components')
781 tree
= ET
.parse(services_rdb
[0])
782 root
= tree
.getroot()
784 for component
in root
.findall('{http://openoffice.org/2010/uno-components}component'):
786 uri
= component
.get('uri')
787 component_name
= None
789 component_name
= re
.sub(r
'^vnd.sun.star.expand:\$LO_LIB_DIR/([^.]*).so$', r
'\1.a', uri
)
790 if component_name
in full_factory_map
:
793 # via a constructor - limit only to those we have
794 has_constructor
= False
795 for implementation
in component
.findall('{http://openoffice.org/2010/uno-components}implementation'):
796 constructor
= implementation
.get('constructor')
797 if constructor
in full_constructor_map
:
798 has_constructor
= True
800 component
.remove(implementation
)
802 if not has_constructor
:
803 root
.remove(component
)
805 tree
.write(services_rdb
[0] + '.out', xml_declaration
= True, method
= 'xml')
809 opts
= OptionParser()
810 opts
.add_option("-j", "--java-guard", action
="store_true", help="include external java functions", dest
="java", default
=False)
811 opts
.add_option("-g", "--group", action
="append", help="group of implementations to make available in application", dest
="groups")
812 opts
.add_option("-r", "--limit-rdb", action
="append", help="instead of outputting native-code.cxx, limit the services.rdb only to the services defined by the groups", dest
="services")
813 opts
.add_option("-C", "--pure-c", action
="store_true", help="do not print extern \"C\"", dest
="pure_c", default
=False)
814 opts
.add_option("-c", "--constructors", help="file with the list of constructors", dest
="constructors_file")
816 (options
, args
) = opts
.parse_args()
818 # dict of all the constructors that we need according to -g's
819 full_constructor_map
= {}
821 for constructor_group
in options
.groups
:
822 for constructor
in constructor_map
[constructor_group
]:
823 if type(constructor
) is tuple:
824 full_constructor_map
[constructor
[0]] = constructor
[1]
826 full_constructor_map
[constructor
] = True
828 if not options
.groups
and options
.constructors_file
:
829 options
.groups
= factory_map
.keys()
831 # dict of all the factories that we need according to -g's
832 full_factory_map
= {}
834 for factory_group
in options
.groups
:
835 for entry
in factory_map
[factory_group
]:
838 factory_guard
= entry
[2]
839 map_entry
= { 'function': entry
[1], 'guard': factory_guard
}
840 full_factory_map
[entry
[0]] = map_entry
842 # are we only shuffling the services.rdb?
844 limit_rdb(options
.services
, full_factory_map
, full_constructor_map
)
847 if options
.constructors_file
:
848 with
open(options
.constructors_file
, "r") as constructors
:
849 for line
in constructors
:
850 full_constructor_map
[line
.strip()] = True
853 * This is a generated file. Do not edit.
855 * File generated by solenv/bin/native-code.py
858 #include <config_crypto.h>
859 #include <config_features.h>
860 #include <config_fuzzers.h>
861 #include <config_gpgme.h>
862 #include <config_locales.h>
863 #include <osl/detail/component-mapping.h>
867 if not options
.pure_c
:
868 print ("""extern "C" {""")
870 for entry
in sorted(full_factory_map
.keys()):
871 factory_function
= full_factory_map
[entry
]['function']
872 factory_guard
= full_factory_map
[entry
]['guard']
874 print (factory_guard
)
875 print('void * ' + factory_function
+ '( const char* , void* , void* );')
880 for constructor
in sorted(full_constructor_map
.keys()):
881 constructor_guard
= get_constructor_guard(constructor
)
882 if constructor_guard
:
883 print (constructor_guard
)
884 print ('void * '+constructor
+'( void *, void * );')
885 if constructor_guard
:
889 for entry
in sorted(custom_widgets
):
890 print ('void make' + entry
+ '();')
891 print ('typedef void (*custom_widget_func)();')
892 print ('#if !ENABLE_FUZZERS')
893 print ('static struct { const char *name; custom_widget_func func; } custom_widgets[] = {')
894 for entry
in sorted(custom_widgets
):
895 print (' { "make' + entry
+ '", make' + entry
+ ' },')
900 custom_widget_func lo_get_custom_widget_func(const char* name)
906 for (size_t i = 0; i < sizeof(custom_widgets) / sizeof(custom_widgets[0]); i++)
907 if (strcmp(name, custom_widgets[i].name) == 0)
908 return custom_widgets[i].func;
915 const lib_to_factory_mapping *
916 lo_get_factory_map(void)
918 static lib_to_factory_mapping map[] = {""")
920 for entry
in sorted(full_factory_map
.keys()):
921 factory_function
= full_factory_map
[entry
]['function']
922 factory_guard
= full_factory_map
[entry
]['guard']
924 print (factory_guard
)
925 print(' { "' + entry
+ '", ' + factory_function
+ ' },')
935 extern void Java_org_libreoffice_kit_LibreOfficeKit_initializeNative();
936 volatile void *p = (void *) Java_org_libreoffice_kit_LibreOfficeKit_initializeNative;
938 extern void Java_org_libreoffice_kit_Office_getError();
939 p = (void *) Java_org_libreoffice_kit_Office_getError;
947 const lib_to_constructor_mapping *
948 lo_get_constructor_map(void)
950 static lib_to_constructor_mapping map[] = {""")
952 for constructor
in sorted(full_constructor_map
.keys()):
953 constructor_guard
= get_constructor_guard(constructor
)
954 if constructor_guard
:
955 print (constructor_guard
)
956 print (' { "' +constructor
+ '", ' +constructor
+ ' },')
957 if constructor_guard
:
968 if not options
.pure_c
:
971 # vim:set shiftwidth=4 softtabstop=4 expandtab: