diff options
author | Alyssa Ross <hi@alyssa.is> | 2024-05-11 10:38:30 +0200 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2024-05-11 10:38:30 +0200 |
commit | 19bb0a96f41e639ea0b33dc92f9caa94d27e5a38 (patch) | |
tree | 0572b4e1af257734dcbfec437dd10db949bebbba /pkgs/development/libraries | |
parent | 0c9055e82379d4d788909ace2148b323ab3f015a (diff) |
rutabaga_gfx: build for the right architecture
Previously, cross compiling rutabaga_gfx looked like it worked, but it produced binaries for the build machine. This prevented cross-compiling QEMU with rutabaga_gfx support enabled. Fixes: 28257606653c ("rutabaga_gfx: init at 0.1.2")
Diffstat (limited to 'pkgs/development/libraries')
-rw-r--r-- | pkgs/development/libraries/rutabaga_gfx/default.nix | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/pkgs/development/libraries/rutabaga_gfx/default.nix b/pkgs/development/libraries/rutabaga_gfx/default.nix index 6875002727357..9b8f5bec42f37 100644 --- a/pkgs/development/libraries/rutabaga_gfx/default.nix +++ b/pkgs/development/libraries/rutabaga_gfx/default.nix @@ -54,15 +54,23 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-wuF3Isrp+u5J8jPQoPsIOWYGNKLSNa2pLfvladAWkLs="; }; - # make install always rebuilds - dontBuild = true; + CARGO_BUILD_TARGET = stdenv.hostPlatform.rust.rustcTargetSpec; + "CARGO_TARGET_${stdenv.hostPlatform.rust.cargoEnvVarTarget}_LINKER" = + "${stdenv.cc.targetPrefix}cc"; - makeFlags = [ "prefix=$(out)" ]; - - preInstall = '' + postConfigure = '' cd rutabaga_gfx/ffi + substituteInPlace Makefile --replace-fail pkg-config "$PKG_CONFIG" ''; + # make install always rebuilds + dontBuild = true; + + makeFlags = [ + "prefix=$(out)" + "OUT=target/${stdenv.hostPlatform.rust.cargoShortTarget}/release" + ]; + meta = with lib; { homepage = "https://crosvm.dev/book/appendix/rutabaga_gfx.html"; description = "cross-platform abstraction for GPU and display virtualization"; |