File tree Expand file tree Collapse file tree 7 files changed +17
-19
lines changed Expand file tree Collapse file tree 7 files changed +17
-19
lines changed Original file line number Diff line number Diff line change @@ -90,11 +90,6 @@ build:windows --per_file_copt=external/simdutf@/clang:-fno-exceptions
9090build:unix --per_file_copt=external/v8/src/torque@-fexceptions
9191build:windows --per_file_copt=external/v8/src/torque@/clang:-fexceptions
9292
93- # Disable relaxing all jumps during LLVM codegen under -O0, which previously led to build
94- # performance improvements but makes code size worse. This will be the default in LLVM19.
95- # https://maskray.me/blog/2024-04-27-clang-o0-output-branch-displacement-and-size-increase
96- build:unix --copt="-mno-relax-all" --host_copt="-mno-relax-all"
97-
9893# Limit transitive header includes within libc++. This improves compliance with IWYU, helps avoid
9994# errors with downstream projects that implicitly define this already and reduces total include size.
10095https://libcxx.llvm.org/DesignDocs/HeaderRemovalPolicy.html
Original file line number Diff line number Diff line change 3838 git config --show-scope --show-origin core.symlinks
3939 git config --system core.longpaths true
4040 [System.IO.File]::WriteAllLines((Join-Path -Path $env:USERPROFILE -ChildPath '.bazelrc'), 'startup --output_user_root=\\\\?\\C:\\tmp')
41- - name : Setup macOS
42- if : runner.os == 'macOS'
43- shell : bash
44- run : |
45- # Build using Xcode 16.3 (equivalent to Clang 19)
46- sudo xcode-select -s "/Applications/Xcode_16.3.app"
4741 - name : Configure git hooks
4842 shell : bash
4943 # Configure git to quell an irrelevant warning for runners (they never commit / push).
Original file line number Diff line number Diff line change @@ -113,7 +113,7 @@ jobs:
113113 # support. Since we still need symlinks to compile C++ code properly, compile these targets
114114 # separately.
115115 run : |
116- bazel --nowindows_enable_symlinks build ${{ inputs.extra_bazel_args }} --config=ci --remote_cache=https://bazel:${{ secrets.BAZEL_CACHE_KEY }}@bazel-remote-cache.devprod.cloudflare.dev //src/wpt:wpt-all@tsproject //src/node:node@tsproject //src/pyodide:pyodide_static@tsproject
116+ bazel --nowindows_enable_symlinks build ${{ inputs.extra_bazel_args }} --config=ci --profile build-win-workaround.bazel-profile.gz -- remote_cache=https://bazel:${{ secrets.BAZEL_CACHE_KEY }}@bazel-remote-cache.devprod.cloudflare.dev //src/wpt:wpt-all@tsproject //src/node:node@tsproject //src/pyodide:pyodide_static@tsproject
117117 - name : Bazel build
118118 # timestamps are no longer being added here, the GitHub logs include timestamps (Use
119119 # 'Show timestamps' on the web interface)
@@ -158,6 +158,12 @@ jobs:
158158 name : ${{ inputs.os_name }}-${{ inputs.arch_name }}${{ inputs.suffix }}-binary
159159 path : bazel-bin/src/workerd/server/workerd${{ runner.os == 'Windows' && '.exe' || '' }}
160160 if-no-files-found : error
161+ - name : Upload build statistics
162+ if : inputs.run_tests
163+ uses : actions/upload-artifact@v4
164+ with :
165+ name : ${{ inputs.os_name }}${{ inputs.arch_name }}${{ inputs.suffix }}-bazel-profile
166+ path : ' *.bazel-profile.gz'
161167
162168 - name : Drop large Bazel cache files
163169 if : always()
Original file line number Diff line number Diff line change @@ -86,17 +86,17 @@ jobs:
8686 bazel-config : release_linux
8787 target-arch : ARM64
8888 # Based on runner availability, we build both Apple Silicon and (cross-compiled) x86
89- # release binaries on the macos-15 runner.
89+ # release binaries on the macos-26 runner.
9090 - title : macOS-x64
9191 os-name : macOS
92- # This configuration is used for cross-compiling – macos-15 is Apple Silicon-based but
92+ # This configuration is used for cross-compiling – macos-26 is Apple Silicon-based but
9393 # we use it to compile the x64 release.
94- image : macos-15
94+ image : macos-26
9595 bazel-config : release_macos_cross_x86_64
9696 target-arch : X64
9797 - title : macOS-arm64
9898 os-name : macOS
99- image : macos-15
99+ image : macos-26
100100 bazel-config : release_macos
101101 target-arch : ARM64
102102 - title : windows
Original file line number Diff line number Diff line change 3535 [
3636 { name: linux, arch: X64, image: ubuntu-22.04 },
3737 { name: linux-arm, arch: ARM64, image: ubuntu-22.04-arm },
38- { name: macOS, arch: ARM64, image: macos-15 },
38+ { name: macOS, arch: ARM64, image: macos-26 },
3939 { name: windows, arch: X64, image: windows-2025 },
4040 ]
4141 config : [
6060 # due to resource constraints, exclude the macOS and x64 Linux debug runners for now.
6161 # linux-asan and arm64 linux-debug should provide sufficient coverage for building in the
6262 # debug configuration.
63- - os : { name: macOS, arch: ARM64 , image: macos-15 }
63+ - os : { name: macOS, arch: ARM64, image: macos-26 }
6464 config : { suffix: -debug }
6565 - os : { name: linux, arch: X64, image: ubuntu-22.04 }
6666 config : { suffix: -debug }
Original file line number Diff line number Diff line change 1- FROM node:bullseye AS builder
1+ FROM node:trixie AS builder
22
33WORKDIR /workerd
44
Original file line number Diff line number Diff line change @@ -23,6 +23,9 @@ build:ci --color=yes
2323# Indicate support for more terminal columns, 100 is the line length recommended by KJ style.
2424build:ci --terminal_columns=100
2525
26+ # Emit build profile so that slow builds can be investigated
27+ build:ci --profile build.bazel-profile.gz
28+ test:ci --profile test.bazel-profile.gz
2629test:ci --test_output=errors --test_summary=terse
2730build:ci --disk_cache=~/bazel-disk-cache
2831
You can’t perform that action at this time.
0 commit comments