Update upstream source from tag 'upstream/3.31.1'

Update to upstream version '3.31.1'
with Debian dir 942f79eac30fd3f80d506cb08527489955fbef37
This commit is contained in:
Timo Röhling 2024-11-22 23:57:43 +01:00
commit 065c1e7cdd
223 changed files with 1175 additions and 485 deletions

View File

@ -599,7 +599,8 @@ target is already built, the command will not execute.
[WORKING_DIRECTORY dir]
[COMMENT comment]
[VERBATIM]
[COMMAND_EXPAND_LISTS])
[COMMAND_EXPAND_LISTS]
[USES_TERMINAL])
This defines a new command that will be associated with building the
specified ``<target>``. The ``<target>`` must be defined in the current

View File

@ -3,6 +3,7 @@ Visual Studio 10 2010
Removed. This once generated Visual Studio 10 2010 project files, but
the generator has been removed since CMake 3.25. It is still possible
to build with VS 10 2010 tools using the :generator:`Visual Studio 14 2015`
(or above) generator with :variable:`CMAKE_GENERATOR_TOOLSET` set to
``v100``, or by using the :generator:`NMake Makefiles` generator.
to build with the VS 10 2010 toolset by also installing VS 2015 (or above)
and using the :generator:`Visual Studio 14 2015` (or above) generator with
:variable:`CMAKE_GENERATOR_TOOLSET` set to ``v100``,
or by using the :generator:`NMake Makefiles` generator.

View File

@ -3,6 +3,7 @@ Visual Studio 11 2012
Removed. This once generated Visual Studio 11 2012 project files, but
the generator has been removed since CMake 3.28. It is still possible
to build with VS 11 2012 tools using the :generator:`Visual Studio 14 2015`
(or above) generator with :variable:`CMAKE_GENERATOR_TOOLSET` set to ``v110``,
to build with the VS 11 2012 toolset by also installing VS 2015 (or above)
and using the :generator:`Visual Studio 14 2015` (or above) generator with
:variable:`CMAKE_GENERATOR_TOOLSET` set to ``v110``,
or by using the :generator:`NMake Makefiles` generator.

View File

@ -3,6 +3,7 @@ Visual Studio 12 2013
Removed. This once generated Visual Studio 12 2013 project files, but
the generator has been removed since CMake 3.31. It is still possible
to build with VS 12 2013 tools using the :generator:`Visual Studio 14 2015`
(or above) generator with :variable:`CMAKE_GENERATOR_TOOLSET` set to ``v120``,
to build with the VS 12 2013 toolset by also installing VS 2015 (or above)
and using the :generator:`Visual Studio 14 2015` (or above) generator with
:variable:`CMAKE_GENERATOR_TOOLSET` set to ``v120``,
or by using the :generator:`NMake Makefiles` generator.

View File

@ -3,7 +3,7 @@ Visual Studio 9 2008
Removed. This once generated Visual Studio 9 2008 project files, but
the generator has been removed since CMake 3.30. It is still possible
to build with VS 9 2008 tools using the :generator:`Visual Studio 14 2015`
generator (or above, and with VS 10 2010 also installed) with
:variable:`CMAKE_GENERATOR_TOOLSET` set to ``v90``, or by using
the :generator:`NMake Makefiles` generator.
to build with the VS 9 2008 toolset by also installing VS 10 2010 and
VS 2015 (or above) and using the :generator:`Visual Studio 14 2015`
generator (or above) with :variable:`CMAKE_GENERATOR_TOOLSET` set to ``v90``,
or by using the :generator:`NMake Makefiles` generator.

View File

@ -408,7 +408,9 @@ starting point.
.. code-block:: cmake
find_package(PkgConfig)
pkg_check_modules(PC_Foo QUIET Foo)
if(PKG_CONFIG_FOUND)
pkg_check_modules(PC_Foo QUIET Foo)
endif()
This should define some variables starting ``PC_Foo_`` that contain the
information from the ``Foo.pc`` file.

View File

