2017-01-06 20:38:11 +00:00
|
|
|
# Copyright (c) 2017, 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.
|
|
|
|
|
|
|
|
declare_args() {
|
2017-06-30 15:09:35 +00:00
|
|
|
# Instead of using is_debug, we introduce a different flag for specifying a
|
|
|
|
# Debug build of Dart so that clients can still use a Release build of Dart
|
|
|
|
# while themselves doing a Debug build.
|
2018-10-19 19:27:56 +00:00
|
|
|
dart_debug = false
|
2017-06-30 15:09:35 +00:00
|
|
|
|
|
|
|
# Set the runtime mode. This affects how the runtime is built and what
|
|
|
|
# features it has. Valid values are:
|
|
|
|
# 'develop' (the default) - VM is built to run as a JIT with all development
|
|
|
|
# features enabled.
|
|
|
|
# 'profile' - The VM is built to run with AOT compiled code with only the
|
|
|
|
# CPU profiling features enabled.
|
|
|
|
# 'release' - The VM is built to run with AOT compiled code with no developer
|
|
|
|
# features enabled.
|
|
|
|
#
|
|
|
|
# These settings are only used for Flutter, at the moment. A standalone build
|
|
|
|
# of the Dart VM should leave this set to "develop", and should set
|
|
|
|
# 'is_debug', 'is_release', or 'is_product'.
|
|
|
|
#
|
|
|
|
# TODO(rmacnak): dart_runtime_mode no longer selects whether libdart is build
|
|
|
|
# for JIT or AOT, since libdart waw split into libdart_jit and
|
|
|
|
# libdart_precompiled_runtime. We should remove this flag and just set
|
|
|
|
# dart_debug/dart_product.
|
|
|
|
dart_runtime_mode = "develop"
|
|
|
|
|
2017-07-13 21:59:25 +00:00
|
|
|
# Explicitly set the target architecture to use a simulator.
|
2019-10-27 18:18:29 +00:00
|
|
|
# Available options are: arm, arm64, x64, ia32.
|
2017-07-13 21:59:25 +00:00
|
|
|
dart_target_arch = target_cpu
|
2017-06-30 15:09:35 +00:00
|
|
|
|
2018-10-16 22:11:05 +00:00
|
|
|
# The optimization level to use for debug builds. Defaults to 0 for builds with
|
|
|
|
# code coverage enabled.
|
2017-06-30 15:09:35 +00:00
|
|
|
dart_debug_optimization_level = "2"
|
|
|
|
|
2018-10-16 22:11:05 +00:00
|
|
|
# Whether to enable code coverage for the standalone VM.
|
|
|
|
dart_vm_code_coverage = false
|
|
|
|
|
2017-01-06 20:38:11 +00:00
|
|
|
# Whether to fall back to built-in root certificates when they cannot be
|
|
|
|
# verified at the operating system level.
|
|
|
|
dart_use_fallback_root_certificates = false
|
|
|
|
|
2018-10-24 13:30:16 +00:00
|
|
|
# Whether to link Crashpad library for crash handling. Only supported on
|
|
|
|
# Windows for now.
|
|
|
|
dart_use_crashpad = false
|
|
|
|
|
2017-12-12 13:50:01 +00:00
|
|
|
# Controls the kind of core snapshot linked into the standalone VM. Using a
|
|
|
|
# core-jit snapshot breaks the ability to change various flags that affect
|
|
|
|
# code generation.
|
|
|
|
dart_core_snapshot_kind = "core"
|
2018-01-08 16:15:22 +00:00
|
|
|
|
|
|
|
# Whether the Dart binary version string should include the git hash and
|
|
|
|
# git commit time.
|
|
|
|
dart_version_git_info = true
|
2018-02-16 20:44:48 +00:00
|
|
|
|
2018-04-27 21:14:37 +00:00
|
|
|
# Controls whether the VM is built as a static library or a shared library.
|
|
|
|
if (is_fuchsia) {
|
|
|
|
# Allow for deduping the VM between standalone, flutter_runner and dart_runner.
|
2020-06-24 20:35:19 +00:00
|
|
|
# TODO(dartbug.com/42473): Use shared_library once elf_loader is untangled.
|
|
|
|
dart_component_kind = "static_library"
|
2018-04-27 21:14:37 +00:00
|
|
|
} else {
|
|
|
|
dart_component_kind = "static_library"
|
|
|
|
}
|
2018-05-09 20:29:27 +00:00
|
|
|
|
2018-05-23 20:35:53 +00:00
|
|
|
# Whether the VM includes the kernel service in all modes (debug, release,
|
|
|
|
# product).
|
|
|
|
exclude_kernel_service = false
|
2018-09-25 23:58:57 +00:00
|
|
|
|
|
|
|
# Whether libdart should export the symbols of the Dart API.
|
|
|
|
dart_lib_export_symbols = true
|
2020-08-19 08:07:19 +00:00
|
|
|
|
2021-01-28 23:15:15 +00:00
|
|
|
# Whether to use compressed pointers.
|
|
|
|
dart_use_compressed_pointers = false
|
2023-03-24 14:02:14 +00:00
|
|
|
|
|
|
|
# Whether the sampling heap profiler should be included in product mode.
|
|
|
|
dart_include_sampling_heap_profiler = false
|
2023-05-01 14:52:30 +00:00
|
|
|
|
|
|
|
# Whether features that depend on Perfetto should be built. We temporarily
|
|
|
|
# need to define this to allow excluding code that depends on Perfetto from
|
|
|
|
# being built on platforms which have a problem linking in the Perfetto
|
|
|
|
# library.
|
|
|
|
dart_support_perfetto = true
|
2017-01-06 20:38:11 +00:00
|
|
|
}
|
2018-08-21 20:28:06 +00:00
|
|
|
|
|
|
|
declare_args() {
|
|
|
|
# We create a kernel service app-jit snapshot only for when the target
|
|
|
|
# architecture is x64 for other cases we will use the '.dill' file
|
|
|
|
# which is already linked in the VM.
|
2023-01-24 14:07:26 +00:00
|
|
|
create_kernel_service_snapshot = dart_target_arch == "x64"
|
|
|
|
|
2023-02-07 18:45:20 +00:00
|
|
|
# The analyze_snapshot tool is only supported on 64 bit AOT builds that use
|
|
|
|
# ELF.
|
2023-01-24 14:07:26 +00:00
|
|
|
build_analyze_snapshot =
|
2023-02-07 18:45:20 +00:00
|
|
|
(target_os == "linux" || target_os == "android" ||
|
|
|
|
target_os == "fuchsia") &&
|
2023-01-24 14:07:26 +00:00
|
|
|
(dart_target_arch == "x64" || dart_target_arch == "arm64")
|
2018-08-21 20:28:06 +00:00
|
|
|
}
|