diff options
Diffstat (limited to 'pkgs/build-support')
-rw-r--r-- | pkgs/build-support/bintools-wrapper/setup-hook.sh | 8 | ||||
-rw-r--r-- | pkgs/build-support/cc-wrapper/setup-hook.sh | 8 | ||||
-rw-r--r-- | pkgs/build-support/rust/default-crate-overrides.nix | 6 | ||||
-rw-r--r-- | pkgs/build-support/rust/default.nix | 5 | ||||
-rw-r--r-- | pkgs/build-support/rust/fetchcargo.nix | 6 |
5 files changed, 21 insertions, 12 deletions
diff --git a/pkgs/build-support/bintools-wrapper/setup-hook.sh b/pkgs/build-support/bintools-wrapper/setup-hook.sh index f65b792485a0..2cf606cce7c9 100644 --- a/pkgs/build-support/bintools-wrapper/setup-hook.sh +++ b/pkgs/build-support/bintools-wrapper/setup-hook.sh @@ -59,11 +59,11 @@ for cmd in \ ar as ld nm objcopy objdump readelf ranlib strip strings size windres do if - PATH=$_PATH type -p "@targetPrefix@${cmd}" > /dev/null + cmd_path=$(PATH=$_PATH command -v "@targetPrefix@${cmd}") then upper_case="$(echo "$cmd" | tr "[:lower:]" "[:upper:]")" - export "${role_pre}${upper_case}=@targetPrefix@${cmd}"; - export "${upper_case}${role_post}=@targetPrefix@${cmd}"; + export "${role_pre}${upper_case}=${cmd_path}"; + export "${upper_case}${role_post}=${cmd_path}"; fi done @@ -72,5 +72,5 @@ done export NIX_HARDENING_ENABLE # No local scope in sourced file -unset -v role_pre role_post cmd upper_case +unset -v role_pre role_post cmd cmd_path upper_case set +u diff --git a/pkgs/build-support/cc-wrapper/setup-hook.sh b/pkgs/build-support/cc-wrapper/setup-hook.sh index 28060de74118..619e75a39748 100644 --- a/pkgs/build-support/cc-wrapper/setup-hook.sh +++ b/pkgs/build-support/cc-wrapper/setup-hook.sh @@ -109,10 +109,10 @@ fi export NIX_${role_pre}CC=@out@ -export ${role_pre}CC=@named_cc@ -export ${role_pre}CXX=@named_cxx@ -export CC${role_post}=@named_cc@ -export CXX${role_post}=@named_cxx@ +export ${role_pre}CC=@out@/bin/@named_cc@ +export ${role_pre}CXX=@out@/bin/@named_cxx@ +export CC${role_post}=@out@/bin/@named_cc@ +export CXX${role_post}=@out@/bin/@named_cxx@ # If unset, assume the default hardening flags. : ${NIX_HARDENING_ENABLE="fortify stackprotector pic strictoverflow format relro bindnow"} diff --git a/pkgs/build-support/rust/default-crate-overrides.nix b/pkgs/build-support/rust/default-crate-overrides.nix index 9d22fcf8be17..d93e0a5f56df 100644 --- a/pkgs/build-support/rust/default-crate-overrides.nix +++ b/pkgs/build-support/rust/default-crate-overrides.nix @@ -1,6 +1,6 @@ { stdenv, pkgconfig, curl, darwin, libiconv, libgit2, libssh2, openssl, sqlite, zlib, dbus, dbus-glib, gdk_pixbuf, cairo, python3, - libsodium, postgresql, ... }: + libsodium, postgresql, gmp, ... }: let inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; @@ -58,6 +58,10 @@ in gdk-pixbuf = attrs: { buildInputs = [ gdk_pixbuf ]; }; + rink = attrs: { + buildInputs = [ gmp ]; + crateBin = [ { name = "rink"; path = "src/bin/rink.rs"; } ]; + }; cairo-rs = attrs: { buildInputs = [ cairo ]; }; diff --git a/pkgs/build-support/rust/default.nix b/pkgs/build-support/rust/default.nix index fb1d6e390ae1..820989a76206 100644 --- a/pkgs/build-support/rust/default.nix +++ b/pkgs/build-support/rust/default.nix @@ -7,6 +7,8 @@ in { name, cargoSha256 ? "unset" , src ? null , srcs ? null +, cargoPatches ? [] +, patches ? [] , sourceRoot ? null , logLevel ? "" , buildInputs ? [] @@ -23,6 +25,7 @@ let cargoDeps = if cargoVendorDir == null then fetchcargo { inherit name src srcs sourceRoot cargoUpdateHook; + patches = cargoPatches; sha256 = cargoSha256; } else null; @@ -44,6 +47,8 @@ in stdenv.mkDerivation (args // { buildInputs = [ cacert git rust.cargo rust.rustc ] ++ buildInputs; + patches = cargoPatches ++ patches; + configurePhase = args.configurePhase or '' runHook preConfigure # noop diff --git a/pkgs/build-support/rust/fetchcargo.nix b/pkgs/build-support/rust/fetchcargo.nix index 42a3ac27cb5b..2670ed528640 100644 --- a/pkgs/build-support/rust/fetchcargo.nix +++ b/pkgs/build-support/rust/fetchcargo.nix @@ -1,11 +1,11 @@ { stdenv, cacert, git, rust, cargo-vendor }: -{ name ? "cargo-deps", src, srcs, sourceRoot, sha256, cargoUpdateHook ? "" }: +{ name ? "cargo-deps", src, srcs, patches, sourceRoot, sha256, cargoUpdateHook ? "" }: stdenv.mkDerivation { name = "${name}-vendor"; nativeBuildInputs = [ cacert cargo-vendor git rust.cargo ]; - inherit src srcs sourceRoot; + inherit src srcs patches sourceRoot; - phases = "unpackPhase installPhase"; + phases = "unpackPhase patchPhase installPhase"; installPhase = '' if [[ ! -f Cargo.lock ]]; then |