John Ericson
afc2023993
stdenv: Have mkDerivation pull the "extra" arguments from stdenv instead
...
Something more elaborate is needed for the "*Platform" arguments.
2017-07-07 12:16:51 -04:00
John Ericson
4cf4d7180d
stdenv: Conservatively move mkDerivation
into it's own file
2017-07-07 12:16:51 -04:00
Vladimír Čunát
e8e57452f4
stdenv: separate all meta-checking code (~200 lines)
...
Only cosmetic changes are done otherwise.
Real refactoring is left for later.
There's a small slow-down on my machine:
$ time nix-env -qa -P >/dev/null
gets from ~2.8 to ~3.5 seconds (negligible change in RAM).
That's most likely caused by sharing less computation between different
mkDerivation calls, and I plan to improve that soon.
2017-07-07 12:16:26 -04:00
Vladimír Čunát
dfc004e69c
lib.lists.mutuallyExclusive: add function
2017-07-07 12:02:29 -04:00
Vladimír Čunát
5afcdc88fa
stdenv: simple refactor to get rid of pos'
...
Suggested by Ericson2314.
2017-07-07 12:02:29 -04:00
Vladimír Čunát
7fdf18e892
stdenv: refactor (no change in semantics)
...
This just moves some expressions around in preparation to further changes.
2017-07-07 12:02:29 -04:00
Vladimír Čunát
5328aac7be
Merge branch 'staging'
...
Comparison looks OK; I'll try some fixes on master directly.
http://hydra.nixos.org/eval/1372577?compare=1372497
2017-07-05 08:55:26 +02:00
Tim Steinbach
d788244423
stdenv / booter: imap -> imap1
...
Fix the usage of imap as a follow-up to #25543
2017-07-04 21:04:13 -04:00
John Ericson
d61c22341b
Merge accepted cross compilation PRs into staging
2017-06-29 18:07:13 -04:00
John Ericson
ad8d8fb2f5
stdenv: Simplify dependency code
...
This is a bit simpler now, but more importantly it scales better when I
double the number of sorts of dependencies as part of my cross
compilation work.
2017-06-29 17:45:08 -04:00
Daiderd Jordan
d76bc8ed15
Merge pull request #26818 from LnL7/llvm-manpages
...
llvm-packages: get rid of extra build depedencies for manpages
2017-06-26 21:40:55 +02:00
Daiderd Jordan
f65b5365bb
darwin-stdenv: remove llvm/clang manpage overrides from
2017-06-26 20:24:17 +02:00
David McFarland
f81117e324
stdenv: remove leftover 'system' reference
...
the rest were removed in 1dc6f15de9
2017-06-26 09:33:28 -03:00
David McFarland
cdc5cf52c1
cygwin: rebase fixes
...
- use fixupOutputsHook to find libs in all outputs
- don't rebase symlinks
2017-06-26 09:26:10 -03:00
John Ericson
e0492d58a6
cross stdenv adaptor: Disable checkPhase by default
...
Before gcc-cross-wrapper did this unconditionally
2017-06-22 17:52:28 -04:00
John Ericson
594d264205
cross stdenv adaptor: Support --host --build --target across the board
...
Packages get --host and --target by default, but can explicitly request
any subset to be passed as needed. See docs for more info.
rustc: Avoid hash breakage by using the old (ignored)
dontSetConfigureCross when not cross building
2017-06-22 17:52:28 -04:00
John Ericson
9bfd03eff7
cross stdenv adaptor: Remove ccCross
binutils
attrs and binutils extra buildDepends
...
It now has the correct wrapped tools and nothing else is needed.
2017-06-22 17:52:28 -04:00
John Ericson
459f1c60f5
cc-wrapper: Learn about target prefixes
...
This is first step towards getting rid of gcc-wrapper-cross
2017-06-22 17:52:27 -04:00
John Ericson
c4ba2e3ef6
cc-wrapper: Remove stdenv.is*
for targetPlatform.is*
...
Modify bootstrapping stdenvs to make sure `targetPlatform` also passed.
2017-06-22 17:52:27 -04:00
Daiderd Jordan
9e2aba3572
darwin-stdenv: remove python-sphinx and a bunch of other dependencies from the stdenv
2017-06-01 23:23:56 +02:00
Vladimír Čunát
538aa0f808
Merge branch 'staging' (early part)
...
The comparison looks nice on Hydra.
2017-05-30 16:08:21 +02:00
John Ericson
20e756a093
lib: Consolidate platform configurations (used for crossSystem)
...
This is good for maintenance and education.
2017-05-29 18:56:03 -04:00
Daiderd Jordan
db4ff1d305
Merge pull request #26091 from LnL7/darwin-cf-10.10
...
CoreFounation: 10.9 -> 10.10
2017-05-28 20:38:16 +02:00
Daiderd Jordan
779ec14402
Merge pull request #25921 from dtzWill/feature/llvm-manpages
...
llvm-4/clang-4: Build and install man pages
2017-05-28 20:29:21 +02:00
Daiderd Jordan
077840e528
darwin-stdenv: use darwin.ICU instread of icu
2017-05-27 23:19:49 +02:00
Vladimír Čunát
8004e79415
Merge branch 'master' into staging
2017-05-24 03:24:06 +02:00
John Ericson
eaa509f33a
stdenv: Rename isGNU
to isHurd
as GNU is a userland
...
Elsewhere, things called GNU indeed includes GNU/Linux or GNU/Hurd, but this
predicate was defined excluding Linux regardless of userland.
2017-05-22 13:55:26 -04:00
Frederik Rietdijk
99cfab07b9
Merge remote-tracking branch 'upstream/master' into HEAD
2017-05-22 09:21:40 +02:00
John Ericson
1dc6f15de9
stdenv: define is* predicates with hostPlatform.is*
...
This is a saner default until stdenv's are removed altogether
2017-05-22 00:25:02 -04:00
John Ericson
c5c6606048
lib: Infer libc
field of platform if not specified
...
This is especially useful when not cross compiling. It means we can
remove the `stdenv.isGlibc` predicate too.
Additionally, use this to simplify the logic to choose the
appropriate libiconv derivation.
2017-05-22 00:25:02 -04:00
Daiderd Jordan
1e23b49f46
darwin-stdenv: allow clang-unwrapped.man
2017-05-21 12:40:07 +02:00
John Ericson
7e096024d7
glibc: Fix for cross
2017-05-19 18:44:24 -04:00
Vladimír Čunát
e9aeb55f3b
Merge branch 'master' into staging
2017-05-18 11:24:18 +02:00
John Ericson
bfa8f30499
linux cross stdenv: Use the cross stdenv and nativeBuildInputs
...
This is a cross derivation---it's built on one platform to run on
another---so let's structure it like all the other cross derivations.
2017-05-17 15:33:05 -04:00
John Ericson
5870795cc6
linux cross stdenv: Fix eval errors
...
`pkgsNoParams` was removed by me, but then #25035 was merged using it,
leading to an unbound identifier.
It would be nice to get travis to do build release-cross.nix or
something to catch these things.
2017-05-17 13:42:51 -04:00
Vladimír Čunát
fa5d543770
Merge branch 'master' into staging
2017-05-06 13:24:28 +02:00
Vladimír Čunát
ef5844be6c
stdenv: disable audit-tmpdir on non-Linux for now
...
Without changing any hashes.
2017-05-06 13:19:07 +02:00
Dan Peebles
c217f59344
darwin.make-bootstrap-tools.test: fix build breakage
...
In the extremely unlikely case that our store hash path ends in several
digits (as is the case right now), the Darwin ld will try to interpret
those digits as a version number and barf. To avoid that, we pass in the
SDK version explicitly to stop it from trying to figure it out from iffy
context.
2017-05-05 21:34:28 -04:00
Eelco Dolstra
94d164dd7f
Add a setup hook for detecting $TMPDIR references in RPATHs and wrapper scripts
2017-05-04 20:23:57 +02:00
Domen Kožar
e057e5927e
Merge pull request #25427 from aneeshusa/fix-meta-priority-types
...
Fix meta priority types
2017-05-02 09:38:32 +02:00
Aneesh Agrawal
d3acf9891c
stdenv: More useful error message on bad meta attrs
...
This helps in debugging meta attribute type errors,
which are now enforced as of commit
90b9719f4f
.
2017-05-02 01:45:30 -04:00
Dan Peebles
f3a05a0fb3
stdenv: disable checkMeta by default until issues resolved
...
https://github.com/NixOS/nixpkgs/pull/25304#issuecomment-298385426
2017-05-01 13:51:12 -04:00
Michael Raskin
bcbafdefc4
Merge pull request #25035 from elitak/cross-staging
...
Add some ARM platforms
2017-05-01 13:30:32 +02:00
Eric Sagnes
7004919243
stdenv-generic: add meta attributes checks
2017-04-29 17:07:01 +09:00
Dan Peebles
90b9719f4f
treewide: fix the remaining issues with meta attributes
2017-04-29 04:24:34 +00:00
Dan Peebles
1a4ca220e1
treewide: fix assorted issues revealed by the meta checker
...
Turns out a couple of the licenses were wrong, as well as being strings.
2017-04-28 23:07:42 -04:00
Dan Peebles
32ae4bfc20
stdenv-generic: add meta attribute checking
...
This is turned off by default but I think we should fix all packages to
respect it and then turn it on by default
2017-04-28 18:12:18 -04:00
John Ericson
761af14778
Merge pull request #25227 from obsidiansystems/cross-purge-binutilsCross
...
Purge binutilsCross
2017-04-26 09:09:06 -04:00
John Ericson
295315cc87
binutilsCross: Remove and use binutils
instead always
...
See previous commit for what was done to `binutils` to make this
possible.
There were some uses of `forcedNativePackages` added. The
combination of overrides with that attribute is highly spooky: it's
often important that if an overridden package comes from it, the
replaced arguments for that package come from it. Long term this
package set and all the spookiness should be gone and irrelevant:
"Move along, nothing to see here!"
No hashes should be changed with this commit
2017-04-25 21:36:19 -04:00
John Ericson
85b4d30c0b
binutils: Respect the targetPlatform
...
Use `buildPackages.binutils` to get build = host != target binutils,
i.e. the old `binutilsCross`, and use
`buildPackages.buildPackages.binutils` to get build = host = target
binutils, i.e. the old `binutils`.
`buildPackages` chains like this are supposed to remove the need for
all such `*Cross` derivations. We start with binutils because it's
comparatively easy.
No hashes of cross-tests should be changed
2017-04-25 21:31:50 -04:00