The Lpsolve solver and the CoinMP solver are both used for the same thing: a linear model, with optional integer variables by branch and bound. CoinMP (CLP plus CBC) is the more capable and better maintained of the two, so the lp_solve one adds a second bundled dependency and a parallel copy of the solver code for no capability the other lacks. Remove the LpsolveSolver component, the bundled lp_solve external (and its colamd dependency, which only lp_solve used), and all the build, configure, packaging and license references to them. A document may still name com.sun.star.comp.Calc.LpsolveSolver as its engine. SolverSettings now reads that name as the CoinMP solver, which solves the same model, so such documents keep working. The Calc solver test that exercised the engine now uses CoinMP. Its knapsack model has a single optimal total value of 6987, which fills the weight capacity of 1000 exactly and which CoinMP finds. The lp_solve run had returned a suboptimal 6981, so the test now expects the true optimum. The build setup changes only take effect after re-running autogen. Signed-off-by: Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk> Change-Id: Ia14d8c491779873da6b0157aa524056275adf8f5 Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/3810 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins CPCI <releng@collaboraoffice.com> (cherry picked from commit e77738a7ca7d44fd9d1f852e26d46e3a6d60467b) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208038 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Pre-canned Distribution Configurations
These files are supposed to correspond to the options used when
creating the Document Foundation (or other "canonical") builds of
LibreOffice for various platforms. They are not supposed to
represent the "most useful" options for developers in general. On the
contrary, the intent is that just running ./autogen.sh without any
options at all should produce a buildable configuration for developers
with interest in working on the most commonly used parts of the code.
See https://wiki.documentfoundation.org/Development/ReleaseBuilds for how
TDF builds make use of these switches. (Especially, since --with-package-format
now triggers whether or not installation sets are built, all the relevant *.conf
files specify it, except for LibreOfficeLinux.conf, where the TDF build
instructions pass an explicit --with-package-format="rpm deb" in addition to
--with-distro=LibreOfficeLinux.)
(Possibly the above is a misunderstanding, or maybe there never even has been any clear consensus what situations these files actually are intended for.)
The files contain sets of configuration parameters, and can be passed
on the autogen.sh command line thus:
./autogen.sh --with-distro=LibreOfficeFoo
Contrary to the above, in the Android case the amount of parameters you just must use is so large, that for convenience it is always easiest to use the corresponding distro-configs file. This is a bug and needs to be fixed; also configuring for Android should ideally use sane (or the only possible) defaults and work fine without any parameters at all.