• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
[Config Files]Config file evaluation problems
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[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


  • Follow-Ups:
    • Re: [Config Files]Config file evaluation problems
      • From: Scott Tooker <email@hidden>
    • Re: [Config Files]Config file evaluation problems
      • From: Thomas Engelmeier <email@hidden>
  • Prev by Date: Invalid precompiled header
  • Next by Date: Re: [Config Files] What can I really modify in a config file?
  • Previous by thread: Invalid precompiled header
  • Next by thread: Re: [Config Files]Config file evaluation problems
  • Index(es):
    • Date
    • Thread