John Ericson
b57c5d4456
python: Use makeScopeWithSplicing
...
Now non-`buildInputs` that are python packages should be resolved
correctly.
2020-11-19 11:58:07 -05:00
John Ericson
330d468002
python: Use packages from previous stage in setup-hooks
...
This makes sense as these are tools we want to run at build time.
2020-11-19 11:58:03 -05:00
John Ericson
a6218c058b
lib: Create makeScopeWithSplicing
...
It's ugly as hell, but I suppose it is needed to codify how to make
spliced package sets.
2020-11-19 00:07:14 -05:00
John Ericson
9f05c50be1
libarchive: Fix Windows build
2020-10-29 00:38:45 +00:00
John Ericson
437dc4c047
zstd: Fix MinGW build
2020-10-28 23:34:51 +00:00
John Ericson
54b4b470c3
makeRustPlatform: Put back in it's own file.
...
We expose it on the top level, but I don't think it makes sense to pull
it from a specific version of the rust tools when it is in fact version
agnostic.
This reverts a tiny portion of 912dca193a .
2020-10-13 20:05:29 -04:00
John Ericson
e75f863bd4
darwin bootstrapping: Dedup code a bit
2020-10-13 19:26:13 -04:00
John Ericson
5235a1e1fc
Merge remote-tracking branch 'obsidian/cmake-nativeBuildInputs' into cmake-optional-openssl
2020-10-13 19:23:14 -04:00
John Ericson
e6294cfb7e
cmake: Tighten deps
...
- OpenSSL is evidentally an optional dep. I guess pkg-config found it
before because it was a transitive dep?
- `zstd` and cross-built CMake can get by with a `cmakeMinimal that we
use during bootstrapping, so let's restrict to that.
2020-10-02 15:52:11 +00:00
John Ericson
54b7d5266b
cmake: Don't be target sensative
...
pkg-config now has a target-sensative wrapper. We shouldn't rebuild
CMake because that wrapper changes. The setup hook should also be a
build time dep.
Fix #99325
2020-10-02 15:02:58 +00:00
John Ericson
f60fc7f61f
meson: Remove propagated native C compiler
...
Now that we have a Meson release containting [1], Meson will work fine
without a native compiler, so we don't need this trick anymore.
Fixes #58831
[1]: https://github.com/mesonbuild/meson/pull/6512
2020-09-30 10:31:39 -04:00
John Ericson
92f96f47b0
treewide: Get rid of cc.gcc
...
Instead, we have a new `gccForLibs`, which has the appropriate
definition for e.g. avoiding `x86_32` linking problems.
2020-08-02 17:12:05 +00:00
John Ericson
1ed248eac2
nixos/nix-daemon: Organize buildMachine options with a submodule
2020-07-05 16:51:55 +02:00
John Ericson
704daf7a6e
{bintools,cc}-wrapper: Ensure nix-support/*-flags files exist
...
This will unbreak firefox and a few other packages which try to grab
some of the libcxx flags.
2020-06-30 18:26:37 +00:00
John Ericson
1085403acd
{cc,bintools}-wrapper: Comments no longer spliced
...
This means we can freely keep the comments up to date without the
penalty of a mass rebuild.
2020-06-30 15:04:10 +00:00
John Ericson
4422ff588f
Merge remote-tracking branch 'upstream/nixos-unstable-small' into staging
2020-06-22 04:21:03 +00:00
John Ericson
e00d4d6021
emscripten: Don't always clain to have a GCC
2020-06-22 00:17:03 -04:00
John Ericson
a997afb7da
zstd: Fix cross
...
CMake is a build-time dep, so we need to override it with
`buildPackages`, explicitly.
2020-06-20 15:21:19 +00:00
John Ericson
7156cd1c39
libgpg-error: Fix cross build
...
See comment for details
Fixes #91016
2020-06-20 01:19:28 +00:00
John Ericson
4044d81d5c
IPFS NixOS module: Socket unit file more precise
...
The systemd socket unit files now more precisely track the IPFS
configuration, by including any multaddr they can make a `ListenStream`
for. (The daemon doesn't currently support anything which would use
`ListDatagram`, so we don't need to worry about that.)
The tests use some of these features.
2020-06-17 21:43:04 +00:00
John Ericson
fd4dcae884
Merge remote-tracking branch 'upstream/nixpkgs-unstable' into staging
2020-06-14 21:46:35 +00:00
John Ericson
c1b9f86cdd
php < 7.4: Fix validation of PKG_CONFIG var
...
They were assuming it is an absolute path, but it (conventionally) can
be something to look up on the PATH too.
Fixes #90202
2020-06-13 19:06:33 +00:00
John Ericson
2a8b8f6593
release-lib: Avoid filtering twice
...
We were using `supportedMatches` both when getting the list of
platforms, and before `genAttrs` the derivation for each. Now we just
filter the second time,
2020-06-12 15:23:21 -04:00
John Ericson
41dc003692
perlPackages.ExtUtilsPkgConfig: Fix build
...
Fixes #90084
2020-06-12 18:22:37 +00:00
John Ericson
a239864fc6
systemd: Fix cross build
...
This was very similar to the Mesa issues fixed in
62e6d73a09 : the user-written code is
looking up an unprefixed binutils program.
[I think we should have a way in Meson of specifying a program prefix in
the cross / native files, as a fallback for any program that isn't
explicitly specified. This could both be availible for user written
rules, and help with the default rules.]
Fixes https://github.com/NixOS/mobile-nixos/issues/161
2020-06-08 00:29:51 +00:00
John Ericson
87e86b4574
autoen: Fix cross build
...
See comments for details. Patch can be removed whend version is bumped.
2020-06-07 16:04:42 +00:00
John Ericson
b78c6d47ee
autogen: More normal formatting
2020-06-07 16:04:42 +00:00
John Ericson
f005272623
wayland: Simplify cross build
...
Now that we have a pkg-config wrapper, we can get build-time deps via
pkg-config.
2020-05-27 17:27:24 +00:00
John Ericson
162c0c3e61
mkDerivation: Don't need to specify pkg-config for meson any more
...
Env var will work fine.
2020-05-27 16:07:58 +00:00
John Ericson
7e9d807f2c
pkg-config-wrapper: Move comments outside of strings
...
This is much better because then we can freely keep the comments up to
date without causing mass rebuilds.
Someday, somebody should make the same change with `cc-wrapper` and
`bintools-wrapper`.
2020-05-21 11:35:46 -04:00
John Ericson
95080ea90b
pkgconf: Wrap with pkg-config-wrapper
2020-05-21 11:35:46 -04:00
John Ericson
23490e3f50
pkgconf: Multiple outputs
2020-05-21 11:35:45 -04:00
John Ericson
4b2ab665fb
pkg-config-wrapper: Provide autoconf macros
...
This fixes libarchive, and probably numerous other builds.
2020-05-21 09:16:34 -04:00
John Ericson
f29919da61
pkg-config: Multiple outputs
...
This is good practice, and will help with tests. Wrapper adjust to match
bintools-wrapper re these new outputs.
2020-05-21 08:58:34 -04:00
John Ericson
42b2035730
pkg-config: If building vanilla version, can run original tests
2020-05-21 08:52:20 -04:00
John Ericson
26f635d39a
pkg-config: Document new location of bug
2020-05-21 08:49:21 -04:00
John Ericson
c71ab32a67
pkg-config-wrapper: Init
...
This fixes longstanding build issues
2020-05-16 00:21:21 +00:00
John Ericson
ee8cfe4bf3
treewide: pkg-config has targetPrefix
2020-05-16 00:21:21 +00:00
John Ericson
27edd9efb3
cross/tests: Use crossPkgs.runCommand so we have strictDeps
2020-05-16 00:21:21 +00:00
John Ericson
ade7faea72
Revert "Revert "libbfd: fix build""
...
This reverts commit 237ef3095c .
Looks like we're trying to bump binutils again?
2020-05-14 09:38:14 +02:00
John Ericson
c10f0a32d2
Revert "Revert "libbfd: fix build""
...
This reverts commit 237ef3095c .
Looks like we're trying to bump binutils again?
2020-05-13 04:39:18 +00:00
John Ericson
1ac5398589
*-wrapper; Switch from infixSalt to suffixSalt
...
I hate the thing too even though I made it, and rather just get rid of
it. But we can't do that yet. In the meantime, this brings us more
inline with autoconf and will make it slightly easier for me to write a
pkg-config wrapper, which we need.
2020-05-12 00:44:44 -04:00
John Ericson
cf858e6d57
mkDerivation mesonFlags: Fix cross file logic to handle more cases
...
Otherwise eval breaks
2020-04-28 16:51:44 -04:00
John Ericson
8245230753
meson: Make target-agnostic
...
The cross file is added in the `mkDerivation`. It isn't nice putting
build tool-specific stuff here, but our current architecture gives us
little alternative.
2020-04-28 10:55:33 -04:00
John Ericson
128b93e061
meson: Patch to ingest env vars like autoconf
...
See comment in code and the PR it references,
https://github.com/mesonbuild/meson/pull/6827 , for details.
We can remove entries from the cross file because they will be gotten
from env vars now.
2020-04-28 10:11:41 -04:00
John Ericson
3c00ca03a2
meson: Don't set CC and CXX
...
I've since convinced upstream to not use such vars for the build
platform during cross. Finally!
2020-04-26 16:50:06 -04:00
John Ericson
607522c78d
numpy: Use blas and lapack dev outputs for include dirs
2020-04-20 21:40:48 -04:00
John Ericson
1ea80c2cc3
Merge remote-tracking branch 'upstream/master' into staging
2020-04-18 15:40:49 -04:00
John Ericson
33c2a76c5e
Merge remote-tracking branch 'upstream/master' into staging
2020-04-17 18:40:51 -04:00
John Ericson
6bf6ec8a96
Merge remote-tracking branch 'upstream/master' into consistent-bazel-ref
2020-04-01 16:16:30 -04:00
John Ericson
6f94f8fd3f
bazel-*: Consistently self reference
...
Using `bazel_self` for self-references makes managing bazel versions
easier: their less risk of changing defaults or copy pasted code for no
versions leading to incorrect self-references.
2020-04-01 16:16:26 -04:00
John Ericson
cef0110b84
tensorflow-estimator-1.x: Put back comment
2020-03-30 17:43:56 +00:00
John Ericson
1fa310549c
Merge remote-tracking branch 'upstream/master' into add-tensorflow-2
2020-03-30 13:59:16 +00:00
John Ericson
d4de62dedd
bazel_0_29: init at 0.29.1
...
Needed for Tensorflow 2.1
2020-03-30 04:30:40 +00:00
John Ericson
ea5c800175
Merge branch 'tensorflow-versions'
...
No code is changed, just trying to assist with eventual backport.
2020-03-27 20:53:40 +00:00
John Ericson
33d64b1e24
Merge branch 'tensorflow-versions'
...
This changes no code, but assists in backports.
2020-03-25 17:40:13 +00:00
John Ericson
e95ccab981
Merge branch 'master' of github.com:nixos/nixpkgs
2020-03-25 11:51:19 -04:00
John Ericson
506811aee2
Merge branch 'master' of github.com:nixos/nixpkgs
2020-03-25 11:50:07 -04:00
John Ericson
546cd363d4
Merge branch 'bazel-versions'
...
This doesn't change any code, just will make some backports easier
2020-03-25 11:46:24 -04:00
John Ericson
6da742383b
Merge commit '2607aae93fc9db7b05541d8338a7e6bb9871d057' into tenserflow-versions
2020-03-25 11:26:54 -04:00
John Ericson
7c0d3f6f70
lib: Fix systems test for new armv6l-none
2020-03-18 17:43:11 -04:00
John Ericson
0c73297c07
compiler-rt-{7,8,9}: Fix cmakeFlags in a few ways
...
- Cross to bare metal with GCC works
- Flags are deduplicated
- Darwin bootstrapping for 8 and 0 closer.
- Flags are same across versions.
2020-03-18 12:10:09 -04:00
John Ericson
bc054004ac
cc-wrapper, clang: libstdcxxHook should a propagated build input
...
Lumping it in with the target platform libraries was incorrect, and
caused eval failures when gcc couldn't be built for the target platform.
2020-03-18 11:28:52 -04:00
John Ericson
99c18b3441
clang-*: Sync wrapping logic
...
We only want to refer to GCC under these conditions.
2020-03-18 11:28:05 -04:00
John Ericson
84497cabd1
Merge remote-tracking branch 'upstream/master' into staging
2020-03-13 17:39:11 -04:00
John Ericson
783fa4616e
rustc: Add way to override the arch and config triple for rust
...
Sometimes it is useful for it to be slightly different. Going forward we
should, however, try to make this fallback rarely needed.
2020-03-12 09:56:55 -04:00
John Ericson
00afca0929
lib: Add armv6l-none to doubles list
2020-03-12 09:56:17 -04:00
John Ericson
0b0e691833
rust 1.41: Fix build with no_std only target
...
See https://github.com/rust-lang/rust/pull/69381
2020-02-22 18:34:05 -05:00
John Ericson
196682b175
Merge remote-tracking branch 'upstream/master' into work-on-multi-shellFor
2020-02-22 17:34:08 -05:00
John Ericson
1c07ee7925
haskell shellFor: Fix hoogle
2020-02-22 13:10:30 -05:00
John Ericson
cb46b97ae9
release.nix: Make hydra build all unit tests
...
We have just a few, and these are regular jobs not must-pass. The tests
that were must-pass are left as is.
2020-01-17 10:48:42 -05:00
John Ericson
ba9066abca
Merge together merge bases of 19.09 and master
2020-01-15 18:54:36 -05:00
John Ericson
28c37155d7
xcode: Add more hashes, and fix some old ones
2020-01-03 15:19:08 -05:00
John Ericson
c1fb358a78
Merge remote-tracking branch 'obsidian/ghcjs-cross-without-cc-common' into ghcjs-cross-without-cc
2019-12-30 18:16:22 -05:00
John Ericson
6078f094c6
pkgs/stdenv/booter.nix: Add comment explaining hasCC trickery
2019-12-30 18:09:45 -05:00
John Ericson
c4508df25d
Merge remote-tracking branch 'obsidian/ghcjs-cross-without-cc-19.09' into ghcjs-cross-without-cc
2019-11-26 12:58:13 -05:00
John Ericson
8737963735
Fix lib tests
...
js-ghcjs didn't fit in an existing categor.
2019-11-26 12:57:16 -05:00
John Ericson
f191360ad0
Merge remote-tracking branch 'upstream/staging-next' into staging
2019-11-25 15:59:05 -05:00
John Ericson
d60532bc71
coq: Fix setup hook
2019-11-25 14:20:10 +00:00
John Ericson
80524db331
Merge branch 'ghcjs-cross-without-cc-19.09' into ghcjs-cross-without-cc
2019-11-25 14:11:18 +00:00
John Ericson
765d2608b6
Fix lib tests
...
js-ghcjs didn't fit in an existing categor.
2019-11-25 14:09:50 +00:00
John Ericson
6bc456c91c
Merge remote-tracking branch 'upstream/master' into ghcjs-cross-without-cc
2019-11-25 00:23:07 +00:00
John Ericson
ea9a2c5ec2
haskell genenric-builder: Make the C compiler optional
...
This is GHCJS, and perhaps other obscure targets.
2019-11-25 00:12:39 +00:00
John Ericson
c739c420db
Add support for cross compiling to js-ghcjs
...
This platform doesn't have a C compiler, and so relies and the changes
in the previous commit to work.
2019-11-25 00:12:38 +00:00
John Ericson
63bd851e95
stdenv: Introduce hasCC attribute
...
Before, we'd always use `cc = null`, and check for that. The problem is
this breaks for cross compilation to platforms that don't support a C
compiler.
It's a very subtle issue. One might think there is no problem because we
have `stdenvNoCC`, and presumably one would only build derivations that
use that. The problem is that one still wants to use tools at build-time
that are themselves built with a C compiler, and those are gotten via
"splicing". The runtime version of those deps will explode, but the
build time / `buildPackages` versions of those deps will be fine, and
splicing attempts to work this by using `builtins.tryEval` to filter out
any broken "higher priority" packages (runtime is the default and
highest priority) so that both `foo` and `foo.nativeDrv` works.
However, `tryEval` only catches certain evaluation failures (e.g.
exceptions), and not arbitrary failures (such as `cc.attr` when `cc` is
null). This means `tryEval` fails to let us use our build time deps, and
everything comes apart.
The right solution is, as usually, to get rid of splicing. Or, baring
that, to make it so `foo` never works and one has to explicitly do
`foo.*`. But that is a much larger change, and certaily one unsuitable
to be backported to stable.
Given that, we instead make an exception-throwing `cc` attribute, and
create a `hasCC` attribute for those derivations which wish to
condtionally use a C compiler: instead of doing `stdenv.cc or null ==
null` or something similar, one does `stdenv.hasCC`. This allows quering
without "tripping" the exception, while also allowing `tryEval` to work.
No platform without a C compiler is yet wired up by default. That will
be done in a following commit.
2019-11-25 00:12:38 +00:00
John Ericson
5858d7229a
ghcjs-ng: The GHC source should be configured with native build inputs
...
This matters once we start treating GHCJS as cross compilation, as we
should be.
2019-11-24 23:08:47 +00:00
John Ericson
ef328622e0
cctools, darwin biutils: Use pname and version
2019-11-24 18:36:40 +00:00
John Ericson
4f1261134e
Merge remote-tracking branch 'upstream/master' into staging
2019-11-24 18:33:54 +00:00
John Ericson
234446a447
binutils: Use pname
2019-11-24 18:32:26 +00:00
John Ericson
04f3bc518e
binutils: Inherit version
2019-11-24 18:32:26 +00:00
John Ericson
747d5a3dbf
Merge branch 'wrapper-pname-support-19.09' into wrapper-pname-support
2019-11-24 18:00:29 +00:00
John Ericson
4a0a297861
bintools-wrapper: Fix version
2019-11-24 17:57:06 +00:00
John Ericson
51991e9606
Merge branch 'wrapper-pname-support-19.09' into wrapper-pname-support
2019-11-24 17:37:19 +00:00
John Ericson
97baa2e21b
doc: Fix and clarify allowInsecurePredicate example
...
I had made inbalanced parens. Remove unneeded parens for legibility too.
2019-11-24 17:36:17 +00:00
John Ericson
d34d84a61d
firefox-wrapper: Get rid of name argument
...
Only pname + version is supported now. (Both are still optional,
however.)
2019-11-24 17:27:45 +00:00
John Ericson
d0d5136cce
Merge remote-tracking branch 'upstream/master' into wrapper-pname-support
2019-11-24 17:25:07 +00:00
John Ericson
9b090ccbca
treewide: Get rid of most parseDrvName without breaking compat
...
That is because this commit should be merged to both master and
release-19.09.
2019-11-24 17:22:28 +00:00
John Ericson
84a105254d
lib: Add getName to mirror getVersion
2019-11-24 16:24:50 +00:00
John Ericson
ae8a90554e
rocksdb: Build with Ninja
...
This is sightly faster/simpler.
2019-11-23 17:27:16 +00:00
John Ericson
4686cfcc94
Merge remote-tracking branch 'upstream/master' into mingw-rocksdb
...
Can just use single commit from
https://github.com/facebook/rocksdb/pull/6076 for rocksdb!
2019-11-23 17:26:49 +00:00