Use GNUInstallDirs

GNUInstallDirs was introduced with cmake-2.8.5 and provides
variables similar to the ones usually provided by autotools which
allow fine tuning the installation location.
Also install cmake files to a lower case 'cmake' dir which seems
more common than with a upper case 'C'.
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 32bfefd..01196ba 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,6 +1,8 @@
 cmake_minimum_required(VERSION 2.8.12)
 project(double-conversion)
 
+include(GNUInstallDirs)
+
 # pick a version #
 set(double-conversion_VERSION 2.0.1)
 set(double-conversion_SOVERSION_MAJOR 1)
@@ -9,26 +11,13 @@
 set(double-conversion_SOVERSION
   ${double-conversion_SOVERSION_MAJOR}.${double-conversion_SOVERSION_MINOR}.${double-conversion_SOVERSION_PATCH})
 
-# set paths for install -- empty initially
-# Offer the user the choice of overriding the installation directories
-set(INSTALL_BIN_DIR CACHE PATH "Installation directory for libraries")
-set(INSTALL_LIB_DIR CACHE PATH "Installation directory for libraries")
-set(INSTALL_INCLUDE_DIR CACHE PATH "Installation directory for include")
 # set suffix for CMake files used for packaging
 if(WIN32 AND NOT CYGWIN)
   set(INSTALL_CMAKE_DIR CMake)
 else()
-  set(INSTALL_CMAKE_DIR lib/CMake/double-conversion)
+  set(INSTALL_CMAKE_DIR ${CMAKE_INSTALL_LIBDIR}/cmake/double-conversion)
 endif()
 
-# Make relative paths absolute (needed later)
-foreach(p LIB BIN INCLUDE CMAKE)
-  set(var INSTALL_${p}_DIR)
-  if(NOT IS_ABSOLUTE "${${var}}")
-    set(${var} "${CMAKE_INSTALL_PREFIX}/${${var}}")
-  endif()
-endforeach()
-
 # Add src subdirectory
 add_subdirectory(double-conversion)
 
@@ -58,12 +47,6 @@
   @ONLY)
 
 #
-# determine where include is relative to the CMake dir in
-# in installed tree
-file(RELATIVE_PATH CONF_REL_INCLUDE_DIR "${INSTALL_CMAKE_DIR}"
-  "${INSTALL_INCLUDE_DIR}")
-
-#
 # sets up config to be used by CMake find_package
 configure_file(double-conversionConfig.cmake.in
   "${PROJECT_BINARY_DIR}/double-conversionConfig.cmake"
diff --git a/double-conversion/CMakeLists.txt b/double-conversion/CMakeLists.txt
index c4484be..4a87b3e 100644
--- a/double-conversion/CMakeLists.txt
+++ b/double-conversion/CMakeLists.txt
@@ -43,8 +43,8 @@
 # pulls along all the header files with the library.
 install(TARGETS double-conversion
   EXPORT double-conversionLibraryDepends
-  RUNTIME DESTINATION "${INSTALL_BIN_DIR}" COMPONENT bin
-  LIBRARY DESTINATION "${INSTALL_LIB_DIR}/lib" COMPONENT shlib
-  ARCHIVE DESTINATION "${INSTALL_LIB_DIR}/lib" COMPONENT lib
-  PUBLIC_HEADER DESTINATION "${INSTALL_INCLUDE_DIR}/include/double-conversion"
+  RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" COMPONENT bin
+  LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" COMPONENT shlib
+  ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" COMPONENT lib
+  PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/double-conversion"
   COMPONENT dev)
diff --git a/double-conversionConfig.cmake.in b/double-conversionConfig.cmake.in
index 6c967f4..110df44 100644
--- a/double-conversionConfig.cmake.in
+++ b/double-conversionConfig.cmake.in
@@ -8,9 +8,9 @@
 if(EXISTS "${double-conversion_CMAKE_DIR}/CMakeCache.txt")
   include("${double-conversion_CMAKE_DIR}/double-conversionBuildTreeSettings.cmake")
 else()
-  set(double-conversion_INCLUDE_DIRS "@INCLUDE_INSTALL_DIR@/double-conversion")
+  set(double-conversion_INCLUDE_DIRS "@CMAKE_INSTALL_FULL_INCLUDEDIR@/double-conversion")
 endif()
 
-include("@LIB_INSTALL_DIR@/cmake/double-conversion/double-conversionLibraryDepends.cmake")
+include("@CMAKE_INSTALL_FULL_LIBDIR@/cmake/double-conversion/double-conversionLibraryDepends.cmake")
 
 set(double-conversion_LIBRARIES double-conversion)