mirror of
https://gitlab.computer.surgery/matrix/grapevine.git
synced 2025-12-17 07:41:23 +01:00
update flake.lock
And some supporting changes: * crane: It removed its dependency on nixpkgs and made overrideToolchain take a function for splicing reasons, but we're doing splicing ourselves so we can just ignore the function argument. These changes are in `flake.nix`. * [NixOS/nixpkgs#347228][0]: linkerFor* were removed because the linker no longer needs to be different in some edge cases. Based on the diff of the PR that introduced this change, ccFor* are the proper replacements. These changes are in `cross-compilation-env.nix` in the compiler-and-linker-choosing section. * [NixOS/nixpkgs#350299][1]: buildPlatform isn't at the top level anymore, we have to go through stdenv now. These changes are in `nix/shell.nix`. * rocksdb: nixpkgs has 9.6.1 now so we need to upgrade our rust library to use the matching version. These changes are in `Cargo.toml`, `Cargo.lock`, `nix/pkgs/default/default.nix`, and `cross-compilation-env.nix` in the linker flags section. [0]: https://github.com/NixOS/nixpkgs/pull/347228 [1]: https://github.com/NixOS/nixpkgs/pull/350299 Flake lock file updates: • Updated input 'attic': 'github:zhaofengli/attic/4dbdbee45728d8ce5788db6461aaaa89d98081f0' (2024-03-29) → 'github:zhaofengli/attic/48c8b395bfbc6b76c7eae74df6c74351255a095c' (2024-10-30) • Updated input 'attic/crane': 'github:ipetkov/crane/7195c00c272fdd92fc74e7d5a0a2844b9fadb2fb' (2023-12-18) → 'github:ipetkov/crane/4c6c77920b8d44cd6660c1621dea6b3fc4b4c4f4' (2024-08-06) • Updated input 'attic/flake-compat': 'github:edolstra/flake-compat/35bb57c0c8d8b62bbfd284272c928ceb64ddbde9' (2023-01-17) → 'github:edolstra/flake-compat/0f9255e01c2351cc7d116c072cb317785dd33b33' (2023-10-04) • Added input 'attic/flake-parts': 'github:hercules-ci/flake-parts/8471fe90ad337a8074e957b69ca4d0089218391d' (2024-08-01) • Added input 'attic/flake-parts/nixpkgs-lib': follows 'attic/nixpkgs' • Removed input 'attic/flake-utils' • Updated input 'attic/nixpkgs': 'github:NixOS/nixpkgs/07262b18b97000d16a4bdb003418bd2fb067a932' (2024-03-25) → 'github:NixOS/nixpkgs/159be5db480d1df880a0135ca0bfed84c2f88353' (2024-09-11) • Updated input 'attic/nixpkgs-stable': 'github:NixOS/nixpkgs/44733514b72e732bd49f5511bd0203dea9b9a434' (2024-03-26) → 'github:NixOS/nixpkgs/797f7dc49e0bc7fab4b57c021cdf68f595e47841' (2024-08-22) • Added input 'attic/nix-github-actions': 'github:nix-community/nix-github-actions/e04df33f62cdcf93d73e9a04142464753a16db67' (2024-10-24) • Added input 'attic/nix-github-actions/nixpkgs': follows 'attic/nixpkgs' • Updated input 'crane': 'github:ipetkov/crane/109987da061a1bf452f435f1653c47511587d919' (2024-05-24) → 'github:ipetkov/crane/498d9f122c413ee1154e8131ace5a35a80d8fa76' (2024-10-27) • Removed input 'crane/nixpkgs' • Updated input 'fenix': 'github:nix-community/fenix/b6fc5035b28e36a98370d0eac44f4ef3fd323df6' (2024-05-22) → 'github:nix-community/fenix/87b4d20f896c99018dde4702a9c6157b516f2a76' (2024-11-01) • Updated input 'fenix/rust-analyzer-src': 'github:rust-lang/rust-analyzer/21ec8f523812b88418b2bfc64240c62b3dd967bd' (2024-05-19) → 'github:rust-lang/rust-analyzer/0ba893e1a00d92557ac91efb771d72eee36ca687' (2024-10-31) • Updated input 'flake-utils': 'github:numtide/flake-utils/b1d9ab70662946ef0850d488da1c9019f3a9752a' (2024-03-11) → 'github:numtide/flake-utils/c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a' (2024-09-17) • Updated input 'nix-filter': 'github:numtide/nix-filter/3342559a24e85fc164b295c3444e8a139924675b' (2024-03-11) → 'github:numtide/nix-filter/776e68c1d014c3adde193a18db9d738458cd2ba4' (2024-10-29) • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/5710852ba686cc1fd0d3b8e22b3117d43ba374c2' (2024-05-21) → 'github:NixOS/nixpkgs/807e9154dcb16384b1b765ebe9cd2bba2ac287fd' (2024-10-29)
This commit is contained in:
parent
d42a5ec1f0
commit
f07c8c2b6f
7 changed files with 102 additions and 81 deletions
|
|
@ -1,6 +1,8 @@
|
|||
# Keep sorted
|
||||
{ lib
|
||||
, pkgsBuildHost
|
||||
, rust
|
||||
, snappy
|
||||
, stdenv
|
||||
}:
|
||||
|
||||
|
|
@ -20,29 +22,23 @@ lib.optionalAttrs stdenv.hostPlatform.isStatic {
|
|||
++ lib.optionals
|
||||
stdenv.hostPlatform.isStatic
|
||||
[ "-C" "relocation-model=static" ]
|
||||
|
||||
# I'm not sure why any of this is necessary but it is so *shrug*
|
||||
++ lib.optionals
|
||||
(stdenv.buildPlatform.config != stdenv.hostPlatform.config)
|
||||
[ "-l" "c" ]
|
||||
++ lib.optionals
|
||||
# This check has to match the one [here][0]. We only need to set
|
||||
# these flags when using a different linker. Don't ask me why, though,
|
||||
# because I don't know. All I know is it breaks otherwise.
|
||||
#
|
||||
# [0]: https://github.com/NixOS/nixpkgs/blob/5cdb38bb16c6d0a38779db14fcc766bc1b2394d6/pkgs/build-support/rust/lib/default.nix#L37-L40
|
||||
(
|
||||
# Nixpkgs doesn't check for x86_64 here but we do, because I
|
||||
# observed a failure building statically for x86_64 without
|
||||
# including it here. Linkers are weird.
|
||||
(stdenv.hostPlatform.isAarch64 || stdenv.hostPlatform.isx86_64)
|
||||
&& stdenv.hostPlatform.isStatic
|
||||
&& !stdenv.isDarwin
|
||||
&& !stdenv.cc.bintools.isLLVM
|
||||
)
|
||||
[
|
||||
"-l"
|
||||
"c"
|
||||
|
||||
"-l"
|
||||
"stdc++"
|
||||
"-L"
|
||||
"${stdenv.cc.cc.lib}/${stdenv.hostPlatform.config}/lib"
|
||||
|
||||
"-l"
|
||||
"snappy"
|
||||
"-L"
|
||||
"${snappy}/lib"
|
||||
]
|
||||
);
|
||||
}
|
||||
|
|
@ -52,7 +48,7 @@ lib.optionalAttrs stdenv.hostPlatform.isStatic {
|
|||
# case of build scripts that need native code compiled and run on the build
|
||||
# platform (I think).
|
||||
#
|
||||
# [0]: https://github.com/NixOS/nixpkgs/blob/5cdb38bb16c6d0a38779db14fcc766bc1b2394d6/pkgs/build-support/rust/lib/default.nix#L57-L80
|
||||
# [0]: https://github.com/NixOS/nixpkgs/blob/2768c7d042a37de65bb1b5b3268fc987e534c49d/pkgs/build-support/rust/lib/default.nix#L45-L68
|
||||
//
|
||||
(
|
||||
let
|
||||
|
|
@ -68,8 +64,7 @@ lib.optionalAttrs stdenv.hostPlatform.isStatic {
|
|||
{
|
||||
"CC_${cargoEnvVarTarget}" = envVars.ccForTarget;
|
||||
"CXX_${cargoEnvVarTarget}" = envVars.cxxForTarget;
|
||||
"CARGO_TARGET_${cargoEnvVarTarget}_LINKER" =
|
||||
envVars.linkerForTarget;
|
||||
"CARGO_TARGET_${cargoEnvVarTarget}_LINKER" = envVars.ccForTarget;
|
||||
}
|
||||
)
|
||||
//
|
||||
|
|
@ -80,7 +75,7 @@ lib.optionalAttrs stdenv.hostPlatform.isStatic {
|
|||
{
|
||||
"CC_${cargoEnvVarTarget}" = envVars.ccForHost;
|
||||
"CXX_${cargoEnvVarTarget}" = envVars.cxxForHost;
|
||||
"CARGO_TARGET_${cargoEnvVarTarget}_LINKER" = envVars.linkerForHost;
|
||||
"CARGO_TARGET_${cargoEnvVarTarget}_LINKER" = envVars.ccForHost;
|
||||
CARGO_BUILD_TARGET = rustcTarget;
|
||||
}
|
||||
)
|
||||
|
|
@ -92,7 +87,7 @@ lib.optionalAttrs stdenv.hostPlatform.isStatic {
|
|||
{
|
||||
"CC_${cargoEnvVarTarget}" = envVars.ccForBuild;
|
||||
"CXX_${cargoEnvVarTarget}" = envVars.cxxForBuild;
|
||||
"CARGO_TARGET_${cargoEnvVarTarget}_LINKER" = envVars.linkerForBuild;
|
||||
"CARGO_TARGET_${cargoEnvVarTarget}_LINKER" = envVars.ccForBuild;
|
||||
HOST_CC = "${pkgsBuildHost.stdenv.cc}/bin/cc";
|
||||
HOST_CXX = "${pkgsBuildHost.stdenv.cc}/bin/c++";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@
|
|||
, rocksdb
|
||||
, rust
|
||||
, rust-jemalloc-sys
|
||||
, snappy
|
||||
, stdenv
|
||||
|
||||
# Options (keep sorted)
|
||||
|
|
@ -48,6 +49,7 @@ let
|
|||
rocksdb' = rocksdb.override {
|
||||
jemalloc = rust-jemalloc-sys';
|
||||
enableJemalloc = featureEnabled "jemalloc";
|
||||
enableLiburing = false;
|
||||
};
|
||||
in
|
||||
{
|
||||
|
|
@ -63,6 +65,7 @@ let
|
|||
lib
|
||||
pkgsBuildHost
|
||||
rust
|
||||
snappy
|
||||
stdenv;
|
||||
});
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
# Keep sorted
|
||||
{ buildPlatform
|
||||
, default
|
||||
{ default
|
||||
, cargo-insta
|
||||
, engage
|
||||
, inputs
|
||||
|
|
@ -9,6 +8,7 @@
|
|||
, markdownlint-cli
|
||||
, mdbook
|
||||
, mkShell
|
||||
, stdenv
|
||||
, toolchain
|
||||
}:
|
||||
|
||||
|
|
@ -26,7 +26,7 @@ mkShell {
|
|||
#
|
||||
# This needs to come before `toolchain` in this list, otherwise
|
||||
# `$PATH` will have stable rustfmt instead.
|
||||
inputs.fenix.packages.${buildPlatform.system}.latest.rustfmt
|
||||
inputs.fenix.packages.${stdenv.buildPlatform.system}.latest.rustfmt
|
||||
|
||||
# Keep sorted
|
||||
cargo-insta
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue