Update upstream source from tag 'upstream/3.21.4'
Update to upstream version '3.21.4' with Debian dir 4aa747790aeb44ab2f0671139b29045bc212f2d5
This commit is contained in:
commit
9d9b9b9642
@ -5,11 +5,6 @@ Visual Studio 17 2022
|
|||||||
|
|
||||||
Generates Visual Studio 17 (VS 2022) project files.
|
Generates Visual Studio 17 (VS 2022) project files.
|
||||||
|
|
||||||
.. warning::
|
|
||||||
|
|
||||||
This is experimental and based on "Visual Studio 2022 Preview 4".
|
|
||||||
As of this version of CMake, VS 2022 has not been released.
|
|
||||||
|
|
||||||
Project Types
|
Project Types
|
||||||
^^^^^^^^^^^^^
|
^^^^^^^^^^^^^
|
||||||
|
|
||||||
@ -51,8 +46,8 @@ name (architecture). For example:
|
|||||||
Toolset Selection
|
Toolset Selection
|
||||||
^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
The ``v143`` toolset that comes with VS 17 2022 Preview 4 is selected by
|
The ``v143`` toolset that comes with VS 17 2022 is selected by default.
|
||||||
default. The :variable:`CMAKE_GENERATOR_TOOLSET` option may be set, perhaps
|
The :variable:`CMAKE_GENERATOR_TOOLSET` option may be set, perhaps
|
||||||
via the :manual:`cmake(1)` ``-T`` option, to specify another toolset.
|
via the :manual:`cmake(1)` ``-T`` option, to specify another toolset.
|
||||||
|
|
||||||
.. |VS_TOOLSET_HOST_ARCH_DEFAULT| replace::
|
.. |VS_TOOLSET_HOST_ARCH_DEFAULT| replace::
|
||||||
|
@ -26,9 +26,7 @@ Presets
|
|||||||
Generators
|
Generators
|
||||||
----------
|
----------
|
||||||
|
|
||||||
* The :generator:`Visual Studio 17 2022` generator was added. This is
|
* The :generator:`Visual Studio 17 2022` generator was added.
|
||||||
experimental and based on "Visual Studio 2022 Preview 4" because this
|
|
||||||
version of VS has not been released.
|
|
||||||
|
|
||||||
* The :ref:`Makefile Generators` and the :generator:`Ninja` generator
|
* The :ref:`Makefile Generators` and the :generator:`Ninja` generator
|
||||||
learned to add linker launcher tools along with the linker for ``C``,
|
learned to add linker launcher tools along with the linker for ``C``,
|
||||||
@ -329,3 +327,10 @@ Changes made since CMake 3.21.0 include the following.
|
|||||||
|
|
||||||
* ``hipcc`` may once again be used as a ``CXX`` compiler, and is treated as
|
* ``hipcc`` may once again be used as a ``CXX`` compiler, and is treated as
|
||||||
whatever compiler it selects underneath, as CMake 3.20 and below did.
|
whatever compiler it selects underneath, as CMake 3.20 and below did.
|
||||||
|
|
||||||
|
3.21.4
|
||||||
|
------
|
||||||
|
|
||||||
|
* The :generator:`Visual Studio 17 2022` generator is now based on the
|
||||||
|
"Visual Studio 2022" release candidates. Previously it was based on
|
||||||
|
preview versions.
|
||||||
|
@ -174,7 +174,10 @@ else()
|
|||||||
endif()
|
endif()
|
||||||
list(PREPEND _CMAKE_AR_NAMES "llvm-ar")
|
list(PREPEND _CMAKE_AR_NAMES "llvm-ar")
|
||||||
list(PREPEND _CMAKE_RANLIB_NAMES "llvm-ranlib")
|
list(PREPEND _CMAKE_RANLIB_NAMES "llvm-ranlib")
|
||||||
list(PREPEND _CMAKE_STRIP_NAMES "llvm-strip")
|
if("${CMAKE_${_CMAKE_PROCESSING_LANGUAGE}_COMPILER_VERSION}" VERSION_GREATER_EQUAL 11)
|
||||||
|
# llvm-strip versions prior to 11 require additional flags we do not yet add.
|
||||||
|
list(PREPEND _CMAKE_STRIP_NAMES "llvm-strip")
|
||||||
|
endif()
|
||||||
list(PREPEND _CMAKE_NM_NAMES "llvm-nm")
|
list(PREPEND _CMAKE_NM_NAMES "llvm-nm")
|
||||||
if("${CMAKE_${_CMAKE_PROCESSING_LANGUAGE}_COMPILER_VERSION}" VERSION_GREATER_EQUAL 9)
|
if("${CMAKE_${_CMAKE_PROCESSING_LANGUAGE}_COMPILER_VERSION}" VERSION_GREATER_EQUAL 9)
|
||||||
# llvm-objdump versions prior to 9 did not support everything we need.
|
# llvm-objdump versions prior to 9 did not support everything we need.
|
||||||
|
@ -439,6 +439,7 @@ set(_CPACK_IFW_PREFIXES
|
|||||||
"QtIFW-")
|
"QtIFW-")
|
||||||
|
|
||||||
set(_CPACK_IFW_VERSIONS
|
set(_CPACK_IFW_VERSIONS
|
||||||
|
"4.1"
|
||||||
"4.0"
|
"4.0"
|
||||||
"3.2"
|
"3.2"
|
||||||
"3.2.0"
|
"3.2.0"
|
||||||
|
@ -70,6 +70,7 @@ elseif (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 16.0)
|
|||||||
cxx_std_14
|
cxx_std_14
|
||||||
cxx_std_17
|
cxx_std_17
|
||||||
cxx_std_20
|
cxx_std_20
|
||||||
|
cxx_std_23
|
||||||
)
|
)
|
||||||
_record_compiler_features(CXX "" CMAKE_CXX_COMPILE_FEATURES)
|
_record_compiler_features(CXX "" CMAKE_CXX_COMPILE_FEATURES)
|
||||||
endmacro()
|
endmacro()
|
||||||
|
@ -9,4 +9,15 @@ if(CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 20.11)
|
|||||||
set(CMAKE_C17_EXTENSION_COMPILE_OPTION -std=gnu17)
|
set(CMAKE_C17_EXTENSION_COMPILE_OPTION -std=gnu17)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 21.07)
|
||||||
|
set(CMAKE_DEPFILE_FLAGS_C "-MD -MT <DEP_TARGET> -MF <DEP_FILE>")
|
||||||
|
set(CMAKE_C_DEPFILE_FORMAT gcc)
|
||||||
|
set(CMAKE_C_DEPENDS_USE_COMPILER TRUE)
|
||||||
|
else()
|
||||||
|
# Before NVHPC 21.07 the `-MD` flag implicitly
|
||||||
|
# implies `-E` and therefore compilation and dependency generation
|
||||||
|
# can't occur in the same invocation
|
||||||
|
set(CMAKE_C_DEPENDS_EXTRA_COMMANDS "<CMAKE_C_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -x c -M <SOURCE> -MT <OBJECT> -MD<DEP_FILE>")
|
||||||
|
endif()
|
||||||
|
|
||||||
__compiler_nvhpc(C)
|
__compiler_nvhpc(C)
|
||||||
|
@ -9,4 +9,14 @@ if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 20.11)
|
|||||||
set(CMAKE_CXX20_EXTENSION_COMPILE_OPTION -std=gnu++20)
|
set(CMAKE_CXX20_EXTENSION_COMPILE_OPTION -std=gnu++20)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 21.07)
|
||||||
|
set(CMAKE_DEPFILE_FLAGS_CXX "-MD -MT <DEP_TARGET> -MF <DEP_FILE>")
|
||||||
|
set(CMAKE_CXX_DEPFILE_FORMAT gcc)
|
||||||
|
set(CMAKE_CXX_DEPENDS_USE_COMPILER TRUE)
|
||||||
|
else()
|
||||||
|
# Before NVHPC 21.07 the `-MD` flag implicitly
|
||||||
|
# implies `-E` and therefore compilation and dependency generation
|
||||||
|
# can't occur in the same invocation
|
||||||
|
set(CMAKE_CXX_DEPENDS_EXTRA_COMMANDS "<CMAKE_CXX_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -x c++ -M <SOURCE> -MT <OBJECT> -MD<DEP_FILE>")
|
||||||
|
endif()
|
||||||
__compiler_nvhpc(CXX)
|
__compiler_nvhpc(CXX)
|
||||||
|
@ -12,16 +12,4 @@ include(Compiler/PGI)
|
|||||||
|
|
||||||
macro(__compiler_nvhpc lang)
|
macro(__compiler_nvhpc lang)
|
||||||
# Logic specific to NVHPC.
|
# Logic specific to NVHPC.
|
||||||
|
|
||||||
if(CMAKE_${lang}_COMPILER_VERSION VERSION_GREATER_EQUAL 21.07)
|
|
||||||
set(CMAKE_DEPFILE_FLAGS_${lang} "-MD -MT <DEP_TARGET> -MF <DEP_FILE>")
|
|
||||||
set(CMAKE_${lang}_DEPFILE_FORMAT gcc)
|
|
||||||
set(CMAKE_${lang}_DEPENDS_USE_COMPILER TRUE)
|
|
||||||
else()
|
|
||||||
# Before NVHPC 21.07 the `-MD` flag implicitly
|
|
||||||
# implies `-E` and therefore compilation and dependency generation
|
|
||||||
# can't occur in the same invocation
|
|
||||||
set(CMAKE_${lang}_DEPENDS_EXTRA_COMMANDS "<CMAKE_${lang}_COMPILER> <DEFINES> <INCLUDES> <FLAGS> ${CMAKE_${lang}_COMPILE_OPTIONS_EXPLICIT_LANGUAGE} -M <SOURCE> -MT <OBJECT> -MD<DEP_FILE>")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
endmacro()
|
endmacro()
|
||||||
|
@ -261,6 +261,7 @@ if(NOT MATLAB_ADDITIONAL_VERSIONS)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(MATLAB_VERSIONS_MAPPING
|
set(MATLAB_VERSIONS_MAPPING
|
||||||
|
"R2021b=9.11"
|
||||||
"R2021a=9.10"
|
"R2021a=9.10"
|
||||||
"R2020b=9.9"
|
"R2020b=9.9"
|
||||||
"R2020a=9.8"
|
"R2020a=9.8"
|
||||||
|
@ -8,11 +8,10 @@ configure_file(${FortranCInterface_SOURCE_DIR}/Input.cmake.in
|
|||||||
# configuration changes.
|
# configuration changes.
|
||||||
if(NOT EXISTS ${FortranCInterface_BINARY_DIR}/Output.cmake
|
if(NOT EXISTS ${FortranCInterface_BINARY_DIR}/Output.cmake
|
||||||
OR NOT EXISTS ${FortranCInterface_BINARY_DIR}/Input.cmake
|
OR NOT EXISTS ${FortranCInterface_BINARY_DIR}/Input.cmake
|
||||||
OR NOT EXISTS ${FortranCInterface_BINARY_DIR}/Output.cmake.in
|
|
||||||
OR NOT ${FortranCInterface_BINARY_DIR}/Output.cmake
|
OR NOT ${FortranCInterface_BINARY_DIR}/Output.cmake
|
||||||
IS_NEWER_THAN ${FortranCInterface_BINARY_DIR}/Input.cmake
|
IS_NEWER_THAN ${FortranCInterface_BINARY_DIR}/Input.cmake
|
||||||
OR NOT ${FortranCInterface_SOURCE_DIR}/Output.cmake
|
OR NOT ${FortranCInterface_SOURCE_DIR}/Output.cmake
|
||||||
IS_NEWER_THAN ${FortranCInterface_BINARY_DIR}/Output.cmake.in
|
IS_NEWER_THAN ${FortranCInterface_SOURCE_DIR}/Output.cmake.in
|
||||||
OR NOT ${FortranCInterface_BINARY_DIR}/Output.cmake
|
OR NOT ${FortranCInterface_BINARY_DIR}/Output.cmake
|
||||||
IS_NEWER_THAN ${FortranCInterface_SOURCE_DIR}/CMakeLists.txt
|
IS_NEWER_THAN ${FortranCInterface_SOURCE_DIR}/CMakeLists.txt
|
||||||
OR NOT ${FortranCInterface_BINARY_DIR}/Output.cmake
|
OR NOT ${FortranCInterface_BINARY_DIR}/Output.cmake
|
||||||
|
@ -180,6 +180,8 @@ _GNUInstallDirs_cache_path(CMAKE_INSTALL_BINDIR "bin"
|
|||||||
"User executables (bin)")
|
"User executables (bin)")
|
||||||
_GNUInstallDirs_cache_path(CMAKE_INSTALL_SBINDIR "sbin"
|
_GNUInstallDirs_cache_path(CMAKE_INSTALL_SBINDIR "sbin"
|
||||||
"System admin executables (sbin)")
|
"System admin executables (sbin)")
|
||||||
|
_GNUInstallDirs_cache_path(CMAKE_INSTALL_LIBEXECDIR "libexec"
|
||||||
|
"Program executables (libexec)")
|
||||||
_GNUInstallDirs_cache_path(CMAKE_INSTALL_SYSCONFDIR "etc"
|
_GNUInstallDirs_cache_path(CMAKE_INSTALL_SYSCONFDIR "etc"
|
||||||
"Read-only single-machine data (etc)")
|
"Read-only single-machine data (etc)")
|
||||||
_GNUInstallDirs_cache_path(CMAKE_INSTALL_SHAREDSTATEDIR "com"
|
_GNUInstallDirs_cache_path(CMAKE_INSTALL_SHAREDSTATEDIR "com"
|
||||||
@ -274,19 +276,6 @@ set(_GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" CACHE IN
|
|||||||
unset(_libdir_set)
|
unset(_libdir_set)
|
||||||
unset(__LAST_LIBDIR_DEFAULT)
|
unset(__LAST_LIBDIR_DEFAULT)
|
||||||
|
|
||||||
if(CMAKE_SYSTEM_NAME MATCHES "^(Linux|kFreeBSD|GNU)$"
|
|
||||||
AND NOT CMAKE_CROSSCOMPILING
|
|
||||||
AND NOT EXISTS "/etc/arch-release"
|
|
||||||
AND EXISTS "/etc/debian_version" # is this a debian system ?
|
|
||||||
AND "${CMAKE_INSTALL_PREFIX}" MATCHES "^/usr/?$")
|
|
||||||
# see https://refspecs.linuxfoundation.org/FHS_3.0/fhs-3.0.html#usrlibexec
|
|
||||||
# and https://www.debian.org/doc/debian-policy/ch-opersys#file-system-structure (section 9.1.1 bullet point 4)
|
|
||||||
_GNUInstallDirs_cache_path(CMAKE_INSTALL_LIBEXECDIR "${CMAKE_INSTALL_LIBDIR}"
|
|
||||||
"Program executables (${CMAKE_INSTALL_LIBDIR})")
|
|
||||||
else()
|
|
||||||
_GNUInstallDirs_cache_path(CMAKE_INSTALL_LIBEXECDIR "libexec"
|
|
||||||
"Program executables (libexec)")
|
|
||||||
endif()
|
|
||||||
_GNUInstallDirs_cache_path(CMAKE_INSTALL_INCLUDEDIR "include"
|
_GNUInstallDirs_cache_path(CMAKE_INSTALL_INCLUDEDIR "include"
|
||||||
"C header files (include)")
|
"C header files (include)")
|
||||||
_GNUInstallDirs_cache_path(CMAKE_INSTALL_OLDINCLUDEDIR "/usr/include"
|
_GNUInstallDirs_cache_path(CMAKE_INSTALL_OLDINCLUDEDIR "/usr/include"
|
||||||
|
@ -225,7 +225,7 @@ if(MSVC)
|
|||||||
elseif(MSVC_TOOLSET_VERSION GREATER_EQUAL 144)
|
elseif(MSVC_TOOLSET_VERSION GREATER_EQUAL 144)
|
||||||
message(WARNING "MSVC toolset v${MSVC_TOOLSET_VERSION} not yet supported.")
|
message(WARNING "MSVC toolset v${MSVC_TOOLSET_VERSION} not yet supported.")
|
||||||
elseif(MSVC_TOOLSET_VERSION EQUAL 143)
|
elseif(MSVC_TOOLSET_VERSION EQUAL 143)
|
||||||
set(MSVC_REDIST_NAME VC142)
|
set(MSVC_REDIST_NAME VC143)
|
||||||
set(_MSVC_DLL_VERSION 140)
|
set(_MSVC_DLL_VERSION 140)
|
||||||
set(_MSVC_IDE_VERSION 17)
|
set(_MSVC_IDE_VERSION 17)
|
||||||
elseif(MSVC_TOOLSET_VERSION EQUAL 142)
|
elseif(MSVC_TOOLSET_VERSION EQUAL 142)
|
||||||
|
@ -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 21)
|
set(CMake_VERSION_MINOR 21)
|
||||||
set(CMake_VERSION_PATCH 3)
|
set(CMake_VERSION_PATCH 4)
|
||||||
#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 [==[7612abd52f CMake 3.21.3]==])
|
set(git_info [==[f65cebf51a CMake 3.21.4]==])
|
||||||
|
|
||||||
# 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]* "
|
||||||
|
@ -226,7 +226,7 @@ bool DebGenerator::generateDataTar() const
|
|||||||
cmCPackLogger(cmCPackLog::LOG_DEBUG,
|
cmCPackLogger(cmCPackLog::LOG_DEBUG,
|
||||||
"RELATIVEDIR: \"" << relativeDir << "\"" << std::endl);
|
"RELATIVEDIR: \"" << relativeDir << "\"" << std::endl);
|
||||||
|
|
||||||
#ifdef WIN32
|
#ifdef _WIN32
|
||||||
std::string mode_t_adt_filename = file + ":cmake_mode_t";
|
std::string mode_t_adt_filename = file + ":cmake_mode_t";
|
||||||
cmsys::ifstream permissionStream(mode_t_adt_filename.c_str());
|
cmsys::ifstream permissionStream(mode_t_adt_filename.c_str());
|
||||||
|
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
#include "cmAddTestCommand.h"
|
#include "cmAddTestCommand.h"
|
||||||
#include "cmBreakCommand.h"
|
#include "cmBreakCommand.h"
|
||||||
#include "cmBuildCommand.h"
|
#include "cmBuildCommand.h"
|
||||||
|
#include "cmCMakeLanguageCommand.h"
|
||||||
#include "cmCMakeMinimumRequired.h"
|
#include "cmCMakeMinimumRequired.h"
|
||||||
#include "cmCMakePathCommand.h"
|
#include "cmCMakePathCommand.h"
|
||||||
#include "cmCMakePolicyCommand.h"
|
#include "cmCMakePolicyCommand.h"
|
||||||
@ -93,7 +94,6 @@
|
|||||||
# include "cmAuxSourceDirectoryCommand.h"
|
# include "cmAuxSourceDirectoryCommand.h"
|
||||||
# include "cmBuildNameCommand.h"
|
# include "cmBuildNameCommand.h"
|
||||||
# include "cmCMakeHostSystemInformationCommand.h"
|
# include "cmCMakeHostSystemInformationCommand.h"
|
||||||
# include "cmCMakeLanguageCommand.h"
|
|
||||||
# include "cmExportCommand.h"
|
# include "cmExportCommand.h"
|
||||||
# include "cmExportLibraryDependenciesCommand.h"
|
# include "cmExportLibraryDependenciesCommand.h"
|
||||||
# include "cmFLTKWrapUICommand.h"
|
# include "cmFLTKWrapUICommand.h"
|
||||||
@ -128,6 +128,7 @@ void GetScriptingCommands(cmState* state)
|
|||||||
state->AddFlowControlCommand("return", cmReturnCommand);
|
state->AddFlowControlCommand("return", cmReturnCommand);
|
||||||
state->AddFlowControlCommand("while", cmWhileCommand);
|
state->AddFlowControlCommand("while", cmWhileCommand);
|
||||||
|
|
||||||
|
state->AddBuiltinCommand("cmake_language", cmCMakeLanguageCommand);
|
||||||
state->AddBuiltinCommand("cmake_minimum_required", cmCMakeMinimumRequired);
|
state->AddBuiltinCommand("cmake_minimum_required", cmCMakeMinimumRequired);
|
||||||
state->AddBuiltinCommand("cmake_path", cmCMakePathCommand);
|
state->AddBuiltinCommand("cmake_path", cmCMakePathCommand);
|
||||||
state->AddBuiltinCommand("cmake_policy", cmCMakePolicyCommand);
|
state->AddBuiltinCommand("cmake_policy", cmCMakePolicyCommand);
|
||||||
@ -202,7 +203,6 @@ void GetScriptingCommands(cmState* state)
|
|||||||
#if !defined(CMAKE_BOOTSTRAP)
|
#if !defined(CMAKE_BOOTSTRAP)
|
||||||
state->AddBuiltinCommand("cmake_host_system_information",
|
state->AddBuiltinCommand("cmake_host_system_information",
|
||||||
cmCMakeHostSystemInformationCommand);
|
cmCMakeHostSystemInformationCommand);
|
||||||
state->AddBuiltinCommand("cmake_language", cmCMakeLanguageCommand);
|
|
||||||
state->AddBuiltinCommand("load_cache", cmLoadCacheCommand);
|
state->AddBuiltinCommand("load_cache", cmLoadCacheCommand);
|
||||||
state->AddBuiltinCommand("remove", cmRemoveCommand);
|
state->AddBuiltinCommand("remove", cmRemoveCommand);
|
||||||
state->AddBuiltinCommand("variable_watch", cmVariableWatchCommand);
|
state->AddBuiltinCommand("variable_watch", cmVariableWatchCommand);
|
||||||
|
@ -72,7 +72,7 @@ bool cmFileCopier::SetPermissions(const std::string& toFile,
|
|||||||
mode_t permissions)
|
mode_t permissions)
|
||||||
{
|
{
|
||||||
if (permissions) {
|
if (permissions) {
|
||||||
#ifdef WIN32
|
#ifdef _WIN32
|
||||||
if (Makefile->IsOn("CMAKE_CROSSCOMPILING")) {
|
if (Makefile->IsOn("CMAKE_CROSSCOMPILING")) {
|
||||||
// Store the mode in an NTFS alternate stream.
|
// Store the mode in an NTFS alternate stream.
|
||||||
std::string mode_t_adt_filename = toFile + ":cmake_mode_t";
|
std::string mode_t_adt_filename = toFile + ":cmake_mode_t";
|
||||||
|
@ -88,7 +88,7 @@ void cmLocalNinjaGenerator::Generate()
|
|||||||
cmGlobalNinjaGenerator::WriteComment(this->GetRulesFileStream(),
|
cmGlobalNinjaGenerator::WriteComment(this->GetRulesFileStream(),
|
||||||
"localized /showIncludes string");
|
"localized /showIncludes string");
|
||||||
this->GetRulesFileStream() << "msvc_deps_prefix = ";
|
this->GetRulesFileStream() << "msvc_deps_prefix = ";
|
||||||
#ifdef WIN32
|
#ifdef _WIN32
|
||||||
// Ninja uses the ANSI Windows APIs, so strings in the rules file
|
// Ninja uses the ANSI Windows APIs, so strings in the rules file
|
||||||
// typically need to be ANSI encoded. However, in this case the compiler
|
// typically need to be ANSI encoded. However, in this case the compiler
|
||||||
// is being invoked using the UTF-8 codepage so the /showIncludes prefix
|
// is being invoked using the UTF-8 codepage so the /showIncludes prefix
|
||||||
|
@ -1306,7 +1306,16 @@ bool cmQtAutoGenInitializer::InitAutogenTarget()
|
|||||||
// Add additional autogen target dependencies to
|
// Add additional autogen target dependencies to
|
||||||
// '_autogen_timestamp_deps'.
|
// '_autogen_timestamp_deps'.
|
||||||
for (const cmTarget* t : this->AutogenTarget.DependTargets) {
|
for (const cmTarget* t : this->AutogenTarget.DependTargets) {
|
||||||
dependencies.push_back(t->GetName());
|
std::string depname = t->GetName();
|
||||||
|
if (t->IsImported()) {
|
||||||
|
auto ttype = t->GetType();
|
||||||
|
if (ttype == cmStateEnums::TargetType::STATIC_LIBRARY ||
|
||||||
|
ttype == cmStateEnums::TargetType::SHARED_LIBRARY ||
|
||||||
|
ttype == cmStateEnums::TargetType::UNKNOWN_LIBRARY) {
|
||||||
|
depname = cmStrCat("$<TARGET_LINKER_FILE:", t->GetName(), ">");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
dependencies.push_back(depname);
|
||||||
}
|
}
|
||||||
|
|
||||||
cmTarget* timestampTarget = this->LocalGen->AddUtilityCommand(
|
cmTarget* timestampTarget = this->LocalGen->AddUtilityCommand(
|
||||||
|
@ -1461,7 +1461,7 @@ int cmcmd::ExecuteCMakeCommand(std::vector<std::string> const& args,
|
|||||||
cmSystemTools::Error("Problem extracting tar: " + outFile);
|
cmSystemTools::Error("Problem extracting tar: " + outFile);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
#ifdef WIN32
|
#ifdef _WIN32
|
||||||
// OK, on windows 7 after we untar some files,
|
// OK, on windows 7 after we untar some files,
|
||||||
// sometimes we can not rename the directory after
|
// sometimes we can not rename the directory after
|
||||||
// the untar is done. This breaks the external project
|
// the untar is done. This breaks the external project
|
||||||
|
@ -138,7 +138,7 @@ int main(int ac, char* av[])
|
|||||||
t = clock() - t;
|
t = clock() - t;
|
||||||
status_message = (status == -1) ? "not ok" : "ok";
|
status_message = (status == -1) ? "not ok" : "ok";
|
||||||
{
|
{
|
||||||
double time_taken = ((double)t) / CLOCKS_PER_SEC;
|
double time_taken = CM_CAST(double, t) / CLOCKS_PER_SEC;
|
||||||
printf("%s %d %s # %f\n", status_message, i + 1, name, time_taken);
|
printf("%s %d %s # %f\n", status_message, i + 1, name, time_taken);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
12
Tests/RunCMake/Autogen/CMP0111-imported-target-full.cmake
Normal file
12
Tests/RunCMake/Autogen/CMP0111-imported-target-full.cmake
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
include("${CMAKE_CURRENT_LIST_DIR}/CMP0111-imported-target-prelude.cmake")
|
||||||
|
|
||||||
|
set_location(executable LOCATION "${CMAKE_CURRENT_BINARY_DIR}/executable${CMAKE_EXECUTABLE_SUFFIX}")
|
||||||
|
|
||||||
|
set_location(shared LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_SHARED_LIBRARY_PREFIX}shared${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
||||||
|
if (CMAKE_IMPORT_LIBRARY_SUFFIX)
|
||||||
|
set_location(shared IMPLIB "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_IMPORT_LIBRARY_PREFIX}shared${CMAKE_IMPORT_LIBRARY_SUFFIX}")
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
set_location(static LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}static${CMAKE_STATIC_LIBRARY_SUFFIX}")
|
||||||
|
set_location(unknown LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_IMPORT_LIBRARY_PREFIX}unknown${CMAKE_IMPORT_LIBRARY_SUFFIX}")
|
||||||
|
set_location(module LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_SHARED_MODULE_PREFIX}module${CMAKE_SHARED_MODULE_SUFFIX}")
|
@ -0,0 +1,13 @@
|
|||||||
|
include("${CMAKE_CURRENT_LIST_DIR}/CMP0111-imported-target-prelude.cmake")
|
||||||
|
|
||||||
|
set_location(executable LOCATION "${CMAKE_CURRENT_BINARY_DIR}/executable${CMAKE_EXECUTABLE_SUFFIX}")
|
||||||
|
|
||||||
|
if (CMAKE_IMPORT_LIBRARY_SUFFIX)
|
||||||
|
set_location(shared IMPLIB "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_IMPORT_LIBRARY_PREFIX}shared${CMAKE_IMPORT_LIBRARY_SUFFIX}")
|
||||||
|
else ()
|
||||||
|
set_location(shared LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_SHARED_LIBRARY_PREFIX}shared${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
set_location(static LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}static${CMAKE_STATIC_LIBRARY_SUFFIX}")
|
||||||
|
set_location(unknown LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}unknown${CMAKE_STATIC_LIBRARY_SUFFIX}")
|
||||||
|
set_location(module LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_SHARED_MODULE_PREFIX}module${CMAKE_SHARED_MODULE_SUFFIX}")
|
14
Tests/RunCMake/Autogen/CMP0111-imported-target-libname.cmake
Normal file
14
Tests/RunCMake/Autogen/CMP0111-imported-target-libname.cmake
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
include("${CMAKE_CURRENT_LIST_DIR}/CMP0111-imported-target-prelude.cmake")
|
||||||
|
|
||||||
|
set_location(executable LOCATION "${CMAKE_CURRENT_BINARY_DIR}/executable${CMAKE_EXECUTABLE_SUFFIX}")
|
||||||
|
|
||||||
|
set_location(shared LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_SHARED_LIBRARY_PREFIX}shared${CMAKE_SHARED_LIBRARY_SUFFIX}")
|
||||||
|
if (CMAKE_IMPORT_LIBRARY_SUFFIX)
|
||||||
|
set_location(shared IMPLIB "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_IMPORT_LIBRARY_PREFIX}shared${CMAKE_IMPORT_LIBRARY_SUFFIX}")
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
set_location(static LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_IMPORT_LIBRARY_PREFIX}static${CMAKE_IMPORT_LIBRARY_SUFFIX}")
|
||||||
|
set_location(unknown LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_IMPORT_LIBRARY_PREFIX}unknown${CMAKE_IMPORT_LIBRARY_SUFFIX}")
|
||||||
|
set_location(module LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_SHARED_MODULE_PREFIX}module${CMAKE_SHARED_MODULE_SUFFIX}")
|
||||||
|
|
||||||
|
set_location(interface LIBNAME "interface")
|
32
Tests/RunCMake/Autogen/CMP0111-imported-target-prelude.cmake
Normal file
32
Tests/RunCMake/Autogen/CMP0111-imported-target-prelude.cmake
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
enable_language(CXX)
|
||||||
|
|
||||||
|
find_package(Qt5 REQUIRED COMPONENTS Core)
|
||||||
|
|
||||||
|
# Detect `-NOTFOUND` libraries at generate time.
|
||||||
|
cmake_policy(SET CMP0111 NEW)
|
||||||
|
|
||||||
|
add_executable(imported::executable IMPORTED)
|
||||||
|
add_library(imported::shared SHARED IMPORTED)
|
||||||
|
add_library(imported::static STATIC IMPORTED)
|
||||||
|
add_library(imported::unknown UNKNOWN IMPORTED)
|
||||||
|
add_library(imported::interface INTERFACE IMPORTED)
|
||||||
|
add_library(imported::module MODULE IMPORTED)
|
||||||
|
|
||||||
|
function (set_location target name loc)
|
||||||
|
set_property(TARGET "imported::${target}" PROPERTY
|
||||||
|
"IMPORTED_${name}" "${loc}")
|
||||||
|
endfunction ()
|
||||||
|
|
||||||
|
set(CMAKE_AUTOMOC 1)
|
||||||
|
|
||||||
|
add_library(automoc
|
||||||
|
empty.cpp)
|
||||||
|
target_link_libraries(automoc
|
||||||
|
PRIVATE
|
||||||
|
imported::shared
|
||||||
|
imported::static
|
||||||
|
imported::unknown
|
||||||
|
imported::interface)
|
||||||
|
add_dependencies(automoc
|
||||||
|
imported::executable
|
||||||
|
imported::module)
|
@ -5,4 +5,8 @@ if (with_qt5)
|
|||||||
run_cmake(QtInFunction)
|
run_cmake(QtInFunction)
|
||||||
run_cmake(QtInFunctionNested)
|
run_cmake(QtInFunctionNested)
|
||||||
run_cmake(QtInFunctionProperty)
|
run_cmake(QtInFunctionProperty)
|
||||||
|
|
||||||
|
run_cmake(CMP0111-imported-target-full)
|
||||||
|
run_cmake(CMP0111-imported-target-libname)
|
||||||
|
run_cmake(CMP0111-imported-target-implib-only)
|
||||||
endif ()
|
endif ()
|
||||||
|
@ -5,7 +5,7 @@ CMAKE_INSTALL_DOCDIR='share/doc/Usr'
|
|||||||
CMAKE_INSTALL_INCLUDEDIR='include'
|
CMAKE_INSTALL_INCLUDEDIR='include'
|
||||||
CMAKE_INSTALL_INFODIR='share/info'
|
CMAKE_INSTALL_INFODIR='share/info'
|
||||||
CMAKE_INSTALL_LIBDIR='lib/arch'
|
CMAKE_INSTALL_LIBDIR='lib/arch'
|
||||||
CMAKE_INSTALL_LIBEXECDIR='lib/arch'
|
CMAKE_INSTALL_LIBEXECDIR='libexec'
|
||||||
CMAKE_INSTALL_LOCALEDIR='share/locale'
|
CMAKE_INSTALL_LOCALEDIR='share/locale'
|
||||||
CMAKE_INSTALL_LOCALSTATEDIR='var'
|
CMAKE_INSTALL_LOCALSTATEDIR='var'
|
||||||
CMAKE_INSTALL_RUNSTATEDIR='var/run'
|
CMAKE_INSTALL_RUNSTATEDIR='var/run'
|
||||||
@ -20,7 +20,7 @@ CMAKE_INSTALL_FULL_DOCDIR='/usr/share/doc/Usr'
|
|||||||
CMAKE_INSTALL_FULL_INCLUDEDIR='/usr/include'
|
CMAKE_INSTALL_FULL_INCLUDEDIR='/usr/include'
|
||||||
CMAKE_INSTALL_FULL_INFODIR='/usr/share/info'
|
CMAKE_INSTALL_FULL_INFODIR='/usr/share/info'
|
||||||
CMAKE_INSTALL_FULL_LIBDIR='/usr/lib/arch'
|
CMAKE_INSTALL_FULL_LIBDIR='/usr/lib/arch'
|
||||||
CMAKE_INSTALL_FULL_LIBEXECDIR='/usr/lib/arch'
|
CMAKE_INSTALL_FULL_LIBEXECDIR='/usr/libexec'
|
||||||
CMAKE_INSTALL_FULL_LOCALEDIR='/usr/share/locale'
|
CMAKE_INSTALL_FULL_LOCALEDIR='/usr/share/locale'
|
||||||
CMAKE_INSTALL_FULL_LOCALSTATEDIR='/var'
|
CMAKE_INSTALL_FULL_LOCALSTATEDIR='/var'
|
||||||
CMAKE_INSTALL_FULL_RUNSTATEDIR='/var/run'
|
CMAKE_INSTALL_FULL_RUNSTATEDIR='/var/run'
|
||||||
|
@ -91,7 +91,12 @@ function(XcodeSchemaGeneration)
|
|||||||
file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
|
file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
|
||||||
|
|
||||||
run_cmake(XcodeSchemaGeneration)
|
run_cmake(XcodeSchemaGeneration)
|
||||||
run_cmake_command(XcodeSchemaGeneration-build xcodebuild -scheme foo build)
|
if (XCODE_VERSION VERSION_GREATER_EQUAL 13)
|
||||||
|
set(maybe_destination -destination platform=macOS)
|
||||||
|
else()
|
||||||
|
set(maybe_destination "")
|
||||||
|
endif()
|
||||||
|
run_cmake_command(XcodeSchemaGeneration-build xcodebuild -scheme foo ${maybe_destination} build)
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
if(NOT XCODE_VERSION VERSION_LESS 7)
|
if(NOT XCODE_VERSION VERSION_LESS 7)
|
||||||
|
@ -9,8 +9,8 @@ function(verify_architectures file)
|
|||||||
return()
|
return()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
string(REGEX MATCHALL "architecture [^ \n\t]+" architectures ${otool_out})
|
string(REGEX MATCHALL "\narchitecture [^ \n\t()]+" architectures ${otool_out})
|
||||||
string(REPLACE "architecture " "" actual "${architectures}")
|
string(REPLACE "\narchitecture " "" actual "${architectures}")
|
||||||
list(SORT actual)
|
list(SORT actual)
|
||||||
|
|
||||||
set(expected arm64 armv7 i386 x86_64)
|
set(expected arm64 armv7 i386 x86_64)
|
||||||
|
@ -9,8 +9,8 @@ function(verify_architectures file)
|
|||||||
return()
|
return()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
string(REGEX MATCHALL "architecture [^ \n\t]+" architectures ${otool_out})
|
string(REGEX MATCHALL "\narchitecture [^ \n\t()]+" architectures ${otool_out})
|
||||||
string(REPLACE "architecture " "" actual "${architectures}")
|
string(REPLACE "\narchitecture " "" actual "${architectures}")
|
||||||
list(SORT actual)
|
list(SORT actual)
|
||||||
|
|
||||||
set(expected armv7 x86_64)
|
set(expected armv7 x86_64)
|
||||||
|
@ -173,9 +173,7 @@ void __asan_unpoison_memory_region(void const volatile *addr, size_t size);
|
|||||||
* Prefer these methods in priority order (0 > 1 > 2)
|
* Prefer these methods in priority order (0 > 1 > 2)
|
||||||
*/
|
*/
|
||||||
#ifndef MEM_FORCE_MEMORY_ACCESS /* can be defined externally, on command line for example */
|
#ifndef MEM_FORCE_MEMORY_ACCESS /* can be defined externally, on command line for example */
|
||||||
# if defined(__GNUC__) && ( defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_6T2__) )
|
# if defined(__INTEL_COMPILER) || defined(__GNUC__) || defined(__ICCARM__)
|
||||||
# define MEM_FORCE_MEMORY_ACCESS 2
|
|
||||||
# elif defined(__INTEL_COMPILER) || defined(__GNUC__) || defined(__ICCARM__)
|
|
||||||
# define MEM_FORCE_MEMORY_ACCESS 1
|
# define MEM_FORCE_MEMORY_ACCESS 1
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
@ -30,9 +30,7 @@
|
|||||||
* Prefer these methods in priority order (0 > 1 > 2)
|
* Prefer these methods in priority order (0 > 1 > 2)
|
||||||
*/
|
*/
|
||||||
#ifndef XXH_FORCE_MEMORY_ACCESS /* can be defined externally, on command line for example */
|
#ifndef XXH_FORCE_MEMORY_ACCESS /* can be defined externally, on command line for example */
|
||||||
# if defined(__GNUC__) && ( defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_6T2__) )
|
# if (defined(__INTEL_COMPILER) && !defined(WIN32)) || \
|
||||||
# define XXH_FORCE_MEMORY_ACCESS 2
|
|
||||||
# elif (defined(__INTEL_COMPILER) && !defined(WIN32)) || \
|
|
||||||
(defined(__GNUC__) && ( defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7S__) )) || \
|
(defined(__GNUC__) && ( defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7S__) )) || \
|
||||||
defined(__ICCARM__)
|
defined(__ICCARM__)
|
||||||
# define XXH_FORCE_MEMORY_ACCESS 1
|
# define XXH_FORCE_MEMORY_ACCESS 1
|
||||||
|
@ -297,6 +297,7 @@ CMAKE_CXX_SOURCES="\
|
|||||||
cmBinUtilsWindowsPEObjdumpGetRuntimeDependenciesTool \
|
cmBinUtilsWindowsPEObjdumpGetRuntimeDependenciesTool \
|
||||||
cmBreakCommand \
|
cmBreakCommand \
|
||||||
cmBuildCommand \
|
cmBuildCommand \
|
||||||
|
cmCMakeLanguageCommand \
|
||||||
cmCMakeMinimumRequired \
|
cmCMakeMinimumRequired \
|
||||||
cmCMakePath \
|
cmCMakePath \
|
||||||
cmCMakePathCommand \
|
cmCMakePathCommand \
|
||||||
|
Loading…
x
Reference in New Issue
Block a user