Index: CMakeLists.txt
===================================================================
--- CMakeLists.txt	(revision 527)
+++ CMakeLists.txt	(revision 552)
@@ -10,5 +10,5 @@
 PROJECT(${PROJECT_NAME})
 
-SET(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)
+SET(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
 
 INCLUDE(FindDoxygen)
@@ -39,73 +39,77 @@
 
 ADD_SUBDIRECTORY(lemon)
-ADD_SUBDIRECTORY(demo)
-ADD_SUBDIRECTORY(tools)
-ADD_SUBDIRECTORY(doc)
-ADD_SUBDIRECTORY(test)
+IF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR})
+  ADD_SUBDIRECTORY(demo)
+  ADD_SUBDIRECTORY(tools)
+  ADD_SUBDIRECTORY(doc)
+  ADD_SUBDIRECTORY(test)
+ENDIF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR})
 
-IF(WIN32)
-  SET(CPACK_PACKAGE_NAME ${PROJECT_NAME})
-  SET(CPACK_PACKAGE_VENDOR "EGRES")
-  SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY
-    "LEMON - Library of Efficient Models and Optimization in Networks")
-  SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/LICENSE")
+IF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR})
+  IF(WIN32)
+    SET(CPACK_PACKAGE_NAME ${PROJECT_NAME})
+    SET(CPACK_PACKAGE_VENDOR "EGRES")
+    SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY
+      "LEMON - Library of Efficient Models and Optimization in Networks")
+    SET(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE")
 
-  SET(CPACK_PACKAGE_VERSION ${PROJECT_VERSION})
+    SET(CPACK_PACKAGE_VERSION ${PROJECT_VERSION})
 
-  SET(CPACK_PACKAGE_INSTALL_DIRECTORY
-    "${PROJECT_NAME} ${PROJECT_VERSION}")
-  SET(CPACK_PACKAGE_INSTALL_REGISTRY_KEY
-    "${PROJECT_NAME} ${PROJECT_VERSION}")
+    SET(CPACK_PACKAGE_INSTALL_DIRECTORY
+      "${PROJECT_NAME} ${PROJECT_VERSION}")
+    SET(CPACK_PACKAGE_INSTALL_REGISTRY_KEY
+      "${PROJECT_NAME} ${PROJECT_VERSION}")
 
-  SET(CPACK_COMPONENTS_ALL headers library html_documentation bin)
+    SET(CPACK_COMPONENTS_ALL headers library html_documentation bin)
 
-  SET(CPACK_COMPONENT_HEADERS_DISPLAY_NAME "C++ headers")
-  SET(CPACK_COMPONENT_LIBRARY_DISPLAY_NAME "Dynamic-link library")
-  SET(CPACK_COMPONENT_BIN_DISPLAY_NAME "Command line utilities")
-  SET(CPACK_COMPONENT_HTML_DOCUMENTATION_DISPLAY_NAME "HTML documentation")
+    SET(CPACK_COMPONENT_HEADERS_DISPLAY_NAME "C++ headers")
+    SET(CPACK_COMPONENT_LIBRARY_DISPLAY_NAME "Dynamic-link library")
+    SET(CPACK_COMPONENT_BIN_DISPLAY_NAME "Command line utilities")
+    SET(CPACK_COMPONENT_HTML_DOCUMENTATION_DISPLAY_NAME "HTML documentation")
 
-  SET(CPACK_COMPONENT_HEADERS_DESCRIPTION
-    "C++ header files")
-  SET(CPACK_COMPONENT_LIBRARY_DESCRIPTION
-    "DLL and import library")
-  SET(CPACK_COMPONENT_BIN_DESCRIPTION
-    "Command line utilities")
-  SET(CPACK_COMPONENT_HTML_DOCUMENTATION_DESCRIPTION
-    "Doxygen generated documentation")
+    SET(CPACK_COMPONENT_HEADERS_DESCRIPTION
+      "C++ header files")
+    SET(CPACK_COMPONENT_LIBRARY_DESCRIPTION
+      "DLL and import library")
+    SET(CPACK_COMPONENT_BIN_DESCRIPTION
+      "Command line utilities")
+    SET(CPACK_COMPONENT_HTML_DOCUMENTATION_DESCRIPTION
+      "Doxygen generated documentation")
 
-  SET(CPACK_COMPONENT_HEADERS_DEPENDS library)
+    SET(CPACK_COMPONENT_HEADERS_DEPENDS library)
 
-  SET(CPACK_COMPONENT_HEADERS_GROUP "Development")
-  SET(CPACK_COMPONENT_LIBRARY_GROUP "Development")
-  SET(CPACK_COMPONENT_HTML_DOCUMENTATION_GROUP "Documentation")
+    SET(CPACK_COMPONENT_HEADERS_GROUP "Development")
+    SET(CPACK_COMPONENT_LIBRARY_GROUP "Development")
+    SET(CPACK_COMPONENT_HTML_DOCUMENTATION_GROUP "Documentation")
 
-  SET(CPACK_COMPONENT_GROUP_DEVELOPMENT_DESCRIPTION
-    "Components needed to develop software using LEMON")
-  SET(CPACK_COMPONENT_GROUP_DOCUMENTATION_DESCRIPTION
-    "Documentation of LEMON")
+    SET(CPACK_COMPONENT_GROUP_DEVELOPMENT_DESCRIPTION
+      "Components needed to develop software using LEMON")
+    SET(CPACK_COMPONENT_GROUP_DOCUMENTATION_DESCRIPTION
+      "Documentation of LEMON")
 
-  SET(CPACK_ALL_INSTALL_TYPES Full Developer)
+    SET(CPACK_ALL_INSTALL_TYPES Full Developer)
 
-  SET(CPACK_COMPONENT_HEADERS_INSTALL_TYPES Developer Full)
-  SET(CPACK_COMPONENT_LIBRARY_INSTALL_TYPES Developer Full)
-  SET(CPACK_COMPONENT_HTML_DOCUMENTATION_INSTALL_TYPES Full)
+    SET(CPACK_COMPONENT_HEADERS_INSTALL_TYPES Developer Full)
+    SET(CPACK_COMPONENT_LIBRARY_INSTALL_TYPES Developer Full)
+    SET(CPACK_COMPONENT_HTML_DOCUMENTATION_INSTALL_TYPES Full)
 
-  SET(CPACK_GENERATOR "NSIS")
-  SET(CPACK_NSIS_MUI_ICON "${CMAKE_SOURCE_DIR}/cmake/nsis/lemon.ico")
-  SET(CPACK_NSIS_MUI_UNIICON "${CMAKE_SOURCE_DIR}/cmake/nsis/uninstall.ico")
-  #SET(CPACK_PACKAGE_ICON "${CMAKE_SOURCE_DIR}/cmake/nsis\\\\installer.bmp")
-  SET(CPACK_NSIS_INSTALLED_ICON_NAME "bin\\\\lemon.ico")
-  SET(CPACK_NSIS_DISPLAY_NAME "${CPACK_PACKAGE_INSTALL_DIRECTORY} ${PROJECT_NAME}")
-  SET(CPACK_NSIS_HELP_LINK "http:\\\\\\\\lemon.cs.elte.hu")
-  SET(CPACK_NSIS_URL_INFO_ABOUT "http:\\\\\\\\lemon.cs.elte.hu")
-  SET(CPACK_NSIS_CONTACT "lemon-user@lemon.cs.elte.hu")
-  SET(CPACK_NSIS_CREATE_ICONS_EXTRA "
-    CreateShortCut \\\"$SMPROGRAMS\\\\$STARTMENU_FOLDER\\\\Documentation.lnk\\\" \\\"$INSTDIR\\\\share\\\\doc\\\\index.html\\\"
-    ")
-  SET(CPACK_NSIS_DELETE_ICONS_EXTRA "
-    !insertmacro MUI_STARTMENU_GETFOLDER Application $MUI_TEMP
-    Delete \\\"$SMPROGRAMS\\\\$MUI_TEMP\\\\Documentation.lnk\\\"
-    ")
+    SET(CPACK_GENERATOR "NSIS")
+    SET(CPACK_NSIS_MUI_ICON "${PROJECT_SOURCE_DIR}/cmake/nsis/lemon.ico")
+    SET(CPACK_NSIS_MUI_UNIICON "${PROJECT_SOURCE_DIR}/cmake/nsis/uninstall.ico")
+    #SET(CPACK_PACKAGE_ICON "${PROJECT_SOURCE_DIR}/cmake/nsis\\\\installer.bmp")
+    SET(CPACK_NSIS_INSTALLED_ICON_NAME "bin\\\\lemon.ico")
+    SET(CPACK_NSIS_DISPLAY_NAME "${CPACK_PACKAGE_INSTALL_DIRECTORY} ${PROJECT_NAME}")
+    SET(CPACK_NSIS_HELP_LINK "http:\\\\\\\\lemon.cs.elte.hu")
+    SET(CPACK_NSIS_URL_INFO_ABOUT "http:\\\\\\\\lemon.cs.elte.hu")
+    SET(CPACK_NSIS_CONTACT "lemon-user@lemon.cs.elte.hu")
+    SET(CPACK_NSIS_CREATE_ICONS_EXTRA "
+      CreateShortCut \\\"$SMPROGRAMS\\\\$STARTMENU_FOLDER\\\\Documentation.lnk\\\" \\\"$INSTDIR\\\\share\\\\doc\\\\index.html\\\"
+      ")
+    SET(CPACK_NSIS_DELETE_ICONS_EXTRA "
+      !insertmacro MUI_STARTMENU_GETFOLDER Application $MUI_TEMP
+      Delete \\\"$SMPROGRAMS\\\\$MUI_TEMP\\\\Documentation.lnk\\\"
+      ")
 
-  INCLUDE(CPack)
-ENDIF(WIN32)
+    INCLUDE(CPack)
+  ENDIF(WIN32)
+ENDIF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR})
Index: LICENSE
===================================================================
--- LICENSE	(revision 440)
+++ LICENSE	(revision 553)
@@ -1,3 +1,3 @@
-LEMON code without an explicit copyright is covered by the following
+LEMON code without an explicit copyright notice is covered by the following
 copyright/license.
 
@@ -5,4 +5,8 @@
 Kutatocsoport (Egervary Combinatorial Optimization Research Group,
 EGRES).
+
+===========================================================================
+Boost Software License, Version 1.0
+===========================================================================
 
 Permission is hereby granted, free of charge, to any person or organization
@@ -27,7 +31,2 @@
 ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
 DEALINGS IN THE SOFTWARE.
-
-===========================================================================
-This license is a verbatim copy of the Boost Software License, Version 1.0.
-
-
Index: NEWS
===================================================================
--- NEWS	(revision 322)
+++ NEWS	(revision 507)
@@ -1,2 +1,9 @@
+2009-03-27 LEMON joins to the COIN-OR initiative
+
+        COIN-OR (Computational Infrastructure for Operations Research,
+        http://www.coin-or.org) project is an initiative to spur the
+        development of open-source software for the operations research
+        community.
+
 2008-10-13 Version 1.0 released
 
Index: demo/CMakeLists.txt
===================================================================
--- demo/CMakeLists.txt	(revision 474)
+++ demo/CMakeLists.txt	(revision 549)
@@ -1,8 +1,8 @@
 INCLUDE_DIRECTORIES(
-  ${CMAKE_SOURCE_DIR}
-  ${CMAKE_BINARY_DIR}
+  ${PROJECT_SOURCE_DIR}
+  ${PROJECT_BINARY_DIR}
 )
 
-LINK_DIRECTORIES(${CMAKE_BINARY_DIR}/lemon)
+LINK_DIRECTORIES(${PROJECT_BINARY_DIR}/lemon)
 
 SET(DEMOS
Index: doc/CMakeLists.txt
===================================================================
--- doc/CMakeLists.txt	(revision 518)
+++ doc/CMakeLists.txt	(revision 549)
@@ -1,10 +1,10 @@
 SET(PACKAGE_NAME ${PROJECT_NAME})
 SET(PACKAGE_VERSION ${PROJECT_VERSION})
-SET(abs_top_srcdir ${CMAKE_SOURCE_DIR})
-SET(abs_top_builddir ${CMAKE_BINARY_DIR})
+SET(abs_top_srcdir ${PROJECT_SOURCE_DIR})
+SET(abs_top_builddir ${PROJECT_BINARY_DIR})
 
 CONFIGURE_FILE(
-  ${CMAKE_SOURCE_DIR}/doc/Doxyfile.in
-  ${CMAKE_BINARY_DIR}/doc/Doxyfile
+  ${PROJECT_SOURCE_DIR}/doc/Doxyfile.in
+  ${PROJECT_BINARY_DIR}/doc/Doxyfile
   @ONLY)
 
Index: lemon/CMakeLists.txt
===================================================================
--- lemon/CMakeLists.txt	(revision 492)
+++ lemon/CMakeLists.txt	(revision 549)
@@ -1,5 +1,5 @@
 INCLUDE_DIRECTORIES(
-  ${CMAKE_SOURCE_DIR}
-  ${CMAKE_BINARY_DIR}
+  ${PROJECT_SOURCE_DIR}
+  ${PROJECT_BINARY_DIR}
 )
 
Index: lemon/Makefile.am
===================================================================
--- lemon/Makefile.am	(revision 545)
+++ lemon/Makefile.am	(revision 550)
@@ -18,4 +18,5 @@
 
 lemon_libemon_la_CXXFLAGS = \
+	$(AM_CXXFLAGS) \
 	$(GLPK_CFLAGS) \
 	$(CPLEX_CFLAGS) \
Index: lemon/cplex.cc
===================================================================
--- lemon/cplex.cc	(revision 540)
+++ lemon/cplex.cc	(revision 551)
@@ -3,5 +3,5 @@
  * This file is a part of LEMON, a generic C++ optimization library.
  *
- * Copyright (C) 2003-2008
+ * Copyright (C) 2003-2009
  * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
  * (Egervary Research Group on Combinatorial Optimization, EGRES).
@@ -442,11 +442,11 @@
 
   CplexLp::CplexLp()
-    : LpBase(), CplexBase(), LpSolver() {}
+    : LpBase(), LpSolver(), CplexBase() {}
 
   CplexLp::CplexLp(const CplexEnv& env)
-    : LpBase(), CplexBase(env), LpSolver() {}
+    : LpBase(), LpSolver(), CplexBase(env) {}
 
   CplexLp::CplexLp(const CplexLp& other)
-    : LpBase(), CplexBase(other), LpSolver() {}
+    : LpBase(), LpSolver(), CplexBase(other) {}
 
   CplexLp::~CplexLp() {}
@@ -799,5 +799,5 @@
 
   CplexMip::CplexMip()
-    : LpBase(), CplexBase(), MipSolver() {
+    : LpBase(), MipSolver(), CplexBase() {
 
 #if CPX_VERSION < 800
@@ -809,5 +809,5 @@
 
   CplexMip::CplexMip(const CplexEnv& env)
-    : LpBase(), CplexBase(env), MipSolver() {
+    : LpBase(), MipSolver(), CplexBase(env) {
 
 #if CPX_VERSION < 800
@@ -820,5 +820,5 @@
 
   CplexMip::CplexMip(const CplexMip& other)
-    : LpBase(), CplexBase(other), MipSolver() {}
+    : LpBase(), MipSolver(), CplexBase(other) {}
 
   CplexMip::~CplexMip() {}
Index: lemon/cplex.h
===================================================================
--- lemon/cplex.h	(revision 540)
+++ lemon/cplex.h	(revision 551)
@@ -3,5 +3,5 @@
  * This file is a part of LEMON, a generic C++ optimization library.
  *
- * Copyright (C) 2003-2008
+ * Copyright (C) 2003-2009
  * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
  * (Egervary Research Group on Combinatorial Optimization, EGRES).
@@ -79,5 +79,5 @@
   ///
   /// This class implements the common interface of the CPLEX LP and
-  /// MIP solvers.  
+  /// MIP solvers.
   /// \ingroup lp_group
   class CplexBase : virtual public LpBase {
@@ -236,8 +236,11 @@
     virtual ~CplexMip();
 
-  protected:
-
-    virtual CplexMip* _cloneSolver() const;
-    virtual CplexMip* _newSolver() const;
+    /// \e
+    virtual CplexMip* cloneSolver() const;
+    /// \e
+    virtual CplexMip* newSolver() const;
+
+  protected:
+
 
     virtual const char* _solverName() const;
Index: lemon/glpk.cc
===================================================================
--- lemon/glpk.cc	(revision 542)
+++ lemon/glpk.cc	(revision 551)
@@ -3,5 +3,5 @@
  * This file is a part of LEMON, a generic C++ optimization library.
  *
- * Copyright (C) 2003-2008
+ * Copyright (C) 2003-2009
  * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
  * (Egervary Research Group on Combinatorial Optimization, EGRES).
@@ -532,10 +532,10 @@
 
   GlpkLp::GlpkLp()
-    : LpBase(), GlpkBase(), LpSolver() {
+    : LpBase(), LpSolver(), GlpkBase() {
     messageLevel(MESSAGE_NO_OUTPUT);
   }
 
   GlpkLp::GlpkLp(const GlpkLp& other)
-    : LpBase(other), GlpkBase(other), LpSolver(other) {
+    : LpBase(other), LpSolver(other), GlpkBase(other) {
     messageLevel(MESSAGE_NO_OUTPUT);
   }
@@ -831,10 +831,10 @@
 
   GlpkMip::GlpkMip()
-    : LpBase(), GlpkBase(), MipSolver() {
+    : LpBase(), MipSolver(), GlpkBase() {
     messageLevel(MESSAGE_NO_OUTPUT);
   }
 
   GlpkMip::GlpkMip(const GlpkMip& other)
-    : LpBase(), GlpkBase(other), MipSolver() {
+    : LpBase(), MipSolver(), GlpkBase(other) {
     messageLevel(MESSAGE_NO_OUTPUT);
   }
Index: scripts/unify-sources.sh
===================================================================
--- scripts/unify-sources.sh	(revision 396)
+++ scripts/unify-sources.sh	(revision 554)
@@ -89,5 +89,10 @@
     if [ "$3" == 'tabs' ]
     then
-        PATTERN=$(echo -e '\t')
+        if echo $2 | grep -q -v -E 'Makefile\.am$'
+        then
+            PATTERN=$(echo -e '\t')
+        else
+            PATTERN='        '
+        fi
     elif [ "$3" == 'trailing spaces' ]
     then
Index: test/CMakeLists.txt
===================================================================
--- test/CMakeLists.txt	(revision 543)
+++ test/CMakeLists.txt	(revision 549)
@@ -1,5 +1,5 @@
 INCLUDE_DIRECTORIES(
-  ${CMAKE_SOURCE_DIR}
-  ${CMAKE_BINARY_DIR}
+  ${PROJECT_SOURCE_DIR}
+  ${PROJECT_BINARY_DIR}
 )
 
@@ -8,5 +8,5 @@
 ENDIF(HAVE_GLPK)
 
-LINK_DIRECTORIES(${CMAKE_BINARY_DIR}/lemon)
+LINK_DIRECTORIES(${PROJECT_BINARY_DIR}/lemon)
 
 SET(TESTS
Index: test/counter_test.cc
===================================================================
--- test/counter_test.cc	(revision 440)
+++ test/counter_test.cc	(revision 558)
@@ -19,4 +19,7 @@
 #include <lemon/counter.h>
 #include <vector>
+#include <sstream>
+
+#include "test/test_tools.h"
 
 using namespace lemon;
@@ -24,52 +27,76 @@
 template <typename T>
 void bubbleSort(std::vector<T>& v) {
-  Counter op("Bubble Sort - Operations: ");
-  Counter::NoSubCounter as(op, "Assignments: ");
-  Counter::NoSubCounter co(op, "Comparisons: ");
-  for (int i = v.size()-1; i > 0; --i) {
-    for (int j = 0; j < i; ++j) {
-      if (v[j] > v[j+1]) {
-        T tmp = v[j];
-        v[j] = v[j+1];
-        v[j+1] = tmp;
-        as += 3;
+  std::stringstream s1, s2, s3;
+  {
+    Counter op("Bubble Sort - Operations: ", s1);
+    Counter::SubCounter as(op, "Assignments: ", s2);
+    Counter::SubCounter co(op, "Comparisons: ", s3);
+    for (int i = v.size()-1; i > 0; --i) {
+      for (int j = 0; j < i; ++j) {
+        if (v[j] > v[j+1]) {
+          T tmp = v[j];
+          v[j] = v[j+1];
+          v[j+1] = tmp;
+          as += 3;
+        }
+        ++co;
       }
-      ++co;
     }
   }
+  check(s1.str() == "Bubble Sort - Operations: 102\n", "Wrong counter");
+  check(s2.str() == "Assignments: 57\n", "Wrong subcounter");
+  check(s3.str() == "Comparisons: 45\n", "Wrong subcounter");
 }
 
 template <typename T>
 void insertionSort(std::vector<T>& v) {
-  Counter op("Insertion Sort - Operations: ");
-  Counter::NoSubCounter as(op, "Assignments: ");
-  Counter::NoSubCounter co(op, "Comparisons: ");
-  for (int i = 1; i < int(v.size()); ++i) {
-    T value = v[i];
-    ++as;
-    int j = i;
-    while (j > 0 && v[j-1] > value) {
-      v[j] = v[j-1];
-      --j;
-      ++co; ++as;
+  std::stringstream s1, s2, s3;
+  {
+    Counter op("Insertion Sort - Operations: ", s1);
+    Counter::SubCounter as(op, "Assignments: ", s2);
+    Counter::SubCounter co(op, "Comparisons: ", s3);
+    for (int i = 1; i < int(v.size()); ++i) {
+      T value = v[i];
+      ++as;
+      int j = i;
+      while (j > 0 && v[j-1] > value) {
+        v[j] = v[j-1];
+        --j;
+        ++co; ++as;
+      }
+      v[j] = value;
+      ++as;
     }
-    v[j] = value;
-    ++as;
   }
+  check(s1.str() == "Insertion Sort - Operations: 56\n", "Wrong counter");
+  check(s2.str() == "Assignments: 37\n", "Wrong subcounter");
+  check(s3.str() == "Comparisons: 19\n", "Wrong subcounter");
 }
 
 template <typename MyCounter>
-void counterTest() {
-  MyCounter c("Main Counter: ");
-  c++;
-  typename MyCounter::SubCounter d(c, "SubCounter: ");
-  d++;
-  typename MyCounter::SubCounter::NoSubCounter e(d, "SubSubCounter: ");
-  e++;
-  d+=3;
-  c-=4;
-  e-=2;
-  c.reset(2);
-  c.reset();
+void counterTest(bool output) {
+  std::stringstream s1, s2, s3;
+  {
+    MyCounter c("Main Counter: ", s1);
+    c++;
+    typename MyCounter::SubCounter d(c, "SubCounter: ", s2);
+    d++;
+    typename MyCounter::SubCounter::NoSubCounter e(d, "SubSubCounter: ", s3);
+    e++;
+    d+=3;
+    c-=4;
+    e-=2;
+    c.reset(2);
+    c.reset();
+  }
+  if (output) {
+    check(s1.str() == "Main Counter: 3\n", "Wrong Counter");
+    check(s2.str() == "SubCounter: 3\n", "Wrong SubCounter");
+    check(s3.str() == "", "Wrong NoSubCounter");
+  } else {
+    check(s1.str() == "", "Wrong NoCounter");
+    check(s2.str() == "", "Wrong SubCounter");
+    check(s3.str() == "", "Wrong NoSubCounter");
+  }
 }
 
@@ -81,6 +108,6 @@
 int main()
 {
-  counterTest<Counter>();
-  counterTest<NoCounter>();
+  counterTest<Counter>(true);
+  counterTest<NoCounter>(false);
 
   std::vector<int> x(10);
Index: test/lp_test.cc
===================================================================
--- test/lp_test.cc	(revision 542)
+++ test/lp_test.cc	(revision 551)
@@ -3,5 +3,5 @@
  * This file is a part of LEMON, a generic C++ optimization library.
  *
- * Copyright (C) 2003-2008
+ * Copyright (C) 2003-2009
  * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
  * (Egervary Research Group on Combinatorial Optimization, EGRES).
@@ -366,5 +366,5 @@
 {
   //Test for clone/new
-  
+
   LP* lp = new LP();
   LP* lpnew = lp->newSolver();
@@ -394,4 +394,5 @@
     lpTest(lp_cplex1);
     aTest(lp_cplex2);
+    cloneTest<CplexLp>();
   } catch (CplexEnv::LicenseError& error) {
 #ifdef LEMON_FORCE_CPLEX_CHECK
@@ -402,5 +403,4 @@
 #endif
   }
-    cloneTest<CplexLp>();
 #endif
 
Index: test/mip_test.cc
===================================================================
--- test/mip_test.cc	(revision 542)
+++ test/mip_test.cc	(revision 551)
@@ -3,5 +3,5 @@
  * This file is a part of LEMON, a generic C++ optimization library.
  *
- * Copyright (C) 2003-2008
+ * Copyright (C) 2003-2009
  * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
  * (Egervary Research Group on Combinatorial Optimization, EGRES).
@@ -110,5 +110,5 @@
 void cloneTest()
 {
-  
+
   MIP* mip = new MIP();
   MIP* mipnew = mip->newSolver();
@@ -134,4 +134,5 @@
     CplexMip mip2;
     aTest(mip2);
+    cloneTest<CplexMip>();
   } catch (CplexEnv::LicenseError& error) {
 #ifdef LEMON_FORCE_CPLEX_CHECK
@@ -142,5 +143,4 @@
 #endif
   }
-  cloneTest<CplexMip>();
 #endif
 
Index: test/time_measure_test.cc
===================================================================
--- test/time_measure_test.cc	(revision 440)
+++ test/time_measure_test.cc	(revision 558)
@@ -40,16 +40,14 @@
   Timer T;
   unsigned int n;
-  for(n=0;T.realTime()<1.0;n++) ;
+  for(n=0;T.realTime()<0.1;n++) ;
   std::cout << T << " (" << n << " time queries)\n";
-  T.restart();
-  while(T.realTime()<2.0) ;
-  std::cout << T << '\n';
+
   TimeStamp full;
   TimeStamp t;
-  t=runningTimeTest(f,1,&n,&full);
+  t=runningTimeTest(f,0.1,&n,&full);
   std::cout << t << " (" << n << " tests)\n";
   std::cout << "Total: " << full << "\n";
 
-  t=runningTimeTest(g,1,&n,&full);
+  t=runningTimeTest(g,0.1,&n,&full);
   std::cout << t << " (" << n << " tests)\n";
   std::cout << "Total: " << full << "\n";
Index: tools/CMakeLists.txt
===================================================================
--- tools/CMakeLists.txt	(revision 527)
+++ tools/CMakeLists.txt	(revision 549)
@@ -1,8 +1,8 @@
 INCLUDE_DIRECTORIES(
-  ${CMAKE_SOURCE_DIR}
-  ${CMAKE_BINARY_DIR}
+  ${PROJECT_SOURCE_DIR}
+  ${PROJECT_BINARY_DIR}
 )
 
-LINK_DIRECTORIES(${CMAKE_BINARY_DIR}/lemon)
+LINK_DIRECTORIES(${PROJECT_BINARY_DIR}/lemon)
 
 ADD_EXECUTABLE(lgf-gen lgf-gen.cc)
@@ -23,6 +23,6 @@
 IF(NOT WIN32)
   INSTALL(
-    FILES ${CMAKE_CURRENT_SOURCE_DIR}/lemon-0.x-to-1.x.sh
-    RUNTIME DESTINATION bin
+    PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/lemon-0.x-to-1.x.sh
+    DESTINATION bin
     COMPONENT bin)
 ENDIF(NOT WIN32)
Index: tools/lemon-0.x-to-1.x.sh
===================================================================
--- tools/lemon-0.x-to-1.x.sh	(revision 466)
+++ tools/lemon-0.x-to-1.x.sh	(revision 555)
@@ -23,10 +23,9 @@
         -e "s/UGraph/_Gr_aph_label_/g"\
         -e "s/u[Gg]raph/_gr_aph_label_/g"\
-        -e "s/\<Graph\>/_Digr_aph_label_/g"\
+        -e "s/Graph\>/_Digr_aph_label_/g"\
         -e "s/\<graph\>/_digr_aph_label_/g"\
-        -e "s/\<Graphs\>/_Digr_aph_label_s/g"\
+        -e "s/Graphs\>/_Digr_aph_label_s/g"\
         -e "s/\<graphs\>/_digr_aph_label_s/g"\
-        -e "s/_Graph/__Gr_aph_label_/g"\
-        -e "s/\([Gg]\)raph\([a-z_]\)/_\1r_aph_label_\2/g"\
+        -e "s/\([Gg]\)raph\([a-z]\)/_\1r_aph_label_\2/g"\
         -e "s/\([a-z_]\)graph/\1_gr_aph_label_/g"\
         -e "s/Graph/_Digr_aph_label_/g"\
@@ -35,12 +34,12 @@
         -e "s/u[Ee]dge/_ed_ge_label_/g"\
         -e "s/IncEdgeIt/_In_cEd_geIt_label_/g"\
-        -e "s/\<Edge\>/_Ar_c_label_/g"\
+        -e "s/Edge\>/_Ar_c_label_/g"\
         -e "s/\<edge\>/_ar_c_label_/g"\
-        -e "s/\<Edges\>/_Ar_c_label_s/g"\
+        -e "s/_edge\>/_ar_c_label_/g"\
+        -e "s/Edges\>/_Ar_c_label_s/g"\
         -e "s/\<edges\>/_ar_c_label_s/g"\
-        -e "s/_Edge/__Ed_ge_label_/g"\
-        -e "s/Edge\([a-z_]\)/_Ed_ge_label_\1/g"\
-        -e "s/edge\([a-z_]\)/_ed_ge_label_\1/g"\
-        -e "s/\([a-z_]\)edge/\1_ed_ge_label_/g"\
+        -e "s/_edges\>/_ar_c_label_s/g"\
+        -e "s/\([Ee]\)dge\([a-z]\)/_\1d_ge_label_\2/g"\
+        -e "s/\([a-z]\)edge/\1_ed_ge_label_/g"\
         -e "s/Edge/_Ar_c_label_/g"\
         -e "s/edge/_ar_c_label_/g"\
@@ -117,4 +116,9 @@
         -e "s/\<DirGraphAdaptor\>/Orienter/g"\
         -e "s/\<dirGraphAdaptor\>/orienter/g"\
+        -e "s/\<LpCplex\>/CplexLp/g"\
+        -e "s/\<MipCplex\>/CplexMip/g"\
+        -e "s/\<LpGlpk\>/GlpkLp/g"\
+        -e "s/\<MipGlpk\>/GlpkMip/g"\
+        -e "s/\<LpSoplex\>/SoplexLp/g"\
     <$i > $TMP
     mv $TMP $i
