commit:     437509263eb4ac577eb618e8744a06d8ad7a3b5b
Author:     Christopher Fore <csfore <AT> posteo <DOT> net>
AuthorDate: Sat Nov 25 19:19:14 2023 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Sat Jan 27 09:16:49 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=43750926

net-misc/unison: add 2.53.3

Tested on amd64 and builds successfully, tests pass.

Removed ~sparc-solaris from the original ebuild provided as
`pkgcheck scan` said it was unknown.

Bug: https://bugs.gentoo.org/769341
Closes: https://bugs.gentoo.org/887609
Signed-off-by: Christopher Fore <csfore <AT> posteo.net>
Closes: https://github.com/gentoo/gentoo/pull/33986
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 net-misc/unison/Manifest             |  1 +
 net-misc/unison/unison-2.53.3.ebuild | 99 ++++++++++++++++++++++++++++++++++++
 2 files changed, 100 insertions(+)

diff --git a/net-misc/unison/Manifest b/net-misc/unison/Manifest
index a43b259cbb2b..120b6d85e835 100644
--- a/net-misc/unison/Manifest
+++ b/net-misc/unison/Manifest
@@ -1 +1,2 @@
 DIST unison-2.51.5.tar.gz 1385407 BLAKE2B 
cdad4683518ec9c7c43d9107d8533fa393a68f602782d96ddba345df07b1ef70cc2ebf7dfd205fc7535349553a5e0d3c2931099bde99e5c736bc815ccdd294f8
 SHA512 
4a31df4d043d2b7552438f9fc2056098b9a35cd1cae1a037083cb56d91ec6fec0c3164de73914ff46cb8821f78c1594f48bf0334a94d9d706cd82ce3a6b70440
+DIST unison-2.53.3.tar.gz 1415490 BLAKE2B 
1142419781f5084da7ae8d043897f2f80aa4c3770a1c5cb44f8d7f669f718c41dd7fa6d13069cd95c71842233309eb886f63ab525e5e446ff761ea970de0e794
 SHA512 
f3fafd5e1a2950a00ed8bcc682036180ea40eff1ccfa1fc671cca49954890a535ee48faf1e8e62002563143e5479b9df1eca1db1caf03dffc50449fb467b8e2b

diff --git a/net-misc/unison/unison-2.53.3.ebuild 
b/net-misc/unison/unison-2.53.3.ebuild
new file mode 100644
index 000000000000..0de016690ac1
--- /dev/null
+++ b/net-misc/unison/unison-2.53.3.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop xdg-utils
+
+DESCRIPTION="Two-way cross-platform file synchronizer"
+HOMEPAGE="https://github.com/bcpierce00/unison";
+SRC_URI="https://github.com/bcpierce00/unison/archive/v${PV}.tar.gz -> 
${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="debug doc gtk +ocamlopt threads"
+
+BDEPEND="dev-lang/ocaml:=[ocamlopt?]
+       doc? ( app-text/dvipsk
+               app-text/ghostscript-gpl
+               dev-texlive/texlive-latex )"
+DEPEND="gtk? ( dev-ml/lablgtk:3=[ocamlopt?] )"
+RDEPEND="gtk? ( dev-ml/lablgtk:3=[ocamlopt?]
+       || ( net-misc/x11-ssh-askpass net-misc/ssh-askpass-fullscreen ) )
+       >=app-eselect/eselect-unison-0.4
+       >=dev-lang/ocaml-4.08"
+
+DOCS=( CONTRIB README ROADMAP.txt TODO.txt )
+
+src_compile() {
+       local myconf
+
+       if use threads; then
+               myconf+=( THREADS=true )
+       fi
+
+       if use debug; then
+               myconf+=( DEBUGGING=true )
+       fi
+
+       if use gtk; then
+               myconf+=( UISTYLE=gtk3 )
+       else
+               myconf+=( UISTYLE=text )
+       fi
+
+       use ocamlopt || myconf+=( NATIVE=false )
+
+       if use doc; then
+               VARTEXFONTS="${T}/fonts" emake "${myconf[@]}" CFLAGS="" 
HEVEA=false docs
+       fi
+
+       # Discard cflags as it will try to pass them to ocamlc...
+       emake "${myconf[@]}" CFLAGS="" src
+
+       emake manpage
+}
+
+src_test() {
+       emake test CFLAGS=""
+}
+
+src_install() {
+       # install manually, since it's just too much
+       # work to force the Makefile to do the right thing.
+       local binname
+       cd src || die
+       for binname in unison unison-fsmonitor; do
+               newbin ${binname} ${binname}-${SLOT}
+       done
+       doman ../man/unison.1
+
+       if use gtk; then
+               newicon -s scalable ../icons/U.svg ${PN}-${SLOT}.svg
+               make_desktop_entry ${PN}-${SLOT} "${PN} (${SLOT})" 
"${PN}-${SLOT}"
+       fi
+
+       if use doc; then
+               DOCS+=( ../doc/unison-manual.pdf )
+       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 || die
+
+       if use gtk; then
+               xdg_icon_cache_update
+       fi
+}
+
+pkg_postrm() {
+       if use gtk; then
+               xdg_icon_cache_update
+       fi
+}

Reply via email to