@ -3,6 +3,8 @@ CMP0132
.. versionadded:: 3.24
Do not set compiler environment variables on first run.
Apart from when using the Xcode generator and some Visual Studio generators,
CMake 3.23 and below will set environment variables like :envvar:`CC`,
:envvar:`CXX`, etc. when the corresponding language is enabled.

View File

@ -24,8 +24,8 @@ following as errors that previously went unreported:
``POST_BUILD`` to be given. Previously, if none were given, ``POST_BUILD``
was assumed, or if multiple keywords were given, the last one was used.
* The ``TARGET`` form does not accept ``DEPENDS``, ``DEPENDS_EXPLICIT_ONLY``,
``DEPFILE``, ``IMPLICIT_DEPENDS``, ``MAIN_DEPENDENCY``, ``JOB_POOL``,
``JOB_SERVER_AWARE``, or ``USES_TERMINAL`` keywords.
``DEPFILE``, ``IMPLICIT_DEPENDS``, ``MAIN_DEPENDENCY``, ``JOB_POOL``, or
``JOB_SERVER_AWARE`` keywords.
* The ``TARGET`` form now requires at least one ``COMMAND`` to be given.
* If a keyword expects a value to be given after it, but no value is provided,
that was previously treated as though the keyword was not given at all.

View File

@ -235,8 +235,8 @@ Changes made since CMake 3.29.0 include the following.
to ``perMachine`` on their own schedule by setting
``CPACK_WIX_INSTALL_SCOPE``.
3.29.6, 3.29.7, 3.29.8
----------------------
3.29.6, 3.29.7, 3.29.8, 3.29.9
------------------------------
* These versions made no changes to documented features or interfaces.
Some implementation updates were made to support ecosystem changes

View File

@ -298,3 +298,10 @@ Changes made since CMake 3.30.0 include the following.
This refines 3.30.3's behavior change to restore behavior of nested
directories that call :command:`project` with the same project name,
and it addresses the bug in the implementation introduced in 3.30.4.
3.30.6
------
* This version made no changes to documented features or interfaces.
Some implementation updates were made to support ecosystem changes
and/or fix regressions.

View File

@ -257,3 +257,15 @@ Other Changes
* The :command:`cmake_parse_arguments(PARSE_ARGV)` command now defines a
variable for an empty string after a single-value keyword. See policy
:policy:`CMP0174`.
Updates
=======
Changes made since CMake 3.31.0 include the following.
3.31.1
------
* This version made no changes to documented features or interfaces.
Some implementation updates were made to support ecosystem changes
and/or fix regressions.

View File

