2017-11-28 10:31:13 -08:00
|
|
|
# Copyright 2017 The Crashpad Authors. All rights reserved.
|
|
|
|
#
|
|
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
# you may not use this file except in compliance with the License.
|
|
|
|
# You may obtain a copy of the License at
|
|
|
|
#
|
|
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
#
|
|
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
# See the License for the specific language governing permissions and
|
|
|
|
# limitations under the License.
|
|
|
|
|
2017-12-19 15:31:04 -08:00
|
|
|
# Intentionally very minimal, so that Crashpad can build in-tree in a variety of
|
|
|
|
# other projects, unrelated to the variables that are set in those projects'
|
|
|
|
# BUILDCONFIG.gn. Do not add more variables here. Instead, make them available
|
|
|
|
# in build/crashpad_buildconfig.gni if they must be globally available.
|
|
|
|
|
2017-11-28 10:31:13 -08:00
|
|
|
if (target_os == "") {
|
|
|
|
target_os = host_os
|
|
|
|
}
|
|
|
|
|
|
|
|
if (current_os == "") {
|
|
|
|
current_os = target_os
|
|
|
|
}
|
|
|
|
|
2017-11-29 11:04:47 -08:00
|
|
|
if (target_cpu == "") {
|
|
|
|
target_cpu = host_cpu
|
|
|
|
}
|
|
|
|
|
|
|
|
if (current_cpu == "") {
|
|
|
|
current_cpu = target_cpu
|
|
|
|
}
|
|
|
|
|
2017-12-19 15:31:04 -08:00
|
|
|
if (current_os == "win") {
|
|
|
|
set_default_toolchain(
|
2018-02-06 15:22:35 -08:00
|
|
|
"//third_party/mini_chromium/mini_chromium/build:msvc_toolchain_$current_cpu")
|
2017-12-19 15:31:04 -08:00
|
|
|
} else {
|
|
|
|
set_default_toolchain(
|
|
|
|
"//third_party/mini_chromium/mini_chromium/build:gcc_like_toolchain")
|
2017-11-28 10:31:13 -08:00
|
|
|
}
|
|
|
|
|
2017-12-19 14:21:14 -05:00
|
|
|
declare_args() {
|
|
|
|
# When true, enables the debug configuration, with additional run-time checks
|
|
|
|
# and logging. When false, enables the release configuration, with additional
|
|
|
|
# optimizations.
|
|
|
|
is_debug = false
|
2018-06-04 16:16:19 -07:00
|
|
|
|
|
|
|
# When true, build all code with -fsanitize=fuzzer, and enable various
|
|
|
|
# *_fuzzer targets.
|
|
|
|
crashpad_use_libfuzzer = false
|
2017-11-28 10:31:13 -08:00
|
|
|
}
|
|
|
|
|
2017-12-19 14:21:14 -05:00
|
|
|
_default_configs = [
|
2017-11-29 11:04:47 -08:00
|
|
|
"//third_party/mini_chromium/mini_chromium/build:default",
|
2017-11-30 12:38:27 -08:00
|
|
|
"//third_party/mini_chromium/mini_chromium/build:Wexit_time_destructors",
|
2017-11-29 11:04:47 -08:00
|
|
|
]
|
|
|
|
|
2018-06-04 16:16:19 -07:00
|
|
|
if (crashpad_use_libfuzzer) {
|
|
|
|
_default_configs += [ "//build:crashpad_fuzzer_flags" ]
|
|
|
|
}
|
|
|
|
|
2017-12-19 15:31:04 -08:00
|
|
|
_default_executable_configs =
|
2018-02-06 10:57:23 -08:00
|
|
|
_default_configs + [
|
|
|
|
"//third_party/mini_chromium/mini_chromium/build:executable",
|
|
|
|
"//third_party/mini_chromium/mini_chromium/build:win_console",
|
|
|
|
]
|
2017-12-19 14:21:14 -05:00
|
|
|
|
2017-11-29 11:04:47 -08:00
|
|
|
set_defaults("source_set") {
|
2017-12-19 14:21:14 -05:00
|
|
|
configs = _default_configs
|
2017-11-29 11:04:47 -08:00
|
|
|
}
|
|
|
|
|
2017-11-28 10:31:13 -08:00
|
|
|
set_defaults("static_library") {
|
2017-12-19 14:21:14 -05:00
|
|
|
configs = _default_configs
|
2017-11-29 11:04:47 -08:00
|
|
|
}
|
|
|
|
|
|
|
|
set_defaults("executable") {
|
2017-12-19 15:31:04 -08:00
|
|
|
configs = _default_executable_configs
|
2017-11-29 11:04:47 -08:00
|
|
|
}
|
|
|
|
|
|
|
|
set_defaults("loadable_module") {
|
2017-12-19 14:21:14 -05:00
|
|
|
configs = _default_configs
|
2017-11-29 11:04:47 -08:00
|
|
|
}
|
2017-11-28 10:31:13 -08:00
|
|
|
|
2017-11-29 11:04:47 -08:00
|
|
|
set_defaults("shared_library") {
|
2017-12-19 14:21:14 -05:00
|
|
|
configs = _default_configs
|
2017-11-28 10:31:13 -08:00
|
|
|
}
|
2017-12-06 15:36:31 -08:00
|
|
|
|
2017-12-19 15:31:04 -08:00
|
|
|
set_defaults("test") {
|
|
|
|
configs = _default_executable_configs
|
|
|
|
}
|