Commit graph

330 commits

Author SHA1 Message Date
Adam Joseph
424952b7b4 gccWithoutTargetLibc: link libgcc_s.so using -mnewlib if isPower
Closes #244405

Also adds considerably more commenting to document what is going on.
2023-07-06 05:50:26 -07:00
Adam Joseph
895c24349c test.cross.sanity: add pkgs.pkgsCross.m68k.stdenv 2023-07-01 16:45:47 -07:00
Adam Joseph
fb26d16e99 test.cross.sanity: init
This commit adds `pkgs.test.cross.sanity`, which is meant to be a
carefully curated list of builds/packages that tend to break when
refactoring our cross-compilation infrastructure.

It should strike a balance between being small enough to fit in
a single eval (i.e. not so large that hydra-eval-jobs is needed)
so we can ask @ofborg to check it, yet should have good examples
of things that often break.  So, no buckshot `mapTestOnCross`
calls here.
2023-07-01 02:59:40 -07:00
Adam Joseph
18bbf33b38 test.cross.mbuffer: init
This adds a test case for the tricky issue encountered in

  https://github.com/NixOS/nixpkgs/issues/213453
2023-06-30 02:36:13 -07:00
Artturin
42c94d06fd stdenv: fix overriding with attrset when finalAttrs isn't used
```
nix-repl> (pkgs.htop.overrideAttrs { pname = "hello-overriden"; }).pname
error:
       … while evaluating a branch condition

         at /nix/store/phn5cahwacv9wjgalygw62x8l4xbl6x3-source/lib/customisation.nix:86:7:

           85|     in
           86|       if builtins.isAttrs result then
             |       ^
           87|         result // {

       … while calling the 'isAttrs' builtin

         at /nix/store/phn5cahwacv9wjgalygw62x8l4xbl6x3-source/lib/customisation.nix:86:10:

           85|     in
           86|       if builtins.isAttrs result then
             |          ^
           87|         result // {

       (stack trace truncated; use '--show-trace' to show the full trace)

       error: attempt to call something which is not a function but a set

       at /nix/store/phn5cahwacv9wjgalygw62x8l4xbl6x3-source/pkgs/stdenv/generic/make-derivation.nix:58:21:

           57|           f = self: super:
           58|             let x = f0 super;
             |                     ^
           59|             in
```
2023-07-03 21:34:50 +03:00
Robert Hensing
1f5a0b0135
Merge pull request #239005 from Artturin/setorfunoverr
stdenv: let overrideAttrs accept attrset OR function
2023-07-01 15:27:23 +02:00
Artturin
0fdae31531 stdenv: let overrideAttrs accept attrset OR function
Makes overrideAttrs usable in the same way that `override` can be used.
It allows the first argument of `overrideAttrs` to be either a function
or an attrset, instead of only a function:

hello.overrideAttrs (old: { postBuild = "echo hello"; })
hello.overrideAttrs { postBuild = "echo hello"; }

Previously only the first example was possible.

Co-authored-by: adisbladis <adisbladis@gmail.com>
Co-authored-by: matthewcroughan <matt@croughan.sh>
2023-06-30 23:28:00 +03:00
apfelkuchen6
a3cdf3186f
texlive.bin.core-big: fix luajittex on aarch64-linux (#240577) 2023-06-29 16:12:05 -04:00
Vincenzo Mantova
f24380af53
tests.texlive.binaries: init (#239804) 2023-06-28 18:06:06 -04:00
nviets
725e8ab49c
cudaPackages: bump default cudaPackages_11_7 -> cudaPackages_11_8 (#238622)
* cudaPackages: bump default cudaPackages_11_7 -> cudaPackages_11_8

* Switched format of cudaPackages.backendStdenv

Co-authored-by: Samuel Ainsworth <skainsworth@gmail.com>

* Removed reference to gcc11Stdenv in cuda-samples

* corrected stdenv reference in cuda-samples

---------

Co-authored-by: nviets <nathan.viets@gmail.com>
Co-authored-by: Samuel Ainsworth <skainsworth@gmail.com>
2023-06-20 14:12:54 -04:00
Artturin
2879607431 tests.stdenv.hooks.reproducible-builds: fix mistake 2023-06-17 23:45:11 +03:00
Sandro
6b942b501e
Merge pull request #234235 from raphaelr/mknugetsource-support-subdirs
buildDotnetModule: fix `projectReferences = [ ... ]`
2023-06-14 20:12:03 +02:00
Dennis Gosnell
dd9e4575ec
tests.haskell.incremental: change package used from turtle to temporary
With a recent hackage update, turtle stopped compiling on ghc94.  This
commit changes the tests.haskell.incremental test to use the temporary
package instead of turtle.
2023-05-30 09:06:42 +09:00
Raphael Robatsch
256c3a7a53 tests.dotnet: init with test for projectReferences
Add a test for buildDotnetModule's `projectReferences = [ ... ];`
feature, which is currently unused and therefore untested in nixpkgs.
2023-05-26 16:18:07 +02:00
Rebecca Turner
b278ca2195
tests.haskell.incremental: init 2023-05-25 14:36:18 -07:00
Vincenzo Mantova
d3b28b7fd9
texlive.combine: move repstopdf test to tests.texlive (#231742) 2023-05-14 11:05:22 -04:00
github-actions[bot]
2d07e76d1a
Merge staging-next into staging 2023-05-10 00:03:33 +00:00
Alyssa Ross
2023766e31
tests.stdenv.test-inputDerivation: init 2023-05-09 14:02:45 +00:00
John Ericson
f4868c6c7d
Merge pull request #229754 from rrbutani/fix/cc-wrapper-extra-positional-args
Support `--` in `cc-wrapper`
2023-05-08 06:55:52 -04:00
Artturin
1d9f58c7a4 tests.cc-multilib: put error on separate line 2023-05-05 23:55:24 +03:00
Artturin
c4a06db832 tests.rustCustomSysroot: remove unmaintained and broken by upstream test 2023-05-05 23:23:20 +03:00
Rahul Butani
40c914f1be
cc-wrapper-test: add tests for -- 2023-05-03 16:45:48 -05:00
Dmitry Kalinkin
5c27dc43d2
Merge pull request #206763 from xworld21/texlive-centralize-version
texlive: use version info from tlpdb instead of hardcoding
2023-04-30 21:46:53 -04:00
apfelkuchen06
f2644470f9 tests.texlive: also test xelatex in the opentype font test 2023-04-27 00:36:41 +02:00
Vincenzo Mantova
c4b0534701 texlive: use version info from tlpdb instead of hardcoding 2023-04-22 20:22:39 +01:00
Alyssa Ross
887edae254
tests.makeBinaryWrapper: avoid same-triple cross
We shouldn't try compiling to aarch64-unknown-linux-gnu from
aarch64-unknown-linux-gnu, because that tends to confuse things and is
not representative of actual cross compilation usage.
2023-04-19 18:34:47 +00:00
Vladimír Čunát
87a8a597e6
Merge #223741: writeTextFile: chmod before checkPhase
...into staging
2023-04-04 08:57:05 +02:00
Bernardo Meurer
f1f6ca8bcd
Merge pull request #209870 from amjoseph-nixpkgs/pr/stdenv/external-gcc-bootstrap 2023-04-03 08:19:03 -07:00
Adam Joseph
5f57c2e0f9 pkgs/test/stdenv/default.nix: add gcc-stageCompare
This commit adds a derivation `gcc-stageCompare` to
`pkgs/test/stdenv/default.nix`.

It is important to always build this derivation whenever building
`stdenv`!  Because we are using a Nix-driven bootstrap instead of
gcc's built-in `--enable-bootstrap`, the `gcc` derivation no longer
performs the post-self-compilation sanity check.  You must build
this derivation in order to perform that sanity check.

The major benefit of this new approach is that the sanity check
(which involves a third compilation of gcc) can be performed
*concurrently* with all packages that depend on `stdenv`, rather
than serially.  Since `stdenv` has very little derivation-level
parallelism it cannot take advantage of more than one or perhaps two
builders.  If you have three or more builders this commit will
reduce the time-to-rebuild-stdenv by around 20% (one of three gcc
rebuilds is removed from the critical path, and stdenv's build time
is dominated by roughly 3*gcc + 1*binutils + 1*bison-test-suite).

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2023-04-02 13:49:53 -07:00
Naïm Favier
e6f19ea429
writeTextFile: chmod before checkPhase
Set the executable bit before running the check phase, so that the check
phase can run the script to test its behaviour.

This aligns with what `concatTextFile` is doing.

Also use explicit `if` statements so that we don't silently ignore
`chmod` failures.
2023-03-29 14:06:45 +02:00
github-actions[bot]
2394986204
Merge master into staging-next 2023-03-17 12:01:17 +00:00
Dmitry Kalinkin
f6e067692d
Merge pull request #119362 from xworld21/texlive-combine-fix-buildenv
texlive.combine: split static $TEXMFDIST into a separate derivation
2023-03-17 02:34:17 -04:00
github-actions[bot]
60e9cbe0f9
Merge staging-next into staging 2023-03-14 12:02:08 +00:00
Martin Weinelt
6b67186fe9
Merge remote-tracking branch 'origin/master' into staging-next
Conflicts:
- pkgs/development/python-modules/crownstone-cloud/default.nix
- pkgs/development/python-modules/exrex/default.nix
- pkgs/development/python-modules/mkdocs-minify/default.nix
- pkgs/development/python-modules/myjwt/default.nix
- pkgs/development/tools/analysis/checkov/default.nix
2023-03-14 08:14:26 +01:00
Vincenzo Mantova
1f2ad5bcd4 tests.texlive: check that tlpdb.nix is the one generated from the upstream texlive.tlpdb.xz 2023-03-12 21:04:39 +00:00
github-actions[bot]
681b1c28a4
Merge staging-next into staging 2023-03-12 12:02:07 +00:00
Vladimír Čunát
1dd94ad62f
Merge branch 'master' into staging-next 2023-03-12 09:06:28 +01:00
apfelkuchen06
d4a78d5f09 texlive: add test for lualatex fonts 2023-03-08 23:37:01 +01:00
github-actions[bot]
4bfbd859a1
Merge staging-next into staging 2023-03-06 18:01:40 +00:00
Martin Weinelt
bcf6c81a88 Merge remote-tracking branch 'origin/master' into staging-next 2023-03-06 16:55:14 +00:00
Someone Serge
5f4bdbe6c3
python3Packages.tensorflow: fix `GLIBCXX_3.4.30' not found
Make tensorflow (and a bunch of ther things) use CUDA-compatible
toolchain. Introduces cudaPackages.backendStdenv
2023-03-04 01:03:51 +02:00
Artturin
a4e1cf6d13 tests.stdenv.outputs-no-out: update expectedMsg 2023-03-02 22:10:50 +01:00
Artturin
6e422a0fba tests.stdenv.outputs-no-out: cause less rebuilds
now gcc isn't built
2023-03-02 22:10:50 +01:00
github-actions[bot]
3cdd771820
Merge staging-next into staging 2023-02-23 18:01:49 +00:00
Alyssa Ross
52c286ee5b
Merge remote-tracking branch 'origin/master' into staging-next
Conflicts:
	pkgs/development/libraries/pmdk/default.nix
2023-02-23 13:51:34 +00:00
Bernardo Meurer
42008a14a4
Merge pull request #217206 from Artturin/stdenvimprovements1 2023-02-23 12:07:47 +00:00
github-actions[bot]
82db2c5621
Merge staging-next into staging 2023-02-23 00:02:59 +00:00
github-actions[bot]
7f396edf16
Merge master into staging-next 2023-02-23 00:02:23 +00:00
Artturin
f9fdf2d402 treewide: move NIX_CFLAGS_COMPILE to the env attrset
with structuredAttrs lists will be bash arrays which cannot be exported
which will be a issue with some patches and some wrappers like cc-wrapper

this makes it clearer that NIX_CFLAGS_COMPILE must be a string as lists
in env cause a eval failure
2023-02-22 21:23:04 +02:00
Artturin
425e4250db tests.stdenv.outputs-no-out: fix 2023-02-22 21:23:04 +02:00