diff --git a/Cargo.lock b/Cargo.lock index 2829247cbd..888506b09e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3984,10 +3984,8 @@ dependencies = [ "block", "byteorder", "bytes 1.5.0", - "cocoa", "collections", "core-foundation", - "core-graphics 0.22.3", "foreign-types 0.3.2", "futures 0.3.28", "gpui", @@ -3997,7 +3995,6 @@ dependencies = [ "log", "media", "nanoid", - "objc", "parking_lot 0.11.2", "postage", "serde", diff --git a/crates/fsevent/Cargo.toml b/crates/fsevent/Cargo.toml index 065c97c644..a684fca867 100644 --- a/crates/fsevent/Cargo.toml +++ b/crates/fsevent/Cargo.toml @@ -12,9 +12,11 @@ doctest = false [dependencies] bitflags = "1" -fsevent-sys = "3.0.2" parking_lot.workspace = true +[target.'cfg(target_os = "macos")'.dependencies] +fsevent-sys = "3.0.2" + [dev-dependencies] tempfile.workspace = true diff --git a/crates/fsevent/examples/events.rs b/crates/fsevent/examples/events.rs index 43678dd6d6..bae9e73425 100644 --- a/crates/fsevent/examples/events.rs +++ b/crates/fsevent/examples/events.rs @@ -1,10 +1,12 @@ -use fsevent::EventStream; -use std::{env::args, path::Path, time::Duration}; - +#[cfg(target_os = "macos")] fn main() { + use fsevent::EventStream; + use std::{env::args, path::Path, time::Duration}; + let paths = args().skip(1).collect::>(); let paths = paths.iter().map(Path::new).collect::>(); assert!(!paths.is_empty(), "Must pass 1 or more paths as arguments"); + let (stream, _handle) = EventStream::new(&paths, Duration::from_millis(100)); stream.run(|events| { eprintln!("event batch"); @@ -14,3 +16,8 @@ fn main() { true }); } + +#[cfg(not(target_os = "macos"))] +fn main() { + eprintln!("This example only works on macOS"); +} diff --git a/crates/live_kit_client/Cargo.toml b/crates/live_kit_client/Cargo.toml index 65fa9352ac..8eb79c3a89 100644 --- a/crates/live_kit_client/Cargo.toml +++ b/crates/live_kit_client/Cargo.toml @@ -31,8 +31,6 @@ media = { path = "../media" } anyhow.workspace = true async-broadcast = "0.4" -core-foundation = "0.9.3" -core-graphics = "0.22.3" futures.workspace = true log.workspace = true parking_lot.workspace = true @@ -41,6 +39,9 @@ postage.workspace = true async-trait = { workspace = true, optional = true } nanoid = { version ="0.4", optional = true} +[target.'cfg(target_os = "macos")'.dependencies] +core-foundation = "0.9.3" + [dev-dependencies] collections = { path = "../collections", features = ["test-support"] } gpui = { path = "../gpui", features = ["test-support"] } @@ -53,14 +54,10 @@ async-trait.workspace = true block = "0.1" bytes = "1.2" byteorder = "1.4" -cocoa = "0.25" -core-foundation = "0.9.3" -core-graphics = "0.22.3" foreign-types = "0.3" futures.workspace = true hmac = "0.12" jwt = "0.16" -objc = "0.2" parking_lot.workspace = true serde.workspace = true serde_derive.workspace = true diff --git a/crates/live_kit_client/build.rs b/crates/live_kit_client/build.rs index 3f67bfc156..53aad4181b 100644 --- a/crates/live_kit_client/build.rs +++ b/crates/live_kit_client/build.rs @@ -35,7 +35,10 @@ pub struct SwiftTarget { const MACOS_TARGET_VERSION: &str = "10.15.7"; fn main() { - if cfg!(not(any(test, feature = "test-support"))) { + if cfg!(all( + target_os = "macos", + not(any(test, feature = "test-support")) + )) { let swift_target = get_swift_target(); build_bridge(&swift_target); diff --git a/crates/media/Cargo.toml b/crates/media/Cargo.toml index 225eca0ff8..a4916a86d5 100644 --- a/crates/media/Cargo.toml +++ b/crates/media/Cargo.toml @@ -14,10 +14,12 @@ doctest = false anyhow.workspace = true block = "0.1" bytes = "1.2" -core-foundation = "0.9.3" foreign-types = "0.3" -metal = "0.21.0" + +[target.'cfg(target_os = "macos")'.dependencies] +core-foundation = "0.9.3" objc = "0.2" +metal = "0.21.0" [build-dependencies] bindgen = "0.65.1"