Comments (15)
Hmmm... I guess I try again and see if Process Monitor can tell me where msbuild is looking to find the references.
from cmake.
Sorry, missed the issue. Will try to look at this this week.
from cmake.
Any news on this issue? I'm having similar issues (or at least I can't figure out how to appropriately add a reference to a .winmd file in an UWP app?
from cmake.
By coincidence, I was going to look at this again today or tomorrow. As I said, step #1 is reverse-engineering msbuild/VS using Process Monitor to see how it finds the actual dll's.
from cmake.
If I look at the project when adding a reference to the SDK, it gets an SDKReference defined, not just a Reference.
It should be easy to add a new VS_SDKREFERENCE variable to CMake to allow for SDKs to be specified. I had added that support for Windows 10, but specifically for the IOT, Mobile and Desktop extensions. Making it generic should be simple enough.
from cmake.
Sorry for the delay, I've added support for generic SDKReferences.
@d7ec8f90c9d42eec42e2b3f6305329415881740c
Simply add a Target property to the SDK like this:
set_property(TARGET ${EXE_NAME} PROPERTY VS_SDK_REFERENCES "Microsoft.AdMediatorWindows81, Version=1.0")
from cmake.
Excellent support as usual.
But now I just can't get cmake 3.5 to give me a winrt/phone8.1 project.
- "-G Visual Studio 14 2015 -T v140"
Only appears to work for Win10 projects and we're not ready to cut out all Win8.1 users. That's like asking people to not be our customers. - "-G Visual Studio 12 2013 -T v120" or without -T
Close but I get this error. Never had a problem with cmake before 3.5. And I can find nothing called "Windows Desktop SDK" to install so I'm stumped for now.
"A Windows Store component with CMake requires both the Windows Desktop SDK
as well as the Windows Store '8.1' SDK. Please make sure that you have
both installed"
from cmake.
If I understand this solution correctly, this requires the SDK to be pre-installed on the computer on which the solution is build. From my perspective (building on different remote servers) it causes unwanted configurations on these machines. Especially if the list continues to grow regarding which SDK's is needed in a configuration.
from cmake.
Merged this fix over and I have a Win8.1 project building.
https://cmake.org/Bug/view.php?id=15986#c40534
But I can't get a WinPhone8.1 project building. Maybe CMAKE_VS_MSBUILD_COMMAND needs to be set based on toolset, not VS version (GetToolsVersion()). But then it tries to use msbuild files from the toolset version, which I don't have as I don't have VS2013 installed.
from cmake.
I was not aware of the -T v120/-T v140 issues. I have never tried specifying the toolset, but have always set the CMAKE_SYSTEM_VERSION
and CMAKE_SYSTEM_NAME
. I'll take a look at what the issue is.
As for the Ad Mediation SDK, in order not to use the SDK_REFERENCES, then as Ted mentions, the references of the SDK would need to be reverse engineered for the assemblies to be part of the build and referenced directly by the project.
I'm at F8 until Thursday, so it might take a little more time.
from cmake.
My next attempt will be to merge the VS_SDK_REFERENCES feature into the 3.4 codebase. I'll report back when I get around to that.
from cmake.
That worked! Thanks.
I changed "this->GeneratorTarget->GetProperty" to "this->Target->GetProperty" but maybe I misunderstood where I should be setting the SDK reference. set_target_properties() made sense to me.
fyi, The MSFT ads sdk for Win8.1 is "Microsoft.AdMediatorWindows81, Version=1.0" for but WinPhone8.1 is "Microsoft.AdMediator81, Version=1.0". Bit of a surprise.
from cmake.
Any idea if this (VS_SDK_REFERENCES) will be merged into the official CMAKE?
from cmake.
Sorry, I've been working on some other issues, I'll try to update the code and issue a patch to the official release.
from cmake.
They are now in their master branch.
from cmake.
Related Issues (20)
- Tag versions shipped with VS HOT 1
- CMake 3.21.0.rc2 seems not to work with vcpkg HOT 1
- cmake and cmake tools extensions installed but not added to path HOT 1
- The visual studio 2022 Infobar can not deploy CMake automatically on WSL:Ubuntu.
- This repo is missing important files
- CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS breaks UWP arm builds HOT 1
- VS_MOBILE_EXTENSIONS - missing PropertySheets in vcxproj
- crash on cmLocale.h
- VCMDDAndroid for VS 2017 HOT 6
- pthread.h not found
- CMakeSettings.json: cmakeExecutable only working for remote machines HOT 1
- Parameter name: pathValue cannot be null. HOT 5
- CMAKE_CXX_STANDARD is ignored when using clang-cl HOT 6
- Seriously? HOT 2
- CMAKE_SIZEOF_VOID_P not always declared HOT 3
- add_test parsing - a mysterious __ArgsSep__ appears HOT 3
- cmStringTable.cxx is missing HOT 5
- no comment on it! HOT 1
- cannot find -lversion HOT 2
- CSharp HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cmake.