Apple Developer Connection
Member Login Log In | Not a Member? Contact ADC

Hide TOC

Introduction to Xcode Build Setting Reference

Xcode uses build settings to specify aspects of the build process followed to generate a product. As explained in Xcode User Guide, a build setting is a variable that determines how build tasks are performed

You can customize most of the build settings listed in this document using the target and product editors in the Xcode application, configuration files, and xcodebuild invocations. However, there are build settings that can be customized only through indirect means and build settings that are not customizable. Build settings that are not customizable do not have a “Default value” entry in their reference.

To fully understand how a target’s build settings affect a build and how they relate to one another, this appendix uses the following terms to describe each build setting and the build settings that relate to it.

bundle file path or bundle directory path

String that represents a location inside a bundled product. See Bundle Programming Guide for information on product bundles.

C-based language

C, C++, Objective-C, and Objective-C++.

C++–based language

C++, and Objective-C++.

Companion

Build settings that are used in conjunction with the referring build setting to accomplish its action. If you customize the referring build setting, you should review the specifications of its companion build settings.

Default value

The buildtime value of a build setting when there’s no corresponding setting specification for the target.

Effector

Build setting whose value is used to compute the default value of the referring build setting.

Effect

Build setting whose default value is computed using the value of the referring build setting.

file path or directory path

String that represents a fully qualified filesystem path. When a path contains spaces, the path must be surrounded by single quotation marks (') or double quotation marks ("), or the spaces must be escaped with a backslash (\).

filename

String that may contain numbers, letters, dashes (-), periods (.) or underscores (_).

identifier

String that may contain digits, letters, dashes (-), plus signs (+), and underscores (_).

installed product

A product configured for distribution to its users.

installed product directory

Directory that represents the root directory (/) on a user’s computer.

number

String that may contain only digits.

numeric identifier

String that may contain numbers and periods.

option specification

String that may contain the characters an identifier may contain as well as spaces. When an option specification contains spaces, it must be surrounded by single quotation marks (') or double quotation marks (").

Prerequisite

Expression that must be true for the referring build setting to take effect.

Prerequisite for

The referring build setting’s value allows or suppresses the behavior specified by the referred build setting.

project file path or project directory path

String that represents a location inside a project directory.

Related to

Build setting with a conceptual relationship with the referring build setting except for prerequisites, companions, effects, and effectors.

uniform type identifier (UTI)

String that specifies a type. This string uses the reverse-DNS (Domain Name System) to uniquely identify an item in a way that other systems can recognize. See Uniform Type Identifiers Overview for details on uniform type identifiers.

Value

Value of a build setting at build time. This is not necessarily the build setting specification. See “Build Settings“ in Xcode User Guide for details.

This document assumes that all the Xcode SDKs are installed on your computer.

If you develop products using C++, you may need to customize these build settings in your targets:

Use these build settings to customize your debugging experience:

The following sections describe build settings you can use to customize a build or to inquire about a the configuration of a build at build time.



Hide TOC


Last updated: 2008-05-21




Did this document help you?
Yes: Tell us what works for you.

It’s good, but: Report typos, inaccuracies, and so forth.

It wasn’t helpful: Tell us what would have helped.
Get information on Apple products.
Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Copyright © 2007 Apple Inc.
All rights reserved. | Terms of use | Privacy Notice