26 glibc = "${glibc.dev}/include";
27 clang = let libc = llvmPackages.libclang; in
28 "${libc.lib}/lib/clang/${libc.version}/include";
29 urcu = "${liburcu}/include";
30 zstd = "${zstd.dev}/include";
32 cargo = lib.trivial.importTOML ./Cargo.toml;
33 in rustPlatform.buildRustPackage {
34 pname = cargo.package.name;
35 version = cargo.package.version;
37 src = builtins.path { path = ./.; name = "bch_bindgen"; };
39 cargoLock = { lockFile = ./Cargo.lock; };
41 nativeBuildInputs = [ rustfmt pkg-config ];
45 keyutils # libkeyutils
57 LIBBCACHEFS_LIB ="${bcachefs.tools}/lib";
58 LIBBCACHEFS_INCLUDE = bcachefs.tools.src;
59 LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
60 BINDGEN_EXTRA_CLANG_ARGS = lib.replaceStrings ["\n" "\t"] [" " ""] ''
69 cp ${./Cargo.lock} Cargo.lock