[all-commits] [llvm/llvm-project] fb0376: [test][bazel][libc] Allow LLVM-libc tests to be ru...

Jackson Stogel via All-commits all-commits at lists.llvm.org
Tue Sep 15 14:29:59 PDT 2026


  Branch: refs/heads/users/jtstogel/full-build/full-build-tests
  Home:   https://github.com/llvm/llvm-project
  Commit: fb037684f33e63d8e7f0da4ea8b0a09360e3b0bb
      https://github.com/llvm/llvm-project/commit/fb037684f33e63d8e7f0da4ea8b0a09360e3b0bb
  Author: jtstogel <jtstogel at gmail.com>
  Date:   2026-09-15 (Tue, 15 Sep 2026)

  Changed paths:
    M libc/test/UnitTest/BazelFilePath.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/startup/linux/startup_rules.bzl
    M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/libc_test_rules.bzl

  Log Message:
  -----------
  [test][bazel][libc] Allow LLVM-libc tests to be run in full-build mode

This PR makes the required changes to run LLVM-libc full build tests in Bazel. After this PR, most tests pass:

```
bazel test @llvm-project//libc/test/... --config=ci -- at llvm-project//libc:build_mode=full --keep_going
Executed 680 out of 853 tests: 681 tests pass and 172 fail to build.
```

Follow on PRs will fix specific tests that are failing (lots of missing deps etc).

This PR mostly involves propagating the correct dependencies and compiler/linker options from [`add_libc_hermetic`](https://github.com/llvm/llvm-project/blob/4098f568c46e06b6df470111868b4c165dd80f4d/libc/cmake/modules/LLVMLibCTestRules.cmake#L750). Slightly more involved changes:
- `BazelFilePath.cpp` also had to be fixed so that it doesn't depend on the non-namespaced `getenv` function. This PR models after https://github.com/llvm/llvm-project/commit/ee407f7e7069cccfdc1815de07e17cebf83d19f9 in order to conditionally use LLVM-libc's getenv under full-build mode.
- All tests have a dependency against `crt1.o` when run under full-build. This PR updates `merge_relocatable_object` so it also exposes a `CcInfo` with the merged object file and its transitive deps. In order to do so, this PR also makes the logic a little more careful about PIC vs non-PIC deps.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list