-
-
Notifications
You must be signed in to change notification settings - Fork 15.4k
Permalink
Choose a base ref
{{ refName }}
default
Choose a head ref
{{ refName }}
default
Comparing changes
Choose two branches to see what’s changed or to start a new pull request.
If you need to, you can also or
learn more about diff comparisons.
Open a pull request
Create a new pull request by comparing changes across two branches. If you need to, you can also .
Learn more about diff comparisons here.
base repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: f2d1aa05de4d
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
...
head repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 75441dd64ac0
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
- 4 commits
- 12 files changed
- 2 contributors
Commits on Apr 24, 2017
-
top-level:
stdenv.cross
is now only defined with host != buildIn practice, this is a strictly stronger condition than target != build as we never have build = target != host. Really, the attribute should be removed altogether, but for now we make it work for plain libraries, which do not care about the target platform. In the few cases where the compilers use this and actually care about the target platform, I'll manually change them to use `targetPlatform` instead.
Configuration menu - View commit details
-
Copy full SHA for a7d8913 - Browse repository at this point
Copy the full SHA a7d8913View commit details -
Rewrite a few
stdenv.cross
uses that *should* betargetPlatform
The previous commit redefines `stdenv.cross` for the sake of normal libaries, the most common use-case of that attribute. Some compilers however relied on the old definition so we have them use `targetPlatform` instead. This special casing is fine because we eventually want to remove `stdenv.cross` and use either `hostPlatform` or `targetPlatform` instead.
Configuration menu - View commit details
-
Copy full SHA for a7068ac - Browse repository at this point
Copy the full SHA a7068acView commit details -
cross-stdenv: Only prune most overrides in the final stage
Before all overrides were also pruned in the previous stage, now only gcc and binutils are, because they alone care about about the target platform. The rest of the overrides don't, so it's better to preserve them in order to avoid spurious rebuilds.
Configuration menu - View commit details
-
Copy full SHA for 49c99b7 - Browse repository at this point
Copy the full SHA 49c99b7View commit details -
Merge pull request #25194 from obsidiansystems/host-target-unconfuse
stdenv.cross is a silly attribute that needs to go leaving the well-defined hostPlatform and targetPlatform. This PR doesn't remove it, but changes its definition: before it tracked the target platform which is sometimes more useful for compilers, and now it tracks the host platform which is more useful for everything else. Most usages are libraries, falling in the "everything else" category, so changing the definition makes sense to appease the majority. The few compiler (gcc in particular) uses that exist I remove to use targetPlatform --- preserving correctness and becoming more explicit in the process. I would also update the documentation aside mentioning stdenv.cross as deprecated, but the definition given actually erroneously assumes this PR is already merged!
Configuration menu - View commit details
-
Copy full SHA for 75441dd - Browse repository at this point
Copy the full SHA 75441ddView commit details
There are no files selected for viewing