This patch is taken from the opam repository: https://github.com/ocaml/opam-repository/blob/master/packages/unison/unison.2.51.2/files/ocaml48.patch It fixes compatibility with changes introduced in OCaml 4.08. diff --git a/src/Makefile.OCaml b/src/Makefile.OCaml index 7cefa2e..378fc8b 100644 --- a/src/Makefile.OCaml +++ b/src/Makefile.OCaml @@ -272,7 +272,7 @@ endif # Gtk GUI ifeq ($(UISTYLE), gtk) - CAMLFLAGS+=-I +lablgtk + CAMLFLAGS+=-I $(LABLGTKLIB) OCAMLOBJS+=pixmaps.cmo uigtk.cmo linkgtk.cmo OCAMLLIBS+=lablgtk.cma endif @@ -282,7 +282,7 @@ OCAMLFIND := $(shell command -v ocamlfind 2> /dev/null) ifeq ($(UISTYLE), gtk2) ifndef OCAMLFIND - CAMLFLAGS+=-I +lablgtk2 + CAMLFLAGS+=-I $(LABLGTK2LIB) else CAMLFLAGS+=$(shell $(OCAMLFIND) query -i-format lablgtk2 ) endif diff --git a/src/files.ml b/src/files.ml index 5ff1881..1d1fbcc 100644 --- a/src/files.ml +++ b/src/files.ml @@ -734,7 +734,7 @@ let get_files_in_directory dir = with End_of_file -> dirh.System.closedir () end; - Sort.list (<) !files + List.sort String.compare !files let ls dir pattern = Util.convertUnixErrorsToTransient diff --git a/src/recon.ml b/src/recon.ml index 2c619bb..2412c18 100644 --- a/src/recon.ml +++ b/src/recon.ml @@ -661,8 +661,8 @@ let rec reconcile (* Sorts the paths so that they will be displayed in order *) let sortPaths pathUpdatesList = - Sort.list - (fun (p1, _) (p2, _) -> Path.compare p1 p2 <= 0) + List.sort + Path.compare pathUpdatesList let rec enterPath p1 p2 t = diff --git a/src/system/system_generic.ml b/src/system/system_generic.ml index 453027d..c2288b8 100755 --- a/src/system/system_generic.ml +++ b/src/system/system_generic.ml @@ -47,7 +47,7 @@ let open_out_gen = open_out_gen let chmod = Unix.chmod let chown = Unix.chown let utimes = Unix.utimes -let link = Unix.link +let link s d = Unix.link s d let openfile = Unix.openfile let opendir f = let h = Unix.opendir f in diff --git a/src/uigtk2.ml b/src/uigtk2.ml index fbc5d8f..4e82cc2 100644 --- a/src/uigtk2.ml +++ b/src/uigtk2.ml @@ -94,7 +94,7 @@ let icon = let icon = let p = GdkPixbuf.create ~width:48 ~height:48 ~has_alpha:true () in Gpointer.blit - (Gpointer.region_of_string Pixmaps.icon_data) (GdkPixbuf.get_pixels p); + (Gpointer.region_of_bytes Pixmaps.icon_data) (GdkPixbuf.get_pixels p); p let leftPtrWatch =