diff options
| author | sternenseemann <sternenseemann@systemli.org> | 2023-01-03 23:38:37 +0100 |
|---|---|---|
| committer | sternenseemann <sternenseemann@systemli.org> | 2023-01-04 00:02:29 +0100 |
| commit | 6392c21c1fefd50d9dda8bec70bcbbf01622f769 (patch) | |
| tree | 8f074b3105ce356cb34dcdb313ef1e80d6fb2cbd /pkgs/development/python-modules/python-mapnik/python-mapnik_std_optional.patch | |
| parent | b711b52d159d9c18e0cc3a839f21a1061ddc5b3e (diff) | |
haskell.compiler.ghcHEAD: allow building the JavaScript backend
This is now possible by building a cross compiler for js-unknown-ghjs
using `pkgsCross.ghcjs.buildPackages.haskell.compiler.ghcHEAD`.
To allow this, the following things needed to be done:
* Disable dependencies that wouldn't work:
- Don't pull in ncurses for terminfo
- Don't pull in libffi
- Don't pull in libiconv
- Don't enable the LLVM backend
- Enable gmp-less native-bignum backend
* Use emscripten instead of a C compiler. The way this works is inspired
by emscriptenPackages, but avoids the following flaws:
- Instead of using a custom configurePhase, just set
`configureScript = "emconfigure ./configure";` which is much simpler.
- Create writable EM_CACHE before configuring, as configure scripts
want to compile test programs.
Additionally, we need to disable the targetCC check, as it is not
applicable with emscripten which never appears as part of stdenv.
* Use generic $configureScript in installPhase to be able to work with
our emconfigure trick.
Note that the corresponding Haskell package set does not work yet. Cabal
doesn't seem to like GHC 9.7 yet and the generic-builder is clueless
about the JS backend.
Diffstat (limited to 'pkgs/development/python-modules/python-mapnik/python-mapnik_std_optional.patch')
0 files changed, 0 insertions, 0 deletions