@ -1410,7 +1410,7 @@ function(_Boost_COMPONENT_DEPENDENCIES component _ret)
set(_Boost_THREAD_DEPENDENCIES chrono atomic)
set(_Boost_WAVE_DEPENDENCIES filesystem serialization thread chrono atomic)
set(_Boost_WSERIALIZATION_DEPENDENCIES serialization)
if(Boost_VERSION_STRING VERSION_GREATER_EQUAL 1.86.0 AND NOT Boost_NO_WARN_NEW_VERSIONS)
if(Boost_VERSION_STRING VERSION_GREATER_EQUAL 1.87.0 AND NOT Boost_NO_WARN_NEW_VERSIONS)
message(WARNING "New Boost version may have incorrect or missing dependencies and imported targets")
endif()
endif()
@ -1685,7 +1685,7 @@ else()
# _Boost_COMPONENT_HEADERS. See the instructions at the top of
# _Boost_COMPONENT_DEPENDENCIES.
set(_Boost_KNOWN_VERSIONS ${Boost_ADDITIONAL_VERSIONS}
"1.85.0" "1.85" "1.84.0" "1.84"
"1.86.0" "1.86" "1.85.0" "1.85" "1.84.0" "1.84"
"1.83.0" "1.83" "1.82.0" "1.82" "1.81.0" "1.81" "1.80.0" "1.80" "1.79.0" "1.79"
"1.78.0" "1.78" "1.77.0" "1.77" "1.76.0" "1.76" "1.75.0" "1.75" "1.74.0" "1.74"
"1.73.0" "1.73" "1.72.0" "1.72" "1.71.0" "1.71" "1.70.0" "1.70" "1.69.0" "1.69"

View File

@ -133,7 +133,9 @@ function(FIND_IMAGEMAGICK_API component header)
NO_DEFAULT_PATH
)
find_path(ImageMagick_${component}_ARCH_INCLUDE_DIR
NAMES magick/magick-baseconfig.h
NAMES
magick/magick-baseconfig.h
MagickCore/magick-baseconfig.h
HINTS
${PC_${component}_INCLUDEDIR}
${PC_${component}_INCLUDE_DIRS}

View File

@ -36,7 +36,9 @@ cmake_policy(PUSH)
cmake_policy(SET CMP0159 NEW) # file(STRINGS) with REGEX updates CMAKE_MATCH_<n>
find_package(PkgConfig QUIET)
pkg_check_modules(PC_SQLite3 QUIET sqlite3)
if(PKG_CONFIG_FOUND)
pkg_check_modules(PC_SQLite3 QUIET sqlite3)
endif()
# Look for the necessary header
find_path(SQLite3_INCLUDE_DIR NAMES sqlite3.h

View File

@ -4,23 +4,6 @@
cmake_minimum_required(VERSION 3.30)
cmake_policy(SET CMP0174 NEW) # TODO: Remove this when we can update the above to 3.31
# Overwrite possibly existing ${arg_CTEST_FILE} with empty file
set(flush_tests_MODE WRITE)
# Flushes script to ${arg_CTEST_FILE}
macro(flush_script)
file(${flush_tests_MODE} "${arg_CTEST_FILE}" "${script}")
set(flush_tests_MODE APPEND PARENT_SCOPE)
set(script "")
endmacro()
# Flushes tests_buffer to tests
macro(flush_tests_buffer)
list(APPEND tests "${tests_buffer}")
set(tests_buffer "")
endmacro()
function(add_command name test_name)
set(args "")
foreach(arg ${ARGN})
@ -31,10 +14,6 @@ function(add_command name test_name)
endif()
endforeach()
string(APPEND script "${name}(${test_name} ${args})\n")
string(LENGTH "${script}" script_len)
if(${script_len} GREATER "50000")
flush_script()
endif()
set(script "${script}" PARENT_SCOPE)
endfunction()
@ -97,7 +76,12 @@ function(gtest_discover_tests_impl)
set(script)
set(suite)
set(tests)
set(tests_buffer)
set(tests_buffer "")
# If a file at ${arg_CTEST_FILE} already exists, we overwrite it.
# For performance reasons, we write to this file in chunks, and this variable
# is updated to APPEND after the first write.
set(file_write_mode WRITE)
if(arg_TEST_FILTER)
set(filter "--gtest_filter=${arg_TEST_FILTER}")
@ -229,25 +213,16 @@ function(gtest_discover_tests_impl)
string(APPEND script " [==[${extra_args}]==]")
endif()
string(APPEND script ")\n")
string(LENGTH "${script}" script_len)
if(${script_len} GREATER "50000")
# flush_script() expects to set variables in the parent scope, so we
# need to create one since we actually want the changes in our scope
block(SCOPE_FOR VARIABLES)
flush_script()
endblock()
endif()
set(maybe_disabled "")
if(suite MATCHES "^DISABLED_" OR test MATCHES "^DISABLED_")
add_command(set_tests_properties
"${guarded_testname}"
PROPERTIES DISABLED TRUE
)
set(maybe_disabled DISABLED TRUE)
endif()
add_command(set_tests_properties
"${guarded_testname}"
PROPERTIES
${maybe_disabled}
WORKING_DIRECTORY "${arg_TEST_WORKING_DIR}"
SKIP_REGULAR_EXPRESSION "\\[ SKIPPED \\]"
${arg_TEST_PROPERTIES}
@ -260,22 +235,39 @@ function(gtest_discover_tests_impl)
string(REPLACE [[;]] [[\\;]] testname "${testname}")
list(APPEND tests_buffer "${testname}")
list(LENGTH tests_buffer tests_buffer_length)
if(${tests_buffer_length} GREATER "250")
flush_tests_buffer()
if(tests_buffer_length GREATER "250")
# Chunk updates to the final "tests" variable, keeping the
# "tests_buffer" variable that we append each test to relatively
# small. This mitigates worsening performance impacts for the
# corner case of having many thousands of tests.
list(APPEND tests "${tests_buffer}")
set(tests_buffer "")
endif()
endif()
endif()
# If we've built up a sizable script so far, write it out as a chunk now
# so we don't accumulate a massive string to write at the end
string(LENGTH "${script}" script_len)
if(${script_len} GREATER "50000")
file(${file_write_mode} "${arg_CTEST_FILE}" "${script}")
set(file_write_mode APPEND)
set(script "")
endif()
endif()
endforeach()
if(NOT tests_buffer STREQUAL "")
list(APPEND tests "${tests_buffer}")
endif()
# Create a list of all discovered tests, which users may use to e.g. set
# properties on the tests
flush_tests_buffer()
add_command(set "" ${arg_TEST_LIST} "${tests}")
# Write CTest script
flush_script()
# Write remaining content to the CTest script
file(${file_write_mode} "${arg_CTEST_FILE}" "${script}")
endfunction()

View File

@ -29,7 +29,7 @@ endif()
# We specify the platform linker information in the system file.
if (NOT _INCLUDED_FILE)
include(Platform/Linker/${CMAKE_SYSTEM_NAME}-ASM${ASM_DIALECT} OPTIONAL)
include(Platform/Linker/${CMAKE_EFFECTIVE_SYSTEM_NAME}-ASM${ASM_DIALECT} OPTIONAL)
endif ()
set(CMAKE_ASM${ASM_DIALECT}_LINKER_INFORMATION_LOADED 1)

View File

@ -31,7 +31,7 @@ endif()
# We specify the platform linker information in the system file.
if (NOT _INCLUDED_FILE)
include(Platform/Linker/${CMAKE_SYSTEM_NAME}-C OPTIONAL)
include(Platform/Linker/${CMAKE_EFFECTIVE_SYSTEM_NAME}-C OPTIONAL)
endif ()
_cmake_common_linker_platform_flags(C)

View File

@ -31,7 +31,7 @@ endif()
# We specify the platform linker information in the system file.
if (NOT _INCLUDED_FILE)
include(Platform/Linker/${CMAKE_SYSTEM_NAME}-CUDA OPTIONAL)
include(Platform/Linker/${CMAKE_EFFECTIVE_SYSTEM_NAME}-CUDA OPTIONAL)
endif ()
_cmake_common_linker_platform_flags(CUDA)

View File

@ -31,7 +31,7 @@ endif()
# We specify the platform linker information in the system file.
if (NOT _INCLUDED_FILE)
include(Platform/Linker/${CMAKE_SYSTEM_NAME}-CXX OPTIONAL)
include(Platform/Linker/${CMAKE_EFFECTIVE_SYSTEM_NAME}-CXX OPTIONAL)
endif ()
_cmake_common_linker_platform_flags(CXX)

View File

@ -31,7 +31,7 @@ endif()
# We specify the platform linker information in the system file.
if (NOT _INCLUDED_FILE)
include(Platform/Linker/${CMAKE_SYSTEM_NAME}-Fortran OPTIONAL)
include(Platform/Linker/${CMAKE_EFFECTIVE_SYSTEM_NAME}-Fortran OPTIONAL)
endif ()
_cmake_common_linker_platform_flags(Fortran)

View File

@ -31,7 +31,7 @@ endif()
# We specify the platform linker information in the system file.
if (NOT _INCLUDED_FILE)
include(Platform/Linker/${CMAKE_SYSTEM_NAME}-HIP OPTIONAL)
include(Platform/Linker/${CMAKE_EFFECTIVE_SYSTEM_NAME}-HIP OPTIONAL)
endif ()
_cmake_common_linker_platform_flags(HIP)

View File

@ -31,7 +31,7 @@ endif()
# We specify the platform linker information in the system file.
if (NOT _INCLUDED_FILE)
include(Platform/Linker/${CMAKE_SYSTEM_NAME}-OBJC OPTIONAL)
include(Platform/Linker/${CMAKE_EFFECTIVE_SYSTEM_NAME}-OBJC OPTIONAL)
endif ()
_cmake_common_linker_platform_flags(OBJC)

View File

@ -31,7 +31,7 @@ endif()
# We specify the platform linker information in the system file.
if (NOT _INCLUDED_FILE)
include(Platform/Linker/${CMAKE_SYSTEM_NAME}-OBJCXX OPTIONAL)
include(Platform/Linker/${CMAKE_EFFECTIVE_SYSTEM_NAME}-OBJCXX OPTIONAL)
endif ()
_cmake_common_linker_platform_flags(OBJCXX)

View File

@ -31,7 +31,7 @@ endif()
# We specify the platform linker information in the system file.
if (NOT _INCLUDED_FILE)
include(Platform/Linker/${CMAKE_SYSTEM_NAME}-Swift OPTIONAL)
include(Platform/Linker/${CMAKE_EFFECTIVE_SYSTEM_NAME}-Swift OPTIONAL)
endif ()
_cmake_common_linker_platform_flags(Swift)

View File

@ -6,5 +6,6 @@
include_guard()
macro(__aix_linker_aix lang)
set(CMAKE_${lang}_PLATFORM_LINKER_ID AIX)
set(CMAKE_${lang}_LINK_LIBRARIES_PROCESSING ORDER=REVERSE DEDUPLICATION=ALL)
endmacro()

View File

@ -0,0 +1,5 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
# GNU is the default linker
include(Platform/Linker/Android-GNU-ASM)

View File

@ -0,0 +1,5 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
# GNU is the default linker
include(Platform/Linker/Android-GNU-C)

View File

@ -0,0 +1,5 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
# GNU is the default linker
include(Platform/Linker/Android-GNU-CXX)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Linux-GNU-ASM)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Linux-GNU-C)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Linux-GNU-CXX)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Linux-LLD-ASM)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Linux-LLD-C)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Linux-LLD-CXX)

