서문 : C# 및 C++/CLI 코드 기반 cmake 빌드의 나머지 부분과 C# csproj를 통합하려고합니다. Visual Studio에서 CMake가 .Net과 잘 작동하지 않기 때문에이 작업을 시도하지 말라고 조언을 받았지만 일부 사용자 지정을 구현 한 후에는 매우 가까이에 있다고 생각합니다.cmake에서 특정 vcproj에 대해 생성 된 GUake를 CMake에서 얻을 수 있습니까?
내 맞춤 기능 중 일부는 CMake 시간에 csproj 파일을 편집하기 위해 configure_file 명령을 사용하여 발생하는 빌드 유형 (예 : x86, x64)에 따라 맞춤 설정합니다.
<ProjectReference Include="..\..\WrapperProject\WrapperProject.vcproj">
<Project>{7BD6E175-CDD1-4F8D-A3B2-0AC862E62C03}</Project>
<Name>WrapperProject</Name>
</ProjectReference>
... 그리고 CMake 캐시가 재건 될 때마다 GUID를들이이 프로젝트에 대한 변경 때문에, 정적으로 유지 할 수 없습니다
문제는 내가 C++/CLI 프로젝트를 참조하는 일부 ProjectReference 태그를 사용한다는 것입니다 (내가 잘못하면 나를 바로 잡아라.)
그래서 내가하고 싶은 것은 CMake가이 프로젝트를 위해 어떤 GUID를 계획하고 그에 따라 vcproj 파일을 편집 할 것인지를 찾는 것입니다.
set_property(CACHE ${target_name}_GUID_CMAKE PROPERTY VALUE ${MY_GUID})
을 ...하지만 나는 게터 동등한를 찾을 수 없습니다 :
구글은 사람들과 같이, GUID를 설정하는 'set_property'를 사용할 수 있음을 알려줍니다. 나는이 같은 일을 시도했다 :
get_property (WRAPPER_GUID 캐시 내부 속성 WrapperTargetName_GUID_CMAKE)
... 행운을하지 않고. 귀하의 도움을 주시면 감사하겠습니다!
CMake에서 고정 프로젝트 GUID를 설정할 수 있으므로 고정 된 ProjectReference 태그도 작성할 수 있어야합니다. 맞습니까? – ronkot