diff options
author | Maciej Barć <xgqt@gentoo.org> | 2024-11-14 20:33:49 +0100 |
---|---|---|
committer | Maciej Barć <xgqt@gentoo.org> | 2024-11-15 00:40:52 +0100 |
commit | 8b29fa8a93a18065ae7e86655bbe216d3d6b6347 (patch) | |
tree | 61b461226eb7f562daa74b7c2d81f5647d0b82f6 /net-misc | |
parent | sci-mathematics/eclib: add 20241112 (diff) | |
download | gentoo-8b29fa8a93a18065ae7e86655bbe216d3d6b6347.tar.gz gentoo-8b29fa8a93a18065ae7e86655bbe216d3d6b6347.tar.bz2 gentoo-8b29fa8a93a18065ae7e86655bbe216d3d6b6347.zip |
net-misc/unison: bump to 2.53.7
Signed-off-by: Maciej Barć <xgqt@gentoo.org>
Diffstat (limited to 'net-misc')
-rw-r--r-- | net-misc/unison/Manifest | 1 | ||||
-rw-r--r-- | net-misc/unison/unison-2.53.7.ebuild | 145 |
2 files changed, 146 insertions, 0 deletions
diff --git a/net-misc/unison/Manifest b/net-misc/unison/Manifest index dc2a9b0c8fad..4a613eac31b5 100644 --- a/net-misc/unison/Manifest +++ b/net-misc/unison/Manifest @@ -1 +1,2 @@ DIST unison-2.53.5.tar.gz 1408926 BLAKE2B e7e3db458a485fca8820508a964df5877aed0a2d6a3ea8305298d0c6516591323f3cacdd86c4e057585c0f3b2da8a03a5a3653f543d6f1acb20701f23a81f470 SHA512 eabeed7b428f1985610b47ce8bc7faac515fd24937727612aa45435da3e38d40b6cd6d227eb3b65dc370d46458cecfca9d0e9e1712b2b7fa41b76675f8115c4c +DIST unison-2.53.7.gh.tar.gz 1412694 BLAKE2B abc7b37256f760f862c63a8f6715b1d66ce4526146fd1e24146a18afe3944e6438a5474547ccb851739ebac7b02e6bfa4c46832f96e3c50ef036dff20c40a2b7 SHA512 11bd1d2792fb84fa2b29426516d7b91a2295febcb84052118d492a29d9ddaa23265b66cc88113019ec6782f3edcf596f7a37c8637e673b2928188248b9d63d60 diff --git a/net-misc/unison/unison-2.53.7.ebuild b/net-misc/unison/unison-2.53.7.ebuild new file mode 100644 index 000000000000..b7cb3a039129 --- /dev/null +++ b/net-misc/unison/unison-2.53.7.ebuild @@ -0,0 +1,145 @@ +# 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://www.seas.upenn.edu/~bcpierce/unison/ + https://github.com/bcpierce00/unison/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/bcpierce00/${PN}.git" +else + SRC_URI="https://github.com/bcpierce00/${PN}/archive/refs/tags/v${PV}.tar.gz + -> ${P}.gh.tar.gz" + + KEYWORDS="~amd64 ~arm ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" +fi + +LICENSE="GPL-2" +SLOT="$(ver_cut 1-2)" +IUSE="doc gui +ocamlopt" + +BDEPEND=" + dev-lang/ocaml:=[ocamlopt?] + doc? ( + app-text/dvipsk + app-text/ghostscript-gpl + dev-texlive/texlive-latex + ) +" +DEPEND=" + gui? ( + dev-ml/lablgtk:3=[ocamlopt?] + ) +" +RDEPEND=" + >=dev-lang/ocaml-4.08:= + gui? ( + dev-ml/lablgtk:3=[ocamlopt?] + || ( + net-misc/ssh-askpass-fullscreen + net-misc/x11-ssh-askpass + ) + ) +" +IDEPEND=" + >=app-eselect/eselect-unison-0.4 +" + +DOCS=( CONTRIBUTING.md README.md src/FEATURES.md src/ROADMAP.txt src/TODO.txt ) + +QA_FLAGS_IGNORED="usr/bin/${PN}-fsmonitor-${SLOT}" + +gui_cache_update() { + if use gui ; then + xdg_icon_cache_update + xdg_desktop_database_update + fi +} + +src_compile() { + local -a myconf=() + + if ! use ocamlopt ; then + myconf+=( NATIVE=false ) + fi + + # Discard cflags as it will try to pass them to ocamlc... + emake "${myconf[@]}" CFLAGS="" -j1 tui fsmonitor manpage + + if use gui ; then + emake "${myconf[@]}" CFLAGS="" -j1 gui + fi + + if use doc ; then + VARTEXFONTS="${T}/fonts" emake "${myconf[@]}" CFLAGS="" HEVEA=false docs + fi +} + +src_test() { + emake test CFLAGS="" +} + +src_install() { + # OCaml generates textrels on 32-bit arches + if use arm || use ppc || use x86 ; then + export QA_TEXTRELS='.*' + fi + + # install manually, since it's just too much + # work to force the Makefile to do the right thing. + cd "${S}/src" || die + + local -a bins=( + unison-fsmonitor + ) + + # Unison GUI is a CLI + GTK GUI in one binary, no need to install both, + # see bug https://bugs.gentoo.org/941780 + if use gui ; then + bins+=( unison-gui ) + else + bins+=( unison ) + fi + + local binname + for binname in "${bins[@]}" ; do + exeinto /usr/bin + newexe "${binname}" "${binname/-gui/}-${SLOT}" + done + + cd "${S}" || die + + if use gui ; then + newicon -s scalable icons/U.svg "${PN}-${SLOT}.svg" + make_desktop_entry "${PN}-gui-${SLOT}" "${PN^} GUI (${SLOT})" "${PN}-${SLOT}" + fi + + if use doc ; then + DOCS+=( doc/unison-manual.pdf ) + fi + + doman "man/${PN}.1" + 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 + + gui_cache_update +} + +pkg_postrm() { + eselect unison update + + gui_cache_update +} |