gnu: unison: Update to 2.53.3.

* gnu/packages/ocaml.scm (unison): Update to 2.53.0.
  [source]: Remove patch.
  [build-system]: Use dune-build-system.
  [outputs]: Remove "doc" output.
  [native-inputs]: Update package style.
  [propagated-inputs]: Add lablgtk3 and zlib.
  [arguments]: Enable tests.
  <#:phases>: Remove prepare-install and install-fsmonitor phases.
* gnu/packages/patches/unison-fix-ocaml-4.08.patch: Remove file.
* gnu/local.mk: Unregister.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
pukkamustard 2023-10-14 12:06:32 +00:00 committed by Ludovic Courtès
parent dd19f3c39d
commit 6156bf9078
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5
3 changed files with 7 additions and 123 deletions

View file

@ -2059,7 +2059,6 @@ dist_patch_DATA = \
%D%/packages/patches/ungoogled-chromium-RUNPATH.patch \
%D%/packages/patches/ungoogled-chromium-system-ffmpeg.patch \
%D%/packages/patches/ungoogled-chromium-system-nspr.patch \
%D%/packages/patches/unison-fix-ocaml-4.08.patch \
%D%/packages/patches/unknown-horizons-python-3.8-distro.patch \
%D%/packages/patches/unzip-CVE-2014-8139.patch \
%D%/packages/patches/unzip-CVE-2014-8140.patch \

View file

@ -1359,7 +1359,7 @@ (define-public ocaml4.07-lablgtk
(define-public unison
(package
(name "unison")
(version "2.51.2")
(version "2.53.3")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1368,52 +1368,18 @@ (define-public unison
(file-name (git-file-name name version))
(sha256
(base32
"1bykiyc0dc5pkw8x370qkg2kygq9pq7yqzsgczd3y13b6ivm4sdq"))
(patches (search-patches "unison-fix-ocaml-4.08.patch"))))
(build-system gnu-build-system)
(outputs '("out"
"doc")) ; 1.9 MiB of documentation
(native-inputs
`(("ocaml" ,ocaml-4.09)
;; For documentation
("ghostscript" ,ghostscript)
("texlive" ,(texlive-updmap.cfg))
("hevea" ,hevea)
("lynx" ,lynx)
("which" ,which)))
"05ihxk1yynw08586i06w19xab9r24h9hr6v9bknqm98qrlshm92w"))))
(build-system dune-build-system)
(propagated-inputs (list lablgtk3 zlib))
(native-inputs (list ghostscript (texlive-updmap.cfg '()) hevea lynx which))
(arguments
`(#:parallel-build? #f
#:parallel-tests? #f
#:test-target "selftest"
#:tests? #f ; Tests require writing to $HOME.
; If some $HOME is provided, they fail with the message
; "Fatal error: Skipping some tests -- remove me!"
#:phases
`(#:phases
(modify-phases %standard-phases
(delete 'configure)
(add-before 'install 'prepare-install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin")))
(mkdir-p bin)
(setenv "HOME" out) ; forces correct INSTALLDIR in Makefile
#t)))
(add-after 'install 'install-fsmonitor
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin")))
;; 'unison-fsmonitor' is used in "unison -repeat watch" mode.
(install-file "src/unison-fsmonitor" bin)
#t)))
(add-after 'install 'install-doc
(lambda* (#:key outputs #:allow-other-keys)
(let ((doc (string-append (assoc-ref outputs "doc")
(let ((doc (string-append (assoc-ref outputs "out")
"/share/doc/unison")))
(mkdir-p doc)
;; Remove an '\n' that prevents the doc to be generated
;; correctly with newer hevea.
(substitute* "doc/local.tex"
(("----SNIP----.*") "----SNIP----"))
;; This file needs write-permissions, because it's
;; overwritten by 'docs' during documentation generation.
(chmod "src/strings.ml" #o600)

View file

@ -1,81 +0,0 @@
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 =