-
-
Notifications
You must be signed in to change notification settings - Fork 14.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
perl536Packages: cross fixes #225086
perl536Packages: cross fixes #225086
Conversation
@@ -255,6 +255,7 @@ let | |||
url = "mirror://cpan/authors/id/P/PL/PLICEASE/Alien-Build-2.37.tar.gz"; | |||
hash = "sha256-MAC8vphIJkP3a7z/zkL9SPJMY6ZFf4qiwWlfSBrJ7VE="; | |||
}; | |||
nativeBuildInputs = [ buildPackages.perl ]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should provide a comment to this hack and the assignment (which is an implicit override of perl.mini) should only be done for cross-compilation (to document the intention).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My thought process behind not guarding was "a full perl is also required for native builds, so this is just more explicit". On the other hand, guarding this with /nix/store/av8clvjy4d91ybmsc92lgaxnvlif4g6l-perl5.36.0-Alien-Build-2.37-i686-unknown-linux-gnu.drv
also has the additional benefit that it doesn't change the evaluation for native builds, (hopefully) cutting down the number of rebuilds significantly. Will update.
Adding a simple comment like "when cross-compiling, buildPerlPackage
only appends perl.mini
to nativeBuildInputs, but this build needs a full perl" to each of these lines should be enough, right?
edit: the wording from your PR #222427 ("Override default intepreter perl.mini") is better
Marked as draft for now, see #222427 |
Description of changes
This fixes the cross compilation of several perl packages that are in the closure of
biber
.Most of these fixes are simply adding
buildPackages.perl
tonativeBuildInputs
. This doesn't change anything for native builds since these pull in perl anyway. Cross builds use a minimal perl copyperl.mini
(this does not exist for native), which suffices for bootstrapping perl and running simple build scripts, but not for the builds scripts of the derivations changed here: They mostly fail with error messages likeI can split this into multiple PRs if desirable, but most of the builds cannot be tested indepentently because of many inter-dependencies.
Things done
sandbox = true
set innix.conf
? (See Nix manual)nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
. Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/
)