Add variables with the minimal versions of GNU and Clang in the CMakeLists.txt file
This commit is contained in:
parent
043d2e7485
commit
3c14405874
@ -28,6 +28,8 @@ if (NOT CMAKE_CXX_LINK_PIE_SUPPORTED)
|
||||
message(WARNING "Link-time PIE not supported: ${pie_output}.\n")
|
||||
endif()
|
||||
set(CMAKE_CXX_FLAGS "-Wall")
|
||||
set(MINIMAL_GNU "11.0")
|
||||
set(MINIMAL_CLANG "13.0")
|
||||
|
||||
if (NOT MSVC)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pthread")
|
||||
@ -47,13 +49,13 @@ endif()
|
||||
|
||||
if (${CMAKE_CXX_COMPILER_ID} STREQUAL GNU)
|
||||
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 11.0)
|
||||
message(FATAL_ERROR "A GNU compiler version of preferably 11 or higher is required.")
|
||||
message(FATAL_ERROR "G++ ${MINIMAL_GNU} or higher is required.")
|
||||
endif()
|
||||
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -fira-loop-pressure -ftree-loop-distribution -floop-interchange -fipa-pta -fivopts -s")
|
||||
set(CMAKE_CXX_FLAGS "-fno-use-linker-plugin -fwhole-program ${CMAKE_CXX_FLAGS}")
|
||||
elseif(${CMAKE_CXX_COMPILER_ID} STREQUAL Clang)
|
||||
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 13.0)
|
||||
message(FATAL_ERROR "Clang 13.0 or higher is required.")
|
||||
message(FATAL_ERROR "Clang ${MINIMAL_CLANG} or higher is required.")
|
||||
endif()
|
||||
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}")
|
||||
set(CMAKE_CXX_FLAGS "-fwhole-program-vtables ${CMAKE_CXX_FLAGS}")
|
||||
@ -128,7 +130,7 @@ if (UNIX AND NOT MINGW)
|
||||
if (CPACK_RPM_PACKAGE_SOURCES)
|
||||
set(CPACK_RPM_SOURCE_PKG_PACKAGING_INSTALL_PREFIX "/")
|
||||
set(CPACK_GENERATOR RPM)
|
||||
set(CPACK_RPM_BUILDREQUIRES "cmake >= 3.18, clang >= 11.0.0")
|
||||
set(CPACK_RPM_BUILDREQUIRES "cmake >= ${CMAKE_MINIMUM_REQUIRED_VERSION}, clang >= ${MINIMAL_CLANG}.0")
|
||||
install(DIRECTORY src DESTINATION ${CPACK_RPM_SOURCE_PKG_PACKAGING_INSTALL_PREFIX})
|
||||
install(DIRECTORY resources DESTINATION ${CPACK_RPM_SOURCE_PKG_PACKAGING_INSTALL_PREFIX})
|
||||
install(DIRECTORY scripts DESTINATION ${CPACK_RPM_SOURCE_PKG_PACKAGING_INSTALL_PREFIX})
|
||||
|
Loading…
Reference in New Issue
Block a user