Commit Graph

234 Commits

Author SHA1 Message Date
Vincent Laporte
81feea0818
ocamlPackages_5_2.ocaml: init at 5.2.0-β1 2024-03-25 18:17:34 +01:00
Vincent Laporte
c0fffa580f
ocaml-ng.ocamlPackages_4_14.ocaml: 4.14.1 → 4.14.2 2024-03-15 07:15:49 +00:00
Vincent Laporte
df70ab86b3 ocaml-ng.ocamlPackages_5_1.ocaml: 5.1.0 → 5.1.1 2023-12-13 09:56:13 +01:00
Maximilian Bosch
8bc5104a6e
treewide: refactor .attrs.sh detection
When specifying the `builder` attribute in `stdenv.mkDerivation`, this
will be effectively transformed into

    builtins.derivation {
      builder = stdenv.shell;
      args = [ "-e" builder ];
    }

This also means that `default-builder.sh` is never sourced and as a
result it's not guaranteed that `$NIX_ATTRS_SH_FILE` is set to a correct
location[1].

Also, we need to source `.attrs.sh` to source `$stdenv`. So, the
following is done now:

* If `$NIX_ATTRS_SH_FILE` points to a correct location, then use it.
  Directly using `.attrs.sh` is problematic for `nix-shell(1)` usage
  (see previous commit for more context), so prefer the environment
  variable if possible.

* Otherwise, if `.attrs.sh` exists, then use it. See [1] for when this
  can happen.

* If neither applies, it can be assumed that `__structuredAttrs` is
  turned off and thus nothing needs to be done.

[1] It's possible that it doesn't exist at all - in case of Nix 2.3 or
    it can point to a wrong location on older Nix versions with a bug in
    `__structuredAttrs`.
2023-10-04 18:36:57 +02:00
Vincent Laporte
460e931dac
ocaml-ng.ocamlPackages_5_1.ocaml: 5.1.0-rc3 → 5.1.0 2023-09-15 08:57:27 +02:00
Vincent Laporte
b787aa207f
ocaml-ng.ocamlPackages_5_1.ocaml: init at 5.1.0-rc3 2023-09-08 11:50:46 +02:00
Martin Weinelt
19680e9902
Merge pull request #217568 from trofi/stdenv-parallel-install
stdenv/generic/setup.sh: enable parallel installs for parallel builds
2023-03-15 17:10:19 +00:00
Ali Caglayan
8f16a97848 ocaml: add framePointer option
Signed-off-by: Ali Caglayan <alizter@gmail.com>

<!-- ps-id: 10ea20a5-edc5-4358-a6d7-f2b5ec319258 -->
2023-03-13 15:42:21 +01:00
Sergei Trofimovich
7b8d86277d ocaml: disable parallel installs
Without the change parallel install fails as:

    $ install flags: -j16 ...
    ...
    install: target '...-ocaml-4.14.0/lib/ocaml/threads': No such file or directory
    make[1]: *** [Makefile:140: installopt] Error 1
