cp: disable unsupported reflink mode in freebsd builds (#14677)

Fixes #12627

# User-Facing Changes

Under FreeBSD, `cp` no longer errors with "--reflink is only supported
on
linux and macOS".

# Tests

The `commands::ucp` tests now pass on a FreeBSD 14.2 machine with ZFS.
This commit is contained in:
Solomon
2024-12-26 06:56:42 -07:00
committed by GitHub
parent 0a0475ebad
commit 38694a9850
2 changed files with 9 additions and 13 deletions

View File

@ -142,19 +142,9 @@ impl Command for UCp {
} else {
uu_cp::OverwriteMode::Clobber(uu_cp::ClobberMode::Standard)
};
#[cfg(any(
target_os = "linux",
target_os = "freebsd",
target_os = "android",
target_os = "macos"
))]
#[cfg(any(target_os = "linux", target_os = "android", target_os = "macos"))]
let reflink_mode = uu_cp::ReflinkMode::Auto;
#[cfg(not(any(
target_os = "linux",
target_os = "freebsd",
target_os = "android",
target_os = "macos"
)))]
#[cfg(not(any(target_os = "linux", target_os = "android", target_os = "macos")))]
let reflink_mode = uu_cp::ReflinkMode::Never;
let mut paths = call.rest::<Spanned<NuGlob>>(engine_state, stack, 0)?;
if paths.is_empty() {