Skip to content

Comments

WIP: treewide: Improve pure darwin cross#110914

Draft
Ericson2314 wants to merge 2 commits intoNixOS:stagingfrom
Ericson2314:fix-darwin-static
Draft

WIP: treewide: Improve pure darwin cross#110914
Ericson2314 wants to merge 2 commits intoNixOS:stagingfrom
Ericson2314:fix-darwin-static

Conversation

@Ericson2314
Copy link
Member

@Ericson2314 Ericson2314 commented Jan 27, 2021

Motivation for this change

Some things are a little messier than they could be because I'm avoiding mass rebuilds. I'll go back and clean up after. Doing that right away.

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.

@Ericson2314 Ericson2314 requested a review from nbp as a code owner January 27, 2021 06:21
@ofborg ofborg bot added 6.topic: darwin Running or building packages on Darwin 8.has: package (new) This PR adds a new package labels Jan 27, 2021
@ofborg ofborg bot requested review from copumpkin and gridaphobe January 27, 2021 06:31
@ofborg ofborg bot added 10.rebuild-darwin: 11-100 This PR causes between 11 and 100 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Jan 27, 2021
@siraben
Copy link
Member

siraben commented Jan 27, 2021

What will this change enable?

@Ericson2314
Copy link
Member Author

See #97047

@Ericson2314
Copy link
Member Author

@matthewbauer OK I got as far as building libsystem. Do you know how the compiler-rt, libc++, and libc++abi part works? libc++abi seems to want libc++ to to already be buildable or something.

(To be fare, it works fine-ish to just reuse the same libsystem and just do cross for everything else, but I want to at least try doing everything "right" before giving up.)

@ofborg ofborg bot added 10.rebuild-linux: 11-100 This PR causes between 11 and 100 packages to rebuild on Linux. and removed 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Jan 28, 2021
@Ericson2314 Ericson2314 force-pushed the fix-darwin-static branch from 557bce0 to f9298dd Compare May 1, 2021 19:01
@github-actions github-actions bot added 6.topic: bsd Running or building packages on BSD 6.topic: emacs Text editor 6.topic: lua Lua is a powerful, efficient, lightweight, embeddable scripting language. 6.topic: nixos Issues or PRs affecting NixOS modules, or package usability issues specific to NixOS 6.topic: ocaml OCaml is a general-purpose, high-level, multi-paradigm programming language. 6.topic: python Python is a high-level, general-purpose programming language. 6.topic: qt/kde Object-oriented framework for GUI creation 6.topic: ruby A dynamic, open source programming language with a focus on simplicity and productivity. 6.topic: rust General-purpose programming language emphasizing performance, type safety, and concurrency. 6.topic: systemd Software suite that provides an array of system components for Linux operating systems. 6.topic: vim Advanced text editor labels May 1, 2021
@github-actions github-actions bot removed 6.topic: rust General-purpose programming language emphasizing performance, type safety, and concurrency. 6.topic: bsd Running or building packages on BSD 6.topic: python Python is a high-level, general-purpose programming language. labels May 2, 2021
@ofborg ofborg bot added 10.rebuild-linux: 11-100 This PR causes between 11 and 100 packages to rebuild on Linux. 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. and removed 10.rebuild-linux-stdenv This PR causes stdenv to rebuild on Linux 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. 10.rebuild-linux: 11-100 This PR causes between 11 and 100 packages to rebuild on Linux. labels May 2, 2021
@Ericson2314 Ericson2314 force-pushed the fix-darwin-static branch from 1edcf5f to 9ba3632 Compare May 4, 2021 05:35
@github-actions github-actions bot added the 6.topic: bsd Running or building packages on BSD label May 4, 2021
@ofborg ofborg bot added 10.rebuild-linux: 11-100 This PR causes between 11 and 100 packages to rebuild on Linux. and removed 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 May 4, 2021
Ericson2314 added a commit to Ericson2314/nixpkgs that referenced this pull request May 6, 2021
I am taking the non-invasive parts of NixOS#110914 to hopefully help out with NixOS#111988.

In particular:

 - Use `lib.makeScopeWithSplicing` to make the `darwin` package set have
   a proper `callPackage`.

 - Adjust Darwin `stdenv`'s overlays keeping things from the previous
   stage to not stick around too much.

 - Expose `binutilsNoLibc` / `darwin.binutilsNoLibc` to hopefully get us
   closer to a unified LLVM and GCC bootstrap.
If things build fine with `stdenvNoCC`, let them use that. If tools
might be prefixed, prepare for that.
@Ericson2314 Ericson2314 force-pushed the fix-darwin-static branch from 9ba3632 to 08d1131 Compare May 6, 2021 19:58
@github-actions github-actions bot removed the 6.topic: bsd Running or building packages on BSD label May 6, 2021
@stale
Copy link

stale bot commented Nov 9, 2021

I marked this as stale due to inactivity. → More info

@stale stale bot added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Nov 9, 2021
@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
@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: darwin Running or building packages on Darwin 6.topic: stdenv Standard environment 8.has: clean-up This PR removes packages or removes other cruft 8.has: package (new) This PR adds a new package 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: 11-100 This PR causes between 11 and 100 packages to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants