summarylogtreecommitdiffstats
path: root/fix-install-dirs.patch
blob: b77681d61fe2ce2fb7d254d387162d7a259c14e4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -2,6 +2,7 @@
 cmake_minimum_required(VERSION 3.14...3.22 FATAL_ERROR)
 project(rapidcsv VERSION 1.0 LANGUAGES CXX)
 include(CMakePackageConfigHelpers)
+include(GNUInstallDirs)
 set (CMAKE_CXX_STANDARD 11)
 if(MSVC)
   if(CMAKE_CXX_FLAGS MATCHES "/W[0-4]")
@@ -224,28 +225,23 @@
   message(STATUS "Install/uninstall targets enabled.")
 
   # Install header
-  install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/src/rapidcsv.h DESTINATION include)
+  install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/src/rapidcsv.h
+          DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
 
   # Export targets
   install(TARGETS rapidcsv EXPORT rapidcsvTargets)
   install(EXPORT rapidcsvTargets
           NAMESPACE rapidcsv::
-          DESTINATION cmake)
+          DESTINATION ${CMAKE_INSTALL_DATADIR}/cmake/${PROJECT_NAME})
 
   # Generate and install config files
   configure_package_config_file(
     ${CMAKE_CURRENT_SOURCE_DIR}/cmake/rapidcsvConfig.cmake.in
     ${CMAKE_CURRENT_BINARY_DIR}/rapidcsvConfig.cmake
-    INSTALL_DESTINATION cmake
-  )
-  install(FILES ${CMAKE_CURRENT_BINARY_DIR}/rapidcsvConfig.cmake DESTINATION cmake)
-
-  # Uninstall
-  add_custom_target(uninstall
-    COMMAND "${CMAKE_COMMAND}" -E remove "${CMAKE_INSTALL_PREFIX}/include/rapidcsv.h"
-    COMMAND "${CMAKE_COMMAND}" -E remove "${CMAKE_INSTALL_PREFIX}/cmake/rapidcsvConfig.cmake"
-    COMMAND "${CMAKE_COMMAND}" -E remove "${CMAKE_INSTALL_PREFIX}/cmake/rapidcsvTargets.cmake"
+    INSTALL_DESTINATION ${CMAKE_INSTALL_DATADIR}/cmake/${PROJECT_NAME}
   )
+  install(FILES ${CMAKE_CURRENT_BINARY_DIR}/rapidcsvConfig.cmake
+          DESTINATION ${CMAKE_INSTALL_DATADIR}/cmake/${PROJECT_NAME})
 else()
   message(STATUS "Install/uninstall targets disabled.")
 endif()