summaryrefslogtreecommitdiffstats
path: root/third_party/rust/midir/src/backend/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/midir/src/backend/mod.rs')
-rw-r--r--third_party/rust/midir/src/backend/mod.rs22
1 files changed, 22 insertions, 0 deletions
diff --git a/third_party/rust/midir/src/backend/mod.rs b/third_party/rust/midir/src/backend/mod.rs
new file mode 100644
index 0000000000..2940daeeff
--- /dev/null
+++ b/third_party/rust/midir/src/backend/mod.rs
@@ -0,0 +1,22 @@
+// This module is not public
+
+// TODO: improve feature selection (make sure that there is always exactly one implementation, or enable dynamic backend selection)
+// TODO: allow to disable build dependency on ALSA
+
+#[cfg(all(target_os="windows", not(feature = "winrt")))] mod winmm;
+#[cfg(all(target_os="windows", not(feature = "winrt")))] pub use self::winmm::*;
+
+#[cfg(all(target_os="windows", feature = "winrt"))] mod winrt;
+#[cfg(all(target_os="windows", feature = "winrt"))] pub use self::winrt::*;
+
+#[cfg(all(target_os="macos", not(feature = "jack")))] mod coremidi;
+#[cfg(all(target_os="macos", not(feature = "jack")))] pub use self::coremidi::*;
+
+#[cfg(all(target_os="linux", not(feature = "jack")))] mod alsa;
+#[cfg(all(target_os="linux", not(feature = "jack")))] pub use self::alsa::*;
+
+#[cfg(all(feature = "jack", not(target_os="windows")))] mod jack;
+#[cfg(all(feature = "jack", not(target_os="windows")))] pub use self::jack::*;
+
+#[cfg(target_arch="wasm32")] mod webmidi;
+#[cfg(target_arch="wasm32")] pub use self::webmidi::*;