diff options
| author | sternenseemann <sternenseemann@systemli.org> | 2023-01-03 22:19:59 +0100 |
|---|---|---|
| committer | sternenseemann <sternenseemann@systemli.org> | 2023-01-03 22:19:59 +0100 |
| commit | 1ee0f4c2aa2f6f70dca68c0d9bc51663a923bf2b (patch) | |
| tree | a052a95d9708a38797ddb420f3b8f20b8168c443 /pkgs/development/python-modules/termplotlib/gnuplot-subprocess.patch | |
| parent | 3665c429d349fbda46b0651e554cca8434452748 (diff) | |
systemd: fix evaluation in pkgsCross.ghcjs.buildPackages
GHC's js backend depends on systemd via emscripten via closure compiler
via jdk via cups. Before it fails to evaluate, though, since
llvmPackages looks into `targetPackages.stdenv.cc` to determine which
C++ library to use (something that should be rectified in the future).
[Unfortunately], for `pkgsCross.ghcjs`, `stdenv.cc` throws which blows
up evaluating `pkgsCross.buildPackages.llvmPackages.clang`.
This is in principle unnecessary. We want to build
`pkgsCross.ghcjs.buildPackages.haskell.compiler.native-bignum.ghcHEAD`
which depends on `pkgsCross.ghcjs.buildPackages.systemd` which needs
clang and friends only in `nativeBuildInputs`, so
`pkgsCross.ghcjs.buildPackages.buildPackages.llvmPackages.clang`.
Unfortunately, due to the nature of splicing, we first evaluate the
“adjacent” derivation before we can access the spliced derivation we are
actually interested in. If the former
fails (`pkgsCross.ghcjs.buildPackages.llvmPackages.clang`), we can't do
the latter.
The solution is to just not rely on splicing in this case and take
`buildPackages.llvmPackages.clang` directly (relative to
`buildPackages.systemd` in this case!) which avoids the whole problem.
[Unfortunately]: https://github.com/NixOS/nixpkgs/commit/c739c420db5b9d56c335414be1696c57f2dbbb6a#diff-3209527bd27cbc775f579b1e295b0264c850859c7245d526965cec456b8c70a4R61
Diffstat (limited to 'pkgs/development/python-modules/termplotlib/gnuplot-subprocess.patch')
0 files changed, 0 insertions, 0 deletions
