John Ericson
af36123747
.github/CODEOWNERS: Add myself as for some stdenv stuff
2018-08-11 13:57:53 -04:00
John Ericson
f539c30095
postgresql: Fix nits after cross fixes
2018-08-02 18:48:06 -04:00
John Ericson
9fb6462817
Merge commit master into staging
2018-07-30 15:33:01 -04:00
John Ericson
87357fc39c
cross stdenv: Forget allowedRequisites = nulll; on inline
2018-07-25 03:58:49 -04:00
John Ericson
310cb76135
libgcc: Init at 7.3.0
...
This will be very useful for bootstrapping, eventually.
2018-07-25 01:24:38 -04:00
John Ericson
0f3a7982e7
libstdcxx5: Move around ahead of other GCC libs being added
2018-07-24 20:22:51 -04:00
John Ericson
b81ee9df9f
makeStdenvCross: Remove
...
It is inlined into the cross stdenv, which is its last use-case after
the previous commit.
2018-07-24 20:01:43 -04:00
John Ericson
839f96a4c5
crossLibcStdenv: Just use overrideCC
...
Now that we don't hackily override `mkDerivation`, the TODO is solved
and we just can!
2018-07-24 20:01:43 -04:00
John Ericson
c12b50b267
stdenv cross adapter: Use extraNativeBuildInputs
...
This means we don't need to hackily avoid overwriting `mkDerivation`.
2018-07-24 20:01:43 -04:00
John Ericson
87b4a5d6a7
stdenv: Remove crossAttrs, now that it is no longer used
...
Fix #33302
2018-07-24 20:01:43 -04:00
John Ericson
6bee6b8f4b
qt-4.8: Don't use crossAttrs
2018-07-24 20:01:43 -04:00
John Ericson
519e87a449
util-linux: No more crossAttrs
...
More cleanup will come later
2018-07-24 19:40:46 -04:00
John Ericson
1833a04aed
flex: Don't use crossAttrs
2018-07-24 19:40:46 -04:00
John Ericson
4116754f45
elfutils: Don't use crossAttrs
2018-07-24 19:40:46 -04:00
John Ericson
e5d630e99e
kmod: Remove crossAttrs
...
Issue #21191 is indeed fixed now.
2018-07-24 18:39:41 -04:00
John Ericson
0859696d06
sharutils: Remove crossAttrs
...
The patch is no longer needed, at least on aarch64-linux
2018-07-24 18:36:59 -04:00
John Ericson
c99de14e60
curl: Get rid of crossAttrs
2018-07-24 18:36:59 -04:00
John Ericson
aa9dba9c39
newt: Remove crossAttrs
2018-07-24 18:36:59 -04:00
John Ericson
5be14c5c74
libxml2: Remove crossAttrs
2018-07-24 18:36:59 -04:00
John Ericson
1f9838ea34
jom: Remove crossAttrs
...
Untested, but I don't think this has ever built.
2018-07-24 17:54:31 -04:00
John Ericson
ef93b82d43
prboom: Don't use crossAttrs
2018-07-24 17:53:56 -04:00
John Ericson
3470fa196d
scumvm: Don't use crossAttrs
2018-07-24 17:51:20 -04:00
John Ericson
aa8944f403
hurd: Remove cross attrs
2018-07-24 17:25:40 -04:00
John Ericson
66c41943b3
gnu mig: Remove crossAttrs
2018-07-24 17:25:40 -04:00
John Ericson
40c33cbd4e
nlohmann_json: No more crossAttrs
2018-07-24 17:25:40 -04:00
John Ericson
ce2637c97a
mkDerivation: depsHostBuild -> depsHostHost
...
`depsHostBuild` is not a thing, would never be a thing per the rules,
and isn't used anywhere. This is just my typo, hitherto unnoticed
because "host -> host" dependencies are by far the most obscure form.
2018-07-23 15:22:48 -04:00
John Ericson
aa6adfc324
fetchpatch: Add includes to compliment excludes, and require that both not be non-empty.
...
This commit was originally introduced as part of #41420 and then
reverted with the rest of that PR. However there was no reason to revert
his particular commit.
2018-07-15 09:56:41 +02:00
John Ericson
740cfffcb2
haskell infra: Fix built-time overrides
...
These should all come from `buildHaskellPackages`
2018-07-09 18:09:17 -04:00
John Ericson
f27f491784
Haskell infra: Do callPackage splicing
2018-07-09 16:39:37 -04:00
John Ericson
0eb142cd46
top-level: Expose splicePackages for newScope users
...
Otherwise extra packages in scope can't be made to work for cross. As
much as I think splicing is an evil trick, I think it's best to do this
and at least have it work consistently for now.
It would seems simpler to expose a `newScopeWithSplicing`, but there's a
few attrs (like `buildPackages` or `buildHaskellPackages`) that
shouldn't be spliced. Users should instead splice, override the splicing
on those packages, and apply `newScope` to that.
2018-07-09 12:33:43 -04:00
John Ericson
48ccdf322d
lib: Use lib.fixed-points.extends to avoid repetition
2018-07-09 12:33:43 -04:00
John Ericson
0299641c91
haskell generic-builder: Make test and benchmark tool depends nativeBuildInputs
...
This was reverted in 6e07a3a19a with the
other commits in the PR, as the number of overrides added in that PR was deemed
excessive. But this commit adds no overrides, and is valuable on its
own, so I am adding it back.
(cherry picked from commit 359e0ce4bb )
2018-07-09 12:30:18 -04:00
John Ericson
f795ed79d0
stage: Make pkgsMusl and pkgsi686linux respect the original localSystem more
...
For example:
nix-repl> pkgsi686Linux.pkgsMusl.hostPlatform.config
"i686-unknown-linux-musl"
nix-repl> pkgsMusl.pkgsi686Linux.hostPlatform.config
"i686-unknown-linux-musl"
2018-07-05 16:17:54 -04:00
John Ericson
3457ce0142
with-location: Link upstreamming attempt
2018-07-02 15:52:47 -04:00
John Ericson
c4d43761c1
haskell with-location: Link upstreaming attempt
2018-07-02 15:52:47 -04:00
John Ericson
d2f6f527f4
alex: which needs to be a tool dep so it's a nativeBuildInput
...
Also pull it from `buildPackages`, as that is where nativeBuildInputs
come from.
2018-07-02 15:52:22 -04:00
John Ericson
242ca11b03
base-compat: Add missing build tool dependency
2018-07-02 15:52:22 -04:00
John Ericson
43e3ea0322
hspec{,-core,-discovery}: Add build-tool-depends to testsuite
...
`fetchpatch`ing a PR I just opened. This ought to get Cabal to make the
`PATH` include the newly-built exe, but unfortunately it doesn't.
2018-07-02 15:52:21 -04:00
John Ericson
ceaf285c0c
haskell generic-builder: Use strictDeps always
...
This helps avoid the `ARG_MAX` issues we've been having, and is
generally a good idea to ensure cross comparability anyways.
2018-07-02 15:51:14 -04:00
John Ericson
359e0ce4bb
haskell generic-builder: Make test and benchmark tool depends nativeBuildInputs
...
I suppose I forgot these when I did this before.
2018-07-02 15:51:14 -04:00
John Ericson
1e6aeeddce
haskell lib: Make helpers to add benchmark and test tool depends
...
These seems to be common omissions due to a) non-new-build being overly
flexible, and b) code gen most often used for test boilerplate.
2018-07-02 15:51:14 -04:00
John Ericson
57bb96d659
fetchpatch: Add includes to compliment excludes, and require that both not be non-empty.
2018-07-02 15:51:13 -04:00
John Ericson
37eca93aab
haskell generic-builder: Only pass --extra-* for host deps
2018-06-19 10:57:48 -04:00
John Ericson
b3d957649f
Merge remote-tracking branch 'upstream/master' into staging
2018-06-18 15:30:39 -04:00
John Ericson
e3b1937baf
tests.cc-wrapper: Fix sanitizer condition
...
fc9644d4c9 accidentally enabled the
sanitizer tests for GCC on Darwin, when fixing that case was never
attempted. Also inverted the condition from broken to working for
clarity.
2018-06-18 15:05:57 -04:00
John Ericson
627aae5884
darwin stdenv: Put back "man" attribute on clang and llvm
...
We take care to make it use the final stdenv to avoid mass rebuilds and
bootstrap python.
2018-06-18 14:47:29 -04:00
John Ericson
f8ec07e836
haskell generic-builder: Always use separate pkg db for custom setup
...
This decreases complexity and ensures setup dependencies are properly
specified with `setup-depends` as they should be. Testing will say if
this is a reasonable change.
2018-06-18 14:07:37 -04:00
John Ericson
92cef7ad42
compiler-rt 5: Fix double space
2018-06-14 20:25:38 -04:00
John Ericson
0e1ae4b355
Merge remote-tracking branch 'upstream/master' into staging
2018-06-14 19:42:13 -04:00
John Ericson
6e7e22da70
llvm 5: split out compiler-rt and remove libcxxabi dep
...
We already did them on non-mass-rebuild llvm 6. Also, this allows
simplifying the stdenv booting.
We were missing the libcxxabi dep in compile-rt in llvm 6, so fixed that
too.
2018-06-14 19:22:15 -04:00
John Ericson
fc9644d4c9
llvm 6: Fix libcxxabi impurity and darwin sanitizers
2018-06-14 19:19:54 -04:00
John Ericson
bdf750499e
Merge remote-tracking branch 'upstream/master' into staging
2018-06-14 15:56:00 -04:00
John Ericson
1eacf21bd4
darwin bootstrapping: Avoid overriding aliases for LLVM
...
Respect the fix points and aliases by overriding originals.
2018-06-14 15:05:18 -04:00
John Ericson
cebda2ffd0
Merge remote-tracking branch 'upstream/master' into staging
2018-06-13 21:18:24 -04:00
John Ericson
7156f46949
llvm 3.8+: Remove unneeded libcxxabi dependency
...
Evidentally this hasn't been needed for a while
2018-06-13 21:06:00 -04:00
John Ericson
e358fff0d6
llvm: use native cmake for libc++abi
...
Finish what 1cb1b9193b started.
2018-06-13 21:02:04 -04:00
John Ericson
d7895c2810
darwin stdenv: fix llvmPackage overrides
...
It may seem nice and abstract to just override the default version, but
that breaks the alias relationship where the original llvmPackages_* is
no longer in sync. Put another away, modifying the referee rather
instead of breaking the reference "copy-on-write" is impossible.
2018-06-13 16:25:12 -04:00
John Ericson
529a0f74ed
haskell generic-builder: Use separate setup db in more cases
...
Use for cross and GHCJS whether or not there are setup depends.
2018-06-13 11:34:25 -04:00
John Ericson
eeeaab8d5e
haskell generic-builder: Fix setup depends
...
I was referring to the wrong package db in a few places. Thanks
@ElvishJerricco for catching.
2018-06-12 14:07:33 -04:00
John Ericson
812decd5c1
ghc: Default integer-simple usage based one whether GNU MP is available
...
The user's choice is still always respected
2018-06-11 15:51:57 -04:00
John Ericson
f379be939c
haskell infra: Use self.ghc rather than closing over initial value
2018-06-07 14:27:44 -04:00
John Ericson
58ce59dd96
haskell infra: Allow overriding haskellSrc2nix
2018-05-31 16:29:02 -04:00
John Ericson
72fa40f72d
lib: Fix nix-env -qaP -f . --xml --meta
...
A merge undid my fix in d437f2c365 .
2018-05-29 13:06:17 -04:00
John Ericson
2e70a75b12
haskell generic-builder: Limit usage of --extra-framework-dirs for compat
2018-05-25 14:52:58 -04:00
John Ericson
d437f2c365
lib: Fix nix-env -qaP -f . --xml --meta
...
The function value cannot be serialized so nix-env was mad. Turns out we can
just remove it like we do in `lib/systems/inspect.nix`.
2018-05-24 10:43:14 -04:00
John Ericson
205fc55ea2
Merge remote-tracking branch 'upstream/staging' into compiler-rt
2018-05-24 02:58:00 -04:00
John Ericson
e5175fbf20
Merge remote-tracking branch 'upstream/master' into ios-mini-staging
2018-05-23 16:01:05 -04:00
John Ericson
d7144e708b
Merge remote-tracking branch 'upstream/master' into staging
2018-05-23 16:00:04 -04:00
John Ericson
58fd684c76
llvm: Separate tools and libraries for clarity
...
Especially provides clarity with respect to cross.
2018-05-23 14:42:06 -04:00
John Ericson
11fe14b2aa
Merge branch 'ios-mini-staging' into staging
2018-05-23 11:46:49 -04:00
John Ericson
63df0613d6
Merge branch 'ios-mini-staging' into staging
2018-05-23 10:58:54 -04:00
John Ericson
c7458ded5c
ghc 8.4.2, head: Adjust enableShared enableTerminfo for windows
2018-05-23 10:41:17 -04:00
John Ericson
1978115c3b
ghc: Handle flavors better
2018-05-23 10:27:42 -04:00
John Ericson
9ce15ea60c
ghc: Normalize derivations
2018-05-23 10:27:42 -04:00
John Ericson
e1b9419dec
haskell generic builder: setupHaskellDepends should be `nativeBuildInputs
...
This is because they are just for Setup.hs, so they are just used at build time
and completely isolated from the normal components' dependencies.
This was previous implemented in 8a8f0408cd , but
reverted in e69c7f5641 because it broken
setup-depends non-cross in haskell shell environments (custom Setup.hs in cross
shell environments has never worked). This version adds a special native
exception to avoid that breakage.
2018-05-23 10:27:39 -04:00
John Ericson
513cd3de0e
haskell-generic-builder: Add extra framework dirs
...
Just like with the other `--extra-*` flags, cc/ld-wrapper already handles
this, but we need to make Cabal aware so that the haskell builds have
the correct metadata.
2018-05-23 10:26:57 -04:00
John Ericson
3394c96655
haskell generic-builder: Tiny changes that preserve hases
...
These bring us closer to staging at no cost
2018-05-23 10:23:06 -04:00
John Ericson
446cb32ea1
haskell generic-builder: Remove merge conflict
...
I forgot this in 17316643fd
2018-05-23 10:11:03 -04:00
John Ericson
983e74ae4e
stdenv: Avoid targetPlatform.isDarwin causing a mass rebuild
...
We want `buildPackages` to be almost the same as
`buildPackages.buildPackges`, but that is only true if most packages
don't care about the target platform. The commented code however made
them all care about whether the target platform was Darwin.
2018-05-23 10:06:08 -04:00
John Ericson
25f4f06c2e
Merge branch 'stdenv-darwin-persist' into ios-mini-staging
2018-05-23 10:04:55 -04:00
John Ericson
17316643fd
Merge remote-tracking branch 'upstream/master' into staging
2018-05-23 09:59:57 -04:00
John Ericson
f567a851a1
darwin stdenv: Properly compose overrides
...
`super` usage was very suspect.
2018-05-23 09:59:29 -04:00
John Ericson
64c90e53e7
darwin stdenv: Persist darwin.binutils-unwrapped
...
binutils-unwrapped was added in ef3db7d14c
and needs a corresponding `persisted` attr in the Darwin stdenv.
2018-05-23 09:51:16 -04:00
John Ericson
c641a74bd6
Merge remote-tracking branch 'upstream/master' into ios-mini-staging
2018-05-23 09:45:25 -04:00
John Ericson
18742471af
Merge remote-tracking branch 'upstream/master' into staging
...
Use newer vagrant from master
2018-05-23 09:40:37 -04:00
John Ericson
266adab32d
cctools: Remove a bunch of stuff no longer needed for Linux
2018-05-23 09:22:19 -04:00
John Ericson
4a906efce5
Merge branch 'ios-mini-staging' into staging
2018-05-22 14:08:59 -04:00
John Ericson
7ee4dc3b13
Merge remote-tracking branch 'obsidian/cross-ghc-for-master' into ios-mini-staging
2018-05-22 14:08:42 -04:00
John Ericson
7a6756aac9
Merge branch 'ios-mini-staging' into staging
2018-05-22 13:38:02 -04:00
John Ericson
2e903444d0
Merge branch 'binutils-always-patch' into ios-mini-staging
2018-05-22 13:37:32 -04:00
John Ericson
afc439d57b
binutils: Always apply Aarch64 patch
...
Otherwise various things which depend on `--enable-targets=all`
lib{bfd,opcodes}...like LLVM.
2018-05-21 20:30:25 -04:00
John Ericson
db4d77779c
Merge remote-tracking branch 'upstream/master' into staging
2018-05-21 20:21:48 -04:00
John Ericson
9ec53a397f
requireFile: Use stdenvNoCC
...
There's no need for a C compiler
2018-05-21 19:26:36 -04:00
John Ericson
03602f8162
ghc 8.4.2, head: Adjust enableShared enableTerminfo for windows
2018-05-21 15:11:12 -04:00
John Ericson
8d2ce113d5
ghc: Handle flavors better
2018-05-21 15:11:12 -04:00
John Ericson
6f2f081b90
ghc: Normalize derivations
2018-05-21 15:11:12 -04:00
John Ericson
900862ea3b
haskell generic builder: setupHaskellDepends should be `nativeBuildInputs
...
This is because they are just for Setup.hs, so they are just used at build time
and completely isolated from the normal components' dependencies.
This was previous implemented in 8a8f0408cd , but
reverted in e69c7f5641 because it broken
setup-depends non-cross in haskell shell environments (custom Setup.hs in cross
shell environments has never worked). This version adds a special native
exception to avoid that breakage.
2018-05-21 15:09:51 -04:00
John Ericson
c6f742b770
haskell-generic-builder: Add extra framework dirs
...
Just like with the other `--extra-*` flags, cc/ld-wrapper already handles
this, but we need to make Cabal aware so that the haskell builds have
the correct metadata.
2018-05-18 17:49:41 -04:00
John Ericson
5ccb99e372
Merge remote-tracking branch 'upstream/master' into staging
2018-05-18 17:48:37 -04:00
John Ericson
4fe2898608
nixpkgs module: Fix defaulting of localSystem and system
...
My c6f7d43678 made the mistake of not
having enough defaults. Now both variables are default as the *explicit*
value of the other, or a fallback. The fallback of `system` is the
default of `localSystem.system`. The fallback of `localSystem` is not
the other default (projected), as that would cause a cycle, but `{
system = builtins.currentTime; }` just as nixpkgs itself does it.
2018-05-17 18:53:13 -04:00