mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-12-01 01:36:09 +03:00
100 lines
3.3 KiB
Plaintext
100 lines
3.3 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/config/chrome_build.gni")
|
|
import("//build/config/mac/mac_sdk_overrides.gni")
|
|
import("//build/toolchain/toolchain.gni")
|
|
|
|
declare_args() {
|
|
# Minimum supported version of macOS. Must be of the form x.x.x for
|
|
# Info.plist files.
|
|
mac_deployment_target = "10.9.0"
|
|
|
|
# Path to a specific version of the Mac SDK, not including a slash at the end.
|
|
# If empty, the path to the lowest version greater than or equal to
|
|
# mac_sdk_min is used.
|
|
mac_sdk_path = ""
|
|
|
|
# The SDK name as accepted by xcodebuild.
|
|
mac_sdk_name = "macosx"
|
|
}
|
|
|
|
# Check that the version of macOS SDK used is the one requested when building
|
|
# a version of Chrome shipped to the users. Disable the check if building for
|
|
# iOS as the version macOS SDK used is not relevant for the tool build for the
|
|
# host (they are not shipped) --- this is required as Chrome on iOS is usually
|
|
# build with the latest version of Xcode that may not ship with the version of
|
|
# the macOS SDK used to build Chrome on mac.
|
|
# TODO(crbug.com/635745): the check for target_os should be replaced by a
|
|
# check that current_toolchain is default_toolchain, and the file should
|
|
# assert that current_os is "mac" once this file is no longer included by
|
|
# iOS toolchains.
|
|
_verify_sdk = is_chrome_branded && is_official_build && target_os != "ios"
|
|
|
|
find_sdk_args = [ "--print_sdk_path" ]
|
|
if (!use_system_xcode) {
|
|
find_sdk_args += [
|
|
"--developer_dir",
|
|
hermetic_xcode_path,
|
|
]
|
|
}
|
|
if (_verify_sdk) {
|
|
find_sdk_args += [
|
|
"--verify",
|
|
mac_sdk_min,
|
|
"--sdk_path=" + mac_sdk_path,
|
|
]
|
|
} else {
|
|
find_sdk_args += [ mac_sdk_min ]
|
|
}
|
|
|
|
# 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 == "") {
|
|
mac_sdk_path = find_sdk_lines[0]
|
|
}
|
|
|
|
script_name = "//build/config/mac/sdk_info.py"
|
|
sdk_info_args = []
|
|
if (!use_system_xcode) {
|
|
sdk_info_args += [
|
|
"--developer_dir",
|
|
hermetic_xcode_path,
|
|
]
|
|
}
|
|
sdk_info_args += [ mac_sdk_name ]
|
|
|
|
_mac_sdk_result = exec_script(script_name, sdk_info_args, "scope")
|
|
xcode_version = _mac_sdk_result.xcode_version
|
|
xcode_build = _mac_sdk_result.xcode_build
|
|
machine_os_build = _mac_sdk_result.machine_os_build
|
|
|
|
if (mac_sdk_version != mac_sdk_min &&
|
|
exec_script("//build/check_return_value.py",
|
|
[
|
|
"test",
|
|
xcode_version,
|
|
"-ge",
|
|
"0730",
|
|
],
|
|
"value") != 1) {
|
|
print(
|
|
"********************************************************************************")
|
|
print(
|
|
" WARNING: The Mac OS X SDK is incompatible with the version of Xcode. To fix,")
|
|
print(
|
|
" either upgrade Xcode to the latest version or install the Mac OS X")
|
|
print(
|
|
" $mac_sdk_min SDK. For more information, see https://crbug.com/620127.")
|
|
print()
|
|
print(" Current SDK Version: $mac_sdk_version")
|
|
print(" Current Xcode Version: $xcode_version ($xcode_build)")
|
|
print(
|
|
"********************************************************************************")
|
|
assert(false, "SDK is incompatible with Xcode")
|
|
}
|