Files
sdk/build/config/mac/mac_sdk.gni
T
Simon Que 35ce88100c [build] GN flag to use relative symlink to Xcode
The flag "mac_use_goma_rbe" creates a symlink to the Xcode SDK
directory, under $root_build_dir/sdk/xcode_links.

e.g. the -isysroot arg in the build command becomes:
  -isysroot sdk/xcode_links/MacOSX10.15.sdk

This is based on a similar solution for Chromium iOS builders:
http://crrev.com/c/1946174
http://crrev.com/c/2102649

Bug: b/151697301
Change-Id: Ie65d3ae2b98da5977ad0f5a75f865c838bbbb963
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/139782
Commit-Queue: Simon Que <sque@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
2020-03-19 08:33:17 +00:00

47 lines
1.5 KiB
Plaintext

# Copyright 2014 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//build/toolchain/goma.gni")
declare_args() {
# Minimum supported version of the Mac SDK.
mac_sdk_min = "10.8"
# Path to a specific version of the Mac SDKJ, not including a backslash at
# the end. If empty, the path to the lowest version greater than or equal to
# mac_sdk_min is used.
mac_sdk_path = ""
mac_enable_relative_sdk_path = mac_use_goma_rbe
}
find_sdk_args = [
"--print_sdk_path",
mac_sdk_min,
]
if (mac_use_goma_rbe) {
find_sdk_args += [
"--create_symlink_at",
# $root_build_dir starts with "//", which is removed by rebase_path().
rebase_path("$root_build_dir/sdk/xcode_links", "//"),
]
}
# The tool will print the SDK path on the first line, and the version on the
# second line.
find_sdk_lines =
exec_script("//build/mac/find_sdk.py", find_sdk_args, "list lines")
mac_sdk_version = find_sdk_lines[1]
if (mac_sdk_path == "") {
# TODO(brettw) http://crbug.com/335325 when everybody moves to XCode 5 we
# can remove the --print_sdk_path argument to find_sdk and instead just use
# the following two lines to get the path. Although it looks longer here, it
# saves forking a process in find_sdk.py so will be faster.
#mac_sdk_root = "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX"
#mac_sdk_path = mac_sdk_root + mac_sdk_version + ".sdk"
mac_sdk_path = find_sdk_lines[0]
}