Age | Commit message (Collapse) | Author |
|
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>
|
|
Change-Id: I8a3aa7458ce97f659c0caf2386a96f605b740fbc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102543
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I7b3a22584bb2e4d501f509ffcd80929feed23a4c
Reviewed-on: https://gerrit.libreoffice.org/79360
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
Largely parallel to what we do for Writer.
Yes, there is a fair amount of duplicated code now for the outgoing
("sink") stuff in sw and sc, that should be factored out (to
vbahelper, probably).
Change-Id: I8df4a81c3b9043e8d6b0b206e3c04660205987c7
|
|
Read-only state is now read except for settings in General
Calculations (except Decimal places).
Change-Id: Ia947f6657ae5638c414bf4e82fac314b5993f4c5
Reviewed-on: https://gerrit.libreoffice.org/37546
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Eike Rathke <erack@redhat.com>
|
|
Uwinapi is discontinued.
Change-Id: I063b4d0d8fab2d60de168e960a63b8181158ac01
Reviewed-on: https://gerrit.libreoffice.org/23198
Reviewed-by: David Ostrovsky <david@ostrovsky.org>
Tested-by: David Ostrovsky <david@ostrovsky.org>
|
|
Change-Id: I250e2d8d9d7b7b806a60fb2779321685e84b44bf
Reviewed-on: https://gerrit.libreoffice.org/36144
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
For consistency with what 38cd1d9a5f00dc69ba0d60e2fe6957090c7a26d1 "clew: move
this foreign code to external/clew" did for clew.c. Library_scfilt depends on
clew/clew.h, simply make it depend on the full clew external.
Change-Id: Idcbf56a69084e108832c8970507ebea0f7ff400b
Reviewed-on: https://gerrit.libreoffice.org/24035
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
8d1a24dae03690b576310e3539369916f31ac475 "Make virtual ~ScValidationDlg
non-inline" caused the RTTI for ScValidationDlg to only be emitted in library
scui instead of (weakly) wherever needed. That causes UBSan to fail when it
uses the RTTI in ScValidityRefChildWin::ScValidityRefChildWin
(sc/source/ui/view/reffact.cxx, in library sc, to check that operations on
VclPtr<ScValidationDlg> pDlg indeed operate on an ScValidationDlg object).
The cleanest fix appears to be to move ScValidationDlg from scui to sc. As
Moggi put it on IRC, "that dialog should be in sc as it is a modeless dialog; no
idea why it works for that dialog but all other modeless calc dialogs have to be
in sc to avoid linker problems."
One remaining question is whether it is save nowadays in ScCellShell::ExecuteDB
(sc/source/ui/view/cellsh2.cxx) to clean up the ScValidationDlg pointed to by
pDlg when that VclPtr<ScValidationDlg> variable goes out of scope, instead of
doing the PostUserEvent(... DelayDeleteAbstractDialog) dance that was there
before because "after end execute from !IsModalInputMode, it is safer to delay
deleting." Lets see.
Change-Id: I3ecfd4fafc7b37b2f30e75974ece9b0a23311ef4
|
|
There is no obvious authoritative upstream for clew anyway, so it causes
philosophical problems for distros. For a while, we used to use a zip archive
from the "clcc" project on SourceForge that included clew.c and
clew.h. (Before that we also just had clew.c and clew.h in our source repo.)
So, drop the external/clcc module and have clew.c and clew.h in the source
repo again. But this time clew is in a module of its own, not in sc.
This re-introduces "No need to have OpenCL optional at configure-time"
This reverts commit 764836cb00e8e6dfd2ab48e080a166ec90359e01.
Change-Id: I413142f4f9f8399489f9c3e5327132822f07a454
Reviewed-on: https://gerrit.libreoffice.org/13368
Reviewed-by: David Tardon <dtardon@redhat.com>
Tested-by: David Tardon <dtardon@redhat.com>
|
|
Change-Id: I4183b957d59bb81b8df7a5f51418be94c879b3fe
|
|
Intermediate commit. More changes will follow: The device selection
logic needs to be moved, too. (And cleaned up.) Instead of the
separate formulacalculationoptions dialog we should simply have a
normal options page for those OpenCL-related settings that will remain
purely Calc-specific, like the formula opcode subsetting.
Change-Id: Id60d95e80d377cbbf5780beb473b221bce06b5e5
|
|
I had to fix some source files because of macro redefinitions and such stuff.
Small modules like basic have a great win, too:
make basic.clean && time make basic:
with w/o
pch pch
accessibility 23s 1m59s
basctl 30s 1m42s
basic 56s 1m35s
comphelper 23s 51s
editeng 48s 2m04s
forms 40s 1m40s
unotools 19s 38s
sd 3m37s 4m33s
Change-Id: Id24cdcddbe2ff64820b42266325c25af1355558f
Reviewed-on: https://gerrit.libreoffice.org/9293
Tested-by: LibreOffice gerrit bot <gerrit@libreoffice.org>
Reviewed-by: Thomas Arnhold <thomas@arnhold.org>
|
|
Change-Id: I32918599dca0556a61b85d868dffbb5e72541e69
|
|
Change-Id: I7e9beb3abeee42b19788980d43fb1ab5140e3e65
|
|
|
|
Moved portions from module i18npool, all of former i18nisolang1 library
that now is i18nlangtag. Included are languagetag, isolang and mslangid.
This i18nlangtag code is now even used by module comphelper, so
disentangling i18npool and making this an own module was needed to not
create circular module dependencies.
Change-Id: Ib887c3d6dde667403fd22d382310ba5f1a9b0015
|
|
- do not use gb_UnpackedTarball_copy_header_files for boost
- adapt the optimization in concat-deps.c for new path
- use boost_headers in all LinkTargets that require it
- add explicit include paths to mysqlc, mysqlcppconn, libvisio, liborcus
Change-Id: I0c43e73ed43cc9d2e6bce8faf55e992d655a0bb9
|
|
Change-Id: Ifb3ebd3c0166343f42dd53bcee83c6b31c84f081
|
|
Change-Id: I2ac196ea74185fd7f10919ad64434855c5c8b5fa
|
|
Change-Id: I4e04a1f34dd958922e9856294639de7bf40249e4
|
|
Change-Id: Ia6ef50bbb28c4d16154f8e673a4f3b3a1cef5cd5
|
|
Always link in gb_STDLIBS, except when the library explicitly opts out
with gb_LinkTarget_disable_standard_system_libs.
Change-Id: I489a99114fbfa46d0421a27cf6c7b899dc268a4a
|
|
add a new gb_LinkTarget_use_system_win32_libs to abstract different
linker options on MSVC and GCC.
Change-Id: Ic9bf2545f59bf7871e6fc06b290c486ddfbec03d
|
|
... new gb_LinkTarget_add_standard_system_libs
Change-Id: Ib2bc843098db3d8c6822b45a3d21724e67f57d69
|
|
Change-Id: I53316e0b9369d806197bccb42cf22d3497af43e7
|
|
Change-Id: I066e2716095722343603a684935f0b7b24ce08be
|
|
Change-Id: I2c21b048c24333e4d04434ff92b9d9da2efe9558
|
|
|
|
Change-Id: I97d025e468d6c90cdb780c3654706df20300429a
|
|
Change-Id: I7cf3604392b04c2fdd5070caebf9f9dc1ce178c8
|
|
Change-Id: I699c424f536b0096b35d3db3aee371793e9e56c4
|
|
This dialog is launched from the Formula options dialog.
Change-Id: I554de0f7d376803f2e94907aa78648708b8f6b84
|
|
Naming convention for gbuild methods:
- "add" is used for stuff that is logically a part of the target
(i.e. not registered at the Module, but defined in the target's makefile)
- "use" is used for stuff that is logically a different target
(i.e. it is registered at the Module, has it's own makefile, may be
in a different module than the target)
|
|
|
|
|
|
|
|
move namepast.cxx to namedlg
namedefdlg is "modeless"(only in technical sense) and needs to be in sc
while namepast is modal and needs to be in scui
move the table implementation to an own file, we can reuse it for
namepast.cxx
|
|
|
|
|
|
This reverts commit 2dea0dab4fafda3c10a5bd03ad15ed39a4658b51.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|