cmake_minimum_required(VERSION 3.0) ## ======================== ## == Project definition == ## ======================== set(prj_MAJ_VERSION 0) set(prj_MIN_VERSION 1) set(prj_REL_VERSION 0) set(prj_VERSION "${prj_MAJ_VERSION}.${prj_MIN_VERSION}.${prj_REL_VERSION}") set(prj_SHORT_VERSION "${prj_MAJ_VERSION}") project(fpa VERSION ${prj_VERSION}) ## ========================== ## == Some useful policies == ## ========================== set(_policies CMP0015 CMP0020 CMP0042 CMP0053) foreach(_p ${_policies}) if(POLICY ${_p}) cmake_policy(SET ${_p} NEW) endif(POLICY ${_p}) endforeach(_p) ## =============================== ## == Some basic configurations == ## =============================== include(cmake/fpaBaseConfig.cmake) ## ============== ## == Find ITK == ## ============== find_package(ITK CONFIG REQUIRED) include(${ITK_USE_FILE}) ## ========================= ## == Installation values == ## ========================= set(config_install_dir "lib/cmake/${PROJECT_NAME}") set(include_install_dir "include") set(generated_dir "${CMAKE_CURRENT_BINARY_DIR}/generated") set(version_config "${generated_dir}/${PROJECT_NAME}ConfigVersion.cmake") set(project_config "${generated_dir}/${PROJECT_NAME}Config.cmake") set(targets_export_name "${PROJECT_NAME}Targets") set(namespace "${PROJECT_NAME}::") ## =========================== ## == Build different parts == ## =========================== subdirs(lib) ## =============================== ## == Global installation rules == ## =============================== include(CMakePackageConfigHelpers) write_basic_package_version_file( "${version_config}" COMPATIBILITY SameMajorVersion ) configure_package_config_file( "cmake/${PROJECT_NAME}Config.cmake.in" "${project_config}" INSTALL_DESTINATION "${config_install_dir}" ) install( FILES "${project_config}" "${version_config}" "${CMAKE_CURRENT_SOURCE_DIR}/cmake/fpaBaseConfig.cmake" DESTINATION "${config_install_dir}" ) #install( # EXPORT "${targets_export_name}" # NAMESPACE "${namespace}" # DESTINATION "${config_install_dir}" # ) ## eof - $RCSfile$