1import ./generic.nix {
2 major_version = "4";
3 minor_version = "04";
4 patch_version = "2";
5 sha256 = "0bhgjzi78l10824qga85nlh18jg9lb6aiamf9dah1cs6jhzfsn6i";
6
7 # If the executable is stripped it does not work
8 dontStrip = true;
9
10 patches = [
11 # Compatibility with Glibc 2.34
12 {
13 url = "https://github.com/ocaml/ocaml/commit/6bcff7e6ce1a43e088469278eb3a9341e6a2ca5b.patch";
14 sha256 = "sha256:1hd45f7mwwrrym2y4dbcwklpv0g94avbz7qrn81l7w8mrrj3bngi";
15 }
16 # Compatibility with Binutils 2.29
17 {
18 url = "https://github.com/ocaml/ocaml/commit/db11f141a0e35c7fbaec419a33c4c39d199e2635.patch";
19 sha256 = "sha256-oIwmbXOCzDGyASpbQ7hd7SCs4YHjd9hBBksJ74V3GiY=";
20 }
21 ];
22
23 # Workaround build failure on -fno-common toolchains like upstream
24 # gcc-10. Otherwise build fails as:
25 # ld: libcamlrun.a(startup.o):(.bss+0x800): multiple definition of
26 # `caml_code_fragments_table'; libcamlrun.a(backtrace.o):(.bss+0x20): first defined here
27 env.NIX_CFLAGS_COMPILE = "-fcommon";
28}