Split *_test.gyp from *.gyp.

In a future change, crashpad_util_test_lib will gain a dependency on
crashpad_client. This would violate GYP’s prohibition on circular
dependencies between .gyp files, although there would be no circular
relationship between the targets themselves. To overcome this problem,
all test-related targets are moved into their own first-class .gyp
files.

BUG=crashpad:33
R=scottmg@chromium.org

Review URL: https://codereview.chromium.org/1045173004
This commit is contained in:
Mark Mentovai 2015-03-31 17:06:28 -04:00
parent d5ddd14ee1
commit 9e79ea1da7
9 changed files with 443 additions and 355 deletions

View File

@ -66,36 +66,5 @@
],
},
},
{
'target_name': 'crashpad_client_test',
'type': 'executable',
'dependencies': [
'crashpad_client',
'../compat/compat.gyp:crashpad_compat',
'../third_party/gtest/gtest.gyp:gtest',
'../third_party/gtest/gtest.gyp:gtest_main',
'../third_party/mini_chromium/mini_chromium.gyp:base',
'../util/util.gyp:crashpad_util',
'../util/util.gyp:crashpad_util_test_lib',
],
'include_dirs': [
'..',
],
'sources': [
'capture_context_mac_test.cc',
'crash_report_database_test.cc',
'settings_test.cc',
'simple_string_dictionary_test.cc',
'simulate_crash_mac_test.cc',
],
'conditions': [
['OS=="win"', {
'sources!': [
# Port to Win https://code.google.com/p/crashpad/issues/detail?id=13
'settings_test.cc',
],
}],
],
},
],
}

52
client/client_test.gyp Normal file
View File

@ -0,0 +1,52 @@
# Copyright 2014 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.
{
'includes': [
'../build/crashpad.gypi',
],
'targets': [
{
'target_name': 'crashpad_client_test',
'type': 'executable',
'dependencies': [
'client.gyp:crashpad_client',
'../compat/compat.gyp:crashpad_compat',
'../third_party/gtest/gtest.gyp:gtest',
'../third_party/gtest/gtest.gyp:gtest_main',
'../third_party/mini_chromium/mini_chromium.gyp:base',
'../util/util.gyp:crashpad_util',
'../util/util_test.gyp:crashpad_util_test_lib',
],
'include_dirs': [
'..',
],
'sources': [
'capture_context_mac_test.cc',
'crash_report_database_test.cc',
'settings_test.cc',
'simple_string_dictionary_test.cc',
'simulate_crash_mac_test.cc',
],
'conditions': [
['OS=="win"', {
'sources!': [
# Port to Win https://code.google.com/p/crashpad/issues/detail?id=13
'settings_test.cc',
],
}],
],
},
],
}

View File

@ -20,12 +20,16 @@
'suppress_wildcard': 1,
'dependencies': [
'client/client.gyp:*',
'client/client_test.gyp:*',
'compat/compat.gyp:*',
'handler/handler.gyp:*',
'minidump/minidump.gyp:*',
'minidump/minidump_test.gyp:*',
'snapshot/snapshot.gyp:*',
'snapshot/snapshot_test.gyp:*',
'tools/tools.gyp:*',
'util/util.gyp:*',
'util/util_test.gyp:*',
],
'sources': [
'doc/crashpad.doxy.h',

View File

@ -72,50 +72,5 @@
'minidump_writer_util.h',
],
},
{
'target_name': 'crashpad_minidump_test',
'type': 'executable',
'dependencies': [
'crashpad_minidump',
'../snapshot/snapshot.gyp:crashpad_snapshot_test_lib',
'../third_party/gtest/gtest.gyp:gtest',
'../third_party/gtest/gtest.gyp:gtest_main',
'../third_party/mini_chromium/mini_chromium.gyp:base',
'../util/util.gyp:crashpad_util',
'../util/util.gyp:crashpad_util_test',
],
'include_dirs': [
'..',
],
'sources': [
'minidump_context_writer_test.cc',
'minidump_crashpad_info_writer_test.cc',
'minidump_exception_writer_test.cc',
'minidump_file_writer_test.cc',
'minidump_memory_writer_test.cc',
'minidump_misc_info_writer_test.cc',
'minidump_module_crashpad_info_writer_test.cc',
'minidump_module_writer_test.cc',
'minidump_rva_list_writer_test.cc',
'minidump_simple_string_dictionary_writer_test.cc',
'minidump_string_writer_test.cc',
'minidump_system_info_writer_test.cc',
'minidump_thread_id_map_test.cc',
'minidump_thread_writer_test.cc',
'minidump_writable_test.cc',
'test/minidump_context_test_util.cc',
'test/minidump_context_test_util.h',
'test/minidump_file_writer_test_util.cc',
'test/minidump_file_writer_test_util.h',
'test/minidump_memory_writer_test_util.cc',
'test/minidump_memory_writer_test_util.h',
'test/minidump_rva_list_test_util.cc',
'test/minidump_rva_list_test_util.h',
'test/minidump_string_writer_test_util.cc',
'test/minidump_string_writer_test_util.h',
'test/minidump_writable_test_util.cc',
'test/minidump_writable_test_util.h',
],
},
],
}

