diff --git a/.github/actions/fix-sync/action.yml b/.github/actions/fix-sync/action.yml index 23bd710e2014..3f49179d1819 100644 --- a/.github/actions/fix-sync/action.yml +++ b/.github/actions/fix-sync/action.yml @@ -19,11 +19,13 @@ inputs: runs: using: "composite" steps: - - name: Fix clang + - name: Fix llvm toolchain shell: bash run : | rm -rf src/third_party/llvm-build python3 src/tools/clang/scripts/update.py + # Refs https://chromium-review.googlesource.com/c/chromium/src/+/6667681 + python3 src/tools/clang/scripts/update.py --package objdump - name: Fix esbuild uses: ./src/electron/.github/actions/cipd-install with: diff --git a/patches/chromium/.patches b/patches/chromium/.patches index 206431fee48e..b3424b49c478 100644 --- a/patches/chromium/.patches +++ b/patches/chromium/.patches @@ -136,4 +136,3 @@ revert_update_siso-chromium_image.patch build_set_mac_sdk_minimum_to_10.patch fix_add_macos_memory_query_fallback_to_avoid_crash.patch fix_resolve_dynamic_background_material_update_issue_on_windows_11.patch -revert_use_more_binaries_from_clang_toolchain_in_mac_build.patch diff --git a/patches/chromium/revert_use_more_binaries_from_clang_toolchain_in_mac_build.patch b/patches/chromium/revert_use_more_binaries_from_clang_toolchain_in_mac_build.patch deleted file mode 100644 index 0e74a029d2c1..000000000000 --- a/patches/chromium/revert_use_more_binaries_from_clang_toolchain_in_mac_build.patch +++ /dev/null @@ -1,105 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Keeley Hammond -Date: Wed, 16 Jul 2025 20:19:56 -0700 -Subject: Revert "Use more binaries from clang toolchain in mac build" - -This reverts commit 17b850a9f8e913fb5e465d895f545b069def57d1. - -As part of the above commit, Chrome began bundling their otool -and nm binaries into third-party/llvm-build. These binaries are -not found in our current CI builds, and we'll need to modify -our actions to ensure they either persist or are added on MacOS. - -This patch can be removed when both otool and nm are correctly -persisted with third-party/llvm-build. - -diff --git a/DEPS b/DEPS -index aff425e81261a9820e4d12953cf19d8e8998b00d..0eb687803692c71730aaaaab615b3facd4665020 100644 ---- a/DEPS -+++ b/DEPS -@@ -911,13 +911,6 @@ deps = { - 'generation': 1753711035430925, - 'condition': 'host_os == "mac" and host_cpu == "x64" and checkout_clang_coverage_tools', - }, -- { -- 'object_name': 'Mac/llvmobjdump-llvmorg-21-init-16348-gbd809ffb-14.tar.xz', -- 'sha256sum': '4eae5f9ad4fba33dea45815fd965258f4649cf8e0794b6c431ce166a966cb29d', -- 'size_bytes': 5483720, -- 'generation': 1753711035319601, -- 'condition': 'host_os == "mac" and host_cpu == "x64"', -- }, - { - 'object_name': 'Mac_arm64/clang-llvmorg-21-init-16348-gbd809ffb-14.tar.xz', - 'sha256sum': '17275ca988de014adc269f8fa694f501cecd6c25c0494fc45582fc4e3d258bed', -@@ -946,13 +939,6 @@ deps = { - 'generation': 1753711045041769, - 'condition': 'host_os == "mac" and host_cpu == "arm64" and checkout_clang_coverage_tools', - }, -- { -- 'object_name': 'Mac_arm64/llvmobjdump-llvmorg-21-init-16348-gbd809ffb-14.tar.xz', -- 'sha256sum': '26c961fa85d76f5f2fcdfd80980b4a0ca4c394307cf78e65888d061e29ae9b0b', -- 'size_bytes': 5315616, -- 'generation': 1753711044929262, -- 'condition': 'host_os == "mac" and host_cpu == "arm64"', -- }, - { - 'object_name': 'Win/clang-llvmorg-21-init-16348-gbd809ffb-14.tar.xz', - 'sha256sum': 'ce28d6045da4a2d3e909a3b272e973ecab3360452780e501b2110b6fd51be899', -diff --git a/build/toolchain/apple/toolchain.gni b/build/toolchain/apple/toolchain.gni -index d3fdadf72eb0aa36ae9ae0d4324b61143bc55b66..d5210da1aa3bbda87ca540f67a1768dec70f3675 100644 ---- a/build/toolchain/apple/toolchain.gni -+++ b/build/toolchain/apple/toolchain.gni -@@ -115,9 +115,6 @@ template("single_apple_toolchain") { - host_toolchain = host_toolchain - } - -- # bin_path is only used in some builds. -- not_needed(invoker, [ "bin_path" ]) -- - # When the invoker has explicitly overridden cc_wrapper in the - # toolchain args, use those values, otherwise default to the global one. - # This works because the only reasonable override that toolchains might -@@ -213,7 +210,7 @@ template("single_apple_toolchain") { - linker_driver_args = "-Wcrl,driver,$ld" - - # Specify an explicit path for the strip binary. -- _strippath = "${prefix}llvm-strip" -+ _strippath = invoker.bin_path + "strip" - _installnametoolpath = "${prefix}llvm-install-name-tool" - linker_driver_args += " -Wcrl,strippath,${_strippath} -Wcrl,installnametoolpath,${_installnametoolpath}" - _enable_dsyms = enable_dsyms -@@ -496,8 +493,13 @@ template("single_apple_toolchain") { - # search path in /usr/bin are thin wrappers around xcrun, which requires a - # full CommandLineTools or Xcode install, and still may not choose the - # appropriate binary if there are multiple installs. -- nm = "${prefix}llvm-nm" -- otool = "${prefix}llvm-otool" -+ if (host_os == "mac") { -+ nm = invoker.bin_path + "nm" -+ otool = invoker.bin_path + "otool" -+ } else { -+ nm = "${prefix}llvm-nm" -+ otool = "${prefix}llvm-otool" -+ } - - link_command = "$linker_driver_env $linker_driver" - link_command += " -Wcrl,otoolpath,$otool -Wcrl,nmpath,$nm" -diff --git a/tools/clang/scripts/sync_deps.py b/tools/clang/scripts/sync_deps.py -index 79871b89f773f9d88c74832ad0488a8f7f3e2405..7c18b8f2ade0889d82251337f62574ed8533dc43 100755 ---- a/tools/clang/scripts/sync_deps.py -+++ b/tools/clang/scripts/sync_deps.py -@@ -34,14 +34,12 @@ CLANG_PLATFORM_TO_PACKAGE_FILES = { - 'clang-tidy', - 'clangd', - 'llvm-code-coverage', -- 'llvmobjdump', - ], - 'Mac_arm64': [ - 'clang', - 'clang-tidy', - 'clangd', - 'llvm-code-coverage', -- 'llvmobjdump', - ], - 'Win': [ - 'clang',