bash: avoid using unspliced dependency#265162
Conversation
We have several cross-compilation bugs that show up if hostPlatform!=buildPlatform yet hostPlatform.config==buildPlatform.config. These bugs have appeared and disappeared as we've fiddled with the definition of equality for platform objects. This commit adds a clear-cut case where they are *not* equal and never will be, so we can test it.
…ples
The rest of our gcc expression prepends "${targetPlatform.config}-"
to paths and binaries if `hostPlatform!=targetPlatform`. The
`libgcc.nix` expression was using
'hostPlatform.config!=targetPlatform.config`, which caused it to
look in the wrong place when moving files. This commit corrects that.
I'm a bit confused what you mean by this — are you saying |
Correct. Try changing
No; you should not use See: which adds a |
| strictDeps = true; | ||
| # Note: Bison is needed because the patches above modify parse.y. | ||
| depsBuildBuild = [ buildPackages.stdenv.cc ]; | ||
| depsBuildBuild = [ stdenv ]; |
There was a problem hiding this comment.
I don't think this will work? how would stdenv become stdenv.cc?
if it works then it shouldn't work.
There was a problem hiding this comment.
You're right; this works "by accident".
|
This only works "by accident". |
Description of changes
stdenvis spliced, butstdenv.ccis not, so we can't use thelatter in dependencies.
Closes
pkgsCross.gnu64.bashfails to build onx86_64-linux#243164Includes
Fixes #243164
Things done
nix.conf? (See Nix manual)sandbox = relaxedsandbox = truenix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/)