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>
40 lines
1017 B
Makefile
40 lines
1017 B
Makefile
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
|
|
#
|
|
# This file is part of the LibreOffice project.
|
|
#
|
|
# 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/.
|
|
#
|
|
|
|
$(eval $(call gb_InstallModule_InstallModule,scp2/calc))
|
|
|
|
$(eval $(call gb_InstallModule_use_auto_install_libs,scp2/calc,\
|
|
calc \
|
|
calc_brand \
|
|
))
|
|
|
|
$(eval $(call gb_InstallModule_define_if_set,scp2/calc,\
|
|
ENABLE_MACOSX_SANDBOX \
|
|
))
|
|
|
|
ifneq (,$(ENABLE_COINMP))
|
|
$(eval $(call gb_InstallModule_add_defs,scp2/calc,\
|
|
-DWITH_LPSOLVER \
|
|
))
|
|
endif
|
|
|
|
$(eval $(call gb_InstallModule_add_templates,scp2/calc,\
|
|
scp2/source/templates/module_langpack_calc \
|
|
))
|
|
|
|
$(eval $(call gb_InstallModule_add_scpfiles,scp2/calc,\
|
|
scp2/source/calc/file_calc \
|
|
))
|
|
|
|
$(eval $(call gb_InstallModule_add_localized_scpfiles,scp2/calc,\
|
|
scp2/source/calc/module_calc \
|
|
))
|
|
|
|
# vim: set shiftwidth=4 tabstop=4 noexpandtab:
|