Skip to content

LLVM 10,11,12,13,14: add enableZ3 argument#163314

Open
peperunas wants to merge 2 commits intoNixOS:masterfrom
peperunas:llvm
Open

LLVM 10,11,12,13,14: add enableZ3 argument#163314
peperunas wants to merge 2 commits intoNixOS:masterfrom
peperunas:llvm

Conversation

@peperunas
Copy link
Contributor

Description of changes

Added Z3 to the build inputs of LLVM versions 10-14 when not cross-compiling. Cross compiling needs further CMake variables I have not personally tested hence the test beforehand.

Things done
  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 22.05 Release Notes (or backporting 21.11 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
    • (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes
  • Fits CONTRIBUTING.md.

@peperunas peperunas requested a review from matthewbauer as a code owner March 8, 2022 12:27
@peperunas
Copy link
Contributor Author

cc/ @symphorien @sternenseemann

@ofborg ofborg bot added the 10.rebuild-darwin-stdenv This PR causes stdenv to rebuild on Darwin and must target a staging branch. label Mar 8, 2022
@ofborg ofborg bot requested review from 7c6f434c, dtzWill, lovek323 and primeos March 8, 2022 13:26
@ofborg ofborg bot added 10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 5001+ This PR causes many rebuilds on Darwin and must target the staging branches. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches. labels Mar 8, 2022
@symphorien
Copy link
Member

This should target staging.

Does this make z3 enter the closure of everything by default on darwin (which uses a llvm stdenv) ?

@Ericson2314
Copy link
Member

Yeah afraid this needs to be off by default, because of the bootstrapping situation.

@peperunas
Copy link
Contributor Author

@Ericson2314, I'll try to add the necessary flags to make z3 cross-compilable.

@peperunas
Copy link
Contributor Author

@symphorien, I have tried pkgs.pkgsLLVM.llvmPackages_10.stdenv and Z3 is used. Same thing with pkgs.llvmPackages_10.stdenv.

@Ericson2314
Copy link
Member

@peperunas No this isn't just about cross, but also about native Darwin boostrapping. Please make the new feature off by default, so this is not a mass rebuild. Then we can merge it and separately decide when it is safe to turn on.

@peperunas
Copy link
Contributor Author

@Ericson2314, done that and I added a TODO to remind us to take care of the edge case later.

Let me know if there's anything else I should do and thank you and @symphorien for the review :-)

@stale stale bot added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Nov 2, 2022
@rrbutani rrbutani mentioned this pull request Nov 7, 2022
92 tasks
|| stdenv.isAarch32 # broken for the armv7l builder
)
, enablePolly ? true
, enableZ3 ? false # TODO: if enabled, this flag is not safe to use when cross-compiling
Copy link
Member

Choose a reason for hiding this comment

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

This should be asserted

@wegank wegank added the 2.status: merge conflict This PR has merge conflicts with the target branch label Mar 20, 2024
@stale stale bot removed the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Mar 20, 2024
@rrbutani rrbutani added the 6.topic: llvm/clang Issues related to llvmPackages, clangStdenv and related label May 27, 2024
@wegank wegank added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Jul 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

2.status: merge conflict This PR has merge conflicts with the target branch 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md 6.topic: llvm/clang Issues related to llvmPackages, clangStdenv and related 10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 5001+ This PR causes many rebuilds on Darwin and must target the staging branches. 10.rebuild-darwin-stdenv This PR causes stdenv to rebuild on Darwin and must target a staging branch. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants