aboutsummaryrefslogtreecommitdiffstats
path: root/community/fclones/musl-fix.patch
diff options
context:
space:
mode:
Diffstat (limited to 'community/fclones/musl-fix.patch')
-rw-r--r--community/fclones/musl-fix.patch45
1 files changed, 45 insertions, 0 deletions
diff --git a/community/fclones/musl-fix.patch b/community/fclones/musl-fix.patch
new file mode 100644
index 00000000000..f093736af14
--- /dev/null
+++ b/community/fclones/musl-fix.patch
@@ -0,0 +1,45 @@
+Fix compilation of tests on musl-based systems,
+see: https://github.com/pkolaczk/fclones/issues/95
+
+> Compiling reflink v0.1.3
+> error[E0308]: mismatched types
+> --> /home/mpl/.cargo/registry/src/github.com-1ecc6299db9ec823/reflink-0.1.3/src/sys/unix.rs:21:39
+> |
+> 21 | libc::ioctl(dest.as_raw_fd(), IOCTL_FICLONE, src.as_raw_fd())
+> | ^^^^^^^^^^^^^ expected `i32`, found `u64`
+> |
+> help: you can convert a `u64` to an `i32` and panic if the converted value doesn't fit
+> |
+> 21 | libc::ioctl(dest.as_raw_fd(), IOCTL_FICLONE.try_into().unwrap(), src.as_raw_fd())
+> | ++++++++++++++++++++
+>
+> For more information about this error, try `rustc --explain E0308`.
+> error: could not compile `reflink` due to previous error
+
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1166,8 +1166,7 @@ dependencies = [
+ [[package]]
+ name = "reflink"
+ version = "0.1.3"
+-source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "bc585ec28b565b4c28977ce8363a6636cedc280351ba25a7915f6c9f37f68cbe"
++source = "git+https://github.com/nicokoch/reflink.git?rev=e8d93b465f5d9ad340cd052b64bbc77b8ee107e2#e8d93b465f5d9ad340cd052b64bbc77b8ee107e2"
+ dependencies = [
+ "libc",
+ "winapi",
+--- a/fclones/Cargo.toml
++++ b/fclones/Cargo.toml
+@@ -81,10 +81,10 @@ winapi = "0.3"
+ winapi-util = "0.1"
+
+ [target.'cfg(not(any(target_os = "linux", target_os = "android")))'.dependencies]
+-reflink = "0.1"
++reflink = { git = "https://github.com/nicokoch/reflink.git", rev = "e8d93b465f5d9ad340cd052b64bbc77b8ee107e2" }
+
+ [dev-dependencies]
+ assert_matches = "1.5"
+-reflink = "0.1"
++reflink = { git = "https://github.com/nicokoch/reflink.git", rev = "e8d93b465f5d9ad340cd052b64bbc77b8ee107e2" }
+ serde_test = "1.0"
+ tempfile = "3"