View File

@ -6,6 +6,7 @@
include_guard()
macro(__apple_linker_appleclang lang)
set(CMAKE_${lang}_PLATFORM_LINKER_ID AppleClang)
set(CMAKE_${lang}_LINK_LIBRARIES_PROCESSING ORDER=REVERSE DEDUPLICATION=ALL)
# Features for LINK_LIBRARY generator expression

View File

@ -2,3 +2,5 @@
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Apple-AppleClang-C)
set(CMAKE_C_PLATFORM_LINKER_ID LLD)

View File

@ -2,3 +2,5 @@
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Apple-AppleClang-CXX)
set(CMAKE_CXX_PLATFORM_LINKER_ID LLD)

View File

@ -2,3 +2,5 @@
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Apple-AppleClang-OBJC)
set(CMAKE_OBJC_PLATFORM_LINKER_ID LLD)

View File

@ -2,3 +2,5 @@
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Apple-AppleClang-OBJCXX)
set(CMAKE_OBJCXX_PLATFORM_LINKER_ID LLD)

View File

@ -2,3 +2,5 @@
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Apple-AppleClang-C)
set(CMAKE_C_PLATFORM_LINKER_ID MOLD)

View File

@ -2,3 +2,5 @@
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Apple-AppleClang-CXX)
set(CMAKE_CXX_PLATFORM_LINKER_ID MOLD)

