diff options
| author | Nicolas David <nicolas.david@ign.fr> | 2017-09-25 21:05:46 +0200 |
|---|---|---|
| committer | Howard Butler <howard@hobu.co> | 2017-09-25 14:05:46 -0500 |
| commit | 6ea5a3cbe601bc14cb18614fdaa97092abf96f3c (patch) | |
| tree | 6a5c424cd836b617354b9222b4396548d9a232e4 /cmake/Proj4InstallPath.cmake | |
| parent | 03750c1961d2978773ac0b4a0423b1cdcc2c6453 (diff) | |
| download | PROJ-6ea5a3cbe601bc14cb18614fdaa97092abf96f3c.tar.gz PROJ-6ea5a3cbe601bc14cb18614fdaa97092abf96f3c.zip | |
fix #560 install cmake config file to lib and use GNUInstallDirs on Unix (#561)
* fix #560 install proj4-config.cmake to defaut path
* add some variable and cmake option to specify where
the cmake config file should be installed.
* change project_root_dir use in project-config.cmake.in
variable from hard coded path to computed path with
file(RELATIVE_PATH) function.
* Still use the old project-config.cmake/configure_file way
of generate config file. A cleaner way could be to use
the modern cmake export(target ..)
* use GNUInstallDirs for default unix install path
Diffstat (limited to 'cmake/Proj4InstallPath.cmake')
| -rw-r--r-- | cmake/Proj4InstallPath.cmake | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/cmake/Proj4InstallPath.cmake b/cmake/Proj4InstallPath.cmake index da1491c0..04f24670 100644 --- a/cmake/Proj4InstallPath.cmake +++ b/cmake/Proj4InstallPath.cmake @@ -15,19 +15,29 @@ endif(UNIX) IF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) - SET(CMAKE_INSTALL_PREFIX ${DEFAULT_PROJ_ROOT_DIR} CACHE PATH "Foo install + SET(CMAKE_INSTALL_PREFIX ${DEFAULT_PROJ_ROOT_DIR} CACHE PATH "Proj.4 install prefix" FORCE) ENDIF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) #TODO # for data install testing the PROJ_LIB envVar +string(TOLOWER "${PROJECT_NAME}" PROJECT_NAME_LOWER) if(WIN32) set(DEFAULT_BIN_SUBDIR bin) set(DEFAULT_LIB_SUBDIR local/lib) set(DEFAULT_DATA_SUBDIR share) set(DEFAULT_INCLUDE_SUBDIR local/include) set(DEFAULT_DOC_SUBDIR share/doc/proj) + set(DEFAULT_CMAKE_SUBDIR local/lib/cmake/${PROJECT_NAME_LOWER}) +elseif(UNIX) + include(GNUInstallDirs) + set(DEFAULT_BIN_SUBDIR ${CMAKE_INSTALL_BINDIR}) + set(DEFAULT_LIB_SUBDIR ${CMAKE_INSTALL_LIBDIR}) + set(DEFAULT_DATA_SUBDIR ${CMAKE_INSTALL_DATADIR}) + set(DEFAULT_INCLUDE_SUBDIR ${CMAKE_INSTALL_INCLUDEDIR}) + set(DEFAULT_DOC_SUBDIR ${CMAKE_INSTALL_DOCDIR}) + set(DEFAULT_CMAKE_SUBDIR ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME_LOWER}) else() # Common locatoins for Unix and Mac OS X set(DEFAULT_BIN_SUBDIR bin) @@ -35,9 +45,11 @@ else() set(DEFAULT_DATA_SUBDIR share/proj) set(DEFAULT_DOC_SUBDIR doc/proj) set(DEFAULT_INCLUDE_SUBDIR include) + set(DEFAULT_DOC_SUBDIR share/doc/proj) + set(DEFAULT_CMAKE_SUBDIR lib/cmake/${PROJECT_NAME_LOWER}) endif() -# Locations are changeable by user to customize layout of PDAL installation +# Locations are changeable by user to customize layout of Proj.4 installation # (default values are platform-specific) set(PROJ_BIN_SUBDIR ${DEFAULT_BIN_SUBDIR} CACHE STRING "Subdirectory where executables will be installed") @@ -48,7 +60,9 @@ set(PROJ_INCLUDE_SUBDIR ${DEFAULT_INCLUDE_SUBDIR} CACHE STRING set(PROJ_DATA_SUBDIR ${DEFAULT_DATA_SUBDIR} CACHE STRING "Subdirectory where data will be installed") set(PROJ_DOC_SUBDIR ${DEFAULT_DOC_SUBDIR} CACHE STRING - "Subdirectory where data will be installed") + "Subdirectory where doc will be installed") +set(PROJ_CMAKE_SUBDIR ${DEFAULT_CMAKE_SUBDIR} CACHE STRING + "Subdirectory where cmake proj4-config file will be installed") # Mark *DIR variables as advanced and dedicated to use by power-users only. mark_as_advanced(PROJ_ROOT_DIR @@ -56,12 +70,14 @@ mark_as_advanced(PROJ_ROOT_DIR PROJ_LIB_SUBDIR PROJ_INCLUDE_SUBDIR PROJ_DATA_SUBDIR - PROJ_DOC_SUBDIR ) + PROJ_DOC_SUBDIR + PROJ_CMAKE_SUBDIR ) set(DEFAULT_BINDIR "${PROJ_BIN_SUBDIR}") set(DEFAULT_LIBDIR "${PROJ_LIB_SUBDIR}") set(DEFAULT_DATADIR "${PROJ_DATA_SUBDIR}") set(DEFAULT_DOCDIR "${PROJ_DOC_SUBDIR}") set(DEFAULT_INCLUDEDIR "${PROJ_INCLUDE_SUBDIR}") +set(DEFAULT_CMAKEDIR "${PROJ_CMAKE_SUBDIR}") |
