Kaydet (Commit) de7cdbc5 authored tarafından Matúš Kukan's avatar Matúš Kukan

Install coinmp and lpsolve linear solvers in parallel.

Change-Id: If07d94a2f646c8377b76fdf645e85f9491e4f061
üst 8dc394d5
...@@ -150,14 +150,15 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,base, \ ...@@ -150,14 +150,15 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,base, \
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,calc, \ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,calc, \
analysis \ analysis \
calc \ calc \
$(if $(ENABLE_COINMP),coinmpsolver) \
date \ date \
pricing \ pricing \
sc \ sc \
scd \ scd \
scfilt \ scfilt \
scui \ scui \
$(if $(MPL_SUBSET),,$(if $(ENABLE_LPSOLVE),solver)) \
$(if $(ENABLE_OPENCL),scopencl) \ $(if $(ENABLE_OPENCL),scopencl) \
$(if $(ENABLE_LPSOLVE),solver) \
$(if $(DISABLE_SCRIPTING),,vbaobj) \ $(if $(DISABLE_SCRIPTING),,vbaobj) \
$(if $(ENABLE_TELEPATHY),tubes) \ $(if $(ENABLE_TELEPATHY),tubes) \
)) ))
......
...@@ -108,6 +108,7 @@ export EBOOK_LIBS=$(gb_SPACE)@EBOOK_LIBS@ ...@@ -108,6 +108,7 @@ export EBOOK_LIBS=$(gb_SPACE)@EBOOK_LIBS@
export ENABLE_AVAHI=@ENABLE_AVAHI@ export ENABLE_AVAHI=@ENABLE_AVAHI@
export ENABLE_CAIRO_CANVAS=@ENABLE_CAIRO_CANVAS@ export ENABLE_CAIRO_CANVAS=@ENABLE_CAIRO_CANVAS@
export ENABLE_CMIS=@ENABLE_CMIS@ export ENABLE_CMIS=@ENABLE_CMIS@
export ENABLE_COINMP=@ENABLE_COINMP@
export ENABLE_CRASHDUMP=@ENABLE_CRASHDUMP@ export ENABLE_CRASHDUMP=@ENABLE_CRASHDUMP@
export ENABLE_CUPS=@ENABLE_CUPS@ export ENABLE_CUPS=@ENABLE_CUPS@
export ENABLE_CURL=@ENABLE_CURL@ export ENABLE_CURL=@ENABLE_CURL@
......
...@@ -654,6 +654,7 @@ linux-android*) ...@@ -654,6 +654,7 @@ linux-android*)
enable_lotuswordpro=no enable_lotuswordpro=no
enable_mpl_subset=yes enable_mpl_subset=yes
enable_opengl=no enable_opengl=no
enable_coinmp=no
enable_lpsolve=no enable_lpsolve=no
enable_report_builder=no enable_report_builder=no
with_theme="tango" with_theme="tango"
...@@ -7323,6 +7324,7 @@ if test $_os = iOS; then ...@@ -7323,6 +7324,7 @@ if test $_os = iOS; then
enable_mpl_subset=yes enable_mpl_subset=yes
enable_opengl=no enable_opengl=no
enable_lotuswordpro=no enable_lotuswordpro=no
enable_coinmp=no
enable_lpsolve=no enable_lpsolve=no
enable_postgresql_sdbc=no enable_postgresql_sdbc=no
enable_lotuswordpro=no enable_lotuswordpro=no
...@@ -9408,8 +9410,17 @@ dnl =================================================================== ...@@ -9408,8 +9410,17 @@ dnl ===================================================================
dnl How should we build the linear programming solver ? dnl How should we build the linear programming solver ?
dnl =================================================================== dnl ===================================================================
# Should we check for system CoinMP ? How to do that ? ENABLE_COINMP=
BUILD_TYPE="$BUILD_TYPE COINMP" AC_MSG_CHECKING([whether to build with CoinMP])
if test "$enable_coinmp" != "no"; then
ENABLE_COINMP=TRUE
AC_MSG_RESULT([yes])
# Should we check for system CoinMP ? How to do that ?
BUILD_TYPE="$BUILD_TYPE COINMP"
else
AC_MSG_RESULT([no])
fi
AC_SUBST(ENABLE_COINMP)
ENABLE_LPSOLVE= ENABLE_LPSOLVE=
AC_MSG_CHECKING([whether to build with lpsolve]) AC_MSG_CHECKING([whether to build with lpsolve])
......
...@@ -109,6 +109,9 @@ $(eval $(call gb_Rdb_add_components,services,\ ...@@ -109,6 +109,9 @@ $(eval $(call gb_Rdb_add_components,services,\
xmlscript/util/xmlscript \ xmlscript/util/xmlscript \
xmlsecurity/util/xmlsecurity \ xmlsecurity/util/xmlsecurity \
xmlsecurity/util/xsec_fw \ xmlsecurity/util/xsec_fw \
$(if $(ENABLE_COINMP), \
sccomp/source/solver/coinmpsolver \
) \
$(if $(ENABLE_LPSOLVE), \ $(if $(ENABLE_LPSOLVE), \
sccomp/source/solver/solver \ sccomp/source/solver/solver \
) \ ) \
......
# -*- 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_Library_Library,coinmpsolver))
$(eval $(call gb_Library_set_componentfile,coinmpsolver,sccomp/source/solver/coinmpsolver))
$(eval $(call gb_Library_use_sdk_api,coinmpsolver))
$(eval $(call gb_Library_use_libraries,coinmpsolver,\
comphelper \
cppu \
cppuhelper \
sal \
tl \
i18nlangtag \
$(gb_UWINAPI) \
))
$(eval $(call gb_Library_use_externals,coinmpsolver,\
boost_headers \
coinmp \
))
$(eval $(call gb_Library_add_exception_objects,coinmpsolver,\
sccomp/source/solver/solver \
))
# vim: set noet sw=4 ts=4:
...@@ -19,16 +19,13 @@ ...@@ -19,16 +19,13 @@
$(eval $(call gb_Module_Module,sccomp)) $(eval $(call gb_Module_Module,sccomp))
ifeq ($(ENABLE_LPSOLVE),TRUE)
$(eval $(call gb_Module_add_targets,sccomp,\ $(eval $(call gb_Module_add_targets,sccomp,\
Library_solver \ $(if $(ENABLE_COINMP), Library_coinmpsolver) \
$(if $(ENABLE_LPSOLVE), Library_solver) \
)) ))
$(eval $(call gb_Module_add_l10n_targets,sccomp,\ $(eval $(call gb_Module_add_l10n_targets,sccomp,\
AllLangResTarget_solver \ $(if $(ENABLE_COINMP)$(ENABLE_LPSOLVE), AllLangResTarget_solver) \
)) ))
endif
# vim: set noet sw=4 ts=4: # vim: set noet sw=4 ts=4:
<?xml version="1.0" encoding="UTF-8"?>
<!--
* 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/.
-->
<component loader="com.sun.star.loader.SharedLibrary" prefix="coinmp"
xmlns="http://openoffice.org/2010/uno-components">
<implementation name="com.sun.star.comp.Calc.CoinMPSolver">
<service name="com.sun.star.sheet.Solver"/>
</implementation>
</component>
...@@ -177,7 +177,7 @@ uno::Reference<beans::XPropertySetInfo> SAL_CALL SolverComponent::getPropertySet ...@@ -177,7 +177,7 @@ uno::Reference<beans::XPropertySetInfo> SAL_CALL SolverComponent::getPropertySet
OUString SAL_CALL SolverComponent::getComponentDescription() throw (uno::RuntimeException, std::exception) OUString SAL_CALL SolverComponent::getComponentDescription() throw (uno::RuntimeException, std::exception)
{ {
return lcl_GetResourceString( RID_SOLVER_COMPONENT ); return lcl_GetResourceString( RID_COINMP_SOLVER_COMPONENT );
} }
OUString SAL_CALL SolverComponent::getStatusDescription() throw (uno::RuntimeException, std::exception) OUString SAL_CALL SolverComponent::getStatusDescription() throw (uno::RuntimeException, std::exception)
...@@ -589,7 +589,7 @@ uno::Sequence< OUString > SolverComponent_getSupportedServiceNames() ...@@ -589,7 +589,7 @@ uno::Sequence< OUString > SolverComponent_getSupportedServiceNames()
OUString SolverComponent_getImplementationName() OUString SolverComponent_getImplementationName()
{ {
return OUString::createFromAscii( "com.sun.star.comp.Calc.Solver" ); return OUString::createFromAscii( "com.sun.star.comp.Calc.CoinMPSolver" );
} }
OUString SAL_CALL SolverComponent::getImplementationName() throw(uno::RuntimeException, std::exception) OUString SAL_CALL SolverComponent::getImplementationName() throw(uno::RuntimeException, std::exception)
...@@ -615,7 +615,7 @@ uno::Reference<uno::XInterface> SolverComponent_createInstance( const uno::Refer ...@@ -615,7 +615,7 @@ uno::Reference<uno::XInterface> SolverComponent_createInstance( const uno::Refer
extern "C" extern "C"
{ {
SAL_DLLPUBLIC_EXPORT void* SAL_CALL solver_component_getFactory( const sal_Char * pImplName, void * pServiceManager, void * /*pRegistryKey*/ ) SAL_DLLPUBLIC_EXPORT void* SAL_CALL coinmp_component_getFactory( const sal_Char * pImplName, void * pServiceManager, void * /*pRegistryKey*/ )
{ {
OUString aImplName( OUString::createFromAscii( pImplName ) ); OUString aImplName( OUString::createFromAscii( pImplName ) );
void* pRet = 0; void* pRet = 0;
......
...@@ -32,6 +32,7 @@ ...@@ -32,6 +32,7 @@
#define RID_ERROR_INFEASIBLE (SOLVER_RESOURCE_START + 8) #define RID_ERROR_INFEASIBLE (SOLVER_RESOURCE_START + 8)
#define RID_ERROR_UNBOUNDED (SOLVER_RESOURCE_START + 9) #define RID_ERROR_UNBOUNDED (SOLVER_RESOURCE_START + 9)
#define RID_ERROR_TIMEOUT (SOLVER_RESOURCE_START + 10) #define RID_ERROR_TIMEOUT (SOLVER_RESOURCE_START + 10)
#define RID_COINMP_SOLVER_COMPONENT (SOLVER_RESOURCE_START + 11)
#endif #endif
......
...@@ -24,6 +24,11 @@ String RID_SOLVER_COMPONENT ...@@ -24,6 +24,11 @@ String RID_SOLVER_COMPONENT
Text [ en-US ] = "%PRODUCTNAME Linear Solver"; Text [ en-US ] = "%PRODUCTNAME Linear Solver";
}; };
String RID_COINMP_SOLVER_COMPONENT
{
Text [ en-US ] = "%PRODUCTNAME CoinMP Linear Solver";
};
String RID_PROPERTY_NONNEGATIVE String RID_PROPERTY_NONNEGATIVE
{ {
Text [ en-US ] = "Assume variables as non-negative"; Text [ en-US ] = "Assume variables as non-negative";
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment