Update upstream source from tag 'upstream/3.28.1'
Update to upstream version '3.28.1' with Debian dir 9270d8cf95d34ee35cec52f2343aaeaa6b2dc1f2
This commit is contained in:
commit
50ff29688e
@ -5,26 +5,25 @@ Create a test driver and source list for building test programs.
|
|||||||
|
|
||||||
.. code-block:: cmake
|
.. code-block:: cmake
|
||||||
|
|
||||||
create_test_sourcelist(sourceListName driverName
|
create_test_sourcelist(<sourceListName> <driverName>
|
||||||
test1 test2 test3
|
<tests> ...
|
||||||
EXTRA_INCLUDE include.h
|
[EXTRA_INCLUDE <include>]
|
||||||
FUNCTION function)
|
[FUNCTION <function>])
|
||||||
|
|
||||||
A test driver is a program that links together many small tests into a
|
A test driver is a program that links together many small tests into a single
|
||||||
single executable. This is useful when building static executables
|
executable. This is useful when building static executables with large
|
||||||
with large libraries to shrink the total required size. The list of
|
libraries to shrink the total required size. The list of source files needed
|
||||||
source files needed to build the test driver will be in
|
to build the test driver will be in ``sourceListName``. ``driverName`` is the
|
||||||
``sourceListName``. ``driverName`` is the name of the test driver program.
|
name of the test driver program. The rest of the arguments consist of a list
|
||||||
The rest of the arguments consist of a list of test source files, can
|
of test source files and can be semicolon separated. Each test source file
|
||||||
be semicolon separated. Each test source file should have a function
|
should have a function in it that is the same name as the file with no
|
||||||
in it that is the same name as the file with no extension (foo.cxx
|
extension (``foo.cxx`` should have ``int foo(int, char*[]);``). ``driverName``
|
||||||
should have int foo(int, char*[]);) ``driverName`` will be able to call
|
will be able to call each of the tests by name on the command line. If
|
||||||
each of the tests by name on the command line. If ``EXTRA_INCLUDE`` is
|
``EXTRA_INCLUDE`` is specified, then the next argument is included into the
|
||||||
specified, then the next argument is included into the generated file.
|
generated file. If ``FUNCTION`` is specified, then the next argument is taken
|
||||||
If ``FUNCTION`` is specified, then the next argument is taken as a
|
as a function name that is passed pointers to ``argc`` and ``argv``. This can
|
||||||
function name that is passed a pointer to ac and av. This can be used
|
be used to add extra command line processing to each test. The
|
||||||
to add extra command line processing to each test. The
|
``CMAKE_TESTDRIVER_BEFORE_TESTMAIN`` cmake variable can be set to have code
|
||||||
``CMAKE_TESTDRIVER_BEFORE_TESTMAIN`` cmake variable can be set to
|
that will be placed directly before calling the test ``main`` function.
|
||||||
have code that will be placed directly before calling the test main function.
|
``CMAKE_TESTDRIVER_AFTER_TESTMAIN`` can be set to have code that will be
|
||||||
``CMAKE_TESTDRIVER_AFTER_TESTMAIN`` can be set to have code that
|
placed directly after the call to the test ``main`` function.
|
||||||
will be placed directly after the call to the test main function.
|
|
||||||
|
@ -68,9 +68,9 @@ Each ``<item>`` may be:
|
|||||||
|
|
||||||
.. versionadded:: 3.28
|
.. versionadded:: 3.28
|
||||||
|
|
||||||
The library file may point to a ``.xcframework`` folder on macOS. If it
|
The library file may point to a ``.xcframework`` folder on Apple platforms.
|
||||||
does, the target will get the selected library's ``Headers`` directory as
|
If it does, the target will get the selected library's ``Headers``
|
||||||
a usage requirement.
|
directory as a usage requirement.
|
||||||
|
|
||||||
.. versionadded:: 3.8
|
.. versionadded:: 3.8
|
||||||
On :ref:`Visual Studio Generators` for VS 2010 and above, library files
|
On :ref:`Visual Studio Generators` for VS 2010 and above, library files
|
||||||
|
@ -35,8 +35,8 @@ the property instead for backward compatibility reasons.
|
|||||||
See below for alternative initialization behavior for shared library targets.
|
See below for alternative initialization behavior for shared library targets.
|
||||||
|
|
||||||
.. versionadded:: 3.27
|
.. versionadded:: 3.27
|
||||||
On Apple platforms, to link with a shared library (either a bare library or a
|
To link with a shared library on macOS, or to a shared framework on any Apple
|
||||||
framework), a linker import file can be used instead of the actual shared
|
platform, a linker import file can be used instead of the actual shared
|
||||||
library. These linker import files are also known as text-based stubs, and
|
library. These linker import files are also known as text-based stubs, and
|
||||||
they have a ``.tbd`` file extension.
|
they have a ``.tbd`` file extension.
|
||||||
|
|
||||||
|
@ -6,17 +6,26 @@ Full path to the import library for an ``IMPORTED`` target.
|
|||||||
This property may be set:
|
This property may be set:
|
||||||
|
|
||||||
* On DLL platforms, to the location of the ``.lib`` part of the DLL.
|
* On DLL platforms, to the location of the ``.lib`` part of the DLL.
|
||||||
* On AIX, to an import file (e.g. ``.imp``) created for executables that export
|
* .. versionadded:: 3.16
|
||||||
symbols (see the :prop_tgt:`ENABLE_EXPORTS` target property).
|
On AIX, to an import file (e.g. ``.imp``) created for executables that
|
||||||
* On macOS, to an import file (e.g. ``.tbd``) created for shared libraries (see
|
export symbols (see the :prop_tgt:`ENABLE_EXPORTS` target property).
|
||||||
the :prop_tgt:`ENABLE_EXPORTS` target property). For frameworks this is the
|
* .. versionadded:: 3.27
|
||||||
location of the ``.tbd`` file symlink just inside the framework folder.
|
On Apple platforms, to an import file (e.g. ``.tbd``) created for shared
|
||||||
|
libraries or frameworks (see the :prop_tgt:`ENABLE_EXPORTS` target
|
||||||
|
property). For frameworks, this is the location of the ``.tbd`` file
|
||||||
|
symlink just inside the framework folder.
|
||||||
* .. versionadded:: 3.28
|
* .. versionadded:: 3.28
|
||||||
On non-DLL platforms, to the location of a shared library.
|
On non-DLL platforms, to the location of a shared library.
|
||||||
When set without also specifying an :prop_tgt:`IMPORTED_LOCATION`,
|
When set without also specifying an :prop_tgt:`IMPORTED_LOCATION`,
|
||||||
the library is considered to be a stub, and its location will not
|
the library is considered to be a stub, and its location will not
|
||||||
be added as a runtime search path to dependents that link it.
|
be added as a runtime search path to dependents that link it.
|
||||||
|
|
||||||
|
.. versionchanged:: 3.28
|
||||||
|
If an imported target is an Apple framework or XCFramework, the preferred
|
||||||
|
arrangement is to set :prop_tgt:`IMPORTED_LOCATION` to the ``.framework``
|
||||||
|
or ``.xcframework`` directory. CMake will then find the relevant ``.tbd``
|
||||||
|
file inside that framework or XCFramework automatically without requiring
|
||||||
|
``IMPORTED_IMPLIB`` to be set.
|
||||||
|
|
||||||
The ``IMPORTED_IMPLIB`` target property may be overridden for a
|
The ``IMPORTED_IMPLIB`` target property may be overridden for a
|
||||||
given configuration ``<CONFIG>`` by the configuration-specific
|
given configuration ``<CONFIG>`` by the configuration-specific
|
||||||
|
@ -17,14 +17,10 @@ non-imported targets.
|
|||||||
|
|
||||||
.. versionadded:: 3.28
|
.. versionadded:: 3.28
|
||||||
|
|
||||||
For frameworks on macOS, this may be the location of the framework folder
|
For ordinary frameworks on Apple platforms, this may be the location of the
|
||||||
itself.
|
``.framework`` folder itself. For XCFrameworks, it may be the location of
|
||||||
|
the ``.xcframework`` folder, in which case any target that links against it
|
||||||
.. versionadded:: 3.28
|
will get the selected library's ``Headers`` directory as a usage requirement.
|
||||||
|
|
||||||
This may be the location of a ``.xcframework`` folder on macOS. If it is,
|
|
||||||
any target that links against it will get the selected library's ``Headers``
|
|
||||||
directory as a usage requirement.
|
|
||||||
|
|
||||||
The ``IMPORTED_LOCATION`` target property may be overridden for a
|
The ``IMPORTED_LOCATION`` target property may be overridden for a
|
||||||
given configuration ``<CONFIG>`` by the configuration-specific
|
given configuration ``<CONFIG>`` by the configuration-specific
|
||||||
@ -38,5 +34,5 @@ selected and its :prop_tgt:`IMPORTED_LOCATION_<CONFIG>` value used.
|
|||||||
To get the location of an imported target read one of the :prop_tgt:`LOCATION`
|
To get the location of an imported target read one of the :prop_tgt:`LOCATION`
|
||||||
or ``LOCATION_<CONFIG>`` properties.
|
or ``LOCATION_<CONFIG>`` properties.
|
||||||
|
|
||||||
For platforms with import libraries (e.g. Windows, AIX or macOS) see also
|
For platforms with import libraries (e.g. Windows, AIX or Apple) see also
|
||||||
:prop_tgt:`IMPORTED_IMPLIB`.
|
:prop_tgt:`IMPORTED_IMPLIB`.
|
||||||
|
@ -201,3 +201,15 @@ Other Changes
|
|||||||
|
|
||||||
* The precompiled Linux ``x86_64`` binaries provided on
|
* The precompiled Linux ``x86_64`` binaries provided on
|
||||||
`cmake.org <https://cmake.org/download/>`_ now require GLIBC 2.17 or higher.
|
`cmake.org <https://cmake.org/download/>`_ now require GLIBC 2.17 or higher.
|
||||||
|
|
||||||
|
Updates
|
||||||
|
=======
|
||||||
|
|
||||||
|
Changes made since CMake 3.28.0 include the following.
|
||||||
|
|
||||||
|
3.28.1
|
||||||
|
------
|
||||||
|
|
||||||
|
* This version made no changes to documented features or interfaces.
|
||||||
|
Some implementation updates were made to support ecosystem changes
|
||||||
|
and/or fix regressions.
|
||||||
|
@ -247,7 +247,7 @@ Commands
|
|||||||
If the ``EXCLUDE_FROM_ALL`` argument is provided, then targets in the
|
If the ``EXCLUDE_FROM_ALL`` argument is provided, then targets in the
|
||||||
subdirectory added by :command:`FetchContent_MakeAvailable` will not be
|
subdirectory added by :command:`FetchContent_MakeAvailable` will not be
|
||||||
included in the ``ALL`` target by default, and may be excluded from IDE
|
included in the ``ALL`` target by default, and may be excluded from IDE
|
||||||
project files. See the `:command:`add_subdirectory` `EXCLUDE_FROM_ALL``
|
project files. See the :command:`add_subdirectory` ``EXCLUDE_FROM_ALL``
|
||||||
argument documentation for a more detailed discussion of the effects.
|
argument documentation for a more detailed discussion of the effects.
|
||||||
|
|
||||||
.. command:: FetchContent_MakeAvailable
|
.. command:: FetchContent_MakeAvailable
|
||||||
|
@ -1096,11 +1096,13 @@ if(CUDAToolkit_FOUND)
|
|||||||
ENV CUDA_PATH
|
ENV CUDA_PATH
|
||||||
PATH_SUFFIXES lib64/stubs lib/x64/stubs lib/stubs stubs
|
PATH_SUFFIXES lib64/stubs lib/x64/stubs lib/stubs stubs
|
||||||
)
|
)
|
||||||
if(CUDA_${lib_name}_LIBRARY AND NOT WIN32)
|
endif()
|
||||||
# Use `IMPORTED_IMPLIB` so that we don't add a `-rpath` entry for stub directories
|
if(CUDA_${lib_name}_LIBRARY MATCHES "/stubs/" AND NOT WIN32)
|
||||||
set(CUDA_IMPORT_PROPERTY IMPORTED_IMPLIB)
|
# Use a SHARED library with IMPORTED_IMPLIB, but not IMPORTED_LOCATION,
|
||||||
set(CUDA_IMPORT_TYPE SHARED)
|
# to indicate that the stub is for linkers but not dynamic loaders.
|
||||||
endif()
|
# It will not contribute any RPATH entry.
|
||||||
|
set(CUDA_IMPORT_PROPERTY IMPORTED_IMPLIB)
|
||||||
|
set(CUDA_IMPORT_TYPE SHARED)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
mark_as_advanced(CUDA_${lib_name}_LIBRARY)
|
mark_as_advanced(CUDA_${lib_name}_LIBRARY)
|
||||||
@ -1244,8 +1246,9 @@ if(CUDAToolkit_FOUND)
|
|||||||
|
|
||||||
find_path(CUDAToolkit_CUPTI_INCLUDE_DIR cupti.h PATHS
|
find_path(CUDAToolkit_CUPTI_INCLUDE_DIR cupti.h PATHS
|
||||||
"${CUDAToolkit_ROOT_DIR}/extras/CUPTI/include"
|
"${CUDAToolkit_ROOT_DIR}/extras/CUPTI/include"
|
||||||
"${CUDAToolkit_INCLUDE_DIR}/../extras/CUPTI/include"
|
"${CUDAToolkit_INCLUDE_DIRS}"
|
||||||
"${CUDAToolkit_INCLUDE_DIR}"
|
PATH_SUFFIXES "../extras/CUPTI/include"
|
||||||
|
"../../../extras/CUPTI/include"
|
||||||
NO_DEFAULT_PATH)
|
NO_DEFAULT_PATH)
|
||||||
mark_as_advanced(CUDAToolkit_CUPTI_INCLUDE_DIR)
|
mark_as_advanced(CUDAToolkit_CUPTI_INCLUDE_DIR)
|
||||||
|
|
||||||
|
@ -66,10 +66,6 @@ directory of a Freetype installation.
|
|||||||
# everything still works.
|
# everything still works.
|
||||||
|
|
||||||
set(_Freetype_args)
|
set(_Freetype_args)
|
||||||
if (Freetype_FIND_QUIETLY)
|
|
||||||
list(APPEND _Freetype_args
|
|
||||||
QUIET)
|
|
||||||
endif ()
|
|
||||||
if (Freetype_FIND_VERSION)
|
if (Freetype_FIND_VERSION)
|
||||||
list(APPEND _Freetype_args
|
list(APPEND _Freetype_args
|
||||||
"${Freetype_FIND_VERSION}")
|
"${Freetype_FIND_VERSION}")
|
||||||
@ -100,7 +96,8 @@ if (_Freetype_component_opt)
|
|||||||
OPTIONAL_COMPONENTS "${_Freetype_component_opt}")
|
OPTIONAL_COMPONENTS "${_Freetype_component_opt}")
|
||||||
endif ()
|
endif ()
|
||||||
unset(_Freetype_component_opt)
|
unset(_Freetype_component_opt)
|
||||||
find_package(freetype CONFIG ${_Freetype_args})
|
# Always find with QUIET to avoid noise when it is not found.
|
||||||
|
find_package(freetype CONFIG QUIET ${_Freetype_args})
|
||||||
unset(_Freetype_args)
|
unset(_Freetype_args)
|
||||||
if (freetype_FOUND)
|
if (freetype_FOUND)
|
||||||
if (NOT TARGET Freetype::Freetype)
|
if (NOT TARGET Freetype::Freetype)
|
||||||
@ -113,6 +110,9 @@ if (freetype_FOUND)
|
|||||||
get_property(_Freetype_location TARGET freetype PROPERTY IMPORTED_IMPLIB)
|
get_property(_Freetype_location TARGET freetype PROPERTY IMPORTED_IMPLIB)
|
||||||
if (NOT _Freetype_location)
|
if (NOT _Freetype_location)
|
||||||
get_property(_Freetype_location_release TARGET freetype PROPERTY IMPORTED_IMPLIB_RELEASE)
|
get_property(_Freetype_location_release TARGET freetype PROPERTY IMPORTED_IMPLIB_RELEASE)
|
||||||
|
if (NOT _Freetype_location_release)
|
||||||
|
get_property(_Freetype_location_release TARGET freetype PROPERTY IMPORTED_IMPLIB_RELWITHDEBINFO)
|
||||||
|
endif ()
|
||||||
get_property(_Freetype_location_debug TARGET freetype PROPERTY IMPORTED_IMPLIB_DEBUG)
|
get_property(_Freetype_location_debug TARGET freetype PROPERTY IMPORTED_IMPLIB_DEBUG)
|
||||||
if (_Freetype_location_release AND _Freetype_location_debug)
|
if (_Freetype_location_release AND _Freetype_location_debug)
|
||||||
set(_Freetype_location
|
set(_Freetype_location
|
||||||
@ -124,6 +124,9 @@ if (freetype_FOUND)
|
|||||||
set(_Freetype_location "${_Freetype_location_debug}")
|
set(_Freetype_location "${_Freetype_location_debug}")
|
||||||
else ()
|
else ()
|
||||||
get_property(_Freetype_location_release TARGET freetype PROPERTY LOCATION_RELEASE)
|
get_property(_Freetype_location_release TARGET freetype PROPERTY LOCATION_RELEASE)
|
||||||
|
if (NOT _Freetype_location_release)
|
||||||
|
get_property(_Freetype_location_release TARGET freetype PROPERTY LOCATION_RELWITHDEBINFO)
|
||||||
|
endif ()
|
||||||
get_property(_Freetype_location_debug TARGET freetype PROPERTY LOCATION_DEBUG)
|
get_property(_Freetype_location_debug TARGET freetype PROPERTY LOCATION_DEBUG)
|
||||||
if (_Freetype_location_release AND _Freetype_location_debug)
|
if (_Freetype_location_release AND _Freetype_location_debug)
|
||||||
set(_Freetype_location
|
set(_Freetype_location
|
||||||
@ -150,6 +153,13 @@ if (freetype_FOUND)
|
|||||||
set(Freetype_${_Freetype_component}_FOUND "${freetype_${_Freetype_component}_FOUND}")
|
set(Freetype_${_Freetype_component}_FOUND "${freetype_${_Freetype_component}_FOUND}")
|
||||||
endforeach ()
|
endforeach ()
|
||||||
unset(_Freetype_component)
|
unset(_Freetype_component)
|
||||||
|
|
||||||
|
include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
|
||||||
|
find_package_handle_standard_args(Freetype
|
||||||
|
HANDLE_COMPONENTS
|
||||||
|
VERSION_VAR FREETYPE_VERSION_STRING
|
||||||
|
)
|
||||||
|
|
||||||
return ()
|
return ()
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
|
@ -486,10 +486,10 @@ function(matlab_extract_all_installed_versions_from_registry win64 matlab_versio
|
|||||||
|
|
||||||
if(_reg)
|
if(_reg)
|
||||||
|
|
||||||
string(REGEX MATCHALL "([0-9]+\\.[0-9]+)" _versions_regex ${_reg})
|
string(REGEX MATCHALL "([0-9]+\\.[0-9]+)" _versions_regex "${_reg}")
|
||||||
|
|
||||||
foreach(match IN LISTS _versions_regex)
|
foreach(match IN LISTS _versions_regex)
|
||||||
string(REGEX MATCH "([0-9]+\\.[0-9]+)" current_match ${match})
|
string(REGEX MATCH "([0-9]+\\.[0-9]+)" current_match "${match}")
|
||||||
|
|
||||||
if(NOT CMAKE_MATCH_1)
|
if(NOT CMAKE_MATCH_1)
|
||||||
continue()
|
continue()
|
||||||
@ -500,7 +500,7 @@ function(matlab_extract_all_installed_versions_from_registry win64 matlab_versio
|
|||||||
VALUE "MATLABROOT"
|
VALUE "MATLABROOT"
|
||||||
)
|
)
|
||||||
|
|
||||||
_Matlab_VersionInfoXML(${_reg} _matlab_version_tmp)
|
_Matlab_VersionInfoXML("${_reg}" _matlab_version_tmp)
|
||||||
if(NOT "${_matlab_version_tmp}" STREQUAL "unknown")
|
if(NOT "${_matlab_version_tmp}" STREQUAL "unknown")
|
||||||
list(APPEND matlabs_from_registry ${_matlab_version_tmp})
|
list(APPEND matlabs_from_registry ${_matlab_version_tmp})
|
||||||
endif()
|
endif()
|
||||||
@ -1364,7 +1364,7 @@ function(_Matlab_get_version_from_root matlab_root matlab_or_mcr matlab_known_ve
|
|||||||
${_matlab_main_real_path_tmp}
|
${_matlab_main_real_path_tmp}
|
||||||
CACHE INTERNAL "internal matlab location for the discovered version")
|
CACHE INTERNAL "internal matlab location for the discovered version")
|
||||||
|
|
||||||
_Matlab_VersionInfoXML(${matlab_root} _matlab_version_tmp)
|
_Matlab_VersionInfoXML("${matlab_root}" _matlab_version_tmp)
|
||||||
if(NOT "${_matlab_version_tmp}" STREQUAL "unknown")
|
if(NOT "${_matlab_version_tmp}" STREQUAL "unknown")
|
||||||
# at least back to R2016 VersionInfo.xml exists
|
# at least back to R2016 VersionInfo.xml exists
|
||||||
set(matlab_list_of_all_versions ${_matlab_version_tmp})
|
set(matlab_list_of_all_versions ${_matlab_version_tmp})
|
||||||
@ -1392,7 +1392,7 @@ function(_Matlab_get_version_from_root matlab_root matlab_or_mcr matlab_known_ve
|
|||||||
# MCR
|
# MCR
|
||||||
# we cannot run anything in order to extract the version. We assume that the file
|
# we cannot run anything in order to extract the version. We assume that the file
|
||||||
# VersionInfo.xml exists under the MatlabRoot, we look for it and extract the version from there
|
# VersionInfo.xml exists under the MatlabRoot, we look for it and extract the version from there
|
||||||
_Matlab_VersionInfoXML(${matlab_root} _matlab_version_tmp)
|
_Matlab_VersionInfoXML("${matlab_root}" _matlab_version_tmp)
|
||||||
if(NOT "${_matlab_version_tmp}" STREQUAL "unknown")
|
if(NOT "${_matlab_version_tmp}" STREQUAL "unknown")
|
||||||
set(Matlab_VERSION_STRING_INTERNAL ${_matlab_version_tmp} CACHE INTERNAL "Matlab version (automatically determined)")
|
set(Matlab_VERSION_STRING_INTERNAL ${_matlab_version_tmp} CACHE INTERNAL "Matlab version (automatically determined)")
|
||||||
endif()
|
endif()
|
||||||
@ -1481,7 +1481,7 @@ function(_Matlab_find_instances_macos matlab_roots)
|
|||||||
string(REPLACE "." "" _matlab_current_version_without_dot "${_matlab_current_version}")
|
string(REPLACE "." "" _matlab_current_version_without_dot "${_matlab_current_version}")
|
||||||
set(_matlab_base_path "/Applications/MATLAB_${_matlab_current_release}.app")
|
set(_matlab_base_path "/Applications/MATLAB_${_matlab_current_release}.app")
|
||||||
|
|
||||||
_Matlab_VersionInfoXML(${_matlab_base_path} _matlab_version_tmp)
|
_Matlab_VersionInfoXML("${_matlab_base_path}" _matlab_version_tmp)
|
||||||
if(NOT "${_matlab_version_tmp}" STREQUAL "unknown")
|
if(NOT "${_matlab_version_tmp}" STREQUAL "unknown")
|
||||||
set(_matlab_current_version ${_matlab_version_tmp})
|
set(_matlab_current_version ${_matlab_version_tmp})
|
||||||
endif()
|
endif()
|
||||||
|
@ -65,11 +65,10 @@ The following cache variables may also be set:
|
|||||||
Debug and Release variants are found separately.
|
Debug and Release variants are found separately.
|
||||||
#]=======================================================================]
|
#]=======================================================================]
|
||||||
|
|
||||||
|
cmake_policy(PUSH)
|
||||||
|
cmake_policy(SET CMP0057 NEW) # if IN_LIST
|
||||||
|
|
||||||
set(_TIFF_args)
|
set(_TIFF_args)
|
||||||
if (TIFF_FIND_QUIETLY)
|
|
||||||
list(APPEND _TIFF_args
|
|
||||||
QUIET)
|
|
||||||
endif ()
|
|
||||||
if (TIFF_FIND_VERSION)
|
if (TIFF_FIND_VERSION)
|
||||||
list(APPEND _TIFF_args
|
list(APPEND _TIFF_args
|
||||||
"${TIFF_FIND_VERSION}")
|
"${TIFF_FIND_VERSION}")
|
||||||
@ -100,7 +99,8 @@ if (_TIFF_component_opt)
|
|||||||
OPTIONAL_COMPONENTS "${_TIFF_component_opt}")
|
OPTIONAL_COMPONENTS "${_TIFF_component_opt}")
|
||||||
endif ()
|
endif ()
|
||||||
unset(_TIFF_component_opt)
|
unset(_TIFF_component_opt)
|
||||||
find_package(tiff CONFIG ${_TIFF_args})
|
# Always find with QUIET to avoid noise when it is not found.
|
||||||
|
find_package(tiff CONFIG QUIET ${_TIFF_args})
|
||||||
unset(_TIFF_args)
|
unset(_TIFF_args)
|
||||||
if (tiff_FOUND)
|
if (tiff_FOUND)
|
||||||
if (NOT TARGET TIFF::TIFF)
|
if (NOT TARGET TIFF::TIFF)
|
||||||
@ -110,15 +110,86 @@ if (tiff_FOUND)
|
|||||||
endif ()
|
endif ()
|
||||||
get_property(TIFF_INCLUDE_DIRS TARGET TIFF::tiff PROPERTY INTERFACE_INCLUDE_DIRECTORIES)
|
get_property(TIFF_INCLUDE_DIRS TARGET TIFF::tiff PROPERTY INTERFACE_INCLUDE_DIRECTORIES)
|
||||||
get_property(TIFF_LIBRARIES TARGET TIFF::tiff PROPERTY INTERFACE_LINK_LIBRARIES)
|
get_property(TIFF_LIBRARIES TARGET TIFF::tiff PROPERTY INTERFACE_LINK_LIBRARIES)
|
||||||
get_property(_TIFF_location TARGET TIFF::tiff PROPERTY LOCATION)
|
get_property(_TIFF_location TARGET TIFF::tiff PROPERTY IMPORTED_IMPLIB)
|
||||||
list(APPEND TIFF_LIBRARIES
|
if (NOT _TIFF_location)
|
||||||
|
get_property(_TIFF_location_release TARGET TIFF::tiff PROPERTY IMPORTED_IMPLIB_RELEASE)
|
||||||
|
if (NOT _TIFF_location_release)
|
||||||
|
get_property(_TIFF_location_release TARGET TIFF::tiff PROPERTY IMPORTED_IMPLIB_RELWITHDEBINFO)
|
||||||
|
endif ()
|
||||||
|
get_property(_TIFF_location_debug TARGET TIFF::tiff PROPERTY IMPORTED_IMPLIB_DEBUG)
|
||||||
|
if (_TIFF_location_release AND _TIFF_location_debug)
|
||||||
|
set(_TIFF_location
|
||||||
|
optimized "${_TIFF_location_release}"
|
||||||
|
debug "${_TIFF_location_debug}")
|
||||||
|
elseif (_TIFF_location_release)
|
||||||
|
set(_TIFF_location "${_TIFF_location_release}")
|
||||||
|
elseif (_TIFF_location_debug)
|
||||||
|
set(_TIFF_location "${_TIFF_location_debug}")
|
||||||
|
else ()
|
||||||
|
get_property(_TIFF_location_release TARGET TIFF::tiff PROPERTY LOCATION_RELEASE)
|
||||||
|
if (NOT _TIFF_location_release)
|
||||||
|
get_property(_TIFF_location_release TARGET TIFF::tiff PROPERTY LOCATION_RELWITHDEBINFO)
|
||||||
|
endif ()
|
||||||
|
get_property(_TIFF_location_debug TARGET TIFF::tiff PROPERTY LOCATION_DEBUG)
|
||||||
|
if (_TIFF_location_release AND _TIFF_location_debug)
|
||||||
|
set(_TIFF_location
|
||||||
|
optimized "${_TIFF_location_release}"
|
||||||
|
debug "${_TIFF_location_debug}")
|
||||||
|
elseif (_TIFF_location_release)
|
||||||
|
set(_TIFF_location "${_TIFF_location_release}")
|
||||||
|
elseif (_TIFF_location_debug)
|
||||||
|
set(_TIFF_location "${_TIFF_location_debug}")
|
||||||
|
else ()
|
||||||
|
get_property(_TIFF_location TARGET TIFF::tiff PROPERTY LOCATION)
|
||||||
|
endif ()
|
||||||
|
endif ()
|
||||||
|
unset(_TIFF_location_release)
|
||||||
|
unset(_TIFF_location_debug)
|
||||||
|
endif ()
|
||||||
|
list(INSERT TIFF_LIBRARIES 0
|
||||||
"${_TIFF_location}")
|
"${_TIFF_location}")
|
||||||
unset(_TIFF_location)
|
unset(_TIFF_location)
|
||||||
set(TIFF_FOUND 1)
|
set(TIFF_FOUND 1)
|
||||||
if("CXX" IN_LIST TIFF_FIND_COMPONENTS)
|
if("CXX" IN_LIST TIFF_FIND_COMPONENTS)
|
||||||
if (TARGET TIFF::CXX)
|
if (TARGET TIFF::CXX)
|
||||||
get_property(_TIFF_CXX_location TARGET TIFF::CXX PROPERTY LOCATION)
|
get_property(_TIFF_CXX_location TARGET TIFF::CXX PROPERTY IMPORTED_IMPLIB)
|
||||||
list(APPEND TIFF_LIBRARIES ${_TIFF_CXX_location})
|
if (NOT _TIFF_CXX_location)
|
||||||
|
get_property(_TIFF_CXX_location_release TARGET TIFF::CXX PROPERTY IMPORTED_IMPLIB_RELEASE)
|
||||||
|
if (NOT _TIFF_CXX_location_release)
|
||||||
|
get_property(_TIFF_CXX_location_release TARGET TIFF::CXX PROPERTY IMPORTED_IMPLIB_RELWITHDEBINFO)
|
||||||
|
endif ()
|
||||||
|
get_property(_TIFF_CXX_location_debug TARGET TIFF::CXX PROPERTY IMPORTED_IMPLIB_DEBUG)
|
||||||
|
if (_TIFF_CXX_location_release AND _TIFF_CXX_location_debug)
|
||||||
|
set(_TIFF_CXX_location
|
||||||
|
optimized "${_TIFF_CXX_location_release}"
|
||||||
|
debug "${_TIFF_CXX_location_debug}")
|
||||||
|
elseif (_TIFF_CXX_location_release)
|
||||||
|
set(_TIFF_CXX_location "${_TIFF_CXX_location_release}")
|
||||||
|
elseif (_TIFF_CXX_location_debug)
|
||||||
|
set(_TIFF_CXX_location "${_TIFF_CXX_location_debug}")
|
||||||
|
else ()
|
||||||
|
get_property(_TIFF_CXX_location_release TARGET TIFF::CXX PROPERTY LOCATION_RELEASE)
|
||||||
|
if (NOT _TIFF_CXX_location_release)
|
||||||
|
get_property(_TIFF_CXX_location_release TARGET TIFF::CXX PROPERTY LOCATION_RELWITHDEBINFO)
|
||||||
|
endif ()
|
||||||
|
get_property(_TIFF_CXX_location_debug TARGET TIFF::CXX PROPERTY LOCATION_DEBUG)
|
||||||
|
if (_TIFF_CXX_location_release AND _TIFF_CXX_location_debug)
|
||||||
|
set(_TIFF_CXX_location
|
||||||
|
optimized "${_TIFF_CXX_location_release}"
|
||||||
|
debug "${_TIFF_CXX_location_debug}")
|
||||||
|
elseif (_TIFF_CXX_location_release)
|
||||||
|
set(_TIFF_CXX_location "${_TIFF_CXX_location_release}")
|
||||||
|
elseif (_TIFF_CXX_location_debug)
|
||||||
|
set(_TIFF_CXX_location "${_TIFF_CXX_location_debug}")
|
||||||
|
else ()
|
||||||
|
get_property(_TIFF_CXX_location TARGET TIFF::CXX PROPERTY LOCATION)
|
||||||
|
endif ()
|
||||||
|
endif ()
|
||||||
|
unset(_TIFF_CXX_location_release)
|
||||||
|
unset(_TIFF_CXX_location_debug)
|
||||||
|
endif ()
|
||||||
|
list(INSERT TIFF_LIBRARIES 0
|
||||||
|
"${_TIFF_CXX_location}")
|
||||||
unset(_TIFF_CXX_location)
|
unset(_TIFF_CXX_location)
|
||||||
set(TIFF_CXX_FOUND 1)
|
set(TIFF_CXX_FOUND 1)
|
||||||
else ()
|
else ()
|
||||||
@ -135,12 +206,16 @@ if (tiff_FOUND)
|
|||||||
set(TIFF_${_TIFF_component}_FOUND "${tiff_${_TIFF_component}_FOUND}")
|
set(TIFF_${_TIFF_component}_FOUND "${tiff_${_TIFF_component}_FOUND}")
|
||||||
endforeach ()
|
endforeach ()
|
||||||
unset(_TIFF_component)
|
unset(_TIFF_component)
|
||||||
|
|
||||||
|
include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
|
||||||
|
find_package_handle_standard_args(TIFF
|
||||||
|
HANDLE_COMPONENTS
|
||||||
|
VERSION_VAR TIFF_VERSION_STRING)
|
||||||
|
|
||||||
|
cmake_policy(POP)
|
||||||
return ()
|
return ()
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
cmake_policy(PUSH)
|
|
||||||
cmake_policy(SET CMP0057 NEW)
|
|
||||||
|
|
||||||
find_path(TIFF_INCLUDE_DIR tiff.h)
|
find_path(TIFF_INCLUDE_DIR tiff.h)
|
||||||
|
|
||||||
set(TIFF_NAMES ${TIFF_NAMES} tiff libtiff tiff3 libtiff3)
|
set(TIFF_NAMES ${TIFF_NAMES} tiff libtiff tiff3 libtiff3)
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# CMake version number components.
|
# CMake version number components.
|
||||||
set(CMake_VERSION_MAJOR 3)
|
set(CMake_VERSION_MAJOR 3)
|
||||||
set(CMake_VERSION_MINOR 28)
|
set(CMake_VERSION_MINOR 28)
|
||||||
set(CMake_VERSION_PATCH 0)
|
set(CMake_VERSION_PATCH 1)
|
||||||
#set(CMake_VERSION_RC 0)
|
#set(CMake_VERSION_RC 0)
|
||||||
set(CMake_VERSION_IS_DIRTY 0)
|
set(CMake_VERSION_IS_DIRTY 0)
|
||||||
|
|
||||||
@ -21,7 +21,7 @@ endif()
|
|||||||
|
|
||||||
if(NOT CMake_VERSION_NO_GIT)
|
if(NOT CMake_VERSION_NO_GIT)
|
||||||
# If this source was exported by 'git archive', use its commit info.
|
# If this source was exported by 'git archive', use its commit info.
|
||||||
set(git_info [==[618fdc1c42 CMake 3.28.0]==])
|
set(git_info [==[1eed682d7c CMake 3.28.1]==])
|
||||||
|
|
||||||
# Otherwise, try to identify the current development source version.
|
# Otherwise, try to identify the current development source version.
|
||||||
if(NOT git_info MATCHES "^([0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]?[0-9a-f]?)[0-9a-f]* "
|
if(NOT git_info MATCHES "^([0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]?[0-9a-f]?)[0-9a-f]* "
|
||||||
|
@ -8948,6 +8948,7 @@ bool cmGeneratorTarget::AddHeaderSetVerification()
|
|||||||
verifyTarget->SetProperty("AUTOUIC", "OFF");
|
verifyTarget->SetProperty("AUTOUIC", "OFF");
|
||||||
verifyTarget->SetProperty("DISABLE_PRECOMPILE_HEADERS", "ON");
|
verifyTarget->SetProperty("DISABLE_PRECOMPILE_HEADERS", "ON");
|
||||||
verifyTarget->SetProperty("UNITY_BUILD", "OFF");
|
verifyTarget->SetProperty("UNITY_BUILD", "OFF");
|
||||||
|
verifyTarget->SetProperty("CXX_SCAN_FOR_MODULES", "OFF");
|
||||||
cm::optional<std::map<std::string, cmValue>>
|
cm::optional<std::map<std::string, cmValue>>
|
||||||
perConfigCompileDefinitions;
|
perConfigCompileDefinitions;
|
||||||
verifyTarget->FinalizeTargetConfiguration(
|
verifyTarget->FinalizeTargetConfiguration(
|
||||||
|
@ -1697,6 +1697,7 @@ void cmGlobalXCodeGenerator::ForceLinkerLanguage(cmGeneratorTarget* gtgt)
|
|||||||
}
|
}
|
||||||
if (cmSourceFile* sf = mf->GetOrCreateSource(fname)) {
|
if (cmSourceFile* sf = mf->GetOrCreateSource(fname)) {
|
||||||
sf->SetProperty("LANGUAGE", llang);
|
sf->SetProperty("LANGUAGE", llang);
|
||||||
|
sf->SetProperty("CXX_SCAN_FOR_MODULES", "0");
|
||||||
gtgt->AddSource(fname);
|
gtgt->AddSource(fname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2928,6 +2928,7 @@ void cmLocalGenerator::CopyPchCompilePdb(
|
|||||||
} else {
|
} else {
|
||||||
cc->SetOutputs(outputs);
|
cc->SetOutputs(outputs);
|
||||||
cmSourceFile* copy_rule = this->AddCustomCommandToOutput(std::move(cc));
|
cmSourceFile* copy_rule = this->AddCustomCommandToOutput(std::move(cc));
|
||||||
|
copy_rule->SetProperty("CXX_SCAN_FOR_MODULES", "0");
|
||||||
|
|
||||||
if (copy_rule) {
|
if (copy_rule) {
|
||||||
target->AddSource(copy_rule->ResolveFullPath());
|
target->AddSource(copy_rule->ResolveFullPath());
|
||||||
@ -3195,6 +3196,7 @@ void cmLocalGenerator::AddUnityBuild(cmGeneratorTarget* target)
|
|||||||
target->AddSource(file.Path, true);
|
target->AddSource(file.Path, true);
|
||||||
unity->SetProperty("SKIP_UNITY_BUILD_INCLUSION", "ON");
|
unity->SetProperty("SKIP_UNITY_BUILD_INCLUSION", "ON");
|
||||||
unity->SetProperty("UNITY_SOURCE_FILE", file.Path);
|
unity->SetProperty("UNITY_SOURCE_FILE", file.Path);
|
||||||
|
unity->SetProperty("CXX_SCAN_FOR_MODULES", "0");
|
||||||
if (file.PerConfig) {
|
if (file.PerConfig) {
|
||||||
unity->SetProperty("COMPILE_DEFINITIONS",
|
unity->SetProperty("COMPILE_DEFINITIONS",
|
||||||
"CMAKE_UNITY_CONFIG_$<UPPER_CASE:$<CONFIG>>");
|
"CMAKE_UNITY_CONFIG_$<UPPER_CASE:$<CONFIG>>");
|
||||||
|
@ -1878,6 +1878,7 @@ cmSourceFile* cmQtAutoGenInitializer::RegisterGeneratedSource(
|
|||||||
gFile->MarkAsGenerated();
|
gFile->MarkAsGenerated();
|
||||||
gFile->SetProperty("SKIP_AUTOGEN", "1");
|
gFile->SetProperty("SKIP_AUTOGEN", "1");
|
||||||
gFile->SetProperty("SKIP_LINTING", "ON");
|
gFile->SetProperty("SKIP_LINTING", "ON");
|
||||||
|
gFile->SetProperty("CXX_SCAN_FOR_MODULES", "0");
|
||||||
return gFile;
|
return gFile;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@ int main(void)
|
|||||||
#if defined(_WIN32)
|
#if defined(_WIN32)
|
||||||
Sleep((TIMEOUT + 4) * 1000);
|
Sleep((TIMEOUT + 4) * 1000);
|
||||||
#elif defined(SIGNAL_IGNORE)
|
#elif defined(SIGNAL_IGNORE)
|
||||||
# if defined(__CYGWIN__) || defined(__sun__)
|
# if defined(__CYGWIN__) || defined(__sun__) || defined(__GNU__)
|
||||||
# define ERRNO_IS_EINTR (errno == EINTR || errno == 0)
|
# define ERRNO_IS_EINTR (errno == EINTR || errno == 0)
|
||||||
# else
|
# else
|
||||||
# define ERRNO_IS_EINTR (errno == EINTR)
|
# define ERRNO_IS_EINTR (errno == EINTR)
|
||||||
|
@ -347,6 +347,9 @@ if("${ninja_version}" VERSION_LESS 1.6)
|
|||||||
message(WARNING "Ninja is too old; skipping rest of test.")
|
message(WARNING "Ninja is too old; skipping rest of test.")
|
||||||
return()
|
return()
|
||||||
endif()
|
endif()
|
||||||
|
if("${ninja_version}" VERSION_LESS 1.12)
|
||||||
|
set(maybe_w_dupbuild_err -w dupbuild=err)
|
||||||
|
endif()
|
||||||
|
|
||||||
set(ninja_output_path_prefixes "sub")
|
set(ninja_output_path_prefixes "sub")
|
||||||
if(NOT CMAKE_C_COMPILER_ID STREQUAL "OrangeC")
|
if(NOT CMAKE_C_COMPILER_ID STREQUAL "OrangeC")
|
||||||
@ -364,14 +367,14 @@ endforeach(ninja_output_path_prefix)
|
|||||||
function (run_PreventTargetAliasesDupBuildRule)
|
function (run_PreventTargetAliasesDupBuildRule)
|
||||||
set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/PreventTargetAliasesDupBuildRule-build)
|
set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/PreventTargetAliasesDupBuildRule-build)
|
||||||
run_cmake(PreventTargetAliasesDupBuildRule)
|
run_cmake(PreventTargetAliasesDupBuildRule)
|
||||||
run_ninja("${RunCMake_TEST_BINARY_DIR}" -w dupbuild=err)
|
run_ninja("${RunCMake_TEST_BINARY_DIR}" ${maybe_w_dupbuild_err})
|
||||||
endfunction ()
|
endfunction ()
|
||||||
run_PreventTargetAliasesDupBuildRule()
|
run_PreventTargetAliasesDupBuildRule()
|
||||||
|
|
||||||
function (run_PreventConfigureFileDupBuildRule)
|
function (run_PreventConfigureFileDupBuildRule)
|
||||||
set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/PreventConfigureFileDupBuildRule-build)
|
set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/PreventConfigureFileDupBuildRule-build)
|
||||||
run_cmake(PreventConfigureFileDupBuildRule)
|
run_cmake(PreventConfigureFileDupBuildRule)
|
||||||
run_ninja("${RunCMake_TEST_BINARY_DIR}" -w dupbuild=err)
|
run_ninja("${RunCMake_TEST_BINARY_DIR}" ${maybe_w_dupbuild_err})
|
||||||
endfunction()
|
endfunction()
|
||||||
run_PreventConfigureFileDupBuildRule()
|
run_PreventConfigureFileDupBuildRule()
|
||||||
|
|
||||||
@ -380,7 +383,7 @@ function (run_ChangeBuildType)
|
|||||||
set(RunCMake_TEST_OPTIONS "-DCMAKE_BUILD_TYPE:STRING=Debug")
|
set(RunCMake_TEST_OPTIONS "-DCMAKE_BUILD_TYPE:STRING=Debug")
|
||||||
run_cmake(ChangeBuildType)
|
run_cmake(ChangeBuildType)
|
||||||
unset(RunCMake_TEST_OPTIONS)
|
unset(RunCMake_TEST_OPTIONS)
|
||||||
run_ninja("${RunCMake_TEST_BINARY_DIR}" -w dupbuild=err)
|
run_ninja("${RunCMake_TEST_BINARY_DIR}" ${maybe_w_dupbuild_err})
|
||||||
endfunction()
|
endfunction()
|
||||||
run_ChangeBuildType()
|
run_ChangeBuildType()
|
||||||
|
|
||||||
|
@ -1 +1,5 @@
|
|||||||
.*ninja: error: .* multiple rules generate.*src.ispc_avx512skx.o.*
|
ninja: error:([^
|
||||||
|
]+multiple rules generate[^
|
||||||
|
]+src\.ispc_avx512skx\.o|[^
|
||||||
|
]+src\.ispc_avx512skx\.o[^
|
||||||
|
]+is defined as an output multiple times)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user