Xcode: cross project target dependencies for resources (in addition to code libraries)
| Originator: | raphael | ||
| Number: | rdar://19793929 | Date Originated: | 11-Feb-2015 09:23 AM |
| Status: | Open | Resolved: | |
| Product: | Developer Tools | Product Version: | Xcode 6.3 |
| Classification: | Enhancement | Reproducible: | Always |
We run into a problem where an app target depends on libs *and* resource bundles defined in another project, same workspace. Code libraries dependencies are correctly handled by the dependency mechanism of Xcode. But resource bundle dependencies are not handled at all, and that forces us to make specific schemes to build the app. Scheme that will build the bundle before building the app (in that order). This has all kind of implications, including IBDesignable mechanics: IBDesignable requires the app to be built to include the custom control. But the app cannot be built without the scheme (mentioned above), and is therefore not useable because IBDesignable builds aren't aware of schemes. Generally speaking, it actually makes a lot of sense of having an app relying on non-code targets defined in different projects (same workspace). Moreover, an app target should be the one responsible for building the app, and should not depend on some other data (scheme) to achieve that. This is why it makes sense that targets should be able to depend on targets of other projects in the same workspace. The lose coupling could be implemented by defining dependencies based on names (just like code libs) Could you please consider defining such dependencies outside of the scheme semantics, just like you do for code libraries? Thank you. Workspace illustration: Workspace 1 Project A Lib A.1 Bundle A.2 Project B App B.1 (App B.1 depends on both LibA.1 & Bundle A.2)
Comments
Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!