Xcode Build System Guide
PDF
Introduction
Targets
Target Overview
Managing Targets
Creating Targets
Editing Targets
Editing General Target Settings
Editing Information Property List Entries
Information Property List Entries for Native Targets
Preprocessing Info.plist Files
Duplicating Targets
Removing Targets
Defining Target Dependencies
Creating Aggregate Targets
Adding Target Dependencies
Removing Target Dependencies
Multiple Target Example
Managing Target Files
Viewing the Files in a Target
Adding and Removing Target Files
Setting the Role of Header Files
Build Phases
Build Phase Overview
Using Build Phases
Build Phase Processing Order
Build Phase Processing Order in Native Targets
Build Phase Processing Order in Jam-Based Targets
Reordering Build Phases
Adding and Deleting Build Phases
Adding Files to a Build Phase
Compile Sources Build Phase
Copy Files Build Phase
Run Script Build Phase
Using Build Settings in Run Script Build Phases
Build Rules
System Build Rules
Creating a Build Rule
Creating a Build Rule Script
Execution Environment for Build Rule Scripts
Build Settings
Build Setting Overview
Build Setting Syntax
Conditional Build Settings
Build Setting Evaluation
Multilayer Build Setting Definitions
Build Setting References
Build Setting Troubleshooting
Finding Build Setting Definitions
Build Configurations
Build Configuration Overview
Predefined Build Configurations
Managing Build Configurations
Editing Build Configurations
Build Configuration Files
Creating a Configuration File
Basing Build Configurations on Configuration Files
Build Setting Evaluation and Configuration Files
Linking
Specifying the Type of Binary to Create
Specifying the Search Order of External Symbols
Preventing Prebinding
Linking to a Dynamic Library in a Nonstandard Location
Reducing the Number of Exported Symbols
Reducing Paging Activity
Dead-Code Stripping
Enabling Dead-Code Stripping in Your Project
Identifying Stripped Symbols
Preventing the Stripping of Unused Symbols
Assembly Language Support
Preserving Individual Symbols
Preserving Sections
Dividing Blocks of Symbols
Reducing Build Times
Using a Precompiled Prefix Header
Creating the Prefix Header
Configuring Your Target to Use the Precompiled Header
Sharing Precompiled Header Binaries
Regenerating Precompiled Headers
Controlling the Cache Size Used for Precompiled Headers
Restrictions
Predictive Compilation
Using Multiple SDKs
Distributing Builds Among Multiple Computers
Shared Workgroup Builds
How Shared Workgroup Builds Work
Requirements for Using Shared Workgroup Builds
Sharing a Computer as a Shared Workgroup Build Server
Shared Workgroup Builds and Firewalls
Dedicated Network Builds
How Dedicated Network Builds Work
Requirements for Using Dedicated Network Builds
Sharing a Computer as a Dedicated Network Build Server
Dedicated Network Builds and Firewalls
Getting the Most Out of Distributed Builds
Distributed Builds Preferences
Revision History