# HG changeset patch
# User Alpar Juttner <alpar@cs.elte.hu>
# Date 1289803973 -3600
# Node ID 35ba7236bd67a8f792b726c934744063eb62c175
# Parent  5087694945e47bb61f90b69b93bd85a17fdeecff# Parent  09282720100bd14422a1d617a32aae9b76c29265
Merge

diff -r 5087694945e4 -r 35ba7236bd67 CMakeLists.txt
--- a/CMakeLists.txt	Sun Nov 14 09:25:03 2010 +0100
+++ b/CMakeLists.txt	Mon Nov 15 07:52:53 2010 +0100
@@ -4,6 +4,7 @@
 PROJECT(${PROJECT_NAME})
 
 INCLUDE(FindPythonInterp)
+INCLUDE(FindWget)
 
 IF(EXISTS ${PROJECT_SOURCE_DIR}/cmake/version.cmake)
   INCLUDE(${PROJECT_SOURCE_DIR}/cmake/version.cmake)
diff -r 5087694945e4 -r 35ba7236bd67 doc/CMakeLists.txt
--- a/doc/CMakeLists.txt	Sun Nov 14 09:25:03 2010 +0100
+++ b/doc/CMakeLists.txt	Mon Nov 15 07:52:53 2010 +0100
@@ -3,6 +3,8 @@
 SET(abs_top_srcdir ${PROJECT_SOURCE_DIR})
 SET(abs_top_builddir ${PROJECT_BINARY_DIR})
 
+SET(LEMON_DOC_SOURCE_BROWSER "NO" CACHE STRING "Include source into the doc (YES/NO).")
+
 CONFIGURE_FILE(
   ${PROJECT_SOURCE_DIR}/doc/Doxyfile.in
   ${PROJECT_BINARY_DIR}/doc/Doxyfile
@@ -52,3 +54,15 @@
   ENDIF()
 
 ENDIF()
+
+IF(WGET_FOUND)
+ADD_CUSTOM_TARGET(update-external-tags
+  COMMAND ${CMAKE_COMMAND} -E make_directory dl
+  # COMMAND ${CMAKE_COMMAND} -E copy libstdc++.tag dl
+  COMMAND ${WGET_EXECUTABLE} wget -P dl -N libstdc++.tag.tmp http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/libstdc++.tag
+  COMMAND ${CMAKE_COMMAND} -E rename dl/libstdc++.tag libstdc++.tag
+  COMMAND ${CMAKE_COMMAND} -E remove dl/libstdc++.tag
+  COMMAND ${CMAKE_COMMAND} -E remove_directory dl
+  WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+  )
+ENDIF()
diff -r 5087694945e4 -r 35ba7236bd67 doc/Doxyfile.in
--- a/doc/Doxyfile.in	Sun Nov 14 09:25:03 2010 +0100
+++ b/doc/Doxyfile.in	Mon Nov 15 07:52:53 2010 +0100
@@ -70,7 +70,7 @@
 SHOW_FILES             = YES
 SHOW_NAMESPACES        = YES
 FILE_VERSION_FILTER    = 
-LAYOUT_FILE            = DoxygenLayout.xml
+LAYOUT_FILE            = "@abs_top_srcdir@/doc/DoxygenLayout.xml"
 #---------------------------------------------------------------------------
 # configuration options related to warning and progress messages
 #---------------------------------------------------------------------------
@@ -114,7 +114,7 @@
 #---------------------------------------------------------------------------
 # configuration options related to source browsing
 #---------------------------------------------------------------------------
-SOURCE_BROWSER         = NO
+SOURCE_BROWSER         = @LEMON_DOC_SOURCE_BROWSER@
 INLINE_SOURCES         = NO
 STRIP_CODE_COMMENTS    = YES
 REFERENCED_BY_RELATION = NO
@@ -225,7 +225,7 @@
 #---------------------------------------------------------------------------
 # Options related to the search engine   
 #---------------------------------------------------------------------------
-TAGFILES               = "@abs_top_srcdir@/doc/libstdc++.tag = http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/  "
+TAGFILES               = "@abs_top_builddir@/doc/libstdc++.tag = http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/  "
 GENERATE_TAGFILE       = html/lemon.tag
 ALLEXTERNALS           = NO
 EXTERNAL_GROUPS        = NO
diff -r 5087694945e4 -r 35ba7236bd67 lemon/CMakeLists.txt
--- a/lemon/CMakeLists.txt	Sun Nov 14 09:25:03 2010 +0100
+++ b/lemon/CMakeLists.txt	Mon Nov 15 07:52:53 2010 +0100
@@ -8,6 +8,12 @@
   ${CMAKE_CURRENT_BINARY_DIR}/config.h
 )
 
+CONFIGURE_FILE(
+  ${CMAKE_CURRENT_SOURCE_DIR}/lemon.pc.cmake
+  ${CMAKE_CURRENT_BINARY_DIR}/lemon.pc
+  @ONLY
+)
+
 SET(LEMON_SOURCES
   arg_parser.cc
   base.cc
@@ -66,3 +72,9 @@
   DESTINATION include/lemon
   COMPONENT headers
 )
+
+INSTALL(
+  FILES ${CMAKE_CURRENT_BINARY_DIR}/lemon.pc
+  DESTINATION lib/pkgconfig
+)
+
diff -r 5087694945e4 -r 35ba7236bd67 lemon/lemon.pc.cmake
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lemon/lemon.pc.cmake	Mon Nov 15 07:52:53 2010 +0100
@@ -0,0 +1,10 @@
+prefix=@CMAKE_INSTALL_PREFIX@
+exec_prefix=@CMAKE_INSTALL_PREFIX@/bin
+libdir=@CMAKE_INSTALL_PREFIX@/lib
+includedir=@CMAKE_INSTALL_PREFIX@/include
+
+Name: @PROJECT_NAME@
+Description: Library for Efficient Modeling and Optimization in Networks
+Version: @PROJECT_VERSION@
+Libs: -L${libdir} -lemon @GLPK_LIBS@ @CPLEX_LIBS@ @SOPLEX_LIBS@ @CLP_LIBS@ @CBC_LIBS@
+Cflags: -I${includedir}
diff -r 5087694945e4 -r 35ba7236bd67 test/CMakeLists.txt
--- a/test/CMakeLists.txt	Sun Nov 14 09:25:03 2010 +0100
+++ b/test/CMakeLists.txt	Mon Nov 15 07:52:53 2010 +0100
@@ -47,7 +47,12 @@
 )
 
 IF(LEMON_HAVE_LP)
-  ADD_EXECUTABLE(lp_test lp_test.cc)
+  IF(${CMAKE_BUILD_TYPE} STREQUAL "Maintainer")
+    ADD_EXECUTABLE(lp_test lp_test.cc)
+  ELSE()
+    ADD_EXECUTABLE(lp_test EXCLUDE_FROM_ALL lp_test.cc)
+  ENDIF()
+
   SET(LP_TEST_LIBS lemon)
 
   IF(LEMON_HAVE_GLPK)
@@ -83,7 +88,12 @@
 ENDIF()
 
 IF(LEMON_HAVE_MIP)
-  ADD_EXECUTABLE(mip_test mip_test.cc)
+  IF(${CMAKE_BUILD_TYPE} STREQUAL "Maintainer")
+    ADD_EXECUTABLE(mip_test mip_test.cc)
+  ELSE()
+    ADD_EXECUTABLE(mip_test EXCLUDE_FROM_ALL mip_test.cc)
+  ENDIF()
+
   SET(MIP_TEST_LIBS lemon)
 
   IF(LEMON_HAVE_GLPK)