Re: Propagating build settings to sub-projects
Re: Propagating build settings to sub-projects
- Subject: Re: Propagating build settings to sub-projects
- From: Christiaan Hofman <email@hidden>
- Date: Fri, 19 Nov 2010 12:06:29 +0100
On Nov 19, 2010, at 10:32, Chris Hanson wrote:
> On Nov 18, 2010, at 5:55 PM, Rick Mann wrote:
>
>> On Nov 18, 2010, at 15:28:48, Christiaan Hofman wrote:
>>
>>> Again, these are NOT settings in a project. They are settings that are chosen by the USER, and they override any setting in the project.
>>
>> Okay, I really have no idea what you're trying to say. I am the user, I set these in the project.
>
> I think what Christiaan is referring to are the choices you make in the toolbar’s Overview pop-up: Active Target, Active Configuration, Active Architecture, Active SDK, and so on. These are (roughly) equivalent to specifying a build setting on the command line: They override whatever else Xcode would do. There are only a few of them, and they do not include *_DEPLOYMENT_TARGET or TARGETED_DEVICE_FAMILY.
Yes, that's what I said.
>
> Otherwise, there is no passing of data between projects and “sub-projects” in Xcode; it doesn’t have the concept. It has “cross-project references” which let you set up dependencies between targets in related projects, and even refer to the product of a target in one project from within another project. But it’s a peer relationship, not a parent-child relationship.
>
> -- Chris
>
I personally think that's also where Xcode has a serious design flaw. Conceptually, it *is* a parent-child relationship, even if Xcode does not treat it as such. One Xcode project contains a reference to another, and depends on a target in another. It does not go the other way around. So there is a clear hierarchy. (Technically it *can* go in the reverse direction as well, but that would probably lead to serious problems like infinite dependency loops.) There are many situations where there is actual need for such parent-child relationships. For instance the 'parent' may need to propagate some build settings to cross-projects (as in this case), or it needs to know where a dependencies build product is located (for compiling and linking). (rdar://problem/7978613) Currently it is not possible to do this in Xcode, which is indeed a serious lack of functionality, and actually makes it impossible to cleanly and correctly include dependencies. In short, Xcode should support the conceptual reality, it should not dictate what the conceptual reality should be.
Christiaan
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden