Don't use fd-lock on Solaris in bootstrap
...as Solaris is missing flock() fixes #103630
This commit is contained in:
parent
64165aac68
commit
04dfedb3e9
3 changed files with 15 additions and 8 deletions
|
|
@ -7,15 +7,18 @@
|
|||
|
||||
use std::env;
|
||||
|
||||
use bootstrap::{t, Build, Config, Subcommand, VERSION};
|
||||
#[cfg(all(any(unix, windows), not(target_os = "solaris")))]
|
||||
use bootstrap::t;
|
||||
use bootstrap::{Build, Config, Subcommand, VERSION};
|
||||
|
||||
fn main() {
|
||||
let args = env::args().skip(1).collect::<Vec<_>>();
|
||||
let config = Config::parse(&args);
|
||||
|
||||
let mut build_lock;
|
||||
let _build_lock_guard;
|
||||
if cfg!(any(unix, windows)) {
|
||||
#[cfg(all(any(unix, windows), not(target_os = "solaris")))]
|
||||
{
|
||||
let mut build_lock;
|
||||
let _build_lock_guard;
|
||||
let path = config.out.join("lock");
|
||||
build_lock = fd_lock::RwLock::new(t!(std::fs::File::create(&path)));
|
||||
_build_lock_guard = match build_lock.try_write() {
|
||||
|
|
@ -30,9 +33,9 @@ fn main() {
|
|||
t!(build_lock.write())
|
||||
}
|
||||
};
|
||||
} else {
|
||||
println!("warning: file locking not supported for target, not locking build directory");
|
||||
}
|
||||
#[cfg(any(not(any(unix, windows)), target_os = "solaris"))]
|
||||
println!("warning: file locking not supported for target, not locking build directory");
|
||||
|
||||
// check_version warnings are not printed during setup
|
||||
let changelog_suggestion =
|
||||
|
|
@ -125,7 +128,7 @@ fn get_lock_owner(f: &std::path::Path) -> Option<u64> {
|
|||
})
|
||||
}
|
||||
|
||||
#[cfg(not(target_os = "linux"))]
|
||||
#[cfg(not(any(target_os = "linux", target_os = "solaris")))]
|
||||
fn get_lock_owner(_: &std::path::Path) -> Option<u64> {
|
||||
// FIXME: Implement on other OS's
|
||||
None
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue