[llvm] [CI] Save All .ninja_log Files (PR #163485)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Oct 14 18:36:04 PDT 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-infrastructure
Author: Aiden Grossman (boomanaiden154)
<details>
<summary>Changes</summary>
We currently only save the .ninja_log from the last ninja invocation because ninja overwrites any existing .ninja_log file. This prevents us from easily doing performance introspection of earlier ninja invocations (which take the bulk of the time) using the .ninja_log file.
---
Full diff: https://github.com/llvm/llvm-project/pull/163485.diff
3 Files Affected:
- (modified) .ci/monolithic-linux.sh (+4)
- (modified) .ci/monolithic-windows.sh (+2)
- (modified) .ci/utils.sh (+1-1)
``````````diff
diff --git a/.ci/monolithic-linux.sh b/.ci/monolithic-linux.sh
index c8f331204bd49..6460d9bf44e1b 100755
--- a/.ci/monolithic-linux.sh
+++ b/.ci/monolithic-linux.sh
@@ -66,11 +66,13 @@ start-group "ninja"
# Targets are not escaped as they are passed as separate arguments.
ninja -C "${BUILD_DIR}" -k 0 ${targets} |& tee ninja.log
+cp .ninja_log ninja.ninja_log
if [[ "${runtime_targets}" != "" ]]; then
start-group "ninja Runtimes"
ninja -C "${BUILD_DIR}" ${runtime_targets} |& tee ninja_runtimes.log
+ cp .ninja_log ninja_runtimes.ninja_log
fi
# Compiling runtimes with just-built Clang and running their tests
@@ -87,6 +89,7 @@ if [[ "${runtime_targets_needs_reconfig}" != "" ]]; then
ninja -C "${BUILD_DIR}" ${runtime_targets_needs_reconfig} \
|& tee ninja_runtimes_needs_reconfig1.log
+ cp .ninja_log ninja_runtimes_needs_reconig.ninja_log
start-group "CMake Runtimes Clang Modules"
@@ -99,4 +102,5 @@ if [[ "${runtime_targets_needs_reconfig}" != "" ]]; then
ninja -C "${BUILD_DIR}" ${runtime_targets_needs_reconfig} \
|& tee ninja_runtimes_needs_reconfig2.log
+ cp .ninja_log ninja_runtimes_needs_reconfig2.ninja_log
fi
diff --git a/.ci/monolithic-windows.sh b/.ci/monolithic-windows.sh
index f85d6e3d51b57..0f9783dc09d8f 100755
--- a/.ci/monolithic-windows.sh
+++ b/.ci/monolithic-windows.sh
@@ -55,9 +55,11 @@ start-group "ninja"
# Targets are not escaped as they are passed as separate arguments.
ninja -C "${BUILD_DIR}" -k 0 ${targets} |& tee ninja.log
+cp .ninja_log ninja.ninja_log
if [[ "${runtime_targets}" != "" ]]; then
start-group "ninja runtimes"
ninja -C "${BUILD_DIR}" -k 0 ${runtimes_targets} |& tee ninja_runtimes.log
+ cp .ninja_log ninja_runtimes.ninja_log
fi
diff --git a/.ci/utils.sh b/.ci/utils.sh
index 5d32968babb39..1ac3e53017966 100644
--- a/.ci/utils.sh
+++ b/.ci/utils.sh
@@ -26,7 +26,7 @@ function at-exit {
mkdir -p artifacts
sccache --show-stats
sccache --show-stats >> artifacts/sccache_stats.txt
- cp "${BUILD_DIR}"/.ninja_log artifacts/.ninja_log
+ cp "${BUILD_DIR}"/*.ninja_log artifacts/ || :
cp "${MONOREPO_ROOT}"/*.log artifacts/ || :
cp "${BUILD_DIR}"/test-results.*.xml artifacts/ || :
``````````
</details>
https://github.com/llvm/llvm-project/pull/163485
More information about the llvm-commits
mailing list