Skip to content

Commit b160f39

Browse files
meta: update 2025-10-22
meta: update 2025-10-22
2 parents 1b4a591 + 2e4a7b8 commit b160f39

File tree

202 files changed

+16795
-4162
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

202 files changed

+16795
-4162
lines changed

.gitattributes

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,6 @@
2323
*.gn text eol=lf
2424
*.gni text eol=lf
2525
*.go text eol=lf
26-
*.gyp text eol=lf
27-
*.gypi text eol=lf
2826
*.h text eol=lf
2927
*.m text eol=lf
3028
*.md text eol=lf

.gitignore

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
.cache
2626
.gdb_history
2727
.gdbinit
28+
/.vscode/
2829
/Makefile
2930
/build/fuchsia
3031
/out
@@ -35,11 +36,16 @@
3536
/third_party/fuchsia/qemu
3637
/third_party/fuchsia/sdk
3738
/third_party/googletest/googletest
38-
/third_party/gyp/gyp
3939
/third_party/libfuzzer
4040
/third_party/linux/.cipd
4141
/third_party/linux/clang
4242
/third_party/linux/sysroot
43-
/third_party/gyp/gyp
43+
/third_party/lss/lss
44+
/third_party/mini_chromium/mini_chromium
45+
/third_party/ninja/linux
46+
/third_party/ninja/mac*
47+
/third_party/ninja/ninja.exe
48+
/third_party/windows/clang/win-amd64
49+
/third_party/zlib/zlib
4450
/xcodebuild
4551
tags