2023-03-02 22:00:52 +00:00
Ulrik Strid
fea42519a4 ocaml: 4.14.0 -> 4.14.1 2023-03-01 12:20:49 +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
zainab-ali
c3bf65df67 ocaml: remove spaceTimeSupport after 4.12
Spacetime support was removed in OCaml version 4.12.
See the OCaml release notes: https://ocaml.org/releases/4.12.0.
See the pull request to OCaml: ocaml/ocaml#9948.
2023-02-19 16:42:53 +00:00
Alyssa Ross
78367ae5cb ocaml-ng.ocamlPackages_4_09.ocaml: fix with GCC 12 2023-02-11 21:49:06 +00:00
Et7f3
e3583e257e pkgs/development/compilers/ocaml: cleanup unused files
Probably left over by #114848
2023-01-22 01:12:24 +01:00
Sandro
5b3571c0df
Merge pull request #197367 from Et7f3/use-integrated-as-darwin 2023-01-21 18:49:59 +01:00
Weijia Wang
64a4e05f0d ocaml: add unsafe string support 2023-01-19 13:55:44 +08:00
Weijia Wang
67548d607d ocaml-ng.ocamlPackages_4_0[2-5].ocaml: unbreak on aarch64-linux 2023-01-16 20:58:27 +01:00
github-actions[bot]
887e342eaa
Merge staging-next into staging 2022-12-17 18:01:35 +00:00
Ulrik Strid
1865acec01 ocaml-ng.ocamlPackages_5_0: 5.0.0-rc1 -> 5.0.0 2022-12-17 15:39:28 +01:00
github-actions[bot]
c0b33aa433
Merge staging-next into staging 2022-12-14 06:01:42 +00:00
Vincent Laporte
b1648e3b6a ocaml-ng.ocamlPackages_5_0: 5.0.0-β2 → 5.0.0-rc1 2022-12-14 06:55:47 +01:00
github-actions[bot]
f14765eb08
Merge staging-next into staging 2022-12-11 18:01:53 +00:00
Robert Hensing
16f5747575
Merge pull request #175649 from Artturin/opt-in-structured-attrs
stdenv: support opt-in __structuredAttrs
2022-12-10 21:12:43 +01:00
Sergei Trofimovich
79eaf1dbb9 ocaml-ng.ocamlPackages_4_00_1.ocaml: use xorg.* packages directly instead of xlibsWrapper indirection
Validated as no material change in `out` output with `diffoscope`.
2022-12-10 13:58:10 +00:00
Artturin
c01f509e44 treewide: source .attrs in builders
if theres a source $stdenv then this is needed

for structuredAttrs
2022-12-08 21:09:02 +02:00
Vincent Laporte
929771b9ed ocaml-ng.ocamlPackages_5_0: 5.0.0-β1 → 5.0.0-β2 2022-12-05 20:46:40 +01:00
Weijia Wang
bbc00643c7 ocaml-ng.ocamlPackages_4_09.ocaml: mark as broken on aarch64-darwin 2022-11-02 17:21:28 +01:00
Et7f3
f8b18c100b ocamlPackages.ocaml: Migrate to integrated assembler for Darwin
This is linked to https://github.com/ocaml/ocaml/pull/10176
A similar issue appeared with clang in cctools (Darwin):
```
as: this system assembler is deprecated. Please migrate to the clang integrated assembler (`as -q').
```
https://developer.apple.com/documentation/xcode-release-notes/xcode-12-release-notes#Deprecations
2022-10-23 14:44:18 +02:00
Vincent Laporte
7e591f949e ocaml-ng.ocamlPackages_5_0.ocaml: init at 5.0.0-β1 2022-10-22 12:09:49 +02:00
Sergei Trofimovich
1bdc32f970 ocaml-ng.ocamlPackages_4_00_1.ocaml, ocaml-ng.ocamlPackages_4_08.ocaml: add -fcommon workaround
Workaround build failure on -fno-common toolchains like upstream
gcc-10. Otherwise build fails as:

    $ nix build --impure --expr 'with import ./. {}; ocaml-ng.ocamlPackages_4_00_1.ocaml.overrideAttrs (oa: {   NIX_CFLAGS_COMPILE = (["-fno-common"] ++ [oa.NIX_CFLAGS_COMPILE or ""]); })'
    ...
    > ld: libcamlrun.a(startup.o):(.bss+0x800): multiple definition of `caml_code_fragments_table'; libcamlrun.a(backtrace.o):(.bss+0x20): first defined here
    > collect2: error: ld returned 1 exit status
