Git Product home page Git Product logo

Comments (4)

ruslo avatar ruslo commented on July 1, 2024

Since there is a comment just saying # ! I assume there is a specific reason why we have to unset it

I don't remember details (commit was made 5 years ago) but yes, # ! means the necessity of this change. Originally all of the environment variables from Xcode was cleared but few of them are really playing critical role, like SDKROOT:

Deployment SDK version for iOS can be set by IOS_DEPLOYMENT_SDK_VERSION CMake variable, e.g.:

Which will be used to initialize CMAKE_XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET:

  • polly/os/iphone.cmake

    Lines 115 to 126 in 6140caa

    string(COMPARE EQUAL "${IOS_DEPLOYMENT_SDK_VERSION}" "" _is_empty)
    if(_is_empty)
    set(
    CMAKE_XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET
    "${IOS_SDK_VERSION}"
    )
    else()
    set(
    CMAKE_XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET
    "${IOS_DEPLOYMENT_SDK_VERSION}"
    )
    endif()

from polly.

pokey909 avatar pokey909 commented on July 1, 2024

I tried passing this variable via --fwd IOS_DEPLOYMENT_SDK_VERSION=9.0 to polly which didn't work. I also tried to set it in a custom PreLoad.cmake to make sure it gets loaded before the toolchain. But it also did not get propagated.
The only place where I could set it seemed to be hardcoded in the toolchain itself, which is why I thought I could use an environment variable her e.g.

set(IOS_DEPLOYMENT_SDK_VERSION "$ENV{IPHONEOS_DEPLOYMENT_TARGET}")

(I admit, not the best solution)

This means I need to create another toolchain file for every change to the deployment target.

Do you have a suggestion how to do this more efficiently and avoid this combinatorial explosion effect?

from polly.

ruslo avatar ruslo commented on July 1, 2024

This means I need to create another toolchain file for every change to the deployment target.

Do you have a suggestion how to do this more efficiently and avoid this combinatorial explosion effect?

This is a know drawback (#20). I have some ideas but this involve completely new approach and a lot of work. Straightforward workaround at this moment just create another toolchain.

from polly.

ruslo avatar ruslo commented on July 1, 2024

Closing inactive discussion.

from polly.

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.