diff --git a/.cspell/libreoffice.txt b/.cspell/libreoffice.txt index fa7674986492..37a0622f9c56 100644 --- a/.cspell/libreoffice.txt +++ b/.cspell/libreoffice.txt @@ -48,7 +48,6 @@ libwebp libwps libzxing loplugin -lpsolve MAKEFLAGS mergelibs msgfmt diff --git a/Makefile.fetch b/Makefile.fetch index d4c1e1d8beb5..c80ddfd004d6 100644 --- a/Makefile.fetch +++ b/Makefile.fetch @@ -170,7 +170,6 @@ $(WORKDIR)/download: $(BUILDDIR)/config_$(gb_Side).mk $(SRCDIR)/download.lst $(S $(call fetch_Optional,LIBXML2,LIBXML_TARBALL) \ $(call fetch_Optional,XMLSEC,XMLSEC_TARBALL) \ $(call fetch_Optional,LIBXSLT,LIBXSLT_TARBALL) \ - $(call fetch_Optional,LPSOLVE,LPSOLVE_TARBALL) \ $(call fetch_Optional,LXML,LXML_TARBALL) \ $(call fetch_Optional,LZMA,LZMA_TARBALL) \ $(call fetch_Optional,MARIADB_CONNECTOR_C,MARIADB_CONNECTOR_C_TARBALL) \ diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk index e78741218e8f..ef9d1f014afe 100644 --- a/RepositoryExternal.mk +++ b/RepositoryExternal.mk @@ -2534,50 +2534,6 @@ endef endif # ANDROID endif # SYSTEM_LCMS2 -ifneq ($(ENABLE_LPSOLVE),) - -ifneq ($(SYSTEM_LPSOLVE),) - -define gb_LinkTarget__use_lpsolve -$(call gb_LinkTarget_add_libs,$(1),-llpsolve55) -$(call gb_LinkTarget_add_defs,$(1),\ - -DSYSTEM_LPSOLVE \ -) - -endef - -else # !SYSTEM_LPSOLVE - -define gb_LinkTarget__use_lpsolve -$(call gb_LinkTarget_use_package,$(1),lpsolve) -ifeq ($(COM),MSC) -$(call gb_LinkTarget_add_libs,$(1),\ - $(gb_UnpackedTarball_workdir)/lpsolve/lpsolve55/lpsolve55.lib \ -) -else -$(call gb_LinkTarget_add_libs,$(1),\ - -L$(gb_UnpackedTarball_workdir)/lpsolve/lpsolve55 -llpsolve55 \ -) -endif -$(call gb_LinkTarget_set_include,$(1),\ - -I$(gb_UnpackedTarball_workdir)/lpsolve \ - $$(INCLUDE) \ -) - -endef - -$(eval $(call gb_Helper_register_packages_for_install,ooo,\ - lpsolve \ -)) - -endif # SYSTEM_LPSOLVE - -else - -gb_LinkTarget__use_lpsolve := - -endif # ENABLE_LPSOLVE - ifneq ($(ENABLE_COINMP),) ifneq ($(SYSTEM_COINMP),TRUE) diff --git a/bin/checkExternalLibraries.py b/bin/checkExternalLibraries.py index 9bb1da00c06b..62815303765c 100755 --- a/bin/checkExternalLibraries.py +++ b/bin/checkExternalLibraries.py @@ -53,7 +53,6 @@ libraryNames = { "liborcus": "orcus", "ltm": "libtommath", "clucene-core": "clucene-core", - "lp_solve": "lp_solve", "hsqldb": "hsqldb", "y-crdt": "y-crdt", "sqlite": "sqlite", diff --git a/config_host.mk.in b/config_host.mk.in index 6b1c3be8abea..9e2ac1746073 100644 --- a/config_host.mk.in +++ b/config_host.mk.in @@ -94,8 +94,6 @@ export CPDB_CFLAGS=@CPDB_CFLAGS@ export CPDB_LIBS=@CPDB_LIBS@ export CPPU_ENV=@CPPU_ENV@ export CPPU_ENV_FOR_BUILD=@CPPU_ENV_FOR_BUILD@ -export COLAMD_CFLAGS=$(gb_SPACE)@COLAMD_CFLAGS@ -export COLAMD_LIBS=$(gb_SPACE)@COLAMD_LIBS@ export CPPUNIT_CFLAGS=$(gb_SPACE)@CPPUNIT_CFLAGS@ export CPPUNIT_LIBS=$(gb_SPACE)@CPPUNIT_LIBS@ export CPUNAME=@CPUNAME@ @@ -210,7 +208,6 @@ export ENABLE_HTMLHELP=@ENABLE_HTMLHELP@ export ENABLE_JAVA=@ENABLE_JAVA@ export ENABLE_JUMBO_SHEETS=@ENABLE_JUMBO_SHEETS@ export ENABLE_LDAP=@ENABLE_LDAP@ -export ENABLE_LPSOLVE=@ENABLE_LPSOLVE@ export ENABLE_LTO=@ENABLE_LTO@ export ENABLE_LWP=@ENABLE_LWP@ export ENABLE_MACOSX_SANDBOX=@ENABLE_MACOSX_SANDBOX@ @@ -669,7 +666,6 @@ SYSTEM_BOX2D=@SYSTEM_BOX2D@ SYSTEM_BZIP2=@SYSTEM_BZIP2@ SYSTEM_CAIRO=@SYSTEM_CAIRO@ SYSTEM_CLUCENE=@SYSTEM_CLUCENE@ -SYSTEM_COLAMD=@SYSTEM_COLAMD@ SYSTEM_CPPUNIT=@SYSTEM_CPPUNIT@ SYSTEM_CURL=@SYSTEM_CURL@ SYSTEM_DICTS=@SYSTEM_DICTS@ @@ -716,7 +712,6 @@ SYSTEM_LIBXML=@SYSTEM_LIBXML@ SYSTEM_LIBXML_FOR_BUILD=@SYSTEM_LIBXML_FOR_BUILD@ SYSTEM_LIBXSLT=@SYSTEM_LIBXSLT@ SYSTEM_LIBXSLT_FOR_BUILD=@SYSTEM_LIBXSLT_FOR_BUILD@ -SYSTEM_LPSOLVE=@SYSTEM_LPSOLVE@ SYSTEM_LZMA=@SYSTEM_LZMA@ SYSTEM_MD4C=@SYSTEM_MD4C@ SYSTEM_MDDS=@SYSTEM_MDDS@ diff --git a/configure.ac b/configure.ac index 5011a5050653..b152bc43c958 100644 --- a/configure.ac +++ b/configure.ac @@ -1156,7 +1156,6 @@ ios*) # iOS enable_lotuswordpro=no disable_database_connectivity_dependencies enable_coinmp=no - enable_lpsolve=no enable_extension_integration=no enable_xmlhelp=no with_ppds=no @@ -1249,7 +1248,6 @@ linux-android*) enable_mpl_subset=yes enable_cairo_canvas=no enable_coinmp=yes - enable_lpsolve=no enable_odk=no enable_python=no enable_xmlhelp=no @@ -1674,10 +1672,6 @@ libo_FUZZ_ARG_ENABLE(ext-wiki-publisher, [Enable the Wiki Publisher extension.]) ) -libo_FUZZ_ARG_ENABLE(lpsolve, - AS_HELP_STRING([--disable-lpsolve], - [Disable compilation of the lp solve solver ]) -) libo_FUZZ_ARG_ENABLE(coinmp, AS_HELP_STRING([--disable-coinmp], [Disable compilation of the CoinMP solver ]) @@ -2860,16 +2854,6 @@ AC_ARG_WITH(system-altlinuxhyph, [Use ALTLinuxhyph already on system.]),, [with_system_altlinuxhyph="$with_system_libs"]) -AC_ARG_WITH(system-lpsolve, - AS_HELP_STRING([--with-system-lpsolve], - [Use lpsolve already on system.]),, - [with_system_lpsolve="$with_system_libs"]) - -AC_ARG_WITH(system-colamd, - AS_HELP_STRING([--with-system-colamd], - [Use COLAMD already on system.]),, - [with_system_colamd="$with_system_libs"]) - AC_ARG_WITH(system-coinmp, AS_HELP_STRING([--with-system-coinmp], [Use CoinMP already on system.]),, @@ -3470,7 +3454,6 @@ if test "$enable_wasm_strip" = "yes"; then enable_gpgmepp=no enable_ldap=no enable_lotuswordpro=no - enable_lpsolve=no enable_nss=no enable_odk=no enable_online_update=no @@ -12350,64 +12333,6 @@ AC_SUBST(SYSTEM_COINMP) AC_SUBST(COINMP_CFLAGS) AC_SUBST(COINMP_LIBS) -ENABLE_LPSOLVE= -AC_MSG_CHECKING([whether to build with lpsolve]) -if test "$enable_lpsolve" != "no"; then - ENABLE_LPSOLVE=TRUE - AC_MSG_RESULT([yes]) -else - AC_MSG_RESULT([no]) -fi -AC_SUBST(ENABLE_LPSOLVE) - -if test "$ENABLE_LPSOLVE" = TRUE; then - AC_MSG_CHECKING([which lpsolve to use]) - if test "$with_system_lpsolve" = "yes"; then - AC_MSG_RESULT([external]) - SYSTEM_LPSOLVE=TRUE - AC_CHECK_HEADER(lpsolve/lp_lib.h, [], - [ AC_MSG_ERROR(lpsolve headers not found.)], []) - save_LIBS=$LIBS - # some systems need this. Like Ubuntu... - AC_CHECK_LIB(m, floor) - AC_CHECK_LIB(dl, dlopen) - AC_CHECK_LIB([lpsolve55], [make_lp], [:], - [ AC_MSG_ERROR(lpsolve library not found or too old.)], []) - LIBS=$save_LIBS - else - AC_MSG_RESULT([internal]) - SYSTEM_LPSOLVE= - BUILD_TYPE="$BUILD_TYPE LPSOLVE" - AC_MSG_CHECKING([which colamd to use]) - if test "$with_system_colamd" = "yes"; then - AC_MSG_RESULT([external]) - SYSTEM_COLAMD=TRUE - # This assumes suitesparse, which has - # /usr/lib/x86_64-linux-gnu/pkgconfig/COLAMD.pc - PKG_CHECK_MODULES([COLAMD], [COLAMD], - [], - [ - # older versions don't. Look in /usr/include/suitesparse - COLAMD_CFLAGS=-I/usr/include/suitesparse - save_CFLAGS=$CFLAGS - CFLAGS="$CFLAGS $COLAMD_CFLAGS" - AC_CHECK_HEADER(colamd.h, [], - [ AC_MSG_ERROR(colamd.h header not found.)], []) - CFLAGS=$save_CFLAGS - AC_CHECK_LIB(colamd, colamd) - COLAMD_LIBS=-lcolamd - ]) - else - AC_MSG_RESULT([internal]) - SYSTEM_COLAMD= - fi - fi -fi -AC_SUBST(SYSTEM_COLAMD) -AC_SUBST(COLAMD_CFLAGS) -AC_SUBST(COLAMD_LIBS) -AC_SUBST(SYSTEM_LPSOLVE) - dnl =================================================================== dnl Checking for libexttextcat dnl =================================================================== @@ -16077,10 +16002,6 @@ if test "$enable_mpl_subset" = "yes"; then ENABLE_OPENGL_TRANSITIONS= - if test "$enable_lpsolve" != "no" -o "x$ENABLE_LPSOLVE" = "xTRUE"; then - mpl_error_string="$mpl_error_string$newline Need to --disable-lpsolve - calc linear programming solver." - fi - if test "x$mpl_error_string" != "x"; then AC_MSG_ERROR([$mpl_error_string]) fi diff --git a/distro-configs/LibreOfficeFlatpak.conf b/distro-configs/LibreOfficeFlatpak.conf index 2b01a6d299ce..70033f615a93 100644 --- a/distro-configs/LibreOfficeFlatpak.conf +++ b/distro-configs/LibreOfficeFlatpak.conf @@ -57,7 +57,6 @@ --without-system-libwpg --without-system-libwps --without-system-libzmf ---without-system-lpsolve --without-system-mariadb --without-system-md4c --without-system-mdds diff --git a/distro-configs/LibreOfficeOssFuzz.conf b/distro-configs/LibreOfficeOssFuzz.conf index ecf1b1ba9019..4d7dfe3e2f7c 100644 --- a/distro-configs/LibreOfficeOssFuzz.conf +++ b/distro-configs/LibreOfficeOssFuzz.conf @@ -16,7 +16,6 @@ --disable-ldap --disable-libcmis --disable-librelogo ---disable-lpsolve --disable-mariadb-sdbc --disable-odk --disable-poppler diff --git a/distro-configs/LibreOfficeVanillaMacAppStore.conf b/distro-configs/LibreOfficeVanillaMacAppStore.conf index 6c96b7896005..f70dc6241571 100644 --- a/distro-configs/LibreOfficeVanillaMacAppStore.conf +++ b/distro-configs/LibreOfficeVanillaMacAppStore.conf @@ -1,6 +1,5 @@ --disable-firebird-sdbc --disable-lotuswordpro ---disable-lpsolve --disable-odk --disable-online-update --disable-pdfimport diff --git a/download.lst b/download.lst index 1da6e2f207a8..6bec529fb9f1 100644 --- a/download.lst +++ b/download.lst @@ -432,11 +432,6 @@ LIBXSLT_TARBALL := libxslt-1.1.$(LIBXSLT_VERSION_MICRO).tar.xz # three static lines # so that git cherry-pick # will not run into conflicts -LPSOLVE_SHA256SUM := 171816288f14215c69e730f7a4f1c325739873e21f946ff83884b350574e6695 -LPSOLVE_TARBALL := 26b3e95ddf3d9c077c480ea45874b3b8-lp_solve_5.5.tar.gz -# three static lines -# so that git cherry-pick -# will not run into conflicts LXML_SHA256SUM := ba96ae44888e0185281e937633a743ea90d5a196c6000f82565ebb0580012d40 LXML_TARBALL := lxml-6.1.1.tar.gz # three static lines diff --git a/external/Module_external.mk b/external/Module_external.mk index 0f4efd68b03d..ced11788f3ae 100644 --- a/external/Module_external.mk +++ b/external/Module_external.mk @@ -66,7 +66,6 @@ $(eval $(call gb_Module_add_moduledirs,external,\ $(call gb_Helper_optional,LIBWEBP,libwebp) \ $(call gb_Helper_optional,LIBXML2,libxml2) \ $(call gb_Helper_optional,LIBXSLT,libxslt) \ - $(call gb_Helper_optional,LPSOLVE,lpsolve) \ $(call gb_Helper_optional,LIBTOMMATH,libtommath) \ $(call gb_Helper_optional,LXML,lxml) \ $(call gb_Helper_optional,LZMA,lzma) \ diff --git a/external/lpsolve/0001-const-up-some-statics.patch.1 b/external/lpsolve/0001-const-up-some-statics.patch.1 deleted file mode 100644 index 7d1a8173ba66..000000000000 --- a/external/lpsolve/0001-const-up-some-statics.patch.1 +++ /dev/null @@ -1,129 +0,0 @@ -From 75ba3f247d6f0baa6dc83b7eca09ec67dabe0924 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= -Date: Tue, 22 Jul 2025 13:12:12 +0100 -Subject: [PATCH] const up some statics - ---- - lp_params.c | 26 +++++++++++++------------- - 1 file changed, 13 insertions(+), 13 deletions(-) - -diff --git a/lp_params.c b/lp_params.c -index e8fcd2e..c5de106 100644 ---- a/lp_params.c -+++ b/lp_params.c -@@ -53,13 +53,13 @@ - REAL_set_function *REAL_set_function; /* set via setREALfunction */ - } set_function; - int type; /* set via set*function */ -- struct _values *values; /* set via setvalues to a structure of _values */ -+ const struct _values *values; /* set via setvalues to a structure of _values */ - int elements; /* or via setNULLvalues if the value is shown as is */ - unsigned int basemask; - int mask; /* WRITE_ACTIVE or WRITE_COMMENTED */ - }; - --static struct _values anti_degen[] = -+static const struct _values anti_degen[] = - { - { setvalue(ANTIDEGEN_NONE) }, - { setvalue(ANTIDEGEN_FIXEDVARS) }, -@@ -74,7 +74,7 @@ - { setvalue(ANTIDEGEN_BOUNDFLIP) }, - }; - --static struct _values basiscrash[] = -+static const struct _values basiscrash[] = - { - { setvalue(CRASH_NONE) }, - /* { setvalue(CRASH_NONBASICBOUNDS) }, */ /* not yet implemented */ -@@ -82,14 +82,14 @@ - { setvalue(CRASH_LEASTDEGENERATE) }, - }; - --static struct _values bb_floorfirst[] = -+static const struct _values bb_floorfirst[] = - { - { setvalue(BRANCH_CEILING) }, - { setvalue(BRANCH_FLOOR) }, - { setvalue(BRANCH_AUTOMATIC) }, - }; - --static struct _values bb_rule[] = -+static const struct _values bb_rule[] = - { - { setvalue(NODE_FIRSTSELECT) }, - { setvalue(NODE_GAPSELECT) }, -@@ -114,7 +114,7 @@ - { setvalue(NODE_STRONGINIT) }, - }; - --static struct _values improve[] = -+static const struct _values improve[] = - { - { setvalue(IMPROVE_NONE) }, - { setvalue(IMPROVE_SOLUTION) }, -@@ -143,7 +143,7 @@ - set_mip_gap(lp, FALSE, mip_gap); - } - --static struct _values pivoting[] = -+static const struct _values pivoting[] = - { - { setvalue(PRICER_FIRSTINDEX) }, - { setvalue(PRICER_DANTZIG) }, -@@ -161,7 +161,7 @@ - { setvalue(PRICE_TRUENORMINIT) }, - }; - --static struct _values presolving[] = -+static const struct _values presolving[] = - { - { setvalue(PRESOLVE_NONE) }, - { setvalue(PRESOLVE_ROWS) }, -@@ -217,14 +217,14 @@ - set_presolve(lp, get_presolve(lp), maxloops); - } - --static struct _values print_sol[] = -+static const struct _values print_sol[] = - { - { FALSE, "0" }, - { TRUE, "1" }, - { setvalue(AUTOMATIC) }, - }; - --static struct _values scaling[] = -+static const struct _values scaling[] = - { - { setvalue(SCALE_NONE) }, - { setvalue(SCALE_EXTREME) }, -@@ -243,7 +243,7 @@ - { setvalue(SCALE_COLSONLY) }, - }; - --static struct _values simplextype[] = -+static const struct _values simplextype[] = - { - { setvalue(SIMPLEX_PRIMAL_PRIMAL) }, - { setvalue(SIMPLEX_DUAL_PRIMAL) }, -@@ -251,7 +251,7 @@ - { setvalue(SIMPLEX_DUAL_DUAL) }, - }; - --static struct _values verbose[] = -+static const struct _values verbose[] = - { - { setvalue(NEUTRAL) }, - { setvalue(CRITICAL) }, -@@ -262,7 +262,7 @@ - { setvalue(FULL) }, - }; - --static struct _functions functions[] = -+static const struct _functions functions[] = - { - /* solve options */ - { "ANTI_DEGEN", setintfunction(get_anti_degen, set_anti_degen), setvalues(anti_degen, ~0), WRITE_ACTIVE }, --- -2.49.0 - diff --git a/external/lpsolve/ExternalPackage_lpsolve.mk b/external/lpsolve/ExternalPackage_lpsolve.mk deleted file mode 100644 index 23c2c5abfa03..000000000000 --- a/external/lpsolve/ExternalPackage_lpsolve.mk +++ /dev/null @@ -1,24 +0,0 @@ -# -*- 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_ExternalPackage_ExternalPackage,lpsolve,lpsolve)) - -$(eval $(call gb_ExternalPackage_use_external_project,lpsolve,lpsolve)) - -ifneq ($(DISABLE_DYNLOADING),TRUE) -ifeq ($(OS),WNT) -$(eval $(call gb_ExternalPackage_add_file,lpsolve,$(LIBO_LIB_FOLDER)/lpsolve55.dll,lpsolve55/lpsolve55.dll)) -else ifeq ($(OS),MACOSX) -$(eval $(call gb_ExternalPackage_add_file,lpsolve,$(LIBO_LIB_FOLDER)/liblpsolve55.dylib,lpsolve55/liblpsolve55.dylib)) -else # $(OS) != WNT/MACOSX -$(eval $(call gb_ExternalPackage_add_file,lpsolve,$(LIBO_LIB_FOLDER)/liblpsolve55.so,lpsolve55/liblpsolve55.so)) -endif # $(OS) -endif # $(DISABLE_DYNLOADING) - -# vim: set noet sw=4 ts=4: diff --git a/external/lpsolve/ExternalProject_lpsolve.mk b/external/lpsolve/ExternalProject_lpsolve.mk deleted file mode 100644 index 2bd5cdacbe2a..000000000000 --- a/external/lpsolve/ExternalProject_lpsolve.mk +++ /dev/null @@ -1,37 +0,0 @@ -# -*- 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_ExternalProject_ExternalProject,lpsolve)) - -$(eval $(call gb_ExternalProject_register_targets,lpsolve,\ - build \ -)) - -ifeq ($(OS),WNT) -$(call gb_ExternalProject_get_state_target,lpsolve,build): - $(call gb_Trace_StartRange,lpsolve,EXTERNAL) - $(call gb_ExternalProject_run,build,\ - LIB="$(ILIB)" RUNTIME_FLAG="$(if $(MSVC_USE_DEBUG_RUNTIME),/MDd,/MD)" \ - cmd /c cvc6.bat \ - ,lpsolve55) - $(call gb_Trace_EndRange,lpsolve,EXTERNAL) -else # $(OS)!=WNT -$(call gb_ExternalProject_get_state_target,lpsolve,build): - $(call gb_Trace_StartRange,lpsolve,EXTERNAL) - $(call gb_ExternalProject_run,build,\ - CC="$(CC) $(call gb_ExternalProject_get_build_flags,lpsolve)" \ - SYSTEM_COLAMD=$(SYSTEM_COLAMD) \ - $(if $(filter MACOSX,$(OS)),EXTRA_LINKFLAGS='-install_name @__________________________________________________OOO/liblpsolve55.dylib') \ - sh -e $(if $(filter MACOSX,$(OS)),ccc.osx, \ - $(if $(filter TRUE,$(DISABLE_DYNLOADING)),ccc.static, \ - ccc)) \ - ,lpsolve55) - $(call gb_Trace_EndRange,lpsolve,EXTERNAL) -endif # $(OS) -# vim: set noet sw=4 ts=4: diff --git a/external/lpsolve/Makefile b/external/lpsolve/Makefile deleted file mode 100644 index e4968cf85fb6..000000000000 --- a/external/lpsolve/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- - -module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST)))) - -include $(module_directory)/../../solenv/gbuild/partial_build.mk - -# vim: set noet sw=4 ts=4: diff --git a/external/lpsolve/Module_lpsolve.mk b/external/lpsolve/Module_lpsolve.mk deleted file mode 100644 index e0094f609c7d..000000000000 --- a/external/lpsolve/Module_lpsolve.mk +++ /dev/null @@ -1,18 +0,0 @@ -# -*- 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_Module_Module,lpsolve)) - -$(eval $(call gb_Module_add_targets,lpsolve,\ - UnpackedTarball_lpsolve \ - ExternalPackage_lpsolve \ - ExternalProject_lpsolve \ -)) - -# vim: set noet sw=4 ts=4: diff --git a/external/lpsolve/README b/external/lpsolve/README deleted file mode 100644 index 95059b25cd4e..000000000000 --- a/external/lpsolve/README +++ /dev/null @@ -1 +0,0 @@ -A mixed Integer Linear Programming (MILP) solver from [https://github.com/lp-solve/lp_solve]. diff --git a/external/lpsolve/UnpackedTarball_lpsolve.mk b/external/lpsolve/UnpackedTarball_lpsolve.mk deleted file mode 100644 index 167c14862587..000000000000 --- a/external/lpsolve/UnpackedTarball_lpsolve.mk +++ /dev/null @@ -1,44 +0,0 @@ -# -*- 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_UnpackedTarball_UnpackedTarball,lpsolve)) - -$(eval $(call gb_UnpackedTarball_set_tarball,lpsolve,$(LPSOLVE_TARBALL))) - -$(eval $(call gb_UnpackedTarball_set_patchlevel,lpsolve,3)) - -# external/lpsolve/0001-const-up-some-statics.patch.1 -# upstreaming attempt as: -# https://github.com/lp-solve/lp_solve/pull/1 - -$(eval $(call gb_UnpackedTarball_add_patches,lpsolve,\ - external/lpsolve/0001-const-up-some-statics.patch.1 \ -)) - -ifeq ($(OS_FOR_BUILD),WNT) - -$(eval $(call gb_UnpackedTarball_set_patchflags,lpsolve,--binary)) -$(eval $(call gb_UnpackedTarball_add_patches,lpsolve,\ - external/lpsolve/lp_solve_5.5-windows.patch \ -)) - -else - -$(eval $(call gb_UnpackedTarball_add_patches,lpsolve,\ - external/lpsolve/lp_solve_5.5.patch \ - external/lpsolve/lpsolve-ubsan.patch.0 \ - external/lpsolve/system-colamd.diff \ -)) - -$(eval $(call gb_UnpackedTarball_add_file,lpsolve,lpsolve55/ccc.static,external/lpsolve/ccc.static)) - -endif -# vim: set noet sw=4 ts=4: - - diff --git a/external/lpsolve/ccc.static b/external/lpsolve/ccc.static deleted file mode 100644 index c8f070921202..000000000000 --- a/external/lpsolve/ccc.static +++ /dev/null @@ -1,20 +0,0 @@ -if [ "$SYSTEM_COLAMD" != "TRUE" ]; then - colamd_c=../colamd/colamd.c -fi -src='../lp_MDO.c ../shared/commonlib.c ../shared/mmio.c ../shared/myblas.c ../ini.c ../fortify.c $colamd_c ../lp_rlp.c ../lp_crash.c ../bfp/bfp_LUSOL/lp_LUSOL.c ../bfp/bfp_LUSOL/LUSOL/lusol.c ../lp_Hash.c ../lp_lib.c ../lp_wlp.c ../lp_matrix.c ../lp_mipbb.c ../lp_MPS.c ../lp_params.c ../lp_presolve.c ../lp_price.c ../lp_pricePSE.c ../lp_report.c ../lp_scale.c ../lp_simplex.c ../lp_SOS.c ../lp_utils.c ../yacc_read.c' -obj=`echo $src|sed -e 's/\.c/.o/g' -e 's!\([^ ]*/\)*!!g'` - -opts='-O3' - -def= - -# FIMXE: Link statically with colamd? -if test "$SYSTEM_COLAMD" = "TRUE"; then - colamd_i=$COLAMD_CFLAGS -else - colamd_i=-I../colamd -fi -$CC -I.. -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL $colamd_i -I../shared $opts $def -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine -c $src - -$AR -r liblpsolve55.a $obj -rm $obj diff --git a/external/lpsolve/lp_solve_5.5-windows.patch b/external/lpsolve/lp_solve_5.5-windows.patch deleted file mode 100644 index 16d5261c7c7f..000000000000 --- a/external/lpsolve/lp_solve_5.5-windows.patch +++ /dev/null @@ -1,60 +0,0 @@ -*** misc/lp_solve_5.5/lpsolve55/cgcc.bat Sun Jun 12 04:27:28 2005 ---- misc/build/lp_solve_5.5/lpsolve55/cgcc.bat Sun Dec 14 07:55:19 2008 -*************** -*** 7,14 **** - - set c=gcc - -! rem rc lpsolve.rc -! %c% -DINLINE=static -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd -s -O3 -shared -mno-cygwin -enable-stdcall-fixup -D_USRDLL -DWIN32 -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine %src% ..\lp_solve.def -o lpsolve55.dll - - %c% -DINLINE=static -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd -s -O3 -shared -D_USRDLL -DWIN32 -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine %src% -o liblpsolve55.so - ---- 7,14 ---- - - set c=gcc - -! windres lpsolve.rc lpsolve_res.obj -! %c% -DINLINE=static -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd -s -O3 -shared -mno-cygwin -enable-stdcall-fixup -mthreads %lpsolve_LDFLAGS% -D_USRDLL -DWIN32 -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine %src% lpsolve_res.obj ..\lp_solve.def %lpsolve_LIBS% -o lpsolve55.dll - - %c% -DINLINE=static -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd -s -O3 -shared -D_USRDLL -DWIN32 -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine %src% -o liblpsolve55.so - -*** misc/lp_solve_5.5/lpsolve55/lpsolve.rc Sun Jun 4 00:15:24 2006 ---- misc/build/lp_solve_5.5/lpsolve55/lpsolve.rc Fri Nov 23 16:34:22 2007 -*************** -*** 7,13 **** - // - // Generated from the TEXTINCLUDE 2 resource. - // -! #include "afxres.h" - - ///////////////////////////////////////////////////////////////////////////// - #undef APSTUDIO_READONLY_SYMBOLS ---- 7,13 ---- - // - // Generated from the TEXTINCLUDE 2 resource. - // -! #include "winresrc.h" - - ///////////////////////////////////////////////////////////////////////////// - #undef APSTUDIO_READONLY_SYMBOLS ---- misc/lp_solve_5.5/lpsolve55/cvc6.bat -+++ misc/build/lp_solve_5.5/lpsolve55/cvc6.bat -@@ -14,15 +14,4 @@ - set c=cl - --rc lpsolve.rc -+rc %SOLARINC% lpsolve.rc --%c% -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd /LD /MD /O1 /Zp8 /Gz -D_WINDLL -D_USRDLL -DWIN32 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine %src% lpsolve.res ..\lp_solve.def -o lpsolve55.dll -+%c% -Zi -FS -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd %SOLARINC% /LD %RUNTIME_FLAG% /O1 /Zp8 /Gz -D_WINDLL -D_USRDLL -DWIN32 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine %src% lpsolve.res ..\lp_solve.def -Felpsolve55.dll --rem /link /LINK50COMPAT -- --if exist a.obj del a.obj --%c% -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd /MT /O1 /Zp8 /Gd /c -DWIN32 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine %src% --lib *.obj /OUT:liblpsolve55.lib -- --if exist a.obj del a.obj --%c% -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd /MTd /O1 /Zp8 /Gd /c -DWIN32 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine %src% --lib *.obj /OUT:liblpsolve55d.lib -- --if exist *.obj del *.obj diff --git a/external/lpsolve/lp_solve_5.5.patch b/external/lpsolve/lp_solve_5.5.patch deleted file mode 100644 index 2b2588a9f15a..000000000000 --- a/external/lpsolve/lp_solve_5.5.patch +++ /dev/null @@ -1,95 +0,0 @@ ---- misc/build/lp_solve_5.5/lpsolve55/ccc.orig Sat Jun 11 21:27:18 2005 -+++ misc/build/lp_solve_5.5/lpsolve55/ccc Sun May 22 11:20:19 2011 -@@ -1,25 +1,42 @@ - src='../lp_MDO.c ../shared/commonlib.c ../shared/mmio.c ../shared/myblas.c ../ini.c ../fortify.c ../colamd/colamd.c ../lp_rlp.c ../lp_crash.c ../bfp/bfp_LUSOL/lp_LUSOL.c ../bfp/bfp_LUSOL/LUSOL/lusol.c ../lp_Hash.c ../lp_lib.c ../lp_wlp.c ../lp_matrix.c ../lp_mipbb.c ../lp_MPS.c ../lp_params.c ../lp_presolve.c ../lp_price.c ../lp_pricePSE.c ../lp_report.c ../lp_scale.c ../lp_simplex.c ../lp_SOS.c ../lp_utils.c ../yacc_read.c' --c=cc -+ar=$AR -+c=$CC -+ranlib=$RANLIB - - def= - so= --if [ "$PLATFORM" = "SCO_UNIX" ] --then def='-dy -K PIC -DNOLONGLONG' -- dl=-lc --else dl=-ldl -- so=y -+soprefix= -+libs= -+pic= -+ldflags= -+inline= -+if [ "$OS" = "WNT" -a "$COM" = "GCC" ]; then -+ so=dll -+ a=dll.a -+ inline=-DINLINE=static -+else -+ so=so -+ a=a -+ soprefix=lib -+ libs="-lm" -+ pic=-fpic -+ ldflags="-Wl,-Bsymbolic -Wl,-soname,liblpsolve55.$so" - fi - -+if [ "$OS" = "LINUX" ]; then -+ libs="$libs -ldl" -+fi -+ - opts='-O3' - --$c -s -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd $opts $def -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src -+$c -s $inline -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd $opts $def -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src --ar rv liblpsolve55.a `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'` --ranlib liblpsolve55.a -+$ar rv liblpsolve55.$a `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'` -+$ranlib liblpsolve55.$a - - if [ "$so" != "" ] - then -- $c -fpic -s -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd -I. $opts -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src -- $c -shared -Wl,-Bsymbolic -Wl,-soname,liblpsolve55.so -o liblpsolve55.so `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'` -lc -lm -ldl -+ $c $pic -s $inline -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd -I. $opts -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src -+ $c -shared $ldflags -o ${soprefix}lpsolve55.$so `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'` $libs - fi - - rm *.o 2>/dev/null ---- misc/build/lp_solve_5.5/lpsolve55/ccc.osx.orig Thu Jun 23 22:53:08 2005 -+++ misc/build/lp_solve_5.5/lpsolve55/ccc.osx -@@ -1,23 +1,30 @@ - src='../lp_MDO.c ../shared/commonlib.c ../shared/mmio.c ../shared/myblas.c ../ini.c ../fortify.c ../colamd/colamd.c ../lp_rlp.c ../lp_crash.c ../bfp/bfp_LUSOL/lp_LUSOL.c ../bfp/bfp_LUSOL/LUSOL/lusol.c ../lp_Hash.c ../lp_lib.c ../lp_wlp.c ../lp_matrix.c ../lp_mipbb.c ../lp_MPS.c ../lp_params.c ../lp_presolve.c ../lp_price.c ../lp_pricePSE.c ../lp_report.c ../lp_scale.c ../lp_simplex.c ../lp_SOS.c ../lp_utils.c ../yacc_read.c' --c=cc -+c=$CC - -+if test -n "$verbose"; then -+ set -x -+fi -+ - def= - so= -+# EXTRA_LINKFLAGS is set in the ExternalProject_lpsolve.mk -+extra_linkflags=$EXTRA_LINKFLAGS -+ - if [ "$PLATFORM" = "SCO_UNIX" ] - then def='-DLoadInverseLib=0 -DLoadLanguageLib=0 -D__HYPER=long' - else dl=-ldl - so=y - fi - --opts='-idirafter /usr/include/sys -O3 -DINTEGERTIME -Wno-long-double' -+opts='-idirafter /usr/include/sys -O3 -DINTEGERTIME' - --$c -s -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd $opts $def -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src -+$c -s -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd $opts $def -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src --libtool -static -o liblpsolve55.a `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'` -+$LIBTOOL -static -o liblpsolve55.a `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'` - - if [ "$so" != "" ] - then -- $c -fPIC -fno-common -s -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd -I. $opts -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src -- $c -dynamiclib liblpsolve55.a -compatibility_version 5.5.0 -current_version 5.5.0 -o liblpsolve55.dylib `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'` -lc -+ $c -fPIC -fno-common -s -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd -I. $opts -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src -+ $c $extra_linkflags -dynamiclib liblpsolve55.a -compatibility_version 5.5.0 -current_version 5.5.0 -o liblpsolve55.dylib `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'` -lc - fi - - rm *.o 2>/dev/null diff --git a/external/lpsolve/lpsolve-ubsan.patch.0 b/external/lpsolve/lpsolve-ubsan.patch.0 deleted file mode 100644 index 7a5e308c6efd..000000000000 --- a/external/lpsolve/lpsolve-ubsan.patch.0 +++ /dev/null @@ -1,22 +0,0 @@ ---- lp_presolve.c -+++ lp_presolve.c -@@ -168,7 +168,7 @@ - if(isprimal) { - if(psdata->primalundo != NULL) - mat = psdata->primalundo->tracker; -- solution = lp->full_solution + lp->presolve_undo->orig_rows; -+ solution = lp->full_solution == NULL ? NULL : lp->full_solution + lp->presolve_undo->orig_rows; - slacks = lp->full_solution; - } - else { ---- lp_pricePSE.c -+++ lp_pricePSE.c -@@ -145,7 +147,7 @@ - - /* Store the active/current pricing type */ - if(isdual == AUTOMATIC) -- isdual = (MYBOOL) lp->edgeVector[0]; -+ isdual = lp->edgeVector[0] != 0.0; - else - lp->edgeVector[0] = isdual; - diff --git a/external/lpsolve/system-colamd.diff b/external/lpsolve/system-colamd.diff deleted file mode 100644 index 80eba695f379..000000000000 --- a/external/lpsolve/system-colamd.diff +++ /dev/null @@ -1,39 +0,0 @@ -diff -urN lp_solve_5.5-old/lpsolve55/ccc lp_solve_5.5/lpsolve55/ccc ---- misc/build/lp_solve_5.5/lpsolve55/ccc 2005-06-11 21:27:18.000000000 +0200 -+++ misc/build/lp_solve_5.5/lpsolve55/ccc 2025-03-02 17:58:19.904235635 +0100 -@@ -1,4 +1,7 @@ --src='../lp_MDO.c ../shared/commonlib.c ../shared/mmio.c ../shared/myblas.c ../ini.c ../fortify.c ../colamd/colamd.c ../lp_rlp.c ../lp_crash.c ../bfp/bfp_LUSOL/lp_LUSOL.c ../bfp/bfp_LUSOL/LUSOL/lusol.c ../lp_Hash.c ../lp_lib.c ../lp_wlp.c ../lp_matrix.c ../lp_mipbb.c ../lp_MPS.c ../lp_params.c ../lp_presolve.c ../lp_price.c ../lp_pricePSE.c ../lp_report.c ../lp_scale.c ../lp_simplex.c ../lp_SOS.c ../lp_utils.c ../yacc_read.c' -+if test "$SYSTEM_COLAMD" != "TRUE"; then -+ colamd_c=../colamd/colamd.c -+fi -+src="../lp_MDO.c ../shared/commonlib.c ../shared/mmio.c ../shared/myblas.c ../ini.c ../fortify.c $colamd_c ../lp_rlp.c ../lp_crash.c ../bfp/bfp_LUSOL/lp_LUSOL.c ../bfp/bfp_LUSOL/LUSOL/lusol.c ../lp_Hash.c ../lp_lib.c ../lp_wlp.c ../lp_matrix.c ../lp_mipbb.c ../lp_MPS.c ../lp_params.c ../lp_presolve.c ../lp_price.c ../lp_pricePSE.c ../lp_report.c ../lp_scale.c ../lp_simplex.c ../lp_SOS.c ../lp_utils.c ../yacc_read.c" - ar=$AR - c=$CC - ranlib=$RANLIB -@@ -25,17 +28,24 @@ - - if [ "$OS" = "LINUX" ]; then - libs="$libs -ldl" -+ libs="$libs $COLAMD_LIBS" - fi - - opts='-O3' - --$c -s $inline -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd $opts $def -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src -+if test "$SYSTEM_COLAMD" = "TRUE"; then -+ colamd_i=$COLAMD_CFLAGS -+else -+ colamd_i=-I../colamd -+fi -+ -+$c -s $inline -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL $colamd_i $opts $def -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src - $ar rv liblpsolve55.$a `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'` - $ranlib liblpsolve55.$a - - if [ "$so" != "" ] - then -- $c $pic -s $inline -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL -I../colamd -I. $opts -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src -+ $c $pic -s $inline -c -I.. -I../shared -I../bfp -I../bfp/bfp_LUSOL -I../bfp/bfp_LUSOL/LUSOL $colamd_i -I. $opts -DYY_NEVER_INTERACTIVE -DPARSER_LP -DINVERSE_ACTIVE=INVERSE_LUSOL -DRoleIsExternalInvEngine $src - $c -shared $ldflags -o ${soprefix}lpsolve55.$so `echo $src|sed s/[.]c/.o/g|sed 's/[^ ]*\///g'` $libs - fi - diff --git a/readlicense_oo/license/license.xml b/readlicense_oo/license/license.xml index e4996dc8fb0e..fa6abbf2c1af 100644 --- a/readlicense_oo/license/license.xml +++ b/readlicense_oo/license/license.xml @@ -1483,12 +1483,6 @@ ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

-
-

lpsolve

-

The following software may be included in this product: lpsolve. Use of any of this software is governed by - the terms of the license below:

-

Jump to LGPL Version 2.1

-

lzma

liblzma is under the BSD Zero Clause License (0BSD)

diff --git a/sc/Module_sc.mk b/sc/Module_sc.mk index 2cffd84db342..3962e377c169 100644 --- a/sc/Module_sc.mk +++ b/sc/Module_sc.mk @@ -315,7 +315,7 @@ $(eval $(call gb_Module_add_uicheck_targets,sc,\ UITest_sc_styleui \ )) -ifneq ($(or $(ENABLE_LPSOLVE),$(ENABLE_COINMP)),) +ifneq ($(ENABLE_COINMP),) $(eval $(call gb_Module_add_uicheck_targets,sc,\ UITest_solver \ )) diff --git a/sc/common_unoapi_tests.mk b/sc/common_unoapi_tests.mk index 34cc34e45a71..c643672dc518 100644 --- a/sc/common_unoapi_tests.mk +++ b/sc/common_unoapi_tests.mk @@ -22,7 +22,7 @@ $(eval $(call gb_CppunitTest_use_externals,sc_$(1), \ $(eval $(call gb_Library_use_common_precompiled_header,sc_$(1))) $(eval $(call gb_CppunitTest_add_defs,sc_$(1),\ - $(if $(ENABLE_LPSOLVE), -DENABLE_LPSOLVE) \ + $(if $(ENABLE_COINMP), -DENABLE_COINMP) \ )) $(eval $(call gb_CppunitTest_add_exception_objects,sc_$(1), \ diff --git a/sc/inc/SolverSettings.hxx b/sc/inc/SolverSettings.hxx index 58edd20f30f2..da13f65addb2 100644 --- a/sc/inc/SolverSettings.hxx +++ b/sc/inc/SolverSettings.hxx @@ -38,7 +38,7 @@ enum SolverParameter SP_LO_ENGINE, // Engine name used in LO SP_MS_ENGINE, // Engine ID used in MSO SP_INTEGER, // Assume all variables are integer (0: no, 1: yes) - // LpSolve, CoinMP and SwarmSolver + // CoinMP and SwarmSolver SP_NON_NEGATIVE, // Assume non negativity (1: yes, 2: no) SP_EPSILON_LEVEL, // Epsilon level SP_LIMIT_BBDEPTH, // Branch and bound depth @@ -230,7 +230,6 @@ private: // Maps LO solver implementation names to MS engine codes std::map SolverNamesToExcelEngines = { { "com.sun.star.comp.Calc.CoinMPSolver", "2" }, // Simplex LP - { "com.sun.star.comp.Calc.LpsolveSolver", "2" }, // Simplex LP { "com.sun.star.comp.Calc.SwarmSolver", "1" }, // GRG Nonlinear { "com.sun.star.comp.Calc.NLPSolver.DEPSSolverImpl", "3" }, // DEPS { "com.sun.star.comp.Calc.NLPSolver.SCOSolverImpl", "3" } // SCO diff --git a/sc/qa/extras/scsolverobj.cxx b/sc/qa/extras/scsolverobj.cxx index 58a898e3c6b2..19268217748e 100644 --- a/sc/qa/extras/scsolverobj.cxx +++ b/sc/qa/extras/scsolverobj.cxx @@ -35,7 +35,7 @@ public: virtual void setUp() override; void testXSolverSettings(); -#ifdef ENABLE_LPSOLVE +#ifdef ENABLE_COINMP void testCellAddress(const table::CellAddress& rExpected, const uno::Any& rActual); void testCellRangeAddress(const uno::Any& rExpected, const uno::Any& rActual); #endif @@ -50,7 +50,7 @@ ScSolverSettingsObj::ScSolverSettingsObj() { } -#ifdef ENABLE_LPSOLVE +#ifdef ENABLE_COINMP void ScSolverSettingsObj::testCellAddress(const table::CellAddress& rExpected, const uno::Any& rActual) { @@ -78,7 +78,7 @@ void ScSolverSettingsObj::testCellRangeAddress(const uno::Any& rExpected, const // Creates a model using the XSolverSettings API checks if it is accessible via the API void ScSolverSettingsObj::testXSolverSettings() { -#ifdef ENABLE_LPSOLVE +#ifdef ENABLE_COINMP uno::Reference xDoc(mxComponent, uno::UNO_QUERY_THROW); uno::Reference xIndex(xDoc->getSheets(), uno::UNO_QUERY_THROW); uno::Reference xSheet(xIndex->getByIndex(0), uno::UNO_QUERY_THROW); @@ -108,7 +108,7 @@ void ScSolverSettingsObj::testXSolverSettings() xSolverModel->setConstraints(aConstraints); // Set solver engine options - xSolverModel->setEngine(u"com.sun.star.comp.Calc.LpsolveSolver"_ustr); + xSolverModel->setEngine(u"com.sun.star.comp.Calc.CoinMPSolver"_ustr); uno::Sequence aEngineOptions{ comphelper::makePropertyValue(u"Timeout"_ustr, uno::Any(static_cast(10))), comphelper::makePropertyValue(u"NonNegative"_ustr, true), @@ -120,8 +120,9 @@ void ScSolverSettingsObj::testXSolverSettings() xSolverModel->setSuppressDialog(true); xSolverModel->solve(); - // The correct solution value is 6981 (using LpsolveSolver) - CPPUNIT_ASSERT_EQUAL(static_cast(6981), xSheet->getCellByPosition(6, 6)->getValue()); + // The optimal total value for this knapsack is 6987, which fills the weight + // capacity of 1000 exactly. + CPPUNIT_ASSERT_EQUAL(static_cast(6987), xSheet->getCellByPosition(6, 6)->getValue()); // Check objective function and variable cells testCellAddress(aObjCell, xSolverModel->getObjectiveCell()); @@ -147,7 +148,7 @@ void ScSolverSettingsObj::testXSolverSettings() testCellRangeAddress(uno::Any(aRight2), aSeqConstr[1].Right); // Check solver engine options - CPPUNIT_ASSERT_EQUAL(u"com.sun.star.comp.Calc.LpsolveSolver"_ustr, xSolverModel->getEngine()); + CPPUNIT_ASSERT_EQUAL(u"com.sun.star.comp.Calc.CoinMPSolver"_ustr, xSolverModel->getEngine()); // Check solver engine options uno::Sequence aEngProps = xSolverModel->getEngineOptions(); diff --git a/sc/source/core/data/SolverSettings.cxx b/sc/source/core/data/SolverSettings.cxx index c7413bcb943e..a1ab514e8920 100644 --- a/sc/source/core/data/SolverSettings.cxx +++ b/sc/source/core/data/SolverSettings.cxx @@ -438,6 +438,11 @@ void SolverSettings::ReadEngine() m_sLOEngineName = "com.sun.star.comp.Calc.CoinMPSolver"; } + // The Lpsolve solver has been removed. A document that still names it is + // solved by CoinMP, which handles the same linear models. + if (m_sLOEngineName == "com.sun.star.comp.Calc.LpsolveSolver") + m_sLOEngineName = u"com.sun.star.comp.Calc.CoinMPSolver"_ustr; + if (SolverNamesToExcelEngines.count(m_sLOEngineName)) { // Find equivalent MS engine code diff --git a/sccomp/CppunitTest_sccomp_solver.mk b/sccomp/CppunitTest_sccomp_solver.mk index 818b27e5a0a6..f67924f32cf3 100644 --- a/sccomp/CppunitTest_sccomp_solver.mk +++ b/sccomp/CppunitTest_sccomp_solver.mk @@ -15,7 +15,6 @@ $(eval $(call gb_CppunitTest_add_exception_objects,sccomp_solver,\ $(eval $(call gb_CppunitTest_add_defs,sccomp_solver,\ $(if $(ENABLE_COINMP), -DENABLE_COINMP) \ - $(if $(ENABLE_LPSOLVE), -DENABLE_LPSOLVE) \ )) $(eval $(call gb_CppunitTest_use_libraries,sccomp_solver,\ diff --git a/sccomp/Library_solver.mk b/sccomp/Library_solver.mk index 1eeac011f2da..80b265896729 100644 --- a/sccomp/Library_solver.mk +++ b/sccomp/Library_solver.mk @@ -23,7 +23,6 @@ $(eval $(call gb_Library_set_componentfile,solver,sccomp/source/solver/solver,se $(eval $(call gb_Library_add_componentimpls,solver, \ $(if $(ENABLE_COINMP),coinmp) \ - $(if $(ENABLE_LPSOLVE),lpsolve) \ )) $(eval $(call gb_Library_use_sdk_api,solver)) @@ -44,14 +43,12 @@ $(eval $(call gb_Library_use_libraries,solver,\ $(eval $(call gb_Library_use_externals,solver,\ coinmp \ - lpsolve \ )) $(eval $(call gb_Library_add_exception_objects,solver,\ sccomp/source/solver/SwarmSolver \ sccomp/source/solver/SolverComponent \ $(if $(ENABLE_COINMP), sccomp/source/solver/CoinMPSolver) \ - $(if $(ENABLE_LPSOLVE), sccomp/source/solver/LpsolveSolver) \ )) # vim: set noet sw=4 ts=4: diff --git a/sccomp/qa/unit/solver.cxx b/sccomp/qa/unit/solver.cxx index 536df7425bb9..58967a0ea069 100644 --- a/sccomp/qa/unit/solver.cxx +++ b/sccomp/qa/unit/solver.cxx @@ -22,14 +22,8 @@ class LpSolverTest: public test::BootstrapFixture { uno::Reference m_xDocument; -#ifdef ENABLE_LPSOLVE - void testLpSolver(); -#endif #ifdef ENABLE_COINMP void testCoinMPSolver(); -#endif - -#if defined(ENABLE_LPSOLVE) || defined(ENABLE_COINMP) void testSolver(OUString const & rName); #endif @@ -38,9 +32,6 @@ public: virtual void tearDown() override; CPPUNIT_TEST_SUITE(LpSolverTest); -#ifdef ENABLE_LPSOLVE - CPPUNIT_TEST(testLpSolver); -#endif #ifdef ENABLE_COINMP CPPUNIT_TEST(testCoinMPSolver); #endif @@ -64,13 +55,6 @@ void LpSolverTest::tearDown() test::BootstrapFixture::tearDown(); } -#ifdef ENABLE_LPSOLVE -void LpSolverTest::testLpSolver() -{ - testSolver(u"com.sun.star.comp.Calc.LpsolveSolver"_ustr); -} -#endif - #ifdef ENABLE_COINMP void LpSolverTest::testCoinMPSolver() { @@ -78,7 +62,7 @@ void LpSolverTest::testCoinMPSolver() } #endif -#if defined(ENABLE_LPSOLVE) || defined(ENABLE_COINMP) +#ifdef ENABLE_COINMP void LpSolverTest::testSolver(OUString const & rName) { uno::Reference xSolver(m_xContext->getServiceManager()-> diff --git a/sccomp/source/solver/LpsolveSolver.cxx b/sccomp/source/solver/LpsolveSolver.cxx deleted file mode 100644 index cda134a3d383..000000000000 --- a/sccomp/source/solver/LpsolveSolver.cxx +++ /dev/null @@ -1,452 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/************************************************************************* - * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * Copyright 2000, 2010 Oracle and/or its affiliates. - * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * - * for a copy of the LGPLv3 License. - * - * This file incorporates work covered by the following license notice: - * - * 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 . - * - ************************************************************************/ - -#include -#include - -#undef LANGUAGE_NONE -#if defined _WIN32 -#define WINAPI __stdcall -#endif -#define LoadInverseLib FALSE -#define LoadLanguageLib FALSE -#ifdef SYSTEM_LPSOLVE -#include -#else -#include -#endif -#undef LANGUAGE_NONE - -#include "SolverComponent.hxx" -#include - -#include -#include -#include -#include -#include -#include - -namespace com::sun::star::uno { class XComponentContext; } - -using namespace com::sun::star; - -namespace { - -class LpsolveSolver : public SolverComponent -{ -public: - LpsolveSolver() {} - -private: - virtual void SAL_CALL solve() override; - virtual OUString SAL_CALL getImplementationName() override - { - return u"com.sun.star.comp.Calc.LpsolveSolver"_ustr; - } - virtual OUString SAL_CALL getComponentDescription() override - { - return SolverComponent::GetResourceString( RID_SOLVER_COMPONENT ); - } -}; - -} - -void SAL_CALL LpsolveSolver::solve() -{ - uno::Reference xModel( mxDoc, uno::UNO_QUERY_THROW ); - - maStatus.clear(); - mbSuccess = false; - - if ( mnEpsilonLevel < EPS_TIGHT || mnEpsilonLevel > EPS_BAGGY ) - { - maStatus = SolverComponent::GetResourceString( RID_ERROR_EPSILONLEVEL ); - return; - } - - xModel->lockControllers(); - - // collect variables in vector (?) - - const auto & aVariableCells = maVariables; - size_t nVariables = aVariableCells.size(); - size_t nVar = 0; - - // Store all RHS values - sal_uInt32 nConstraints = maConstraints.size(); - m_aConstrRHS.realloc(nConstraints); - - // collect all dependent cells - - ScSolverCellHashMap aCellsHash; - aCellsHash[maObjective].reserve( nVariables + 1 ); // objective function - - for (const auto& rConstr : maConstraints) - { - table::CellAddress aCellAddr = rConstr.Left; - aCellsHash[aCellAddr].reserve( nVariables + 1 ); // constraints: left hand side - - if ( rConstr.Right >>= aCellAddr ) - aCellsHash[aCellAddr].reserve( nVariables + 1 ); // constraints: right hand side - } - - // set all variables to zero - //! store old values? - //! use old values as initial values? - for ( const auto& rVarCell : aVariableCells ) - { - SolverComponent::SetValue( mxDoc, rVarCell, 0.0 ); - } - - // read initial values from all dependent cells - for ( auto& rEntry : aCellsHash ) - { - double fValue = SolverComponent::GetValue( mxDoc, rEntry.first ); - rEntry.second.push_back( fValue ); // store as first element, as-is - } - - // loop through variables - for ( const auto& rVarCell : aVariableCells ) - { - SolverComponent::SetValue( mxDoc, rVarCell, 1.0 ); // set to 1 to examine influence - - // read value change from all dependent cells - for ( auto& rEntry : aCellsHash ) - { - double fChanged = SolverComponent::GetValue( mxDoc, rEntry.first ); - double fInitial = rEntry.second.front(); - rEntry.second.push_back( fChanged - fInitial ); - } - - SolverComponent::SetValue( mxDoc, rVarCell, 2.0 ); // minimal test for linearity - - for ( const auto& rEntry : aCellsHash ) - { - double fInitial = rEntry.second.front(); - double fCoeff = rEntry.second.back(); // last appended: coefficient for this variable - double fTwo = SolverComponent::GetValue( mxDoc, rEntry.first ); - - bool bLinear = rtl::math::approxEqual( fTwo, fInitial + 2.0 * fCoeff ) || - rtl::math::approxEqual( fInitial, fTwo - 2.0 * fCoeff ); - // second comparison is needed in case fTwo is zero - if ( !bLinear ) - maStatus = SolverComponent::GetResourceString( RID_ERROR_NONLINEAR ); - } - - SolverComponent::SetValue( mxDoc, rVarCell, 0.0 ); // set back to zero for examining next variable - } - - xModel->unlockControllers(); - - if ( !maStatus.isEmpty() ) - return; - - - // build lp_solve model - - - lprec* lp = make_lp( 0, nVariables ); - if ( !lp ) - return; - - set_outputfile( lp, const_cast( "" ) ); // no output - - // set objective function - - const std::vector& rObjCoeff = aCellsHash[maObjective]; - std::unique_ptr pObjVal(new REAL[nVariables+1]); - pObjVal[0] = 0.0; // ignored - for (nVar=0; nVar>= aRightAddr ) - bRightCell = true; // cell specified as right-hand side - else - rRightAny >>= fDirectValue; // constant value - - table::CellAddress aLeftAddr = rConstr.Left; - - const std::vector& rLeftCoeff = aCellsHash[aLeftAddr]; - std::unique_ptr pValues(new REAL[nVariables+1] ); - pValues[0] = 0.0; // ignored? - for (nVar=0; nVar& rRightCoeff = aCellsHash[aRightAddr]; - // modify pValues with rhs coefficients - for (nVar=0; nVar(is_infinite(lp, pObjFrom[i]))) - pObjDecrease[i] = get_infinite(lp); - else - pObjDecrease[i] = rObjCoeff[i + 1] - pObjFrom[i]; - - // Allowed increase - if (static_cast(is_infinite(lp, pObjTill[i]))) - pObjIncrease[i] = get_infinite(lp); - else - pObjIncrease[i] = pObjTill[i] - rObjCoeff[i + 1]; - } - - // Save objective coefficients for the sensitivity report - double* pObjCoefficients(new double[nVariables]); - for (size_t i = 0; i < nVariables; i++) - pObjCoefficients[i] = rObjCoeff[i + 1]; - m_aObjCoefficients.realloc(nVariables); - std::copy_n(pObjCoefficients, nVariables, m_aObjCoefficients.getArray()); - - // The reduced costs are in pConstrDual after the constraints - double* pObjRedCost(new double[nVariables]); - for (size_t i = 0; i < nVariables; i++) - pObjRedCost[i] = pConstrDual[nConstraints + i]; - m_aObjRedCost.realloc(nVariables); - std::copy_n(pObjRedCost, nVariables, m_aObjRedCost.getArray()); - - // Final value of constraints - get_ptr_constraints(lp, &pConstrValue); - m_aConstrValue.realloc(nConstraints); - std::copy_n(pConstrValue, nConstraints, m_aConstrValue.getArray()); - - // The RHS contains information for each constraint - m_aConstrDual.realloc(nConstraints); - m_aConstrDecrease.realloc(nConstraints); - m_aConstrIncrease.realloc(nConstraints); - std::copy_n(pConstrDual, nConstraints, m_aConstrDual.getArray()); - double* pConstrDecrease = m_aConstrDecrease.getArray(); - double* pConstrIncrease = m_aConstrIncrease.getArray(); - - for (sal_uInt32 i = 0; i < nConstraints; i++) - { - // Allowed decrease - pConstrDecrease[i] = m_aConstrRHS[i] - pConstrFrom[i]; - if (static_cast(is_infinite(lp, pConstrFrom[i])) - && maConstraints[i].Operator == sheet::SolverConstraintOperator_LESS_EQUAL) - pConstrDecrease[i] = m_aConstrRHS[i] - m_aConstrValue[i]; - - // Allowed increase - pConstrIncrease[i] = pConstrTill[i] - m_aConstrRHS[i]; - if (static_cast(is_infinite(lp, pConstrTill[i])) - && maConstraints[i].Operator == sheet::SolverConstraintOperator_GREATER_EQUAL) - pConstrIncrease[i] = m_aConstrValue[i] - m_aConstrRHS[i]; - } - - // Set all values of the SensitivityReport object - m_aSensitivityReport.ObjCoefficients = m_aObjCoefficients; - m_aSensitivityReport.ObjReducedCosts = m_aObjRedCost; - m_aSensitivityReport.ObjAllowableDecreases = m_aObjDecrease; - m_aSensitivityReport.ObjAllowableIncreases = m_aObjIncrease; - m_aSensitivityReport.ConstrValues = m_aConstrValue; - m_aSensitivityReport.ConstrRHS = m_aConstrRHS; - m_aSensitivityReport.ConstrShadowPrices = m_aConstrDual; - m_aSensitivityReport.ConstrAllowableDecreases = m_aConstrDecrease; - m_aSensitivityReport.ConstrAllowableIncreases = m_aConstrIncrease; - } - } - } - else if ( nResult == INFEASIBLE ) - maStatus = SolverComponent::GetResourceString( RID_ERROR_INFEASIBLE ); - else if ( nResult == UNBOUNDED ) - maStatus = SolverComponent::GetResourceString( RID_ERROR_UNBOUNDED ); - else if ( nResult == TIMEOUT || nResult == SUBOPTIMAL ) - maStatus = SolverComponent::GetResourceString( RID_ERROR_TIMEOUT ); - // SUBOPTIMAL is assumed to be caused by a timeout, and reported as an error - - delete_lp( lp ); -} - -extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface * -com_sun_star_comp_Calc_LpsolveSolver_get_implementation( - css::uno::XComponentContext *, - css::uno::Sequence const &) -{ - return cppu::acquire(new LpsolveSolver()); -} - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sccomp/source/solver/solver.component b/sccomp/source/solver/solver.component index 496be6628486..2993ecabb8e5 100644 --- a/sccomp/source/solver/solver.component +++ b/sccomp/source/solver/solver.component @@ -13,11 +13,6 @@ - - - - diff --git a/sccomp/source/solver/solver.component.lpsolve b/sccomp/source/solver/solver.component.lpsolve deleted file mode 100644 index 3b571fbc324d..000000000000 --- a/sccomp/source/solver/solver.component.lpsolve +++ /dev/null @@ -1,7 +0,0 @@ -# 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/. - -com.sun.star.comp.Calc.LpsolveSolver diff --git a/scp2/InstallModule_calc.mk b/scp2/InstallModule_calc.mk index 0484fac3174e..f9bbce84e2ac 100644 --- a/scp2/InstallModule_calc.mk +++ b/scp2/InstallModule_calc.mk @@ -18,7 +18,7 @@ $(eval $(call gb_InstallModule_define_if_set,scp2/calc,\ ENABLE_MACOSX_SANDBOX \ )) -ifneq (,$(ENABLE_COINMP)$(ENABLE_LPSOLVE)) +ifneq (,$(ENABLE_COINMP)) $(eval $(call gb_InstallModule_add_defs,scp2/calc,\ -DWITH_LPSOLVER \ )) diff --git a/scp2/source/calc/module_calc.scp b/scp2/source/calc/module_calc.scp index dd31007bb5ca..7adc68575d3d 100644 --- a/scp2/source/calc/module_calc.scp +++ b/scp2/source/calc/module_calc.scp @@ -36,8 +36,7 @@ Module gid_Module_Prg_Calc_Bin Default = YES; Styles = (HIDDEN_ROOT); Files = (auto_calc_ALL, - gid_File_Share_Registry_Calc_Xcd, - gid_File_Lib_Lpsolve); + gid_File_Share_Registry_Calc_Xcd); End Module gid_Module_Prg_Calc_Addins diff --git a/solenv/bin/make-raspbian-root-tarball b/solenv/bin/make-raspbian-root-tarball index 71054095715b..b9b3b3b3b356 100755 --- a/solenv/bin/make-raspbian-root-tarball +++ b/solenv/bin/make-raspbian-root-tarball @@ -45,7 +45,6 @@ STAGINGDIR=`mktemp -d` find lib/*.so* \ lib/arm-linux-gnueabihf \ usr/include \ - usr/lib/liblpsolve*.a \ usr/lib/*.so* \ usr/lib/arm-linux-gnueabihf \ usr/lib/jvm/java-6-openjdk-armhf/include \ diff --git a/solenv/flatpak-external-tarballs.json.in b/solenv/flatpak-external-tarballs.json.in index ece877c14872..6c3e938ddb36 100644 --- a/solenv/flatpak-external-tarballs.json.in +++ b/solenv/flatpak-external-tarballs.json.in @@ -279,13 +279,6 @@ "dest": "external/tarballs", "dest-filename": "@ZMF_TARBALL@" }, - { - "url": "https://dev-www.libreoffice.org/src/@LPSOLVE_TARBALL@", - "sha256": "@LPSOLVE_SHA256SUM@", - "type": "file", - "dest": "external/tarballs", - "dest-filename": "@LPSOLVE_TARBALL@" - }, { "url": "https://dev-www.libreoffice.org/src/@MARIADB_CONNECTOR_C_TARBALL@", "sha256": "@MARIADB_CONNECTOR_C_SHA256SUM@",