stdenv.mkDerivation: check that depsBuildX are executable on the build system#204387
stdenv.mkDerivation: check that depsBuildX are executable on the build system#204387Artturin wants to merge 7 commits intoNixOS:masterfrom
Conversation
|
There seems to be a lot of errors around i686-w64-mingw32-stage-final-gcc-wrapper but I like the general idea. |
wine64 and wineWowPackages.full eval while wine(wine32) failsto eval |
|
this fixes the eval error, i copied it from wineWow diff --git a/pkgs/applications/emulators/wine/packages.nix b/pkgs/applications/emulators/wine/packages.nix
index 3b5aa19658c..440fd167d98 100644
--- a/pkgs/applications/emulators/wine/packages.nix
+++ b/pkgs/applications/emulators/wine/packages.nix
@@ -11,6 +11,7 @@ in with src; {
wine32 = pkgsi686Linux.callPackage ./base.nix {
pname = "wine";
inherit src version supportFlags patches moltenvk;
+ stdenv = stdenv_32bit;
pkgArches = [ pkgsi686Linux ];
vkd3dArches = lib.optionals supportFlags.vkd3dSupport [ vkd3d_i686 ];
geckos = [ gecko32 ];but it does change to i don't know if this affects anything negatively but wine builds and the log output is similar but with stuff like Weird things in the log are checking for cups/cups.h... yes
checking for cups/ppd.h... yes
- checking for -lcups... libcups.so.2
+ checking for -lcups... not found
...
- configure: libcapi20 development files not found, ISDN won't be supported.
+ configure: libcapi20 32-bit development files not found, ISDN won't be supported.
+ configure: libcups 32-bit development files not found, CUPS won't be supported.no diff in |
c94d3c8 to
2c20464
Compare
ac9207b to
aa8cc54
Compare
aa8cc54 to
823846c
Compare
|
lots of warnings in perlPackages and pythonPackages perlPackages todo for me, will be fixed before this pr is merged or in this pr |
There was a problem hiding this comment.
preparation for doing splicing like in python
9b31a18 to
cb459fb
Compare
|
somehow the mini output of perl gets introduced before after dropping EDIT: added it back and used |
7b7fa24 to
2ae9d60
Compare
2ae9d60 to
ca669f8
Compare
to make sure all things in nativeBuildInputs are executable on
buildPlatform
```
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
```
to
```
wine> checking build system type... x86_64-pc-linux-gnu
wine> checking host system type... x86_64-pc-linux-gnu
```
i don't know if this affects anything negatively but wine builds and the log output is similar but with stuff like `gcc -m32 ...` and `-m32` in other places
Weird things in the log are
```diff
checking for cups/cups.h... yes
checking for cups/ppd.h... yes
- checking for -lcups... libcups.so.2
+ checking for -lcups... not found
...
- configure: libcapi20 development files not found, ISDN won't be supported.
+ configure: libcapi20 32-bit development files not found, ISDN won't be supported.
+ configure: libcups 32-bit development files not found, CUPS won't be supported.
```
no diff in
```
nix-repl> pkgs = import ./. { system = "i686-linux"; }
nix-repl> pkgs.wine
«derivation /nix/store/lik48akxk5hk3hvbqhaxgsh0827kv3zd-wine-7.0.drv»
```
["trace: warning: dpkg-1.21.1ubuntu2.1 in mfcl3770cdwdrv-1.0.2-0 nativeBuildInputs not executable on build", "trace: warning: hook in mfcl3770cdwdrv-1.0.2-0 nativeBuildInputs not executable on build", "trace: warning: dpkg-1.21.1ubuntu2.1 in mfcl3770cdwdrv-1.0.2-0 nativeBuildInputs not executable on build", "trace: warning: hook in mfcl3770cdwdrv-1.0.2-0 nativeBuildInputs not executable on build"] ``` nix-repl> o = lib.lists.last wine.nativeBuildInputs nix-repl> o «derivation /nix/store/i7ya4lqal0awbgxrabkq70gx56skvax5-i686-w64-mingw32-stage-final-gcc-wrapper-11.3.0.drv» nix-repl> stdenv.buildPlatform.canExecute o.stdenv.hostPlatform true nix-repl> pkgsi686Linux.stdenv.buildPlatform.canExecute o.stdenv.hostPlatform false ```
allows us to use nixpkgs-fmt when editing this file making the editing experience much better
…d system ``` nix-repl> pkgsCross.aarch64-multiplatform.keybinder.nativeBuildInputs [ «derivation /nix/store/sxxk0g9gd18w9r28gbfx8wl65sr8liwm-aarch64-unknown-linux-gnu-pkg-config-wrapper-0.29.2.drv» «derivation /nix/store/ldbs4pw57hy3szqfh8ycskrgywpaahqs-autoconf-2.71.drv» trace: warning: automake-aarch64-unknown-linux-gnu-1.11.6 in keybinder's nativeBuildInputs not executable on build «derivation /nix/store/yj8vj3gbd78scrj4xjmdx4rm5p87dyb9-automake-aarch64-unknown-linux-gnu-1.11.6.drv» ] ```
ca669f8 to
6e027e0
Compare
|
You can ping me for a review when this is ready. Checking for this kind of stuff is a good idea in general. |
TODO less duplication and better warning by merging with checkDependencyList/make a function which takes these as args