View File

@ -0,0 +1,66 @@
# Copyright 2014 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.
{
'includes': [
'../build/crashpad.gypi',
],
'targets': [
{
'target_name': 'crashpad_minidump_test',
'type': 'executable',
'dependencies': [
'minidump.gyp:crashpad_minidump',
'../snapshot/snapshot_test.gyp:crashpad_snapshot_test_lib',
'../third_party/gtest/gtest.gyp:gtest',
'../third_party/gtest/gtest.gyp:gtest_main',
'../third_party/mini_chromium/mini_chromium.gyp:base',
'../util/util.gyp:crashpad_util',
'../util/util_test.gyp:crashpad_util_test',
],
'include_dirs': [
'..',
],
'sources': [
'minidump_context_writer_test.cc',
'minidump_crashpad_info_writer_test.cc',
'minidump_exception_writer_test.cc',
'minidump_file_writer_test.cc',
'minidump_memory_writer_test.cc',
'minidump_misc_info_writer_test.cc',
'minidump_module_crashpad_info_writer_test.cc',
'minidump_module_writer_test.cc',
'minidump_rva_list_writer_test.cc',
'minidump_simple_string_dictionary_writer_test.cc',
'minidump_string_writer_test.cc',
'minidump_system_info_writer_test.cc',
'minidump_thread_id_map_test.cc',
'minidump_thread_writer_test.cc',
'minidump_writable_test.cc',
'test/minidump_context_test_util.cc',
'test/minidump_context_test_util.h',
'test/minidump_file_writer_test_util.cc',
'test/minidump_file_writer_test_util.h',
'test/minidump_memory_writer_test_util.cc',
'test/minidump_memory_writer_test_util.h',
'test/minidump_rva_list_test_util.cc',
'test/minidump_rva_list_test_util.h',
'test/minidump_string_writer_test_util.cc',
'test/minidump_string_writer_test_util.h',
'test/minidump_writable_test_util.cc',
'test/minidump_writable_test_util.h',
],
},
],
}

View File

@ -103,96 +103,5 @@
}],
]
},
{
'target_name': 'crashpad_snapshot_test_lib',
'type': 'static_library',
'dependencies': [
'crashpad_snapshot',
'../compat/compat.gyp:crashpad_compat',
'../third_party/mini_chromium/mini_chromium.gyp:base',
'../util/util.gyp:crashpad_util',
],
'include_dirs': [
'..',
],
'sources': [
'test/test_cpu_context.cc',
'test/test_cpu_context.h',
'test/test_exception_snapshot.cc',
'test/test_exception_snapshot.h',
'test/test_memory_snapshot.cc',
'test/test_memory_snapshot.h',
'test/test_module_snapshot.cc',
'test/test_module_snapshot.h',
'test/test_process_snapshot.cc',
'test/test_process_snapshot.h',
'test/test_system_snapshot.cc',
'test/test_system_snapshot.h',
'test/test_thread_snapshot.cc',
'test/test_thread_snapshot.h',
],
},
{
'target_name': 'crashpad_snapshot_test',
'type': 'executable',
'dependencies': [
'crashpad_snapshot',
'../client/client.gyp:crashpad_client',
'../compat/compat.gyp:crashpad_compat',
'../third_party/gtest/gtest.gyp:gtest',
'../third_party/gtest/gtest.gyp:gtest_main',
'../third_party/mini_chromium/mini_chromium.gyp:base',
'../util/util.gyp:crashpad_util',
'../util/util.gyp:crashpad_util_test_lib',
],
'include_dirs': [
'..',
],
'sources': [
'cpu_context_test.cc',
'mac/cpu_context_mac_test.cc',
'mac/crashpad_info_client_options_test.cc',
'mac/mach_o_image_annotations_reader_test.cc',
'mac/mach_o_image_reader_test.cc',
'mac/mach_o_image_segment_reader_test.cc',
'mac/process_reader_test.cc',
'mac/process_types_test.cc',
'mac/system_snapshot_mac_test.cc',
'minidump/process_snapshot_minidump_test.cc',
'win/system_snapshot_win_test.cc',
],
'conditions': [
['OS=="mac"', {
'dependencies': [
'crashpad_snapshot_test_module',
],
'link_settings': {
'libraries': [
'$(SDKROOT)/System/Library/Frameworks/OpenCL.framework',
],
},
}],
],
},
],
'conditions': [
['OS=="mac"', {
'targets': [
{
'target_name': 'crashpad_snapshot_test_module',
'type': 'loadable_module',
'dependencies': [
'../client/client.gyp:crashpad_client',
'../third_party/mini_chromium/mini_chromium.gyp:base',
],
'include_dirs': [
'..',
],
'sources': [
'mac/crashpad_info_client_options_test_module.cc',
],
},
],
}],
],
}

112
snapshot/snapshot_test.gyp Normal file
View File

@ -0,0 +1,112 @@
# Copyright 2014 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.
{
'includes': [
'../build/crashpad.gypi',
],
'targets': [
{
'target_name': 'crashpad_snapshot_test_lib',
'type': 'static_library',
'dependencies': [
'snapshot.gyp:crashpad_snapshot',
'../compat/compat.gyp:crashpad_compat',
'../third_party/mini_chromium/mini_chromium.gyp:base',
'../util/util.gyp:crashpad_util',
],
'include_dirs': [
'..',
],
'sources': [
'test/test_cpu_context.cc',
'test/test_cpu_context.h',
'test/test_exception_snapshot.cc',
'test/test_exception_snapshot.h',
'test/test_memory_snapshot.cc',
'test/test_memory_snapshot.h',
'test/test_module_snapshot.cc',
'test/test_module_snapshot.h',
'test/test_process_snapshot.cc',
'test/test_process_snapshot.h',
'test/test_system_snapshot.cc',
'test/test_system_snapshot.h',
'test/test_thread_snapshot.cc',
'test/test_thread_snapshot.h',
],
},
{
'target_name': 'crashpad_snapshot_test',
'type': 'executable',
'dependencies': [
'snapshot.gyp:crashpad_snapshot',
'../client/client.gyp:crashpad_client',
'../compat/compat.gyp:crashpad_compat',
'../third_party/gtest/gtest.gyp:gtest',
'../third_party/gtest/gtest.gyp:gtest_main',
'../third_party/mini_chromium/mini_chromium.gyp:base',
'../util/util.gyp:crashpad_util',
'../util/util_test.gyp:crashpad_util_test_lib',
],
'include_dirs': [
'..',
],
'sources': [
'cpu_context_test.cc',
'mac/cpu_context_mac_test.cc',
'mac/crashpad_info_client_options_test.cc',
'mac/mach_o_image_annotations_reader_test.cc',
'mac/mach_o_image_reader_test.cc',
'mac/mach_o_image_segment_reader_test.cc',
'mac/process_reader_test.cc',
'mac/process_types_test.cc',
'mac/system_snapshot_mac_test.cc',
'minidump/process_snapshot_minidump_test.cc',
'win/system_snapshot_win_test.cc',
],
'conditions': [
['OS=="mac"', {
'dependencies': [
'crashpad_snapshot_test_module',
],
'link_settings': {
'libraries': [
'$(SDKROOT)/System/Library/Frameworks/OpenCL.framework',
],
},
}],
],
},
],
'conditions': [
['OS=="mac"', {
'targets': [
{
'target_name': 'crashpad_snapshot_test_module',
'type': 'loadable_module',
'dependencies': [
'../client/client.gyp:crashpad_client',
'../third_party/mini_chromium/mini_chromium.gyp:base',
],
'include_dirs': [
'..',
],
'sources': [
'mac/crashpad_info_client_options_test_module.cc',
],
},
],
}],
],
}

View File

@ -218,193 +218,5 @@
}],
],
},
{
'target_name': 'crashpad_util_test_lib',
'type': 'static_library',
'dependencies': [
'crashpad_util',
'../compat/compat.gyp:crashpad_compat',
'../third_party/gtest/gtest.gyp:gtest',
'../third_party/mini_chromium/mini_chromium.gyp:base',
],
'include_dirs': [
'..',
],
'sources': [
'test/errors.cc',
'test/errors.h',
'test/gtest_death_check.h',
'test/mac/dyld.h',
'test/mac/mach_errors.cc',
'test/mac/mach_errors.h',
'test/mac/mach_multiprocess.cc',
'test/mac/mach_multiprocess.h',
'test/multiprocess.h',
'test/multiprocess_exec.h',
'test/multiprocess_exec_posix.cc',
'test/multiprocess_exec_win.cc',
'test/multiprocess_posix.cc',
'test/paths.cc',
'test/paths.h',
'test/paths_mac.cc',
'test/paths_win.cc',
'test/scoped_temp_dir.cc',
'test/scoped_temp_dir.h',
'test/scoped_temp_dir_posix.cc',
'test/scoped_temp_dir_win.cc',
'test/thread.cc',
'test/thread.h',
'test/thread_posix.cc',
'test/thread_win.cc',
],
'conditions': [
['OS=="mac"', {
'link_settings': {
'libraries': [
'$(SDKROOT)/usr/lib/libbsm.dylib',
],
},
}],
],
},
{
'target_name': 'crashpad_util_test',
'type': 'executable',
'dependencies': [
'crashpad_util',
'crashpad_util_test_lib',
'crashpad_util_test_multiprocess_exec_test_child',
'../compat/compat.gyp:crashpad_compat',
'../third_party/gmock/gmock.gyp:gmock',
'../third_party/gmock/gmock.gyp:gmock_main',
'../third_party/gtest/gtest.gyp:gtest',
'../third_party/mini_chromium/mini_chromium.gyp:base',
],
'include_dirs': [
'..',
],
'sources': [
'file/file_io_test.cc',
'file/string_file_test.cc',
'mac/checked_mach_address_range_test.cc',
'mac/launchd_test.mm',
'mac/mac_util_test.mm',
'mac/service_management_test.mm',
'mac/xattr_test.cc',
'mach/child_port_handshake_test.cc',
'mach/child_port_server_test.cc',
'mach/composite_mach_message_server_test.cc',
'mach/exc_client_variants_test.cc',
'mach/exc_server_variants_test.cc',
'mach/exception_behaviors_test.cc',
'mach/exception_ports_test.cc',
'mach/mach_extensions_test.cc',
'mach/mach_message_server_test.cc',
'mach/mach_message_test.cc',
'mach/notify_server_test.cc',
'mach/scoped_task_suspend_test.cc',
'mach/symbolic_constants_mach_test.cc',
'mach/task_memory_test.cc',
'misc/clock_test.cc',
'misc/initialization_state_dcheck_test.cc',
'misc/initialization_state_test.cc',
'misc/scoped_forbid_return_test.cc',
'misc/uuid_test.cc',
'net/http_body_test.cc',
'net/http_body_test_util.cc',
'net/http_body_test_util.h',
'net/http_multipart_builder_test.cc',
'net/http_transport_test.cc',
'numeric/checked_range_test.cc',
'numeric/in_range_cast_test.cc',
'numeric/int128_test.cc',
'posix/process_info_test.cc',
'posix/symbolic_constants_posix_test.cc',
'stdlib/map_insert_test.cc',
'stdlib/string_number_conversion_test.cc',
'stdlib/strlcpy_test.cc',
'stdlib/strnlen_test.cc',
'string/split_string_test.cc',
'synchronization/semaphore_test.cc',
'test/mac/mach_multiprocess_test.cc',
'test/multiprocess_exec_test.cc',
'test/multiprocess_posix_test.cc',
'test/paths_test.cc',
'test/scoped_temp_dir_test.cc',
'thread/thread_log_messages_test.cc',
'win/process_info_test.cc',
'win/time_test.cc',
],
'conditions': [
['OS=="mac"', {
'link_settings': {
'libraries': [
'$(SDKROOT)/System/Library/Frameworks/Foundation.framework',
],
},
}],
['OS=="win"', {
'link_settings': {
'libraries': [
'-lrpcrt4.lib',
],
},
}],
],
},
{
'target_name': 'crashpad_util_test_multiprocess_exec_test_child',
'type': 'executable',
'sources': [
'test/multiprocess_exec_test_child.cc',
],
},
],
'conditions': [
['OS=="win"', {
'targets': [
{
'target_name': 'crashpad_util_test_process_info_test_child_x64',
'type': 'executable',
'sources': [
'win/process_info_test_child.cc',
],
'msvs_configuration_platform': 'x64',
# Set an unusually high load address to make sure that the main
# executable still appears as the first element in
# ProcessInfo::Modules().
'msvs_settings': {
'VCLinkerTool': {
'AdditionalOptions': [
'/BASE:0x78000000',
'/FIXED',
],
'TargetMachine': '17', # x64.
},
},
},
{
# Same as above, but explicitly x86 to test 64->32 access.
'target_name': 'crashpad_util_test_process_info_test_child_x86',
'type': 'executable',
'sources': [
'win/process_info_test_child.cc',
],
'msvs_configuration_platform': 'x86',
# Set an unusually high load address to make sure that the main
# executable still appears as the first element in
# ProcessInfo::Modules().
'msvs_settings': {
'VCLinkerTool': {
'AdditionalOptions': [
'/BASE:0x78000000',
'/FIXED',
],
'TargetMachine': '1', # x86.
},
},
},
]
}],
],
}