BUILD.gn

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,19 +33,37 @@ if (crashpad_is_in_chromium || crashpad_is_in_fuchsia) {
3333
"test:test_test",
3434
"util:util_test",
3535
]
36+
37+
data_deps = []
38+
39+
if (crashpad_is_in_chromium) {
40+
data_deps += [ "//testing/buildbot/filters:crashpad_tests_filters" ]
41+
}
42+
3643
if (!crashpad_is_ios && !crashpad_is_fuchsia) {
3744
deps += [ "handler:handler_test" ]
3845
}
3946
if (crashpad_is_in_fuchsia) {
4047
# TODO(fuchsia:46559): Fix the leaks and remove this.
4148
deps += [ "//build/config/sanitizers:suppress-lsan.DO-NOT-USE-THIS" ]
49+
4250
# TODO(fxbug.dev/42059784): Remove this once the underlying issue is
4351
# addressed.
4452
exclude_toolchain_tags = [ "hwasan" ]
4553
}
4654
if (crashpad_is_android) {
4755
use_raw_android_executable = true
4856

57+
# crbug.com/418874703 - This is a workaround to propagate the data deps to
58+
# //:crashpad_tests__dist for Android build.
59+
data_deps += [
60+
"snapshot:crashpad_snapshot_test_both_dt_hash_styles",
61+
"snapshot:crashpad_snapshot_test_module",
62+
"snapshot:crashpad_snapshot_test_module_large",
63+
"snapshot:crashpad_snapshot_test_module_small",
64+
"test:crashpad_test_test_multiprocess_exec_test_child",
65+
]
66+
4967
copy("crashpad_test_data") {
5068
testonly = true
5169
sources = [

CMakeLists.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,7 @@ if(MSVC)
132132
$<$<AND:$<COMPILE_LANGUAGE:C,CXX>,$<C_COMPILER_ID:Clang>>:-Wno-deprecated-declarations> # same as /wd4996
133133
$<$<AND:$<COMPILE_LANGUAGE:C,CXX>,$<C_COMPILER_ID:Clang>>:-Wno-format> # only Clang-CL
134134
$<$<AND:$<COMPILE_LANGUAGE:C,CXX>,$<C_COMPILER_ID:Clang>>:-Wno-cast-function-type-mismatch> # only Clang-CL
135+
$<$<AND:$<COMPILE_LANGUAGE:C,CXX>,$<C_COMPILER_ID:Clang>>:-Wno-return-type>
135136
)
136137
elseif(MINGW)
137138
# redirect to wmain
@@ -143,6 +144,7 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
143144
target_compile_options(crashpad_interface INTERFACE
144145
$<$<COMPILE_LANGUAGE:CXX>:-Wno-multichar>
145146
$<$<COMPILE_LANGUAGE:CXX>:-Wno-attributes>
147+
$<$<COMPILE_LANGUAGE:CXX>:-Wno-return-type>
146148
)
147149
endif()
148150

DEPS

Lines changed: 19 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -29,25 +29,25 @@ vars = {
2929
deps = {
3030
'buildtools':
3131
Var('chromium_git') + '/chromium/src/buildtools.git@' +
32-
'8919328651a559f8a974641d40fe712062cc6718',
32+
'efa920ce144e4dc1c1841e73179cd7e23b9f0d5e',
3333
'buildtools/clang_format/script':
3434
Var('chromium_git') +
3535
'/external/github.com/llvm/llvm-project/clang/tools/clang-format.git@' +
3636
'c912837e0d82b5ca4b6e790b573b3956d3744c1c',
3737
'crashpad/third_party/edo/edo': {
3838
'url': Var('chromium_git') + '/external/github.com/google/eDistantObject.git@' +
39-
'727e556705278598fce683522beedbb9946bfda0',
39+
'38e71ff183d76f702db6966fa7236c98831acd80',
4040
'condition': 'checkout_ios',
4141
},
4242
'crashpad/third_party/googletest/googletest':
4343
Var('chromium_git') + '/external/github.com/google/googletest@' +
44-
'af29db7ec28d6df1c7f0f745186884091e602e07',
44+
'3983f67e32fb3e9294487b9d4f9586efa6e5d088',
4545
'crashpad/third_party/lss/lss':
4646
Var('chromium_git') + '/linux-syscall-support.git@' +
4747
'9719c1e1e676814c456b55f5f070eabad6709d31',
4848
'crashpad/third_party/mini_chromium/mini_chromium':
4949
Var('chromium_git') + '/chromium/mini_chromium@' +
50-
'bd56f6933f2fa021a44766ced638a18f477ef1c1',
50+
'eef885b0bb80dab8e9d79b9dc0c050a1c8e50c0b',
5151
'crashpad/third_party/libfuzzer/src':
5252
Var('chromium_git') + '/chromium/llvm-project/compiler-rt/lib/fuzzer.git@' +
5353
'fda403cf93ecb8792cb1d061564d89a6553ca020',
@@ -110,7 +110,7 @@ deps = {
110110
'packages': [
111111
{
112112
'package': 'fuchsia/third_party/clang/mac-amd64',
113-
'version': 'latest',
113+
'version': 'integration',
114114
},
115115
],
116116
'condition': 'checkout_fuchsia and host_os == "mac"',
@@ -120,12 +120,25 @@ deps = {
120120
'packages': [
121121
{
122122
'package': 'fuchsia/third_party/clang/linux-amd64',
123-
'version': 'latest',
123+
'version': 'integration',
124124
},
125125
],
126126
'condition': 'checkout_fuchsia and host_os == "linux"',
127127
'dep_type': 'cipd'
128128
},
129+
'crashpad/third_party/windows/clang/win-amd64': {
130+
'bucket': 'chromium-browser-clang',
131+
'objects': [
132+
{
133+
'object_name': 'Win/clang-llvmorg-20-init-17108-g29ed6000-2.tar.xz',
134+
'sha256sum': '1c71efd923a91480480d4f31c2fd5f1369e01e14f15776a9454abbce0bc13548',
135+
'size_bytes': 46357580,
136+
'generation': 1737590897363452,
137+
},
138+
],
139+
'condition': 'checkout_win and host_os == "win"',
140+
'dep_type': 'gcs',
141+
},
129142
'crashpad/third_party/fuchsia-gn-sdk': {
130143
'packages': [
131144
{
@@ -208,47 +221,6 @@ deps = {
208221
}
209222

210223
hooks = [
211-
{
212-
'name': 'clang_format_mac',
213-
'pattern': '.',
214-
'condition': 'host_os == "mac"',
215-
'action': [
216-
'download_from_google_storage',
217-
'--no_resume',
218-
'--no_auth',
219-
'--bucket=chromium-clang-format',
220-
'--sha1_file',
221-
'buildtools/mac/clang-format.{host_cpu}.sha1',
222-
'--output',
223-
'buildtools/mac/clang-format',
224-
],
225-
},
226-
{
227-
'name': 'clang_format_linux',
228-
'pattern': '.',
229-
'condition': 'host_os == "linux"',
230-
'action': [
231-
'download_from_google_storage',
232-
'--no_resume',
233-
'--no_auth',
234-
'--bucket=chromium-clang-format',
235-
'--sha1_file',
236-
'buildtools/linux64/clang-format.sha1',
237-
],
238-
},
239-
{
240-
'name': 'clang_format_win',
241-
'pattern': '.',
242-
'condition': 'host_os == "win"',
243-
'action': [
244-
'download_from_google_storage',
245-
'--no_resume',
246-
'--no_auth',
247-
'--bucket=chromium-clang-format',
248-
'--sha1_file',
249-
'buildtools/win/clang-format.exe.sha1',
250-
],
251-
},
252224
{
253225
# If using a local clang ("pull_linux_clang" above), also pull down a
254226
# sysroot.

OWNERS

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Copyright 2025 The Crashpad Authors
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
16+
17+
18+
19+
20+

build/config/fuchsia/gn_configs.gni

Lines changed: 0 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -20,36 +20,6 @@
2020
# rules to reference the contents of the fuchsia SDK.
2121
fuchsia_sdk = "//third_party/fuchsia/sdk/linux-amd64"
2222

23-
# ID uniquely identifying the Fuchsia IDK build. This is exposed as a
24-
# property so it can be used to locate images and packages on GCS and
25-
# as a marker to indicate the "version" of the IDK.
26-
# Defaults to the id found in the manifest.json file of the SDK.
27-
fuchsia_sdk_id = ""
28-
29-
# The target API level for this repository. Embedders should override this
30-
# value to specify the API level the packages produced from this repository
31-
# should be targeting, e.g. in their top-level //.gn file. A value of -1
32-
# means that no API level will be passed to the tools that consumes it.
33-
fuchsia_target_api_level = 18
34-
35-
# The SDK manifest file. This is useful to include as a dependency
36-
# for some targets in order to cause a rebuild when the version of the
37-
# SDK is changed.
38-
fuchsia_sdk_manifest_file = "${fuchsia_sdk}/meta/manifest.json"
39-
40-
# fuchsia_tool_dir is used to specify the directory in the SDK to locate
41-
# tools for the host cpu architecture. If the host_cpu is not recognized,
42-
# then tool dir defaults to x64.
43-
fuchsia_tool_dir = "${fuchsia_sdk}/tools/${host_cpu}"
44-
45-
if (fuchsia_sdk_id == "") {
46-
# Note: If we need to expose more than just the id in the future,
47-
# we should consider exposing the entire json object for the metadata vs.
48-
# adding a bunch of variables.
49-
_meta = read_file(fuchsia_sdk_manifest_file, "json")
50-
fuchsia_sdk_id = _meta.id
51-
}
52-
5323
declare_args() {
5424
# Specify a readelf_exec path to use. If not specified, the host's system
5525
# executable will be used. Passed to populate_build_id_dir.py and

build/crashpad_buildconfig.gni

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,14 @@ if (crashpad_is_external || crashpad_is_in_dart) {
5757
}
5858

5959
if (crashpad_is_in_chromium) {
60+
if (is_ios) {
61+
# For `target_platform`.
62+
import("//build/config/apple/mobile_config.gni")
63+
}
64+
6065
crashpad_is_mac = is_mac
6166
crashpad_is_ios = is_ios
67+
crashpad_is_tvos = is_ios && target_platform == "tvos"
6268
crashpad_is_apple = is_apple
6369
crashpad_is_win = is_win
6470
crashpad_is_linux = is_linux || is_chromeos
@@ -72,8 +78,14 @@ if (crashpad_is_in_chromium) {
7278
import("$mini_chromium_import_root/build/compiler.gni")
7379
import("$mini_chromium_import_root/build/platform.gni")
7480

81+
if (mini_chromium_is_ios) {
82+
# For `target_platform`.
83+
import("$mini_chromium_import_root/build/ios/ios_sdk.gni")
84+
}
85+
7586
crashpad_is_mac = mini_chromium_is_mac
7687
crashpad_is_ios = mini_chromium_is_ios
88+
crashpad_is_tvos = crashpad_is_ios && target_platform == "tvos"
7789
crashpad_is_apple = mini_chromium_is_apple
7890
crashpad_is_win = mini_chromium_is_win
7991
crashpad_is_linux = mini_chromium_is_linux

build/fuchsia_envs.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,8 @@ def main(args):
3737
os.environ['SRC_ROOT'], 'third_party/fuchsia/sdk/linux-amd64/')
3838
os.environ['FUCHSIA_GN_SDK_ROOT'] = os.path.join(
3939
os.environ['SRC_ROOT'], 'third_party/fuchsia-gn-sdk/src')
40+
os.environ['FUCHSIA_READELF'] = os.path.join(os.environ['SRC_ROOT'],
41+
'third_party/fuchsia/clang/linux-amd64/bin/llvm-readelf')
4042

4143
return subprocess.run(args).returncode
4244

build/ios/setup_ios_gn.py

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,8 @@
2828
import tempfile
2929

3030

31-
SUPPORTED_TARGETS = ('iphoneos', 'iphonesimulator', 'maccatalyst')
31+
SUPPORTED_TARGETS = ('appletvos', 'appletvsimulator', 'iphoneos',
32+
'iphonesimulator', 'maccatalyst')
3233
SUPPORTED_CONFIGS = ('Debug', 'Release', 'Profile', 'Official')
3334

3435
# Pattern matching lines from ~/.lldbinit that must not be copied to the
@@ -92,17 +93,29 @@ class GnGenerator(object):
9293
FAT_BUILD_DEFAULT_ARCH = '64-bit'
9394

9495
TARGET_CPU_VALUES = {
96+
'appletvos': '"arm64"',
97+
'appletvsimulator': HostCpuArch(),
9598
'iphoneos': '"arm64"',
9699
'iphonesimulator': HostCpuArch(),
97100
'maccatalyst': HostCpuArch(),
98101
}
99102

100103
TARGET_ENVIRONMENT_VALUES = {
104+
'appletvos': '"device"',
105+
'appletvsimulator': '"simulator"',
101106
'iphoneos': '"device"',
102107
'iphonesimulator': '"simulator"',
103108
'maccatalyst': '"catalyst"'
104109
}
105110

111+
TARGET_PLATFORM_VALUES = {
112+
'appletvos': '"tvos"',
113+
'appletvsimulator': '"tvos"',
114+
'iphoneos': '"iphoneos"',
115+
'iphonesimulator': '"iphoneos"',
116+
'maccatalyst': '"iphoneos"'
117+
}
118+
106119
def __init__(self, settings, config, target):
107120
assert target in SUPPORTED_TARGETS
108121
assert config in SUPPORTED_CONFIGS
@@ -130,9 +143,9 @@ def _GetGnArgs(self):
130143
args.append(('use_system_xcode', False))
131144

132145
args.append(('target_cpu', self.TARGET_CPU_VALUES[self._target]))
133-
args.append((
134-
'target_environment',
135-
self.TARGET_ENVIRONMENT_VALUES[self._target]))
146+
args.append(
147+
('target_environment', self.TARGET_ENVIRONMENT_VALUES[self._target]))
148+
args.append(('target_platform', self.TARGET_PLATFORM_VALUES[self._target]))
136149

137150
# Add user overrides after the other configurations so that they can
138151
# refer to them and override them.

0 commit comments

Comments
 (0)