View File

@ -2,3 +2,5 @@
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Apple-AppleClang-OBJC)
set(CMAKE_OBJC_PLATFORM_LINKER_ID MOLD)

View File

@ -2,3 +2,5 @@
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Apple-AppleClang-OBJCXX)
set(CMAKE_OBJCXX_PLATFORM_LINKER_ID MOLD)

View File

@ -8,6 +8,7 @@ include_guard()
include(Platform/Linker/GNU)
macro(__cygwin_linker_gnu lang)
set(CMAKE_${lang}_PLATFORM_LINKER_ID GNU)
if(CMAKE_${lang}_COMPILER_LINKER)
__cmake_set_whole_archive_feature("${CMAKE_${lang}_COMPILER_LINKER}" "${lang}")
endif()

View File

@ -12,5 +12,6 @@ include(Platform/Linker/CYGWIN-GNU)
macro(__cygwin_linker_lld lang)
__cygwin_linker_gnu(${lang})
set(CMAKE_${lang}_PLATFORM_LINKER_ID LLD)
set(CMAKE_${lang}_LINK_LIBRARIES_PROCESSING ORDER=REVERSE DEDUPLICATION=ALL)
endmacro()

View File

@ -8,6 +8,7 @@ include_guard()
include(Platform/Linker/GNU)
macro(__freebsd_linker_gnu lang)
set(CMAKE_${lang}_PLATFORM_LINKER_ID GNU)
if(CMAKE_${lang}_COMPILER_LINKER)
__cmake_set_whole_archive_feature("${CMAKE_${lang}_COMPILER_LINKER}" "${lang}")
endif()

