office-gobmx/Repository.mk

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

1305 lines
31 KiB
Makefile
Raw Normal View History

# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
2010-04-17 05:41:17 -05:00
#
re-base on ALv2 code. Includes: Patches contributed by Mathias Bauer gnumake4 work variously http://svn.apache.org/viewvc?view=revision&revision=1394707 http://svn.apache.org/viewvc?view=revision&revision=1394326 http://svn.apache.org/viewvc?view=revision&revision=1397337 http://svn.apache.org/viewvc?view=revision&revision=1397315 http://svn.apache.org/viewvc?view=revision&revision=1396797 Patches contributed by Andre Fischer Fixed getcsym.awk to handle #-comments that contain special regexp chars. http://svn.apache.org/viewvc?view=revision&revision=1230971 118778: Added ADDITIONAL_REPOSITORIES environment variable and its automatic setup in configure. http://svn.apache.org/viewvc?view=revision&revision=1232004 118160: Added external CoinMP library. http://svn.apache.org/viewvc?view=revision&revision=1233909 Patches contributed by Herbert Duerr #i119168# use generic LICENSE file for langpacks and sdks http://svn.apache.org/viewvc?view=revision&revision=1310178 macosxotoolhelper: need to quote perl regexp if it may contain regexp metachars http://svn.apache.org/viewvc?view=revision&revision=1183367 allow gbuild with empty sysroot on linux http://svn.apache.org/viewvc?view=revision&revision=1179186 Patches contributed by Ingo Schmidt native373: #164472# improvements for msi database http://svn.apache.org/viewvc?view=revision&revision=1167540 http://svn.apache.org/viewvc?view=revision&revision=1167539 Patches contributed by Jurgen Schmidt adapt setup package scripts to handle special DS_Store file for developer snapshot builds http://svn.apache.org/viewvc?view=revision&revision=1232430 imported patch extensions_i117681.patch http://svn.apache.org/viewvc?view=revision&revision=1172102 Patches contributed by Michael Stahl gbuild: RepositoryFixes.mk should be optional http://svn.apache.org/viewvc?view=revision&revision=1166123 xslt filter: remove the FLA horror wordml import filter: replace FLA usage with plain XSLT http://svn.apache.org/viewvc?view=revision&revision=1363727 Patch contributed by Oliver-Rainer Wittmann i#88652: applied patch, remove unicows deps http://svn.apache.org/viewvc?view=revision&revision=1177585 Remove lots of OS2 conditionals, re-extract Rhino Java, unwind cppunit pieces, cleanup Mac image bits, remove coin-mp and re-package lpsolve, Oxygen & Crystal, fixup qstart bits, expand MPLv2 subset checking. Change-Id: Iad5c8a76399620b892671633c0d8c29996db3564
2013-05-16 15:56:04 -05:00
# This file is part of the LibreOffice project.
#
re-base on ALv2 code. Includes: Patches contributed by Mathias Bauer gnumake4 work variously http://svn.apache.org/viewvc?view=revision&revision=1394707 http://svn.apache.org/viewvc?view=revision&revision=1394326 http://svn.apache.org/viewvc?view=revision&revision=1397337 http://svn.apache.org/viewvc?view=revision&revision=1397315 http://svn.apache.org/viewvc?view=revision&revision=1396797 Patches contributed by Andre Fischer Fixed getcsym.awk to handle #-comments that contain special regexp chars. http://svn.apache.org/viewvc?view=revision&revision=1230971 118778: Added ADDITIONAL_REPOSITORIES environment variable and its automatic setup in configure. http://svn.apache.org/viewvc?view=revision&revision=1232004 118160: Added external CoinMP library. http://svn.apache.org/viewvc?view=revision&revision=1233909 Patches contributed by Herbert Duerr #i119168# use generic LICENSE file for langpacks and sdks http://svn.apache.org/viewvc?view=revision&revision=1310178 macosxotoolhelper: need to quote perl regexp if it may contain regexp metachars http://svn.apache.org/viewvc?view=revision&revision=1183367 allow gbuild with empty sysroot on linux http://svn.apache.org/viewvc?view=revision&revision=1179186 Patches contributed by Ingo Schmidt native373: #164472# improvements for msi database http://svn.apache.org/viewvc?view=revision&revision=1167540 http://svn.apache.org/viewvc?view=revision&revision=1167539 Patches contributed by Jurgen Schmidt adapt setup package scripts to handle special DS_Store file for developer snapshot builds http://svn.apache.org/viewvc?view=revision&revision=1232430 imported patch extensions_i117681.patch http://svn.apache.org/viewvc?view=revision&revision=1172102 Patches contributed by Michael Stahl gbuild: RepositoryFixes.mk should be optional http://svn.apache.org/viewvc?view=revision&revision=1166123 xslt filter: remove the FLA horror wordml import filter: replace FLA usage with plain XSLT http://svn.apache.org/viewvc?view=revision&revision=1363727 Patch contributed by Oliver-Rainer Wittmann i#88652: applied patch, remove unicows deps http://svn.apache.org/viewvc?view=revision&revision=1177585 Remove lots of OS2 conditionals, re-extract Rhino Java, unwind cppunit pieces, cleanup Mac image bits, remove coin-mp and re-package lpsolve, Oxygen & Crystal, fixup qstart bits, expand MPLv2 subset checking. Change-Id: Iad5c8a76399620b892671633c0d8c29996db3564
2013-05-16 15:56:04 -05:00
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
2010-04-17 05:41:17 -05:00
#
re-base on ALv2 code. Includes: Patches contributed by Mathias Bauer gnumake4 work variously http://svn.apache.org/viewvc?view=revision&revision=1394707 http://svn.apache.org/viewvc?view=revision&revision=1394326 http://svn.apache.org/viewvc?view=revision&revision=1397337 http://svn.apache.org/viewvc?view=revision&revision=1397315 http://svn.apache.org/viewvc?view=revision&revision=1396797 Patches contributed by Andre Fischer Fixed getcsym.awk to handle #-comments that contain special regexp chars. http://svn.apache.org/viewvc?view=revision&revision=1230971 118778: Added ADDITIONAL_REPOSITORIES environment variable and its automatic setup in configure. http://svn.apache.org/viewvc?view=revision&revision=1232004 118160: Added external CoinMP library. http://svn.apache.org/viewvc?view=revision&revision=1233909 Patches contributed by Herbert Duerr #i119168# use generic LICENSE file for langpacks and sdks http://svn.apache.org/viewvc?view=revision&revision=1310178 macosxotoolhelper: need to quote perl regexp if it may contain regexp metachars http://svn.apache.org/viewvc?view=revision&revision=1183367 allow gbuild with empty sysroot on linux http://svn.apache.org/viewvc?view=revision&revision=1179186 Patches contributed by Ingo Schmidt native373: #164472# improvements for msi database http://svn.apache.org/viewvc?view=revision&revision=1167540 http://svn.apache.org/viewvc?view=revision&revision=1167539 Patches contributed by Jurgen Schmidt adapt setup package scripts to handle special DS_Store file for developer snapshot builds http://svn.apache.org/viewvc?view=revision&revision=1232430 imported patch extensions_i117681.patch http://svn.apache.org/viewvc?view=revision&revision=1172102 Patches contributed by Michael Stahl gbuild: RepositoryFixes.mk should be optional http://svn.apache.org/viewvc?view=revision&revision=1166123 xslt filter: remove the FLA horror wordml import filter: replace FLA usage with plain XSLT http://svn.apache.org/viewvc?view=revision&revision=1363727 Patch contributed by Oliver-Rainer Wittmann i#88652: applied patch, remove unicows deps http://svn.apache.org/viewvc?view=revision&revision=1177585 Remove lots of OS2 conditionals, re-extract Rhino Java, unwind cppunit pieces, cleanup Mac image bits, remove coin-mp and re-package lpsolve, Oxygen & Crystal, fixup qstart bits, expand MPLv2 subset checking. Change-Id: Iad5c8a76399620b892671633c0d8c29996db3564
2013-05-16 15:56:04 -05:00
# This file incorporates work covered by the following license notice:
2010-04-17 05:41:17 -05:00
#
re-base on ALv2 code. Includes: Patches contributed by Mathias Bauer gnumake4 work variously http://svn.apache.org/viewvc?view=revision&revision=1394707 http://svn.apache.org/viewvc?view=revision&revision=1394326 http://svn.apache.org/viewvc?view=revision&revision=1397337 http://svn.apache.org/viewvc?view=revision&revision=1397315 http://svn.apache.org/viewvc?view=revision&revision=1396797 Patches contributed by Andre Fischer Fixed getcsym.awk to handle #-comments that contain special regexp chars. http://svn.apache.org/viewvc?view=revision&revision=1230971 118778: Added ADDITIONAL_REPOSITORIES environment variable and its automatic setup in configure. http://svn.apache.org/viewvc?view=revision&revision=1232004 118160: Added external CoinMP library. http://svn.apache.org/viewvc?view=revision&revision=1233909 Patches contributed by Herbert Duerr #i119168# use generic LICENSE file for langpacks and sdks http://svn.apache.org/viewvc?view=revision&revision=1310178 macosxotoolhelper: need to quote perl regexp if it may contain regexp metachars http://svn.apache.org/viewvc?view=revision&revision=1183367 allow gbuild with empty sysroot on linux http://svn.apache.org/viewvc?view=revision&revision=1179186 Patches contributed by Ingo Schmidt native373: #164472# improvements for msi database http://svn.apache.org/viewvc?view=revision&revision=1167540 http://svn.apache.org/viewvc?view=revision&revision=1167539 Patches contributed by Jurgen Schmidt adapt setup package scripts to handle special DS_Store file for developer snapshot builds http://svn.apache.org/viewvc?view=revision&revision=1232430 imported patch extensions_i117681.patch http://svn.apache.org/viewvc?view=revision&revision=1172102 Patches contributed by Michael Stahl gbuild: RepositoryFixes.mk should be optional http://svn.apache.org/viewvc?view=revision&revision=1166123 xslt filter: remove the FLA horror wordml import filter: replace FLA usage with plain XSLT http://svn.apache.org/viewvc?view=revision&revision=1363727 Patch contributed by Oliver-Rainer Wittmann i#88652: applied patch, remove unicows deps http://svn.apache.org/viewvc?view=revision&revision=1177585 Remove lots of OS2 conditionals, re-extract Rhino Java, unwind cppunit pieces, cleanup Mac image bits, remove coin-mp and re-package lpsolve, Oxygen & Crystal, fixup qstart bits, expand MPLv2 subset checking. Change-Id: Iad5c8a76399620b892671633c0d8c29996db3564
2013-05-16 15:56:04 -05:00
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed
# with this work for additional information regarding copyright
# ownership. The ASF licenses this file to you under the Apache
# License, Version 2.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy of
# the License at http://www.apache.org/licenses/LICENSE-2.0 .
2010-04-17 05:41:17 -05:00
#
ifneq ($(ENABLE_WASM_STRIP_CANVAS),TRUE)
$(eval $(call gb_Helper_register_executables,NONE, \
canvasdemo \
))
endif
2010-11-11 11:38:32 -06:00
$(eval $(call gb_Helper_register_executables,NONE, \
$(call gb_Helper_optional,HELPTOOLS, \
HelpIndexer \
HelpLinker \
) \
bestreversemap \
cfgex \
concat-deps \
cpp \
Remove *_Test product, so cppunittester can be NONE again ...as per #libreoffice-dev IRC: Sep 19 10:32:24 <mst__> sberg, moggi why the hell is that thing named "cppunit/cppunittester" and inside a subdir? it's obstructing my attempt to put it in $(INSTDIR)/program Sep 19 10:33:28 <mst__> (... and if you wonder "wtf does it have to do with INSTDIR" you have never heard of awesome LibreOffice_Test installset.... not that i would know who needs it :) Sep 19 10:36:36 <sberg> mst__, it is in a subdir of solver/*/bin so that on Windows it would not accidentally have picked DLLs next to itself instead of the module-local DLLs it was supposed to test (back when we had module-local output trees) Sep 19 10:37:02 <mst__> sberg, ahh hysteric reasons then, /me renames it Sep 19 10:37:55 <tml> mst__, if nobody you know uses LibreOffice_Test, just kill it? Sep 19 10:38:59 <sberg> mst__, tml, LibreOffice_Test was conceived by pmladek and/or kendy, IIRC Sep 19 10:40:31 * kendy does not remember anything about it :-) Sep 19 10:42:17 <sberg> wasn't that something so users (or QA people?) could easily run the smoketest against an installation, to see whether the installation is any good at all, by installing that LibreOffice_Test alongside the installation proper? Sep 19 10:43:26 <sberg> mst__, ...and I'd unscientifically vote to kill it Sep 19 11:34:23 <pmladek> mst__, sberg: I have created the LibreOffice_Test package for one QA guy. He does not longer work on LO. I am not sure if anyone else started to use it. So, I think that it can be killed. Oct 17 18:18:07 <tml_> sberg: have you ever noticed that when you try to actually run instdir/unxmacxi/LibreOfficeDev.app , the system actually tries to run cppunittester inside the app bundle (it says so in the crash report) (it crashes because cppunittester requires a specialized DYLIB_LIBRARY_PATH apparently) Oct 17 18:19:29 <tml_> I suspect that the system when cppunittester as part of the build process is run from inside instdir (i.e. inside an app bundle) the system "caches" this false knowledge, and thinks that the executable of the app bundle is cppunittester... Oct 17 18:19:36 <sberg> tml_, no, never noticed; with "run instdir/unxmacxi/LibreOfficeDev.app" you mean calling "open instdir/unxmacxi/LibreOfficeDev.app"? (I always call .app/Contenst/MacOS/program explicitly) Oct 17 18:19:52 <tml_> yes, I mean "open instdir/..." Oct 17 18:20:53 <tml_> some googling tells me that at least years ago, the CFBundleExecutable key in the Info.plist is ignored if it is manually changed, so I guess similar caching of mapping between an app bundle and which executable to actually run happens in this case Oct 17 18:23:17 <tml_> and last year somebody even claims "And while on Mountain Lion, CFBundleExecutable seems to be a no-op", which would be odd, surely there must be widely used apps that have several executables inside the MacOS directory; how would the system know which one to run when the app is run? Oct 17 18:24:38 <tml_> hmm, apparently the code that handles this might be open source even, http://www.opensource.apple.com/source/CF/CF-744.18/CFBundle.c Oct 17 18:25:52 <tml_> some mention of "caches" there yes, my guesses might be right Oct 17 18:27:05 <tml_> if I cp -R instdir/unxmacxi/LibreOffice.app foo.app and open foo.app, it works fine Oct 17 18:28:33 <tml_> anyway, I guess it would be cleaner to have cppunittester somewhere else even without this problem Oct 17 18:37:09 <sberg> tml_, yes, IIRC having cppunittester in instdir was a misguided mst decision, because that odd LibreOffice_Test product (that pmladek said nobody needs any longer anyway) includes it; I think consensus was to kill LibreOffice_Test and move cppunittester where all the other NONE executables are, but looks like nobody executed Oct 17 18:37:55 <tml_> ah ok, so mst should know what needs to be done? good, no need for me to try to hack this now then Oct 17 18:38:19 <sberg> tml_, I'll do the cleanup tomorrow, unless somebody beats me This removes smoketest/losmoketest et al along with the *_Test product, as they seem to not make sense without it anyway. smoketest/Executable_libtest.mk appears to be a test that could also be run during the build, and only ended up in the *_Test product by accident, so I left it untouched for now. Change-Id: I8024472c909fe0a885eb08ef4d3777f8a9e1f7c8
2013-10-18 05:45:00 -05:00
cppunittester \
$(if $(or $(filter EMSCRIPTEN,$(BUILD_TYPE_FOR_HOST)),$(filter EMSCRIPTEN,$(OS))),embindmaker wasmbridgegen) \
gbuildtojson \
$(if $(filter MSC,$(COM)), \
gcc-wrapper \
g++-wrapper \
) \
gencoll_rule \
genconv_dict \
gendict \
genindex_data \
helpex \
idxdict \
io-testconnection \
langsupport \
$(if $(filter iOS,$(OS)),LibreOffice) \
lngconvex \
localize \
$(call gb_CondExeLockfile,lockfile) \
makedepend \
mbsdiff \
osl_process_child \
pdf2xml \
pdfunzip \
pdfverify \
pocheck \
propex \
regsvrex \
saxparser \
svidl \
$(if $(ENABLE_ONLINE_UPDATE_MAR),\
test_updater_dialog \
) \
treex \
ulfex \
unoidl-check \
xrmex \
$(if $(filter-out ANDROID iOS WNT,$(OS)), \
fftester \
svpclient ) \
LOK: tilebench improvements * Arguments for max number of parts and tiles to render (optional). + Automatic estimation of maximum tiles to render based on max parts for Writer docs, since there is only 1 part, this caps the number of pages to render, similar to other doc types. * Fixed rendering of Writer documents over and over (as many times as pages). + Writer has a single part, unlike other doc types. + No point in rendering the whole document in writer to a single tile, since that's completely unrealistic and impractical (it takes forever for large docs and artificially spikes the memory). * Rendering starts at the current part and not the first. + This gives the spreadsheet of interest priority (if saved as visible). * The tile size is now more realistic as we use the same dimensions as the Online client does. * When rendering tiles at scale, we use the same dimensions as the Online client rather than splitting the width by 4, for realism. * Rendering of tiles is done rows-first, rather than columns-first, which is similar to what the Online client does, which is more cache friendly, therefore more realistic. * Enabled compiling of tilebench when GTK3 is disabled, which was erroneous, since tilebench doesn't have any dependency on GTK. + Now it's possible to compile with local Cairo/Pixman libs. Reviewed-on: https://gerrit.libreoffice.org/44936 Reviewed-by: Jan Holesovsky <kendy@collabora.com> Tested-by: Jan Holesovsky <kendy@collabora.com> (cherry picked from commit 7db98521548de9eab955ee25a5aacaaef42df323) Change-Id: I6ad2e97f39572778dd7d0c12d14550841c1d6963 Reviewed-on: https://gerrit.libreoffice.org/46984 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
2017-11-19 19:38:43 -06:00
$(if $(filter LINUX %BSD SOLARIS,$(OS)), tilebench) \
$(if $(filter LINUX MACOSX SOLARIS WNT %BSD,$(OS)),icontest) \
vcldemo \
svdemo \
minvcl \
minweld \
svptest \
tiledrendering \
mtfdemo \
visualbackendtest \
listfonts \
listglyphs \
$(if $(and $(ENABLE_GTK3), $(filter LINUX %BSD SOLARIS,$(OS))), gtktiledviewer) \
$(if $(and $(ENABLE_GTKTILEDVIEWER), $(filter WNT,$(OS))), gtktiledviewer) \
))
2012-04-13 17:30:19 -05:00
$(eval $(call gb_Helper_register_executables_for_install,SDK,sdk, \
$(if $(ENABLE_CLI),\
$(if $(filter MSC,$(COM)),$(if $(filter-out AARCH64_TRUE,$(CPUNAME)_$(CROSS_COMPILING)),climaker)) \
) \
cppumaker \
javamaker \
netmaker \
$(call gb_CondExeSp2bv,sp2bv) \
$(if $(filter ODK,$(BUILD_TYPE)),unoapploader) \
unoidl-read \
Provide unoidl-write also for the SDK ...after the new types.rdb format that unoidl-write generates has been used internally since LibreOffice 4.1 in 2013; following up on 6db34b6b33ba8e3b13683efd05df8441b87e9c92 "Directly build UNOIDL .rdb files from .idl files" and its "The legacy tools idlc, regcompare, regmerge, and regview are still contained in the URE or SDK for now." The tools idlc and regmerge are deprecated but still shipped in the SDK for now. The plan is to drop them completely for LO 7.5. odk/examples/ and ure/source/uretest/ are adapted to use unoidl-write instead of idlc and regmerge: * unoidl-write does not use a C preprocessor and the # directives in .idl files, it supports reading a single .idl file (containing an arbitrary number of declarations) or a directory tree where each directory corresponds to a UNOIDL module of the same name and each .idl file contains the declaration of the (non-module) UNOIDL entity of the same name. For some of the odk/examples/, that required moving individual .idl files into sub-directories named after the respective modules. In odk/settings/std.mk, definitinos of IDL and REGMERGE have been replaced with a new UNOIDLWRITE. * unoidl-write always enforces reserved UNOIDL identifier restrictions (see 04af4e4f55f3ef319a78edd4d0109e2e7eba90b6 "[API CHANGE] Fix all bad UNOIDL identifiers across offapi" and 620179240670bd00f60555f1f5c5b0268492f97c "Enforce the UNOIDL identifier scheme") (which idlc only enforced optionally with -cid -we). That required renaming "my_module" in odk/examples/DevelopersGuide/Components/CppComponent/. * The new types.rdb format is not compatibly with LibreOffice < 4.1. Clients generating extensions containing such files are advised to use appropriate LibreOffice-minimal-version elements. Change-Id: I1a248fd96e86ecbf407f829bc100d44bfe7f4e7d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130533 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-02-22 05:00:00 -06:00
unoidl-write \
$(if $(filter ODK,$(BUILD_TYPE)),uno-skeletonmaker) \
2012-04-13 17:30:19 -05:00
))
ifneq ($(ENABLE_WASM_STRIP_ACCESSIBILITY),TRUE)
$(eval $(call gb_Helper_register_executables_for_install,OOO,brand, \
$(if $(filter-out ANDROID HAIKU iOS MACOSX WNT,$(OS)),oosplash) \
))
endif
$(eval $(call gb_Helper_register_executables_for_install,OOO,brand, \
$(if $(ENABLE_ONLINE_UPDATE_MAR),\
mar \
$(if $(filter WNT,$(OS)), \
update_service \
) \
updater )\
$(call gb_Helper_optional,BREAKPAD,minidump_upload) \
$(call gb_Helper_optional,FUZZERS,wmffuzzer) \
$(call gb_Helper_optional,FUZZERS,jpgfuzzer) \
$(call gb_Helper_optional,FUZZERS,giffuzzer) \
$(call gb_Helper_optional,FUZZERS,xbmfuzzer) \
$(call gb_Helper_optional,FUZZERS,xpmfuzzer) \
$(call gb_Helper_optional,FUZZERS,pngfuzzer) \
$(call gb_Helper_optional,FUZZERS,bmpfuzzer) \
$(call gb_Helper_optional,FUZZERS,svmfuzzer) \
$(call gb_Helper_optional,FUZZERS,pcdfuzzer) \
$(call gb_Helper_optional,FUZZERS,dxffuzzer) \
$(call gb_Helper_optional,FUZZERS,metfuzzer) \
$(call gb_Helper_optional,FUZZERS,ppmfuzzer) \
$(call gb_Helper_optional,FUZZERS,psdfuzzer) \
$(call gb_Helper_optional,FUZZERS,epsfuzzer) \
$(call gb_Helper_optional,FUZZERS,pctfuzzer) \
$(call gb_Helper_optional,FUZZERS,pcxfuzzer) \
$(call gb_Helper_optional,FUZZERS,rasfuzzer) \
$(call gb_Helper_optional,FUZZERS,tgafuzzer) \
$(call gb_Helper_optional,FUZZERS,tiffuzzer) \
$(call gb_Helper_optional,FUZZERS,hwpfuzzer) \
$(call gb_Helper_optional,FUZZERS,602fuzzer) \
$(call gb_Helper_optional,FUZZERS,lwpfuzzer) \
$(call gb_Helper_optional,FUZZERS,olefuzzer) \
$(call gb_Helper_optional,FUZZERS,pptfuzzer) \
$(call gb_Helper_optional,FUZZERS,rtffuzzer) \
$(call gb_Helper_optional,FUZZERS,rtf2pdffuzzer) \
$(call gb_Helper_optional,FUZZERS,cgmfuzzer) \
$(call gb_Helper_optional,FUZZERS,ww2fuzzer) \
$(call gb_Helper_optional,FUZZERS,ww6fuzzer) \
$(call gb_Helper_optional,FUZZERS,ww8fuzzer) \
$(call gb_Helper_optional,FUZZERS,qpwfuzzer) \
$(call gb_Helper_optional,FUZZERS,slkfuzzer) \
$(call gb_Helper_optional,FUZZERS,fodtfuzzer) \
$(call gb_Helper_optional,FUZZERS,fodt2pdffuzzer) \
$(call gb_Helper_optional,FUZZERS,fods2xlsfuzzer) \
$(call gb_Helper_optional,FUZZERS,fodsfuzzer) \
$(call gb_Helper_optional,FUZZERS,fodpfuzzer) \
$(call gb_Helper_optional,FUZZERS,xlsfuzzer) \
$(call gb_Helper_optional,FUZZERS,schtmlfuzzer) \
$(call gb_Helper_optional,FUZZERS,scrtffuzzer) \
$(call gb_Helper_optional,FUZZERS,wksfuzzer) \
$(call gb_Helper_optional,FUZZERS,diffuzzer) \
$(call gb_Helper_optional,FUZZERS,docxfuzzer) \
$(call gb_Helper_optional,FUZZERS,xlsxfuzzer) \
$(call gb_Helper_optional,FUZZERS,pptxfuzzer) \
$(call gb_Helper_optional,FUZZERS,mmlfuzzer) \
$(call gb_Helper_optional,FUZZERS,mtpfuzzer) \
$(call gb_Helper_optional,FUZZERS,htmlfuzzer) \
$(call gb_Helper_optional,FUZZERS,sftfuzzer) \
$(call gb_Helper_optional,FUZZERS,dbffuzzer) \
$(call gb_Helper_optional,FUZZERS,webpfuzzer) \
$(call gb_Helper_optional,FUZZERS,zipfuzzer) \
$(call gb_Helper_optional,FUZZERS,svgfuzzer) \
soffice_bin \
$(call gb_CondExeUnopkg, \
unopkg_bin \
$(if $(filter WNT,$(OS)), \
unopkg \
unopkg_com \
) \
) \
$(if $(filter WNT,$(OS)), \
tdf#112536 related: make soffice.bin a proper console application on Win Being a GUI application on Windows (with related flag in the executable header - see https://blogs.msdn.microsoft.com/oldnewthing/20090101-00/?p=19643/), OS would detect the subsystem before launching the application, and won't attach the parent console or redirected output handles from it to the application. Also, different hacks to reattach the GUI application to the console later are unreliable on different Windows versions, and work improperly (the output goes to the console after the launch command has already returned, which is wrong in batch files). This makes it extremily difficult to do CLI operations with LibreOffice on Windows, with error codes/warnings/messages/output missing or going to wrong consoles. Making an executable for CUI subsystem, on the other hand, makes Windows to allocate a console before starting it when the program is run by itself. This makes the console window to appear on screen unconditionally, even if it's hidden later when the program has started. This flashing is undesirable. But we use a wrapper executable on Windows, called soffice.exe, which is what actually launched by user, and which runs soffice.bin. This allows us to make soffice.bin the proper console application, and thus make it capable to behave properly in CLI scenarios, while avoid the console flashing when run from the soffice.exe (which would suppress the console creation using DETACHED_PROCESS creation flag to CreateProcessW). Also creating a new wrapper for console (soffice.com) allows to use command lines which omit explicit executable extension (no ".bin"), like this: "C:\Program Files\LibreOffice\program\soffice" --help which allows to continue using multiple available help resources unchanged, since .com extension is tried prior to .exe by Windows' cmd.exe. Change-Id: I089d0f30f860da6cfc781b4383f6598a08a4d238 Reviewed-on: https://gerrit.libreoffice.org/63572 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-11-19 04:07:20 -06:00
soffice_exe \
soffice_com \
soffice_safe \
unoinfo \
$(if $(filter-out AARCH64,$(CPUNAME)),twain32shim) \
) \
))
$(eval $(call gb_Helper_register_executables_for_install,OOO,base_brand, \
$(if $(filter WNT,$(OS)), \
sbase \
) \
))
$(eval $(call gb_Helper_register_executables_for_install,OOO,base, \
$(if $(filter WNT,$(OS)), \
odbcconfig \
) \
))
$(eval $(call gb_Helper_register_executables_for_install,OOO,calc_brand, \
$(if $(filter WNT,$(OS)), \
scalc \
) \
))
$(eval $(call gb_Helper_register_executables_for_install,OOO,draw_brand, \
$(if $(filter WNT,$(OS)), \
sdraw \
) \
))
$(eval $(call gb_Helper_register_executables_for_install,OOO,impress_brand, \
$(if $(filter WNT,$(OS)), \
simpress \
) \
))
$(eval $(call gb_Helper_register_executables_for_install,OOO,math_brand, \
$(if $(filter WNT,$(OS)), \
smath \
) \
))
$(eval $(call gb_Helper_register_executables_for_install,OOO,writer_brand, \
$(if $(filter WNT,$(OS)), \
sweb \
swriter \
) \
))
$(eval $(call gb_Helper_register_executables_for_install,OOO,ooo, \
gengal \
$(if $(filter WNT,$(OS)),,uri-encode) \
$(if $(filter WNT,$(OS)), \
senddoc \
) \
$(if $(filter OPENCL,$(BUILD_TYPE)),opencltest) \
))
ifeq ($(OS),WNT)
$(eval $(call gb_Helper_register_executables_for_install,OOO,quickstart, \
quickstart \
))
endif
$(eval $(call gb_Helper_register_executables_for_install,OOO,python, \
$(if $(filter WNT,$(OS)), \
python \
) \
))
ifneq ($(ENABLE_POPPLER),)
$(eval $(call gb_Helper_register_executables_for_install,OOO,pdfimport, \
xpdfimport \
))
endif
$(eval $(call gb_Helper_register_executables_for_install,UREBIN,ure,\
$(if $(and $(ENABLE_JAVA),$(filter-out HAIKU MACOSX WNT,$(OS)),$(filter DESKTOP,$(BUILD_TYPE))),javaldx) \
$(call gb_CondExeRegistryTools, \
regview \
) \
$(call gb_CondExeUno,uno) \
2011-12-23 05:21:19 -06:00
))
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,base, \
abp \
dbp \
dbu \
))
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,calc, \
analysis \
$(call gb_Helper_optional,DBCONNECTIVITY,calc) \
date \
pricing \
sc \
scd \
scfilt \
wpftcalc \
solver \
$(call gb_Helper_optional,SCRIPTING,vbaobj) \
))
gbuild: introduce plugin + loader concepts This introduces two concepts: a plugin and its loader (library) LO currrently has dependency cycles for some libraries. There is scui, which depends on sc, while sc dlopen's scui. There are the various vclplug_*, i18npool plugins, filters/gie, acc, etc. Usually these plugins link to their loader library, because they use its symbols. But as a result there is no sensible way to express the runtime dependency of loaders on the plugins. In GNU libtool plugins are called modules and they are implemented in an IMHO more sensible way by allowing missing symbols at link time. This way you can have a dependency from the loader library to its plugins, as the plugins don't depend on the loader, but you lose the link time detection of missing symbols. While this is in theory possible in LO too, LO currently has plugins, like acc (accessibility), loaded by tk (toolkit), which depends on svt (svtools), which itself depends on tk, so dropping the tk dependency for acc on its own doesn't help :-( And while the dependency of the plugins on their loader is fine for the shared / DYNLOADING build, for the "static" builds you must (somehow) link the plugins into the executables. I also codeified a few rules into the build system along with it: * just plugins are allowed to depend / link other plugins * plugins aren't allowed to be linked into the merge lib * plugin loaders are "limited" to libraries At the high level, this is implemented via new gbuild calls: * gb_Library_set_plugin_for,lib,loader: declare a library to be a plugin of a loader library and add a dependeny from the plugin library to the loader library * gb_Library_set_plugin_for_nodep,lib,loader: ^^^^ without adding the library dependeny * gb_Helper_register_plugins_for_install: "plugin" replacement for gb_Helper_register_libraries_for_install to implement some additional checks in the build system In the end this patch just adds a bit syntactic sugar and nothing changes for any build. Change-Id: I7b01d9c384cbc5838bd2cc93aff18e4868939d6e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126163 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-12-29 04:42:30 -06:00
$(eval $(call gb_Helper_register_plugins_for_install,OOOLIBS,calc, \
scui \
))
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,graphicfilter, \
svgfilter \
wpftdraw \
graphicfilter \
))
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,impress, \
animcore \
PresentationMinimizer \
wpftimpress \
))
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,onlineupdate, \
$(if $(ENABLE_ONLINE_UPDATE), \
updatecheckui \
updchk \
) \
))
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,gnome, \
$(if $(ENABLE_EVOAB2),evoab) \
$(if $(ENABLE_GIO),losessioninstall) \
$(if $(ENABLE_GIO),ucpgio1) \
))
gbuild: introduce plugin + loader concepts This introduces two concepts: a plugin and its loader (library) LO currrently has dependency cycles for some libraries. There is scui, which depends on sc, while sc dlopen's scui. There are the various vclplug_*, i18npool plugins, filters/gie, acc, etc. Usually these plugins link to their loader library, because they use its symbols. But as a result there is no sensible way to express the runtime dependency of loaders on the plugins. In GNU libtool plugins are called modules and they are implemented in an IMHO more sensible way by allowing missing symbols at link time. This way you can have a dependency from the loader library to its plugins, as the plugins don't depend on the loader, but you lose the link time detection of missing symbols. While this is in theory possible in LO too, LO currently has plugins, like acc (accessibility), loaded by tk (toolkit), which depends on svt (svtools), which itself depends on tk, so dropping the tk dependency for acc on its own doesn't help :-( And while the dependency of the plugins on their loader is fine for the shared / DYNLOADING build, for the "static" builds you must (somehow) link the plugins into the executables. I also codeified a few rules into the build system along with it: * just plugins are allowed to depend / link other plugins * plugins aren't allowed to be linked into the merge lib * plugin loaders are "limited" to libraries At the high level, this is implemented via new gbuild calls: * gb_Library_set_plugin_for,lib,loader: declare a library to be a plugin of a loader library and add a dependeny from the plugin library to the loader library * gb_Library_set_plugin_for_nodep,lib,loader: ^^^^ without adding the library dependeny * gb_Helper_register_plugins_for_install: "plugin" replacement for gb_Helper_register_libraries_for_install to implement some additional checks in the build system In the end this patch just adds a bit syntactic sugar and nothing changes for any build. Change-Id: I7b01d9c384cbc5838bd2cc93aff18e4868939d6e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126163 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-12-29 04:42:30 -06:00
$(eval $(call gb_Helper_register_plugins_for_install,OOOLIBS,gnome, \
$(if $(ENABLE_GTK3),vclplug_gtk3) \
$(if $(ENABLE_GTK4),vclplug_gtk4) \
))
gb_haiku_or_kde := $(if $(filter HAIKU,$(OS)),haiku,kde)
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,kde, \
$(if $(ENABLE_KF5),kf5be1) \
))
gbuild: introduce plugin + loader concepts This introduces two concepts: a plugin and its loader (library) LO currrently has dependency cycles for some libraries. There is scui, which depends on sc, while sc dlopen's scui. There are the various vclplug_*, i18npool plugins, filters/gie, acc, etc. Usually these plugins link to their loader library, because they use its symbols. But as a result there is no sensible way to express the runtime dependency of loaders on the plugins. In GNU libtool plugins are called modules and they are implemented in an IMHO more sensible way by allowing missing symbols at link time. This way you can have a dependency from the loader library to its plugins, as the plugins don't depend on the loader, but you lose the link time detection of missing symbols. While this is in theory possible in LO too, LO currently has plugins, like acc (accessibility), loaded by tk (toolkit), which depends on svt (svtools), which itself depends on tk, so dropping the tk dependency for acc on its own doesn't help :-( And while the dependency of the plugins on their loader is fine for the shared / DYNLOADING build, for the "static" builds you must (somehow) link the plugins into the executables. I also codeified a few rules into the build system along with it: * just plugins are allowed to depend / link other plugins * plugins aren't allowed to be linked into the merge lib * plugin loaders are "limited" to libraries At the high level, this is implemented via new gbuild calls: * gb_Library_set_plugin_for,lib,loader: declare a library to be a plugin of a loader library and add a dependeny from the plugin library to the loader library * gb_Library_set_plugin_for_nodep,lib,loader: ^^^^ without adding the library dependeny * gb_Helper_register_plugins_for_install: "plugin" replacement for gb_Helper_register_libraries_for_install to implement some additional checks in the build system In the end this patch just adds a bit syntactic sugar and nothing changes for any build. Change-Id: I7b01d9c384cbc5838bd2cc93aff18e4868939d6e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126163 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-12-29 04:42:30 -06:00
$(eval $(call gb_Helper_register_plugins_for_install,OOOLIBS,$(gb_haiku_or_kde), \
gbuild: introduce plugin + loader concepts This introduces two concepts: a plugin and its loader (library) LO currrently has dependency cycles for some libraries. There is scui, which depends on sc, while sc dlopen's scui. There are the various vclplug_*, i18npool plugins, filters/gie, acc, etc. Usually these plugins link to their loader library, because they use its symbols. But as a result there is no sensible way to express the runtime dependency of loaders on the plugins. In GNU libtool plugins are called modules and they are implemented in an IMHO more sensible way by allowing missing symbols at link time. This way you can have a dependency from the loader library to its plugins, as the plugins don't depend on the loader, but you lose the link time detection of missing symbols. While this is in theory possible in LO too, LO currently has plugins, like acc (accessibility), loaded by tk (toolkit), which depends on svt (svtools), which itself depends on tk, so dropping the tk dependency for acc on its own doesn't help :-( And while the dependency of the plugins on their loader is fine for the shared / DYNLOADING build, for the "static" builds you must (somehow) link the plugins into the executables. I also codeified a few rules into the build system along with it: * just plugins are allowed to depend / link other plugins * plugins aren't allowed to be linked into the merge lib * plugin loaders are "limited" to libraries At the high level, this is implemented via new gbuild calls: * gb_Library_set_plugin_for,lib,loader: declare a library to be a plugin of a loader library and add a dependeny from the plugin library to the loader library * gb_Library_set_plugin_for_nodep,lib,loader: ^^^^ without adding the library dependeny * gb_Helper_register_plugins_for_install: "plugin" replacement for gb_Helper_register_libraries_for_install to implement some additional checks in the build system In the end this patch just adds a bit syntactic sugar and nothing changes for any build. Change-Id: I7b01d9c384cbc5838bd2cc93aff18e4868939d6e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126163 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-12-29 04:42:30 -06:00
$(if $(ENABLE_KF5),vclplug_kf5) \
$(if $(ENABLE_KF6),vclplug_kf6) \
gbuild: introduce plugin + loader concepts This introduces two concepts: a plugin and its loader (library) LO currrently has dependency cycles for some libraries. There is scui, which depends on sc, while sc dlopen's scui. There are the various vclplug_*, i18npool plugins, filters/gie, acc, etc. Usually these plugins link to their loader library, because they use its symbols. But as a result there is no sensible way to express the runtime dependency of loaders on the plugins. In GNU libtool plugins are called modules and they are implemented in an IMHO more sensible way by allowing missing symbols at link time. This way you can have a dependency from the loader library to its plugins, as the plugins don't depend on the loader, but you lose the link time detection of missing symbols. While this is in theory possible in LO too, LO currently has plugins, like acc (accessibility), loaded by tk (toolkit), which depends on svt (svtools), which itself depends on tk, so dropping the tk dependency for acc on its own doesn't help :-( And while the dependency of the plugins on their loader is fine for the shared / DYNLOADING build, for the "static" builds you must (somehow) link the plugins into the executables. I also codeified a few rules into the build system along with it: * just plugins are allowed to depend / link other plugins * plugins aren't allowed to be linked into the merge lib * plugin loaders are "limited" to libraries At the high level, this is implemented via new gbuild calls: * gb_Library_set_plugin_for,lib,loader: declare a library to be a plugin of a loader library and add a dependeny from the plugin library to the loader library * gb_Library_set_plugin_for_nodep,lib,loader: ^^^^ without adding the library dependeny * gb_Helper_register_plugins_for_install: "plugin" replacement for gb_Helper_register_libraries_for_install to implement some additional checks in the build system In the end this patch just adds a bit syntactic sugar and nothing changes for any build. Change-Id: I7b01d9c384cbc5838bd2cc93aff18e4868939d6e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126163 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-12-29 04:42:30 -06:00
$(if $(ENABLE_QT5),vclplug_qt5) \
$(if $(ENABLE_QT6),vclplug_qt6) \
$(if $(ENABLE_GTK3_KDE5),vclplug_gtk3_kde5) \
))
$(eval $(call gb_Helper_register_executables_for_install,OOO,$(gb_haiku_or_kde), \
$(if $(ENABLE_GTK3_KDE5),lo_kde5filepicker) \
Introduce gtk3_kde5 vcl plugin This is a hybrid plugin which mostly wraps the GTK3 vclplug. Only the file and folder picker are replaced by KDE dialogs. This gives us a well-maintained GTK LO base with basic KDE integration with minimum effort. To prevent issues with nested event loops, the KDE dialogs are launched from a separate process, the new lo_kde5filepicker helper executable. A trivial stdin/stdout IPC mechanism transfers the data between LO and the Qt/KDE helper. The usage of an external process also allows us to copy'n'paste between LO and the KDE file dialog without freezing the UI, as would happen when one would do this in-process. This is in general also the architecture applied by the kmozillahelper, which is used to integrate KDE file dialogs into Firefox. While the KDE dialog is shown, the GTK3 main window is disabled and close requests are ignored. The KDE dialog in turn also sets the LO window as transient parent. Together, this makes the illusion perfect and the KDE dialog behaves like a modal dialog. This works properly also with multiple LO main windows, and only individual windows will get blocked as one would expect. Functionality wise, most of the features of the KDE4 dialog are supported. You can pick files and folders, and save files under a new name. Some custom checkbox widgets are supported, but lists, buttons and preview widgets are not yet implemented. Also, loading remote files via KIO is not possible yet. Change-Id: I1a97cf7c272307a19ace4222d5f12253bc722829 Reviewed-on: https://gerrit.libreoffice.org/47718 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2018-01-10 10:50:43 -06:00
))
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,math, \
sm \
smd \
))
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ogltrans, \
OGLTrans \
))
ifeq ($(OS),EMSCRIPTEN)
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \
lo-bootstrap \
))
endif
ifneq ($(ENABLE_WASM_STRIP_CANVAS),TRUE)
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \
canvastools \
$(if $(ENABLE_CAIRO_CANVAS),cairocanvas) \
canvasfactory \
cppcanvas \
$(if $(filter WNT,$(OS)),directx9canvas) \
$(if $(ENABLE_OPENGL_CANVAS),oglcanvas) \
$(if $(filter WNT,$(OS)),gdipluscanvas) \
simplecanvas \
vclcanvas \
))
endif
ifneq ($(ENABLE_WASM_STRIP_GUESSLANG),TRUE)
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \
guesslang \
))
endif
ifneq ($(ENABLE_WASM_STRIP_HUNSPELL),TRUE)
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \
hyphen \
lnth \
spell \
$(if $(filter iOS MACOSX,$(OS)), \
MacOSXSpell \
) \
))
endif
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \
avmedia \
$(if $(ENABLE_CURL),LanguageTool) \
$(call gb_Helper_optional,AVMEDIA, \
$(if $(filter MACOSX,$(OS)),\
avmediaMacAVF \
) \
) \
$(call gb_Helper_optional,SCRIPTING, \
basctl \
basprov \
) \
basegfx \
bib \
chartcore \
chartcontroller \
$(call gb_Helper_optional,OPENCL,clew) \
$(if $(filter $(OS),WNT),,cmdmail) \
configmgr \
ctl \
dba \
dbahsql \
$(call gb_Helper_optional,DBCONNECTIVITY, \
dbase \
dbaxml) \
dbtools \
deploymentmisc \
$(if $(filter-out MACOSX WNT,$(OS)),desktopbe1) \
$(call gb_Helper_optional,SCRIPTING,dlgprov) \
docmodel \
drawinglayercore \
drawinglayer \
editeng \
$(if $(filter EMSCRIPTEN,$(OS)),$(if $(ENABLE_DBGUTIL),embindtest)) \
$(if $(filter WNT,$(OS)),emser) \
evtatt \
$(call gb_Helper_optional,DBCONNECTIVITY, \
flat \
file) \
filterconfig \
fps_office \
for \
forui \
frm \
fsstorage \
fwk \
$(call gb_Helper_optionals_or,HELPTOOLS XMLHELP,helplinker) \
i18npool \
i18nsearch \
$(if $(ENABLE_JAVA),jdbc) \
$(if $(filter WNT,$(OS)),jumplist) \
$(if $(ENABLE_LDAP),ldapbe2) \
$(if $(filter WNT,$(OS)),WinUserInfoBe) \
localebe1 \
log \
lng \
$(if $(filter $(OS),MACOSX),macbe1) \
$(if $(MERGELIBS),merged) \
migrationoo2 \
migrationoo3 \
mozbootstrap \
msfilter \
$(call gb_Helper_optional,SCRIPTING,msforms) \
mtfrenderer \
$(call gb_Helper_optional,DBCONNECTIVITY,mysql_jdbc) \
$(call gb_Helper_optional,MARIADBC,$(call gb_Helper_optional,DBCONNECTIVITY,mysqlc)) \
numbertext \
odbc \
odfflatxml \
offacc \
oox \
$(call gb_Helper_optional,OPENCL,opencl) \
passwordcontainer \
pcr \
pdffilter \
$(call gb_Helper_optional,SCRIPTING,protocolhandler) \
sax \
sb \
$(call gb_Helper_optional,DBCONNECTIVITY,sdbt) \
scn \
sd \
sdd \
sfx \
slideshow \
sot \
$(if $(or $(DISABLE_GUI),$(ENABLE_WASM_STRIP_SPLASH)),,spl) \
storagefd \
$(call gb_Helper_optional,SCRIPTING,stringresource) \
svgio \
emfio \
svl \
svt \
svx \
svxcore \
sw \
syssh \
textconversiondlgs \
textfd \
tk \
tl \
ucpexpand1 \
ucpext \
ucpimage \
$(if $(ENABLE_LIBCMIS),ucpcmis1) \
ucptdoc1 \
unordf \
unoxml \
updatefeed \
utl \
uui \
$(call gb_Helper_optional,SCRIPTING, \
vbaevents \
vbahelper \
) \
vcl \
writerperfect \
xmlscript \
xmlfa \
xmlfd \
xo \
xof \
xsltdlg \
xsltfilter \
$(if $(filter $(OS),WNT), \
ado \
oleautobridge \
smplmail \
wininetbe1 \
) \
$(if $(filter $(OS),MACOSX), \
$(if $(ENABLE_MACOSX_SANDBOX),, \
AppleRemote \
) \
fps_aqua \
) \
))
gbuild: introduce plugin + loader concepts This introduces two concepts: a plugin and its loader (library) LO currrently has dependency cycles for some libraries. There is scui, which depends on sc, while sc dlopen's scui. There are the various vclplug_*, i18npool plugins, filters/gie, acc, etc. Usually these plugins link to their loader library, because they use its symbols. But as a result there is no sensible way to express the runtime dependency of loaders on the plugins. In GNU libtool plugins are called modules and they are implemented in an IMHO more sensible way by allowing missing symbols at link time. This way you can have a dependency from the loader library to its plugins, as the plugins don't depend on the loader, but you lose the link time detection of missing symbols. While this is in theory possible in LO too, LO currently has plugins, like acc (accessibility), loaded by tk (toolkit), which depends on svt (svtools), which itself depends on tk, so dropping the tk dependency for acc on its own doesn't help :-( And while the dependency of the plugins on their loader is fine for the shared / DYNLOADING build, for the "static" builds you must (somehow) link the plugins into the executables. I also codeified a few rules into the build system along with it: * just plugins are allowed to depend / link other plugins * plugins aren't allowed to be linked into the merge lib * plugin loaders are "limited" to libraries At the high level, this is implemented via new gbuild calls: * gb_Library_set_plugin_for,lib,loader: declare a library to be a plugin of a loader library and add a dependeny from the plugin library to the loader library * gb_Library_set_plugin_for_nodep,lib,loader: ^^^^ without adding the library dependeny * gb_Helper_register_plugins_for_install: "plugin" replacement for gb_Helper_register_libraries_for_install to implement some additional checks in the build system In the end this patch just adds a bit syntactic sugar and nothing changes for any build. Change-Id: I7b01d9c384cbc5838bd2cc93aff18e4868939d6e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126163 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-12-29 04:42:30 -06:00
$(eval $(call gb_Helper_register_plugins_for_install,OOOLIBS,ooo, \
acc \
$(if $(ENABLE_CUSTOMTARGET_COMPONENTS),components) \
gbuild: introduce plugin + loader concepts This introduces two concepts: a plugin and its loader (library) LO currrently has dependency cycles for some libraries. There is scui, which depends on sc, while sc dlopen's scui. There are the various vclplug_*, i18npool plugins, filters/gie, acc, etc. Usually these plugins link to their loader library, because they use its symbols. But as a result there is no sensible way to express the runtime dependency of loaders on the plugins. In GNU libtool plugins are called modules and they are implemented in an IMHO more sensible way by allowing missing symbols at link time. This way you can have a dependency from the loader library to its plugins, as the plugins don't depend on the loader, but you lose the link time detection of missing symbols. While this is in theory possible in LO too, LO currently has plugins, like acc (accessibility), loaded by tk (toolkit), which depends on svt (svtools), which itself depends on tk, so dropping the tk dependency for acc on its own doesn't help :-( And while the dependency of the plugins on their loader is fine for the shared / DYNLOADING build, for the "static" builds you must (somehow) link the plugins into the executables. I also codeified a few rules into the build system along with it: * just plugins are allowed to depend / link other plugins * plugins aren't allowed to be linked into the merge lib * plugin loaders are "limited" to libraries At the high level, this is implemented via new gbuild calls: * gb_Library_set_plugin_for,lib,loader: declare a library to be a plugin of a loader library and add a dependeny from the plugin library to the loader library * gb_Library_set_plugin_for_nodep,lib,loader: ^^^^ without adding the library dependeny * gb_Helper_register_plugins_for_install: "plugin" replacement for gb_Helper_register_libraries_for_install to implement some additional checks in the build system In the end this patch just adds a bit syntactic sugar and nothing changes for any build. Change-Id: I7b01d9c384cbc5838bd2cc93aff18e4868939d6e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126163 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-12-29 04:42:30 -06:00
cui \
icg \
sdui \
$(if $(ENABLE_GEN),vclplug_gen) \
gbuild: introduce plugin + loader concepts This introduces two concepts: a plugin and its loader (library) LO currrently has dependency cycles for some libraries. There is scui, which depends on sc, while sc dlopen's scui. There are the various vclplug_*, i18npool plugins, filters/gie, acc, etc. Usually these plugins link to their loader library, because they use its symbols. But as a result there is no sensible way to express the runtime dependency of loaders on the plugins. In GNU libtool plugins are called modules and they are implemented in an IMHO more sensible way by allowing missing symbols at link time. This way you can have a dependency from the loader library to its plugins, as the plugins don't depend on the loader, but you lose the link time detection of missing symbols. While this is in theory possible in LO too, LO currently has plugins, like acc (accessibility), loaded by tk (toolkit), which depends on svt (svtools), which itself depends on tk, so dropping the tk dependency for acc on its own doesn't help :-( And while the dependency of the plugins on their loader is fine for the shared / DYNLOADING build, for the "static" builds you must (somehow) link the plugins into the executables. I also codeified a few rules into the build system along with it: * just plugins are allowed to depend / link other plugins * plugins aren't allowed to be linked into the merge lib * plugin loaders are "limited" to libraries At the high level, this is implemented via new gbuild calls: * gb_Library_set_plugin_for,lib,loader: declare a library to be a plugin of a loader library and add a dependeny from the plugin library to the loader library * gb_Library_set_plugin_for_nodep,lib,loader: ^^^^ without adding the library dependeny * gb_Helper_register_plugins_for_install: "plugin" replacement for gb_Helper_register_libraries_for_install to implement some additional checks in the build system In the end this patch just adds a bit syntactic sugar and nothing changes for any build. Change-Id: I7b01d9c384cbc5838bd2cc93aff18e4868939d6e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126163 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-12-29 04:42:30 -06:00
$(if $(filter $(OS),WNT),vclplug_win) \
$(if $(filter $(OS),MACOSX),vclplug_osx) \
))
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,postgresqlsdbc, \
$(if $(BUILD_POSTGRESQL_SDBC), \
postgresql-sdbc \
postgresql-sdbc-impl) \
))
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,firebirdsdbc, \
$(if $(ENABLE_FIREBIRD_SDBC),firebird_sdbc) \
))
ifneq ($(ENABLE_PDFIMPORT),)
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,pdfimport, \
pdfimport \
))
endif
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,python, \
pythonloader \
))
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,python, \
pyuno \
$(if $(filter-out WNT,$(OS)),pyuno_wrapper) \
))
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,reportbuilder, \
rpt \
rptui \
rptxml \
))
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,writer, \
hwp \
$(if $(ENABLE_LWP),lwpft) \
msword \
swd \
t602filter \
$(call gb_Helper_optional,SCRIPTING,vbaswobj) \
wpftwriter \
sw_writerfilter \
$(call gb_Helper_optional,DBCONNECTIVITY,writer) \
))
gbuild: introduce plugin + loader concepts This introduces two concepts: a plugin and its loader (library) LO currrently has dependency cycles for some libraries. There is scui, which depends on sc, while sc dlopen's scui. There are the various vclplug_*, i18npool plugins, filters/gie, acc, etc. Usually these plugins link to their loader library, because they use its symbols. But as a result there is no sensible way to express the runtime dependency of loaders on the plugins. In GNU libtool plugins are called modules and they are implemented in an IMHO more sensible way by allowing missing symbols at link time. This way you can have a dependency from the loader library to its plugins, as the plugins don't depend on the loader, but you lose the link time detection of missing symbols. While this is in theory possible in LO too, LO currently has plugins, like acc (accessibility), loaded by tk (toolkit), which depends on svt (svtools), which itself depends on tk, so dropping the tk dependency for acc on its own doesn't help :-( And while the dependency of the plugins on their loader is fine for the shared / DYNLOADING build, for the "static" builds you must (somehow) link the plugins into the executables. I also codeified a few rules into the build system along with it: * just plugins are allowed to depend / link other plugins * plugins aren't allowed to be linked into the merge lib * plugin loaders are "limited" to libraries At the high level, this is implemented via new gbuild calls: * gb_Library_set_plugin_for,lib,loader: declare a library to be a plugin of a loader library and add a dependeny from the plugin library to the loader library * gb_Library_set_plugin_for_nodep,lib,loader: ^^^^ without adding the library dependeny * gb_Helper_register_plugins_for_install: "plugin" replacement for gb_Helper_register_libraries_for_install to implement some additional checks in the build system In the end this patch just adds a bit syntactic sugar and nothing changes for any build. Change-Id: I7b01d9c384cbc5838bd2cc93aff18e4868939d6e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126163 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-12-29 04:42:30 -06:00
$(eval $(call gb_Helper_register_plugins_for_install,OOOLIBS,writer, \
swui \
))
# cli_cppuhelper is NONE even though it is actually in URE because it is CliNativeLibrary
$(eval $(call gb_Helper_register_libraries,PLAINLIBS_NONE, \
smoketest \
subsequenttest \
test \
test-setupvcl \
testtools_cppobj \
testtools_bridgetest \
testtools_bridgetest-common \
testtools_constructors \
unobootstrapprotector \
unoexceptionprotector \
unotest \
vclbootstrapprotector \
scqahelper \
swqahelper \
wpftqahelper \
precompiled_system \
$(if $(ENABLE_CLI),$(if $(filter MSC,$(COM)),cli_cppuhelper)) \
$(if $(filter $(OS),ANDROID),lo-bootstrap) \
$(if $(filter $(OS),MACOSX),OOoSpotlightImporter) \
))
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_URE,ure, \
affine_uno_uno \
$(if $(ENABLE_CLI),\
$(if $(filter MSC,$(COM)),$(if $(filter-out AARCH64_TRUE,$(CPUNAME)_$(CROSS_COMPILING)),cli_uno)) \
) \
i18nlangtag \
$(if $(ENABLE_DOTNET), \
net_bootstrap \
net_uno \
) \
$(if $(ENABLE_JAVA), \
java_uno \
jpipe \
$(if $(filter $(OS),WNT),jpipx) \
juh \
juhx \
) \
log_uno_uno \
unsafe_uno_uno \
gbuild: introduce plugin + loader concepts This introduces two concepts: a plugin and its loader (library) LO currrently has dependency cycles for some libraries. There is scui, which depends on sc, while sc dlopen's scui. There are the various vclplug_*, i18npool plugins, filters/gie, acc, etc. Usually these plugins link to their loader library, because they use its symbols. But as a result there is no sensible way to express the runtime dependency of loaders on the plugins. In GNU libtool plugins are called modules and they are implemented in an IMHO more sensible way by allowing missing symbols at link time. This way you can have a dependency from the loader library to its plugins, as the plugins don't depend on the loader, but you lose the link time detection of missing symbols. While this is in theory possible in LO too, LO currently has plugins, like acc (accessibility), loaded by tk (toolkit), which depends on svt (svtools), which itself depends on tk, so dropping the tk dependency for acc on its own doesn't help :-( And while the dependency of the plugins on their loader is fine for the shared / DYNLOADING build, for the "static" builds you must (somehow) link the plugins into the executables. I also codeified a few rules into the build system along with it: * just plugins are allowed to depend / link other plugins * plugins aren't allowed to be linked into the merge lib * plugin loaders are "limited" to libraries At the high level, this is implemented via new gbuild calls: * gb_Library_set_plugin_for,lib,loader: declare a library to be a plugin of a loader library and add a dependeny from the plugin library to the loader library * gb_Library_set_plugin_for_nodep,lib,loader: ^^^^ without adding the library dependeny * gb_Helper_register_plugins_for_install: "plugin" replacement for gb_Helper_register_libraries_for_install to implement some additional checks in the build system In the end this patch just adds a bit syntactic sugar and nothing changes for any build. Change-Id: I7b01d9c384cbc5838bd2cc93aff18e4868939d6e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126163 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-12-29 04:42:30 -06:00
))
$(eval $(call gb_Helper_register_plugins_for_install,PLAINLIBS_URE,ure, \
$(if $(filter MSC,$(COM)), \
$(if $(filter INTEL,$(CPUNAME)),msci_uno) \
$(if $(filter X86_64,$(CPUNAME)),mscx_uno) \
$(if $(filter AARCH64,$(CPUNAME)),msca_uno) \
, gcc3_uno) \
2010-11-11 12:01:45 -06:00
))
2010-04-17 05:41:17 -05:00
$(eval $(call gb_Helper_register_libraries_for_install,PRIVATELIBS_URE,ure, \
binaryurp \
bootstrap \
introspection \
invocadapt \
invocation \
io \
$(if $(ENABLE_JAVA),javaloader) \
$(if $(ENABLE_JAVA),javavm) \
$(if $(ENABLE_JAVA),jvmaccess) \
$(if $(ENABLE_JAVA),jvmfwk) \
namingservice \
proxyfac \
reflection \
reg \
stocservices \
store \
unoidl \
uuresolver \
xmlreader \
))
gbuild: introduce plugin + loader concepts This introduces two concepts: a plugin and its loader (library) LO currrently has dependency cycles for some libraries. There is scui, which depends on sc, while sc dlopen's scui. There are the various vclplug_*, i18npool plugins, filters/gie, acc, etc. Usually these plugins link to their loader library, because they use its symbols. But as a result there is no sensible way to express the runtime dependency of loaders on the plugins. In GNU libtool plugins are called modules and they are implemented in an IMHO more sensible way by allowing missing symbols at link time. This way you can have a dependency from the loader library to its plugins, as the plugins don't depend on the loader, but you lose the link time detection of missing symbols. While this is in theory possible in LO too, LO currently has plugins, like acc (accessibility), loaded by tk (toolkit), which depends on svt (svtools), which itself depends on tk, so dropping the tk dependency for acc on its own doesn't help :-( And while the dependency of the plugins on their loader is fine for the shared / DYNLOADING build, for the "static" builds you must (somehow) link the plugins into the executables. I also codeified a few rules into the build system along with it: * just plugins are allowed to depend / link other plugins * plugins aren't allowed to be linked into the merge lib * plugin loaders are "limited" to libraries At the high level, this is implemented via new gbuild calls: * gb_Library_set_plugin_for,lib,loader: declare a library to be a plugin of a loader library and add a dependeny from the plugin library to the loader library * gb_Library_set_plugin_for_nodep,lib,loader: ^^^^ without adding the library dependeny * gb_Helper_register_plugins_for_install: "plugin" replacement for gb_Helper_register_libraries_for_install to implement some additional checks in the build system In the end this patch just adds a bit syntactic sugar and nothing changes for any build. Change-Id: I7b01d9c384cbc5838bd2cc93aff18e4868939d6e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126163 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-12-29 04:42:30 -06:00
$(eval $(call gb_Helper_register_plugins_for_install,PRIVATELIBS_URE,ure, \
$(call gb_CondLibSalTextenc,sal_textenc) \
gbuild: introduce plugin + loader concepts This introduces two concepts: a plugin and its loader (library) LO currrently has dependency cycles for some libraries. There is scui, which depends on sc, while sc dlopen's scui. There are the various vclplug_*, i18npool plugins, filters/gie, acc, etc. Usually these plugins link to their loader library, because they use its symbols. But as a result there is no sensible way to express the runtime dependency of loaders on the plugins. In GNU libtool plugins are called modules and they are implemented in an IMHO more sensible way by allowing missing symbols at link time. This way you can have a dependency from the loader library to its plugins, as the plugins don't depend on the loader, but you lose the link time detection of missing symbols. While this is in theory possible in LO too, LO currently has plugins, like acc (accessibility), loaded by tk (toolkit), which depends on svt (svtools), which itself depends on tk, so dropping the tk dependency for acc on its own doesn't help :-( And while the dependency of the plugins on their loader is fine for the shared / DYNLOADING build, for the "static" builds you must (somehow) link the plugins into the executables. I also codeified a few rules into the build system along with it: * just plugins are allowed to depend / link other plugins * plugins aren't allowed to be linked into the merge lib * plugin loaders are "limited" to libraries At the high level, this is implemented via new gbuild calls: * gb_Library_set_plugin_for,lib,loader: declare a library to be a plugin of a loader library and add a dependeny from the plugin library to the loader library * gb_Library_set_plugin_for_nodep,lib,loader: ^^^^ without adding the library dependeny * gb_Helper_register_plugins_for_install: "plugin" replacement for gb_Helper_register_libraries_for_install to implement some additional checks in the build system In the end this patch just adds a bit syntactic sugar and nothing changes for any build. Change-Id: I7b01d9c384cbc5838bd2cc93aff18e4868939d6e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126163 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-12-29 04:42:30 -06:00
))
ifneq ($(ENABLE_WASM_STRIP_ACCESSIBILITY),TRUE)
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo, \
$(if $(filter WNT,$(OS)), \
winaccessibility \
) \
))
endif
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo, \
$(call gb_Helper_optional,AVMEDIA, \
$(if $(ENABLE_GSTREAMER_1_0),avmediagst) \
$(if $(ENABLE_GTK4),avmediagtk) \
tdf#145735 avmedia qt: Use QtMultimedia for Qt 6 media playback Similar to the way that GTK 4's native facilities for video playback are used for the gtk4 VCL plugin, initially added in commit commit d0a527ec09516bc7215baf229adb90cd21ffa27a Author: Caolán McNamara <caolanm@redhat.com> Date: Thu Feb 10 12:55:18 2022 +0000 first cut at using Gtk4 built in video playback , implement media playback using QtMultimedia for the Qt 6 based VCL plugins (qt6/kf6) via a new service "com.sun.star.comp.avmedia.Manager_Qt". Video playback with the mechanism used for qt5 no longer works with qt6, as "qwidget5videosink" that gets used on Wayland for qt5 wasn't ported to Qt 6 and is unmaintained, s. the commit message of commit 88d57cf241209ffec9eaed3e523942ab51af6db6 Author: Michael Weghorn <m.weghorn@posteo.de> Date: Wed Sep 29 11:09:51 2021 +0200 qt6: Add a qt6 VCL plugin for more details. Additionally, this also doesn't work properly any more on X11/with the xcb Qt QPA platform, see tdf#145735 comment 7. Instead of using GStreamer directly, let Qt handle the low-level stuff by using the QtMultimedia module [1] instead. This adds a new dependency on QtMultimedia. For building, this requires installing the Qt 6 QtMultimedia development headers (e.g. package `qt6-multimedia-dev` on current Debian testing). Except for WASM, the use of QtMultimedia is enabled by default when building with autogen options `--enable-qt6` or `--enable-kf6`, but can explicitly be disabled using `--disable-qt6-multimedia`. In tests with the qt6 VCL plugin on Debian testing, with a sample presentation containing an embedded video, attachment 145517 from tdf#120452, video playback generally works for both, the xcb and the wayland Qt QPA platforms: * Video and audio are played as expected on the external screen in presentation mode when using the presenter console * Video and audio playback work in non-presentation mode by clicking on the video and using the controls in the Impress sidebar (play, pause,...). However, the following issues were observed with the current implementation: * There's an odd frame/margin around the video. * In non-presentation mode, the placeholder shown until the video gets started using the controls in the sidebar is just an "audio icon", not a frame from the actual video. (This might be related to the fact that `QtPlayer::createFrameGrabber` currently returns an empty reference.) * At least on Wayland (issue not observed with QT_QPA_PLATFORM=xcb so far), when using the presenter console, video playback in the presenter console (i.e. on the non-presentation screen) is unreliable: The video sometimes shows, but sometimes doesn't. At least the (more important) one on the presentation screen was reliably shown in my tests, however. Tested with git dev versions of qtbase (as of commit 8d5e7d50d8dbf1ad79bd8ff9f6ef6028eba481c9), qtwayland (as of commit 6f0ebd916f176f6fbe35af28caeb52b62768ac94) and qtmultimedia (as of commit 264b7e8d7d5683252102b5e5149685c8b8a70c2d). [1] https://doc.qt.io/qt-6/qtmultimedia-index.html Change-Id: I29c3c7ded01c61b49b192fa5c313d8a92c942185 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167869 Reviewed-by: Michael Weghorn <m.weghorn@posteo.de> Tested-by: Jenkins
2024-05-20 09:25:09 -05:00
$(if $(ENABLE_QT6_MULTIMEDIA),avmediaqt6) \
$(if $(filter WNT,$(OS)),avmediawin) \
) \
cached1 \
comphelper \
$(call gb_Helper_optional,DBCONNECTIVITY,dbpool2) \
$(call gb_Helper_optional,BREAKPAD,crashreport) \
deployment \
deploymentgui \
embobj \
$(if $(ENABLE_JAVA),hsqldb) \
i18nutil \
$(if $(and $(ENABLE_GTK3), $(filter LINUX %BSD SOLARIS,$(OS))), libreofficekitgtk) \
$(if $(and $(ENABLE_GTKTILEDVIEWER), $(filter WNT,$(OS))), libreofficekitgtk) \
$(if $(ENABLE_JAVA), \
$(if $(filter $(OS),MACOSX),,officebean) \
) \
emboleobj \
package2 \
$(call gb_Helper_optional,SCRIPTING,scriptframe) \
sdbc2 \
sofficeapp \
srtrs1 \
ucb1 \
ucbhelper \
$(if $(WITH_WEBDAV),ucpdav1) \
ucpfile1 \
$(call gb_Helper_optional,XMLHELP,ucpchelp1) \
ucphier1 \
ucppkg1 \
$(call gb_CondExeUnopkg,unopkgapp) \
xmlsecurity \
xsec_xmlsec \
xstor \
$(if $(filter $(OS),MACOSX), \
macab1 \
macabdrv1 \
) \
$(if $(filter WNT,$(OS)), \
fps \
inprocserv \
UAccCOM \
) \
))
gbuild: introduce plugin + loader concepts This introduces two concepts: a plugin and its loader (library) LO currrently has dependency cycles for some libraries. There is scui, which depends on sc, while sc dlopen's scui. There are the various vclplug_*, i18npool plugins, filters/gie, acc, etc. Usually these plugins link to their loader library, because they use its symbols. But as a result there is no sensible way to express the runtime dependency of loaders on the plugins. In GNU libtool plugins are called modules and they are implemented in an IMHO more sensible way by allowing missing symbols at link time. This way you can have a dependency from the loader library to its plugins, as the plugins don't depend on the loader, but you lose the link time detection of missing symbols. While this is in theory possible in LO too, LO currently has plugins, like acc (accessibility), loaded by tk (toolkit), which depends on svt (svtools), which itself depends on tk, so dropping the tk dependency for acc on its own doesn't help :-( And while the dependency of the plugins on their loader is fine for the shared / DYNLOADING build, for the "static" builds you must (somehow) link the plugins into the executables. I also codeified a few rules into the build system along with it: * just plugins are allowed to depend / link other plugins * plugins aren't allowed to be linked into the merge lib * plugin loaders are "limited" to libraries At the high level, this is implemented via new gbuild calls: * gb_Library_set_plugin_for,lib,loader: declare a library to be a plugin of a loader library and add a dependeny from the plugin library to the loader library * gb_Library_set_plugin_for_nodep,lib,loader: ^^^^ without adding the library dependeny * gb_Helper_register_plugins_for_install: "plugin" replacement for gb_Helper_register_libraries_for_install to implement some additional checks in the build system In the end this patch just adds a bit syntactic sugar and nothing changes for any build. Change-Id: I7b01d9c384cbc5838bd2cc93aff18e4868939d6e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126163 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-12-29 04:42:30 -06:00
$(eval $(call gb_Helper_register_plugins_for_install,PLAINLIBS_OOO,ooo, \
localedata_en \
localedata_es \
localedata_euro \
localedata_others \
))
2011-07-31 09:53:30 -05:00
ifeq ($(OS),WNT)
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,activexbinarytable, \
regactivex \
))
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,activex, \
so_activex \
))
ifneq ($(BUILD_X64),)
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,activexwin64, \
so_activex_x64 \
))
endif
$(eval $(call gb_Helper_register_executables_for_install,OOO,spsuppfiles, \
spsupp_helper \
))
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,spsuppfiles, \
$(if $(CXX_X64_BINARY),spsupp_x64) \
$(if $(CXX_X86_BINARY),spsupp_x86) \
))
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooobinarytable, \
$(if $(WINDOWS_SDK_HOME),\
instooofiltmsi \
qslnkmsi \
reg_dlls \
reg4allmsdoc \
sdqsmsi \
sellangmsi \
sn_tools \
$(if $(ENABLE_ONLINE_UPDATE_MAR),install_updateservice) \
) \
))
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,winexplorerextbinarytable, \
shlxtmsi \
))
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_SHLXTHDL,winexplorerext, \
ooofilt \
propertyhdl \
shlxthdl \
))
ifneq ($(BUILD_X64),)
$(eval $(call gb_Helper_register_packages_for_install,winexplorerextwin64, \
$(if $(filter MSC,$(COM)),msvc_dlls) \
))
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_SHLXTHDL,winexplorerextwin64, \
ooofilt_x64 \
propertyhdl_x64 \
shlxthdl_x64 \
))
endif # BUILD_X64
endif # WNT
2011-07-31 09:53:30 -05:00
$(eval $(call gb_Helper_register_libraries_for_install,RTVERLIBS,ure, \
cppuhelper \
purpenvhelper \
salhelper \
2010-11-11 12:01:45 -06:00
))
2010-04-17 05:41:17 -05:00
$(eval $(call gb_Helper_register_libraries_for_install,UNOVERLIBS,ure, \
cppu \
sal \
2010-11-11 12:01:45 -06:00
))
2010-04-17 05:41:17 -05:00
$(eval $(call gb_Helper_register_libraries,EXTENSIONLIBS, \
active_native \
passive_native \
crashextension \
))
ifneq ($(ENABLE_JAVA),)
$(eval $(call gb_Helper_register_jars_for_install,URE,ure, \
java_uno \
juh \
jurt \
libreoffice \
ridl \
unoloader \
))
$(eval $(call gb_Helper_register_jars_for_install,OOO,ooo, \
ScriptFramework \
ScriptProviderForJava \
commonwizards \
form \
$(if $(filter-out MACOSX,$(OS)),officebean) \
query \
report \
sdbc_hsqldb \
smoketest \
table \
unoil \
))
$(eval $(call gb_Helper_register_jars_for_install,OOO,reportbuilder, \
reportbuilder \
reportbuilderwizard \
))
ifneq ($(ENABLE_SCRIPTING_BEANSHELL),)
$(eval $(call gb_Helper_register_jars_for_install,OOO,extensions_bsh, \
ScriptProviderForBeanShell \
))
endif
ifneq ($(ENABLE_SCRIPTING_JAVASCRIPT),)
$(eval $(call gb_Helper_register_jars_for_install,OOO,extensions_rhino, \
ScriptProviderForJavaScript \
))
endif
ifeq (NUMBERTEXT,$(filter NUMBERTEXT,$(BUILD_TYPE)))
$(eval $(call gb_Helper_register_packages_for_install,extensions_numbertext,\
numbertext \
))
endif
$(eval $(call gb_Helper_register_jars,OXT, \
EvolutionarySolver \
active_java \
mediawiki \
nlpsolver \
passive_java \
))
$(eval $(call gb_Helper_register_jars,NONE,\
ConnectivityTools \
HelloWorld \
Highlight \
MemoryUsage \
OOoRunner \
TestExtension \
test \
test-tools \
testComponent \
))
endif
# 'test_unittest' is only package delivering to workdir.
# Other packages could be potentially autoinstalled.
$(eval $(call gb_Helper_register_packages, \
test_unittest \
$(if $(ENABLE_CLI),cli_basetypes_copy) \
extras_wordbook \
instsetoo_native_setup \
$(if $(ENABLE_OOENV),instsetoo_native_ooenv) \
postprocess_registry \
readlicense_oo_readmes \
setup_native_misc \
sysui_share \
vcl_fontunxpsprint \
))
$(eval $(call gb_Helper_register_packages_for_install,impress,\
sd_xml \
))
$(eval $(call gb_Helper_register_packages_for_install,calc,\
sc_res_xml \
))
$(eval $(call gb_Helper_register_packages_for_install,libreofficekit,\
$(if $(filter LINUX %BSD SOLARIS, $(OS)),libreofficekit_selectionhandles) \
$(if $(and $(ENABLE_GTKTILEDVIEWER), $(filter WNT,$(OS))), libreofficekit_selectionhandles) \
))
$(eval $(call gb_Helper_register_packages_for_install,ure,\
instsetoo_native_setup_ure \
$(call gb_CondExeUno,uno_sh) \
ure_install \
$(if $(ENABLE_DOTNET),\
net_basetypes \
net_uretypes \
net_oootypes \
net_bridge \
net_nuget_pkg \
net_nuget_config \
) \
$(if $(ENABLE_JAVA),\
jvmfwk_jvmfwk3_ini \
jvmfwk_javavendors \
jvmfwk_jreproperties \
$(if $(filter MACOSX,$(OS)),bridges_jnilib_java_uno) \
) \
))
$(eval $(call gb_Helper_register_packages_for_install,postgresqlsdbc,\
$(if $(BUILD_POSTGRESQL_SDBC),connectivity_postgresql-sdbc) \
))
$(eval $(call gb_Helper_register_packages_for_install,sdk,\
odk_share_readme \
odk_share_readme_generated \
$(if $(ENABLE_CLI),\
$(if $(filter WNT,$(OS)),$(if $(filter-out AARCH64_TRUE,$(CPUNAME)_$(CROSS_COMPILING)),odk_cli)) \
) \
odk_config \
$(if $(filter WNT,$(OS)),odk_config_win) \
odk_docs \
$(if $(DOXYGEN),odk_doxygen) \
odk_examples \
odk_headers \
odk_headers_generated \
odk_html \
odk_settings \
odk_settings_generated \
$(if $(ENABLE_JAVA), \
odk_javadoc \
odk_uno_loader_classes \
) \
odk_scripts \
))
ifneq ($(ENABLE_WASM_STRIP_PINGUSER),TRUE)
$(eval $(call gb_Helper_register_packages_for_install,ooo,\
tipoftheday_images \
))
endif
ifneq ($(ENABLE_WASM_STRIP_CANVAS),TRUE)
$(eval $(call gb_Helper_register_packages_for_install,ooo,\
$(if $(ENABLE_OPENGL_CANVAS),canvas_opengl_shader) \
))
endif
$(eval $(call gb_Helper_register_packages_for_install,ooo,\
$(if $(SYSTEM_LIBEXTTEXTCAT),,libexttextcat_fingerprint) \
officecfg_misc \
$(if $(filter $(OS),MACOSX), \
extensions_mdibundle \
extensions_OOoSpotlightImporter \
) \
extras_autocorr \
extras_autotextuser \
extras_cfgsrvnolang \
extras_cfgusr \
extras_database \
extras_databasebiblio \
extras_gallbullets \
extras_gallmytheme \
extras_gallroot \
extras_gallsystem \
extras_gallsystemstr \
extras_glade \
extras_labels \
$(if $(filter WNT,$(OS)),extras_newfiles) \
extras_palettes \
extras_personas \
extras_persona_dark \
extras_persona_gray \
extras_persona_green \
extras_persona_pink \
extras_persona_sand \
extras_persona_white \
extras_tplpresnt \
extras_tplwizdesktop \
$(if $(WITH_TEMPLATES),\
extras_templates \
extras_tplwizbitmap \
extras_tplwizard \
) \
framework_dtd \
$(if $(filter $(OS),MACOSX),infoplist) \
oox_customshapes \
oox_generated \
package_dtd \
$(call gb_Helper_optional,DESKTOP,\
$(if $(filter-out WNT,$(OS)),$(if $(ENABLE_MACOSX_SANDBOX),,shell_senddoc))) \
$(call gb_Helper_optional,DESKTOP,$(if $(filter-out EMSCRIPTEN MACOSX WNT,$(OS)),svx_gengal)) \
$(if $(USING_X11),vcl_fontunxppds) \
$(if $(filter $(OS),MACOSX),vcl_osxres) \
xmloff_dtd \
xmlscript_dtd \
$(call gb_Helper_optional,XMLHELP,xmlhelp_helpxsl) \
$(if $(ENABLE_JAVA),\
scripting_java \
scripting_java_jars \
$(if $(ENABLE_SCRIPTING_BEANSHELL),scripting_ScriptsBeanShell) \
$(if $(ENABLE_SCRIPTING_JAVASCRIPT),scripting_ScriptsJavaScript) \
) \
$(call gb_Helper_optional,SCRIPTING,scripting_scriptbindinglib) \
$(if $(filter $(OS),MACOSX),sysui_osxicons) \
wizards_basicshare \
wizards_basicsrvaccess2base \
wizards_basicsrvdepot \
wizards_basicsrveuro \
wizards_basicsrvgimmicks \
wizards_basicsrvimport \
wizards_basicsrvform \
wizards_basicsrvscriptforge \
wizards_basicsrvsfdatabases \
wizards_basicsrvsfdialogs \
wizards_basicsrvsfdocuments \
ScriptForge - New 'UnitTest' service for Basic The "UnitTest" service is implemented as a new Basic library called 'SFUnitTests'. ScriptForge unit tests (SF_UnitTest class module) ====================== Class providing a framework to execute and check sets of unit tests. The UnitTest unit testing framework was originally inspired by unittest.py in Python and has a similar flavor as major unit testing frameworks in other languages. It supports - test automation - sharing of setupand shutdown code - aggregation of tests into collections. Both the - code describing the unit tests - code to be tested must be written exclusively in Basic (the code might call functions written in other languages). The code to be tested may be released as an extension. It does not need to make use of ScriptForge services. The test reporting device is the Console. Definitions: - Test Case: each test case is a Basic Sub. - Test Suite: a collection of test cases stored in 1 Basic module. - Unit test: a set of test suites stored in 1 library. Two modes: - the normal mode ("full mode"), using test suites and test cases The UnitTest service is passed as argument to each test case. - the "simple mode" limited to the use of the Assert...() methods. Service invocation examples: - In full mode, the service creation is external to test cases Dim myUnitTest As Variant myUnitTest = CreateScriptService("UnitTest", ThisComponent, "Tests") ' Test code is in the library "Tests" ' located in the current document - In simple mode, the service creation is internal to every test case Dim myUnitTest As Variant myUnitTest = CreateScriptService("UnitTest") With myUnitTest If Not .AssertTrue(...) Then ... ' ... .Dispose() End With Error handling To support the debugging of the tested code, the UnitTest service, in cases of - assertion failure - Basic run-time error in the tested code - Basic run-time error in the testing code (the unit tests) will comment the error location and description in a message box and in the console log, providing every test case (in either mode) implements an error handler containing at least a call to the ReportError() method. Change-Id: I9d9b889b148f172cd868af455493c8c696d1e953 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135365 Tested-by: Jean-Pierre Ledure <jp@ledure.be> Tested-by: Jenkins Reviewed-by: Jean-Pierre Ledure <jp@ledure.be>
2022-06-03 10:51:57 -05:00
wizards_basicsrvsfunittests \
wizards_basicsrvsfwidgets \
wizards_basicsrvstandard \
wizards_basicsrvtemplate \
wizards_basicsrvtools \
wizards_basicsrvtutorials \
wizards_basicusr \
wizards_properties \
wizards_wizardshare \
toolbarmode_images \
vcl_theme_definitions \
$(if $(filter WNT,$(OS)), \
vcl_opengl_denylist \
) \
$(if $(filter SKIA,$(BUILD_TYPE)), \
vcl_skia_denylist ) \
$(if $(DISABLE_PYTHON),, \
Pyuno/commonwizards \
Pyuno/fax \
Pyuno/letter \
Pyuno/agenda \
Pyuno/mailmerge \
) \
sfx2_classification \
$(if $(filter OPENCL,$(BUILD_TYPE)),sc_opencl_runtimetest) \
$(if $(ENABLE_HTMLHELP),\
helpcontent2_html_dynamic \
helpcontent2_html_media \
Properly handle language-specific parts of --with-help=html media/ sub-tree ...that previously ended up in language-independent parts of installation sets. The structure of that media/ tree doesn't allow to directly mis-use the existing AllLangPackage machinery (which expects the language to be encoded in the first pathname segment within the tree; and which is already mis-used for the helpcontent2/AllLangPackage_html_lang.mk parts). So introduce gb_AllLangPackage_add_files_for_lang that allows to specify the language explicitly, independent of where it is encoded in the pathname (if at all). The underlying gb_AllLangPackage_add_file sets a gb_AllLangPackage_ALLDIRS that is used by `make packageinfo`, which may need further fixing by anybody actually using that target; see the mail thread starting at <https://lists.freedesktop.org/archives/libreoffice/2018-May/080242.html> "Broken --with-help=html `make packageinfo`". All files in $(SRCDIR)/helpcontent2/source/media/ must now explicitly be listed in either helpcontent2/Package_html_media.mk (for the language-independent files) or helpcontent2/AllLangPackage_html_media_lang.mk (for the language- specific files). Also note the two TODOs in helpcontent2/AllLangPackage_html_media_lang.mk. What is not quite right yet is that content from helpcontent2/AllLangPackage_html_lang.mk and helpcontent2/AllLangPackage_html_media_lang.mk is ending up in both per-language helpcontent installation sets (as intended, via the instructions in helpcontent2/CustomTarget_html.mk) and per-language languagepack installation sets (which is unintended). This needs to be fixed with a follow-up commit. This is the core part of a commit spanning core and helpcontent2. Change-Id: Ib29e52cf8a3ca7bcd234a8f6919c8eac6157cdbf
2018-05-24 03:46:43 -05:00
helpcontent2_html_icon-themes \
helpcontent2_html_static \
) \
resource_fonts \
cui \
$(if $(filter EMSCRIPTEN,$(OS)), \
favicon \
unoembind \
) \
))
$(eval $(call gb_Helper_register_packages_for_install,ooo_fonts,\
extras_fonts \
$(if $(USING_X11)$(DISABLE_GUI)$(filter ANDROID EMSCRIPTEN,$(OS)), \
postprocess_fontconfig) \
$(call gb_Helper_optional,MORE_FONTS,\
fonts_alef \
fonts_amiri \
fonts_gmx \
fonts_caladea \
fonts_carlito \
$(if $(MPL_SUBSET),,fonts_culmus) \
fonts_dejavu \
fonts_gentium \
fonts_liberation \
fonts_liberation_narrow \
fonts_libertineg \
fonts_libre_hebrew \
fonts_noto_kufi_arabic \
fonts_noto_naskh_arabic \
fonts_noto_sans \
fonts_noto_sans_arabic \
fonts_noto_sans_armenian \
fonts_noto_sans_georgian \
fonts_noto_sans_hebrew \
fonts_noto_sans_lao \
fonts_noto_sans_lisu \
fonts_noto_serif \
fonts_noto_serif_armenian \
fonts_noto_serif_georgian \
fonts_noto_serif_hebrew \
fonts_noto_serif_lao \
fonts_reem \
fonts_scheherazade \
$(if $(WITH_DOCREPAIR_FONTS),fonts_agdasima,) \
$(if $(WITH_DOCREPAIR_FONTS),fonts_bacasime_antique,) \
$(if $(WITH_DOCREPAIR_FONTS),fonts_belanosima,) \
$(if $(WITH_DOCREPAIR_FONTS),fonts_caprasimo,) \
$(if $(WITH_DOCREPAIR_FONTS),fonts_lugrasimo,) \
$(if $(WITH_DOCREPAIR_FONTS),fonts_lumanosimo,) \
$(if $(WITH_DOCREPAIR_FONTS),fonts_lunasima,) \
) \
))
$(eval $(call gb_Helper_register_packages_for_install,ooo_images,\
postprocess_images \
$(call gb_Helper_optional,HELP,helpcontent2_helpimages) \
))
$(eval $(call gb_Helper_register_packages_for_install,ogltrans,\
sd_opengl \
slideshow_opengl_shader \
))
ifneq ($(ENABLE_POPPLER),)
$(eval $(call gb_Helper_register_packages_for_install,pdfimport, \
sdext_pdfimport_pdf \
))
endif
$(eval $(call gb_Helper_register_packages_for_install,reportbuilder,\
reportbuilder_templates \
))
$(eval $(call gb_Helper_register_packages_for_install,xsltfilter,\
filter_docbook \
filter_xhtml \
filter_xslt \
))
$(eval $(call gb_Helper_register_packages_for_install,brand,\
desktop_branding \
$(if $(CUSTOM_BRAND_DIR),desktop_branding_custom) \
$(if $(filter DESKTOP,$(BUILD_TYPE)),desktop_scripts_install) \
$(if $(and $(filter-out EMSCRIPTEN HAIKU MACOSX WNT,$(OS)),$(filter DESKTOP,$(BUILD_TYPE))),\
$(if $(DISABLE_GUI),, \
desktop_soffice_sh \
) \
) \
readlicense_oo_files \
readlicense_oo_license \
$(call gb_Helper_optional,DESKTOP,setup_native_packinfo) \
$(if $(ENABLE_ONLINE_UPDATE_MAR), \
update-settings_ini \
updater_ini \
) \
))
ifeq ($(USING_X11), TRUE)
$(eval $(call gb_Helper_register_packages_for_install,base_brand,\
desktop_sbase_sh \
))
$(eval $(call gb_Helper_register_packages_for_install,calc_brand,\
desktop_scalc_sh \
))
$(eval $(call gb_Helper_register_packages_for_install,draw_brand,\
desktop_sdraw_sh \
))
$(eval $(call gb_Helper_register_packages_for_install,impress_brand,\
desktop_simpress_sh \
))
$(eval $(call gb_Helper_register_packages_for_install,math_brand,\
desktop_smath_sh \
))
$(eval $(call gb_Helper_register_packages_for_install,writer_brand,\
desktop_swriter_sh \
))
endif # USING_X11=TRUE
$(eval $(call gb_Helper_register_packages_for_install,onlineupdate,\
$(if $(ENABLE_ONLINE_UPDATE),$(if $(filter LINUX SOLARIS,$(OS)),setup_native_scripts)) \
))
ifneq ($(DISABLE_PYTHON),TRUE)
$(eval $(call gb_Helper_register_packages_for_install,python, \
pyuno_pythonloader_ini \
pyuno_python_scripts \
$(if $(SYSTEM_PYTHON),,$(if $(filter-out WNT,$(OS)),python_shell)) \
scripting_ScriptsPython \
))
$(eval $(call gb_Helper_register_packages_for_install,python_scriptprovider, \
scripting_scriptproviderforpython \
))
ifeq (LIBRELOGO,$(filter LIBRELOGO,$(BUILD_TYPE)))
$(eval $(call gb_Helper_register_packages_for_install,python_librelogo, \
librelogo \
librelogo_properties \
))
endif # LIBRELOGO
endif # DISABLE_PYTHON
# External executables
$(eval $(call gb_ExternalExecutable_register_executables,\
genbrk \
genccode \
gencmn \
python \
xmllint \
xsltproc \
))
# Resources
migrate to boost::gettext * all .ui files go from <interface> to <interface domain="MODULE"> e.g. vcl * all .src files go away and the english source strings folded into the .hrc as NC_("context", "source string") * ResMgr is dropped in favour of std::locale imbued by boost::locale::generator pointed at matching MODULE .mo files * UIConfig translations are folded into the module .mo, so e.g. UIConfig_cui goes from l10n target to normal one, so the res/lang.zips of UI files go away * translation via Translation::get(hrc-define-key, imbued-std::locale) * python can now be translated with its inbuilt gettext support (we keep the name strings.hrc there to keep finding the .hrc file uniform) so magic numbers can go away there * java and starbasic components can be translated via the pre-existing css.resource.StringResourceWithLocation mechanism * en-US res files go away, their strings are now the .hrc keys in the source code * remaining .res files are replaced by .mo files * in .res/.ui-lang-zip files, the old scheme missing translations of strings results in inserting the english original so something can be found, now the standard fallback of using the english original from the source key is used, so partial translations shrink dramatically in size * extract .hrc strings with hrcex which backs onto xgettext -C --add-comments --keyword=NC_:1c,2 --from-code=UTF-8 --no-wrap * extract .ui strings with uiex which backs onto xgettext --add-comments --no-wrap * qtz for gettext translations is generated at runtime as ascii-ified crc32 of content + "|" + msgid * [API CHANGE] remove deprecated binary .res resouce loader related uno apis com::sun::star::resource::OfficeResourceLoader com::sun::star::resource::XResourceBundleLoader com::sun::star::resource::XResourceBundle when translating strings via uno apis com.sun.star.resource.StringResourceWithLocation can continue to be used Change-Id: Ia2594a2672b7301d9c3421fdf31b6cfe7f3f8d0a
2017-06-11 14:56:30 -05:00
$(eval $(call gb_Helper_register_mos,\
acc \
$(call gb_Helper_optional,AVMEDIA,avmedia) \
$(call gb_Helper_optional,SCRIPTING,basctl) \
migrate to boost::gettext * all .ui files go from <interface> to <interface domain="MODULE"> e.g. vcl * all .src files go away and the english source strings folded into the .hrc as NC_("context", "source string") * ResMgr is dropped in favour of std::locale imbued by boost::locale::generator pointed at matching MODULE .mo files * UIConfig translations are folded into the module .mo, so e.g. UIConfig_cui goes from l10n target to normal one, so the res/lang.zips of UI files go away * translation via Translation::get(hrc-define-key, imbued-std::locale) * python can now be translated with its inbuilt gettext support (we keep the name strings.hrc there to keep finding the .hrc file uniform) so magic numbers can go away there * java and starbasic components can be translated via the pre-existing css.resource.StringResourceWithLocation mechanism * en-US res files go away, their strings are now the .hrc keys in the source code * remaining .res files are replaced by .mo files * in .res/.ui-lang-zip files, the old scheme missing translations of strings results in inserting the english original so something can be found, now the standard fallback of using the english original from the source key is used, so partial translations shrink dramatically in size * extract .hrc strings with hrcex which backs onto xgettext -C --add-comments --keyword=NC_:1c,2 --from-code=UTF-8 --no-wrap * extract .ui strings with uiex which backs onto xgettext --add-comments --no-wrap * qtz for gettext translations is generated at runtime as ascii-ified crc32 of content + "|" + msgid * [API CHANGE] remove deprecated binary .res resouce loader related uno apis com::sun::star::resource::OfficeResourceLoader com::sun::star::resource::XResourceBundleLoader com::sun::star::resource::XResourceBundle when translating strings via uno apis com.sun.star.resource.StringResourceWithLocation can continue to be used Change-Id: Ia2594a2672b7301d9c3421fdf31b6cfe7f3f8d0a
2017-06-11 14:56:30 -05:00
chart \
cnr \
cui \
dba \
dkt \
editeng \
migrate to boost::gettext * all .ui files go from <interface> to <interface domain="MODULE"> e.g. vcl * all .src files go away and the english source strings folded into the .hrc as NC_("context", "source string") * ResMgr is dropped in favour of std::locale imbued by boost::locale::generator pointed at matching MODULE .mo files * UIConfig translations are folded into the module .mo, so e.g. UIConfig_cui goes from l10n target to normal one, so the res/lang.zips of UI files go away * translation via Translation::get(hrc-define-key, imbued-std::locale) * python can now be translated with its inbuilt gettext support (we keep the name strings.hrc there to keep finding the .hrc file uniform) so magic numbers can go away there * java and starbasic components can be translated via the pre-existing css.resource.StringResourceWithLocation mechanism * en-US res files go away, their strings are now the .hrc keys in the source code * remaining .res files are replaced by .mo files * in .res/.ui-lang-zip files, the old scheme missing translations of strings results in inserting the english original so something can be found, now the standard fallback of using the english original from the source key is used, so partial translations shrink dramatically in size * extract .hrc strings with hrcex which backs onto xgettext -C --add-comments --keyword=NC_:1c,2 --from-code=UTF-8 --no-wrap * extract .ui strings with uiex which backs onto xgettext --add-comments --no-wrap * qtz for gettext translations is generated at runtime as ascii-ified crc32 of content + "|" + msgid * [API CHANGE] remove deprecated binary .res resouce loader related uno apis com::sun::star::resource::OfficeResourceLoader com::sun::star::resource::XResourceBundleLoader com::sun::star::resource::XResourceBundle when translating strings via uno apis com.sun.star.resource.StringResourceWithLocation can continue to be used Change-Id: Ia2594a2672b7301d9c3421fdf31b6cfe7f3f8d0a
2017-06-11 14:56:30 -05:00
flt \
for \
migrate to boost::gettext * all .ui files go from <interface> to <interface domain="MODULE"> e.g. vcl * all .src files go away and the english source strings folded into the .hrc as NC_("context", "source string") * ResMgr is dropped in favour of std::locale imbued by boost::locale::generator pointed at matching MODULE .mo files * UIConfig translations are folded into the module .mo, so e.g. UIConfig_cui goes from l10n target to normal one, so the res/lang.zips of UI files go away * translation via Translation::get(hrc-define-key, imbued-std::locale) * python can now be translated with its inbuilt gettext support (we keep the name strings.hrc there to keep finding the .hrc file uniform) so magic numbers can go away there * java and starbasic components can be translated via the pre-existing css.resource.StringResourceWithLocation mechanism * en-US res files go away, their strings are now the .hrc keys in the source code * remaining .res files are replaced by .mo files * in .res/.ui-lang-zip files, the old scheme missing translations of strings results in inserting the english original so something can be found, now the standard fallback of using the english original from the source key is used, so partial translations shrink dramatically in size * extract .hrc strings with hrcex which backs onto xgettext -C --add-comments --keyword=NC_:1c,2 --from-code=UTF-8 --no-wrap * extract .ui strings with uiex which backs onto xgettext --add-comments --no-wrap * qtz for gettext translations is generated at runtime as ascii-ified crc32 of content + "|" + msgid * [API CHANGE] remove deprecated binary .res resouce loader related uno apis com::sun::star::resource::OfficeResourceLoader com::sun::star::resource::XResourceBundleLoader com::sun::star::resource::XResourceBundle when translating strings via uno apis com.sun.star.resource.StringResourceWithLocation can continue to be used Change-Id: Ia2594a2672b7301d9c3421fdf31b6cfe7f3f8d0a
2017-06-11 14:56:30 -05:00
$(call gb_Helper_optional,DESKTOP,fps) \
frm \
migrate to boost::gettext * all .ui files go from <interface> to <interface domain="MODULE"> e.g. vcl * all .src files go away and the english source strings folded into the .hrc as NC_("context", "source string") * ResMgr is dropped in favour of std::locale imbued by boost::locale::generator pointed at matching MODULE .mo files * UIConfig translations are folded into the module .mo, so e.g. UIConfig_cui goes from l10n target to normal one, so the res/lang.zips of UI files go away * translation via Translation::get(hrc-define-key, imbued-std::locale) * python can now be translated with its inbuilt gettext support (we keep the name strings.hrc there to keep finding the .hrc file uniform) so magic numbers can go away there * java and starbasic components can be translated via the pre-existing css.resource.StringResourceWithLocation mechanism * en-US res files go away, their strings are now the .hrc keys in the source code * remaining .res files are replaced by .mo files * in .res/.ui-lang-zip files, the old scheme missing translations of strings results in inserting the english original so something can be found, now the standard fallback of using the english original from the source key is used, so partial translations shrink dramatically in size * extract .hrc strings with hrcex which backs onto xgettext -C --add-comments --keyword=NC_:1c,2 --from-code=UTF-8 --no-wrap * extract .ui strings with uiex which backs onto xgettext --add-comments --no-wrap * qtz for gettext translations is generated at runtime as ascii-ified crc32 of content + "|" + msgid * [API CHANGE] remove deprecated binary .res resouce loader related uno apis com::sun::star::resource::OfficeResourceLoader com::sun::star::resource::XResourceBundleLoader com::sun::star::resource::XResourceBundle when translating strings via uno apis com.sun.star.resource.StringResourceWithLocation can continue to be used Change-Id: Ia2594a2672b7301d9c3421fdf31b6cfe7f3f8d0a
2017-06-11 14:56:30 -05:00
fwk \
oox \
migrate to boost::gettext * all .ui files go from <interface> to <interface domain="MODULE"> e.g. vcl * all .src files go away and the english source strings folded into the .hrc as NC_("context", "source string") * ResMgr is dropped in favour of std::locale imbued by boost::locale::generator pointed at matching MODULE .mo files * UIConfig translations are folded into the module .mo, so e.g. UIConfig_cui goes from l10n target to normal one, so the res/lang.zips of UI files go away * translation via Translation::get(hrc-define-key, imbued-std::locale) * python can now be translated with its inbuilt gettext support (we keep the name strings.hrc there to keep finding the .hrc file uniform) so magic numbers can go away there * java and starbasic components can be translated via the pre-existing css.resource.StringResourceWithLocation mechanism * en-US res files go away, their strings are now the .hrc keys in the source code * remaining .res files are replaced by .mo files * in .res/.ui-lang-zip files, the old scheme missing translations of strings results in inserting the english original so something can be found, now the standard fallback of using the english original from the source key is used, so partial translations shrink dramatically in size * extract .hrc strings with hrcex which backs onto xgettext -C --add-comments --keyword=NC_:1c,2 --from-code=UTF-8 --no-wrap * extract .ui strings with uiex which backs onto xgettext --add-comments --no-wrap * qtz for gettext translations is generated at runtime as ascii-ified crc32 of content + "|" + msgid * [API CHANGE] remove deprecated binary .res resouce loader related uno apis com::sun::star::resource::OfficeResourceLoader com::sun::star::resource::XResourceBundleLoader com::sun::star::resource::XResourceBundle when translating strings via uno apis com.sun.star.resource.StringResourceWithLocation can continue to be used Change-Id: Ia2594a2672b7301d9c3421fdf31b6cfe7f3f8d0a
2017-06-11 14:56:30 -05:00
pcr \
rpt \
$(call gb_Helper_optional,SCRIPTING,sb) \
sc \
migrate to boost::gettext * all .ui files go from <interface> to <interface domain="MODULE"> e.g. vcl * all .src files go away and the english source strings folded into the .hrc as NC_("context", "source string") * ResMgr is dropped in favour of std::locale imbued by boost::locale::generator pointed at matching MODULE .mo files * UIConfig translations are folded into the module .mo, so e.g. UIConfig_cui goes from l10n target to normal one, so the res/lang.zips of UI files go away * translation via Translation::get(hrc-define-key, imbued-std::locale) * python can now be translated with its inbuilt gettext support (we keep the name strings.hrc there to keep finding the .hrc file uniform) so magic numbers can go away there * java and starbasic components can be translated via the pre-existing css.resource.StringResourceWithLocation mechanism * en-US res files go away, their strings are now the .hrc keys in the source code * remaining .res files are replaced by .mo files * in .res/.ui-lang-zip files, the old scheme missing translations of strings results in inserting the english original so something can be found, now the standard fallback of using the english original from the source key is used, so partial translations shrink dramatically in size * extract .hrc strings with hrcex which backs onto xgettext -C --add-comments --keyword=NC_:1c,2 --from-code=UTF-8 --no-wrap * extract .ui strings with uiex which backs onto xgettext --add-comments --no-wrap * qtz for gettext translations is generated at runtime as ascii-ified crc32 of content + "|" + msgid * [API CHANGE] remove deprecated binary .res resouce loader related uno apis com::sun::star::resource::OfficeResourceLoader com::sun::star::resource::XResourceBundleLoader com::sun::star::resource::XResourceBundle when translating strings via uno apis com.sun.star.resource.StringResourceWithLocation can continue to be used Change-Id: Ia2594a2672b7301d9c3421fdf31b6cfe7f3f8d0a
2017-06-11 14:56:30 -05:00
sca \
scc \
sd \
sfx \
shell \
sm \
svl \
svt \
svx \
sw \
uui \
vcl \
migrate to boost::gettext * all .ui files go from <interface> to <interface domain="MODULE"> e.g. vcl * all .src files go away and the english source strings folded into the .hrc as NC_("context", "source string") * ResMgr is dropped in favour of std::locale imbued by boost::locale::generator pointed at matching MODULE .mo files * UIConfig translations are folded into the module .mo, so e.g. UIConfig_cui goes from l10n target to normal one, so the res/lang.zips of UI files go away * translation via Translation::get(hrc-define-key, imbued-std::locale) * python can now be translated with its inbuilt gettext support (we keep the name strings.hrc there to keep finding the .hrc file uniform) so magic numbers can go away there * java and starbasic components can be translated via the pre-existing css.resource.StringResourceWithLocation mechanism * en-US res files go away, their strings are now the .hrc keys in the source code * remaining .res files are replaced by .mo files * in .res/.ui-lang-zip files, the old scheme missing translations of strings results in inserting the english original so something can be found, now the standard fallback of using the english original from the source key is used, so partial translations shrink dramatically in size * extract .hrc strings with hrcex which backs onto xgettext -C --add-comments --keyword=NC_:1c,2 --from-code=UTF-8 --no-wrap * extract .ui strings with uiex which backs onto xgettext --add-comments --no-wrap * qtz for gettext translations is generated at runtime as ascii-ified crc32 of content + "|" + msgid * [API CHANGE] remove deprecated binary .res resouce loader related uno apis com::sun::star::resource::OfficeResourceLoader com::sun::star::resource::XResourceBundleLoader com::sun::star::resource::XResourceBundle when translating strings via uno apis com.sun.star.resource.StringResourceWithLocation can continue to be used Change-Id: Ia2594a2672b7301d9c3421fdf31b6cfe7f3f8d0a
2017-06-11 14:56:30 -05:00
wiz \
wpt \
$(if $(ENABLE_NSS)$(ENABLE_OPENSSL),xsc) \
))
# UI configuration
ifneq ($(ENABLE_WASM_STRIP_DBACCESS),TRUE)
$(eval $(call gb_Helper_register_uiconfigs,\
$(call gb_Helper_optional,DBCONNECTIVITY,dbaccess) \
))
endif
$(eval $(call gb_Helper_register_uiconfigs,\
cui \
desktop \
editeng \
filter \
formula \
fps \
libreofficekit \
$(call gb_Helper_optional,SCRIPTING,modules/BasicIDE) \
$(call gb_Helper_optional,DBCONNECTIVITY,\
modules/dbapp \
modules/dbbrowser \
modules/dbquery \
modules/dbrelation \
) \
modules/dbreport \
$(call gb_Helper_optional,DBCONNECTIVITY,\
modules/dbtable \
modules/dbtdata \
) \
modules/sabpilot \
$(call gb_Helper_optional,DBCONNECTIVITY,modules/sbibliography) \
modules/scalc \
modules/scanner \
modules/schart \
modules/sdraw \
modules/sglobal \
modules/simpress \
modules/smath \
$(call gb_Helper_optional,DBCONNECTIVITY,modules/spropctrlr) \
modules/StartModule \
modules/sweb \
modules/swform \
modules/swreport \
modules/swriter \
modules/swxform \
sfx \
svt \
svx \
uui \
vcl \
writerperfect \
$(if $(ENABLE_NSS)$(ENABLE_OPENSSL),xmlsec) \
))
ifeq ($(gb_GBUILDSELFTEST),t)
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, gbuildselftestdep gbuildselftest))
$(eval $(call gb_Helper_register_executables,NONE, gbuildselftestexe))
endif
2010-04-17 05:41:17 -05:00
# vim: set noet sw=4 ts=4: