cmake: Switch to FairCMakeModules

Let's use FairCMakeModules.
If it's not there, use a fallback.
And finally synced the fallback with the current version in
FairCMakeModules.
This commit is contained in:
Christian Tacke
2021-05-09 17:05:29 +02:00
parent e7dad4b9f5
commit a9555ba297
2 changed files with 17 additions and 5 deletions

View File

@@ -12,6 +12,12 @@ cmake_policy(VERSION 3.12...3.15)
# Project ######################################################################
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)
include(FairMQLib)
find_package(FairCMakeModules 0.1 QUIET)
if(NOT FairCMakeModules_FOUND)
message(WARNING "Could not find FairCMakeModules, falling back to local copy. "
"It is recommended to install https://github.com/FairRootGroup/FairCMakeModules")
list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/fallback")
endif()
include(FairFindPackage2)
get_git_version()

View File

@@ -6,8 +6,14 @@
# copied verbatim in the file "LICENSE" #
################################################################################
if(CMAKE_VERSION VERSION_LESS 3.12)
message(FATAL_ERROR "Module FairFindPackage2 requires CMake 3.12 or later!")
endif()
include_guard(GLOBAL)
#
# find_package2(PRIVATE|PUBLIC|INTERFACE <pkgname>
# find_package2(PRIVATE|PUBLIC|INTERFACE|BUNDLED <pkgname>
# [VERSION <version>]
# [COMPONENTS <list of components>]
# [ADD_REQUIREMENTS_OF <list of dep_pgkname>]
@@ -90,18 +96,18 @@ macro(find_package2 qualifier pkgname)
if(${__qualifier__} STREQUAL PRIVATE)
set(PROJECT_${pkgname}_VERSION ${__version__})
set(PROJECT_${pkgname}_COMPONENTS ${__components__})
set(PROJECT_PACKAGE_DEPENDENCIES ${PROJECT_PACKAGE_DEPENDENCIES} ${pkgname})
list(APPEND PROJECT_PACKAGE_DEPENDENCIES ${pkgname})
elseif(${__qualifier__} STREQUAL PUBLIC)
set(PROJECT_${pkgname}_VERSION ${__version__})
set(PROJECT_${pkgname}_COMPONENTS ${__components__})
set(PROJECT_PACKAGE_DEPENDENCIES ${PROJECT_PACKAGE_DEPENDENCIES} ${pkgname})
list(APPEND PROJECT_PACKAGE_DEPENDENCIES ${pkgname})
set(PROJECT_INTERFACE_${pkgname}_VERSION ${__version__})
set(PROJECT_INTERFACE_${pkgname}_COMPONENTS ${__components__})
set(PROJECT_INTERFACE_PACKAGE_DEPENDENCIES ${PROJECT_INTERFACE_PACKAGE_DEPENDENCIES} ${pkgname})
list(APPEND PROJECT_INTERFACE_PACKAGE_DEPENDENCIES ${pkgname})
elseif(${__qualifier__} STREQUAL INTERFACE)
set(PROJECT_INTERFACE_${pkgname}_VERSION ${__version__})
set(PROJECT_INTERFACE_${pkgname}_COMPONENTS ${__components__})
set(PROJECT_INTERFACE_PACKAGE_DEPENDENCIES ${PROJECT_INTERFACE_PACKAGE_DEPENDENCIES} ${pkgname})
list(APPEND PROJECT_INTERFACE_PACKAGE_DEPENDENCIES ${pkgname})
endif()
endif()