View File

@ -12,5 +12,6 @@ include(Platform/Linker/FreeBSD-GNU)
macro(__freebsd_linker_lld lang)
__freebsd_linker_gnu(${lang})
set(CMAKE_${lang}_PLATFORM_LINKER_ID LLD)
set(CMAKE_${lang}_LINK_LIBRARIES_PROCESSING ORDER=REVERSE DEDUPLICATION=ALL)
endmacro()

View File

@ -8,6 +8,7 @@ include_guard()
include(Platform/Linker/GNU)
macro(__gnu_linker_gnu lang)
set(CMAKE_${lang}_PLATFORM_LINKER_ID GNU)
if(CMAKE_${lang}_COMPILER_LINKER)
__cmake_set_whole_archive_feature("${CMAKE_${lang}_COMPILER_LINKER}" "${lang}")
endif()

View File

@ -8,6 +8,7 @@ include_guard()
include(Platform/Linker/GNU)
macro(__linux_linker_gnu lang)
set(CMAKE_${lang}_PLATFORM_LINKER_ID GNU)
if(CMAKE_${lang}_COMPILER_LINKER)
__cmake_set_whole_archive_feature("${CMAKE_${lang}_COMPILER_LINKER}" "${lang}")
endif()

View File

@ -2,3 +2,5 @@
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Linux-GNU-ASM)
set(CMAKE_ASM_PLATFORM_LINKER_ID GNUgold)

View File

@ -2,3 +2,5 @@
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Linux-GNU-C)
set(CMAKE_C_PLATFORM_LINKER_ID GNUgold)

View File

@ -2,3 +2,5 @@
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Linux-GNU-CUDA)
set(CMAKE_CUDA_PLATFORM_LINKER_ID GNUgold)

View File

@ -2,3 +2,5 @@
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Linux-GNU-CXX)
set(CMAKE_CXX_PLATFORM_LINKER_ID GNUgold)

View File

@ -2,3 +2,5 @@
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Linux-GNU-Fortran)
set(CMAKE_Fortran_PLATFORM_LINKER_ID GNUgold)

View File

@ -2,3 +2,5 @@
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Linux-GNU-HIP)
set(CMAKE_HIP_PLATFORM_LINKER_ID GNUgold)

View File

@ -12,5 +12,6 @@ include(Platform/Linker/Linux-GNU)
macro(__linux_linker_lld lang)
__linux_linker_gnu(${lang})
set(CMAKE_${lang}_PLATFORM_LINKER_ID LLD)
set(CMAKE_${lang}_LINK_LIBRARIES_PROCESSING ORDER=REVERSE DEDUPLICATION=ALL)
endmacro()

View File

@ -12,5 +12,7 @@ include(Platform/Linker/Linux-GNU)
macro(__linux_linker_mold lang)
__linux_linker_gnu(${lang})
set(CMAKE_C_PLATFORM_LINKER_ID MOLD)
set(CMAKE_${lang}_LINK_LIBRARIES_PROCESSING ORDER=REVERSE DEDUPLICATION=ALL)
endmacro()

View File

@ -8,6 +8,7 @@ include_guard()
include(Platform/Linker/GNU)
macro(__netbsd_linker_gnu lang)
set(CMAKE_${lang}_PLATFORM_LINKER_ID GNU)
if(CMAKE_${lang}_COMPILER_LINKER)
__cmake_set_whole_archive_feature("${CMAKE_${lang}_COMPILER_LINKER}" "${lang}")
endif()

