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

darwin/make-bootstrap-tools: move "lib" from install name to rpath #124228

Merged
merged 1 commit into from May 26, 2021

Conversation

thefloweringash
Copy link
Member

The rpath structure for the bootstrap tools was reworked to minimize
the amount of rewriting required on unpack, but the test was not
updated to match the different structure.

Additionally [1] builds that use the bootstrap version of libc++
cannot find libc++abi if the reference includes the "lib"
component (ie, libc++ refers to libc++abi with
@rpath/lib/libc++abi.dylib).

[1] https://logs.nix.samueldr.com/nix-darwin/2021-05-18#4993282

Test failure observed on Hydra: https://hydra.nixos.org/build/143130126

Motivation for this change

Fix channel blocking bootstrap tools test.

Tested the test attribute of bootstrap tools, but not the resulting full stdenv rebuild.

cc @toonn

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/)
  • Added a release notes entry if the change is major or breaking
  • Fits CONTRIBUTING.md.

The rpath structure for the bootstrap tools was reworked to minimize
the amount of rewriting required on unpack, but the test was not
updated to match the different structure.

Additionally [1] builds that use the bootstrap version of libc++
cannot find libc++abi if the reference includes the "lib"
component (ie, libc++ refers to libc++abi with
@rpath/lib/libc++abi.dylib).

[1] https://logs.nix.samueldr.com/nix-darwin/2021-05-18#4993282

Test failure observed on Hydra: https://hydra.nixos.org/build/143130126
@ofborg ofborg bot added the 6.topic: darwin Running or building packages on Darwin label May 24, 2021
@github-actions github-actions bot added the 6.topic: stdenv Standard environment label May 24, 2021
@toonn
Copy link
Contributor

toonn commented May 24, 2021

This seems to have solved two of my problems. I cherry-picked this commit then generated an LLVM 11 bootstrap-tools (from LLVM 7 bootstrap-tools and stdenv, this part already worked). I then used this LLVM 11 bootstrap-tools in generating another LLVM 11 bootstrap-tools, this time based on an LLVM 11 stdenv. Another step closer to LLVM 11 stdenv for x86_64 darwin! \o/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
6.topic: darwin Running or building packages on Darwin 6.topic: stdenv Standard environment 10.rebuild-darwin: 0 10.rebuild-linux: 0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants