Branch: refs/heads/master
  Home:   https://github.com/NixOS/nixpkgs
  Commit: a7d89139ea74791137bfa606d109e515512c8460
      
https://github.com/NixOS/nixpkgs/commit/a7d89139ea74791137bfa606d109e515512c8460
  Author: John Ericson <[email protected]>
  Date:   2017-04-24 (Mon, 24 Apr 2017)

  Changed paths:
    M pkgs/top-level/stage.nix

  Log Message:
  -----------
  top-level: `stdenv.cross` is now only defined with host != build

In 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.


  Commit: a7068ace35c5344fc2760733d32cca8fd4f01116
      
https://github.com/NixOS/nixpkgs/commit/a7068ace35c5344fc2760733d32cca8fd4f01116
  Author: John Ericson <[email protected]>
  Date:   2017-04-24 (Mon, 24 Apr 2017)

  Changed paths:
    M pkgs/development/compilers/gcc/4.5/default.nix
    M pkgs/development/compilers/gcc/4.8/default.nix
    M pkgs/development/compilers/gcc/4.9/default.nix
    M pkgs/development/compilers/gcc/5/default.nix
    M pkgs/development/compilers/gcc/6/default.nix
    M pkgs/development/compilers/gcc/snapshot/default.nix
    M pkgs/top-level/all-packages.nix

  Log Message:
  -----------
  Rewrite a few `stdenv.cross` uses that *should* be `targetPlatform`

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.


  Commit: 49c99b70cf64ccf99cd292426b3dbcaeb2e885aa
      
https://github.com/NixOS/nixpkgs/commit/49c99b70cf64ccf99cd292426b3dbcaeb2e885aa
  Author: John Ericson <[email protected]>
  Date:   2017-04-24 (Mon, 24 Apr 2017)

  Changed paths:
    M pkgs/stdenv/adapters.nix
    M pkgs/stdenv/cross/default.nix
    M pkgs/stdenv/darwin/default.nix
    M pkgs/stdenv/linux/default.nix

  Log Message:
  -----------
  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.


  Commit: 75441dd64ac0a7f87ad9ee44574d829263792fef
      
https://github.com/NixOS/nixpkgs/commit/75441dd64ac0a7f87ad9ee44574d829263792fef
  Author: John Ericson <[email protected]>
  Date:   2017-04-24 (Mon, 24 Apr 2017)

  Changed paths:
    M pkgs/development/compilers/gcc/4.5/default.nix
    M pkgs/development/compilers/gcc/4.8/default.nix
    M pkgs/development/compilers/gcc/4.9/default.nix
    M pkgs/development/compilers/gcc/5/default.nix
    M pkgs/development/compilers/gcc/6/default.nix
    M pkgs/development/compilers/gcc/snapshot/default.nix
    M pkgs/stdenv/adapters.nix
    M pkgs/stdenv/cross/default.nix
    M pkgs/stdenv/darwin/default.nix
    M pkgs/stdenv/linux/default.nix
    M pkgs/top-level/all-packages.nix
    M pkgs/top-level/stage.nix

  Log Message:
  -----------
  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!


Compare: https://github.com/NixOS/nixpkgs/compare/f2d1aa05de4d...75441dd64ac0
_______________________________________________
nix-commits mailing list
[email protected]
https://mailman.science.uu.nl/mailman/listinfo/nix-commits

Reply via email to