[Config Files]Config file evaluation problems
[Config Files]Config file evaluation problems
- Subject: [Config Files]Config file evaluation problems
- From: Rush Manbert <email@hidden>
- Date: Thu, 02 Mar 2006 12:38:54 -0800
Is it true that the config file used for "Based on" is only read at the
time that it is selected from the "Based on" drop down? That is what I
am seeing.
I have a config file that contains this:
LINK_WITH_STANDARD_LIBRARIES = NO
which I have added to a brand new project. As we all know, in a brand
new project, the check box for Link With Standard Libraries is checked,
which is the equivalent of YES. If I do Get Info for my target, select
the Debug configuration, and the Linking collection, I can see it in the
dialog. If I then select my config file from the "Based on" drop down, I
can see the state of the check box change. It becomes unchecked. If I
also uncheck Zero Link and run the build, it fails with unknown symbols
from the standard lib. (If I don't uncheck Zero Link the build succeeds,
but I expect that the program will fail at runtime. I didn't try that
because it's not part of what I'm testing.)
If I then edit my config file and change NO to YES, save the file, and
run the build again it fails in the same way. If I select None from the
"Based on" drop down, then select my config file again, then run the
build, it succeeds.
It appears that editing my config files after they have been selected
from the "Based on" drop down has no effect on the build settings. The
config files are only read once, and there is no dependency mechanism
for detecting that they have changed. Is this by design?
Strangely, the "Link With Standard Libraries" check box assumes whatever
state your config file says when you select the config file. However,
Zero Link does not change, no matter what the config file says. Why is
that? What else acts this way? (This is related to my "what can you
really change" post.)
Sorry to keep harping on this stuff, but I'm trying to create a
structured, hierarchical set of cross-project config files that isolate
common and configuration-specific definitions, just like I would with a
set of cross-project header files. I also want to control them with CVS,
and if I edit and check in a config file that is used by multiple
projects, I feel that all of the dependent projects should just do the
right thing when they build after they check out the modified config
file. I shouldn't need to go to each of them and manually
deselect/select the config file for the settings to take effect. What
I'm seeing seems really messed up in this regard.
- Rush
_______________________________________________
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