diff options
| author | Zalathar <Zalathar@users.noreply.github.com> | 2024-08-20 15:57:16 +1000 |
|---|---|---|
| committer | Zalathar <Zalathar@users.noreply.github.com> | 2024-08-23 10:10:34 +1000 |
| commit | 585804fceeeb0f95fc18fbd4a072dfc9c63bee14 (patch) | |
| tree | 140bbf95ec9406e242d77b77acb06d5a2a44847e | |
| parent | eff09483c67e6fc96c8098ba46dce476162754c5 (diff) | |
| download | rust-585804fceeeb0f95fc18fbd4a072dfc9c63bee14.tar.gz rust-585804fceeeb0f95fc18fbd4a072dfc9c63bee14.zip | |
Check that `library/profiler_builtins` actually found some source files
The current `build.rs` will automatically skip source files that don't exist. An unfortunate side-effect is that if _no_ files could be found (e.g. because the directory was wrong), the build fails with a mysterious linker error. We can reduce the awkwardness of this by explicitly checking that at least one source file was found.
| -rw-r--r-- | library/profiler_builtins/build.rs | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/library/profiler_builtins/build.rs b/library/profiler_builtins/build.rs index 9d1c1ba305b..177b027e4f1 100644 --- a/library/profiler_builtins/build.rs +++ b/library/profiler_builtins/build.rs @@ -84,12 +84,16 @@ fn main() { let root = Path::new("../../src/llvm-project/compiler-rt"); let src_root = root.join("lib").join("profile"); + assert!(src_root.exists(), "profiler runtime source directory not found: {src_root:?}"); + let mut n_sources_found = 0u32; for src in profile_sources { let path = src_root.join(src); if path.exists() { cfg.file(path); + n_sources_found += 1; } } + assert!(n_sources_found > 0, "couldn't find any profiler runtime source files in {src_root:?}"); cfg.include(root.join("include")); cfg.warnings(false); |
