Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 2 additions & 14 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,7 @@
# For the licensing terms see $ROOTSYS/LICENSE.
# For the list of contributors see $ROOTSYS/README/CREDITS.

if(MSVC)
# required for the following feature & bug fix:
# 3.15: Added $<REMOVE_DUPLICATES:list> generator expression
# 3.16: Bug fix with CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS: the auto-generated exports
# are now updated only when the object files providing the symbols are updated
cmake_minimum_required(VERSION 3.16 FATAL_ERROR)
else()
cmake_minimum_required(VERSION 3.9 FATAL_ERROR)
endif()
cmake_minimum_required(VERSION 3.16 FATAL_ERROR)

if(CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR)
message(FATAL_ERROR
Expand Down Expand Up @@ -649,11 +641,7 @@ if(testing)
endif()
endif()

if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.10.0")
cmake_host_system_information(RESULT PROCESSOR QUERY PROCESSOR_DESCRIPTION)
else()
set(PROCESSOR ${CMAKE_HOST_SYSTEM_PROCESSOR})
endif()
cmake_host_system_information(RESULT PROCESSOR QUERY PROCESSOR_DESCRIPTION)

message(STATUS "ROOT Configuration \n
System ${CMAKE_SYSTEM}
Expand Down
9 changes: 2 additions & 7 deletions cmake/modules/RootConfiguration.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -274,13 +274,8 @@ set(gvizcflags)

set(buildpython ${value${pyroot}})
set(pythonlibdir ${PYTHON_LIBRARY_DIR})
if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.14)
set(pythonlib ${PYTHON_LIBRARIES})
set(pythonincdir ${PYTHON_INCLUDE_DIRS})
else()
set(pythonlib ${PYTHON_LIBRARY})
set(pythonincdir ${PYTHON_INCLUDE_DIR})
endif()
set(pythonlib ${PYTHON_LIBRARIES})
set(pythonincdir ${PYTHON_INCLUDE_DIRS})
set(pythonlibflags)

set(buildxml ${value${xml}})
Expand Down
12 changes: 1 addition & 11 deletions cmake/modules/RootTestDriver.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -168,17 +168,7 @@ if(CMD)
# Filter messages in stderr that are expected
string(STRIP "${_errvar0}" _errvar0)
string(REPLACE "\n" ";" _lines "${_errvar0}")
if(CMAKE_VERSION VERSION_GREATER 3.6)
list(FILTER _lines EXCLUDE REGEX "^Info in <.+::ACLiC>: creating shared library.+")
else()
set(__lines)
foreach(_line ${_lines})
if(NOT _line MATCHES "^Info in <.+::ACLiC>: creating shared library.+")
list(APPEND __lines "${_line}")
endif()
endforeach()
set(_lines ${__lines})
endif()
list(FILTER _lines EXCLUDE REGEX "^Info in <.+::ACLiC>: creating shared library.+")
string(REPLACE ";" "\n" _errvar0 "${_lines}")
if(_errvar0)
message(FATAL_ERROR "Unexpected error output")
Expand Down
295 changes: 130 additions & 165 deletions cmake/modules/SearchRootCoreDeps.cmake

Large diffs are not rendered by default.

20 changes: 0 additions & 20 deletions cmake/modules/SetUpMacOS.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -7,26 +7,6 @@
set(ROOT_ARCHITECTURE macosx)
set(ROOT_PLATFORM macosx)

# https://gitlab.kitware.com/cmake/cmake/issues/19222
if(CMAKE_VERSION VERSION_LESS 3.14.4)
if(CMAKE_GENERATOR STREQUAL "Ninja")
find_program(NINJAPROG ninja DOC "looking for Ninja to be used")
if (NINJAPROG)
execute_process(COMMAND ${NINJAPROG} --version
OUTPUT_VARIABLE NINJAVERSION
OUTPUT_STRIP_TRAILING_WHITESPACE
RESULT_VARIABLE NINJAVERSIONRES)
if(${NINJAVERSIONRES} EQ 0)
if(${NINJAVERSION} VERSION_GREATER 1.8.2)
message(WARNING "You have hit https://gitlab.kitware.com/cmake/cmake/issues/19222\n"
"Your build will be indeterministic, i.e. unreliable for incremental builds."
"To fix this, please install CMake >= 3.14.4!")
endif()
endif()
endif()
endif()
endif()

if (CMAKE_SYSTEM_NAME MATCHES Darwin)
EXECUTE_PROCESS(COMMAND sw_vers "-productVersion"
COMMAND cut -d . -f 1-2
Expand Down
5 changes: 1 addition & 4 deletions interpreter/cling/tools/plugins/clad/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -61,10 +61,7 @@ set(_clad_cmake_logging_settings
LOG_INSTALL ON
)

# Newer CMake can report the issue with Clad directly to stdout
if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.14)
list(APPEND _clad_cmake_logging_settings LOG_OUTPUT_ON_FAILURE ON)
endif()
list(APPEND _clad_cmake_logging_settings LOG_OUTPUT_ON_FAILURE ON)

ExternalProject_Add(
clad
Expand Down
70 changes: 26 additions & 44 deletions math/minuit2/doc/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,49 +11,31 @@ set_package_properties(Doxygen PROPERTIES
TYPE OPTIONAL
PURPOSE "Requires CMake 3.9, adds docs target")

# Note that CMake 3.9+ provides a much more powerful and idiomatic FindDoxygen
# On the older version, generating the main page is difficult.
if(CMAKE_VERSION VERSION_LESS 3.9)
# Provide nice warning to user about docs target
find_package(Doxygen)
if(DOXYGEN_FOUND AND DOXYGEN_DOT_FOUND)
message(WARNING "Docs not supported on CMake < 3.9")
else()
message(WARNING "Docs not supported on CMake < 3.9, and Doxygen not found")
endif()
find_package(Doxygen OPTIONAL_COMPONENTS dot)

# Only add docs target if Doxygen present
if(TARGET Doxygen::doxygen AND TARGET Doxygen::dot)
# Setting DOXYGEN settings
set(DOXYGEN_GENERATE_LATEX YES)
set(DOXYGEN_SOURCE_BROWSER YES)
set(DOXYGEN_EXTRACT_ALL YES)
set(DOXYGEN EXTRACT_PRIVATE YES)
set(DOXYGEN_EXTRACT_STATIC YES)

get_target_property(MATH_SOURCES Minuit2Math SOURCES)
get_target_property(MINUIT2_SOURCES Minuit2 SOURCES)

file(READ Minuit2.md MINUIT2_MAINPAGE)
string(REPLACE "\\page Minuit2Page" "\\mainpage" MINUIT2_MAINPAGE "${MINUIT2_MAINPAGE}")
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/index.md" "${MINUIT2_MAINPAGE}")

# Actually add the docs target
doxygen_add_docs(docs
"${CMAKE_CURRENT_BINARY_DIR}/index.md"
${MATH_SOURCES}
${MINUIT2_SOURCES}
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/.."
)
else()
# Policy needs to be set to use the new version of FindDoxygen
# when the main minimum required CMake is < 3.3
cmake_policy(SET CMP0057 NEW)

find_package(Doxygen OPTIONAL_COMPONENTS dot)

# Only add docs target if Doxygen present
if(TARGET Doxygen::doxygen AND TARGET Doxygen::dot)

# Setting DOXYGEN settings
set(DOXYGEN_GENERATE_LATEX YES)
set(DOXYGEN_SOURCE_BROWSER YES)
set(DOXYGEN_EXTRACT_ALL YES)
set(DOXYGEN EXTRACT_PRIVATE YES)
set(DOXYGEN_EXTRACT_STATIC YES)

get_target_property(MATH_SOURCES Minuit2Math SOURCES)
get_target_property(MINUIT2_SOURCES Minuit2 SOURCES)

file(READ Minuit2.md MINUIT2_MAINPAGE)
string(REPLACE "\\page Minuit2Page" "\\mainpage" MINUIT2_MAINPAGE "${MINUIT2_MAINPAGE}")
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/index.md" "${MINUIT2_MAINPAGE}")

# Actually add the docs target
doxygen_add_docs(docs
"${CMAKE_CURRENT_BINARY_DIR}/index.md"
${MATH_SOURCES}
${MINUIT2_SOURCES}
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/.."
)
else()
message(STATUS "Doxygen and/or Dot not found, not adding docs target")
endif()

message(STATUS "Doxygen and/or Dot not found, not adding docs target")
endif()