Git Product home page Git Product logo

Comments (15)

TedHoward avatar TedHoward commented on May 21, 2024

Hmmm... I guess I try again and see if Process Monitor can tell me where msbuild is looking to find the references.

from cmake.

khouzam avatar khouzam commented on May 21, 2024

Sorry, missed the issue. Will try to look at this this week.

from cmake.

johanlindfors avatar johanlindfors commented on May 21, 2024

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.

TedHoward avatar TedHoward commented on May 21, 2024

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.

khouzam avatar khouzam commented on May 21, 2024

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.

khouzam avatar khouzam commented on May 21, 2024

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.

TedHoward avatar TedHoward commented on May 21, 2024

Excellent support as usual.

But now I just can't get cmake 3.5 to give me a winrt/phone8.1 project.

  1. "-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.
  2. "-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.

johanlindfors avatar johanlindfors commented on May 21, 2024

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.

TedHoward avatar TedHoward commented on May 21, 2024

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.

khouzam avatar khouzam commented on May 21, 2024

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.

TedHoward avatar TedHoward commented on May 21, 2024

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.

TedHoward avatar TedHoward commented on May 21, 2024

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.

johanlindfors avatar johanlindfors commented on May 21, 2024

Any idea if this (VS_SDK_REFERENCES) will be merged into the official CMAKE?

from cmake.

khouzam avatar khouzam commented on May 21, 2024

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.

khouzam avatar khouzam commented on May 21, 2024

They are now in their master branch.

from cmake.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.