summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaciej Barć <xgqt@gentoo.org>2024-06-20 22:19:26 +0200
committerMaciej Barć <xgqt@gentoo.org>2024-06-20 23:01:10 +0200
commitf8251447a160931cbfcbb896fb0fa3e6ffe109f7 (patch)
treeae9da981d8ac43553d3eec86218be2cfd7bb6f7a /net-misc/unison
parentdev-ml/xml-light: add 2.5 (diff)
downloadgentoo-f8251447a160931cbfcbb896fb0fa3e6ffe109f7.tar.gz
gentoo-f8251447a160931cbfcbb896fb0fa3e6ffe109f7.tar.bz2
gentoo-f8251447a160931cbfcbb896fb0fa3e6ffe109f7.zip
net-misc/unison: misc fixes
Closes: https://bugs.gentoo.org/685776 Closes: https://bugs.gentoo.org/928589 Signed-off-by: Maciej Barć <xgqt@gentoo.org>
Diffstat (limited to 'net-misc/unison')
-rw-r--r--net-misc/unison/unison-2.51.5-r1.ebuild (renamed from net-misc/unison/unison-2.51.5.ebuild)109
-rw-r--r--net-misc/unison/unison-2.53.3-r1.ebuild139
-rw-r--r--net-misc/unison/unison-2.53.3.ebuild99
3 files changed, 212 insertions, 135 deletions
diff --git a/net-misc/unison/unison-2.51.5.ebuild b/net-misc/unison/unison-2.51.5-r1.ebuild
index 914cd4876cd3..6c916a9fa788 100644
--- a/net-misc/unison/unison-2.51.5.ebuild
+++ b/net-misc/unison/unison-2.51.5-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -6,32 +6,67 @@ 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"
-SRC_URI="https://github.com/bcpierce00/unison/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+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/unison/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+ KEYWORDS="amd64 ~arm ~ppc x86 ~amd64-linux ~x86-linux ~ppc-macos"
+fi
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"
+IUSE="debug doc gui +ocamlopt +threads"
+RESTRICT="!ocamlopt? ( strip )"
-BDEPEND="dev-lang/ocaml:=[ocamlopt?]
- doc? ( app-text/dvipsk
+BDEPEND="
+ dev-lang/ocaml:=[ocamlopt?]
+ doc? (
+ app-text/dvipsk
app-text/ghostscript-gpl
- dev-texlive/texlive-latex
dev-tex/hevea
+ dev-texlive/texlive-latex
www-client/lynx
- )"
-DEPEND="gtk? ( dev-ml/lablgtk:2=[ocamlopt?] )"
-RDEPEND="gtk? ( dev-ml/lablgtk:2=[ocamlopt?]
- || ( net-misc/x11-ssh-askpass net-misc/ssh-askpass-fullscreen ) )
- >=app-eselect/eselect-unison-0.4"
+ )
+"
+DEPEND="
+ gui? (
+ dev-ml/lablgtk:2=[ocamlopt?]
+ )
+"
+RDEPEND="
+ gui? (
+ dev-ml/lablgtk:2=[ocamlopt?]
+ || (
+ net-misc/ssh-askpass-fullscreen
+ net-misc/x11-ssh-askpass
+ )
+ )
+"
+IDEPEND="
+ >=app-eselect/eselect-unison-0.4
+"
DOCS=( CONTRIB INSTALL NEWS README ROADMAP.txt 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_prepare() {
default
+
# https://github.com/bcpierce00/unison/issues/416
sed -e "/ifdef\ HEVEA/,/endif/d" -i doc/Makefile || die
# https://github.com/bcpierce00/unison/pull/415
@@ -39,26 +74,28 @@ src_prepare() {
}
src_compile() {
- local myconf
+ local -a myconf=()
- if use threads; then
- myconf+=( THREADS=true )
+ if use debug ; then
+ myconf+=( DEBUGGING=true )
fi
- if use debug; then
- myconf+=( DEBUGGING=true )
+ if use doc; then
+ VARTEXFONTS="${T}/fonts" emake "${myconf[@]}" CFLAGS="" HEVEA=true docs
fi
- if use gtk; then
+ if use gui ; then
myconf+=( UISTYLE=gtk2 )
else
myconf+=( UISTYLE=text )
fi
- use ocamlopt || myconf+=( NATIVE=false )
+ if ! use ocamlopt ; then
+ myconf+=( NATIVE=false )
+ fi
- if use doc; then
- VARTEXFONTS="${T}/fonts" emake "${myconf[@]}" CFLAGS="" HEVEA=true docs
+ if use threads ; then
+ myconf+=( THREADS=true )
fi
# Discard cflags as it will try to pass them to ocamlc...
@@ -72,18 +109,19 @@ src_test() {
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}
+ local binname
+ for binname in unison unison-fsmonitor ; do
+ exeinto /usr/bin
+ newexe "${binname}" "${binname}-${SLOT}"
done
- if use gtk; then
- newicon -s scalable ../icons/U.svg ${PN}-${SLOT}.svg
- make_desktop_entry ${PN}-${SLOT} "${PN} (${SLOT})" "${PN}-${SLOT}"
+ if use gui ; then
+ newicon -s scalable ../icons/U.svg "${PN}-${SLOT}.svg"
+ make_desktop_entry "${PN}-${SLOT}" "${PN} (${SLOT})" "${PN}-${SLOT}"
fi
- if use doc; then
+ if use doc ; then
DOCS+=( ../doc/unison-manual.pdf )
HTML_DOCS=( "../doc/unison-manual.html" )
fi
@@ -95,15 +133,14 @@ 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
+ eselect unison update
+
+ gui_cache_update
}
pkg_postrm() {
- if use gtk; then
- xdg_icon_cache_update
- fi
+ eselect unison update
+
+ gui_cache_update
}
diff --git a/net-misc/unison/unison-2.53.3-r1.ebuild b/net-misc/unison/unison-2.53.3-r1.ebuild
new file mode 100644
index 000000000000..1b149dccc0c0
--- /dev/null
+++ b/net-misc/unison/unison-2.53.3-r1.ebuild
@@ -0,0 +1,139 @@
+# 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/unison/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+ KEYWORDS="~amd64 ~arm ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+fi
+
+LICENSE="GPL-2"
+SLOT="$(ver_cut 1-2)"
+IUSE="debug doc gui +ocamlopt +threads"
+
+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=( src/CONTRIB src/README 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 debug ; then
+ myconf+=( DEBUGGING=true )
+ fi
+
+ if use doc ; then
+ VARTEXFONTS="${T}/fonts" emake "${myconf[@]}" CFLAGS="" HEVEA=false docs
+ fi
+
+ if use gui ; then
+ myconf+=( UISTYLE=gtk3 )
+ else
+ myconf+=( UISTYLE=text )
+ fi
+
+ if ! use ocamlopt ; then
+ myconf+=( NATIVE=false )
+ fi
+
+ if use threads ; then
+ myconf+=( THREADS=true )
+ fi
+
+ # Discard cflags as it will try to pass them to ocamlc...
+ emake "${myconf[@]}" CFLAGS="" -j1 src 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.
+ cd "${S}/src" || die
+
+ local binname
+ for binname in unison unison-fsmonitor ; do
+ exeinto /usr/bin
+ newexe "${binname}" "${binname}-${SLOT}"
+ done
+
+ cd "${S}" || die
+
+ doman "man/${PN}.1"
+
+ if use gui ; 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
+
+ gui_cache_update
+}
+
+pkg_postrm() {
+ eselect unison update
+
+ gui_cache_update
+}
diff --git a/net-misc/unison/unison-2.53.3.ebuild b/net-misc/unison/unison-2.53.3.ebuild
deleted file mode 100644
index 0de016690ac1..000000000000
--- a/net-misc/unison/unison-2.53.3.ebuild
+++ /dev/null
@@ -1,99 +0,0 @@
-# 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
-}