diff --git a/.buildkite/Dockerfile b/.buildkite/Dockerfile index 36fb1b0215..3ebf711c28 100644 --- a/.buildkite/Dockerfile +++ b/.buildkite/Dockerfile @@ -189,12 +189,12 @@ RUN git clone --depth=1 https://github.com/oven-sh/bun.git /var/lib/buildkite-ag WORKDIR /var/lib/buildkite-agent/build # Install dependencies, generate source lists, and run cmake configure to download build dependencies +# Keep cmake/ninja files so subsequent builds can skip already-downloaded dependencies RUN bun install --frozen-lockfile && \ bun run scripts/glob-sources.mjs && \ mkdir -p build/release && \ cmake -S . -B build/release -G Ninja -DCMAKE_BUILD_TYPE=Release -DCI=ON && \ cmake --build build/release --target clone-zig clone-boringssl clone-mimalloc clone-zstd clone-lolhtml clone-cares clone-libdeflate clone-libarchive clone-tinycc clone-zlib clone-lshpack clone-brotli clone-highway clone-hdrhistogram clone-picohttpparser || true && \ - rm -rf build/release/CMakeFiles build/release/CMakeCache.txt build/release/cmake_install.cmake build/release/build.ninja build/release/compile_commands.json && \ rm -rf node_modules COPY ../*/agent.mjs /var/bun/scripts/ diff --git a/scripts/bake-dependencies.sh b/scripts/bake-dependencies.sh index d218b3f466..6798b34091 100755 --- a/scripts/bake-dependencies.sh +++ b/scripts/bake-dependencies.sh @@ -122,10 +122,9 @@ cmake --build "$BUILD_PATH" --target clone-zig clone-boringssl clone-mimalloc cl print "Downloading debug WebKit variant..." cmake $CMAKE_ARGS -DCMAKE_BUILD_TYPE=Debug -B "$BUN_REPO_PATH/build/debug" || true -# Clean up build artifacts but keep downloaded dependencies -print "Cleaning up build artifacts..." -rm -rf "$BUILD_PATH/CMakeFiles" "$BUILD_PATH/CMakeCache.txt" "$BUILD_PATH/cmake_install.cmake" "$BUILD_PATH/build.ninja" "$BUILD_PATH/compile_commands.json" "$BUILD_PATH/.ninja_deps" "$BUILD_PATH/.ninja_log" -rm -rf "$BUN_REPO_PATH/build/debug/CMakeFiles" "$BUN_REPO_PATH/build/debug/CMakeCache.txt" "$BUN_REPO_PATH/build/debug/build.ninja" 2>/dev/null || true +# Keep cmake/ninja files so subsequent builds don't re-download dependencies +# The ninja build system tracks what's been built - removing these files causes re-downloads +print "Keeping build system files for caching..." # Remove node_modules - will be reinstalled during actual builds print "Removing node_modules..."