feat: Added nix build support
This commit is contained in:
16
Cargo.lock
generated
16
Cargo.lock
generated
@@ -1312,7 +1312,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "mnn-bridge"
|
name = "mnn-bridge"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/uttarayan21/mnn-rs?branch=restructure-tensor-type#f972f1eb903d6ae38f1f1c409a01559282f2f036"
|
source = "git+https://github.com/uttarayan21/mnn-rs?branch=restructure-tensor-type#456c53307ff551d8cb8e4e380c7febf7c16ba0ab"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"error-stack",
|
"error-stack",
|
||||||
"mnn",
|
"mnn",
|
||||||
@@ -1322,7 +1322,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "mnn-sync"
|
name = "mnn-sync"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/uttarayan21/mnn-rs?branch=restructure-tensor-type#f972f1eb903d6ae38f1f1c409a01559282f2f036"
|
source = "git+https://github.com/uttarayan21/mnn-rs?branch=restructure-tensor-type#456c53307ff551d8cb8e4e380c7febf7c16ba0ab"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"error-stack",
|
"error-stack",
|
||||||
"flume",
|
"flume",
|
||||||
@@ -1594,6 +1594,8 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "ort"
|
name = "ort"
|
||||||
version = "2.0.0-rc.10"
|
version = "2.0.0-rc.10"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "1fa7e49bd669d32d7bc2a15ec540a527e7764aec722a45467814005725bcd721"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"ndarray",
|
"ndarray",
|
||||||
"ort-sys",
|
"ort-sys",
|
||||||
@@ -1604,6 +1606,8 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "ort-sys"
|
name = "ort-sys"
|
||||||
version = "2.0.0-rc.10"
|
version = "2.0.0-rc.10"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "e2aba9f5c7c479925205799216e7e5d07cc1d4fa76ea8058c60a9a30f6a4e890"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"pkg-config",
|
"pkg-config",
|
||||||
]
|
]
|
||||||
@@ -1692,9 +1696,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "prettyplease"
|
name = "prettyplease"
|
||||||
version = "0.2.36"
|
version = "0.2.37"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "ff24dfcda44452b9816fff4cd4227e1bb73ff5a2f1bc1105aa92fb8565ce44d2"
|
checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"syn",
|
"syn",
|
||||||
@@ -2011,9 +2015,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "serde_json"
|
name = "serde_json"
|
||||||
version = "1.0.142"
|
version = "1.0.143"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "030fedb782600dcbd6f02d479bf0d817ac3bb40d644745b769d6a96bc3afc5a7"
|
checksum = "d401abef1d108fbd9cbaebc3e46611f4b1021f714a0597a71f41ee463f5f4a5a"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"itoa",
|
"itoa",
|
||||||
"memchr",
|
"memchr",
|
||||||
|
|||||||
@@ -7,9 +7,6 @@ edition = "2024"
|
|||||||
|
|
||||||
[patch."https://github.com/uttarayan21/mnn-rs"]
|
[patch."https://github.com/uttarayan21/mnn-rs"]
|
||||||
mnn = { path = "/Users/fs0c131y/Projects/aftershoot/mnn-rs" }
|
mnn = { path = "/Users/fs0c131y/Projects/aftershoot/mnn-rs" }
|
||||||
[patch.crates-io]
|
|
||||||
ort = { path = "/Users/fs0c131y/Projects/ort" }
|
|
||||||
|
|
||||||
|
|
||||||
[workspace.dependencies]
|
[workspace.dependencies]
|
||||||
ndarray-image = { path = "ndarray-image" }
|
ndarray-image = { path = "ndarray-image" }
|
||||||
|
|||||||
26
flake.nix
26
flake.nix
@@ -78,6 +78,14 @@
|
|||||||
craneLib = (crane.mkLib pkgs).overrideToolchain stableToolchain;
|
craneLib = (crane.mkLib pkgs).overrideToolchain stableToolchain;
|
||||||
craneLibLLvmTools = (crane.mkLib pkgs).overrideToolchain stableToolchainWithLLvmTools;
|
craneLibLLvmTools = (crane.mkLib pkgs).overrideToolchain stableToolchainWithLLvmTools;
|
||||||
|
|
||||||
|
ort_static = pkgs.onnxruntime.overrideAttrs (old: {
|
||||||
|
cmakeFlags =
|
||||||
|
old.cmakeFlags
|
||||||
|
++ [
|
||||||
|
"-Donnxruntime_BUILD_SHARED_LIB=OFF"
|
||||||
|
"-Donnxruntime_BUILD_STATIC_LIB=ON"
|
||||||
|
];
|
||||||
|
});
|
||||||
src = let
|
src = let
|
||||||
filterBySuffix = path: exts: lib.any (ext: lib.hasSuffix ext path) exts;
|
filterBySuffix = path: exts: lib.any (ext: lib.hasSuffix ext path) exts;
|
||||||
sourceFilters = path: type:
|
sourceFilters = path: type:
|
||||||
@@ -96,25 +104,16 @@
|
|||||||
filter = sourceFilters;
|
filter = sourceFilters;
|
||||||
src = ./.;
|
src = ./.;
|
||||||
};
|
};
|
||||||
commonArgs = let
|
commonArgs =
|
||||||
ort_static = pkgs.onnxruntime.overrideAttrs (old: {
|
|
||||||
cmakeFlags =
|
|
||||||
old.cmakeFlags
|
|
||||||
++ [
|
|
||||||
"-Donnxruntime_BUILD_SHARED_LIB=OFF"
|
|
||||||
"-Donnxruntime_BUILD_STATIC_LIB=ON"
|
|
||||||
];
|
|
||||||
});
|
|
||||||
in
|
|
||||||
{
|
{
|
||||||
inherit src;
|
inherit src;
|
||||||
pname = name;
|
pname = name;
|
||||||
stdenv = p: p.clangStdenv;
|
stdenv = p: p.clangStdenv;
|
||||||
doCheck = false;
|
doCheck = false;
|
||||||
LIBCLANG_PATH = "${pkgs.llvmPackages.libclang.lib}/lib";
|
LIBCLANG_PATH = "${pkgs.llvmPackages.libclang.lib}/lib";
|
||||||
ORT_LIB_LOCATION = "${ort_static}";
|
ORT_LIB_LOCATION = "${pkgs.onnxruntime}";
|
||||||
ORT_ENV_SYSTEM_LIB_LOCATION = "${ort_static}/lib";
|
ORT_ENV_SYSTEM_LIB_LOCATION = "${pkgs.onnxruntime}/lib";
|
||||||
# ORT_ENV_PREFER_DYNAMIC_LINK = true;
|
ORT_ENV_PREFER_DYNAMIC_LINK = true;
|
||||||
nativeBuildInputs = with pkgs; [
|
nativeBuildInputs = with pkgs; [
|
||||||
cmake
|
cmake
|
||||||
pkg-config
|
pkg-config
|
||||||
@@ -192,6 +191,7 @@
|
|||||||
in {
|
in {
|
||||||
"${name}" = pkg;
|
"${name}" = pkg;
|
||||||
default = pkg;
|
default = pkg;
|
||||||
|
onnxruntime = ort_static;
|
||||||
};
|
};
|
||||||
|
|
||||||
devShells = {
|
devShells = {
|
||||||
|
|||||||
Reference in New Issue
Block a user