refactor(tvix): push rarely-used darwin-specific hacks down
Also, make some of them buildInputs, not nativeBuildInputs. We likely need to link against libiconv, so it shouldn't be a native build input. Change-Id: I757bc7f5d8c864ecaa3db26988d00b496c085c8f Reviewed-on: https://cl.tvl.fyi/c/depot/+/9757 Tested-by: BuildkiteCI Reviewed-by: Connor Brewster <cbrewster@hey.com> Autosubmit: flokli <flokli@flokli.de>
This commit is contained in:
parent
6aa8a1a8ea
commit
5ce1a03a3a
1 changed files with 10 additions and 8 deletions
|
@ -4,9 +4,7 @@
|
|||
let
|
||||
# crate override for crates that need protobuf
|
||||
protobufDep = prev: (prev.nativeBuildInputs or [ ]) ++ [ pkgs.protobuf ];
|
||||
iconvDarwinDep = lib.optionals pkgs.stdenv.isDarwin [ pkgs.libiconv ];
|
||||
# fuse-backend-rs uses DiskArbitration framework to handle mount/unmount on Darwin
|
||||
diskArbitrationDep = lib.optionals pkgs.stdenv.isDarwin [ pkgs.buildPackages.darwin.apple_sdk.frameworks.DiskArbitration ];
|
||||
iconvDarwinDep = lib.optional pkgs.stdenv.isDarwin pkgs.libiconv;
|
||||
|
||||
# Load the crate2nix crate tree.
|
||||
crates = import ./Cargo.nix {
|
||||
|
@ -27,7 +25,8 @@ let
|
|||
|
||||
defaultCrateOverrides = pkgs.defaultCrateOverrides // {
|
||||
zstd-sys = prev: {
|
||||
nativeBuildInputs = prev.nativeBuildInputs or [ ] ++ iconvDarwinDep;
|
||||
nativeBuildInputs = prev.nativeBuildInputs or [ ];
|
||||
buildInputs = prev.buildInputs or [ ] ++ iconvDarwinDep;
|
||||
};
|
||||
|
||||
prost-build = prev: {
|
||||
|
@ -46,7 +45,9 @@ let
|
|||
tvix-store = prev: {
|
||||
PROTO_ROOT = depot.tvix.proto;
|
||||
nativeBuildInputs = protobufDep prev;
|
||||
buildInputs = prev.buildInputs or [ ] ++ diskArbitrationDep;
|
||||
# fuse-backend-rs uses DiskArbitration framework to handle mount/unmount on Darwin
|
||||
buildInputs = prev.buildInputs or [ ]
|
||||
++ lib.optional pkgs.stdenv.isDarwin pkgs.buildPackages.darwin.apple_sdk.frameworks.DiskArbitration;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
@ -118,15 +119,16 @@ in
|
|||
src = depot.third_party.gitignoreSource ./.;
|
||||
PROTO_ROOT = depot.tvix.proto;
|
||||
|
||||
buildInputs = [
|
||||
pkgs.fuse
|
||||
];
|
||||
nativeBuildInputs = with pkgs; [
|
||||
cargo
|
||||
pkg-config
|
||||
protobuf
|
||||
rustc
|
||||
rustPlatform.cargoSetupHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
pkgs.fuse
|
||||
] ++ iconvDarwinDep;
|
||||
|
||||
buildPhase = ''
|
||||
|
|
Loading…
Reference in a new issue