I got this from an Xcode expert:
Xcode has two advantages to doing the right thing here:
1) For files outside the project tree that your project requires, configure the source tree. Xcode> Preferences> Source Trees, define a symbolic path (e.g. EXTRA_SOURCES) with the actual path on your disk to where they were extracted. Then, when you add these files to your project, add them relative to the source tree in that source tree.
(NB Close and restart Xcode after defining the source tree in Prefs.)
2) In Xcode 3.2, define the roots of the project to include the Source Tree. Project> Change project settings> General tab, Configure Roots and SCM button. Add the source tree to Project Roots and set up its repository, which can be a separate repository from your main project files.
What is it. You have one file tree from one repository, but many projects can share it, and if you perform the SCM operation on the source in one project, this is reflected in others.
source share