View File

@ -8,6 +8,7 @@ include_guard()
include(Platform/Linker/GNU)
macro(__openbsd_linker_gnu lang)
set(CMAKE_${lang}_PLATFORM_LINKER_ID GNU)
if(CMAKE_${lang}_COMPILER_LINKER)
__cmake_set_whole_archive_feature("${CMAKE_${lang}_COMPILER_LINKER}" "${lang}")
endif()

View File

@ -12,5 +12,6 @@ include(Platform/Linker/OpenBSD-GNU)
macro(__openbsd_linker_lld lang)
__openbsd_linker_gnu(${lang})
set(CMAKE_${lang}_PLATFORM_LINKER_ID LLD)
set(CMAKE_${lang}_LINK_LIBRARIES_PROCESSING ORDER=REVERSE DEDUPLICATION=ALL)
endmacro()

View File

@ -8,6 +8,7 @@ include_guard()
include(Platform/Linker/GNU)
macro(__serenityos_linker_gnu lang)
set(CMAKE_${lang}_PLATFORM_LINKER_ID GNU)
if(CMAKE_${lang}_COMPILER_LINKER)
__cmake_set_whole_archive_feature("${CMAKE_${lang}_COMPILER_LINKER}" "${lang}")
endif()

View File

@ -12,5 +12,6 @@ include(Platform/Linker/SerenityOS-GNU)
macro(__serenityos_linker_lld lang)
__serenityos_linker_gnu(${lang})
set(CMAKE_${lang}_PLATFORM_LINKER_ID LLD)
set(CMAKE_${lang}_LINK_LIBRARIES_PROCESSING ORDER=REVERSE DEDUPLICATION=ALL)
endmacro()

View File

@ -8,6 +8,7 @@ include_guard()
include(Platform/Linker/GNU)
macro(__sunos_linker_gnu lang)
set(CMAKE_${lang}_PLATFORM_LINKER_ID GNU)
if(CMAKE_${lang}_COMPILER_LINKER)
__cmake_set_whole_archive_feature("${CMAKE_${lang}_COMPILER_LINKER}" "${lang}")
endif()

View File

@ -9,6 +9,7 @@ block(SCOPE_FOR POLICIES)
cmake_policy(SET CMP0054 NEW)
macro(__sunos_linker_solaris lang)
set(CMAKE_${lang}_PLATFORM_LINKER_ID Solaris)
# Features for LINK_LIBRARY generator expression
## WHOLE_ARCHIVE: Force loading all members of an archive
if (CMAKE_SYSTEM_VERSION VERSION_GREATER "5.10")

View File

@ -8,6 +8,7 @@ include_guard()
include(Platform/Linker/GNU)
macro(__windows_linker_gnu lang)
set(CMAKE_${lang}_PLATFORM_LINKER_ID GNU)
if(CMAKE_${lang}_COMPILER_LINKER)
__cmake_set_whole_archive_feature("${CMAKE_${lang}_COMPILER_LINKER}" "${lang}")
endif()

View File

@ -9,6 +9,7 @@ block(SCOPE_FOR POLICIES)
cmake_policy(SET CMP0054 NEW)
macro(__windows_linker_lld lang)
set(CMAKE_${lang}_PLATFORM_LINKER_ID LLD)
# Features for LINK_LIBRARY generator expression
if(CMAKE_${lang}_COMPILER_LINKER_FRONTEND_VARIANT STREQUAL "GNU")
include(Platform/Linker/Windows-GNU)

View File

@ -17,6 +17,7 @@ if(MSVC_VERSION GREATER "1900")
endif()
macro(__windows_linker_msvc lang)
set(CMAKE_${lang}_PLATFORM_LINKER_ID MSVC)
set(CMAKE_${lang}_LINK_LIBRARIES_PROCESSING ORDER=FORWARD DEDUPLICATION=ALL)
# Features for LINK_LIBRARY generator expression

View File

@ -0,0 +1,5 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
# MSVC is the default linker
include(Platform/Linker/WindowsCE-MSVC-C)

View File

