2011-08-09 12:12:48 -05:00
|
|
|
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
|
2010-04-17 05:41:17 -05:00
|
|
|
#
|
2013-05-16 15:56:04 -05:00
|
|
|
# This file is part of the LibreOffice project.
|
2011-09-14 10:10:34 -05:00
|
|
|
#
|
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
|
|
|
#
|
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
|
|
|
#
|
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
|
|
|
#
|
|
|
|
|
2021-04-30 10:26:41 -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, \
|
2021-05-24 07:12:18 -05:00
|
|
|
$(call gb_Helper_optional,HELPTOOLS, \
|
2013-06-10 17:59:27 -05:00
|
|
|
HelpIndexer \
|
|
|
|
HelpLinker \
|
2021-05-24 07:12:18 -05:00
|
|
|
) \
|
2013-06-10 17:59:27 -05:00
|
|
|
bestreversemap \
|
|
|
|
cfgex \
|
2013-03-06 09:34:16 -06:00
|
|
|
concat-deps \
|
2013-06-10 17:59:27 -05:00
|
|
|
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 \
|
2024-07-11 09:41:38 -05:00
|
|
|
$(if $(or $(filter EMSCRIPTEN,$(BUILD_TYPE_FOR_HOST)),$(filter EMSCRIPTEN,$(OS))),embindmaker wasmbridgegen) \
|
2016-10-26 05:45:26 -05:00
|
|
|
gbuildtojson \
|
2013-06-14 09:11:09 -05:00
|
|
|
$(if $(filter MSC,$(COM)), \
|
|
|
|
gcc-wrapper \
|
|
|
|
g++-wrapper \
|
|
|
|
) \
|
2013-06-10 17:59:27 -05:00
|
|
|
gencoll_rule \
|
|
|
|
genconv_dict \
|
|
|
|
gendict \
|
|
|
|
genindex_data \
|
|
|
|
helpex \
|
|
|
|
idxdict \
|
2021-05-25 08:21:06 -05:00
|
|
|
io-testconnection \
|
2013-05-05 03:45:07 -05:00
|
|
|
langsupport \
|
2018-10-31 13:06:30 -05:00
|
|
|
$(if $(filter iOS,$(OS)),LibreOffice) \
|
2013-06-10 17:59:27 -05:00
|
|
|
lngconvex \
|
|
|
|
localize \
|
2022-01-07 23:47:02 -06:00
|
|
|
$(call gb_CondExeLockfile,lockfile) \
|
2013-06-10 17:59:27 -05:00
|
|
|
makedepend \
|
2017-04-25 13:40:05 -05:00
|
|
|
mbsdiff \
|
2013-06-10 17:59:27 -05:00
|
|
|
osl_process_child \
|
|
|
|
pdf2xml \
|
|
|
|
pdfunzip \
|
2016-10-12 09:50:09 -05:00
|
|
|
pdfverify \
|
2013-08-20 06:24:19 -05:00
|
|
|
pocheck \
|
2013-06-10 17:59:27 -05:00
|
|
|
propex \
|
|
|
|
regsvrex \
|
|
|
|
saxparser \
|
|
|
|
svidl \
|
2017-08-21 02:32:02 -05:00
|
|
|
$(if $(ENABLE_ONLINE_UPDATE_MAR),\
|
2017-08-22 12:59:10 -05:00
|
|
|
test_updater_dialog \
|
|
|
|
) \
|
2013-06-10 17:59:27 -05:00
|
|
|
treex \
|
|
|
|
ulfex \
|
2022-04-11 04:23:18 -05:00
|
|
|
unoidl-check \
|
2013-06-10 17:59:27 -05:00
|
|
|
xrmex \
|
2018-10-31 13:06:30 -05:00
|
|
|
$(if $(filter-out ANDROID iOS WNT,$(OS)), \
|
2015-07-10 05:04:50 -05:00
|
|
|
fftester \
|
2018-06-19 09:02:49 -05:00
|
|
|
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) \
|
2020-02-13 06:10:33 -06:00
|
|
|
$(if $(filter LINUX MACOSX SOLARIS WNT %BSD,$(OS)),icontest) \
|
2014-11-11 23:06:36 -06:00
|
|
|
vcldemo \
|
2023-01-27 18:09:36 -06:00
|
|
|
svdemo \
|
|
|
|
minvcl \
|
2024-11-14 18:02:41 -06:00
|
|
|
minweld \
|
2023-09-15 15:38:02 -05:00
|
|
|
svptest \
|
2014-10-30 16:59:02 -05:00
|
|
|
tiledrendering \
|
vcl: Create listfonts utility
The listfonts utility gets the details of all available fonts on the
system. It prints out the information, or stores it in a text file,
if a file name is passed to it as an argument.
An example invocation to store the information in a file named
fonts.txt is:
./bin/run listfonts fonts.txt
To get the correct font metrics, you actually have to get the font
metric from the system, and then set it as the current font of
OutputDevice, then get the font metric (which corrects a variety of
things like the orientation, line, height, slant, etc. - including
converting from logical coords to device coords).
The information is reported for each font family. On the top is the
family name, and then comes other details. Here is a report for an
example font:
FreeSans
Family type: swiss
Style name: Regular
Weight: normal
Italic: none
Pitch: variable
Width type: normal
Alignment: top
Charset: UCS2 (aka Unicode)
Symbol font? no
Ascent: 13
Descent: 3
Internal leading: 0
External leading: 2
Line height: 16
Slant: 0
Bullet offset: 0
Fullstop centered? yes
Orientation: 0 degrees
Quality: 18477
There is a -v (or --verbose) option that output font features.
Change-Id: Icfc4da96459bea47c4233a5509496566c04d460c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127365
Tested-by: Jenkins
Reviewed-by: Hossein <hossein@libreoffice.org>
2022-01-07 17:02:30 -06:00
|
|
|
mtfdemo \
|
|
|
|
visualbackendtest \
|
|
|
|
listfonts \
|
2022-10-19 05:32:49 -05:00
|
|
|
listglyphs \
|
2016-03-07 07:19:55 -06:00
|
|
|
$(if $(and $(ENABLE_GTK3), $(filter LINUX %BSD SOLARIS,$(OS))), gtktiledviewer) \
|
2022-10-20 04:55:41 -05:00
|
|
|
$(if $(and $(ENABLE_GTKTILEDVIEWER), $(filter WNT,$(OS))), gtktiledviewer) \
|
2013-05-05 03:46:25 -05:00
|
|
|
))
|
2012-04-13 17:30:19 -05:00
|
|
|
|
2013-09-18 17:06:24 -05:00
|
|
|
$(eval $(call gb_Helper_register_executables_for_install,SDK,sdk, \
|
2024-06-12 10:55:42 -05:00
|
|
|
$(if $(ENABLE_CLI),\
|
|
|
|
$(if $(filter MSC,$(COM)),$(if $(filter-out AARCH64_TRUE,$(CPUNAME)_$(CROSS_COMPILING)),climaker)) \
|
|
|
|
) \
|
2013-06-15 15:52:39 -05:00
|
|
|
cppumaker \
|
|
|
|
javamaker \
|
2024-06-12 03:26:05 -05:00
|
|
|
netmaker \
|
2022-01-07 07:31:27 -06:00
|
|
|
$(call gb_CondExeSp2bv,sp2bv) \
|
2013-06-14 09:11:09 -05:00
|
|
|
$(if $(filter ODK,$(BUILD_TYPE)),unoapploader) \
|
2022-04-11 06:16:37 -05:00
|
|
|
unoidl-read \
|
2022-02-22 05:00:00 -06:00
|
|
|
unoidl-write \
|
2013-06-14 09:11:09 -05:00
|
|
|
$(if $(filter ODK,$(BUILD_TYPE)),uno-skeletonmaker) \
|
2012-04-13 17:30:19 -05:00
|
|
|
))
|
|
|
|
|
2021-04-30 10:26:41 -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
|
|
|
|
|
2014-10-28 16:11:00 -05:00
|
|
|
$(eval $(call gb_Helper_register_executables_for_install,OOO,brand, \
|
2016-08-24 16:32:14 -05:00
|
|
|
$(if $(ENABLE_ONLINE_UPDATE_MAR),\
|
|
|
|
mar \
|
2016-12-26 19:45:55 -06:00
|
|
|
$(if $(filter WNT,$(OS)), \
|
|
|
|
update_service \
|
|
|
|
) \
|
2016-08-24 16:32:14 -05:00
|
|
|
updater )\
|
2016-03-28 15:39:12 -05:00
|
|
|
$(call gb_Helper_optional,BREAKPAD,minidump_upload) \
|
2016-12-05 06:59:08 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,wmffuzzer) \
|
2016-12-30 09:30:20 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,jpgfuzzer) \
|
2017-01-03 12:41:22 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,giffuzzer) \
|
2017-01-06 06:21:56 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,xbmfuzzer) \
|
2017-01-07 14:29:35 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,xpmfuzzer) \
|
2017-01-08 14:54:02 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,pngfuzzer) \
|
2017-01-08 15:20:56 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,bmpfuzzer) \
|
2017-01-09 04:06:07 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,svmfuzzer) \
|
2017-01-09 11:04:27 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,pcdfuzzer) \
|
2017-01-12 04:49:50 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,dxffuzzer) \
|
2017-01-12 05:23:07 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,metfuzzer) \
|
2017-01-12 05:25:24 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,ppmfuzzer) \
|
2017-01-24 03:13:23 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,psdfuzzer) \
|
2017-01-26 06:23:10 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,epsfuzzer) \
|
2017-01-28 06:42:02 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,pctfuzzer) \
|
2017-02-13 03:42:41 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,pcxfuzzer) \
|
2017-02-14 03:00:19 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,rasfuzzer) \
|
2017-02-17 14:39:02 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,tgafuzzer) \
|
2017-02-22 05:11:54 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,tiffuzzer) \
|
2017-02-23 04:30:17 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,hwpfuzzer) \
|
2017-02-24 08:50:36 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,602fuzzer) \
|
2017-02-27 03:35:54 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,lwpfuzzer) \
|
2017-03-14 04:17:41 -05:00
|
|
|
$(call gb_Helper_optional,FUZZERS,olefuzzer) \
|
2017-03-02 08:41:46 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,pptfuzzer) \
|
2017-03-24 06:57:44 -05:00
|
|
|
$(call gb_Helper_optional,FUZZERS,rtffuzzer) \
|
2024-09-16 10:58:00 -05:00
|
|
|
$(call gb_Helper_optional,FUZZERS,rtf2pdffuzzer) \
|
2017-04-01 14:54:54 -05:00
|
|
|
$(call gb_Helper_optional,FUZZERS,cgmfuzzer) \
|
2017-04-03 03:00:16 -05:00
|
|
|
$(call gb_Helper_optional,FUZZERS,ww2fuzzer) \
|
2017-04-28 06:18:08 -05:00
|
|
|
$(call gb_Helper_optional,FUZZERS,ww6fuzzer) \
|
2017-05-02 06:56:34 -05:00
|
|
|
$(call gb_Helper_optional,FUZZERS,ww8fuzzer) \
|
2017-06-02 05:29:09 -05:00
|
|
|
$(call gb_Helper_optional,FUZZERS,qpwfuzzer) \
|
2017-07-28 02:46:17 -05:00
|
|
|
$(call gb_Helper_optional,FUZZERS,slkfuzzer) \
|
2017-09-19 03:04:26 -05:00
|
|
|
$(call gb_Helper_optional,FUZZERS,fodtfuzzer) \
|
2023-04-27 14:13:37 -05:00
|
|
|
$(call gb_Helper_optional,FUZZERS,fodt2pdffuzzer) \
|
2024-01-30 05:47:03 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,fods2xlsfuzzer) \
|
2017-09-19 04:40:03 -05:00
|
|
|
$(call gb_Helper_optional,FUZZERS,fodsfuzzer) \
|
2017-09-21 03:43:17 -05:00
|
|
|
$(call gb_Helper_optional,FUZZERS,fodpfuzzer) \
|
2017-10-30 09:24:14 -05:00
|
|
|
$(call gb_Helper_optional,FUZZERS,xlsfuzzer) \
|
2024-03-17 16:58:29 -05:00
|
|
|
$(call gb_Helper_optional,FUZZERS,schtmlfuzzer) \
|
2017-11-02 04:50:17 -05:00
|
|
|
$(call gb_Helper_optional,FUZZERS,scrtffuzzer) \
|
2017-11-06 09:30:24 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,wksfuzzer) \
|
2017-11-09 03:00:33 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,diffuzzer) \
|
2017-11-24 03:10:46 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,docxfuzzer) \
|
2017-11-28 10:56:41 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,xlsxfuzzer) \
|
2017-11-29 04:44:09 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,pptxfuzzer) \
|
2017-12-01 08:52:13 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,mmlfuzzer) \
|
2017-12-04 06:08:46 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,mtpfuzzer) \
|
2017-12-20 11:32:15 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,htmlfuzzer) \
|
2018-02-07 06:19:10 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,sftfuzzer) \
|
2021-09-24 07:50:16 -05:00
|
|
|
$(call gb_Helper_optional,FUZZERS,dbffuzzer) \
|
2022-01-31 15:27:40 -06:00
|
|
|
$(call gb_Helper_optional,FUZZERS,webpfuzzer) \
|
2023-04-25 09:06:46 -05:00
|
|
|
$(call gb_Helper_optional,FUZZERS,zipfuzzer) \
|
2023-04-26 04:14:35 -05:00
|
|
|
$(call gb_Helper_optional,FUZZERS,svgfuzzer) \
|
2014-10-28 16:11:00 -05:00
|
|
|
soffice_bin \
|
2022-01-07 23:47:02 -06:00
|
|
|
$(call gb_CondExeUnopkg, \
|
2022-01-07 05:45:01 -06:00
|
|
|
unopkg_bin \
|
|
|
|
$(if $(filter WNT,$(OS)), \
|
|
|
|
unopkg \
|
|
|
|
unopkg_com \
|
|
|
|
) \
|
|
|
|
) \
|
2014-10-28 16:11:00 -05:00
|
|
|
$(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 \
|
2020-07-08 09:47:41 -05:00
|
|
|
soffice_safe \
|
2014-10-28 16:11:00 -05:00
|
|
|
unoinfo \
|
2021-03-22 16:13:39 -05:00
|
|
|
$(if $(filter-out AARCH64,$(CPUNAME)),twain32shim) \
|
2014-10-28 16:11:00 -05:00
|
|
|
) \
|
|
|
|
))
|
|
|
|
|
2014-10-28 17:35:21 -05:00
|
|
|
$(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 \
|
|
|
|
) \
|
|
|
|
))
|
|
|
|
|
2014-10-28 17:42:05 -05:00
|
|
|
$(eval $(call gb_Helper_register_executables_for_install,OOO,calc_brand, \
|
|
|
|
$(if $(filter WNT,$(OS)), \
|
|
|
|
scalc \
|
|
|
|
) \
|
|
|
|
))
|
|
|
|
|
2014-10-28 17:51:16 -05:00
|
|
|
$(eval $(call gb_Helper_register_executables_for_install,OOO,draw_brand, \
|
|
|
|
$(if $(filter WNT,$(OS)), \
|
|
|
|
sdraw \
|
|
|
|
) \
|
|
|
|
))
|
|
|
|
|
2014-10-28 17:57:21 -05:00
|
|
|
$(eval $(call gb_Helper_register_executables_for_install,OOO,impress_brand, \
|
|
|
|
$(if $(filter WNT,$(OS)), \
|
|
|
|
simpress \
|
|
|
|
) \
|
|
|
|
))
|
|
|
|
|
2014-10-28 18:02:58 -05:00
|
|
|
$(eval $(call gb_Helper_register_executables_for_install,OOO,math_brand, \
|
|
|
|
$(if $(filter WNT,$(OS)), \
|
|
|
|
smath \
|
|
|
|
) \
|
|
|
|
))
|
|
|
|
|
2014-10-28 18:11:29 -05:00
|
|
|
$(eval $(call gb_Helper_register_executables_for_install,OOO,writer_brand, \
|
|
|
|
$(if $(filter WNT,$(OS)), \
|
|
|
|
sweb \
|
|
|
|
swriter \
|
|
|
|
) \
|
|
|
|
))
|
|
|
|
|
2013-06-14 05:48:20 -05:00
|
|
|
$(eval $(call gb_Helper_register_executables_for_install,OOO,ooo, \
|
2013-06-15 15:52:39 -05:00
|
|
|
gengal \
|
2014-11-06 07:11:35 -06:00
|
|
|
$(if $(filter WNT,$(OS)),,uri-encode) \
|
2014-10-30 16:57:06 -05:00
|
|
|
$(if $(filter WNT,$(OS)), \
|
|
|
|
senddoc \
|
|
|
|
) \
|
2019-04-22 14:23:44 -05:00
|
|
|
$(if $(filter OPENCL,$(BUILD_TYPE)),opencltest) \
|
2013-06-14 05:48:20 -05:00
|
|
|
))
|
|
|
|
|
2014-10-30 16:57:06 -05:00
|
|
|
ifeq ($(OS),WNT)
|
|
|
|
$(eval $(call gb_Helper_register_executables_for_install,OOO,quickstart, \
|
|
|
|
quickstart \
|
|
|
|
))
|
|
|
|
endif
|
|
|
|
|
2014-10-28 16:40:39 -05:00
|
|
|
$(eval $(call gb_Helper_register_executables_for_install,OOO,python, \
|
|
|
|
$(if $(filter WNT,$(OS)), \
|
|
|
|
python \
|
|
|
|
) \
|
|
|
|
))
|
|
|
|
|
2019-03-06 21:06:35 -06:00
|
|
|
ifneq ($(ENABLE_POPPLER),)
|
2014-10-28 16:32:40 -05:00
|
|
|
$(eval $(call gb_Helper_register_executables_for_install,OOO,pdfimport, \
|
|
|
|
xpdfimport \
|
|
|
|
))
|
|
|
|
endif
|
|
|
|
|
2013-06-09 17:48:31 -05:00
|
|
|
$(eval $(call gb_Helper_register_executables_for_install,UREBIN,ure,\
|
2018-08-05 17:22:39 -05:00
|
|
|
$(if $(and $(ENABLE_JAVA),$(filter-out HAIKU MACOSX WNT,$(OS)),$(filter DESKTOP,$(BUILD_TYPE))),javaldx) \
|
2022-01-07 23:47:02 -06:00
|
|
|
$(call gb_CondExeRegistryTools, \
|
2021-12-20 19:44:53 -06:00
|
|
|
regview \
|
|
|
|
) \
|
2022-01-07 23:46:13 -06:00
|
|
|
$(call gb_CondExeUno,uno) \
|
2011-12-23 05:21:19 -06:00
|
|
|
))
|
|
|
|
|
2013-06-09 17:48:31 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,base, \
|
2013-06-10 17:59:27 -05:00
|
|
|
abp \
|
|
|
|
dbp \
|
|
|
|
dbu \
|
2013-06-04 11:41:12 -05:00
|
|
|
))
|
|
|
|
|
2013-06-10 17:20:14 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,calc, \
|
|
|
|
analysis \
|
2014-04-17 15:51:04 -05:00
|
|
|
$(call gb_Helper_optional,DBCONNECTIVITY,calc) \
|
2013-06-10 17:20:14 -05:00
|
|
|
date \
|
|
|
|
pricing \
|
|
|
|
sc \
|
|
|
|
scd \
|
|
|
|
scfilt \
|
2014-05-29 03:26:28 -05:00
|
|
|
wpftcalc \
|
2017-11-18 09:13:51 -06:00
|
|
|
solver \
|
2014-10-21 15:21:37 -05:00
|
|
|
$(call gb_Helper_optional,SCRIPTING,vbaobj) \
|
2013-06-10 17:20:14 -05:00
|
|
|
))
|
|
|
|
|
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 \
|
|
|
|
))
|
|
|
|
|
2013-06-09 17:48:31 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,graphicfilter, \
|
2013-06-10 17:59:27 -05:00
|
|
|
svgfilter \
|
|
|
|
wpftdraw \
|
|
|
|
graphicfilter \
|
2013-05-08 12:24:57 -05:00
|
|
|
))
|
|
|
|
|
2013-06-09 17:48:31 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,impress, \
|
2013-06-10 17:59:27 -05:00
|
|
|
animcore \
|
2013-10-05 16:07:24 -05:00
|
|
|
PresentationMinimizer \
|
2013-10-30 02:56:06 -05:00
|
|
|
wpftimpress \
|
2013-06-06 13:27:41 -05:00
|
|
|
))
|
|
|
|
|
2013-06-09 17:48:31 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,onlineupdate, \
|
2013-11-21 10:31:37 -06:00
|
|
|
$(if $(ENABLE_ONLINE_UPDATE), \
|
|
|
|
updatecheckui \
|
|
|
|
updchk \
|
|
|
|
) \
|
2013-05-12 17:53:17 -05:00
|
|
|
))
|
|
|
|
|
2013-06-09 17:48:31 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,gnome, \
|
2013-06-10 17:59:27 -05:00
|
|
|
$(if $(ENABLE_EVOAB2),evoab) \
|
|
|
|
$(if $(ENABLE_GIO),losessioninstall) \
|
|
|
|
$(if $(ENABLE_GIO),ucpgio1) \
|
2013-05-07 09:44:32 -05:00
|
|
|
))
|
|
|
|
|
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) \
|
|
|
|
))
|
|
|
|
|
2022-01-03 03:33:27 -06:00
|
|
|
gb_haiku_or_kde := $(if $(filter HAIKU,$(OS)),haiku,kde)
|
|
|
|
|
2013-06-09 17:48:31 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,kde, \
|
2022-01-03 03:33:27 -06:00
|
|
|
$(if $(ENABLE_KF5),kf5be1) \
|
2013-05-04 09:45:32 -05:00
|
|
|
))
|
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
|
|
|
|
2022-01-03 03:33:27 -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) \
|
2023-06-22 01:48:05 -05:00
|
|
|
$(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) \
|
|
|
|
))
|
|
|
|
|
2022-01-03 03:33:27 -06:00
|
|
|
$(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
|
|
|
))
|
2018-05-05 08:31:52 -05:00
|
|
|
|
2013-06-09 17:48:31 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,math, \
|
2013-06-10 17:59:27 -05:00
|
|
|
sm \
|
|
|
|
smd \
|
2013-05-27 17:13:14 -05:00
|
|
|
))
|
|
|
|
|
2014-07-20 12:55:40 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ogltrans, \
|
|
|
|
OGLTrans \
|
|
|
|
))
|
|
|
|
|
2022-12-28 05:47:26 -06:00
|
|
|
ifeq ($(OS),EMSCRIPTEN)
|
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \
|
|
|
|
lo-bootstrap \
|
|
|
|
))
|
|
|
|
endif
|
|
|
|
|
2021-04-30 10:26:41 -05:00
|
|
|
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
|
|
|
|
|
2013-06-09 17:48:31 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \
|
2021-05-17 18:11:41 -05:00
|
|
|
avmedia \
|
2023-11-10 12:09:11 -06:00
|
|
|
$(if $(ENABLE_CURL),LanguageTool) \
|
2021-05-17 18:11:41 -05:00
|
|
|
$(call gb_Helper_optional,AVMEDIA, \
|
2014-06-13 09:38:15 -05:00
|
|
|
$(if $(filter MACOSX,$(OS)),\
|
2014-11-04 04:57:14 -06:00
|
|
|
avmediaMacAVF \
|
2014-06-13 09:38:15 -05:00
|
|
|
) \
|
2021-05-17 18:11:41 -05:00
|
|
|
) \
|
2014-10-21 15:21:37 -05:00
|
|
|
$(call gb_Helper_optional,SCRIPTING, \
|
|
|
|
basctl \
|
|
|
|
basprov \
|
|
|
|
) \
|
2013-06-10 17:59:27 -05:00
|
|
|
basegfx \
|
|
|
|
bib \
|
|
|
|
chartcore \
|
|
|
|
chartcontroller \
|
2014-12-08 01:29:28 -06:00
|
|
|
$(call gb_Helper_optional,OPENCL,clew) \
|
2014-08-11 03:42:33 -05:00
|
|
|
$(if $(filter $(OS),WNT),,cmdmail) \
|
2013-06-10 17:59:27 -05:00
|
|
|
configmgr \
|
|
|
|
ctl \
|
2019-12-31 05:35:11 -06:00
|
|
|
dba \
|
|
|
|
dbahsql \
|
2014-04-17 15:51:04 -05:00
|
|
|
$(call gb_Helper_optional,DBCONNECTIVITY, \
|
|
|
|
dbase \
|
2019-12-31 05:35:11 -06:00
|
|
|
dbaxml) \
|
2016-12-17 09:47:10 -06:00
|
|
|
dbtools \
|
2013-06-10 17:59:27 -05:00
|
|
|
deploymentmisc \
|
|
|
|
$(if $(filter-out MACOSX WNT,$(OS)),desktopbe1) \
|
2014-10-21 15:21:37 -05:00
|
|
|
$(call gb_Helper_optional,SCRIPTING,dlgprov) \
|
introduce docmodel comp., model::ThemeColor, use it in SvxColorItem
Added a new component docmodel, that has the document model types,
which only depend on other basic components. This is needed so the
types can be used in every relevant component - xmloff, oox, svx,
editeng,...
Introduces model::ThemeColor, which is a class used to store the
theme color data, including transformations (svx::Transformation).
For UNO use XThemeColor is added, and the implementation UnoThemeColor
which wraps svx::ThemeColor, so it can be tranported around.
Reactor all the code and tests to accomodate for this change.
Change-Id: I7ce6752cdfaf5e4d3b8e4d90314afa469dd65cfc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/144847
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2022-12-27 18:43:46 -06:00
|
|
|
docmodel \
|
2020-03-07 07:33:43 -06:00
|
|
|
drawinglayercore \
|
2013-06-10 17:59:27 -05:00
|
|
|
drawinglayer \
|
|
|
|
editeng \
|
2024-02-21 08:10:38 -06:00
|
|
|
$(if $(filter EMSCRIPTEN,$(OS)),$(if $(ENABLE_DBGUTIL),embindtest)) \
|
2017-03-14 04:59:12 -05:00
|
|
|
$(if $(filter WNT,$(OS)),emser) \
|
2013-06-10 17:59:27 -05:00
|
|
|
evtatt \
|
2014-04-17 15:51:04 -05:00
|
|
|
$(call gb_Helper_optional,DBCONNECTIVITY, \
|
|
|
|
flat \
|
|
|
|
file) \
|
2013-04-15 06:36:02 -05:00
|
|
|
filterconfig \
|
2013-06-11 15:43:23 -05:00
|
|
|
fps_office \
|
2013-06-10 17:59:27 -05:00
|
|
|
for \
|
|
|
|
forui \
|
|
|
|
frm \
|
|
|
|
fsstorage \
|
|
|
|
fwk \
|
2021-05-24 07:12:18 -05:00
|
|
|
$(call gb_Helper_optionals_or,HELPTOOLS XMLHELP,helplinker) \
|
2013-06-10 17:59:27 -05:00
|
|
|
i18npool \
|
2013-06-11 15:43:23 -05:00
|
|
|
i18nsearch \
|
2013-08-18 16:41:12 -05:00
|
|
|
$(if $(ENABLE_JAVA),jdbc) \
|
2022-03-14 04:04:17 -05:00
|
|
|
$(if $(filter WNT,$(OS)),jumplist) \
|
2019-01-08 03:53:51 -06:00
|
|
|
$(if $(ENABLE_LDAP),ldapbe2) \
|
2018-04-28 01:16:15 -05:00
|
|
|
$(if $(filter WNT,$(OS)),WinUserInfoBe) \
|
2013-06-10 17:59:27 -05:00
|
|
|
localebe1 \
|
2013-06-11 15:43:23 -05:00
|
|
|
log \
|
2013-06-10 17:59:27 -05:00
|
|
|
lng \
|
2013-06-13 09:32:09 -05:00
|
|
|
$(if $(filter $(OS),MACOSX),macbe1) \
|
2013-06-10 17:59:27 -05:00
|
|
|
$(if $(MERGELIBS),merged) \
|
2013-06-11 17:37:26 -05:00
|
|
|
migrationoo2 \
|
|
|
|
migrationoo3 \
|
2021-02-04 06:41:54 -06:00
|
|
|
mozbootstrap \
|
2013-06-10 17:59:27 -05:00
|
|
|
msfilter \
|
2014-10-21 15:21:37 -05:00
|
|
|
$(call gb_Helper_optional,SCRIPTING,msforms) \
|
2013-06-10 17:59:27 -05:00
|
|
|
mtfrenderer \
|
2018-11-23 10:49:54 -06:00
|
|
|
$(call gb_Helper_optional,DBCONNECTIVITY,mysql_jdbc) \
|
2019-03-05 09:28:55 -06:00
|
|
|
$(call gb_Helper_optional,MARIADBC,$(call gb_Helper_optional,DBCONNECTIVITY,mysqlc)) \
|
2018-02-20 04:38:24 -06:00
|
|
|
numbertext \
|
2013-06-10 17:59:27 -05:00
|
|
|
odbc \
|
|
|
|
odfflatxml \
|
|
|
|
offacc \
|
2013-11-22 13:20:57 -06:00
|
|
|
oox \
|
2014-11-26 14:30:33 -06:00
|
|
|
$(call gb_Helper_optional,OPENCL,opencl) \
|
2013-06-11 15:43:23 -05:00
|
|
|
passwordcontainer \
|
2013-06-10 17:59:27 -05:00
|
|
|
pcr \
|
|
|
|
pdffilter \
|
2014-10-21 15:21:37 -05:00
|
|
|
$(call gb_Helper_optional,SCRIPTING,protocolhandler) \
|
2013-06-10 17:59:27 -05:00
|
|
|
sax \
|
|
|
|
sb \
|
2014-04-17 15:51:04 -05:00
|
|
|
$(call gb_Helper_optional,DBCONNECTIVITY,sdbt) \
|
2013-06-10 17:59:27 -05:00
|
|
|
scn \
|
|
|
|
sd \
|
|
|
|
sdd \
|
|
|
|
sfx \
|
2013-06-11 15:43:23 -05:00
|
|
|
slideshow \
|
2013-06-10 17:59:27 -05:00
|
|
|
sot \
|
2021-04-30 10:26:41 -05:00
|
|
|
$(if $(or $(DISABLE_GUI),$(ENABLE_WASM_STRIP_SPLASH)),,spl) \
|
2014-04-27 07:54:58 -05:00
|
|
|
storagefd \
|
2014-10-21 15:21:37 -05:00
|
|
|
$(call gb_Helper_optional,SCRIPTING,stringresource) \
|
2013-06-10 17:59:27 -05:00
|
|
|
svgio \
|
2017-06-09 12:55:17 -05:00
|
|
|
emfio \
|
2013-06-10 17:59:27 -05:00
|
|
|
svl \
|
|
|
|
svt \
|
|
|
|
svx \
|
|
|
|
svxcore \
|
|
|
|
sw \
|
2013-06-11 15:43:23 -05:00
|
|
|
syssh \
|
2013-06-10 17:59:27 -05:00
|
|
|
textconversiondlgs \
|
2013-06-11 17:37:26 -05:00
|
|
|
textfd \
|
2013-06-10 17:59:27 -05:00
|
|
|
tk \
|
|
|
|
tl \
|
|
|
|
ucpexpand1 \
|
2013-06-11 17:37:26 -05:00
|
|
|
ucpext \
|
2015-10-26 11:55:14 -05:00
|
|
|
ucpimage \
|
2021-07-29 05:58:32 -05:00
|
|
|
$(if $(ENABLE_LIBCMIS),ucpcmis1) \
|
2013-06-11 17:37:26 -05:00
|
|
|
ucptdoc1 \
|
2013-06-10 17:59:27 -05:00
|
|
|
unordf \
|
|
|
|
unoxml \
|
2013-06-11 17:37:26 -05:00
|
|
|
updatefeed \
|
2013-06-10 17:59:27 -05:00
|
|
|
utl \
|
|
|
|
uui \
|
2014-10-21 15:21:37 -05:00
|
|
|
$(call gb_Helper_optional,SCRIPTING, \
|
|
|
|
vbaevents \
|
|
|
|
vbahelper \
|
|
|
|
) \
|
2013-06-10 17:59:27 -05:00
|
|
|
vcl \
|
2014-04-24 07:02:23 -05:00
|
|
|
writerperfect \
|
2013-06-10 17:59:27 -05:00
|
|
|
xmlscript \
|
|
|
|
xmlfa \
|
|
|
|
xmlfd \
|
|
|
|
xo \
|
|
|
|
xof \
|
|
|
|
xsltdlg \
|
|
|
|
xsltfilter \
|
2013-06-14 04:02:19 -05:00
|
|
|
$(if $(filter $(OS),WNT), \
|
|
|
|
ado \
|
2017-03-14 04:59:12 -05:00
|
|
|
oleautobridge \
|
2013-06-14 04:02:19 -05:00
|
|
|
smplmail \
|
|
|
|
wininetbe1 \
|
|
|
|
) \
|
|
|
|
$(if $(filter $(OS),MACOSX), \
|
2013-08-22 15:59:25 -05:00
|
|
|
$(if $(ENABLE_MACOSX_SANDBOX),, \
|
|
|
|
AppleRemote \
|
|
|
|
) \
|
2013-06-14 04:02:19 -05:00
|
|
|
fps_aqua \
|
2019-03-25 07:23:38 -05:00
|
|
|
) \
|
2013-04-12 04:21:10 -05:00
|
|
|
))
|
|
|
|
|
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 \
|
gbuild: build static LO / link static executables
This allows to build a complete static LibreOffice on Linux,
except for linked externals. Since LO's static build implies
disabled dynamic loading, one must select one VCL backend to
be compiled in.
See the (large) comment in solenv/gbuild/static.mk trying to
explain, why this implementation was chosen (spoiler: seems
there is no other way) and what is actually implemented.
This will collect all libraries, statics and externals of
executables. If the executable uses components, it will get
linked to all static components. While it works with any
Executable, it just makes sense for soffice.bin, because the
static component map sucks every dependency in, bloating most
other binaries.
In theory on could generate the dependencies based on the list
of used components (see gb_CppunitTest_use_components), then
generate a specific static constructor map, directly include it
in the exe's cxx code and then link the minimal dependencies.
The static LO should build on Linux with:
--enable-customtarget-components
--disable-dynamic-loading
Tested VCL plugin config is:
--disable-gtk3
--disable-gen
--enable-qt5
The partial build support is split into a 2nd patch.
Change-Id: Iafc95752fae9e88095f54a21f1e30a4f080815e2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126790
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2021-05-21 08:41:15 -05:00
|
|
|
$(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 \
|
gbuild: build static LO / link static executables
This allows to build a complete static LibreOffice on Linux,
except for linked externals. Since LO's static build implies
disabled dynamic loading, one must select one VCL backend to
be compiled in.
See the (large) comment in solenv/gbuild/static.mk trying to
explain, why this implementation was chosen (spoiler: seems
there is no other way) and what is actually implemented.
This will collect all libraries, statics and externals of
executables. If the executable uses components, it will get
linked to all static components. While it works with any
Executable, it just makes sense for soffice.bin, because the
static component map sucks every dependency in, bloating most
other binaries.
In theory on could generate the dependencies based on the list
of used components (see gb_CppunitTest_use_components), then
generate a specific static constructor map, directly include it
in the exe's cxx code and then link the minimal dependencies.
The static LO should build on Linux with:
--enable-customtarget-components
--disable-dynamic-loading
Tested VCL plugin config is:
--disable-gtk3
--disable-gen
--enable-qt5
The partial build support is split into a 2nd patch.
Change-Id: Iafc95752fae9e88095f54a21f1e30a4f080815e2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126790
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2021-05-21 08:41:15 -05:00
|
|
|
$(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) \
|
|
|
|
))
|
|
|
|
|
2014-07-20 13:04:15 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,postgresqlsdbc, \
|
2014-08-14 17:39:14 -05:00
|
|
|
$(if $(BUILD_POSTGRESQL_SDBC), \
|
|
|
|
postgresql-sdbc \
|
|
|
|
postgresql-sdbc-impl) \
|
2014-07-20 13:04:15 -05:00
|
|
|
))
|
|
|
|
|
2017-01-09 07:49:38 -06:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,firebirdsdbc, \
|
|
|
|
$(if $(ENABLE_FIREBIRD_SDBC),firebird_sdbc) \
|
|
|
|
))
|
|
|
|
|
2015-04-28 11:13:08 -05:00
|
|
|
ifneq ($(ENABLE_PDFIMPORT),)
|
2014-07-20 12:51:50 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,pdfimport, \
|
|
|
|
pdfimport \
|
|
|
|
))
|
2015-04-28 11:13:08 -05:00
|
|
|
endif
|
2014-07-20 12:51:50 -05:00
|
|
|
|
2014-07-20 13:15:54 -05:00
|
|
|
$(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) \
|
|
|
|
))
|
|
|
|
|
2014-06-13 09:43:10 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,reportbuilder, \
|
|
|
|
rpt \
|
|
|
|
rptui \
|
|
|
|
rptxml \
|
|
|
|
))
|
|
|
|
|
2013-06-09 17:48:31 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,writer, \
|
2013-04-12 04:21:10 -05:00
|
|
|
hwp \
|
2013-04-23 08:18:34 -05:00
|
|
|
$(if $(ENABLE_LWP),lwpft) \
|
2013-04-12 04:21:10 -05:00
|
|
|
msword \
|
|
|
|
swd \
|
|
|
|
t602filter \
|
2014-10-21 15:21:37 -05:00
|
|
|
$(call gb_Helper_optional,SCRIPTING,vbaswobj) \
|
2013-04-12 04:21:10 -05:00
|
|
|
wpftwriter \
|
2024-04-10 10:50:51 -05:00
|
|
|
sw_writerfilter \
|
2017-07-17 01:02:54 -05:00
|
|
|
$(call gb_Helper_optional,DBCONNECTIVITY,writer) \
|
2013-02-15 13:40:28 -06:00
|
|
|
))
|
2013-02-25 08:43:37 -06:00
|
|
|
|
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 \
|
|
|
|
))
|
|
|
|
|
2015-04-15 16:41:45 -05:00
|
|
|
# cli_cppuhelper is NONE even though it is actually in URE because it is CliNativeLibrary
|
2013-09-18 14:01:14 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries,PLAINLIBS_NONE, \
|
2013-10-21 17:32:12 -05:00
|
|
|
smoketest \
|
2013-09-18 14:01:14 -05:00
|
|
|
subsequenttest \
|
2013-10-21 17:32:12 -05:00
|
|
|
test \
|
2016-08-29 15:53:24 -05:00
|
|
|
test-setupvcl \
|
2013-09-18 14:01:14 -05:00
|
|
|
testtools_cppobj \
|
|
|
|
testtools_bridgetest \
|
2016-09-14 08:52:04 -05:00
|
|
|
testtools_bridgetest-common \
|
2013-09-18 14:01:14 -05:00
|
|
|
testtools_constructors \
|
2013-10-21 17:32:12 -05:00
|
|
|
unobootstrapprotector \
|
|
|
|
unoexceptionprotector \
|
|
|
|
unotest \
|
2014-06-04 01:45:54 -05:00
|
|
|
vclbootstrapprotector \
|
2013-07-08 17:08:30 -05:00
|
|
|
scqahelper \
|
2020-07-30 14:18:46 -05:00
|
|
|
swqahelper \
|
2016-12-02 08:07:40 -06:00
|
|
|
wpftqahelper \
|
2019-06-22 08:09:39 -05:00
|
|
|
precompiled_system \
|
2024-06-12 10:55:42 -05:00
|
|
|
$(if $(ENABLE_CLI),$(if $(filter MSC,$(COM)),cli_cppuhelper)) \
|
2015-04-15 16:41:45 -05:00
|
|
|
$(if $(filter $(OS),ANDROID),lo-bootstrap) \
|
|
|
|
$(if $(filter $(OS),MACOSX),OOoSpotlightImporter) \
|
2013-04-26 04:08:49 -05:00
|
|
|
))
|
|
|
|
|
2013-06-09 17:48:31 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_URE,ure, \
|
2013-09-16 16:35:26 -05:00
|
|
|
affine_uno_uno \
|
2024-06-12 10:55:42 -05:00
|
|
|
$(if $(ENABLE_CLI),\
|
|
|
|
$(if $(filter MSC,$(COM)),$(if $(filter-out AARCH64_TRUE,$(CPUNAME)_$(CROSS_COMPILING)),cli_uno)) \
|
|
|
|
) \
|
Move i18nlangtag lib to URELIB
...as stoc/Library_javavm.mk depends on it since
9b09a217c79e8a35fc4de54c89ef49fbf8f72752 "Resolves: #i86470# Wrong Java locale
when using 'nl' and 'fr'". The i18nlangtag lib in turn depends on libs from
external/liblangtag and external/icu, so those needed to be moved to URELIB,
too.
On Windows, the external icu package was already split into icu and icu_ure
(because "libxml2 is in URE and depends on icuuc*.dll on Windows"), so use that
splitting on all platforms. (However, the corresponding changes that were
necessary in RepositoryExternal.mk suggest that they had been missing for the
split Windows case until now, and things had happened to work by accident?)
On macOS, a library's install name reflects its (URELIB, OOO, ...) layer, and in
external/icu/icu4c-build.patch there is only a single place to set that for all
libs from external/icu. This patch changes that from OOO to URELIB, but for the
icui18n lib that should stay at OOO. The hack to make it URELIB nonetheless
works for now. To clean this up again, either the whole of icu could go into
URE (dropping the icu vs. icu_ure package split completely), or the macOS layers
URELIB and OOO could be combined into one (as the libs end up in the same
directory anyway).
Change-Id: Idc262fa41481d06ba2cae86ad7629cdccb392c07
Reviewed-on: https://gerrit.libreoffice.org/30272
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2016-10-25 09:46:35 -05:00
|
|
|
i18nlangtag \
|
2024-09-02 15:29:15 -05:00
|
|
|
$(if $(ENABLE_DOTNET), \
|
|
|
|
net_bootstrap \
|
|
|
|
net_uno \
|
|
|
|
) \
|
2014-02-06 09:53:17 -06:00
|
|
|
$(if $(ENABLE_JAVA), \
|
|
|
|
java_uno \
|
|
|
|
jpipe \
|
|
|
|
$(if $(filter $(OS),WNT),jpipx) \
|
|
|
|
juh \
|
|
|
|
juhx \
|
|
|
|
) \
|
2013-09-16 16:35:26 -05:00
|
|
|
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, \
|
2021-04-23 06:45:05 -05:00
|
|
|
$(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
|
|
|
|
2013-08-27 06:58:52 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,PRIVATELIBS_URE,ure, \
|
2013-04-17 04:40:37 -05:00
|
|
|
binaryurp \
|
|
|
|
bootstrap \
|
|
|
|
introspection \
|
|
|
|
invocadapt \
|
|
|
|
invocation \
|
2013-11-04 09:06:32 -06:00
|
|
|
io \
|
2013-08-18 16:41:12 -05:00
|
|
|
$(if $(ENABLE_JAVA),javaloader) \
|
|
|
|
$(if $(ENABLE_JAVA),javavm) \
|
2013-08-27 06:58:52 -05:00
|
|
|
$(if $(ENABLE_JAVA),jvmaccess) \
|
|
|
|
$(if $(ENABLE_JAVA),jvmfwk) \
|
2013-04-17 04:40:37 -05:00
|
|
|
namingservice \
|
|
|
|
proxyfac \
|
|
|
|
reflection \
|
2013-08-27 06:58:52 -05:00
|
|
|
reg \
|
2013-04-17 04:40:37 -05:00
|
|
|
stocservices \
|
2013-08-27 06:58:52 -05:00
|
|
|
store \
|
|
|
|
unoidl \
|
2013-04-17 04:40:37 -05:00
|
|
|
uuresolver \
|
2013-08-27 06:58:52 -05:00
|
|
|
xmlreader \
|
2013-04-17 04:40:37 -05:00
|
|
|
))
|
|
|
|
|
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, \
|
2022-01-07 23:47:02 -06:00
|
|
|
$(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
|
|
|
))
|
|
|
|
|
2021-04-30 10:26:41 -05:00
|
|
|
ifneq ($(ENABLE_WASM_STRIP_ACCESSIBILITY),TRUE)
|
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo, \
|
|
|
|
$(if $(filter WNT,$(OS)), \
|
|
|
|
winaccessibility \
|
|
|
|
) \
|
|
|
|
))
|
|
|
|
endif
|
|
|
|
|
2013-06-09 17:48:31 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo, \
|
2021-05-17 18:11:41 -05:00
|
|
|
$(call gb_Helper_optional,AVMEDIA, \
|
|
|
|
$(if $(ENABLE_GSTREAMER_1_0),avmediagst) \
|
2022-02-10 06:55:18 -06:00
|
|
|
$(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) \
|
2021-05-17 18:11:41 -05:00
|
|
|
$(if $(filter WNT,$(OS)),avmediawin) \
|
|
|
|
) \
|
2013-06-11 15:43:23 -05:00
|
|
|
cached1 \
|
2013-04-17 04:55:28 -05:00
|
|
|
comphelper \
|
2014-04-17 15:51:04 -05:00
|
|
|
$(call gb_Helper_optional,DBCONNECTIVITY,dbpool2) \
|
2015-11-25 17:15:27 -06:00
|
|
|
$(call gb_Helper_optional,BREAKPAD,crashreport) \
|
2013-04-10 06:32:44 -05:00
|
|
|
deployment \
|
2013-06-11 17:37:26 -05:00
|
|
|
deploymentgui \
|
|
|
|
embobj \
|
2018-04-11 09:39:57 -05:00
|
|
|
$(if $(ENABLE_JAVA),hsqldb) \
|
2013-04-15 05:57:35 -05:00
|
|
|
i18nutil \
|
2015-09-15 08:58:51 -05:00
|
|
|
$(if $(and $(ENABLE_GTK3), $(filter LINUX %BSD SOLARIS,$(OS))), libreofficekitgtk) \
|
2022-10-20 04:55:41 -05:00
|
|
|
$(if $(and $(ENABLE_GTKTILEDVIEWER), $(filter WNT,$(OS))), libreofficekitgtk) \
|
2013-08-25 18:20:29 -05:00
|
|
|
$(if $(ENABLE_JAVA), \
|
|
|
|
$(if $(filter $(OS),MACOSX),,officebean) \
|
|
|
|
) \
|
2017-03-14 04:59:12 -05:00
|
|
|
emboleobj \
|
2013-04-15 05:57:35 -05:00
|
|
|
package2 \
|
2014-10-21 15:21:37 -05:00
|
|
|
$(call gb_Helper_optional,SCRIPTING,scriptframe) \
|
2013-06-11 15:43:23 -05:00
|
|
|
sdbc2 \
|
2013-04-15 05:57:35 -05:00
|
|
|
sofficeapp \
|
2013-06-11 17:37:26 -05:00
|
|
|
srtrs1 \
|
2013-04-15 05:57:35 -05:00
|
|
|
ucb1 \
|
2013-04-17 04:55:28 -05:00
|
|
|
ucbhelper \
|
2014-02-25 14:47:33 -06:00
|
|
|
$(if $(WITH_WEBDAV),ucpdav1) \
|
2013-04-15 05:57:35 -05:00
|
|
|
ucpfile1 \
|
2021-05-24 07:12:18 -05:00
|
|
|
$(call gb_Helper_optional,XMLHELP,ucpchelp1) \
|
2013-06-11 17:37:26 -05:00
|
|
|
ucphier1 \
|
|
|
|
ucppkg1 \
|
2022-01-07 23:47:02 -06:00
|
|
|
$(call gb_CondExeUnopkg,unopkgapp) \
|
2013-06-11 17:37:26 -05:00
|
|
|
xmlsecurity \
|
2014-07-20 13:24:38 -05:00
|
|
|
xsec_xmlsec \
|
2013-04-15 05:57:35 -05:00
|
|
|
xstor \
|
2013-08-25 18:20:29 -05:00
|
|
|
$(if $(filter $(OS),MACOSX), \
|
|
|
|
macab1 \
|
|
|
|
macabdrv1 \
|
|
|
|
) \
|
2013-08-26 12:47:33 -05:00
|
|
|
$(if $(filter WNT,$(OS)), \
|
|
|
|
fps \
|
2017-03-14 04:59:12 -05:00
|
|
|
inprocserv \
|
|
|
|
UAccCOM \
|
2013-08-26 12:47:33 -05:00
|
|
|
) \
|
2013-04-15 05:57:35 -05:00
|
|
|
))
|
2014-07-20 13:24:38 -05:00
|
|
|
|
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)
|
2013-08-30 17:25:58 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,activexbinarytable, \
|
2017-03-14 04:59:12 -05:00
|
|
|
regactivex \
|
2013-08-30 17:25:58 -05:00
|
|
|
))
|
|
|
|
|
2014-08-02 13:26:26 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,activex, \
|
2017-03-14 04:59:12 -05:00
|
|
|
so_activex \
|
2014-08-02 13:26:26 -05:00
|
|
|
))
|
|
|
|
|
|
|
|
ifneq ($(BUILD_X64),)
|
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,activexwin64, \
|
2017-03-14 04:59:12 -05:00
|
|
|
so_activex_x64 \
|
2019-05-07 13:22:08 -05:00
|
|
|
))
|
|
|
|
endif
|
|
|
|
|
2019-08-29 08:56:23 -05:00
|
|
|
$(eval $(call gb_Helper_register_executables_for_install,OOO,spsuppfiles, \
|
|
|
|
spsupp_helper \
|
2014-08-02 13:26:26 -05:00
|
|
|
))
|
|
|
|
|
2019-08-29 08:56:23 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,spsuppfiles, \
|
|
|
|
$(if $(CXX_X64_BINARY),spsupp_x64) \
|
|
|
|
$(if $(CXX_X86_BINARY),spsupp_x86) \
|
2019-05-07 13:22:08 -05:00
|
|
|
))
|
|
|
|
|
2013-08-30 17:25:58 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooobinarytable, \
|
|
|
|
$(if $(WINDOWS_SDK_HOME),\
|
|
|
|
instooofiltmsi \
|
|
|
|
qslnkmsi \
|
2019-05-22 11:17:44 -05:00
|
|
|
reg_dlls \
|
2013-08-30 17:25:58 -05:00
|
|
|
reg4allmsdoc \
|
|
|
|
sdqsmsi \
|
|
|
|
sellangmsi \
|
|
|
|
sn_tools \
|
2023-12-21 07:11:59 -06:00
|
|
|
$(if $(ENABLE_ONLINE_UPDATE_MAR),install_updateservice) \
|
2013-08-30 17:25:58 -05:00
|
|
|
) \
|
|
|
|
))
|
|
|
|
|
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,winexplorerextbinarytable, \
|
|
|
|
shlxtmsi \
|
|
|
|
))
|
|
|
|
|
2014-08-02 14:12:09 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_SHLXTHDL,winexplorerext, \
|
2013-06-10 17:59:27 -05:00
|
|
|
ooofilt \
|
2014-08-02 14:12:09 -05:00
|
|
|
propertyhdl \
|
2017-06-02 08:55:31 -05:00
|
|
|
shlxthdl \
|
2014-08-02 14:12:09 -05:00
|
|
|
))
|
|
|
|
|
2017-06-02 15:47:23 -05:00
|
|
|
ifneq ($(BUILD_X64),)
|
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,winexplorerextwin64, \
|
|
|
|
$(if $(filter MSC,$(COM)),msvc_dlls) \
|
|
|
|
))
|
|
|
|
|
2014-08-02 14:12:09 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_SHLXTHDL,winexplorerextwin64, \
|
|
|
|
ooofilt_x64 \
|
|
|
|
propertyhdl_x64 \
|
2017-06-02 08:55:31 -05:00
|
|
|
shlxthdl_x64 \
|
2014-08-02 14:12:09 -05:00
|
|
|
))
|
2017-06-02 15:47:23 -05:00
|
|
|
endif # BUILD_X64
|
2014-08-02 14:12:09 -05:00
|
|
|
|
2014-08-02 13:45:39 -05:00
|
|
|
endif # WNT
|
2011-07-31 09:53:30 -05:00
|
|
|
|
2014-02-26 07:23:57 -06:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,RTVERLIBS,ure, \
|
2013-06-10 17:59:27 -05:00
|
|
|
cppuhelper \
|
|
|
|
purpenvhelper \
|
|
|
|
salhelper \
|
2010-11-11 12:01:45 -06:00
|
|
|
))
|
2010-04-17 05:41:17 -05:00
|
|
|
|
2014-02-26 07:23:57 -06:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,UNOVERLIBS,ure, \
|
2013-06-10 17:59:27 -05:00
|
|
|
cppu \
|
|
|
|
sal \
|
2010-11-11 12:01:45 -06:00
|
|
|
))
|
2010-04-17 05:41:17 -05:00
|
|
|
|
2012-04-19 05:03:37 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries,EXTENSIONLIBS, \
|
2013-12-16 04:23:54 -06:00
|
|
|
active_native \
|
2013-06-10 17:59:27 -05:00
|
|
|
passive_native \
|
2022-01-27 03:55:58 -06:00
|
|
|
crashextension \
|
2012-04-19 05:03:37 -05:00
|
|
|
))
|
|
|
|
|
2014-02-04 11:03:46 -06:00
|
|
|
ifneq ($(ENABLE_JAVA),)
|
|
|
|
$(eval $(call gb_Helper_register_jars_for_install,URE,ure, \
|
2012-08-17 04:02:49 -05:00
|
|
|
java_uno \
|
|
|
|
juh \
|
|
|
|
jurt \
|
2020-03-26 09:04:47 -05:00
|
|
|
libreoffice \
|
2012-08-17 04:02:49 -05:00
|
|
|
ridl \
|
|
|
|
unoloader \
|
|
|
|
))
|
|
|
|
|
2014-04-17 16:07:47 -05:00
|
|
|
$(eval $(call gb_Helper_register_jars_for_install,OOO,ooo, \
|
|
|
|
ScriptFramework \
|
|
|
|
ScriptProviderForJava \
|
|
|
|
commonwizards \
|
|
|
|
form \
|
|
|
|
$(if $(filter-out MACOSX,$(OS)),officebean) \
|
|
|
|
query \
|
|
|
|
report \
|
2018-04-11 09:39:57 -05:00
|
|
|
sdbc_hsqldb \
|
2014-04-17 16:07:47 -05:00
|
|
|
smoketest \
|
|
|
|
table \
|
|
|
|
unoil \
|
|
|
|
))
|
|
|
|
|
2014-04-20 17:16:48 -05:00
|
|
|
$(eval $(call gb_Helper_register_jars_for_install,OOO,reportbuilder, \
|
2014-04-17 16:33:05 -05:00
|
|
|
reportbuilder \
|
|
|
|
reportbuilderwizard \
|
|
|
|
))
|
|
|
|
|
2014-04-17 16:26:28 -05:00
|
|
|
ifneq ($(ENABLE_SCRIPTING_BEANSHELL),)
|
|
|
|
$(eval $(call gb_Helper_register_jars_for_install,OOO,extensions_bsh, \
|
|
|
|
ScriptProviderForBeanShell \
|
|
|
|
))
|
|
|
|
endif
|
|
|
|
|
2014-04-17 16:28:04 -05:00
|
|
|
ifneq ($(ENABLE_SCRIPTING_JAVASCRIPT),)
|
|
|
|
$(eval $(call gb_Helper_register_jars_for_install,OOO,extensions_rhino, \
|
|
|
|
ScriptProviderForJavaScript \
|
|
|
|
))
|
|
|
|
endif
|
|
|
|
|
2014-11-22 14:46:23 -06:00
|
|
|
ifeq (NUMBERTEXT,$(filter NUMBERTEXT,$(BUILD_TYPE)))
|
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,extensions_numbertext,\
|
|
|
|
numbertext \
|
|
|
|
))
|
|
|
|
endif
|
|
|
|
|
2012-08-17 05:43:37 -05:00
|
|
|
$(eval $(call gb_Helper_register_jars,OXT, \
|
|
|
|
EvolutionarySolver \
|
2013-12-16 04:23:54 -06:00
|
|
|
active_java \
|
2012-08-17 05:43:37 -05:00
|
|
|
mediawiki \
|
|
|
|
nlpsolver \
|
2013-03-07 04:05:57 -06:00
|
|
|
passive_java \
|
2012-08-17 05:43:37 -05:00
|
|
|
))
|
|
|
|
|
2013-05-01 08:04:48 -05:00
|
|
|
$(eval $(call gb_Helper_register_jars,NONE,\
|
2014-04-17 16:37:30 -05:00
|
|
|
ConnectivityTools \
|
2013-05-01 08:04:48 -05:00
|
|
|
HelloWorld \
|
|
|
|
Highlight \
|
|
|
|
MemoryUsage \
|
|
|
|
OOoRunner \
|
|
|
|
TestExtension \
|
|
|
|
test \
|
|
|
|
test-tools \
|
2014-02-04 11:28:46 -06:00
|
|
|
testComponent \
|
2013-05-01 08:04:48 -05:00
|
|
|
))
|
2014-02-04 11:03:46 -06:00
|
|
|
endif
|
2013-05-01 08:04:48 -05:00
|
|
|
|
2016-11-30 02:15:53 -06:00
|
|
|
# 'test_unittest' is only package delivering to workdir.
|
|
|
|
# Other packages could be potentially autoinstalled.
|
|
|
|
$(eval $(call gb_Helper_register_packages, \
|
|
|
|
test_unittest \
|
2024-06-12 10:55:42 -05:00
|
|
|
$(if $(ENABLE_CLI),cli_basetypes_copy) \
|
2016-11-30 02:15:53 -06:00
|
|
|
extras_wordbook \
|
|
|
|
instsetoo_native_setup \
|
|
|
|
$(if $(ENABLE_OOENV),instsetoo_native_ooenv) \
|
|
|
|
postprocess_registry \
|
|
|
|
readlicense_oo_readmes \
|
|
|
|
setup_native_misc \
|
2018-04-15 05:31:45 -05:00
|
|
|
sysui_share \
|
2016-11-30 02:15:53 -06:00
|
|
|
vcl_fontunxpsprint \
|
|
|
|
))
|
|
|
|
|
2016-11-28 09:42:09 -06:00
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,impress,\
|
|
|
|
sd_xml \
|
|
|
|
))
|
|
|
|
|
2016-12-20 17:08:49 -06:00
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,calc,\
|
|
|
|
sc_res_xml \
|
|
|
|
))
|
|
|
|
|
2016-12-24 07:42:54 -06:00
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,libreofficekit,\
|
2017-12-23 15:38:18 -06:00
|
|
|
$(if $(filter LINUX %BSD SOLARIS, $(OS)),libreofficekit_selectionhandles) \
|
2022-10-20 04:55:41 -05:00
|
|
|
$(if $(and $(ENABLE_GTKTILEDVIEWER), $(filter WNT,$(OS))), libreofficekit_selectionhandles) \
|
2016-12-24 07:42:54 -06:00
|
|
|
))
|
|
|
|
|
2014-02-04 13:56:25 -06:00
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,ure,\
|
2014-09-18 11:07:41 -05:00
|
|
|
instsetoo_native_setup_ure \
|
2022-01-08 06:29:00 -06:00
|
|
|
$(call gb_CondExeUno,uno_sh) \
|
2014-02-04 13:56:25 -06:00
|
|
|
ure_install \
|
2024-07-27 10:49:52 -05:00
|
|
|
$(if $(ENABLE_DOTNET),\
|
|
|
|
net_basetypes \
|
|
|
|
net_uretypes \
|
|
|
|
net_oootypes \
|
2024-09-02 14:28:46 -05:00
|
|
|
net_bridge \
|
|
|
|
net_nuget_pkg \
|
|
|
|
net_nuget_config \
|
2024-07-27 10:49:52 -05:00
|
|
|
) \
|
2014-02-04 13:56:25 -06:00
|
|
|
$(if $(ENABLE_JAVA),\
|
2015-01-23 18:43:35 -06:00
|
|
|
jvmfwk_jvmfwk3_ini \
|
2014-02-04 13:56:25 -06:00
|
|
|
jvmfwk_javavendors \
|
|
|
|
jvmfwk_jreproperties \
|
|
|
|
$(if $(filter MACOSX,$(OS)),bridges_jnilib_java_uno) \
|
|
|
|
) \
|
|
|
|
))
|
|
|
|
|
2016-12-23 14:31:18 -06:00
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,postgresqlsdbc,\
|
|
|
|
$(if $(BUILD_POSTGRESQL_SDBC),connectivity_postgresql-sdbc) \
|
|
|
|
))
|
|
|
|
|
2016-11-28 07:48:43 -06:00
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,sdk,\
|
|
|
|
odk_share_readme \
|
|
|
|
odk_share_readme_generated \
|
2024-06-12 10:55:42 -05:00
|
|
|
$(if $(ENABLE_CLI),\
|
|
|
|
$(if $(filter WNT,$(OS)),$(if $(filter-out AARCH64_TRUE,$(CPUNAME)_$(CROSS_COMPILING)),odk_cli)) \
|
|
|
|
) \
|
2016-11-28 07:48:43 -06:00
|
|
|
odk_config \
|
|
|
|
$(if $(filter WNT,$(OS)),odk_config_win) \
|
|
|
|
odk_docs \
|
|
|
|
$(if $(DOXYGEN),odk_doxygen) \
|
|
|
|
odk_examples \
|
|
|
|
odk_headers \
|
2017-06-02 13:43:53 -05:00
|
|
|
odk_headers_generated \
|
2016-11-28 07:48:43 -06:00
|
|
|
odk_html \
|
|
|
|
odk_settings \
|
|
|
|
odk_settings_generated \
|
|
|
|
$(if $(ENABLE_JAVA), \
|
|
|
|
odk_javadoc \
|
|
|
|
odk_uno_loader_classes \
|
|
|
|
) \
|
2024-02-14 09:31:55 -06:00
|
|
|
odk_scripts \
|
2016-11-28 07:48:43 -06:00
|
|
|
))
|
|
|
|
|
2021-04-30 10:26:41 -05:00
|
|
|
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
|
|
|
|
|
2014-03-13 13:43:27 -05:00
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,ooo,\
|
2015-02-28 15:00:24 -06:00
|
|
|
$(if $(SYSTEM_LIBEXTTEXTCAT),,libexttextcat_fingerprint) \
|
|
|
|
officecfg_misc \
|
2016-11-28 09:42:09 -06:00
|
|
|
$(if $(filter $(OS),MACOSX), \
|
|
|
|
extensions_mdibundle \
|
|
|
|
extensions_OOoSpotlightImporter \
|
|
|
|
) \
|
2016-11-25 15:42:42 -06:00
|
|
|
extras_autocorr \
|
|
|
|
extras_autotextuser \
|
|
|
|
extras_cfgsrvnolang \
|
|
|
|
extras_cfgusr \
|
|
|
|
extras_database \
|
|
|
|
extras_databasebiblio \
|
2020-04-01 03:45:40 -05:00
|
|
|
extras_gallbullets \
|
2016-11-25 15:42:42 -06:00
|
|
|
extras_gallmytheme \
|
|
|
|
extras_gallroot \
|
|
|
|
extras_gallsystem \
|
2020-07-14 08:30:42 -05:00
|
|
|
extras_gallsystemstr \
|
2015-02-28 15:00:24 -06:00
|
|
|
extras_glade \
|
|
|
|
extras_labels \
|
2016-11-25 15:42:42 -06:00
|
|
|
$(if $(filter WNT,$(OS)),extras_newfiles) \
|
|
|
|
extras_palettes \
|
2018-10-08 00:42:36 -05:00
|
|
|
extras_personas \
|
|
|
|
extras_persona_dark \
|
|
|
|
extras_persona_gray \
|
|
|
|
extras_persona_green \
|
|
|
|
extras_persona_pink \
|
|
|
|
extras_persona_sand \
|
|
|
|
extras_persona_white \
|
2024-11-26 10:33:49 -06:00
|
|
|
extras_tplpresnt \
|
2016-11-25 15:42:42 -06:00
|
|
|
extras_tplwizdesktop \
|
2023-10-13 07:46:52 -05:00
|
|
|
$(if $(WITH_TEMPLATES),\
|
|
|
|
extras_templates \
|
|
|
|
extras_tplwizbitmap \
|
|
|
|
extras_tplwizard \
|
|
|
|
) \
|
2015-02-28 15:00:24 -06:00
|
|
|
framework_dtd \
|
2016-11-28 09:42:09 -06:00
|
|
|
$(if $(filter $(OS),MACOSX),infoplist) \
|
2017-02-12 01:07:00 -06:00
|
|
|
oox_customshapes \
|
|
|
|
oox_generated \
|
2015-02-28 15:00:24 -06:00
|
|
|
package_dtd \
|
2016-12-23 23:07:05 -06:00
|
|
|
$(call gb_Helper_optional,DESKTOP,\
|
|
|
|
$(if $(filter-out WNT,$(OS)),$(if $(ENABLE_MACOSX_SANDBOX),,shell_senddoc))) \
|
2020-12-21 09:28:29 -06:00
|
|
|
$(call gb_Helper_optional,DESKTOP,$(if $(filter-out EMSCRIPTEN MACOSX WNT,$(OS)),svx_gengal)) \
|
2016-11-28 09:42:09 -06:00
|
|
|
$(if $(USING_X11),vcl_fontunxppds) \
|
|
|
|
$(if $(filter $(OS),MACOSX),vcl_osxres) \
|
2015-02-28 15:00:24 -06:00
|
|
|
xmloff_dtd \
|
|
|
|
xmlscript_dtd \
|
2021-05-24 07:12:18 -05:00
|
|
|
$(call gb_Helper_optional,XMLHELP,xmlhelp_helpxsl) \
|
2015-02-28 15:00:24 -06:00
|
|
|
$(if $(ENABLE_JAVA),\
|
|
|
|
scripting_java \
|
|
|
|
scripting_java_jars \
|
|
|
|
$(if $(ENABLE_SCRIPTING_BEANSHELL),scripting_ScriptsBeanShell) \
|
|
|
|
$(if $(ENABLE_SCRIPTING_JAVASCRIPT),scripting_ScriptsJavaScript) \
|
|
|
|
) \
|
2021-05-19 05:16:42 -05:00
|
|
|
$(call gb_Helper_optional,SCRIPTING,scripting_scriptbindinglib) \
|
2016-11-28 09:42:09 -06:00
|
|
|
$(if $(filter $(OS),MACOSX),sysui_osxicons) \
|
|
|
|
wizards_basicshare \
|
2015-02-28 15:00:24 -06:00
|
|
|
wizards_basicsrvaccess2base \
|
|
|
|
wizards_basicsrvdepot \
|
|
|
|
wizards_basicsrveuro \
|
|
|
|
wizards_basicsrvgimmicks \
|
|
|
|
wizards_basicsrvimport \
|
|
|
|
wizards_basicsrvform \
|
2020-11-06 09:16:00 -06:00
|
|
|
wizards_basicsrvscriptforge \
|
|
|
|
wizards_basicsrvsfdatabases \
|
|
|
|
wizards_basicsrvsfdialogs \
|
|
|
|
wizards_basicsrvsfdocuments \
|
2022-06-03 10:51:57 -05:00
|
|
|
wizards_basicsrvsfunittests \
|
2021-10-15 06:53:05 -05:00
|
|
|
wizards_basicsrvsfwidgets \
|
2016-11-28 09:42:09 -06:00
|
|
|
wizards_basicsrvstandard \
|
2015-02-28 15:00:24 -06:00
|
|
|
wizards_basicsrvtemplate \
|
|
|
|
wizards_basicsrvtools \
|
|
|
|
wizards_basicsrvtutorials \
|
2016-11-28 09:42:09 -06:00
|
|
|
wizards_basicusr \
|
2017-05-23 06:36:52 -05:00
|
|
|
wizards_properties \
|
|
|
|
wizards_wizardshare \
|
2020-08-02 10:10:00 -05:00
|
|
|
toolbarmode_images \
|
2019-01-22 14:12:40 -06:00
|
|
|
vcl_theme_definitions \
|
2016-02-12 08:36:55 -06:00
|
|
|
$(if $(filter WNT,$(OS)), \
|
2020-07-05 20:01:51 -05:00
|
|
|
vcl_opengl_denylist \
|
2016-02-12 08:36:55 -06:00
|
|
|
) \
|
2020-02-12 03:23:54 -06:00
|
|
|
$(if $(filter SKIA,$(BUILD_TYPE)), \
|
2020-07-05 20:01:51 -05:00
|
|
|
vcl_skia_denylist ) \
|
2023-01-23 04:28:21 -06:00
|
|
|
$(if $(DISABLE_PYTHON),, \
|
2016-02-15 15:42:17 -06:00
|
|
|
Pyuno/commonwizards \
|
|
|
|
Pyuno/fax \
|
|
|
|
Pyuno/letter \
|
|
|
|
Pyuno/agenda \
|
|
|
|
Pyuno/mailmerge \
|
2023-01-23 04:28:21 -06:00
|
|
|
) \
|
2016-02-29 06:55:45 -06:00
|
|
|
sfx2_classification \
|
2016-07-11 09:12:38 -05:00
|
|
|
$(if $(filter OPENCL,$(BUILD_TYPE)),sc_opencl_runtimetest) \
|
2018-04-20 08:28:56 -05:00
|
|
|
$(if $(ENABLE_HTMLHELP),\
|
2018-04-23 04:49:04 -05:00
|
|
|
helpcontent2_html_dynamic \
|
2018-04-20 08:28:56 -05:00
|
|
|
helpcontent2_html_media \
|
2018-05-24 03:46:43 -05:00
|
|
|
helpcontent2_html_icon-themes \
|
2018-04-20 08:28:56 -05:00
|
|
|
helpcontent2_html_static \
|
|
|
|
) \
|
2020-01-12 18:32:31 -06:00
|
|
|
resource_fonts \
|
2020-06-03 05:29:49 -05:00
|
|
|
cui \
|
2024-02-23 07:07:04 -06:00
|
|
|
$(if $(filter EMSCRIPTEN,$(OS)), \
|
|
|
|
favicon \
|
|
|
|
unoembind \
|
|
|
|
) \
|
2014-12-10 10:06:30 -06:00
|
|
|
))
|
|
|
|
|
2017-06-02 05:34:47 -05:00
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,ooo_fonts,\
|
|
|
|
extras_fonts \
|
2021-11-30 11:58:10 -06:00
|
|
|
$(if $(USING_X11)$(DISABLE_GUI)$(filter ANDROID EMSCRIPTEN,$(OS)), \
|
2019-12-06 07:46:44 -06:00
|
|
|
postprocess_fontconfig) \
|
2017-06-02 05:34:47 -05:00
|
|
|
$(call gb_Helper_optional,MORE_FONTS,\
|
2017-12-16 06:55:46 -06:00
|
|
|
fonts_alef \
|
2017-12-21 08:57:02 -06:00
|
|
|
fonts_amiri \
|
2023-07-20 09:28:06 -05:00
|
|
|
fonts_gmx \
|
2017-06-02 05:34:47 -05:00
|
|
|
fonts_caladea \
|
|
|
|
fonts_carlito \
|
2019-04-03 15:47:25 -05:00
|
|
|
$(if $(MPL_SUBSET),,fonts_culmus) \
|
2017-06-02 05:34:47 -05:00
|
|
|
fonts_dejavu \
|
|
|
|
fonts_gentium \
|
|
|
|
fonts_liberation \
|
|
|
|
fonts_liberation_narrow \
|
|
|
|
fonts_libertineg \
|
2017-12-16 06:55:46 -06:00
|
|
|
fonts_libre_hebrew \
|
2024-01-17 12:39:41 -06:00
|
|
|
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 \
|
2017-12-21 08:57:02 -06:00
|
|
|
fonts_reem \
|
|
|
|
fonts_scheherazade \
|
2024-08-28 16:03:43 -05:00
|
|
|
$(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,) \
|
2017-06-02 05:34:47 -05:00
|
|
|
) \
|
|
|
|
))
|
|
|
|
|
2017-06-01 07:32:13 -05:00
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,ooo_images,\
|
|
|
|
postprocess_images \
|
|
|
|
$(call gb_Helper_optional,HELP,helpcontent2_helpimages) \
|
|
|
|
))
|
|
|
|
|
2014-12-10 10:06:30 -06:00
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,ogltrans,\
|
2016-11-28 09:42:09 -06:00
|
|
|
sd_opengl \
|
2014-12-10 10:06:30 -06:00
|
|
|
slideshow_opengl_shader \
|
2014-03-13 13:43:27 -05:00
|
|
|
))
|
|
|
|
|
2019-03-06 21:06:35 -06:00
|
|
|
ifneq ($(ENABLE_POPPLER),)
|
2016-12-23 17:03:01 -06:00
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,pdfimport, \
|
|
|
|
sdext_pdfimport_pdf \
|
|
|
|
))
|
|
|
|
endif
|
|
|
|
|
2015-02-28 14:34:51 -06:00
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,reportbuilder,\
|
2018-04-15 05:30:53 -05:00
|
|
|
reportbuilder_templates \
|
2015-02-28 14:34:51 -06:00
|
|
|
))
|
|
|
|
|
2015-02-28 14:29:27 -06:00
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,xsltfilter,\
|
|
|
|
filter_docbook \
|
|
|
|
filter_xhtml \
|
|
|
|
filter_xslt \
|
|
|
|
))
|
|
|
|
|
2016-11-20 03:35:38 -06:00
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,brand,\
|
|
|
|
desktop_branding \
|
|
|
|
$(if $(CUSTOM_BRAND_DIR),desktop_branding_custom) \
|
2017-06-02 15:44:19 -05:00
|
|
|
$(if $(filter DESKTOP,$(BUILD_TYPE)),desktop_scripts_install) \
|
2021-05-21 08:41:15 -05:00
|
|
|
$(if $(and $(filter-out EMSCRIPTEN HAIKU MACOSX WNT,$(OS)),$(filter DESKTOP,$(BUILD_TYPE))),\
|
2018-08-26 10:22:56 -05:00
|
|
|
$(if $(DISABLE_GUI),, \
|
2017-02-18 16:49:38 -06:00
|
|
|
desktop_soffice_sh \
|
|
|
|
) \
|
|
|
|
) \
|
2016-12-02 04:31:50 -06:00
|
|
|
readlicense_oo_files \
|
2019-03-04 09:54:06 -06:00
|
|
|
readlicense_oo_license \
|
2016-12-01 15:19:04 -06:00
|
|
|
$(call gb_Helper_optional,DESKTOP,setup_native_packinfo) \
|
2024-01-02 02:51:02 -06:00
|
|
|
$(if $(ENABLE_ONLINE_UPDATE_MAR), \
|
|
|
|
update-settings_ini \
|
|
|
|
updater_ini \
|
|
|
|
) \
|
2016-11-20 03:35:38 -06:00
|
|
|
))
|
|
|
|
|
2015-09-18 07:12:08 -05:00
|
|
|
ifeq ($(USING_X11), TRUE)
|
2014-10-31 17:42:37 -05:00
|
|
|
$(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 \
|
|
|
|
))
|
2015-09-18 07:12:08 -05:00
|
|
|
endif # USING_X11=TRUE
|
2014-10-31 17:42:37 -05:00
|
|
|
|
2016-12-01 15:19:04 -06:00
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,onlineupdate,\
|
|
|
|
$(if $(ENABLE_ONLINE_UPDATE),$(if $(filter LINUX SOLARIS,$(OS)),setup_native_scripts)) \
|
|
|
|
))
|
|
|
|
|
2014-11-26 10:20:52 -06:00
|
|
|
ifneq ($(DISABLE_PYTHON),TRUE)
|
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,python, \
|
|
|
|
pyuno_pythonloader_ini \
|
2015-02-28 14:10:20 -06:00
|
|
|
pyuno_python_scripts \
|
|
|
|
$(if $(SYSTEM_PYTHON),,$(if $(filter-out WNT,$(OS)),python_shell)) \
|
|
|
|
scripting_ScriptsPython \
|
2014-11-26 10:20:52 -06:00
|
|
|
))
|
2015-02-28 14:17:04 -06:00
|
|
|
|
2015-02-28 14:02:04 -06:00
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,python_scriptprovider, \
|
2018-04-15 05:33:48 -05:00
|
|
|
scripting_scriptproviderforpython \
|
2015-02-28 14:02:04 -06:00
|
|
|
))
|
2015-02-28 14:17:04 -06:00
|
|
|
|
2021-01-18 13:14:54 -06:00
|
|
|
ifeq (LIBRELOGO,$(filter LIBRELOGO,$(BUILD_TYPE)))
|
2015-02-28 14:17:04 -06:00
|
|
|
$(eval $(call gb_Helper_register_packages_for_install,python_librelogo, \
|
|
|
|
librelogo \
|
|
|
|
librelogo_properties \
|
|
|
|
))
|
2021-01-18 13:14:54 -06:00
|
|
|
endif # LIBRELOGO
|
|
|
|
|
2015-02-28 14:17:04 -06:00
|
|
|
endif # DISABLE_PYTHON
|
2014-11-26 10:20:52 -06:00
|
|
|
|
2012-12-02 03:51:37 -06:00
|
|
|
# External executables
|
|
|
|
$(eval $(call gb_ExternalExecutable_register_executables,\
|
2012-12-29 05:56:24 -06:00
|
|
|
genbrk \
|
|
|
|
genccode \
|
|
|
|
gencmn \
|
2012-12-02 03:51:37 -06:00
|
|
|
python \
|
|
|
|
xmllint \
|
|
|
|
xsltproc \
|
|
|
|
))
|
|
|
|
|
2016-06-05 01:19:30 -05:00
|
|
|
# Resources
|
2017-06-11 14:56:30 -05:00
|
|
|
$(eval $(call gb_Helper_register_mos,\
|
2016-06-05 01:19:30 -05:00
|
|
|
acc \
|
2021-05-17 18:11:41 -05:00
|
|
|
$(call gb_Helper_optional,AVMEDIA,avmedia) \
|
2016-06-05 01:19:30 -05:00
|
|
|
$(call gb_Helper_optional,SCRIPTING,basctl) \
|
2017-06-11 14:56:30 -05:00
|
|
|
chart \
|
2016-06-05 01:19:30 -05:00
|
|
|
cnr \
|
|
|
|
cui \
|
2019-12-31 05:35:11 -06:00
|
|
|
dba \
|
2016-06-05 01:19:30 -05:00
|
|
|
dkt \
|
|
|
|
editeng \
|
2017-06-11 14:56:30 -05:00
|
|
|
flt \
|
2016-06-05 01:19:30 -05:00
|
|
|
for \
|
2017-06-11 14:56:30 -05:00
|
|
|
$(call gb_Helper_optional,DESKTOP,fps) \
|
2016-06-05 01:19:30 -05:00
|
|
|
frm \
|
2017-06-11 14:56:30 -05:00
|
|
|
fwk \
|
2019-06-27 08:35:42 -05:00
|
|
|
oox \
|
2017-06-11 14:56:30 -05:00
|
|
|
pcr \
|
2016-06-05 01:19:30 -05:00
|
|
|
rpt \
|
|
|
|
$(call gb_Helper_optional,SCRIPTING,sb) \
|
|
|
|
sc \
|
2017-06-11 14:56:30 -05:00
|
|
|
sca \
|
2017-11-18 09:13:51 -06:00
|
|
|
scc \
|
2016-06-05 01:19:30 -05:00
|
|
|
sd \
|
|
|
|
sfx \
|
2019-05-07 13:22:08 -05:00
|
|
|
shell \
|
2016-06-05 01:19:30 -05:00
|
|
|
sm \
|
|
|
|
svl \
|
|
|
|
svt \
|
|
|
|
svx \
|
|
|
|
sw \
|
|
|
|
uui \
|
|
|
|
vcl \
|
2017-06-11 14:56:30 -05:00
|
|
|
wiz \
|
|
|
|
wpt \
|
2021-04-23 03:04:29 -05:00
|
|
|
$(if $(ENABLE_NSS)$(ENABLE_OPENSSL),xsc) \
|
2016-06-05 01:19:30 -05:00
|
|
|
))
|
|
|
|
|
|
|
|
# UI configuration
|
2021-04-30 10:26:41 -05:00
|
|
|
ifneq ($(ENABLE_WASM_STRIP_DBACCESS),TRUE)
|
2016-06-05 01:19:30 -05:00
|
|
|
$(eval $(call gb_Helper_register_uiconfigs,\
|
|
|
|
$(call gb_Helper_optional,DBCONNECTIVITY,dbaccess) \
|
2021-04-30 10:26:41 -05:00
|
|
|
))
|
|
|
|
endif
|
|
|
|
|
|
|
|
$(eval $(call gb_Helper_register_uiconfigs,\
|
|
|
|
cui \
|
2016-06-05 01:19:30 -05:00
|
|
|
desktop \
|
2017-02-17 07:39:24 -06:00
|
|
|
editeng \
|
2016-06-05 01:19:30 -05:00
|
|
|
filter \
|
|
|
|
formula \
|
|
|
|
fps \
|
2018-05-04 06:59:53 -05:00
|
|
|
libreofficekit \
|
2016-06-05 01:19:30 -05:00
|
|
|
$(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 \
|
2021-04-23 03:04:29 -05:00
|
|
|
$(if $(ENABLE_NSS)$(ENABLE_OPENSSL),xmlsec) \
|
2016-06-05 01:19:30 -05:00
|
|
|
))
|
|
|
|
|
2016-10-12 16:31:15 -05:00
|
|
|
ifeq ($(gb_GBUILDSELFTEST),t)
|
2016-10-13 17:57:36 -05:00
|
|
|
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, gbuildselftestdep gbuildselftest))
|
|
|
|
$(eval $(call gb_Helper_register_executables,NONE, gbuildselftestexe))
|
2016-10-12 16:31:15 -05:00
|
|
|
endif
|
|
|
|
|
2010-04-17 05:41:17 -05:00
|
|
|
# vim: set noet sw=4 ts=4:
|