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

llvm: Remove unneeded libcxxabi dependencies #41952

Merged
merged 2 commits into from Jun 14, 2018

Conversation

Ericson2314
Copy link
Member

Motivation for this change

I'm pretty sure this is just there for bootstrapping Darwin for some reason; normal builds of llvm given a regular stdenv don't need it for Darwin and Linux alike. Testing now to confirm.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • 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 nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Fits CONTRIBUTING.md.

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: llvm

Partial log (click to expand)

/nix/store/pdxfn617j4frnlbz13jv2y85s2ppgnb1-llvm-5.0.2

@GrahamcOfBorg
Copy link

Success on x86_64-darwin (full log)

Attempted: llvm

Partial log (click to expand)

/nix/store/bvrz6gfvmgb620knx2d9nr8kvz4l21i7-llvm-5.0.2

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: llvm

Partial log (click to expand)

these paths will be fetched (34.41 MiB download, 219.39 MiB unpacked):
  /nix/store/xsc3rsqxrapyzicp3a19px1skwj3z4qk-llvm-5.0.2-lib
  /nix/store/zvv8vkmb0wp0499hk50n4nx6qb1gmwli-llvm-5.0.2
copying path '/nix/store/xsc3rsqxrapyzicp3a19px1skwj3z4qk-llvm-5.0.2-lib' from 'https://cache.nixos.org'...
copying path '/nix/store/zvv8vkmb0wp0499hk50n4nx6qb1gmwli-llvm-5.0.2' from 'https://cache.nixos.org'...
/nix/store/zvv8vkmb0wp0499hk50n4nx6qb1gmwli-llvm-5.0.2

@matthewbauer
Copy link
Member

Another thing i forgot about is putting cmake as native build input everywhere.

@Ericson2314
Copy link
Member Author

Ericson2314 commented Jun 13, 2018

I got these builds in progress; That one I'm happy to just put through ofborg as it's basically a no-op for native. So let's do it separately. separate commits is good enough. I can't immediately find the commit to start on, so separately. found it and added it.

Evidentally this hasn't been needed for a while
@Ericson2314
Copy link
Member Author

Testing showed that every LLVM since 3.7 worked fine (though 6 was untested). Guess this hasn't been needed for a while!

@Ericson2314
Copy link
Member Author

Ericson2314 commented Jun 14, 2018

Trivial changes vs last ofborg eval, and tested by hand. Merging.

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: llvm

Partial log (click to expand)

/nix/store/zvv8vkmb0wp0499hk50n4nx6qb1gmwli-llvm-5.0.2

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: llvm

Partial log (click to expand)

/nix/store/pdxfn617j4frnlbz13jv2y85s2ppgnb1-llvm-5.0.2

@GrahamcOfBorg
Copy link

Success on x86_64-darwin (full log)

Attempted: llvm

Partial log (click to expand)

/nix/store/bvrz6gfvmgb620knx2d9nr8kvz4l21i7-llvm-5.0.2

@@ -43,7 +43,8 @@ in stdenv.mkDerivation (rec {
++ stdenv.lib.optional enableManpages python.pkgs.sphinx;

buildInputs = [ libxml2 libffi ]
++ stdenv.lib.optionals stdenv.isDarwin [ libcxxabi ];
# TODO(@Ericson2314): Remove next mass rebuild
++ stdenv.lib.optionals (stdenv.isDarwin && stdenv.hostPlatform == stdenv.buildPlatform) [ libcxxabi ];
Copy link
Member

Choose a reason for hiding this comment

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

Did you test an stdenv build with this? Don't want us to forget about it and run into surprising issues with llvm 5 -> 6 later on.

Copy link
Member Author

Choose a reason for hiding this comment

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

@LnL7 I just built llvm 6 didn't use a it bunch. I am working on this for LLVM 5 too with bootstrapping, so I guess it's retroactively tested? :/

Copy link
Member Author

Choose a reason for hiding this comment

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

For posterity, indeed staging now has the same changes with #42048

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants