mirror of
https://github.com/chromium/crashpad.git
synced 2024-12-26 23:01:05 +08:00
e0f3963131
This dependency was created in 107fb7631788 for macOS, but it’s not used on other platforms. Since the test support library is broadly used to test all of Crashpad, it’s useful even during early-stage porting. The snapshot library is a higher-level module that builds upon other components, and is not likely to be functional until the later stages of porting. Expressing this dependency artifically makes it difficult to test ports in development. Change-Id: I9dc2e2c473c8519b4c2b0d774acc9c146ee4e121 Reviewed-on: https://chromium-review.googlesource.com/811564 Reviewed-by: Scott Graham <scottmg@chromium.org> Commit-Queue: Mark Mentovai <mark@chromium.org>
190 lines
3.8 KiB
Plaintext
190 lines
3.8 KiB
Plaintext
# 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.
|
|
|
|
import("//testing/test.gni")
|
|
|
|
static_library("test") {
|
|
testonly = true
|
|
|
|
sources = [
|
|
"errors.cc",
|
|
"errors.h",
|
|
"file.cc",
|
|
"file.h",
|
|
"filesystem.cc",
|
|
"filesystem.h",
|
|
"gtest_death.h",
|
|
"gtest_disabled.cc",
|
|
"gtest_disabled.h",
|
|
"hex_string.cc",
|
|
"hex_string.h",
|
|
"main_arguments.cc",
|
|
"main_arguments.h",
|
|
"multiprocess.h",
|
|
"multiprocess_exec.h",
|
|
"scoped_module_handle.cc",
|
|
"scoped_module_handle.h",
|
|
"scoped_temp_dir.cc",
|
|
"scoped_temp_dir.h",
|
|
"test_paths.cc",
|
|
"test_paths.h",
|
|
]
|
|
|
|
if (is_posix) {
|
|
sources += [
|
|
"multiprocess_posix.cc",
|
|
"scoped_temp_dir_posix.cc",
|
|
]
|
|
|
|
if (!is_fuchsia) {
|
|
sources += [ "multiprocess_exec_posix.cc" ]
|
|
}
|
|
}
|
|
|
|
if (is_mac) {
|
|
sources += [
|
|
"mac/dyld.cc",
|
|
"mac/dyld.h",
|
|
"mac/exception_swallower.cc",
|
|
"mac/exception_swallower.h",
|
|
"mac/mach_errors.cc",
|
|
"mac/mach_errors.h",
|
|
"mac/mach_multiprocess.cc",
|
|
"mac/mach_multiprocess.h",
|
|
]
|
|
}
|
|
|
|
if (is_win) {
|
|
sources += [
|
|
"multiprocess_exec_win.cc",
|
|
"scoped_temp_dir_win.cc",
|
|
"win/child_launcher.cc",
|
|
"win/child_launcher.h",
|
|
"win/win_child_process.cc",
|
|
"win/win_child_process.h",
|
|
"win/win_multiprocess.cc",
|
|
"win/win_multiprocess.h",
|
|
"win/win_multiprocess_with_temp_dir.cc",
|
|
"win/win_multiprocess_with_temp_dir.h",
|
|
]
|
|
}
|
|
|
|
public_configs = [ "..:crashpad_config" ]
|
|
|
|
configs += [ "../build:crashpad_in_chromium" ]
|
|
|
|
data = [
|
|
"test_paths_test_data_root.txt",
|
|
]
|
|
|
|
deps = [
|
|
"../compat",
|
|
"../util",
|
|
"//base",
|
|
"//testing/gtest",
|
|
]
|
|
|
|
if (is_mac) {
|
|
libs = [ "bsm" ]
|
|
deps += [
|
|
"../handler",
|
|
"../snapshot",
|
|
]
|
|
}
|
|
}
|
|
|
|
source_set("test_test") {
|
|
testonly = true
|
|
|
|
sources = [
|
|
"hex_string_test.cc",
|
|
"main_arguments_test.cc",
|
|
"scoped_temp_dir_test.cc",
|
|
"test_paths_test.cc",
|
|
]
|
|
|
|
if (is_posix && !is_fuchsia) {
|
|
sources += [ "multiprocess_posix_test.cc" ]
|
|
}
|
|
|
|
if (is_mac) {
|
|
sources += [ "mac/mach_multiprocess_test.cc" ]
|
|
}
|
|
|
|
if (is_win) {
|
|
sources += [
|
|
"win/win_child_process_test.cc",
|
|
"win/win_multiprocess_test.cc",
|
|
]
|
|
}
|
|
|
|
if (!is_fuchsia) {
|
|
sources += [
|
|
# TODO(scottmg): A MultiprocessExecFuchsia is probably desirable, but
|
|
# hasn't been implemented yet.
|
|
"multiprocess_exec_test.cc",
|
|
]
|
|
}
|
|
|
|
deps = [
|
|
":test",
|
|
"../compat",
|
|
"../util",
|
|
"//base",
|
|
"//testing/gmock",
|
|
"//testing/gtest",
|
|
]
|
|
|
|
data_deps = [
|
|
":crashpad_test_test_multiprocess_exec_test_child",
|
|
]
|
|
}
|
|
|
|
executable("crashpad_test_test_multiprocess_exec_test_child") {
|
|
sources = [
|
|
"multiprocess_exec_test_child.cc",
|
|
]
|
|
}
|
|
|
|
static_library("gmock_main") {
|
|
testonly = true
|
|
sources = [
|
|
"gtest_main.cc",
|
|
]
|
|
configs += [ "../build:crashpad_in_chromium" ]
|
|
defines = [ "CRASHPAD_TEST_LAUNCHER_GMOCK" ]
|
|
deps = [
|
|
":test",
|
|
"//base",
|
|
"//base/test:test_support",
|
|
"//testing/gmock",
|
|
"//testing/gtest",
|
|
]
|
|
}
|
|
|
|
static_library("gtest_main") {
|
|
testonly = true
|
|
sources = [
|
|
"gtest_main.cc",
|
|
]
|
|
configs += [ "../build:crashpad_in_chromium" ]
|
|
defines = [ "CRASHPAD_TEST_LAUNCHER_GTEST" ]
|
|
deps = [
|
|
":test",
|
|
"//base",
|
|
"//base/test:test_support",
|
|
"//testing/gtest",
|
|
]
|
|
}
|