-
-
Notifications
You must be signed in to change notification settings - Fork 13.7k
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
Binutils-wrapper: Init by refactoring out of cc-wrapper #28557
Conversation
97349ab
to
c10e6cf
Compare
Something really weird is going on where binutils' configure tests for various headers fail despite the underlying |
063cd8c
to
a0acff6
Compare
Ok the Darwin `allowedRequsites problem is from a self rpath, it seems: time stamp 2 Wed Dec 31 19:00:02 1969
current version 1226.10.1
compatibility version 1.0.0
Load command 11
+ cmd LC_RPATH
+ cmdsize 88
+ path /nix/store/n3s943551i12fvklcxxs023bfy2izk8g-libresolv-osx-10.11.6/lib (offset 12)
+Load command 12
cmd LC_FUNCTION_STARTS
cmdsize 16
dataoff 162176 |
This avoids any `NIX_FOOBAR=1 1` not triggering conditions.
Factor a binutils wrapper out of cc-wrapper. While only LD is wrapped, the setup hook defines environment variables on behalf of other utilites.
Certain files are now only there instead of $NIX_CC (some are in both)
4e9497b
to
b298916
Compare
Everything should be fixed now. https://hydra.mayflower.de/jobset/mayflower/hydra-jobs-cross-rewrite#tabs-evaluations failures are spurious due to outage yesterday. |
Shrunk the CC Wrapper documentation so as not to be repetative.
Please ping me in IRC when you have time later today :) |
f1cfd7a
to
5db86a4
Compare
ad8fdde
to
44cc709
Compare
This reverts commit 0a944b3, reversing changes made to 61733ed. I dislike these massive stdenv changes with unclear motivation, especially when they involve gratuitous mass renames like NIX_CC -> NIX_BINUTILS. The previous such rename (NIX_GCC -> NIX_CC) caused months of pain, so let's not do that again.
This reverts commit 0a944b3, reversing changes made to 61733ed. I dislike these massive stdenv changes with unclear motivation, especially when they involve gratuitous mass renames like NIX_CC -> NIX_BINUTILS. The previous such rename (NIX_GCC -> NIX_CC) caused months of pain, so let's not do that again. (cherry picked from commit ec8d41f)
I reverted this in ec8d41f because I really don't want yet another mass rename like |
This is probably a fallout from #28557 merge and revert. I can't see why exactly this happened, but it seems a safe fix.
(cherry picked from commit 97ac29c)
#29396 new version |
Motivation for this change
I need this so packages that just use binutils (e.g. gcc building its standard library until #26004) get the same setup-hook support. More broadly, having two wrappers will help enforce proper layering between binutils and the C compiler.
This depends on #28556
Things done
Right now cc-wrapper just calls binutils wrapper, but I should add another commit exposing wrapped binutils on it's own and changing the stdenv bootstrapping.
(nix.useSandbox on NixOS,
or option
build-use-sandbox
innix.conf
on non-NixOS)
nix-shell -p nox --run "nox-review wip"
./result/bin/
)