OSDN Git Service

BuildSystem: added HandBrakeCLI to universal-binary combination.
[handbrake-jp/handbrake-jp-git.git] / doc / texi / building / chapter.via.xcode.texi
index f018745..7a2aab9 100644 (file)
@@ -18,7 +18,7 @@ In Xcode perform the following steps to build the default configuration:
 @item click @b{Build} or @b{Build and Go}
 @end itemize
 
-The first time it builds will take a bit of time. You may use the Build Results window to watch it progress. A large partof the build is invoking the external build system which poduces quite a lot of log output. Much of that output are warnings and errors that are part of the normal build process for 3rd-party contributed modules so in general you need not do anything. However, if Xcode itself reports the build failed, then you must take corrective action.
+The first build (on an empty @file{build} directory) will take a bit of time. You may use the Build Results window to observe progress. The most time-consuming part of the build is when the external build system (essentially the @b{terminal} method) is triggered by Xcode and a substantial amount of log transcript ensues. Much of that transcript are warnings and errors that are part of the normal build process for 3rd-party contributed modules so in general you need not do anything. However, if Xcode itself reports the build failed, then you must take corrective action.
 
 Unfortunately, due to limitations of Xcode we do not have hooks in place to offer finer-grained control over per-module make actions for the (external) build system. Thus, you will have to use @b{terminal} to accomplish those tasks. Just @command{cd} into the build directory which is associated with your active configuration and perform any necessary @command{make} commands. @b{Be careful not to issue commands from the terminal simultaneously with Xcode tasks} as that will confuse both Xcode and make and likely corrupt your build directory.
 
@@ -28,22 +28,76 @@ Each configuration uses a different @file{build} directory. This makes it possib
 
 @table @samp
 @item standard
-This configuration will build to the host native architecture. Build directory is @file{build.standard} .
+This configuration will build @b{host native} architecture. Build directory is @file{build.standard} .
 The standard variant produces optimized code without debug information.
 
-@item debug
-This configuration will build to the host native architecture. Build directory is @file{build.standard} .
-The debug variant produces unoptimized code with debug information.
-
 @item standard.i386
-This configuration is used to build for the i386 architecture. Build directory is @file{build.standard.i386} .
+This configuration will build @b{i386} architecture. Build directory is @file{build.standard.i386} .
 
 @item standard.x86_64
-This configuration is used to build for the x86_64 architecture. Build directory is @file{build.standard.x86_64} .
+This configuration will build @b{x86_64} architecture. Build directory is @file{build.standard.x86_64} .
 
 @item standard.ppc
-This configuration is used to build for the ppc architecture. Build directory is @file{build.standard.ppc} .
+This configuration will build @b{ppc} architecture. Build directory is @file{build.standard.ppc} .
 
 @item standard.ppc64
-This configuration is used to build for the ppc64 architecture. Build directory is @file{build.standard.ppc64} .
+This configuration will build @b{ppc64} architecture. Build directory is @file{build.standard.ppc64} .
+
+@item debug
+This configuration will build @b{host native architecture}. Build directory is @file{build.debug} .
+The debug variant produces unoptimized code with debug information.
+
+@item debug.i386
+This configuration will build @b{i386} architecture. Build directory is @file{build.debug.i386} .
+The debug variant produces unoptimized code with debug information.
+
+@item debug.x86_64
+This configuration will build @b{x86_64} architecture. Build directory is @file{build.debug.x86_64} .
+The debug variant produces unoptimized code with debug information.
+
+@item debug.ppc
+This configuration will build @b{ppc} architecture. Build directory is @file{build.debug.ppc} .
+The debug variant produces unoptimized code with debug information.
+
+@item debug.ppc64
+This configuration will build @b{ppc64} architecture. Build directory is @file{build.debug.ppc64} .
+The debug variant produces unoptimized code with debug information.
+@end table
+
+@c %**-------------------------------------------------------------------------
+@anchor{xcode.extenal}
+@section External Targets
+The following external targets appear in the Xcode project and perform @b{build} and @b{clean} actions.
+
+@table @samp
+@item external
+Target maps to @command{make build} and @command{make clean} for everything Xcode products depend upon from the external build system.
+
+@item libhb
+Target maps to @command{make libhb.build} and @command{make libhb.clean}.
+
+@item contrib
+Target maps to @command{make contrib.build} and @command{make contrib.xclean}.
+
+@end table
+
+@c %**-------------------------------------------------------------------------
+@anchor{xcode.userdefined}
+@section User-Defined Settings
+The following user defined settings are used in Xcode project for the external build system:
+
+@table @samp
+@item EXTERNAL_BUILD
+Specifies the build (scratch) directory for each configuration.
+
+@item EXTERNAL_JOBS
+Specifies the concurrency factor for the external build system when builds are launched from within Xcode.
+Modify for faster external builds if your system has the horsepower and resources. Specifying a value greater than the number of CPU cores (or virtual cores) in your system is unlikely to produce gains and will needlessly consume extra resources.
+
+@item EXTERNAL_METHOD
+Do not modify; Used for internal/external build coordination and must always be @samp{xcode}.
+
+@item EXTERNAL_SRC
+Specifies the top-level source directory for @value{HB.name}.
+
 @end table