summaryrefslogtreecommitdiffstats
path: root/Tests/CSharpLinkToCxx/cpp_native.cpp
diff options
context:
space:
mode:
authorMichael Stürmer <michael.stuermer@schaeffler.com>2017-08-29 08:46:54 (GMT)
committerBrad King <brad.king@kitware.com>2017-09-05 13:41:40 (GMT)
commit7e57e6ae123439d5101ae1fc3ce593652b408b0c (patch)
treea587f76c38814a49ceb1a4580b1ca2a4d4d1c598 /Tests/CSharpLinkToCxx/cpp_native.cpp
parent29907992277e0145a83368f3e8674b0608d745c5 (diff)
downloadCMake-7e57e6ae123439d5101ae1fc3ce593652b408b0c.zip
CMake-7e57e6ae123439d5101ae1fc3ce593652b408b0c.tar.gz
CMake-7e57e6ae123439d5101ae1fc3ce593652b408b0c.tar.bz2
VS: Do not reference output assemblies if not possible for CSharp target
Since commit v3.9.0-rc4~4^2 (Vs: allow CSharp targets to be linked to CXX targets, 2017-06-20) CSharp targets get `ProjectReference` entries to their dependencies. This causes VS to also reference the dependency's output assembly by default, which is incorrect for non-managed targets. Fix this by setting `ReferenceOutputAssembly` to `false` for targets that can't provide output assemblies. Unmanaged C++ targets (shared libs & executables) can still be referenced and a warning will be shown in the IDE but the build will not break anymore. Fixes: #17172
Diffstat (limited to 'Tests/CSharpLinkToCxx/cpp_native.cpp')
-rw-r--r--Tests/CSharpLinkToCxx/cpp_native.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/Tests/CSharpLinkToCxx/cpp_native.cpp b/Tests/CSharpLinkToCxx/cpp_native.cpp
new file mode 100644
index 0000000..dc7670f
--- /dev/null
+++ b/Tests/CSharpLinkToCxx/cpp_native.cpp
@@ -0,0 +1,10 @@
+#include "cpp_native.hpp"
+
+#include <iostream>
+
+namespace CppApp {
+void MyCpp::testMyCpp()
+{
+ std::cout << "#message from CppApp" << std::endl;
+}
+}