Opened 5 years ago

Closed 5 years ago

Last modified 4 years ago

#58852 closed defect (fixed)

unison @2.51.2_2: problem with ocaml @4.08.1 - build failure

Reported by: majoc-at-astro (majoc-at-astro) Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 2.5.4
Keywords: Cc: nigelhorne (Nigel Horne)
Port: unison

Description

Unison @2.51.2_2, which built OK last week, now fails when built using ocaml @4.08.1. Full log enclosed, but here's the punchline:

ocamlopt: system.ml ---> system.cmx
ocamlopt -g -unsafe-string -I lwt -I ubase -I system -I fsmonitor -I fsmonitor/linux -I fsmonitor/windows -I system/generic -I lwt/generic -ccopt -mmacosx-version-min=10.12 -I /opt/local/lib/ocaml/site-lib/lablgtk2 -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_unison/unison/work/unison-2.51.2/src/system.ml
File "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_unison/unison/work/unison-2.51.2/src/system.ml", line 1:
Error: The implementation /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_unison/unison/work/unison-2.51.2/src/system.ml
       does not match the interface system.cmi:
       Values do not match:
         val link : ?follow:bool -> string -> string -> unit
       is not included in
         val link : fspath -> fspath -> unit
       File "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_unison/unison/work/unison-2.51.2/src/system/system_intf.ml", line 70, characters 0-35:
         Expected declaration
       File "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_unison/unison/work/unison-2.51.2/src/system/system_generic.ml", line 50, characters 4-8:
         Actual declaration
make[1]: *** [system.cmx] Error 2

macOS: 10.12 (Xcode 9.2), 10.13 (Xcode 9.4.1), 10.14 (Xcode 10.3).

I don't pretend to understand ocaml, so I won't spoil the kill with uninformed speculation. Please let me know if there's any further information that would help. Thanks in advance.

Attachments (2)

unison.build.out (14.2 KB) - added by majoc-at-astro (majoc-at-astro) 5 years ago.
patches.tgz (2.5 KB) - added by dsteck 5 years ago.
patches and portfile

Download all attachments as: .zip

Change History (9)

Changed 5 years ago by majoc-at-astro (majoc-at-astro)

Attachment: unison.build.out added

comment:1 Changed 5 years ago by domenic87 (Domenico Marson)

Same problem/same error here! Is there any possible solution to it? I found the problem is also reported in the official unison repository (https://github.com/bcpierce00/unison/issues/277) for the HomeBrew installation, but they say is not present in the Master branch!

Last edited 5 years ago by domenic87 (Domenico Marson) (previous) (diff)

comment:2 Changed 5 years ago by martinhanzalek (Martin Hanzalek)

Same problem here, unison can't be build with current ocaml ocaml-4.08.1.

However, when I installed oled version of ocaml manually (4.07.1), unison was build OK.

comment:3 Changed 5 years ago by mf2k (Frank Schima)

Cc: nigelhorne added

Has duplicate #59580.

comment:4 Changed 5 years ago by dsteck

There are patches from March that seem to address this, linked from the github issue mentioned above: https://github.com/bcpierce00/unison/commit/23fa129254a3304902739fc989950cc747d1e0b3#diff-2a830ee6e028c8ce19c787701fc19c16

I made macports patch files and modified the portfile to use them. The result compiles for me, though I haven't tested the functionality of the resulting unison build. Portfiles and patch files attached (patches.tgz).

Changed 5 years ago by dsteck

Attachment: patches.tgz added

patches and portfile

comment:5 Changed 5 years ago by mf2k (Frank Schima)

Thanks. Note that you are more likely to get this committed, and faster, if you submit a GitHub pull request.

comment:6 Changed 5 years ago by ryandesign (Ryan Carsten Schmidt)

Owner: set to ryandesign
Resolution: fixed
Status: newclosed

In e75563b7f431a2cb21c0bc03ff483bc1f970d64d/macports-ports (master):

unison: Fix build with ocaml 4.08

I don't know if this changes the installed files so revbump just in case.

Closes: #58852

comment:7 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)

In e75563b7f431a2cb21c0bc03ff483bc1f970d64d/macports-ports (dar, master, py38-reproject, revert-6945-rust-1.43.0, wireshark):

unison: Fix build with ocaml 4.08

I don't know if this changes the installed files so revbump just in case.

Closes: #58852

Note: See TracTickets for help on using tickets.