Nixpkgs Stdenv | 229 Members | |
| 74 Servers |
| Sender | Message | Time |
|---|---|---|
| 10 Nov 2024 | ||
| It would be good to have a comment next to the gcc at least to point out that it is overlaid. Otherwise we get the confusing situation emily was in where it was necessary to first identify "this is not the gcc you are looking for" before you can even figure out any other issues. | 21:43:29 | |
my mental model was always that only stdenv.* has weird overlay stuff once the bootstrap is complete | 21:46:41 | |
| but I guess that was all wrong | 21:46:45 | |
| 11 Nov 2024 | ||
| 05:03:14 | ||
| p14:
| 07:04:17 | |
In reply to @emilazy:matrix.orgThis was fixed for Darwin. Can it be fixed for Linux? | 14:51:42 | |
| On Darwin:
| 14:52:25 | |
| I don't know anything about how the overlaying works, so maybe? :) | 14:52:48 | |
| it'd make things more convenient for me at least | 14:52:52 | |
| https://github.com/NixOS/nixpkgs/blob/db2a0eaf13018f970376297fc53b4c41df5f193f/pkgs/stdenv/darwin/default.nix#L1268-L1277 | 14:53:41 | |
| I assume Linux could work the same way. Get the unversioned GCC’s version from the prior stage then set | 14:54:29 | |
| LLVM is worse because of all the packages it has, but GCC should be pretty easy like that. | 14:55:01 | |
| (I did this because I got really tired of rebuilding the default version of LLVM just because something used | 14:55:47 | |
| Sure, overriding more would work just fine. | 16:47:30 | |
Randy Eckenrode: do you think it is possible to get rid of this https://github.com/NixOS/nixpkgs/blob/03676a7e0ff1a54a9dabd749559ed6beca5abd5c/pkgs/stdenv/generic/default.nix#L117-L119? This is kind of annoying since it means that all of buildPackages gets rebuilt when changing targetPlatform even if derivations are target agnostic | 22:04:08 | |
| I think we would have to move it into the compiler wrappers | 22:05:03 | |
| which seems feasible? | 22:05:36 | |
| there's a weird thing where the GCC build reads it and I don't entirely understand why | 22:05:45 | |
otherwise it's just an ld-wrapper thing that presumably could be set in the ld-wrapper Nix derivation | 22:06:01 | |
hopefully you understand pkgs/development/compilers/gcc/common/builder.nix better than I do 🫠 | 22:06:45 | |
In reply to @emilazy:matrix.orgOlder Darwin deployment targets don’t support rpaths. I was looking for a way to detect a Darwin build in the GCC build. | 22:09:33 | |
| oh, because of the awful ancient GCCs thing? | 22:09:52 | |
| that's GCC < 10, right? | 22:09:58 | |
| Yes. | 22:10:02 | |
| The builder is pretty messy, so trying to conditionally doing it looked worse. | 22:10:09 | |
| I'm dropping those anyway, so maybe problem solved? | 22:10:18 | |
In reply to @sternenseemann:systemli.orgDarwin doesn’t need rpaths set though. How to handle that when Darwin is the target platform? | 22:11:00 | |
In reply to @emilazy:matrix.orgAs long as Darwin doesn’t resume setting rpaths again. | 22:11:13 | |