1 ## =========================================================================
2 ## @author Leonardo Florez-Valencia (florez-l@javeriana.edu.co)
3 ## =========================================================================
5 ## =========================
6 ## == Installation values ==
7 ## =========================
9 set(config_install_dir "lib/cmake/${PROJECT_NAME}")
10 set(include_install_dir "include")
11 set(generated_dir "${PROJECT_BINARY_DIR}/generated")
12 set(version_config "${generated_dir}/${PROJECT_NAME}ConfigVersion.cmake")
13 set(project_config "${generated_dir}/${PROJECT_NAME}Config.cmake")
14 set(targets_export_name "${PROJECT_NAME}Targets")
15 set(namespace "${PROJECT_NAME}::")
17 ## ===============================
18 ## == Global installation rules ==
19 ## ===============================
21 include(CMakePackageConfigHelpers)
22 write_basic_package_version_file(
23 "${version_config}" COMPATIBILITY SameMajorVersion
25 configure_package_config_file(
26 "cmake/${PROJECT_NAME}Config.cmake.in"
28 INSTALL_DESTINATION "${config_install_dir}"
31 FILES "${project_config}"
32 DESTINATION "${config_install_dir}"
34 if(${PROJECT_NAME}_BUILD)
36 EXPORT "${targets_export_name}"
37 NAMESPACE "${namespace}"
38 DESTINATION "${config_install_dir}"
40 endif(${PROJECT_NAME}_BUILD)
42 ## ======================
43 ## == Uninstall target ==
44 ## ======================
47 "${PROJECT_SOURCE_DIR}/cmake/cpPlgUninstall.cmake.in"
48 "${PROJECT_BINARY_DIR}/cmake/cpPlgUninstall.cmake"
53 COMMAND ${CMAKE_COMMAND} -P ${PROJECT_BINARY_DIR}/cmake/cpPlgUninstall.cmake