Recipe Modules * macos_sdk — The
macos_sdk
module provides safe functions to access a
semi-hermetic XCode installation. * target * windows_sdk
Recipes * gn — Recipe for building GN. * macos_sdk:examples/full * target:examples/full * windows_sdk:examples/full ## Recipe Modules
DEPS: recipe_engine/cipd, recipe_engine/context, recipe_engine/json, recipe_engine/path, recipe_engine/platform, recipe_engine/step
The macos_sdk
module provides safe functions to access a
semi-hermetic XCode installation.
Available only to Google-run bots.
API for using OS X SDK distributed via CIPD.
@contextmanager
—
def __call__(self):
Sets up the XCode SDK environment.
This call is a no-op on non-Mac platforms.
This will deploy the helper tool and the XCode.app bundle at
[START_DIR]/cache/macos_sdk
.
To avoid machines rebuilding these on every run, set up a named cache in your cr-buildbucket.cfg file like:
caches: {
# Cache for mac_toolchain tool and XCode.app
name: "macos_sdk"
path: "macos_sdk"
}
If you have builders which e.g. use a non-current SDK, you can give them a uniqely named cache:
caches: {
# Cache for N-1 version mac_toolchain tool and XCode.app
name: "macos_sdk_old"
path: "macos_sdk"
}
Usage: with api.macos_sdk(): # sdk with mac build bits
Raises: StepFailure or InfraFailure.
@property
— def sdk_dir(self):
### recipe_modules / target
@property
— def host(self):
### recipe_modules / windows_sdk
DEPS: recipe_engine/cipd, recipe_engine/context, recipe_engine/json, recipe_engine/path, recipe_engine/platform, recipe_engine/step
API for using Windows SDK distributed via CIPD.
@contextmanager
—
def __call__(self):
Setups the Windows SDK environment.
This call is a no-op on non-Windows platforms.
Raises: StepFailure or InfraFailure. ## Recipes
DEPS: macos_sdk, target, windows_sdk, recipe_engine/buildbucket, recipe_engine/cas, recipe_engine/cipd, recipe_engine/context, recipe_engine/file, recipe_engine/json, recipe_engine/path, recipe_engine/platform, recipe_engine/properties, recipe_engine/raw_io, recipe_engine/step
Recipe for building GN.
— def RunSteps(api, repository): ### recipes / macos_sdk:examples/full
DEPS: macos_sdk, recipe_engine/platform, recipe_engine/properties, recipe_engine/step
— def RunSteps(api): ### recipes / target:examples/full
DEPS: target, recipe_engine/platform, recipe_engine/properties, recipe_engine/step
— def RunSteps(api): ### recipes / windows_sdk:examples/full
DEPS: windows_sdk, recipe_engine/platform, recipe_engine/properties, recipe_engine/step
— def RunSteps(api):