1b279d4d10
Lua CI / lua-language-server type check (push) Failing after 1s
Lua CI / luacheck lint (push) Failing after 1s
Python CI / Python bindings (ubuntu-latest) (push) Failing after 1s
Build & Publish / Build Neovim aarch64-linux-android (push) Failing after 3s
Build & Publish / Build Neovim aarch64-unknown-linux-gnu (push) Failing after 0s
Build & Publish / Build Neovim aarch64-unknown-linux-musl (push) Failing after 1s
Build & Publish / Build Neovim x86_64-unknown-linux-gnu (push) Failing after 1s
Build & Publish / Build Neovim x86_64-unknown-linux-musl (push) Failing after 1s
Build & Publish / Build C FFI aarch64-linux-android (push) Failing after 1s
Build & Publish / Build C FFI aarch64-unknown-linux-gnu (push) Failing after 1s
Build & Publish / Build C FFI aarch64-unknown-linux-musl (push) Failing after 0s
Build & Publish / Build C FFI x86_64-unknown-linux-gnu (push) Failing after 1s
Build & Publish / Build C FFI x86_64-unknown-linux-musl (push) Failing after 3s
Build & Publish / Build MCP aarch64-unknown-linux-gnu (push) Failing after 1s
Build & Publish / Build MCP aarch64-unknown-linux-musl (push) Failing after 0s
Build & Publish / Build MCP x86_64-unknown-linux-gnu (push) Failing after 2s
Rust CI / Fuzz Tests (ubuntu-latest) (push) Failing after 1s
Rust CI / Build i686-unknown-linux-gnu (push) Failing after 1s
Rust CI / cargo fmt (push) Failing after 1s
Build & Publish / Build MCP x86_64-unknown-linux-musl (push) Failing after 4s
Build & Publish / Build Python wheels aarch64 (ubuntu-latest) (push) Failing after 1s
Build & Publish / Build Python wheels x86_64 (ubuntu-latest) (push) Failing after 1s
Build & Publish / Build Python sdist (push) Failing after 0s
Rust CI / Test (ubuntu-latest) (push) Failing after 1s
Rust CI / cargo clippy (push) Failing after 1s
Spelling / Spell Check with Typos (push) Failing after 1s
Stylua / Check lua files using Stylua (push) Failing after 1s
e2e Tests / e2e (ubuntu-latest) (push) Failing after 4s
e2e Tests / e2e (alpine-musl) (push) Successful in 58m54s
Build & Publish / Build C FFI aarch64-apple-darwin (push) Has been cancelled
Build & Publish / Build C FFI aarch64-pc-windows-msvc (push) Has been cancelled
Build & Publish / Build C FFI x86_64-apple-darwin (push) Has been cancelled
Build & Publish / Build C FFI x86_64-pc-windows-msvc (push) Has been cancelled
e2e Tests / e2e (macos-latest) (push) Has been cancelled
e2e Tests / e2e (windows-latest) (push) Has been cancelled
Nix CI / check (push) Has been cancelled
Python CI / Python bindings (macos-latest) (push) Has been cancelled
Python CI / Python bindings (windows-latest) (push) Has been cancelled
Build & Publish / Build Neovim aarch64-apple-darwin (push) Has been cancelled
Build & Publish / Build Neovim aarch64-pc-windows-msvc (push) Has been cancelled
Build & Publish / Build Neovim x86_64-apple-darwin (push) Has been cancelled
Build & Publish / Build Neovim x86_64-pc-windows-msvc (push) Has been cancelled
Build & Publish / Build MCP aarch64-apple-darwin (push) Has been cancelled
Build & Publish / Build MCP aarch64-pc-windows-msvc (push) Has been cancelled
Build & Publish / Build MCP x86_64-apple-darwin (push) Has been cancelled
Build & Publish / Build MCP x86_64-pc-windows-msvc (push) Has been cancelled
Build & Publish / Build Python wheels aarch64 (macos-latest) (push) Has been cancelled
Build & Publish / Build Python wheels x86_64 (macos-latest) (push) Has been cancelled
Build & Publish / Build Python wheels x86_64 (windows-latest) (push) Has been cancelled
Build & Publish / Release (push) Has been cancelled
Build & Publish / Publish Python wheels to PyPI (push) Has been cancelled
Build & Publish / Publish Rust crates (push) Has been cancelled
Build & Publish / Publish npm packages (push) Has been cancelled
Rust CI / Test (macos-latest) (push) Has been cancelled
Rust CI / Test (windows-latest) (push) Has been cancelled
Rust CI / Fuzz Tests (macos-latest) (push) Has been cancelled
Rust CI / Fuzz Tests (windows-latest) (push) Has been cancelled
46 lines
1.9 KiB
Rust
46 lines
1.9 KiB
Rust
fn main() {
|
|
// Opt-in cfg for the long-running randomized stress tests
|
|
// used by tests/fuzz_git_watcher_stress.rs
|
|
println!("cargo::rustc-check-cfg=cfg(stress)");
|
|
|
|
// When the `zlob` feature is enabled (Zig-compiled C library):
|
|
// On Windows MSVC, explicitly link the C runtime libraries.
|
|
// Zig-compiled static libraries don't emit /DEFAULTLIB directives for the
|
|
// MSVC CRT, so symbols like strcmp, memcpy etc. would be unresolved.
|
|
if std::env::var("CARGO_FEATURE_ZLOB").is_ok() {
|
|
if !zig_available() {
|
|
panic!(
|
|
"The `zlob` feature is enabled but Zig is not installed. \
|
|
Install Zig (https://ziglang.org/download/) or build without \
|
|
`--features zlob`."
|
|
);
|
|
}
|
|
|
|
let target = std::env::var("TARGET").unwrap_or_default();
|
|
if target.contains("windows") && target.contains("msvc") {
|
|
println!("cargo:rustc-link-lib=msvcrt");
|
|
println!("cargo:rustc-link-lib=ucrt");
|
|
println!("cargo:rustc-link-lib=vcruntime");
|
|
}
|
|
} else if std::env::var("CARGO_PRIMARY_PACKAGE").is_ok() && zig_available() {
|
|
// Hint: if Zig is available but the zlob feature wasn't enabled,
|
|
// let the developer know they can get faster glob matching.
|
|
// Only emit this hint when this crate is the primary package to
|
|
// avoid noisy warnings for downstream consumers.
|
|
println!(
|
|
"cargo:warning=Zig detected but `zlob` feature is not enabled. \
|
|
Build with `--features zlob` for faster glob matching."
|
|
);
|
|
}
|
|
}
|
|
|
|
/// Probe the system for a working Zig installation.
|
|
fn zig_available() -> bool {
|
|
std::process::Command::new("zig")
|
|
.arg("version")
|
|
.stdout(std::process::Stdio::null())
|
|
.stderr(std::process::Stdio::null())
|
|
.status()
|
|
.is_ok()
|
|
}
|