Skip to content
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

git: support cross-compilation by disabling perl support #123713

Merged
merged 1 commit into from
May 21, 2021

Conversation

Mindavi
Copy link
Contributor

@Mindavi Mindavi commented May 19, 2021

Motivation for this change

Support cross-compilation. This reduces functionality (honestly, I don't know which parts require perl support), but will at least make git compile successfully. Otherwise you don't have git at all.

See also #66741

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

@Mindavi Mindavi added the 6.topic: cross-compilation Building packages on a different platform than they will be used on label May 19, 2021
@ofborg ofborg bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin 10.rebuild-linux: 1-10 10.rebuild-linux: 1 labels May 19, 2021
@ajs124 ajs124 requested a review from primeos May 20, 2021 22:07
Copy link
Member

@primeos primeos left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've verified that this fixes the cross-compilation and disabling the Perl support in that case good to me (IIRC Perl is mainly required for interactive scripts like git add -{i,p} and some porcelain commands like git-blame and git-send-email - but the essential stuff should work without Perl and upstream is currently rewriting (all?) Perl scripts in C).

Note: This breaks instantiating pkgsCross.aarch64-multiplatform.gitFull but that is to be expected and given that gitFull likely won't cross-compile it seems better if this fails early.

@primeos primeos merged commit d3ad6d4 into NixOS:master May 21, 2021
@Mindavi Mindavi deleted the git/cross-compilation branch May 21, 2021 11:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
6.topic: cross-compilation Building packages on a different platform than they will be used on 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin 10.rebuild-linux: 1-10 10.rebuild-linux: 1
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants