flake.nix: rewrite all drvs to use crane + rust-overlay
Build and test / test (push) Successful in 55s
Build and test / check (push) Successful in 1m32s
Run nix flake check / build (push) Successful in 6m10s
Build and test / build-dynamic-library (push) Successful in 50s
Build and test / build-static-library (push) Successful in 55s
Build and test / test (push) Successful in 55s
Build and test / check (push) Successful in 1m32s
Run nix flake check / build (push) Successful in 6m10s
Build and test / build-dynamic-library (push) Successful in 50s
Build and test / build-static-library (push) Successful in 55s
This commit is contained in:
@@ -92,68 +92,17 @@
|
||||
];
|
||||
};
|
||||
|
||||
cargoLock = {
|
||||
lockFile = ./Cargo.lock;
|
||||
};
|
||||
craneLibAndroid = (crane.mkLib androidPkgs).overrideToolchain (p: p.rust-bin.stable.latest.default);
|
||||
|
||||
# cargoLock = {
|
||||
# lockFile = ./Cargo.lock;
|
||||
# };
|
||||
in {
|
||||
default = self.packages.${system}.tamerye-shared-lib-crane;
|
||||
|
||||
tamerye-shared-lib = pkgs.rustPlatform.buildRustPackage {
|
||||
pname = "tamerye-shared-lib";
|
||||
version = cargoToml.package.version;
|
||||
inherit src;
|
||||
|
||||
inherit cargoLock;
|
||||
|
||||
strictDeps = true;
|
||||
doCheck = false;
|
||||
|
||||
nativeBuildInputs = with pkgs; [
|
||||
rustfmt
|
||||
];
|
||||
};
|
||||
|
||||
tamerye-shared-lib-android = androidPkgs.rustPlatform.buildRustPackage {
|
||||
pname = "tamerye-shared-lib-android";
|
||||
version = cargoToml.package.version;
|
||||
inherit src;
|
||||
|
||||
inherit cargoLock;
|
||||
|
||||
strictDeps = true;
|
||||
doCheck = false;
|
||||
|
||||
nativeBuildInputs = with androidPkgs; [
|
||||
rustfmt
|
||||
];
|
||||
};
|
||||
|
||||
tamerye-static-lib-android = androidPkgs.rustPlatform.buildRustPackage {
|
||||
pname = "tamerye-static-lib-android";
|
||||
version = cargoToml.package.version;
|
||||
inherit src;
|
||||
|
||||
inherit cargoLock;
|
||||
|
||||
strictDeps = true;
|
||||
doCheck = false;
|
||||
|
||||
nativeBuildInputs = with androidPkgs; [
|
||||
rustfmt
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
'${lib.getExe pkgs.yq-go}' '.lib.crate-type = [ "staticlib" ]' --inplace Cargo.toml
|
||||
'';
|
||||
|
||||
buildInputs = with pkgs; [
|
||||
sqlite
|
||||
];
|
||||
|
||||
cargoExtraArgs = lib.escapeShellArgs [ "--features" "static" ];
|
||||
};
|
||||
|
||||
tamerye-shared-lib-crane = craneLib.buildPackage {
|
||||
default = self.packages.${system}.tamerye-shared-lib;
|
||||
}
|
||||
//
|
||||
(let
|
||||
buildSharedLib = craneLib': craneLib'.buildPackage {
|
||||
pname = "tamerye-shared-lib";
|
||||
version = cargoToml.package.version;
|
||||
inherit src;
|
||||
@@ -161,13 +110,18 @@
|
||||
strictDeps = true;
|
||||
doCheck = false;
|
||||
|
||||
cargoArtifacts = craneLib.buildDepsOnly {
|
||||
cargoArtifacts = craneLib'.buildDepsOnly {
|
||||
inherit src;
|
||||
strictDeps = true;
|
||||
};
|
||||
};
|
||||
|
||||
tamerye-static-lib-crane = craneLib.buildPackage {
|
||||
in {
|
||||
tamerye-shared-lib = buildSharedLib craneLib;
|
||||
tamerye-shared-lib-android = buildSharedLib craneLibAndroid;
|
||||
})
|
||||
//
|
||||
(let
|
||||
buildStaticLib = craneLib': craneLib'.buildPackage {
|
||||
pname = "tamerye-static-lib";
|
||||
version = cargoToml.package.version;
|
||||
inherit src;
|
||||
@@ -183,7 +137,7 @@
|
||||
sqlite
|
||||
];
|
||||
|
||||
cargoArtifacts = craneLib.buildDepsOnly {
|
||||
cargoArtifacts = craneLib'.buildDepsOnly {
|
||||
inherit src;
|
||||
strictDeps = true;
|
||||
|
||||
@@ -191,11 +145,14 @@
|
||||
sqlite
|
||||
];
|
||||
};
|
||||
|
||||
cargoExtraArgs = lib.escapeShellArgs [ "--features" "static" ];
|
||||
};
|
||||
|
||||
tamerye-tests-crane = craneLib.cargoNextest {
|
||||
in {
|
||||
tamerye-static-lib = buildStaticLib craneLib;
|
||||
tamerye-static-lib-android = buildStaticLib craneLibAndroid;
|
||||
})
|
||||
//
|
||||
{
|
||||
tamerye-tests = craneLib.cargoNextest {
|
||||
pname = "tamerye-tests";
|
||||
version = cargoToml.package.version;
|
||||
inherit src;
|
||||
@@ -229,7 +186,7 @@
|
||||
# ENABLE_COLUMN_METADATA = true;
|
||||
# };
|
||||
extensions = [{
|
||||
library = "${self.packages.${system}.tamerye-static-lib-crane}/lib/libtamerye.a";
|
||||
library = "${self.packages.${system}.tamerye-static-lib}/lib/libtamerye.a";
|
||||
init = "sqlite3_tamerye_init";
|
||||
}];
|
||||
};
|
||||
@@ -243,7 +200,7 @@
|
||||
# ENABLE_COLUMN_METADATA = true;
|
||||
# };
|
||||
extensions = [{
|
||||
library = "${self.packages.${system}.tamerye-static-lib-crane}/lib/libtamerye.a";
|
||||
library = "${self.packages.${system}.tamerye-static-lib}/lib/libtamerye.a";
|
||||
init = "sqlite3_tamerye_init";
|
||||
}];
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user