forked from flutter/engine
-
Notifications
You must be signed in to change notification settings - Fork 0
/
BUILD.gn
126 lines (106 loc) · 3.24 KB
/
BUILD.gn
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
# Copyright 2013 The Flutter 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("$flutter_root/common/config.gni")
if (is_fuchsia) {
import("//build/fuchsia/sdk.gni")
}
# Whether to build the dartdevc sdk, libraries, and source files
# required for the flutter web sdk.
declare_args() {
full_dart_sdk = false
}
group("flutter") {
testonly = true
public_deps = []
if (!(is_fuchsia && using_fuchsia_sdk)) {
public_deps += [
"$flutter_root/lib/snapshot:generate_snapshot_bin",
"$flutter_root/lib/snapshot:kernel_platform_files",
]
}
public_deps += [
"$flutter_root/shell/platform/embedder:flutter_engine",
"$flutter_root/sky",
]
if (current_toolchain == host_toolchain) {
public_deps += [ "$flutter_root/shell/testing" ]
}
if (is_fuchsia && using_fuchsia_sdk) {
public_deps += [
"$flutter_root/shell/platform/fuchsia",
"$flutter_root/shell/testing($host_toolchain)",
]
}
if (!is_fuchsia && !is_fuchsia_host) {
if (current_toolchain == host_toolchain) {
public_deps += [
"$flutter_root/flutter_frontend_server:frontend_server",
"//third_party/dart:create_sdk",
]
if (full_dart_sdk) {
public_deps += [ "$flutter_root/web_sdk" ]
}
}
}
# If on the host, compile all unittests targets.
if (current_toolchain == host_toolchain) {
if (is_mac) {
public_deps += [
"$flutter_root/shell/platform/darwin:flutter_channels_unittests",
"$flutter_root/shell/platform/darwin/macos:flutter_desktop_darwin_unittests",
]
}
public_deps += [
"$flutter_root/flow:flow_unittests",
"$flutter_root/fml:fml_unittests",
"$flutter_root/lib/ui:ui_unittests",
"$flutter_root/runtime:runtime_unittests",
"$flutter_root/shell/common:shell_unittests",
"$flutter_root/shell/platform/common/cpp/client_wrapper:client_wrapper_unittests",
"$flutter_root/shell/platform/embedder:embedder_unittests",
"$flutter_root/shell/platform/glfw/client_wrapper:client_wrapper_glfw_unittests",
"$flutter_root/testing:testing_unittests",
"$flutter_root/third_party/txt:txt_unittests",
]
if (is_win) {
public_deps += [
"$flutter_root/shell/platform/windows:flutter_windows_unittests",
"$flutter_root/shell/platform/windows/client_wrapper:client_wrapper_windows_unittests",
]
}
if (!is_win) {
public_deps += [
"$flutter_root/fml:fml_benchmarks",
"$flutter_root/shell/common:shell_benchmarks",
"$flutter_root/third_party/txt:txt_benchmarks",
]
}
}
# Fuchsia currently only supports a subset of our unit tests
if (is_fuchsia) {
public_deps += [ "$flutter_root/fml:fml_tests" ]
}
}
config("config") {
include_dirs = [ ".." ]
if (is_win) {
if (current_cpu != "x86") {
cflags = [ "/WX" ] # Treat warnings as errors.
}
}
}
config("export_dynamic_symbols") {
if (is_linux) {
inputs = [
"$flutter_root/common/exported_symbols.sym",
]
ldflags = [ "-Wl,--dynamic-list=" + rebase_path(inputs[0], root_build_dir) ]
}
}
group("dist") {
testonly = true
deps = [
"$flutter_root/sky/dist",
]
}