unison: patch 2.51.3

Add patch which fixes builds with (at least) ocaml 4.12.0, and
remove build constraint for 4.09.  Necessary because unison built
with 4.09 is not compatible with unison built with 4.12, e.g. on
recent Homebrew.
This commit is contained in:
Michael Ashton 2021-06-17 23:36:09 -07:00 committed by Vincent Laporte
parent 887c37ead2
commit ecb5cd972f
2 changed files with 11 additions and 2 deletions

View File

@ -1,4 +1,4 @@
{lib, stdenv, fetchFromGitHub, ocamlPackages, fontschumachermisc, xset, makeWrapper, ncurses, gnugrep {lib, stdenv, fetchFromGitHub, ocamlPackages, fontschumachermisc, xset, makeWrapper, ncurses, gnugrep, fetchpatch
, enableX11 ? true}: , enableX11 ? true}:
let inherit (ocamlPackages) ocaml lablgtk; in let inherit (ocamlPackages) ocaml lablgtk; in
@ -17,6 +17,16 @@ stdenv.mkDerivation (rec {
nativeBuildInputs = [ makeWrapper ]; nativeBuildInputs = [ makeWrapper ];
buildInputs = [ ocaml ncurses ]; buildInputs = [ ocaml ncurses ];
patches = [
# Patch to fix build with ocaml 4.12. Remove in 2.51.4
# https://github.com/bcpierce00/unison/pull/481
(fetchpatch {
name = "fix-compile-with-ocaml-4.12.patch";
url = "https://github.com/bcpierce00/unison/commit/14b885316e0a4b41cb80fe3daef7950f88be5c8f.patch?full_index=1";
sha256 = "0j1rma1cwdsfql19zvzhfj2ys5c4lbhjcp6jrnck04xnckxxiy3d";
})
];
preBuild = (if enableX11 then '' preBuild = (if enableX11 then ''
sed -i "s|\(OCAMLOPT=.*\)$|\1 -I $(echo "${lablgtk}"/lib/ocaml/*/site-lib/lablgtk2)|" src/Makefile.OCaml sed -i "s|\(OCAMLOPT=.*\)$|\1 -I $(echo "${lablgtk}"/lib/ocaml/*/site-lib/lablgtk2)|" src/Makefile.OCaml
'' else "") + '' '' else "") + ''

View File

@ -27313,7 +27313,6 @@ in
unipicker = callPackage ../applications/misc/unipicker { }; unipicker = callPackage ../applications/misc/unipicker { };
unison = callPackage ../applications/networking/sync/unison { unison = callPackage ../applications/networking/sync/unison {
ocamlPackages = ocaml-ng.ocamlPackages_4_09;
enableX11 = config.unison.enableX11 or true; enableX11 = config.unison.enableX11 or true;
}; };