summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVolkmar W. Pogatzki <gentoo@pogatzki.net>2020-10-17 00:07:53 +0200
committerSam James <sam@gentoo.org>2020-10-17 08:32:04 +0000
commite547a74e68a1cd8047d3aaaf480acb3c94425a40 (patch)
treefcd295fd49f9af14a84f9ea87b65c20be25f7fcd /net-misc
parentnet-misc/unison: build with ocaml-4.09.0 (diff)
downloadgentoo-e547a74e68a1cd8047d3aaaf480acb3c94425a40.tar.gz
gentoo-e547a74e68a1cd8047d3aaaf480acb3c94425a40.tar.bz2
gentoo-e547a74e68a1cd8047d3aaaf480acb3c94425a40.zip
net-misc/unison: bump to 2.48.15_p4
Package-Manager: Portage-3.0.8, Repoman-3.0.1 Signed-off-by: Volkmar W. Pogatzki <gentoo@pogatzki.net> Closes: https://github.com/gentoo/gentoo/pull/17927 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'net-misc')
-rw-r--r--net-misc/unison/Manifest1
-rw-r--r--net-misc/unison/files/unison-2.48.15_p4-ocaml-4.08.patch67
-rw-r--r--net-misc/unison/unison-2.48.15_p4.ebuild92
3 files changed, 160 insertions, 0 deletions
diff --git a/net-misc/unison/Manifest b/net-misc/unison/Manifest
index 9ceab2eb1278..100bc6830fcf 100644
--- a/net-misc/unison/Manifest
+++ b/net-misc/unison/Manifest
@@ -1,3 +1,4 @@
+DIST unison-2.48.15v4.tar.gz 1911781 BLAKE2B d3dabea1b8b0d2a8c64716144d33265ba904d7658f64c7f0e74b47a1dd10cf2b692d150052e3234be74aedbcf35a37fe1da9f393802c96810e36ef115609dcec SHA512 658b37fd18d8dee517e88ad707f7e80c1731542a0e07e6a8d56e6598e38bcf405cdb8db224274bf9b3319ed87efc45057d1f79e6437c4ca53afe9cec4afe6c78
DIST unison-2.48.4-manual.html 278110 BLAKE2B 8a85662399aff31a016964783b32c195cb32f5e6bab44c2f0f08740ab88393f4c73b98ecf58d6930bf103c1bec45720306343fa9fe39d3cdd73ffbbac2b9093c SHA512 b995712cda51d612bd81c89589d872099b3b9c90f7413268b24ab399a1eff7690200980514a834ee3d12bd3c89ef61bb8a29b3970c01433e0c4671d363a96b68
DIST unison-2.48.4-manual.pdf 516093 BLAKE2B 8e752a01b8c4335d6687b1f4f20ee09fda90b7521b7ed87af43273416fb3119682078d969772e8c3f7395ef499257dafd67c455a4646868008090ea15063869e SHA512 514da1eda0405416e53b1c8e027d39a803f9030824deccfaf5630aec21c52c6c9ea0d1006461faa8fb26738f4a33eecfe1ae24126fdb7a53ada6b90db270e6c9
DIST unison-2.48.4.tar.gz 1200861 BLAKE2B 8e262e3e28b9f4cbe3925340aa3b08e99f1c30e8d3253cf2c82647e30708d30eb20c544184d54d1683ff9b01ac6913af0df924f0b16431ea2ac79bc95ec4a71f SHA512 c8e7bd2b14edae31e7d08154cdc2dce8173546b6163b9e5f4f2b1c8255792a7645d8449da88d7acfcbf498746481d24d0a3936978969920530a15a16bcbc6024
diff --git a/net-misc/unison/files/unison-2.48.15_p4-ocaml-4.08.patch b/net-misc/unison/files/unison-2.48.15_p4-ocaml-4.08.patch
new file mode 100644
index 000000000000..8a8205d3cfe3
--- /dev/null
+++ b/net-misc/unison/files/unison-2.48.15_p4-ocaml-4.08.patch
@@ -0,0 +1,67 @@
+Reworked for v2.48.15v4 ( https://github.com/bcpierce00/unison/commit/29fa058 )
+
+From: Stephane Glondu <steph@glondu.net>
+Date: Mon, 25 Nov 2019 10:52:48 +0100
+Subject: Fix compilation with OCaml 4.08.1
+
+---
+ files.ml | 2 +-
+ recon.ml | 4 ++--
+ system/system_generic.ml | 2 +-
+ uigtk2.ml | 2 +-
+ 5 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/Makefile.OCaml b/Makefile.OCaml
+index 21610ce..7549907 100644
+--- a/files.ml
++++ b/files.ml
+@@ -722,7 +722,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/recon.ml b/recon.ml
+index 5ed358d..a8719c4 100644
+--- a/recon.ml
++++ b/recon.ml
+@@ -651,8 +651,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/system/system_generic.ml b/system/system_generic.ml
+index 9230cdc..ee457c5 100755
+--- a/system/system_generic.ml
++++ b/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/uigtk2.ml b/uigtk2.ml
+index 206d8ad..b2a17e2 100644
+--- a/uigtk2.ml
++++ b/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 =
diff --git a/net-misc/unison/unison-2.48.15_p4.ebuild b/net-misc/unison/unison-2.48.15_p4.ebuild
new file mode 100644
index 000000000000..771b3e609dd6
--- /dev/null
+++ b/net-misc/unison/unison-2.48.15_p4.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Two-way cross-platform file synchronizer"
+HOMEPAGE="https://www.seas.upenn.edu/~bcpierce/unison/"
+SRC_URI="https://github.com/bcpierce00/unison/archive/v${PV/_p/v}.tar.gz -> ${P/_p/v}.tar.gz"
+# No manual.pdf or manual.html available for this version
+# doc? ( https://www.seas.upenn.edu/~bcpierce/unison/download/releases/${P}/${P}-manual.pdf
+# https://www.seas.upenn.edu/~bcpierce/unison/download/releases/${P}/${P}-manual.html )"
+
+LICENSE="GPL-2"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris"
+IUSE="gtk static debug threads +ocamlopt test"
+
+# Upstream, for this version, has explicitly disabled test with marker
+# "Skipping some tests -- remove me!". Given the potentially destructive nature
+# of those tests, let's not try to run them (they're re-enabled in subsequent
+# releases).
+RESTRICT="test !ocamlopt? ( strip )"
+
+# ocaml version so we are sure it has ocamlopt use flag
+DEPEND="<dev-lang/ocaml-4.10.0:=[ocamlopt?]
+ gtk? ( dev-ml/lablgtk:2= )"
+
+RDEPEND="gtk? ( dev-ml/lablgtk:2=
+ || ( net-misc/x11-ssh-askpass net-misc/ssh-askpass-fullscreen ) )
+ >=app-eselect/eselect-unison-0.4"
+
+S="${WORKDIR}"/${P/_p/v}/src
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.48.4-Makefile-dep.patch
+ "${FILESDIR}"/${PN}-2.48.15_p4-ocaml-4.08.patch # https://bugs.gentoo.org/709646
+)
+
+DOCS=( BUGS.txt CONTRIB INSTALL NEWS README ROADMAP.txt TODO.txt )
+
+src_compile() {
+ local myconf
+
+ if use threads; then
+ myconf="$myconf THREADS=true"
+ fi
+
+ if use static; then
+ myconf="$myconf STATIC=true"
+ fi
+
+ if use debug; then
+ myconf="$myconf DEBUGGING=true"
+ fi
+
+ if use gtk; then
+ myconf="$myconf UISTYLE=gtk2"
+ else
+ myconf="$myconf UISTYLE=text"
+ fi
+
+ use ocamlopt || myconf="$myconf NATIVE=false"
+
+ # Discard cflags as it will try to pass them to ocamlc...
+ emake $myconf CFLAGS="" buildexecutable
+}
+
+src_test() {
+ emake selftest CFLAGS=""
+}
+
+src_install() {
+ # install manually, since it's just too much
+ # work to force the Makefile to do the right thing.
+ local binname
+ for binname in unison unison-fsmonitor; do
+ newbin ${binname} ${binname}-${SLOT}
+ done
+# No manual.pdf or manual.html available for this version
+# if use doc; then
+# DOCS+=( "${DISTDIR}/${P}-manual.pdf" )
+# HTML_DOCS=( "${DISTDIR}/${P}-manual.html" )
+# fi
+ einstalldocs
+}
+
+pkg_postinst() {
+ elog "Unison now uses SLOTs, so you can specify servercmd=/usr/bin/unison-${SLOT}"
+ elog "in your profile files to access exactly this version over ssh."
+ elog "Or you can use 'eselect unison' to set the version."
+ eselect unison update
+}