Commit graph

1242 commits

Author SHA1 Message Date
Vladimír Čunát
30f14243c3 Merge branch 'master' into closure-size
Comparison to master evaluations on Hydra:
  - 1255515 for nixos
  - 1255502 for nixpkgs
2016-04-10 11:17:52 +02:00
Vladimír Čunát
710573ce6d Merge #12653: rework default outputs 2016-04-07 16:00:09 +02:00
Vladimír Čunát
2995439003 buildEnv: respect meta.outputsToInstall
As a result `systemPackages` now also respect it.
Only nix-env remains and that has a PR filed:
    https://github.com/NixOS/nix/pull/815
2016-04-07 15:59:44 +02:00
Vladimír Čunát
3342f717da stdenv: set meta.outputsToInstall unless overridden 2016-04-07 15:59:43 +02:00
Vladimír Čunát
d1df28f8e5 Merge 'staging' into closure-size
This is mainly to get the update of bootstrap tools.
Otherwise there were mysterious segfaults:
https://github.com/NixOS/nixpkgs/pull/7701#issuecomment-203389817
2016-04-07 14:40:51 +02:00
Eelco Dolstra
c55cfe0cb3 stdenv-linux: Update bootstrap tools 2016-04-07 13:17:16 +02:00
Tuomas Tynkkynen
6b42f9f4be Merge commit 'bde820' from staging
http://hydra.nixos.org/eval/1252653 - only ~9400 packages to go at the
time of writing this.
2016-04-06 01:18:28 +03:00
Charles Strahan
bde82098b8 stdenv: don't complain about configure script not existing
Close #14335.
Since 89036ef76a, when a package doesn't include a configure script,
the build complains with:

    grep: : No such file or directory
    grep: : No such file or directory

This prevents that.
2016-04-02 20:52:19 +02:00
Eelco Dolstra
13a1c7b8c1 useOldCXXAbi: Change into a setup hook
Stdenv adapters considered weird.
2016-04-01 13:36:59 +02:00
Vladimír Čunát
ab15a62c68 Merge branch 'master' into closure-size
Beware that stdenv doesn't build. It seems something more will be needed
than just resolution of merge conflicts.
2016-04-01 10:06:01 +02:00
Nikolay Amiantov
9134f9358a stdenvAdapters.useOldCXXAbi: add new adapter 2016-03-31 19:52:33 +03:00
Domen Kožar
b07e7bfc7b Merge remote-tracking branch 'origin/staging' 2016-03-27 13:19:04 +01:00
Nikolay Amiantov
0c6db0ca48 cc-wrapper: add option to skip flags for native optimizations 2016-03-24 20:16:17 +03:00
Eelco Dolstra
7fc24dfd21 stdenv-darwin: Fix dependency on bootstrapTools
Commit 2040a9ac57 changed the order of
$PATH elements, causing initialpath to appear after buildInputs. Thus
gnugrep ended up depending on bin/sh from bootstrapTools, rather than
from pkgs.bash. The fix is to provide pkgs.bash via buildInputs rather
than initialPath.

http://hydra.nixos.org/build/33276697
2016-03-23 18:15:16 +01:00
Tuomas Tynkkynen
cdef1cdd38 ARM stdenv: Update bootstrap tools
For some reason, the current bootstrap tools fail to build gettext:

