| # Copyright (c) 2019, the Dart project authors.  Please see the AUTHORS file | 
 | # for details. All rights reserved. Use of this source code is governed by a | 
 | # BSD-style license that can be found in the LICENSE file. | 
 |  | 
 | _dart_root = get_path_info(".", "abspath") | 
 |  | 
 | declare_args() { | 
 |   # Absolute path to the .git folder. | 
 |   # | 
 |   # This is used in rules that need to refer to `.git/logs/HEAD` to include | 
 |   # a hash in the version string. By default the folder is `.git`, but we define | 
 |   # it as an argument so it can be overridden by users of `git-worktree` (See | 
 |   # Issue #33619). | 
 |   # | 
 |   # When using git-worktree, you can add | 
 |   # | 
 |   #    default_git_folder = "/path/to/main/git/repo/.git/worktrees/name/" | 
 |   # | 
 |   # to out/ReleaseX64/args.gn. The path above can be extracted from the `.git` | 
 |   # file under the git worktree folder. | 
 |   # The script run here should take care of everything automatically though. | 
 |   default_git_folder = "" | 
 |  | 
 |   # Whether to enable the SDK hash check that will prevent loading a kernel | 
 |   # into a VM which was built with a different SDK. | 
 |   verify_sdk_hash = true | 
 |  | 
 |   # When verify_sdk_hash is true, this string is used as the verification hash | 
 |   # instead of calculating one from the contents of the tree using the | 
 |   # make_version.py script. | 
 |   dart_sdk_verification_hash = "" | 
 |  | 
 |   # The location in the build output directory of the built Dart SDK. | 
 |   dart_sdk_output = "dart-sdk" | 
 |  | 
 |   # When set to `true` will cause compile_platform action to use a precompiled | 
 |   # compile_platform.dart script instead of running it from source. This | 
 |   # can significantly improve iteration time when iteration on changes in | 
 |   # core libraries. | 
 |   precompile_tools = false | 
 | } | 
 |  | 
 | if (default_git_folder == "") { | 
 |   default_git_folder = exec_script("$_dart_root/tools/get_dot_git_folder.py", | 
 |                                    [ | 
 |                                      rebase_path("$_dart_root/.git"), | 
 |                                      "$_dart_root/.git", | 
 |                                    ], | 
 |                                    "trim string") | 
 | } | 
 |  | 
 | # The SDK hash to build into VM and kernels. | 
 | # The value 0000000000 signifies no hash is set, which will disable the check. | 
 | if (verify_sdk_hash) { | 
 |   sdk_hash = dart_sdk_verification_hash | 
 |   if (sdk_hash == "") { | 
 |     sdk_hash = exec_script("$_dart_root/tools/make_version.py", | 
 |                            [ "--format={{GIT_HASH}}" ], | 
 |                            "trim string", | 
 |                            [ | 
 |                              "$_dart_root/tools/VERSION", | 
 |                              "$_dart_root/tools/utils.py", | 
 |                              "$default_git_folder/logs/HEAD", | 
 |                            ]) | 
 |   } | 
 | } else { | 
 |   sdk_hash = "0000000000" | 
 | } |