[Cmake-commits] CMake branch, master, updated. v3.13.4-1270-ga5ec7f8
Kitware Robot
kwrobot at kitware.com
Mon Feb 4 07:53:06 EST 2019
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".
The branch, master has been updated
via a5ec7f868f2c7c9714a525a9872b9eaa528d064b (commit)
via 40e12882609619a902d19b94de442b2874bf7a45 (commit)
via dc4a2749a52cb7f96ad8d7146ee4d680a2beb5fa (commit)
via f5d72be57a00f18ed2b18fc2eb6ccedee3544542 (commit)
via cff026dbc01f975857236a11fc033af48b5e130a (commit)
via 6c21722adbc1745b6362ca9501692805c19eb8ac (commit)
via cb01b8c8ba1754b40e74d89d2c6dfef5dc8c44d3 (commit)
from d401c10db5cc5afc009bbb31c4ea11e4914687db (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a5ec7f868f2c7c9714a525a9872b9eaa528d064b
commit a5ec7f868f2c7c9714a525a9872b9eaa528d064b
Merge: 40e1288 f5d72be
Author: Brad King <brad.king at kitware.com>
AuthorDate: Mon Feb 4 12:48:54 2019 +0000
Commit: Kitware Robot <kwrobot at kitware.com>
CommitDate: Mon Feb 4 07:49:01 2019 -0500
Merge topic 'vs-wince-deployment'
f5d72be57a VS: Fix deployment for WinCE projects
Acked-by: Kitware Robot <kwrobot at kitware.com>
Merge-request: !2907
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=40e12882609619a902d19b94de442b2874bf7a45
commit 40e12882609619a902d19b94de442b2874bf7a45
Merge: dc4a274 cff026d
Author: Brad King <brad.king at kitware.com>
AuthorDate: Mon Feb 4 12:47:08 2019 +0000
Commit: Kitware Robot <kwrobot at kitware.com>
CommitDate: Mon Feb 4 07:47:15 2019 -0500
Merge topic 'winrtrefs'
cff026dbc0 VS: Fix WinRT component references
6c21722adb Tests: Fix VSWinStorePhone test with Windows 10 SDK 17763
Acked-by: Kitware Robot <kwrobot at kitware.com>
Merge-request: !2906
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=dc4a2749a52cb7f96ad8d7146ee4d680a2beb5fa
commit dc4a2749a52cb7f96ad8d7146ee4d680a2beb5fa
Merge: d401c10 cb01b8c
Author: Brad King <brad.king at kitware.com>
AuthorDate: Mon Feb 4 12:46:21 2019 +0000
Commit: Kitware Robot <kwrobot at kitware.com>
CommitDate: Mon Feb 4 07:46:29 2019 -0500
Merge topic 'set-env-warning'
cb01b8c8ba set: warn of extra arguments after ENV value.
Acked-by: Kitware Robot <kwrobot at kitware.com>
Merge-request: !2903
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=f5d72be57a00f18ed2b18fc2eb6ccedee3544542
commit f5d72be57a00f18ed2b18fc2eb6ccedee3544542
Author: Wil Stark <wil_stark at keysight.com>
AuthorDate: Fri Feb 1 10:15:39 2019 -0800
Commit: Brad King <brad.king at kitware.com>
CommitDate: Fri Feb 1 13:59:09 2019 -0500
VS: Fix deployment for WinCE projects
Fixes: #18868
diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx
index 9d7dd07..0ebfe3b 100644
--- a/Source/cmVisualStudio10TargetGenerator.cxx
+++ b/Source/cmVisualStudio10TargetGenerator.cxx
@@ -376,7 +376,13 @@ void cmVisualStudio10TargetGenerator::Generate()
{
Elem e0(BuildFileStream, "Project");
e0.Attribute("DefaultTargets", "Build");
- e0.Attribute("ToolsVersion", this->GlobalGenerator->GetToolsVersion());
+ const char* toolsVersion = this->GlobalGenerator->GetToolsVersion();
+ if (this->GlobalGenerator->GetVersion() ==
+ cmGlobalVisualStudioGenerator::VS12 &&
+ this->GlobalGenerator->TargetsWindowsCE()) {
+ toolsVersion = "4.0";
+ }
+ e0.Attribute("ToolsVersion", toolsVersion);
e0.Attribute("xmlns",
"http://schemas.microsoft.com/developer/msbuild/2003");
diff --git a/Tests/RunCMake/VS10ProjectWinCE/VsCEDebuggerDeploy-check.cmake b/Tests/RunCMake/VS10ProjectWinCE/VsCEDebuggerDeploy-check.cmake
index c66676f..6ab3833 100644
--- a/Tests/RunCMake/VS10ProjectWinCE/VsCEDebuggerDeploy-check.cmake
+++ b/Tests/RunCMake/VS10ProjectWinCE/VsCEDebuggerDeploy-check.cmake
@@ -13,6 +13,7 @@ endif()
set(FoundCEAdditionalFiles FALSE)
set(FoundRemoteDirectory FALSE)
+set(FoundToolsVersion4 FALSE)
file(STRINGS "${vcProjectFile}" lines)
foreach(line IN LISTS lines)
@@ -20,6 +21,8 @@ foreach(line IN LISTS lines)
set(FoundCEAdditionalFiles TRUE)
elseif(line MATCHES " *<RemoteDirectory>[A-Za-z0-9\\]+</RemoteDirectory> *$")
set(FoundRemoteDirectory TRUE)
+ elseif(line MATCHES " *<Project +.*ToolsVersion=\"4.0\".*> *$")
+ set(FoundToolsVersion4 TRUE)
endif()
endforeach()
@@ -32,3 +35,8 @@ if(NOT FoundRemoteDirectory)
set(RunCMake_TEST_FAILED "RemoteDirectory not found or not set correctly.")
return()
endif()
+
+if(NOT FoundToolsVersion4)
+ set(RunCMake_TEST_FAILED "Failed to find correct ToolsVersion=\"4.0\" .")
+ return()
+endif()
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=cff026dbc01f975857236a11fc033af48b5e130a
commit cff026dbc01f975857236a11fc033af48b5e130a
Author: Gilles Khouzam <gillesk at microsoft.com>
AuthorDate: Fri Feb 1 09:40:58 2019 -0800
Commit: Brad King <brad.king at kitware.com>
CommitDate: Fri Feb 1 13:04:52 2019 -0500
VS: Fix WinRT component references
WinRT components need to be referenced in a similar way that managed
code libraries are referenced. Validate that the library reference is a
WinRT component and reference it through the project.
Add test coverage for `VS_WINRT_COMPONENT`. While at it, fix the IOT
reference failing on Win10 SDK 17763 which doesn't include it anymore.
Fixes: #18846
diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx
index 9d7dd07..c4040e1 100644
--- a/Source/cmVisualStudio10TargetGenerator.cxx
+++ b/Source/cmVisualStudio10TargetGenerator.cxx
@@ -3884,8 +3884,8 @@ void cmVisualStudio10TargetGenerator::WriteProjectReferences(Elem& e0)
this->WriteDotNetReferenceCustomTags(e2, name);
// If the dependency target is not managed (compiled with /clr or
- // C# target) we cannot reference it and have to set
- // 'ReferenceOutputAssembly' to false.
+ // C# target) and not a WinRT component we cannot reference it and
+ // have to set 'ReferenceOutputAssembly' to false.
auto referenceNotManaged =
dt->GetManagedType("") < cmGeneratorTarget::ManagedType::Mixed;
// Workaround to check for manually set /clr flags.
@@ -3902,6 +3902,12 @@ void cmVisualStudio10TargetGenerator::WriteProjectReferences(Elem& e0)
if (referenceNotManaged && dt->GetType() == cmStateEnums::STATIC_LIBRARY) {
referenceNotManaged = !dt->IsCSharpOnly();
}
+
+ // Referencing WinRT components is okay.
+ if (referenceNotManaged) {
+ referenceNotManaged = !dt->GetPropertyAsBool("VS_WINRT_COMPONENT");
+ }
+
if (referenceNotManaged) {
e2.Element("ReferenceOutputAssembly", "false");
e2.Element("CopyToOutputDirectory", "Never");
diff --git a/Tests/VSWinStorePhone/CMakeLists.txt b/Tests/VSWinStorePhone/CMakeLists.txt
index eefd9a6..efc7760 100644
--- a/Tests/VSWinStorePhone/CMakeLists.txt
+++ b/Tests/VSWinStorePhone/CMakeLists.txt
@@ -8,6 +8,8 @@ elseif(MSVC_VERSION GREATER 1600)
set(COMPILER_VERSION "11")
endif()
+add_subdirectory(WinRT)
+
set (APP_MANIFEST_NAME Package.appxmanifest)
if("${CMAKE_SYSTEM_NAME}" STREQUAL "WindowsPhone")
set(PLATFORM WP)
@@ -149,5 +151,4 @@ if("${SHORT_VERSION}" STREQUAL "10.0")
set_property(TARGET ${EXE_NAME} PROPERTY VS_SDK_REFERENCES "Microsoft.UniversalCRT.Debug, Version=${CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION}")
endif()
-
-target_link_libraries(${EXE_NAME} d3d11)
+target_link_libraries(${EXE_NAME} d3d11 JusticeLeagueWinRT)
diff --git a/Tests/VSWinStorePhone/Direct3DApp1/CubeRenderer.cpp b/Tests/VSWinStorePhone/Direct3DApp1/CubeRenderer.cpp
index 1c969cd..3ba35fa 100644
--- a/Tests/VSWinStorePhone/Direct3DApp1/CubeRenderer.cpp
+++ b/Tests/VSWinStorePhone/Direct3DApp1/CubeRenderer.cpp
@@ -6,11 +6,15 @@ using namespace DirectX;
using namespace Microsoft::WRL;
using namespace Windows::Foundation;
using namespace Windows::UI::Core;
+using namespace JusticeLeagueWinRT;
CubeRenderer::CubeRenderer()
: m_loadingComplete(false)
, m_indexCount(0)
{
+ // Create a new WinRT object to validate that we can link properly
+ Batman ^ hero = ref new Batman();
+ hero->savePeople();
}
void CubeRenderer::CreateDeviceResources()
diff --git a/Tests/VSWinStorePhone/WinRT/Batman.cpp b/Tests/VSWinStorePhone/WinRT/Batman.cpp
new file mode 100644
index 0000000..e092258
--- /dev/null
+++ b/Tests/VSWinStorePhone/WinRT/Batman.cpp
@@ -0,0 +1,14 @@
+#include "Batman.h"
+
+using namespace JusticeLeagueWinRT;
+using namespace Platform;
+
+Batman::Batman()
+{
+}
+
+void Batman::savePeople()
+{
+ int i = 0;
+ i++;
+}
diff --git a/Tests/VSWinStorePhone/WinRT/Batman.h b/Tests/VSWinStorePhone/WinRT/Batman.h
new file mode 100644
index 0000000..e2dcabc
--- /dev/null
+++ b/Tests/VSWinStorePhone/WinRT/Batman.h
@@ -0,0 +1,12 @@
+#pragma once
+
+namespace JusticeLeagueWinRT {
+public
+ref class Batman sealed
+{
+public:
+ Batman();
+
+ void savePeople();
+};
+}
diff --git a/Tests/VSWinStorePhone/WinRT/CMakeLists.txt b/Tests/VSWinStorePhone/WinRT/CMakeLists.txt
new file mode 100644
index 0000000..bb93333
--- /dev/null
+++ b/Tests/VSWinStorePhone/WinRT/CMakeLists.txt
@@ -0,0 +1,13 @@
+project(JusticeLeagueWinRT CXX)
+
+# create project
+add_library(JusticeLeagueWinRT SHARED
+ "${CMAKE_CURRENT_SOURCE_DIR}/Batman.cpp"
+ "${CMAKE_CURRENT_SOURCE_DIR}/Batman.h"
+)
+
+set_target_properties(JusticeLeagueWinRT PROPERTIES
+ VS_WINRT_COMPONENT TRUE
+ VS_GLOBAL_ROOTNAMESPACE "JusticeLeagueWinRT"
+ OUTPUT_NAME "JusticeLeagueWinRT"
+)
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6c21722adbc1745b6362ca9501692805c19eb8ac
commit 6c21722adbc1745b6362ca9501692805c19eb8ac
Author: Gilles Khouzam <gillesk at microsoft.com>
AuthorDate: Fri Feb 1 09:40:58 2019 -0800
Commit: Brad King <brad.king at kitware.com>
CommitDate: Fri Feb 1 13:02:16 2019 -0500
Tests: Fix VSWinStorePhone test with Windows 10 SDK 17763
The Windows 10 SDK no longer includes IOT.
diff --git a/Tests/VSWinStorePhone/CMakeLists.txt b/Tests/VSWinStorePhone/CMakeLists.txt
index acda117..eefd9a6 100644
--- a/Tests/VSWinStorePhone/CMakeLists.txt
+++ b/Tests/VSWinStorePhone/CMakeLists.txt
@@ -139,7 +139,11 @@ if("${SHORT_VERSION}" STREQUAL "10.0")
message(STATUS "Targeting Windows 10. Setting Extensions to version ${CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION}")
set_property(TARGET ${EXE_NAME} PROPERTY VS_DESKTOP_EXTENSIONS_VERSION "${CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION}")
set_property(TARGET ${EXE_NAME} PROPERTY VS_MOBILE_EXTENSIONS_VERSION "${CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION}")
- set_property(TARGET ${EXE_NAME} PROPERTY VS_IOT_EXTENSIONS_VERSION "${CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION}")
+
+ # The last IOT reference is on 10.0.17134.0, so only add it if supported
+ if("${CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION}" VERSION_LESS "10.0.17135.0")
+ set_property(TARGET ${EXE_NAME} PROPERTY VS_IOT_EXTENSIONS_VERSION "${CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION}")
+ endif()
# Add a reference to an SDK
set_property(TARGET ${EXE_NAME} PROPERTY VS_SDK_REFERENCES "Microsoft.UniversalCRT.Debug, Version=${CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION}")
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=cb01b8c8ba1754b40e74d89d2c6dfef5dc8c44d3
commit cb01b8c8ba1754b40e74d89d2c6dfef5dc8c44d3
Author: Taylor Holberton <taylorcholberton at gmail.com>
AuthorDate: Thu Jan 31 19:26:14 2019 -0500
Commit: Brad King <brad.king at kitware.com>
CommitDate: Fri Feb 1 06:10:34 2019 -0500
set: warn of extra arguments after ENV value.
Fixes: #18842
diff --git a/Help/command/set.rst b/Help/command/set.rst
index dd5ea13..c0e02e2 100644
--- a/Help/command/set.rst
+++ b/Help/command/set.rst
@@ -86,7 +86,7 @@ Set Environment Variable
.. code-block:: cmake
- set(ENV{<variable>} <value>...)
+ set(ENV{<variable>} [<value>])
Sets an :manual:`Environment Variable <cmake-env-variables(7)>`
to the given value.
@@ -95,3 +95,10 @@ Subsequent calls of ``$ENV{<variable>}`` will return this new value.
This command affects only the current CMake process, not the process
from which CMake was called, nor the system environment at large,
nor the environment of subsequent build or test processes.
+
+If no argument is given after ``ENV{<variable>}`` or if ``<value>`` is
+an empty string, then this command will clear any existing value of the
+environment variable.
+
+Arguments after ``<value>`` are ignored. If extra arguments are found,
+then an author warning is issued.
diff --git a/Source/cmSetCommand.cxx b/Source/cmSetCommand.cxx
index b09e3ca..6bd071c 100644
--- a/Source/cmSetCommand.cxx
+++ b/Source/cmSetCommand.cxx
@@ -38,6 +38,14 @@ bool cmSetCommand::InitialPass(std::vector<std::string> const& args,
putEnvArg += args[1];
cmSystemTools::PutEnv(putEnvArg);
}
+ // if there's extra arguments, warn user
+ // that they are ignored by this command.
+ if (args.size() > 2) {
+ std::string m = "Only the first value argument is used when setting "
+ "an environment variable. Argument '" +
+ args[2] + "' and later are unused.";
+ this->Makefile->IssueMessage(MessageType::AUTHOR_WARNING, m);
+ }
return true;
}
diff --git a/Tests/RunCMake/set/ExtraEnvValue-stderr.txt b/Tests/RunCMake/set/ExtraEnvValue-stderr.txt
new file mode 100644
index 0000000..f61f9d2
--- /dev/null
+++ b/Tests/RunCMake/set/ExtraEnvValue-stderr.txt
@@ -0,0 +1,6 @@
+CMake Warning \(dev\) at ExtraEnvValue.cmake:1 \(set\):
+ Only the first value argument is used when setting an environment variable.
+ Argument 'value_2' and later are unused.
+Call Stack \(most recent call first\):
+ CMakeLists.txt:3 \(include\)
+This warning is for project developers. Use -Wno-dev to suppress it.
diff --git a/Tests/RunCMake/set/ExtraEnvValue.cmake b/Tests/RunCMake/set/ExtraEnvValue.cmake
new file mode 100644
index 0000000..768a6ea
--- /dev/null
+++ b/Tests/RunCMake/set/ExtraEnvValue.cmake
@@ -0,0 +1 @@
+set (ENV{sample_key} value_1 value_2)
diff --git a/Tests/RunCMake/set/RunCMakeTest.cmake b/Tests/RunCMake/set/RunCMakeTest.cmake
index ea63d0b..b3bd0a4 100644
--- a/Tests/RunCMake/set/RunCMakeTest.cmake
+++ b/Tests/RunCMake/set/RunCMakeTest.cmake
@@ -4,3 +4,4 @@ run_cmake(ParentScope)
run_cmake(ParentPulling)
run_cmake(ParentPullingRecursive)
run_cmake(UnknownCacheType)
+run_cmake(ExtraEnvValue)
-----------------------------------------------------------------------
Summary of changes:
Help/command/set.rst | 9 ++++++++-
Source/cmSetCommand.cxx | 8 ++++++++
Source/cmVisualStudio10TargetGenerator.cxx | 18 +++++++++++++++---
.../VS10ProjectWinCE/VsCEDebuggerDeploy-check.cmake | 8 ++++++++
Tests/RunCMake/set/ExtraEnvValue-stderr.txt | 6 ++++++
Tests/RunCMake/set/ExtraEnvValue.cmake | 1 +
Tests/RunCMake/set/RunCMakeTest.cmake | 1 +
Tests/VSWinStorePhone/CMakeLists.txt | 11 ++++++++---
Tests/VSWinStorePhone/Direct3DApp1/CubeRenderer.cpp | 4 ++++
Tests/VSWinStorePhone/WinRT/Batman.cpp | 14 ++++++++++++++
Tests/VSWinStorePhone/WinRT/Batman.h | 12 ++++++++++++
Tests/VSWinStorePhone/WinRT/CMakeLists.txt | 13 +++++++++++++
12 files changed, 98 insertions(+), 7 deletions(-)
create mode 100644 Tests/RunCMake/set/ExtraEnvValue-stderr.txt
create mode 100644 Tests/RunCMake/set/ExtraEnvValue.cmake
create mode 100644 Tests/VSWinStorePhone/WinRT/Batman.cpp
create mode 100644 Tests/VSWinStorePhone/WinRT/Batman.h
create mode 100644 Tests/VSWinStorePhone/WinRT/CMakeLists.txt
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list