init2.c:37: MPFR assertion failed: (64 - 0) == ((64 - 0)/8) * 8 && sizeof(mp_limb_t) == ((64 - 0)/8)
libxml/xpath.c: In function 'xmlXPathCompPathExpr':
libxml/xpath.c:10627:1: internal compiler error: Aborted
 xmlXPathCompPathExpr(xmlXPathParserContextPtr ctxt) {
 ^
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
make[5]: *** [libxml/libxml_rpl_la-xpath.lo] Error 1

I didn't investigate why this is the case but rebuilding the bootstrap
tools seems to help.

I used this old-ish WIP branch https://github.com/dezgeg/nixpkgs/commits/arm-bootstrap
since latest master has even more problems with cross-compiling anything.
(I will eventually push this stuff and make the ARM bootstraps build on hydra.)
2016-03-17 15:59:04 +02:00
Vladimír Čunát
c643ccaa8c Merge #13950: move ncurses utilities to $out 2016-03-16 08:39:37 +01:00
Tim Cuthbertson
d05a3cd763 stdenv: don't overwrite $NIX_ENFORCE_PURITY setting
Close #13583.
2016-03-13 21:09:41 +01:00
Nicolas B. Pierron
6313a5698a Replace references to all-packages.nix, by references to the top-level of nixpkgs repository. 2016-03-13 18:25:52 +00:00
Thomas Tuegel
2667e4f5d7 make-bootstrap-tools: fix evaluation error on Darwin 2016-03-11 10:30:28 -06:00
Eelco Dolstra
dd53c65dcc Merge remote-tracking branch 'origin/gcc-5' into staging
Still some breakage but no blockers:

http://hydra.nixos.org/eval/1242130?filter=x86_64-linux&compare=1237852&full=#tabs-now-fail
2016-03-11 16:02:38 +01:00
Eelco Dolstra
2af1cb3aa6 Merge remote-tracking branch 'origin/binutils-2.26' into staging
This still breaks a few packages, but nothing really major:

  http://hydra.nixos.org/eval/1241850?filter=x86_64-linux&compare=1237919&full=#tabs-now-fail
2016-03-11 11:58:49 +01:00
Thomas Tuegel
3ef7671cea ncurses: combine $lib and $out outputs
The $lib output refers to the terminfo database in $out, which is about
10x larger than the ncurses shared library. Splitting these outputs
saves a small amount of space for any derivations that use the terminfo
database but not the ncurses library, but we do not have evidence that
any such exist.
2016-03-08 11:35:24 -06:00
Vladimír Čunát
09af15654f Merge master into closure-size
The kde-5 stuff still didn't merge well.
I hand-fixed what I saw, but there may be more problems.
2016-03-08 09:58:19 +01:00
Tuomas Tynkkynen
ad47355786 Merge remote-tracking branch 'upstream/master' into staging 2016-03-06 11:48:57 +02:00
Eelco Dolstra
a6d19c28f1 Don't apply patchelf to itself
Since patchelf 0.8 rewrites binaries in place, this causes a bus
error.
2016-03-03 13:57:45 +01:00
Vladimír Čunát
5702bc3b55 make-bootstrap-tools: fix #13629: glibc problems
On x86_64-linux glibc started to use linker scripts more extensively.

(cherry picked from commit aa564c9ed0)
2016-03-03 13:57:45 +01:00
Eelco Dolstra
639d7409f2 Move testBootstrapTools to make-bootstrap-tools.nix 2016-03-03 13:57:45 +01:00
Vladimír Čunát
aa564c9ed0 make-bootstrap-tools: fix #13629: glibc problems
On x86_64-linux glibc started to use linker scripts more extensively.
2016-03-03 12:09:50 +01:00
Danny Wilson
850a1a3323 Fix "nix" stdenv (close #13554)
Broken by changes introduced in d96893647d
2016-02-28 19:49:35 +01:00
Eelco Dolstra
c388380bb4 Switch to GCC 5 2016-02-28 17:54:11 +01:00
Eelco Dolstra
2040a9ac57 stdenv-linux: Ensure binutils comes before bootstrapTools in $PATH
Otherwise, when building glibc and other packages, the "strip" from
bootstrapTools is used, which doesn't recognise some tags produced by
the newer "ld" from binutils.
2016-02-28 01:13:15 +01:00
Eelco Dolstra
559ecc9212 stdenv-linux: Avoid building m4/bison twice 2016-02-28 01:12:58 +01:00
Eelco Dolstra
e6f61b4cf3 fetchurlBoot: Use Nix's builtin fetchurl function
This removes the need for curl in bootstrapTools, and enables https
for bootstrap tarballs.
2016-02-27 20:27:24 +01:00
Nikolay Amiantov
39609a0c94 stdenv: set SSL_CERT_FILE only if it isn't already 2016-02-25 13:53:29 +03:00
Eelco Dolstra
2f050b5d13 stdenvLinux: Use bash instead of sh from bootstrapTools
"sh" is also bash, but invoking it as "sh" disables certain features
like process substitution.

Closes #13395.
2016-02-24 11:01:11 +01:00
Eelco Dolstra
d71a4851e8 Don't try to apply patchelf to non-ELF binaries 2016-02-18 22:54:11 +01:00
Vladimír Čunát
ee994dfae6 bootstrap tools: have curl without http2 support
I assume there's not much use for it during bootstrapping.
This fixes them as well, as curl was compiled against libnghttp2 but the
lib wasn't copied to the bootstrap tools.
2016-02-17 10:04:32 +01:00
Dan Peebles
0a23d430bf stdenv-darwin: fix to work with multiple outputs 2016-02-13 15:48:22 -05:00
Vladimír Čunát
54299b60c4 Merge #12779: Mass replace pkg}/bin-style strings
... to refer to correct outputs
2016-02-03 17:25:22 +01:00
Vladimír Čunát
89036ef76a stdenv: accept wider range of $configureScript options
Fixes #12632.

I think it's better to quote this variable in general, because it is
common and even documented to pass space-separated commands in there.
The greps should just fail in that case and `if` won't proceed
which seems fine for such cases, and it's certainly better than
passing additional unintended parameters to grep
(which was happening all the time before).
2016-02-03 17:15:11 +01:00
Vladimír Čunát
ae74c356d9 Merge recent 'staging' into closure-size
Let's get rid of those merge conflicts.
2016-02-03 16:57:19 +01:00
Eelco Dolstra
917ca8920d Move setting $SSL_CERT_FILE to stdenv
Doing it in an openssl setup hook only works if packages have openssl
as a build input - it doesn't work if they're using a program linked
against openssl.
2016-02-03 13:59:10 +01:00
Tuomas Tynkkynen
5f4a8de754 treewide: Mass replace 'bzip2}/bin' to refer the 'bin' output 2016-02-01 20:45:57 +02:00
Eelco Dolstra
f4553d7219 defaultUnpack: Preserve timestamps when copying files
Commit 6d928ab684 changed this to not
preserve timestamps. However, that results in non-determinism; in
particular, it gives us a broken $SOURCE_DATE_EPOCH (especially for
everything using fetchFromGitHub). Builds affected by timestamps <
1980 should be fixed in some other way (e.g. changing the timestamp to
some fixed date > 1980).
2016-01-26 16:24:32 +01:00
Vladimír Čunát
98c7e70a3f linux stdenv bootstrap: avoid building grep twice
It's perfectly enough when we use the bootstrapped grep everywhere
except the one put into the final stdenv and final pkgs.
2016-01-25 09:55:00 +01:00
Tuomas Tynkkynen
ed7dbb46a8 treewide: Mass replace 'zlib}/lib' to refer the 'out' output 2016-01-24 10:03:39 +02:00
Tuomas Tynkkynen
ba87da9fd1 treewide: Mass replace 'pcre}/lib' to refer the 'out' output 2016-01-24 10:03:38 +02:00
Tuomas Tynkkynen
04c5830432 treewide: Mass replace 'mpfr}/lib' to refer the 'out' output 2016-01-24 10:03:38 +02:00
Tuomas Tynkkynen
c2ceed1ad1 treewide: Mass replace 'binutils}/lib' to refer the 'out' output 2016-01-24 10:03:33 +02:00
Anthony Cowley
5986aecc4c Linux stdenv update: pass gnugrep to cc-wrapper 2016-01-24 00:18:32 -05:00
Anthony Cowley
d96893647d cc-wrapper: fix on darwin
The ld-wrapper.sh script calls `readlink` in some circumstances. We need
to ensure that this is the `readlink` from the `coreutils` package so
that flag support is as expected.

This is accomplished by explicitly setting PATH at the top of each shell
script.

Without doing this, the following happens with a trivial `main.c`:

```
nix-env -f "<nixpkgs>" -iA pkgs.clang
$ clang main.c -L /nix/../nix/store/2ankvagznq062x1gifpxwkk7fp3xwy63-xnu-2422.115.4/Library -o a.out
readlink: illegal option -- f
usage: readlink [-n] [file ...]
```

The key element is the `..` in the path supplied to the linker via a
`-L` flag. With this patch, the above invocation works correctly on
darwin, whose native `/usr/bin/readlink` does not support the `-f` flag.

The explicit path also ensures that the `grep` called by `cc-wrapper.sh`
is the one from Nix.

Fixes #6447
2016-01-19 17:47:11 -05:00
Vladimír Čunát
716aac2519 Merge branch 'staging' into closure-size 2016-01-19 09:55:31 +01:00
Vladimír Čunát
620c147cce Merge branch 'master' into staging 2016-01-18 09:48:49 +01:00
Dan Peebles
edaf46fb64 stdenv-darwin: add parent attribute to bootstrap
This makes it far easier than before to hit/test early stages of the
stdenv bootstrap.
2016-01-16 14:54:11 -05:00
Eelco Dolstra
81e530a749 Set SOURCE_DATE_EPOCH to latest source file
This provides a timestamp that's more useful than 1970-01-01 yet still
deterministic.
2016-01-05 17:21:48 +01:00
Eelco Dolstra
f31fbadac3 Set a fallback default value for SOURCE_DATE_EPOCH
This is used by some build tools to provide reproducible builds. See

  https://reproducible-builds.org/specs/source-date-epoch/

for more info.

Later, we'll want to set this to a more intelligent value (such as the
most recent mtime of any source file).
2016-01-05 17:21:48 +01:00
Vladimír Čunát
b1acaffe67 Merge branch 'master' into staging 2016-01-05 10:28:58 +01:00
Vladimír Čunát
7c879d342d Merge #10816: improve FreeBSD support 2016-01-05 09:50:10 +01:00
Vladimír Čunát
1ebff73b88 stdenv/setup.sh: don't skip post-hooks (close #12032)
So far if no configure script is found or no makefile,
the rest of the phase is skipped, *including* post-hooks.
I find that behavior unexpected/unintuitive.

Earlier version of this patch had problems due to me assuming
that $configureScript is always a simple path, but that turned out
to be false in many cases, e.g. perl.
2016-01-05 09:34:02 +01:00
Dan Peebles
0313b2e09c stdenv-darwin: allow easier testing of bootstrap tools
This un-hardcodes the bootstrap tools passed into the Darwin stdenv and
thus allows us to quickly iterate on improving the design of the full
bootstrap process. We can easily change the contents of the bootstrap
tools and evaluate an entire bootstrap all the way up to real packages.
2016-01-03 21:47:09 -05:00
Dan Peebles
88c41e1f95 stdenv-darwin: rename folder and associated attribute
No point in calling it pure-darwin anymore. It's the only stdenv we have
2016-01-03 21:08:40 -05:00
Dan Peebles
01b0b3cec0 stdenv-darwin: kill old impure Darwin stdenv
I'll be moving the other one over it next commit (I split it into two to
improve git's rename detection)
2016-01-03 21:06:24 -05:00
janus
072da541de FreeBSD: undo removal of Solaris and remove changes to native stdenv now that FreeBSD has its own 2016-01-01 17:01:13 +00:00
janus
3c8f0a92d3 FreeBSD: improve bootstrapping, re-enable bdb for heimdal 2016-01-01 17:01:13 +00:00
janus
55aa9163cc FreeBSD: minor fixes, add notes and make stdenv more robust 2016-01-01 17:01:13 +00:00
janus
a472d836f6 FreeBSD: apr-util, cyrus-sasl, berkeley db, glib, gnutls, kerberos, libelf-freebsd, openldap, serf, guile, tet, shishi, gawk, gnugrep 2016-01-01 17:01:13 +00:00
janus
9897b35661 FreeBSD: patch expat, kerberos, libedit, ossp-uuid, lz4, sharutils, add libelf-freebsd 2016-01-01 17:01:13 +00:00
janus
f351aaaf85 FreeBSD: use own stdenv, do not run libtiff tests, use PIC for zlib 2016-01-01 17:01:13 +00:00
janus
2d00f27230 FreeBSD: use clang37 2016-01-01 17:01:13 +00:00
janus
c01dbc4932 FreeBSD patches for GNU m4, stdenv, miniupnpc 2016-01-01 17:01:13 +00:00
Vladimír Čunát
f9f6f41bff Merge branch 'master' into closure-size
TODO: there was more significant refactoring of qtbase and plasma 5.5
on master, and I'm deferring pointing to correct outputs to later.
2015-12-31 09:53:02 +01:00
Dan Peebles
527f3574b7 stdenvBootstrapTools.x86_64-darwin: unbreak
This is blocking Hydra from updating the nixpkgs-unstable channel. Also
add myself as a maintainer so Hydra can notify me if it breaks again
2015-12-28 16:59:37 -05:00
Luca Bruno
5b0352a6a4 Merge branch 'master' into closure-size 2015-12-11 18:31:00 +01:00
Domen Kožar
781b9eab61 allow{reason}: a bit more explicit error message 2015-12-09 17:01:46 +01:00
Vladimír Čunát
263fd55d4b Merge recent staging built on Hydra
http://hydra.nixos.org/eval/1231884
Only Darwin jobs seem to be queued now,
but we can't afford to wait for that single build slave.
2015-12-05 11:11:51 +01:00
Luca Bruno
920b1d3591 Merge branch 'master' into closure-size 2015-11-29 16:50:26 +01:00
Profpatsch
ee07543ccd stdenv: licenseAllowed -> checkValidity
Rename and make it a true function (that can be re-used and could be
moved to the library).
2015-11-27 21:56:28 +01:00
Jude Taylor
f5609a4d2a reintroduce impure host deps to all derivations 2015-11-21 15:51:48 -08:00
Jude Taylor
69e7f3bb74 switch to zero underscores for sandbox profiles; remove generateFrameworkProfile 2015-11-21 12:10:33 -08:00
Jude Taylor
a63346e33c use single underscore for sandboxProfile 2015-11-21 11:17:30 -08:00
Vladimír Čunát
333d69a5f0 Merge staging into closure-size
The most complex problems were from dealing with switches reverted in
the meantime (gcc5, gmp6, ncurses6).
It's likely that darwin is (still) broken nontrivially.
2015-11-20 14:32:58 +01:00
Jude Taylor
131e831cb9 allow networking by default and remove it from derivations 2015-11-19 11:31:06 -08:00
Jude Taylor
163acc0efa remove useless muting lines; they interfere with debugging 2015-11-19 11:31:06 -08:00
Jude Taylor
df80090d09 use per-derivation sandbox profiles 2015-11-19 11:31:06 -08:00
Jude Taylor
914e9baefe start on sandbox stuff 2015-11-19 11:31:06 -08:00
Wout Mertens
774f74b875 Don't fail if env-vars cannot be written to
env-vars is a debugging aid, see
3e5dbb2433
for a rationale for this change.
2015-11-04 16:32:59 +01:00
William A. Kennington III
dd2de66d61 Merge branch 'master.upstream' into staging.upstream 2015-10-30 17:16:07 -07:00
Eelco Dolstra
971430f623 Move stdenv-darwin bootstrap binaries to nixos.org
These are taken from http://hydra.nixos.org/build/27002702.
2015-10-29 22:16:06 +01:00
Jude Taylor
85ba0035bd rebase on eelco's bootstrap-tools changes 2015-10-23 10:27:34 -07:00
Jude Taylor
1ddc52a782 update pure-darwin make-bootstrap-tools 2015-10-23 10:05:19 -07:00
Eelco Dolstra
45c7dd7d98 Add stdenv bootstrap tools generation to release.nix 2015-10-23 13:05:36 +02:00
Vladimír Čunát
4917a4f8b3 Merge master into staging 2015-10-23 01:57:14 +02:00
Eelco Dolstra
764a523cf9 Drop unnecessary __impureHostDeps
<nix/fetchurl.nix> is a builtin derivation so it shouldn't need any
host dependencies.
2015-10-21 15:16:45 +02:00
Jude Taylor
c7cc743b52 inherit system for builtin fetchurl in PD 2015-10-15 18:08:53 -07:00
Jude Taylor
c70ec3ec63 re-fix evaluation of libSystemClosure 2015-10-15 17:19:10 -07:00
Jude Taylor
9685b08db7 fix libSystemClosure on non-darwin machines 2015-10-15 14:09:30 -07:00
William A. Kennington III
8a44a36ca4 Merge branch 'master.upstream' into staging.upstream 2015-10-15 10:22:28 -07:00
Jude Taylor
f4dbf6d7c8 Merge pull request #10187 from NixOS/switch-to-pd
Switch stdenvs to pure-darwin
2015-10-14 16:13:25 -07:00
Vladimír Čunát
99e4371526 curl: split into multiple outputs
Also use pkgconfig to be safer and fix (some) referrers.
2015-10-13 20:18:48 +02:00
Vladimír Čunát
17a3f6a6fa icu: split into multiple outputs 2015-10-13 20:18:44 +02:00
Eelco Dolstra
741bf840da Revert "Merge pull request #9543 from NixOS/staging.post-15.06"
This reverts commit f61176c539, reversing
changes made to a27ca029ee.

Conflicts:
	pkgs/development/libraries/ncurses/default.nix
2015-10-06 15:24:20 +02:00
Jude Taylor
7283bb7466 introduce separate cf-private package to account for no CLT 2015-10-06 00:11:10 -07:00
Jude Taylor
0a32eab91e fix LLVM packages to work in darwin stdenv 2015-10-05 08:46:56 -07:00
Vladimír Čunát
f361938b21 Merge staging into closure-size
This makes gcc5 the default builder, etc.
2015-10-03 15:23:13 +02:00
Vladimír Čunát
5227fb1dd5 Merge commit staging+systemd into closure-size
Many non-conflict problems weren't (fully) resolved in this commit yet.
2015-10-03 13:33:37 +02:00
William A. Kennington III
ed71860928 Merge branch 'staging.upstream' into staging.post-15.06 2015-10-02 12:41:04 -07:00
Jude Taylor
df3d54e3bb switch stdenvs 2015-10-02 12:26:33 -07:00
Jude Taylor
6367e48225 Revert "pop"
This reverts commit 724e243159.

This (clearly) should never have been committed, and is probably due to a failed stash pop
on my part.
2015-09-28 09:41:02 -07:00
William A. Kennington III
d3f4ba9d6f Merge branch 'master.upstream' into staging.upstream 2015-09-23 14:44:21 -07:00
Drew Hess
3c8b92f4b3 Workaround for getcwd configure test on 10.11.
See https://openradar.appspot.com/22671534 for a description of the
problem.
2015-09-23 14:41:41 -07:00
Jude Taylor
724e243159 pop 2015-09-22 16:27:51 -07:00
Eelco Dolstra
2a28bc6691 separateDebugInfo: Assert Linux
Also remove some unintended setting of separateDebugInfo.
2015-09-22 20:21:10 +02:00
William A. Kennington III
8b670fba26 Merge branch 'staging.upstream' into staging.post-15.06 2015-09-19 14:39:57 -07:00
Eelco Dolstra
ec5b66eb4a Enable separate debug info
You can now pass

  separateDebugInfo = true;

to mkDerivation. This causes debug info to be separated from ELF
binaries and stored in the "debug" output. The advantage is that it
enables installing lean binaries, while still having the ability to
make sense of core dumps, etc.
2015-09-17 15:56:33 +02:00
William A. Kennington III
f4a42ae509 gcc: Make 5.x the default 2015-09-15 12:14:12 -07:00
William A. Kennington III
5ca1c32a9d Merge branch 'master.upstream' into staging.upstream 2015-08-28 17:55:20 -07:00
Eelco Dolstra
f15270833a Don't barf JSON at users in error messages 2015-08-27 15:32:45 +02:00
Jude Taylor
c1f2fd4619 update pure-darwin bootstrap tools with new hash 2015-08-25 11:12:09 -07:00
William A. Kennington III
4f22eadf2c Merge branch 'master.upstream' into staging.upstream 2015-08-19 20:52:17 -07:00
Peter Simons
81ce9be104 Revert "Move licenseAllowed check into the builder attribute (fixes #7541)"
This reverts commit 4d6452ba. The change affects Hydra in a way we didn't
expect: https://github.com/NixOS/nixpkgs/pull/9305#issuecomment-132791730.
2015-08-19 23:37:45 +02:00
William A. Kennington III
901482ad99 Merge branch 'master.upstream' into staging.upstream 2015-08-19 13:54:48 -07:00
Mathnerd314
4d6452bab9 Move licenseAllowed check into the builder attribute (fixes #7541) 2015-08-17 10:54:38 -06:00
William A. Kennington III
952def0e3c Merge branch 'master.upstream' into staging.upstream 2015-08-13 11:55:02 -07:00
Jude Taylor
ef95107ddc make isClang work the way a user might expect 2015-08-12 11:27:54 -07:00
Vladimír Čunát
5ad448df3a enableDebugging: use more suitable gcc flags
-ggdb is supposed to provide better symbol information when used with gdb
-Og is the recommended optimization level for debugging purposes
2015-08-10 09:11:30 +02:00
Eelco Dolstra
32caa604e3 Force Nixpkgs rebuild
Gratuitous change to force Hydra to rebuild Nixpkgs after some
derivations had their references corrupted by a Hydra bug
(ff3f5eb4d8).
2015-08-03 20:03:11 +02:00
Jude Taylor
fa6c8445c7 make libcxxStdenv work on both darwin and linux 2015-07-27 14:25:40 -07:00
Jude Taylor
a2b3fe28a8 make bootstrap files buildable in sandbox 2015-07-10 14:00:47 -07:00
Jude Taylor
cb3e282cda unique host deps, otherwise we get 600000 char derivations 2015-07-08 14:15:03 -07:00
Jude Taylor
14d83e9565 add gnused to impure darwin stdenv 2015-06-19 22:08:01 -07:00
Jude Taylor
3790cb7d43 fix nonexistent cc path in bootstrap stdenv 2015-06-18 13:44:40 -07:00
Vladimír Čunát
61596bf405 Merge #8363: pure-darwin stdenv 2015-06-18 22:38:08 +02:00
Jude Taylor
fe75f16032 move pure stdenv into a new directory, bring back the old one
remove __impure from non-darwin OSes
2015-06-18 13:19:34 -07:00
Jude Taylor
87bca3698a remove sort and unique from stdenv 2015-06-18 12:37:42 -07:00
Jude Taylor
fa9c81f694 pure darwin stdenv 2015-06-18 12:37:41 -07:00
Eelco Dolstra
d72538be8d Don't include /no-such-path in buildInputs 2015-06-15 19:26:52 +02:00
Eelco Dolstra
42d94b6f15 Barf on non-existant build inputs
Previously saying

  buildInputs = [ "bla" ];

was quietly ignored. Now it's a fatal error.
2015-06-15 11:24:55 +02:00
Eelco Dolstra
41e1900ea1 Define closeNest before exitHandler
This prevents "closeNest: command not found" messages if setup fails
early.
2015-06-15 11:24:11 +02:00
Tuomas Tynkkynen
99a7bc241d stdenv/linux: Link statically against isl & cloog
Otherwise this fails on ARM:

/nix/store/jipqp9739n7wrjz40igbk85pqk13s0ad-binutils-2.23.1/bin/ld: /nix/store/92pdpqrqkdf8wjciq1cisvsp8kdz8p2i-gmp-5.1.3/lib/libgmp.a(mp_get_fns.o): relocation R_ARM_MOVW_ABS_NC against `__gmp_allocate_func' can not be used when making a shared object; recompile with -fPIC
/nix/store/92pdpqrqkdf8wjciq1cisvsp8kdz8p2i-gmp-5.1.3/lib/libgmp.a: could not read symbols: Bad value
collect2: error: ld returned 1 exit status
make[2]: *** [libisl.la] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory `/tmp/nix-build-isl-0.11.1.drv-3/isl-0.11.1'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/tmp/nix-build-isl-0.11.1.drv-3/isl-0.11.1'
make: *** [all] Error 2
builder for ‘/nix/store/a8ghniifd8d8agqx0cqsh41daa08v11c-isl-0.11.1.drv’ failed with exit code 2
2015-06-12 01:38:47 +02:00
Eelco Dolstra
4970574409 Merge remote-tracking branch 'origin/gcc-4.9' into staging
Conflicts:
	pkgs/development/libraries/wayland/default.nix
2015-06-11 00:23:03 +02:00
Eelco Dolstra
cde5053d9a Revert "curl: Modernize build"
This reverts commit 5e3fe3916a.
2015-06-04 14:54:52 +02:00
Eelco Dolstra
3096d03435 Revert "Refactor mkFlag / shouldUsePkg into the nixpkgs libraries"
This reverts commit 25a148fa19.
2015-06-04 14:54:48 +02:00
Eelco Dolstra
553abf71ba Merge remote-tracking branch 'origin/staging' into gcc-4.9
Conflicts:
	pkgs/build-support/cc-wrapper/default.nix
	pkgs/development/libraries/wayland/default.nix
	pkgs/development/tools/build-managers/cmake/default.nix
	pkgs/top-level/all-packages.nix
2015-06-01 20:08:43 +02:00
Florian Friesdorf
88e58a4fa2 cygwin: stdenv 2015-05-28 10:53:34 +02:00
William A. Kennington III
25a148fa19 Refactor mkFlag / shouldUsePkg into the nixpkgs libraries 2015-05-22 13:26:55 -07:00
Eelco Dolstra
24aa3551b0 Fix stdenv build 2015-05-13 18:17:25 +02:00
Eelco Dolstra
9ae86dc3fc Ensure that errexit is honoured in hooks
Partial fix for #7524.
2015-05-13 18:17:25 +02:00
Eric Seidel
395829686d add is{GNU,Clang} attrs to cc-wrapper.
These will be more pleasant to use than the existing

    (cc.cc.isClang or false)

nonsense we currently do.
2015-05-11 14:39:36 -07:00
viric
1b982918f5 Merge pull request #7740 from dezgeg/arm
ARM changes for the Jetson TK1 (and other multiplatform boards)
2015-05-07 20:53:07 +02:00
William A. Kennington III
074c4a7f78 Merge remote-tracking branch 'upstream/master' into staging 2015-05-07 01:44:49 -07:00
Tuomas Tynkkynen
a7c4aba896 ARM: Assume armv7l-hf-multiplatform instead of beaglebone
Several places in the tree associate the ARMv7 system
with the beaglebone platform. Change them to point to
armv7l-hf-multiplatform as it supports several boards (including the
beaglebone as well)
2015-05-07 06:04:10 +03:00
William A. Kennington III
874fa4d8a3 busybox: 1.22.1 -> 1.23.2
Also use musl as libc since it is just as small as uclibc, usually more
performant, and regularly makes releases.
2015-05-06 00:15:16 -07:00
Vladimír Čunát
3b9ef2c71b fix "libc}/lib" and similar references
Done mostly without any verification.
I didn't bother with libc}/include, as the path is still correct.
2015-05-05 11:52:08 +02:00
Vladimír Čunát
375bc8def7 Merge staging into closure-size 2015-05-05 11:49:03 +02:00
Eelco Dolstra
a58356c953 useGoldLinker: Fix appending to $NIX_CFLAGS_LINK 2015-05-04 14:00:45 +02:00
William A. Kennington III
5e3fe3916a curl: Modernize build 2015-05-01 15:57:14 -07:00
Vladimír Čunát
30f31c9afc Merge 'master' into staging
(relatively simple conflicts)
2015-04-26 22:52:08 +02:00
William A. Kennington III
232b71c6e8 Fix some platforms 2015-04-25 21:27:53 -07:00
Vladimír Čunát
a99e543c36 bzip2: split into multiple outputs, refactor 2015-04-18 19:32:52 +02:00
Vladimír Čunát
d484c392aa stdenv multiple-outputs: change propagation rules
Now development stuff is propagated from the first output,
and userEnvPkgs from the one with binaries.

Also don't move *.la files (yet). It causes problems, and they're small.
2015-04-18 19:30:28 +02:00
Vladimír Čunát
bf414c9d4f Merge 'staging' into closure-size
- there were many easy merge conflicts
- cc-wrapper needed nontrivial changes

Many other problems might've been created by interaction of the branches,
but stdenv and a few other packages build fine now.
2015-04-18 11:22:20 +02:00
William A. Kennington III
7ccccc15ba Merge branch 'master' into staging 2015-03-27 16:03:03 -07:00
Eelco Dolstra
5c0eb64d43 Set more precise meta.position for Haskell packages 2015-03-27 16:17:48 +01:00
Eelco Dolstra
8b2f209838 mkDerivation: Use function arguments 2015-03-27 16:17:48 +01:00
William A. Kennington III
afa998eb32 stdenv: Substitute correctly chmods instead of .tmp which never exists 2015-03-26 15:44:54 -07:00
William A. Kennington III
767c179a94 Merge branch 'master' into staging 2015-03-26 14:44:05 -07:00
Eric Seidel
7f5367c69d darwin: add apple cli-tools to initialPath so we can handle overrideCC
fixes #6934
2015-03-24 17:33:27 -07:00
Thomas Tuegel
8fd5dd89ac Merge branch 'master' into staging 2015-03-24 17:49:30 -05:00
Eelco Dolstra
bda440a7b3 substitute: Fix "No such file or directory" message on Darwin
On Darwin, "chmod -f" does not suppress an error message if the file
doesn't exist. So just check if the file exists.
2015-03-24 14:12:24 +01:00
Eelco Dolstra
d3756e162c stdenv-darwin: Auto-detect the "right" SDK version 2015-03-23 16:46:41 +01:00
Eelco Dolstra
ead7762573 stdenv-darwin: Use --sdk macosx10.9
Otherwise builds fail on Mac OS X 10.9 with Xcode 6.1. This is because
"xcrun --show-sdk-version" returns 10.10, which doesn't work.
2015-03-23 16:04:37 +01:00
Eelco Dolstra
a89c14dc3c No camelCase in filenames 2015-03-23 12:03:01 +01:00
Eelco Dolstra
8470b03db2 Remove unused file 2015-03-23 12:02:13 +01:00
Eelco Dolstra
692ed0882a Fix eval-release.nix evaluation 2015-03-06 15:09:51 +01:00
Eric Seidel
3ea2aa4136 stdenv/darwin: choose sdkroot based xcrun default 2015-03-04 21:36:09 -08:00
codyopel
e29b0da9c7 remove stdenv.isBSD 2015-02-24 22:15:51 -05:00
Dan Peebles
025f87f79a Bootstrap tools for the upcoming new darwin stdenv (not working yet in this stdenv, but will soon) 2015-02-18 00:24:34 -05:00
Dan Peebles
ecf662efc6 Flip cctools and cctools cross 2015-02-18 00:24:33 -05:00
Lluís Batlle i Rossell
6790caf713 I add back the arm unpack script
The unified made by ambro doesn't work for me in the sheevaplug.
2015-02-09 22:36:10 +01:00
Lluís Batlle i Rossell
2b7aace1ae Renaming make-bootstrap-tools-crosspi to cross.
It can build more than the raspberrypi bootstrap tools.
2015-02-05 23:32:09 +01:00
Lluís Batlle i Rossell
a761b33d8c Using fixed bootstraptools.
Built natively with latest fixes.
2015-02-05 23:00:08 +01:00
Lluís Batlle i Rossell
389d0f668e Bootstrap tools armv5tel
Conflicts:
	pkgs/stdenv/linux/default.nix
	pkgs/stdenv/linux/scripts/unpack-bootstrap-tools-arm.sh
2015-02-05 22:42:58 +01:00
Lluís Batlle i Rossell
6944b15d88 Fix busybox stdenv?
(cherry picked from commit db8668c0bb0dc8feb4929867adf1b60f7025a925)
2015-02-05 22:41:07 +01:00
Ambroz Bizjak
ef9c21a0e2 Adding the sheevaplug to make-bootstrap-tools-cross 2015-02-05 21:37:29 +01:00
Ambroz Bizjak
93e018cbe9 Make the bootstrap-tools test use the real unpacking derivation. 2015-02-05 21:29:02 +01:00
Ambroz Bizjak
810b416d89 Consolidate the unpack scripts for the bootstrap tools. 2015-02-05 21:27:12 +01:00
Ambroz Bizjak
8fb7d8bede Fix building and unpacking of the ARM boostrap tools.
NOTE: This is incomplete - the tools need to be built, uploaded and the references fixed.
2015-02-05 21:26:55 +01:00
Ambroz Bizjak
0a8ca604b4 Fix cross compiling regression due to gcc->cc renaming. 2015-02-05 21:25:25 +01:00
Eric Seidel
4a467ec02b move libcxx[abi] into llvm tree 2015-02-03 14:58:10 -08:00
Eric Seidel
92188d9d17 new darwin stdenv 2015-02-03 14:05:22 -08:00
Shea Levy
c45372f038 Merge commit 'cfb29ab882323d379aba20a95020c7c24f883eae'
Partial staging merge, including cc-wrapper fixes

Conflicts:
	pkgs/applications/audio/spotify/default.nix
	pkgs/build-support/cc-wrapper/default.nix
	pkgs/development/compilers/cryptol/1.8.x.nix
2015-02-02 21:14:28 -05:00
Wout Mertens
ef2e0ffdea stdenv: fix eval - the return 2015-01-29 10:54:07 +01:00
Wout Mertens
006769be70 stdenv: fix eval
silly 💩
2015-01-29 10:46:35 +01:00
Wout Mertens
0feb19b6b4 stdenv: take license parameter checks out of mkDerivation path 2015-01-29 10:38:33 +01:00
Matthias Beyer
aca361fa49 Add (optional) license white/blacklisting 2015-01-24 17:28:50 +01:00
Wout Mertens
4b82bd683e Merge pull request #5714 from vcunat/p/stdenv-subst
stdenv substitute: avoid using a temporary file
2015-01-23 23:15:16 +01:00
Vladimír Čunát
a0bf07827b mpc: also rename the attribute to libmpc
Attrnames and package names should be as close as possible to avoid confusion.
I took care not to confuse the two mpc things during the mass-replace,
so hopefully I suceeded (tarball still builds).
2015-01-17 09:55:32 +01:00
Vladimír Čunát
88089559b9 Merge #5676: gcc-wrapper -> cc-wrapper and related 2015-01-17 08:43:04 +01:00
Eric Seidel
88eae46455 rename occurrences of gcc.gcc to gcc.cc 2015-01-14 20:47:49 -08:00
Shea Levy
16fe4be790 Add isGNU attribute to gccs 2015-01-14 20:26:57 -08:00
Eric Seidel
48f63c2f2e rename gcc-wrapper to cc-wrapper.
also makes cc-wrapper compatible with clang in the darwin fork.
2015-01-14 20:26:56 -08:00
Vladimír Čunát
1575bc652e Merge branch 'master' into staging
Conflicts (simple):
	pkgs/os-specific/linux/util-linux/default.nix

It seems this merge creates a new stdenv hash,
because we had changes on both branches :-/
2015-01-13 18:07:11 +01:00
Vladimír Čunát
2533a11241 stdenv substitute: avoid using a temporary file
- IMO using a temporary is not needed here (anymore),
- temporary at that location can cause a problem (in a specific case):
for example, when using the substituteAll function from nixpkgs
on a single file directly under /nix/store/ (or ./foo-file),
the stdenv's substitute tries to create a temporary directly under
/nix/store, which causes problems on chrooted darwin
(according to @copumpkin earlier today on IRC)
2015-01-13 10:53:57 +01:00
Eelco Dolstra
71c3c19638 stdenv: Remove redundant "building ..." message
Nix already shows what paths are being built.
2015-01-12 13:04:26 +01:00
Vladimír Čunát
e98a443e71 stdenv: improve message on evaluation check (no hash changes) 2015-01-11 21:38:19 +01:00
Vladimír Čunát
123a8bf9a5 stdenv: refactor code for evaluation errors (no hash changes) 2015-01-11 21:37:50 +01:00
Shea Levy
77a448e96f restore pkgs.gcc = stdenv.cc 2015-01-03 09:54:02 -05:00
Daniel Peebles
8df8943b92 I think this should fix the evaluation errors in hydra 2014-12-27 12:02:58 -05:00
Vladimír Čunát
becf038336 Merge branch 'staging' 2014-12-26 22:41:19 +01:00
Shea Levy
bbd2be6075 Restore accidentally-dropped stdenv adapter 2014-12-26 12:38:18 -05:00
John Wiegley
28b6fb61e6 Change occurrences of gcc to the more general cc
This is done for the sake of Yosemite, which does not have gcc, and yet
this change is also compatible with Linux.
2014-12-26 11:06:21 -06:00
Eelco Dolstra
a5aa8f3efa Use updated bootstrap binaries
Fixes #5335.
2014-12-18 15:04:40 +01:00
Jaka Hudoklin
3d7f66e955 boostrap-tools: fix curl not finding libnss* and libresolv 2014-12-15 03:33:28 +01:00
Eelco Dolstra
5a0b79f955 Merge remote-tracking branch 'origin/bash-4.3' into staging 2014-11-16 22:18:08 +01:00
Eelco Dolstra
a0f3faf34e Merge remote-tracking branch 'origin/glibc-2.20' into staging 2014-11-16 22:17:36 +01:00
Eelco Dolstra
cef0bcefc6 linux-headers: Update to 3.12.32
We can do this because bootstrap-tools contains an unxz program now
(via busybox).
2014-11-15 21:49:57 +01:00
Vladimír Čunát
b4af993c3f Merge branch 'master' into staging
Conflicts (simple):
	pkgs/development/lisp-modules/clwrapper/setup-hook.sh
2014-11-14 14:28:23 +01:00
Ricardo M. Correia
e9affb4274 nixos: Add system-wide option to set the hostid
The old boot.spl.hostid option was not working correctly due to an
upstream bug.

Instead, now we will create the /etc/hostid file so that all applications
(including the ZFS kernel modules, ZFS user-space applications and other
unrelated programs) pick-up the same system-wide host id. Note that glibc
(and by extension, the `hostid` program) also respect the host id configured in
/etc/hostid, if it exists.

The hostid option is now mandatory when using ZFS because otherwise, ZFS will
require you to force-import your ZFS pools if you want to use them, which is
undesirable because it disables some of the checks that ZFS does to make sure it
is safe to import a ZFS pool.

The /etc/hostid file must also exist when booting the initrd, before the SPL
kernel module is loaded, so that ZFS picks up the hostid correctly.

The complexity in creating the /etc/hostid file is due to having to
write the host ID as a 32-bit binary value, taking into account the
endianness of the machine, while using only shell commands and/or simple
utilities (to avoid exploding the size of the initrd).
2014-11-12 22:31:49 +01:00
Eelco Dolstra
7a05d33386 useGoldLinker: Don't set dontStrip
Probably caused by a bad cut&paste...
2014-11-12 15:10:54 +01:00
Eelco Dolstra
1455ecee73 Ensure a correct value for $BASH
Previously it was set to /run/current-system/sw/sbin/nologin or
similar.
2014-11-10 14:09:53 +01:00
Eelco Dolstra
78b01de68d substituteAll: Enumerate environment variables more reliably
Getting the names of all environment variables is tricky. The previous
implementation easily got confused by multi-line variables. The new
one is more reliable but not still not perfect.

This works around a segfault in Bash 4.3, where the expression
"${!var}" (where var="-9") crashes under certain conditions.

http://hydra.nixos.org/build/16693445
2014-11-10 13:35:09 +01:00
Eelco Dolstra
e3ef797901 Fix stdenv allowedRequisites check
It has to include the default build inputs now (like
"compress-man-pages.sh").
2014-11-06 15:33:36 +01:00
Eelco Dolstra
328f7a621e stdenv: Remove propagatedUserEnvPkgs
Stdenv is not really intended as an installable package. Nowadays it's
much better to use "nix-shell -p" to get a build environment.
2014-11-06 12:15:08 +01:00
Eelco Dolstra
1014620bce stdenv: Statically include the default build inputs
Otherwise, stdenv won't have a reference to e.g. patchelf on Linux
(because it was passed in by mkDerivation). This causes the installer
tests to fail, because having "stdenv" in the installation CD closure
is not enough to pull in all stdenv packages.

http://hydra.nixos.org/build/16546643
2014-11-06 12:10:28 +01:00
Eelco Dolstra
8e9e4b05f7 Fix running preHook
Accidentally (?) lost in e3875297fa.
2014-11-06 11:26:09 +01:00
Eelco Dolstra
0518ccf5af Merge remote-tracking branch 'origin/master' into staging
Conflicts:
	pkgs/stdenv/generic/default.nix
2014-11-06 10:16:39 +01:00
Eelco Dolstra
af0557cf82 Allow marking licenses as unfree
This allows licenses like the Amazon Software License to be identified
properly while still preventing packages with those licenses from
being distributed in the Nixpkgs/NixOS channels.
2014-11-05 15:15:00 +01:00
Eelco Dolstra
e575d739da Set SDKROOT etc. in stdenvNative
Fixes a build failure in gawk with Xcode 6.1 on 10.9.
2014-11-04 16:35:13 +01:00
Eelco Dolstra
7495c61d49 Merge remote-tracking branch 'origin/darwin-clang-stdenv' into staging
Conflicts:
	pkgs/applications/editors/vim/macvim.nix
2014-11-04 14:30:43 +01:00
Eelco Dolstra
899d81b37b Set MACOSX_DEPLOYMENT_TARGET to 10.9
This makes stuff build with Xcode 6.1 on Mac OS X 10.9 (where we got
errors like "ld: file not found:
/usr/lib/system/libsystem_coreservices.dylib for architecture x86_64" due to the use of the 10.10 SDK).
2014-11-04 13:28:31 +01:00
Eelco Dolstra
97e9d2b351 Remove dead code 2014-11-04 13:26:51 +01:00
Eelco Dolstra
3bd2cfa853 Update bootstrap tools with the fix for GCC bug 61801 2014-11-03 18:51:25 +01:00
Wout Mertens
c04e492898 stdenv: Prevent issues like #4266
Don't preserve hardlinks, and instead use reflinks if they're available.
2014-10-31 11:13:03 +01:00
Eelco Dolstra
119ce1ab03 Update the stdenv-linux bootstrap tools 2014-10-29 17:26:29 +01:00
Eelco Dolstra
41a479b15f busybox: Optionally use uclibc 2014-10-29 14:44:56 +01:00
Eelco Dolstra
e8992c5084 Update the stdenv bootstrap tools generator
The static curl program is gone, replaced by curl inside of the
bootstrap tools tarball. Also, we generate a .tar.xz archive rather
than .cpio.bz2, making the download smaller. The separate
{sh,cpio,mkdir,ln,bzip2} programs have been replaced by a single
busybox program.
2014-10-29 13:43:01 +01:00
Eelco Dolstra
d135422009 Remove obsolete useKlibc stdenv adapter 2014-10-29 13:43:00 +01:00
Eelco Dolstra
5cc92eb0d8 Remove obsolete useDietLibC stdenv adapter 2014-10-29 13:43:00 +01:00
Eelco Dolstra
54e727133a Remove tabs/whitespace 2014-10-29 13:42:59 +01:00
Eelco Dolstra
3a0db27b90 Fix indent 2014-10-26 01:59:05 +02:00
Eelco Dolstra
9a979af1d3 stdenv-darwin: Revert to clang 3.3
In 3.3, a C++ class defined in a header will get a typeinfo symbol
like this (e.g. in Nix's src/libutil/util.o):

  (__DATA,__datacoal_nt) weak external typeinfo for nix::BaseError

But in 3.4, this has changed to:

  (__DATA,__datacoal_nt) weak external automatically hidden typeinfo for nix::BaseError

This causes the linker to change the symbol to:

  (__DATA,__data) non-external (was signed char private external) typeinfo for nix::BaseError

i.e. losing its weak linkage. But without weak linkage, dynamic_cast
and other RTTI-based mechanisms (such as catching an exception of a
certain type) don't work across shared libraries / executables.

The clang compiler in the SDK doesn't have this behaviour, but it's
not clear exactly which version it is (it just says "based on LLVM
3.4svn").
2014-10-15 01:15:31 +02:00
Eelco Dolstra
7aacca25df stdenv-darwin: Pass through libcxx/libcxxabi 2014-10-14 16:36:44 +02:00
Eelco Dolstra
79d0d7b437 Unify gcc-wrapper and clang-wrapper 2014-10-11 22:26:39 +02:00
Eelco Dolstra
ffbdcbfe29 gcc-wrapper: Wrap ld.gold
This ensures that gcc's ‘-fuse-ld=gold’ flag works.
2014-10-10 14:55:17 +02:00
Nikolay Amiantov
66d89ef2a4 stdenv: Use "pipefail" in setup.sh 2014-10-10 14:02:15 +04:00
Nikolay Amiantov
ca3ecb56ae stdenv: change 'echo -n' to 'printf "%s"'
[Bjørn: rationale is portability, "echo -n" isn't in POSIX]
2014-10-09 22:15:07 +02:00
Nikolay Amiantov
2ec4704961 stdenv: Fix handling spaces in 'substitute' 2014-10-09 22:15:07 +02:00
Nikolay Amiantov
d59327b938 stdenv: added escaping for patches 2014-10-09 22:15:05 +02:00
Nikolay Amiantov
d15e52f25f stdenv: fail if the patch does not exist 2014-10-09 22:14:38 +02:00
Eelco Dolstra
811de3bfaa Merge remote-tracking branch 'origin/staging' into darwin-clang-stdenv
Conflicts:
	pkgs/tools/security/gnupg/default.nix
2014-10-09 10:57:57 +02:00