209
util/util_test.gyp Normal file
View File

@ -0,0 +1,209 @@
# Copyright 2014 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.
{
'includes': [
'../build/crashpad.gypi',
],
'targets': [
{
'target_name': 'crashpad_util_test_lib',
'type': 'static_library',
'dependencies': [
'util.gyp:crashpad_util',
'../compat/compat.gyp:crashpad_compat',
'../third_party/gtest/gtest.gyp:gtest',
'../third_party/mini_chromium/mini_chromium.gyp:base',
],
'include_dirs': [
'..',
],
'sources': [
'test/errors.cc',
'test/errors.h',
'test/gtest_death_check.h',
'test/mac/dyld.h',
'test/mac/mach_errors.cc',
'test/mac/mach_errors.h',
'test/mac/mach_multiprocess.cc',
'test/mac/mach_multiprocess.h',
'test/multiprocess.h',
'test/multiprocess_exec.h',
'test/multiprocess_exec_posix.cc',
'test/multiprocess_exec_win.cc',
'test/multiprocess_posix.cc',
'test/paths.cc',
'test/paths.h',
'test/paths_mac.cc',
'test/paths_win.cc',
'test/scoped_temp_dir.cc',
'test/scoped_temp_dir.h',
'test/scoped_temp_dir_posix.cc',
'test/scoped_temp_dir_win.cc',
'test/thread.cc',
'test/thread.h',
'test/thread_posix.cc',
'test/thread_win.cc',
],
'conditions': [
['OS=="mac"', {
'link_settings': {
'libraries': [
'$(SDKROOT)/usr/lib/libbsm.dylib',
],
},
}],
],
},
{
'target_name': 'crashpad_util_test',
'type': 'executable',
'dependencies': [
'crashpad_util_test_lib',
'crashpad_util_test_multiprocess_exec_test_child',
'util.gyp:crashpad_util',
'../compat/compat.gyp:crashpad_compat',
'../third_party/gmock/gmock.gyp:gmock',
'../third_party/gmock/gmock.gyp:gmock_main',
'../third_party/gtest/gtest.gyp:gtest',
'../third_party/mini_chromium/mini_chromium.gyp:base',
],
'include_dirs': [
'..',
],
'sources': [
'file/file_io_test.cc',
'file/string_file_test.cc',
'mac/checked_mach_address_range_test.cc',
'mac/launchd_test.mm',
'mac/mac_util_test.mm',
'mac/service_management_test.mm',
'mac/xattr_test.cc',
'mach/child_port_handshake_test.cc',
'mach/child_port_server_test.cc',
'mach/composite_mach_message_server_test.cc',
'mach/exc_client_variants_test.cc',
'mach/exc_server_variants_test.cc',
'mach/exception_behaviors_test.cc',
'mach/exception_ports_test.cc',
'mach/mach_extensions_test.cc',
'mach/mach_message_server_test.cc',
'mach/mach_message_test.cc',
'mach/notify_server_test.cc',
'mach/scoped_task_suspend_test.cc',
'mach/symbolic_constants_mach_test.cc',
'mach/task_memory_test.cc',
'misc/clock_test.cc',
'misc/initialization_state_dcheck_test.cc',
'misc/initialization_state_test.cc',
'misc/scoped_forbid_return_test.cc',
'misc/uuid_test.cc',
'net/http_body_test.cc',
'net/http_body_test_util.cc',
'net/http_body_test_util.h',
'net/http_multipart_builder_test.cc',
'net/http_transport_test.cc',
'numeric/checked_range_test.cc',
'numeric/in_range_cast_test.cc',
'numeric/int128_test.cc',
'posix/process_info_test.cc',
'posix/symbolic_constants_posix_test.cc',
'stdlib/map_insert_test.cc',
'stdlib/string_number_conversion_test.cc',
'stdlib/strlcpy_test.cc',
'stdlib/strnlen_test.cc',
'string/split_string_test.cc',
'synchronization/semaphore_test.cc',
'test/mac/mach_multiprocess_test.cc',
'test/multiprocess_exec_test.cc',
'test/multiprocess_posix_test.cc',
'test/paths_test.cc',
'test/scoped_temp_dir_test.cc',
'thread/thread_log_messages_test.cc',
'win/process_info_test.cc',
'win/time_test.cc',
],
'conditions': [
['OS=="mac"', {
'link_settings': {
'libraries': [
'$(SDKROOT)/System/Library/Frameworks/Foundation.framework',
],
},
}],
['OS=="win"', {
'link_settings': {
'libraries': [
'-lrpcrt4.lib',
],
},
}],
],
},
{
'target_name': 'crashpad_util_test_multiprocess_exec_test_child',
'type': 'executable',
'sources': [
'test/multiprocess_exec_test_child.cc',
],
},
],
'conditions': [
['OS=="win"', {
'targets': [
{
'target_name': 'crashpad_util_test_process_info_test_child_x64',
'type': 'executable',
'sources': [
'win/process_info_test_child.cc',
],
'msvs_configuration_platform': 'x64',
# Set an unusually high load address to make sure that the main
# executable still appears as the first element in
# ProcessInfo::Modules().
'msvs_settings': {
'VCLinkerTool': {
'AdditionalOptions': [
'/BASE:0x78000000',
'/FIXED',
],
'TargetMachine': '17', # x64.
},
},
},
{
# Same as above, but explicitly x86 to test 64->32 access.
'target_name': 'crashpad_util_test_process_info_test_child_x86',
'type': 'executable',
'sources': [
'win/process_info_test_child.cc',
],
'msvs_configuration_platform': 'x86',
# Set an unusually high load address to make sure that the main
# executable still appears as the first element in
# ProcessInfo::Modules().
'msvs_settings': {
'VCLinkerTool': {
'AdditionalOptions': [
'/BASE:0x78000000',
'/FIXED',
],
'TargetMachine': '1', # x86.
},
},
},
]
}],
],
}