nixpkgs/pkgs/development/compilers
sternenseemann 6392c21c1f 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.
2023-01-04 00:02:29 +01:00
..
4th _4th: 3.64.0 -> 3.64.1 2022-07-29 03:51:15 +00:00
abcl abcl: 1.8.0 -> 1.9.0 2022-05-25 05:16:18 +00:00
acme acme: unstable-2021-02-14 -> unstable-2021-11-05 2022-05-12 17:35:04 +02:00
adoptopenjdk-bin {temurin,adoptopenjdk}-bin: use alpine_linux os for musl libc 2022-10-12 20:28:59 +02:00
adoptopenjdk-icedtea-web adoptopenjdk-icedtea-web: 1.8.7 -> 1.8.8 2022-01-02 16:48:11 +01:00
alan alan_2: add -fcommon workaround for gcc-10 2022-05-12 08:22:23 +01:00
algol68g treewide: add meta.mainProgram to many packages 2022-04-14 10:24:01 -07:00
ante ante: init at unstable-2022-08-22 2022-09-14 13:48:46 +02:00
apache-flex-sdk
arachne-pnr
armips
as31
asl asl: 142-bld211 -> 142-bld232 2022-11-15 10:06:44 -03:00
aspectj aspectj: 1.9.7 -> 1.9.9.1 2022-07-07 19:14:01 +00:00
atasm
ats
ats2 ats2: 0.4.1 -> 0.4.2 2022-04-26 15:04:13 -05:00
avra avra: 1.3.0 -> 1.4.2 2022-01-20 19:25:45 +01:00
ballerina ballerina: 2201.2.1 -> 2201.2.2 2022-10-24 23:24:09 +08:00
bigloo bigloo: mark broken on x86_64 Darwin 2022-05-29 10:56:03 +02:00
binaryen binaryen: add patch from upstream for newer nodejs 2022-08-25 07:26:31 +00:00
blueprint blueprint-compiler: 0.2.0 -> 0.6.0 2022-12-29 09:03:42 +01:00
bluespec bluespec: set mainProgram=bsc 2022-07-26 13:25:23 -05:00
bs-platform bs-platform: workaround -fno-common build failure on aarch64 2022-06-26 22:29:26 +01:00
bupc bupc: 2.22.0 -> 2020.12.0 (#185241) 2022-08-07 14:24:55 +02:00
c3c
cakelisp treewide: mark packages broken that never built on PLATFORM 2022-12-13 21:40:12 +01:00
carp carp: patch for GHC 9.2 and Stackage LTS-20 2022-12-29 13:35:15 +01:00
cc65
ccl ccl: remove tohl from meta.maintainers list 2022-10-23 01:09:17 -03:00
chez Merge branch 'master' into staging-next-2022-04-23 2022-05-01 14:26:52 +02:00
chez-racket chez-racket: Fix signing on Darwin (Thanks @Steven0351!) 2021-12-23 21:14:28 +00:00
chicken chickenPackages_4.chicken: use install_name_tool 2022-12-02 20:10:13 +01:00
ciao ciao: 1.21.0-m1 -> 1.22.0-m1 2022-09-29 10:58:30 +00:00
clasp
clean
closure closurecompiler: 20221004 -> 20221102 2022-11-07 08:48:00 +00:00
cmdstan cmdstan: unbreak on aarch64-linux 2022-12-08 14:19:42 +01:00
cmucl cmucl_binary: 21b -> 21d 2022-10-23 12:06:33 -03:00
colm
computecpp
cone
copper copper: mark as broken 2022-11-16 02:38:00 +00:00
crystal crystal: Unmark 1.2 broken for aarch64-darwin 2022-11-20 18:28:50 +01:00
crystal2nix crystal2nix: 0.1.1 -> 0.3.0 2022-07-12 21:00:11 +08:00
cudatoolkit cudaPackages: add cudaFlags (#205351) 2022-12-16 22:00:36 -08:00
dale dale: 20181024 -> 20220411 2022-10-02 15:11:15 +02:00
dasm
dev86 dev86: explicitly disable build parallelism due to missing depends 2021-11-13 21:41:51 +00:00
dictu dictu: 0.24.0 -> 0.25.0 2022-05-27 08:47:52 +00:00
dmd dmd: Address PR feedback 2022-10-26 18:49:13 +02:00
dotnet dotnet: add windows RIDs to systemToDotnetRid 2022-12-19 15:36:26 -04:00
dtc dtc: fix dylib name on darwin 2022-08-17 15:15:46 +08:00
ecl treewide: mark packages broken that never built on PLATFORM 2022-12-13 21:40:12 +01:00
edk2 edk2: don't hardcode OSes in meta.platforms 2023-01-02 03:58:58 +00:00
eli eli: add -fcommon workaround 2022-06-04 06:51:58 +01:00
elm Merge master into haskell-updates 2022-12-19 00:12:05 +00:00
emscripten emscripten: fake cc-wrapper-esque passthru attrs for GHC 2023-01-03 22:45:05 +01:00
eql treewide: replace '-git' packages with 'unstable-' in version (#145396) 2021-11-10 16:21:47 -05:00
factor-lang factor98: add longDescription 2021-11-26 10:22:03 -03:00
fasm fasm: 1.73.29 -> 1.73.30 2022-03-08 10:31:59 +00:00
fasmg
fbc fbc: init at 1.09.0 & 1.06-darwin-wip20160505 2022-10-26 19:12:44 +02:00
firrtl firrtl: init at 1.5.3 (#171065) 2022-05-29 12:19:51 -05:00
flasm flasm: pull patch pending upstream inclusion for -fno-common toolchains 2022-05-15 10:18:31 +01:00
flutter Merge pull request #199767 from h7x4/master 2022-11-23 23:56:47 +08:00
flux
fpc fpc: support darwin 2022-08-31 20:47:54 +02:00
fsharp treewide: move autoconf, automake to nativeBuildInputs 2022-03-30 20:17:24 -05:00
fstar fstar: 2022.01.15 -> 2022.11.19 2022-12-20 11:32:57 +01:00
gambit gambit: reenable stackprotector on aarch64-darwin 2022-09-04 10:19:14 -07:00
gavrasm gavrasm: 5.1 -> 5.4 2022-09-19 14:41:24 +00:00
gcc treewide: fix typos 2022-12-17 19:39:44 -05:00
gcc-arm-embedded gcc-arm-embedded-{6,7,8,9,10}: drop python27 from dependencies 2022-12-01 23:16:29 +01:00
gcl gcl_2_6_13_pre: 2.6.13pre50 -> 2.6.13pre124 (fix build) 2022-08-14 14:15:47 +02:00
gerbil treewide: move pkg-config, autoreconfHook, intltool to nativeBuildInputs 2022-09-26 17:53:26 +03:00
gforth treewide: optional -> optionals where the argument is a list 2022-10-10 15:40:21 +03:00
ghc haskell.compiler.ghcHEAD: allow building the JavaScript backend 2023-01-04 00:02:29 +01:00
ghcjs haskell.compiler.ghcjs: allow building with transformers-compat-0.7 2022-12-30 12:47:20 +01:00
ghdl treewide: optional -> optionals where the argument is a list 2022-10-10 15:40:21 +03:00
gleam gleam: 0.25.1 -> 0.25.3 2022-12-17 06:32:31 -05:00
glslang glslang: fix broken paths in output cmake files 2022-11-19 12:45:23 +08:00
gmqcc gmqcc: init at unstable-2021-07-09 2022-06-08 15:51:58 +02:00
gnatboot gnat11: Fix by building with older gnatboot 2022-11-25 08:15:10 +01:00
gnostic gnostic: init at 0.6.8 2022-11-30 16:51:56 +00:00
gnu-cobol gnu-cobol: refactor 2022-07-20 15:14:32 -07:00
gnu-smalltalk
go go_1_20: init at 1.20rc1 2023-01-02 12:18:07 +10:00
go-jsonnet go-jsonnet: 0.18.0 -> 0.19.1 2022-10-28 09:30:40 +00:00
gprolog
graalvm/community-edition treewide: fix typos 2022-12-17 19:39:44 -05:00
gwt pkgs/development: rename name to pname&version 2021-11-30 21:32:28 +01:00
halide halide: 10.0.0 -> 14.0.0 (#180015) 2022-08-25 21:49:09 +02:00
hare harePackages.hare: fix evaluation for riscv 2022-08-13 19:44:47 +08:00
haxe ocamlPackages.sha: 1.15.1 → 1.15.2 2022-12-15 08:08:35 +01:00
heptagon heptagon: init at 1.05.00 2022-10-06 09:31:41 +02:00
hip rocm-related: create and use a generic updater script 2022-12-10 13:51:09 -06:00
hop
hvm hvm: 1.0.88 -> 1.0.89 2022-10-18 10:56:10 -04:00
idris2 idris2: 0.5.1 -> 0.6.0 2022-10-28 16:27:38 +02:00
inform6
inform7 treewide: mark packages broken that never built on PLATFORM 2022-12-13 21:40:12 +01:00
inklecate treewide: update all dotnet lockfiles 2022-12-19 15:36:25 -04:00
intel-graphics-compiler intel-graphics-compiler: 1.0.12260.1 -> 1.0.12504.5 2022-12-05 23:08:23 +01:00
intercal treewide: makeWrapper buildInputs to nativeBuildInputs 2022-08-16 13:14:19 +03:00
ios-cross-compile treewide: move autoconf, automake to nativeBuildInputs 2022-03-30 20:17:24 -05:00
ispc ispc: 1.18.0 -> 1.18.1 2022-10-25 17:21:06 +00:00
jasmin
jasmin-compiler jasmin-compiler: 2022.04.0 → 2022.09.0 2022-10-10 09:46:08 +02:00
javacard-devkit treewide: set sourceProvenance for packages containing downloaded jars 2022-06-04 19:47:57 +01:00
jetbrains-jdk jetbrains.jdk: 17.0.3-b469.37 → 17.0.5-b653.14 2022-11-30 15:33:46 -06:00
jrsonnet jrsonnet: unbreak on darwin, add figsoda as a maintainer 2022-12-17 16:44:17 -05:00
jsonnet jsonnet: 0.19.0 -> 0.19.1 2022-10-28 20:24:24 +00:00
julia julia_18: 1.8.3 -> 1.8.4 2022-12-26 14:37:48 +08:00
juniper Remove wunderbrick from juniper maintainers 2022-06-18 12:54:08 -04:00
jwasm jwasm: 2.15 -> 2.16 2022-11-15 11:16:20 -03:00
kaitai-struct-compiler kaitai-struct-compiler: 0.9 -> 0.10 2022-07-22 08:41:27 -07:00
kind2 kind2: 0.2.77 -> 0.2.79 2022-10-18 12:01:51 -04:00
koka koka: 2.3.8 -> 2.4.0 2022-06-01 10:24:15 +02:00
kotlin kotlin: 1.7.10 -> 1.7.20 2022-10-04 16:26:44 +08:00
ldc ldc: 1.27.1 -> 1.30.0, change hashes to SRI format 2022-10-23 16:10:49 +02:00
ligo ligo: 0.55.0 -> 0.58.0 2022-12-22 20:47:14 +01:00
lingua-franca lingua-franca: incorrect verion bump 2022-09-20 00:16:50 +02:00
llvm Merge pull request #205355 from alyssais/llvm-libpfm 2022-12-21 20:29:17 +02:00
lobster treewide: pkgs/development/compilers: mark broken for darwin 2022-05-30 13:41:09 +02:00
manticore treewide: *Flags convert to list from str 2022-10-10 15:30:59 +03:00
marst
matter-compiler
mcpp mcpp: 2.7.2 -> 2.7.2.1 2022-09-01 09:00:40 -03:00
mercury mercury: 22.01.1 -> 22.01.3 2022-08-01 01:23:14 +00:00
meta-environment/meta-build-env
mezzo ocamlPackages.pprint: 20171003 → 20220103 2022-02-15 07:25:24 +01:00
microscheme microscheme: fix meta.homepage 2021-12-31 11:17:07 -08:00
mint mint: 0.14.0 -> 0.15.1 2021-12-25 17:58:07 +00:00
miranda miranda: add -fcommon workaround 2022-05-22 11:21:35 +01:00
mit-scheme mitschemeX11: use xorg.* packages directly instead of xlibsWrapper indirection 2022-11-22 22:24:10 +00:00
mkcl mkcl: remove tohl from meta.maintainers list 2022-10-23 01:16:37 -03:00
mlkit mlkit: 4.7.1 -> 4.7.2 2022-09-22 23:41:23 +08:00
mlton mlton: 20180207 → 20210107 2022-06-07 13:34:26 +07:00
mono mono: cleanup 2022-11-28 01:55:12 +01:00
mosml mosml: switch to fetchFromGitHub 2022-01-08 15:38:10 +01:00
mozart mozart: add h7x4 as maintainer 2022-11-12 20:17:30 +01:00
mruby mruby: 3.0.0 -> 3.1.0 2022-05-14 01:01:08 +01:00
mrustc mrustc-bootstrap: pin to openssl_1_1 2022-09-11 23:28:36 +02:00
muonlang move muon to muonlang 2022-04-12 22:38:36 -03:00
myrddin myrddin: cleanup, add -j$NIX_BUILD_CORES to make 2022-10-14 14:02:07 +02:00
nasm
neko treewide: use mbedtls 3 where possible 2022-12-07 19:58:55 +00:00
nextpnr nextpnr: 0.3 -> 0.4 2022-09-20 16:01:53 +02:00
nim nim: fix build on aarch64-darwin 2022-12-02 22:23:01 -06:00
nqc nqc: init at 3.1.r6 2022-10-23 15:51:10 +02:00
nvidia-cg-toolkit treewide: change some glibc to stdenv.cc.libc 2022-05-27 05:57:43 +03:00
obliv-c obliv-c: 0.0pre20180624 → 0.0pre20210621 2022-04-02 07:59:52 +02:00
ocaml ocaml-ng.ocamlPackages_5_0: 5.0.0-rc1 -> 5.0.0 2022-12-17 15:39:28 +01:00
odin
opa treewide: makeWrapper buildInputs to nativeBuildInputs 2022-08-16 13:14:19 +03:00
open-watcom open-watcom-v2: Fix bindir name for Darwin (#191537) 2022-10-12 21:08:31 +02:00
opendylan treewide: makeWrapper buildInputs to nativeBuildInputs 2022-08-16 13:14:19 +03:00
openjdk jre, temurin-bin: fix eval in pkgsCross.ghcjs.buildPackages 2023-01-04 00:02:29 +01:00
openspin
ophis
oraclejdk oraclejdk14: Removed as it's end of life since 09/2020 2022-06-11 02:37:30 +03:00
orc treewide: optional -> optionals where the argument is a list 2022-10-10 15:40:21 +03:00
osl osl: fixup paths in .pc files 2022-09-28 18:27:55 +02:00
owl-lisp
p4c treewide: optional -> optionals where the argument is a list 2022-10-10 15:40:21 +03:00
paco
pakcs maintainers: remove kkallio 2022-06-29 00:55:00 +02:00
passerine passerine: 0.9.2 → 0.9.3 2022-02-20 00:50:50 +01:00
pforth
picat
polyml treewide: mark packages broken that never built on PLATFORM 2022-12-13 21:40:12 +01:00
ponyc pony-corral: add changelog to meta 2022-12-04 23:12:16 +01:00
purescript purescript: 0.15.6 -> 0.15.7 2022-12-12 20:30:56 +00:00
qbe qbe: unstable-2022-04-11 -> 1.0 2022-06-25 15:55:45 +02:00
rasm
reason ocamlPackages.reason: 3.8.1 → 3.8.2 2022-10-20 12:59:39 +02:00
rgbds rgbds: 0.5.2 -> 0.6.0 2022-10-29 07:14:00 +02:00
rml rml: init at 1.09.07 2022-11-25 18:02:39 +01:00
roslyn roslyn: 3.10.0-1.21102.26 -> 4.2.0 2022-11-25 18:52:44 +01:00
rust Merge pull request #194388 from tomhoule/make-rust-platform/import-cargo-lock-cargo-argument 2022-12-17 08:44:43 +00:00
sagittarius-scheme sagittarius-scheme: 0.9.8 -> 0.9.9 2022-09-09 17:56:04 +05:30
sbcl sbcl_*: fix build by adding a #define 2022-12-12 10:14:38 +01:00
scala Merge pull request #191966 from jvanbruegge/isabelle-2022 2022-12-03 00:45:47 +01:00
scala-runners
scryer-prolog scryer-prolog: 0.9.0 -> 0.9.1 2022-12-05 09:14:51 -08:00
sdcc sdcc: 4.1.0 -> 4.2.0 2022-03-15 12:27:21 +01:00
seexpr seexpr: fix path in pkg-config file 2022-09-07 21:49:33 +03:00
semeru-bin temurin-bin, semeru-bin: init at 17.0.3, adoptopenjdk-bin: remove 13, 14, 17 2022-09-12 16:29:36 +09:00
serpent
shaderc shaderc: 2021.0 -> 2022.4 2022-12-31 15:41:58 -08:00
silice silice: init at unstable-2022-08-05 2022-08-28 01:39:01 +02:00
sjasmplus
smlnj treewide: mark packages broken that never built on PLATFORM 2022-12-13 21:40:12 +01:00
solc treewide: Remove now-unneeded LD_LIBRARY_PATH in cmake derivations 2022-07-04 03:49:01 +03:00
souffle souffle: 2.2 -> 2.3 2022-07-30 07:59:54 +00:00
spasm-ng
spirv-llvm-translator spirv-llvm-translator: bump to intel-graphics-compiler recommended version 2022-12-05 23:00:14 +01:00
squeak squeak: add -fcommon workaround 2022-06-09 21:38:39 -05:00
stalin
swi-prolog swiProlog: fix build with libxcrypt 2022-10-09 18:10:37 +02:00
swift swift: fix build with libxcrypt 2022-10-09 18:14:34 +02:00
temurin-bin jre, temurin-bin: fix eval in pkgsCross.ghcjs.buildPackages 2023-01-04 00:02:29 +01:00
terra treewide: mark packages broken that never built on PLATFORM 2022-12-13 21:40:12 +01:00
teyjus teyjus: switch to fetchFromGitHub 2022-01-08 15:38:10 +01:00
tinycc tinycc: avoid replacing VERSION when it would cause errors 2022-09-02 12:47:36 +01:00
tinygo tinygo: 0.23.0 -> 0.25.0 2022-09-16 13:44:04 +03:00
tvm tvm: 0.8.0 -> 0.9.0 2022-07-31 04:10:57 +00:00
uasm treewide: testVersion -> testers.testVersion 2022-04-22 16:24:27 +03:00
unison unison: M4 -> M4c 2022-10-21 12:58:07 +02:00
urn treewide: rename name to pname&version 2022-03-08 13:24:25 +01:00
urweb treewide: use lib.getLib for OpenSSL libraries 2022-03-30 15:10:00 +00:00
vala vala_0_54: 0.54.8 → 0.54.9 2022-10-11 18:52:26 +02:00
vlang vlang: 2022.19 -> 2022.20 2022-05-17 06:23:29 -05:00
vyper vyper: pythonRelaxDeps += [asttokens] 2022-10-28 22:38:41 -07:00
wcc
wla-dx
x11basic treewide: move autoconf, automake to nativeBuildInputs 2022-03-30 20:17:24 -05:00
xa xa: 2.3.12 -> 2.3.13 2022-08-02 06:00:13 +00:00
yap treewide: pkgs/development: mark broken for aarch64-linux 2022-05-30 13:42:59 +02:00
yasm yasm: fix cross build 2021-12-05 10:47:44 +01:00
yosys yosys: 0.23 -> 0.24 2022-12-06 18:58:32 +01:00
z88dk z88dk: 2.1 -> 2.2 2022-07-31 07:23:28 +00:00
zasm treewide: extraPostFetch -> postFetch 2022-05-23 17:18:50 +03:00
zig zig: fix index out of bounds reading RPATH 2022-08-16 13:05:50 +09:00
zulu treewide: remove myself as maintainer from some pkgs 2022-08-03 14:17:51 +02:00
zz