@ -0,0 +1,5 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
# MSVC is the default linker
include(Platform/Linker/WindowsCE-MSVC-CXX)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-MSVC-C)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-MSVC-CXX)

View File

@ -0,0 +1,5 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
# MSVC is the default linker
include(Platform/Linker/WindowsKernelModeDriver-MSVC-C)

View File

@ -0,0 +1,5 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
# MSVC is the default linker
include(Platform/Linker/WindowsKernelModeDriver-MSVC-CXX)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-MSVC-C)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-MSVC-CXX)

View File

@ -0,0 +1,15 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
block(SCOPE_FOR POLICIES)
cmake_policy(SET CMP0054 NEW)
if(CMAKE_ASM_SIMULATE_ID STREQUAL "MSVC")
# MSVC is the default linker
include(Platform/Linker/WindowsPhone-MSVC-ASM)
else()
# GNU is the default linker
include(Platform/Linker/WindowsPhone-GNU-ASM)
endif()
endblock()

View File

@ -0,0 +1,15 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
block(SCOPE_FOR POLICIES)
cmake_policy(SET CMP0054 NEW)
if(CMAKE_C_SIMULATE_ID STREQUAL "MSVC")
# MSVC is the default linker
include(Platform/Linker/WindowsPhone-MSVC-C)
else()
# GNU is the default linker
include(Platform/Linker/WindowsPhone-GNU-C)
endif()
endblock()

View File

@ -0,0 +1,15 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
block(SCOPE_FOR POLICIES)
cmake_policy(SET CMP0054 NEW)
if(CMAKE_CXX_SIMULATE_ID STREQUAL "MSVC")
# MSVC is the default linker
include(Platform/Linker/WindowsPhone-MSVC-CXX)
else()
# GNU is the default linker
include(Platform/Linker/WindowsPhone-GNU-CXX)
endif()
endblock()

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-GNU-ASM)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-GNU-C)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-GNU-CXX)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-LLD-ASM)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-LLD-C)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-LLD-CXX)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-MSVC-ASM)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-MSVC-C)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-MSVC-CXX)

View File

@ -0,0 +1,15 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
block(SCOPE_FOR POLICIES)
cmake_policy(SET CMP0054 NEW)
if(CMAKE_ASM_SIMULATE_ID STREQUAL "MSVC")
# MSVC is the default linker
include(Platform/Linker/WindowsStore-MSVC-ASM)
else()
# GNU is the default linker
include(Platform/Linker/WindowsStore-GNU-ASM)
endif()
endblock()

View File

@ -0,0 +1,15 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
block(SCOPE_FOR POLICIES)
cmake_policy(SET CMP0054 NEW)
if(CMAKE_C_SIMULATE_ID STREQUAL "MSVC")
# MSVC is the default linker
include(Platform/Linker/WindowsStore-MSVC-C)
else()
# GNU is the default linker
include(Platform/Linker/WindowsStore-GNU-C)
endif()
endblock()

View File

@ -0,0 +1,15 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
block(SCOPE_FOR POLICIES)
cmake_policy(SET CMP0054 NEW)
if(CMAKE_CXX_SIMULATE_ID STREQUAL "MSVC")
# MSVC is the default linker
include(Platform/Linker/WindowsStore-MSVC-CXX)
else()
# GNU is the default linker
include(Platform/Linker/WindowsStore-GNU-CXX)
endif()
endblock()

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-GNU-ASM)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-GNU-C)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-GNU-CXX)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-LLD-ASM)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-LLD-C)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-LLD-CXX)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-MSVC-ASM)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-MSVC-C)

View File

@ -0,0 +1,4 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
include(Platform/Linker/Windows-MSVC-CXX)

View File

@ -2,4 +2,4 @@ set(LINUX 1)
set(UNIX 1)
# Match multiarch library directory names.
set(CMAKE_LIBRARY_ARCHITECTURE_REGEX "[a-z0-9_]+(-[a-z0-9_]+)?-linux-gnu[a-z0-9_]*")
set(CMAKE_LIBRARY_ARCHITECTURE_REGEX "[a-z0-9_]+(-[a-z0-9_]+)?-linux-[a-z0-9_]*")

Some files were not shown because too many files have changed in this diff Show More