[Lemon-commits] Alpar Juttner: Fix default LP/MIP setting (#479)
Lemon HG
hg at lemon.cs.elte.hu
Thu Oct 24 13:05:16 CEST 2013
details: http://lemon.cs.elte.hu/hg/lemon/rev/62dba6c90f35
changeset: 1300:62dba6c90f35
user: Alpar Juttner <alpar [at] cs.elte.hu>
date: Thu Oct 24 13:04:00 2013 +0200
description:
Fix default LP/MIP setting (#479)
diffstat:
CMakeLists.txt | 6 ++++++
lemon/lp.h | 4 +++-
test/lp_test.cc | 12 ++++++++++++
test/mip_test.cc | 12 ++++++++++++
4 files changed, 33 insertions(+), 1 deletions(-)
diffs (102 lines):
diff --git a/CMakeLists.txt b/CMakeLists.txt
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -121,6 +121,9 @@
(NOT SOPLEX_FOUND AND (LEMON_DEFAULT_LP STREQUAL "SOPLEX")))
SET(LEMON_DEFAULT_LP ${DEFAULT_LP} CACHE STRING
"Default LP solver backend (GLPK, CPLEX, CLP or SOPLEX)" FORCE)
+ELSE()
+ SET(LEMON_DEFAULT_LP ${DEFAULT_LP} CACHE STRING
+ "Default LP solver backend (GLPK, CPLEX, CLP or SOPLEX)")
ENDIF()
IF(NOT LEMON_DEFAULT_MIP OR
(NOT ILOG_FOUND AND (LEMON_DEFAULT_MIP STREQUAL "CPLEX")) OR
@@ -128,6 +131,9 @@
(NOT GLPK_FOUND AND (LEMON_DEFAULT_MIP STREQUAL "GLPK")))
SET(LEMON_DEFAULT_MIP ${DEFAULT_MIP} CACHE STRING
"Default MIP solver backend (GLPK, CPLEX or CBC)" FORCE)
+ELSE()
+ SET(LEMON_DEFAULT_MIP ${DEFAULT_MIP} CACHE STRING
+ "Default MIP solver backend (GLPK, CPLEX or CBC)")
ENDIF()
diff --git a/lemon/lp.h b/lemon/lp.h
--- a/lemon/lp.h
+++ b/lemon/lp.h
@@ -30,6 +30,8 @@
#include <lemon/soplex.h>
#elif LEMON_HAVE_CLP
#include <lemon/clp.h>
+#elif LEMON_HAVE_CBC
+#include <lemon/cbc.h>
#endif
///\file
@@ -79,7 +81,7 @@
typedef ClpLp Lp;
#endif
#if LEMON_DEFAULT_MIP == GLPK
- typedef GlpkLp Mip;
+ typedef GlpkMip Mip;
#elif LEMON_DEFAULT_MIP == CPLEX
typedef CplexMip Mip;
#elif LEMON_DEFAULT_MIP == CBC
diff --git a/test/lp_test.cc b/test/lp_test.cc
--- a/test/lp_test.cc
+++ b/test/lp_test.cc
@@ -39,6 +39,9 @@
#include <lemon/clp.h>
#endif
+#ifdef LEMON_HAVE_LP
+#include <lemon/lp.h>
+#endif
using namespace lemon;
int countCols(LpBase & lp) {
@@ -416,6 +419,15 @@
LpSkeleton lp_skel;
lpTest(lp_skel);
+#ifdef LEMON_HAVE_LP
+ {
+ Lp lp,lp2;
+ lpTest(lp);
+ aTest(lp2);
+ cloneTest<Lp>();
+ }
+#endif
+
#ifdef LEMON_HAVE_GLPK
{
GlpkLp lp_glpk1,lp_glpk2;
diff --git a/test/mip_test.cc b/test/mip_test.cc
--- a/test/mip_test.cc
+++ b/test/mip_test.cc
@@ -32,6 +32,10 @@
#include <lemon/cbc.h>
#endif
+#ifdef LEMON_HAVE_MIP
+#include <lemon/lp.h>
+#endif
+
using namespace lemon;
@@ -128,6 +132,14 @@
int main()
{
+#ifdef LEMON_HAVE_MIP
+ {
+ Mip mip1;
+ aTest(mip1);
+ cloneTest<Mip>();
+ }
+#endif
+
#ifdef LEMON_HAVE_GLPK
{
GlpkMip mip1;
More information about the Lemon-commits
mailing list