chiark / gitweb /
Use CMake module GNUInstallDirs to support platform-specific installation directories...
authorrickertm <rickertm@users.noreply.github.com>
Thu, 18 Aug 2016 12:06:31 +0000 (14:06 +0200)
committerJulien Schueller <schueller@phimeca.com>
Thu, 18 Aug 2016 12:06:31 +0000 (14:06 +0200)
Use CMake module GNUInstallDirs to support platform-specific installation directories

CMakeLists.txt
api/CMakeLists.txt

index 848d29a65b9ab63875229826606cf683816efd9d..75d6029c93b7961323281e4ac50dc34c44bca792 100644 (file)
@@ -12,7 +12,7 @@
 # Benoit Scherrer, 2010 CRL, Harvard Medical School\r
 # Copyright (c) 2008-2009 Children's Hospital Boston \r
 #==============================================================================\r
-cmake_minimum_required (VERSION 2.6)\r
+cmake_minimum_required (VERSION 2.8.5)\r
 \r
 if (NOT DEFINED CMAKE_BUILD_TYPE)\r
   set(CMAKE_BUILD_TYPE Release CACHE STRING "Build type")\r
@@ -39,12 +39,14 @@ if (WITH_CXX OR BUILD_PYTHON)
   enable_language (CXX)\r
 endif ()\r
 \r
+include (GNUInstallDirs)\r
 \r
 # Offer the user the choice of overriding the installation directories\r
-set (INSTALL_LIB_DIR     lib${LIB_SUFFIX} CACHE PATH "Installation directory for libraries")\r
-set (INSTALL_BIN_DIR     bin              CACHE PATH "Installation directory for executables")\r
-set (INSTALL_INCLUDE_DIR include          CACHE PATH "Installation directory for header files")\r
-set (INSTALL_DATA_DIR    share/nlopt       CACHE PATH "Installation directory for data files")\r
+set (INSTALL_LIB_DIR     ${CMAKE_INSTALL_LIBDIR}        CACHE PATH "Installation directory for libraries")\r
+set (INSTALL_BIN_DIR     ${CMAKE_INSTALL_BINDIR}        CACHE PATH "Installation directory for executables")\r
+set (INSTALL_INCLUDE_DIR ${CMAKE_INSTALL_INCLUDEDIR}    CACHE PATH "Installation directory for header files")\r
+set (INSTALL_DATA_DIR    ${CMAKE_INSTALL_DATADIR}/nlopt CACHE PATH "Installation directory for data files")\r
+set (INSTALL_MAN_DIR     ${CMAKE_INSTALL_MANDIR}        CACHE PATH "Installation directory for man documentation")\r
 set (INSTALL_CMAKE_DIR   ${INSTALL_LIB_DIR}/cmake/nlopt CACHE PATH "Installation directory for cmake config files")\r
 \r
 # Make relative paths absolute (needed later on)\r
@@ -216,7 +218,7 @@ if (BUILD_SHARED_LIBS)
   add_definitions (-DNLOPT_DLL_EXPORT)\r
 endif ()\r
 \r
-install (FILES ${NLOPT_HEADERS} DESTINATION include)\r
+install (FILES ${NLOPT_HEADERS} DESTINATION ${INSTALL_INCLUDE_DIR})\r
 \r
 set (nlopt_lib nlopt${NLOPT_SUFFIX})\r
 add_library (${nlopt_lib} ${NLOPT_SOURCES})\r
index 13927c0601c3cf2eef69fcdc1d473c1b7abdc344..ced6ab16b218cf59b388ff777d83182b20c2ee0a 100644 (file)
@@ -1,7 +1,7 @@
 
 # install man
 if (UNIX)
-  install (FILES nlopt.3 nlopt_minimize.3 nlopt_minimize_constrained.3 DESTINATION share/man/man3)
+  install (FILES nlopt.3 nlopt_minimize.3 nlopt_minimize_constrained.3 DESTINATION ${INSTALL_MAN_DIR}/man3)
 endif ()
 
 # generate nlopt.f from nlopt.h enums