diff --git a/Cargo.lock b/Cargo.lock index 73dc841..3f587b9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2161,6 +2161,13 @@ dependencies = [ "serdeconv", ] +[[package]] +name = "tabby-coreml" +version = "0.1.0" +dependencies = [ + "cc", +] + [[package]] name = "tar" version = "0.4.38" diff --git a/crates/tabby-coreml/Cargo.toml b/crates/tabby-coreml/Cargo.toml index 3e42622..78b98b3 100644 --- a/crates/tabby-coreml/Cargo.toml +++ b/crates/tabby-coreml/Cargo.toml @@ -6,3 +6,6 @@ edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] + +[build-dependencies] +cc = "1.0" diff --git a/crates/tabby-coreml/build.rs b/crates/tabby-coreml/build.rs new file mode 100644 index 0000000..babe9a8 --- /dev/null +++ b/crates/tabby-coreml/build.rs @@ -0,0 +1,5 @@ +fn main() { + cc::Build::new() + .file("cc/lib.mm") + .compile("tabby-coreml"); +} diff --git a/crates/tabby-coreml/cc/lib.mm b/crates/tabby-coreml/cc/lib.mm new file mode 100644 index 0000000..1ce164b --- /dev/null +++ b/crates/tabby-coreml/cc/lib.mm @@ -0,0 +1,8 @@ +#import +#import + +int main() { + NSURL *modelUrl = [NSURL URLWithString: @"./Model.mlpackage"]; + MLModel *model = [MLModel modelWithContentsOfURL:modelUrl error:nil]; + return 0; +} diff --git a/crates/tabby-coreml/src/lib.rs b/crates/tabby-coreml/src/lib.rs index 7d12d9a..e69de29 100644 --- a/crates/tabby-coreml/src/lib.rs +++ b/crates/tabby-coreml/src/lib.rs @@ -1,14 +0,0 @@ -pub fn add(left: usize, right: usize) -> usize { - left + right -} - -#[cfg(test)] -mod tests { - use super::*; - - #[test] - fn it_works() { - let result = add(2, 2); - assert_eq!(result, 4); - } -}