2022-05-28 13:37:55 +01:00
Adam Joseph
b3fe9c32f8 ber_metaocaml: n107 -> n111
The configure script has changed and no longer seems to provide a way
to specify the location of the x11 libraries or headers.  Therefore
these configure options have been dropped.
2022-05-26 09:41:10 +02:00
Adam Joseph
4b8488f72a ber-metaocaml: make useX11 be a parameter rather than a let-binding
This allows callers to choose the value of useX11 themselves, for
example in config.nix.
2022-05-24 18:09:50 +02:00
Adam Joseph
be15e454d8 ber-metaocaml: apply glibc>=2.34 fix from ocaml/4.07.nix 2022-05-20 02:00:26 -07:00
Anders Kaseorg
6920d8ca42 treewide: Simplify negated uses of versionAtLeast, versionOlder
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2022-04-25 13:35:24 -07:00
Vincent Laporte
d8d2136718 ocaml 4.00 – 4.09: make compatible with glibc-2.34 2022-04-06 21:30:10 +02:00
github-actions[bot]
c46200d454
Merge master into staging-next 2022-04-03 18:01:07 +00:00
ajs124
aa2c7c30df metaocaml_3_09: remove after being marked broken for over two years
It was marked in commit ea171c39d7 by Kirill Boltaev on 2016-09-19 (commited on 2016-09-26)
2022-04-03 16:14:17 +01:00
github-actions[bot]
5e1c018e60
Merge master into staging-next 2022-04-01 06:01:23 +00:00
Vincent Laporte
3a5df670ef ocaml-ng.ocamlPackages_4_14.ocaml: 4.14.0-rc2 → 4.14.0 2022-04-01 06:54:57 +02:00
Vladimír Čunát
0a8b4eddd2
Merge branch 'master' into staging-next 2022-03-25 10:16:56 +01:00
Vincent Laporte
f4998c542d ocaml-ng.ocamlPackages_4_14: 4.14.0-β1 → 4.14.0-rc2 2022-03-23 11:25:01 +01:00
Alyssa Ross
d7e181ff83
Merge remote-tracking branch 'nixpkgs/staging-next' into staging
Conflicts:
	pkgs/development/compilers/ocaml/4.12.nix
	pkgs/development/python-modules/oci/default.nix
	pkgs/tools/admin/bubblewrap/default.nix
2022-03-14 12:33:16 +00:00
Vincent Laporte
9d13bf5b1c ocaml-ng.ocamlPackages_4_14.ocaml: init at 4.14.0-β1 2022-03-13 21:44:09 +01:00
Vincent Laporte
6107d3894b ocaml-ng.ocamlPackages_4_12.ocaml: 4.12.0 → 4.12.1 2022-03-12 09:34:07 +01:00
Felix Buehler
103f0186e1 ocaml: rename name to pname 2022-03-01 14:55:45 +01:00
Vladimír Čunát
4757815068
Merge #150128: ocaml: enable parallel building
...into staging
2022-02-28 08:11:16 +01:00
Sergei Trofimovich
238d634e4b ocaml: enable parallel building
Enable parallel building for ocaml-4.08 and above. tested as:

    $ nix build -f. ocaml-ng.ocamlPackages_{4_{00_1,01_0,02,03,04,05,06,07,08,09,10,11,12,13},latest}.ocaml --keep-going

ocaml build system supports parallel building, but but for multiple
top-level targets at the same time as it usually spawns subprocess
$(MAKE) that occasionally conflict with one another. To work it around
we use tiny Makefile with a single rule that calls top-level targets
sequentially as makefile calls:

    nixpkgs_world_bootstrap_world_opt:
       $(MAKE) world
       $(MAKE) bootstrap
       $(MAKE) world.opt

On a 16-core machine ocaml-4.12 build speeds up from 6m55s to 1m35s.

Releases 4_00_1, 4_01_0, 4_04 and 4_05 still have some race in them.
Thus this change enables parallel builds only for ocaml-4.06 and above.

Adapted from #142723

upstreams's CI tests the parallel makefile: https://github.com/ocaml/ocaml/issues/10235#issuecomment-782100584
The limit was chosen to be 4.08 because it was released in 2019, not too
long before the above link.
2022-02-27 12:00:00 +00:00
Maximilian Bosch
bcf8aeff3c
ocaml 4.10/4.11: fix build w/glibc-2.34
Failing Hydra build: https://hydra.nixos.org/build/155189331
Applied a smaller patch from Fedora's fork[1] as it also applies on
older versions.

That said, these versions seem unmaintained anyways, so we should
probably drop them entirely.

[1] https://pagure.io/fedora-ocaml/c/dfb5e954a04f59b0456cc4c0ddf3acaf22e0ff07?branch=fedora-35-4.12.0
2022-02-27 10:25:39 +01:00
Maximilian Bosch
917b7e5fd2
ocaml: fix build w/glibc-2.34
ChangeLog: https://hydra.nixos.org/build/154122673
2022-02-27 10:25:39 +01:00
Ben Siraphob
39a0a70d29
treewide: fix homepages with permanent redirect to https 2021-12-29 22:06:47 +07:00