Description: fix installation paths for libraries
Author: Anton Gladky <gladk@debian.org>
Bug-Debian: http://bugs.debian.org/708045
Last-Update: 2013-05-13

--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,8 +1,9 @@
 cmake_minimum_required(VERSION 2.8)
 project(METIS)
 
-set(GKLIB_PATH "GKlib" CACHE PATH "path to GKlib")
+set(GKLIB_PATH "${CMAKE_SOURCE_DIR}/GKlib" CACHE PATH "path to GKlib")
 set(SHARED FALSE CACHE BOOL "build a shared library")
+INCLUDE(GNUInstallDirs)
 
 if(MSVC)
   set(METIS_INSTALL FALSE)
@@ -11,11 +12,11 @@
 endif()
 
 # Configure libmetis library.
-if(SHARED)
-  set(METIS_LIBRARY_TYPE SHARED)
-else()
-  set(METIS_LIBRARY_TYPE STATIC)
-endif(SHARED)
+set(METIS_LIBRARY_TYPE SHARED)
+
+set(METIS_MAJOR_VERSION 5)
+set(METIS_MINOR_VERSION 1)
+set(METIS_PATCH_VERSION 0)
 
 include(${GKLIB_PATH}/GKlibSystem.cmake)
 # Add include directories.
@@ -25,3 +26,10 @@
 add_subdirectory("include")
 add_subdirectory("libmetis")
 add_subdirectory("programs")
+
+ENABLE_TESTING()
+ADD_TEST(gpmetis "${CMAKE_BINARY_DIR}/programs/gpmetis" "${CMAKE_SOURCE_DIR}/graphs/4elt.graph" "20")
+ADD_TEST(graphchk "${CMAKE_BINARY_DIR}/programs/graphchk" "${CMAKE_SOURCE_DIR}/graphs/4elt.graph")
+ADD_TEST(m2gmetis "${CMAKE_BINARY_DIR}/programs/m2gmetis" "${CMAKE_SOURCE_DIR}/graphs/metis.mesh" "${CMAKE_SOURCE_DIR}/graphs/4elt.graph")
+ADD_TEST(mpmetis "${CMAKE_BINARY_DIR}/programs/mpmetis" "${CMAKE_SOURCE_DIR}/graphs/metis.mesh" "10")
+ADD_TEST(ndmetis "${CMAKE_BINARY_DIR}/programs/ndmetis" "${CMAKE_SOURCE_DIR}/graphs/4elt.graph")
--- a/libmetis/CMakeLists.txt
+++ b/libmetis/CMakeLists.txt
@@ -4,13 +4,17 @@
 file(GLOB metis_sources *.c)
 # Build libmetis.
 add_library(metis ${METIS_LIBRARY_TYPE} ${GKlib_sources} ${metis_sources})
+SET_TARGET_PROPERTIES(metis PROPERTIES 
+  VERSION ${METIS_MAJOR_VERSION}.${METIS_MINOR_VERSION}.${METIS_PATCH_VERSION}
+  SOVERSION ${METIS_MAJOR_VERSION})
+
 if(UNIX)
   target_link_libraries(metis m)
 endif()
 
 if(METIS_INSTALL)
   install(TARGETS metis
-    LIBRARY DESTINATION lib
-    RUNTIME DESTINATION lib
-    ARCHIVE DESTINATION lib)
+    LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+    RUNTIME DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+    ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}")
 endif()
--- a/programs/CMakeLists.txt
+++ b/programs/CMakeLists.txt
@@ -15,7 +15,7 @@
 
 if(METIS_INSTALL)
   install(TARGETS gpmetis ndmetis mpmetis m2gmetis graphchk cmpfillin
-    RUNTIME DESTINATION bin)
+    RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
 endif()
 
 # Try to find subversion revision.
--- a/include/CMakeLists.txt
+++ b/include/CMakeLists.txt
@@ -1,3 +1,3 @@
 if(METIS_INSTALL)
-  install(FILES metis.h DESTINATION include)
+  install(FILES metis.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
 endif()
--- a/GKlib/CMakeLists.txt
+++ b/GKlib/CMakeLists.txt
@@ -8,6 +8,10 @@
 
 include_directories(".")
 add_library(GKlib STATIC ${GKlib_sources})
+SET_TARGET_PROPERTIES(GKlib PROPERTIES 
+  VERSION ${METIS_MAJOR_VERSION}.${METIS_MINOR_VERSION}.${METIS_PATCH_VERSION}
+  SOVERSION ${METIS_MAJOR_VERSION})
+
 if(UNIX)
   target_link_libraries(GKlib m)
 endif(UNIX)
