summaryrefslogtreecommitdiff
path: root/dev-vcs/mercurial
diff options
context:
space:
mode:
Diffstat (limited to 'dev-vcs/mercurial')
-rw-r--r--dev-vcs/mercurial/Manifest13
-rw-r--r--dev-vcs/mercurial/files/70mercurial-gentoo.el3
-rw-r--r--dev-vcs/mercurial/files/cacerts.rc2
-rw-r--r--dev-vcs/mercurial/files/mercurial-3.0.1-po_fixes.patch40
-rw-r--r--dev-vcs/mercurial/mercurial-4.5.2.ebuild134
-rw-r--r--dev-vcs/mercurial/mercurial-4.5.3.ebuild134
-rw-r--r--dev-vcs/mercurial/mercurial-4.6.1.ebuild134
-rw-r--r--dev-vcs/mercurial/mercurial-4.6.2.ebuild134
-rw-r--r--dev-vcs/mercurial/mercurial-9999.ebuild154
-rw-r--r--dev-vcs/mercurial/metadata.xml13
10 files changed, 761 insertions, 0 deletions
diff --git a/dev-vcs/mercurial/Manifest b/dev-vcs/mercurial/Manifest
new file mode 100644
index 000000000000..a967c3ca9ec7
--- /dev/null
+++ b/dev-vcs/mercurial/Manifest
@@ -0,0 +1,13 @@
+AUX 70mercurial-gentoo.el 76 BLAKE2B 2b9488757b2516dc494ce4f38c89b63669886eefaeb5a867cfcc2c2301dcadd01c54745fca3504460c13546f6947677764c87a2e3f30c1949baa4da4c4fe402c SHA512 2efb67d5f595842ccdb9b9ea0c6b6fbc3a28a77955d7255817309486fac19e7550ee0a545d5824e3f9acaf586d93533e90ccd05e15d76884d6493f50fb390a44
+AUX cacerts.rc 51 BLAKE2B 8b42b2f4514d938b051feb7e59c69e6b06d1ceabe6c5a252a3cb4033555bcccda9375ae1fa9a5607f07296bd094c425077f5788e2c9fbca9b22914da41ddf132 SHA512 39c40c6cc95c54dcae13effb5c23f541f49fd89e0f040e214673afd906c6d5140eb18801d55330f4455507b467f0fae011998e60932e9a2accf37a0e7a047b90
+AUX mercurial-3.0.1-po_fixes.patch 1396 BLAKE2B 2de846558d2d2f8f4d4ccd7d8e0d65fd96edf31c858d05f0f5c29087a8122fefdd21546dea297709173d812e33774acadf8dada57d178c9ef9fafde560f4be4b SHA512 c696e0df1f6d149e8522123fe51585ded2955bbea782819d634eaf6edb0ddd189c68372692cb247bbd96d51c69801c2d8232e4b0b60093ff1f11b28010292cb7
+DIST mercurial-4.5.2.tar.gz 5779915 BLAKE2B 9abc5a8bafc43bc8e930bb51aa2e57397cd5858dc7bb31d9a37795a4e2799dc03b57130b23e29f89a07bd7502f136594a03d1a4bd5dfd04e2e968213b50413da SHA512 f70e40cba72b7955f0ecec9c1f53ffffac26f206188617cb182e22ce4f43dc8b970ce46d12c516ef88480c3fa076a59afcddd736dffb642d8e23befaf45b4941
+DIST mercurial-4.5.3.tar.gz 5884837 BLAKE2B 61e61624cb397786b7a4f6ed62a3ba0c2ed7cbacc5918341d014a7e0fd9bbe07c91def00539411e71d231d18060de8461bef05590626bf1318691f791e0ad2b5 SHA512 9c23ffefb0a194b5a88ee783186347c21e7d973524ba40119439702953b35b01ad6fbc32ce09ae169f1020963e92312a39321b1da3ffe06db1d44158761abbec
+DIST mercurial-4.6.1.tar.gz 6407380 BLAKE2B 02663a11c56bbd05f123a0903463d7e95cdf3f2e553b0f81b365b4ca296c15bccd735487162870a4e38253c6c0cb1d8f0cf1bbb1b05b3c3b721f2209e4e1b2ec SHA512 0c7737ca803691b135b4906cc527b20595e314009096d8a19f37814ee192b182e7c5360fbf993f632d6071da1f9fca38677e7190c14ed92bafa8add72a4a27d9
+DIST mercurial-4.6.2.tar.gz 6407989 BLAKE2B 22aa121b2544e3597f2ea4d3a7a80b3b8f5ca6f9de15326dbee555ca3d14b8a552042c4448aae17b1c015b4f302c3512c204f17a834b758f51fbcc2455ed4e6f SHA512 71afb9ed3f62b1b946563c55851dda1fc8b724afe82a4a253c7f4719ae9e1160d5f9644bed7fd27ee3a21d8e682352364fc9f47bafa552cd4cd7fac7c0d42bdd
+EBUILD mercurial-4.5.2.ebuild 3547 BLAKE2B f472141575aef5f6091625beeb30674e29b3d18e72887045c0e1f70914f285613317f6549679a695f13eda3f8b9af51a0b1270108355394f0ac49de4e76bdbc0 SHA512 04604379d7d11c530bf178f0b316160f0fbfd76ea0aeca5a806482c780a8142109fa23d43383f25f195421f3eacc9217a2dd58128ed2cad45deb1d730cbeb585
+EBUILD mercurial-4.5.3.ebuild 3556 BLAKE2B 97bf79f486cfeaa783c170df4d8460294073eb6a7c5ad6f79faa42bb78c8e35daff20e48d5248ee845f73d3fa231580f2acff63a0104befb900e8dcb08ec143e SHA512 9fb21045a85f89cda4641224ca3b5e8ee7320004b25b2eb134b66c7e25daa93fbfecd23def0ad2bec5b006372eb67bd3d093fa9eac6c62b68153907706b7044b
+EBUILD mercurial-4.6.1.ebuild 3556 BLAKE2B 97bf79f486cfeaa783c170df4d8460294073eb6a7c5ad6f79faa42bb78c8e35daff20e48d5248ee845f73d3fa231580f2acff63a0104befb900e8dcb08ec143e SHA512 9fb21045a85f89cda4641224ca3b5e8ee7320004b25b2eb134b66c7e25daa93fbfecd23def0ad2bec5b006372eb67bd3d093fa9eac6c62b68153907706b7044b
+EBUILD mercurial-4.6.2.ebuild 3554 BLAKE2B cfb166a35a25809c2a3dde7c8619b047387cd5ba7a89e8d78dfbd599382c04b1955936dbccdb8b18da6eb603f2ec3a5565708500d4cd527d15262941d846f120 SHA512 804d587e92e92ef57e7a54a6e0199e7283e9394e28887888505d0a5e49ddbb6fc1fa3549c2dbe8e457f68b24c948033beaa20700dde288b0479b73e6732bc8b4
+EBUILD mercurial-9999.ebuild 4131 BLAKE2B 55328bbb7ccca04843b595d18c44dbbf5a51e4808a4e9d517355c38f89270551017fdeca45471972210e7246aa970dfa4ae4f5951cd4ff5d33e9ae696ef45b41 SHA512 0f6ee4a02c89c9e08e0a18e1f11169836eb336cf18af01df22d0a8b189c8fa61f0de5fd0b28105f83df55b23f840ad4ea934fac779c64ba5156c042106169c08
+MISC metadata.xml 456 BLAKE2B d824c2b22d9785c268cfadaa4456794cf423ef6df69767577c4df16e6cebe3bc3c02f40ec7dd799eaaf6bac5754bee28b6b923b11d40f628fcb4a4f85a849de9 SHA512 2bf62b3a98e71ff5acba09c06cc1f29a2cb24d6634a384ff800bb10ab6f5de71a5db440b0fa8a5183db95eafc6ad98444a817c23887baf0dc59f6260402574b1
diff --git a/dev-vcs/mercurial/files/70mercurial-gentoo.el b/dev-vcs/mercurial/files/70mercurial-gentoo.el
new file mode 100644
index 000000000000..5779a612f204
--- /dev/null
+++ b/dev-vcs/mercurial/files/70mercurial-gentoo.el
@@ -0,0 +1,3 @@
+;;; mercurial site-lisp configuration
+
+(add-to-list 'load-path "@SITELISP@") \ No newline at end of file
diff --git a/dev-vcs/mercurial/files/cacerts.rc b/dev-vcs/mercurial/files/cacerts.rc
new file mode 100644
index 000000000000..240261c53668
--- /dev/null
+++ b/dev-vcs/mercurial/files/cacerts.rc
@@ -0,0 +1,2 @@
+[web]
+cacerts = /etc/ssl/certs/ca-certificates.crt
diff --git a/dev-vcs/mercurial/files/mercurial-3.0.1-po_fixes.patch b/dev-vcs/mercurial/files/mercurial-3.0.1-po_fixes.patch
new file mode 100644
index 000000000000..a48932ee9fe5
--- /dev/null
+++ b/dev-vcs/mercurial/files/mercurial-3.0.1-po_fixes.patch
@@ -0,0 +1,40 @@
+--- mercurial-3.0.1/i18n/el.po
++++ mercurial-3.0.1/i18n/el.po
+@@ -11,6 +11,7 @@
+ "PO-Revision-Date: 2009-12-02 03:23+0200\n"
+ "Last-Translator: <keramida@ceid.upatras.gr>\n"
+ "Language-Team: Greek\n"
++"Language: el\n"
+ "MIME-Version: 1.0\n"
+ "Content-Type: text/plain; charset=UTF-8\n"
+ "Content-Transfer-Encoding: 8bit\n"
+--- mercurial-3.0.1/i18n/fr.po
++++ mercurial-3.0.1/i18n/fr.po
+@@ -90,6 +90,7 @@
+ "PO-Revision-Date: 2009-10-25 12:43+0100\n"
+ "Last-Translator: Cedric Duval <cedricduval@free.fr>\n"
+ "Language-Team: French\n"
++"Language: fr\n"
+ "MIME-Version: 1.0\n"
+ "Content-Type: text/plain; charset=UTF-8\n"
+ "Content-Transfer-Encoding: 8bit\n"
+--- mercurial-3.0.1/i18n/ro.po
++++ mercurial-3.0.1/i18n/ro.po
+@@ -110,6 +110,7 @@
+ "PO-Revision-Date: 2011-06-08 17:00+0200\n"
+ "Last-Translator: Daniel Dumitriu <daniel.dumitriu@gmail.com>\n"
+ "Language-Team: Romanian <>\n"
++"Language: ro\n"
+ "MIME-Version: 1.0\n"
+ "Content-Type: text/plain; charset=UTF-8\n"
+ "Content-Transfer-Encoding: 8bit\n"
+--- mercurial-3.0.1/i18n/zh_CN.po
++++ mercurial-3.0.1/i18n/zh_CN.po
+@@ -51,6 +51,7 @@
+ "PO-Revision-Date: 2009-03-31 20:38+0200\n"
+ "Last-Translator: Dongsheng Song <dongsheng.song@gmail.com>\n"
+ "Language-Team: Chinese translation team <i18n-zh@googlegroups.com>\n"
++"Language: zh_CN\n"
+ "MIME-Version: 1.0\n"
+ "Content-Type: text/plain; charset=UTF-8\n"
+ "Content-Transfer-Encoding: 8bit\n"
diff --git a/dev-vcs/mercurial/mercurial-4.5.2.ebuild b/dev-vcs/mercurial/mercurial-4.5.2.ebuild
new file mode 100644
index 000000000000..1a3926395a4d
--- /dev/null
+++ b/dev-vcs/mercurial/mercurial-4.5.2.ebuild
@@ -0,0 +1,134 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="threads"
+
+inherit bash-completion-r1 elisp-common eutils distutils-r1 flag-o-matic
+
+DESCRIPTION="Scalable distributed SCM"
+HOMEPAGE="https://www.mercurial-scm.org/"
+SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="bugzilla emacs gpg test tk"
+
+RDEPEND="bugzilla? ( dev-python/mysql-python[${PYTHON_USEDEP}] )
+ gpg? ( app-crypt/gnupg )
+ tk? ( dev-lang/tk )
+ app-misc/ca-certificates"
+DEPEND="emacs? ( virtual/emacs )
+ test? ( app-arch/unzip
+ dev-python/pygments[${PYTHON_USEDEP}] )"
+
+SITEFILE="70${PN}-gentoo.el"
+
+PATCHES=( "${FILESDIR}/${PN}-3.0.1-po_fixes.patch" )
+
+python_prepare_all() {
+ # fix up logic that won't work in Gentoo Prefix (also won't outside in
+ # certain cases), bug #362891
+ sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_configure_all() {
+ strip-flags -ftracer -ftree-vectorize
+ # Note: make it impl-conditional if py3 is supported
+ append-flags -fno-strict-aliasing
+
+ "${PYTHON}" setup.py build_mo || die
+}
+
+python_compile_all() {
+ rm -r contrib/{win32,macosx} || die
+ if use emacs; then
+ cd contrib || die
+ elisp-compile mercurial.el || die "elisp-compile failed!"
+ fi
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ newbashcomp contrib/bash_completion hg
+
+ insinto /usr/share/zsh/site-functions
+ newins contrib/zsh_completion _hg
+
+ rm -f doc/*.?.txt
+ dodoc CONTRIBUTORS
+ cp hgweb*.cgi "${ED}"/usr/share/doc/${PF}/ || die
+
+ dobin hgeditor
+ dobin contrib/hgk
+ python_foreach_impl python_doscript contrib/hg-ssh
+
+ if use emacs; then
+ elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!"
+ elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+ fi
+
+ local RM_CONTRIB=(hgk hg-ssh bash_completion zsh_completion wix buildrpm plan9
+ *.el mercurial.spec)
+ for f in ${RM_CONTRIB[@]}; do
+ rm -r contrib/$f || die
+ done
+
+ dodoc -r contrib
+ docompress -x /usr/share/doc/${PF}/contrib
+ doman doc/*.?
+
+ insinto /etc/mercurial/hgrc.d
+ doins "${FILESDIR}/cacerts.rc"
+}
+
+src_test() {
+ pushd tests &>/dev/null || die
+ rm -rf *svn* # Subversion tests fail with 1.5
+ rm -f test-archive* # Fails due to verbose tar output changes
+ rm -f test-convert-baz* # GNU Arch baz
+ rm -f test-convert-cvs* # CVS
+ rm -f test-convert-darcs* # Darcs
+ rm -f test-convert-git* # git
+ rm -f test-convert-mtn* # monotone
+ rm -f test-convert-tla* # GNU Arch tla
+ #rm -f test-doctest* # doctest always fails with python 2.5.x
+ rm -f test-largefiles* # tends to time out
+
+ popd &>/dev/null || die
+ distutils-r1_src_test
+}
+
+python_test() {
+ local TEST_DIR
+
+ rm -rf "${TMPDIR}"/test
+ distutils_install_for_testing
+ cd tests || die
+ "${PYTHON}" run-tests.py --verbose \
+ --tmpdir="${TMPDIR}"/test \
+ --with-hg="${TEST_DIR}"/scripts/hg \
+ || die "Tests fail with ${EPYTHON}"
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+
+ elog "If you want to convert repositories from other tools using convert"
+ elog "extension please install correct tool:"
+ elog " dev-vcs/cvs"
+ elog " dev-vcs/darcs"
+ elog " dev-vcs/git"
+ elog " dev-vcs/monotone"
+ elog " dev-vcs/subversion"
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-vcs/mercurial/mercurial-4.5.3.ebuild b/dev-vcs/mercurial/mercurial-4.5.3.ebuild
new file mode 100644
index 000000000000..55a97bb048ec
--- /dev/null
+++ b/dev-vcs/mercurial/mercurial-4.5.3.ebuild
@@ -0,0 +1,134 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="threads"
+
+inherit bash-completion-r1 elisp-common eutils distutils-r1 flag-o-matic
+
+DESCRIPTION="Scalable distributed SCM"
+HOMEPAGE="https://www.mercurial-scm.org/"
+SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="bugzilla emacs gpg test tk"
+
+RDEPEND="bugzilla? ( dev-python/mysql-python[${PYTHON_USEDEP}] )
+ gpg? ( app-crypt/gnupg )
+ tk? ( dev-lang/tk )
+ app-misc/ca-certificates"
+DEPEND="emacs? ( virtual/emacs )
+ test? ( app-arch/unzip
+ dev-python/pygments[${PYTHON_USEDEP}] )"
+
+SITEFILE="70${PN}-gentoo.el"
+
+PATCHES=( "${FILESDIR}/${PN}-3.0.1-po_fixes.patch" )
+
+python_prepare_all() {
+ # fix up logic that won't work in Gentoo Prefix (also won't outside in
+ # certain cases), bug #362891
+ sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_configure_all() {
+ strip-flags -ftracer -ftree-vectorize
+ # Note: make it impl-conditional if py3 is supported
+ append-flags -fno-strict-aliasing
+
+ "${PYTHON}" setup.py build_mo || die
+}
+
+python_compile_all() {
+ rm -r contrib/{win32,macosx} || die
+ if use emacs; then
+ cd contrib || die
+ elisp-compile mercurial.el || die "elisp-compile failed!"
+ fi
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ newbashcomp contrib/bash_completion hg
+
+ insinto /usr/share/zsh/site-functions
+ newins contrib/zsh_completion _hg
+
+ rm -f doc/*.?.txt
+ dodoc CONTRIBUTORS
+ cp hgweb*.cgi "${ED}"/usr/share/doc/${PF}/ || die
+
+ dobin hgeditor
+ dobin contrib/hgk
+ python_foreach_impl python_doscript contrib/hg-ssh
+
+ if use emacs; then
+ elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!"
+ elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+ fi
+
+ local RM_CONTRIB=(hgk hg-ssh bash_completion zsh_completion wix buildrpm plan9
+ *.el mercurial.spec)
+ for f in ${RM_CONTRIB[@]}; do
+ rm -r contrib/$f || die
+ done
+
+ dodoc -r contrib
+ docompress -x /usr/share/doc/${PF}/contrib
+ doman doc/*.?
+
+ insinto /etc/mercurial/hgrc.d
+ doins "${FILESDIR}/cacerts.rc"
+}
+
+src_test() {
+ pushd tests &>/dev/null || die
+ rm -rf *svn* # Subversion tests fail with 1.5
+ rm -f test-archive* # Fails due to verbose tar output changes
+ rm -f test-convert-baz* # GNU Arch baz
+ rm -f test-convert-cvs* # CVS
+ rm -f test-convert-darcs* # Darcs
+ rm -f test-convert-git* # git
+ rm -f test-convert-mtn* # monotone
+ rm -f test-convert-tla* # GNU Arch tla
+ #rm -f test-doctest* # doctest always fails with python 2.5.x
+ rm -f test-largefiles* # tends to time out
+
+ popd &>/dev/null || die
+ distutils-r1_src_test
+}
+
+python_test() {
+ local TEST_DIR
+
+ rm -rf "${TMPDIR}"/test
+ distutils_install_for_testing
+ cd tests || die
+ "${PYTHON}" run-tests.py --verbose \
+ --tmpdir="${TMPDIR}"/test \
+ --with-hg="${TEST_DIR}"/scripts/hg \
+ || die "Tests fail with ${EPYTHON}"
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+
+ elog "If you want to convert repositories from other tools using convert"
+ elog "extension please install correct tool:"
+ elog " dev-vcs/cvs"
+ elog " dev-vcs/darcs"
+ elog " dev-vcs/git"
+ elog " dev-vcs/monotone"
+ elog " dev-vcs/subversion"
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-vcs/mercurial/mercurial-4.6.1.ebuild b/dev-vcs/mercurial/mercurial-4.6.1.ebuild
new file mode 100644
index 000000000000..55a97bb048ec
--- /dev/null
+++ b/dev-vcs/mercurial/mercurial-4.6.1.ebuild
@@ -0,0 +1,134 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="threads"
+
+inherit bash-completion-r1 elisp-common eutils distutils-r1 flag-o-matic
+
+DESCRIPTION="Scalable distributed SCM"
+HOMEPAGE="https://www.mercurial-scm.org/"
+SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="bugzilla emacs gpg test tk"
+
+RDEPEND="bugzilla? ( dev-python/mysql-python[${PYTHON_USEDEP}] )
+ gpg? ( app-crypt/gnupg )
+ tk? ( dev-lang/tk )
+ app-misc/ca-certificates"
+DEPEND="emacs? ( virtual/emacs )
+ test? ( app-arch/unzip
+ dev-python/pygments[${PYTHON_USEDEP}] )"
+
+SITEFILE="70${PN}-gentoo.el"
+
+PATCHES=( "${FILESDIR}/${PN}-3.0.1-po_fixes.patch" )
+
+python_prepare_all() {
+ # fix up logic that won't work in Gentoo Prefix (also won't outside in
+ # certain cases), bug #362891
+ sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_configure_all() {
+ strip-flags -ftracer -ftree-vectorize
+ # Note: make it impl-conditional if py3 is supported
+ append-flags -fno-strict-aliasing
+
+ "${PYTHON}" setup.py build_mo || die
+}
+
+python_compile_all() {
+ rm -r contrib/{win32,macosx} || die
+ if use emacs; then
+ cd contrib || die
+ elisp-compile mercurial.el || die "elisp-compile failed!"
+ fi
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ newbashcomp contrib/bash_completion hg
+
+ insinto /usr/share/zsh/site-functions
+ newins contrib/zsh_completion _hg
+
+ rm -f doc/*.?.txt
+ dodoc CONTRIBUTORS
+ cp hgweb*.cgi "${ED}"/usr/share/doc/${PF}/ || die
+
+ dobin hgeditor
+ dobin contrib/hgk
+ python_foreach_impl python_doscript contrib/hg-ssh
+
+ if use emacs; then
+ elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!"
+ elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+ fi
+
+ local RM_CONTRIB=(hgk hg-ssh bash_completion zsh_completion wix buildrpm plan9
+ *.el mercurial.spec)
+ for f in ${RM_CONTRIB[@]}; do
+ rm -r contrib/$f || die
+ done
+
+ dodoc -r contrib
+ docompress -x /usr/share/doc/${PF}/contrib
+ doman doc/*.?
+
+ insinto /etc/mercurial/hgrc.d
+ doins "${FILESDIR}/cacerts.rc"
+}
+
+src_test() {
+ pushd tests &>/dev/null || die
+ rm -rf *svn* # Subversion tests fail with 1.5
+ rm -f test-archive* # Fails due to verbose tar output changes
+ rm -f test-convert-baz* # GNU Arch baz
+ rm -f test-convert-cvs* # CVS
+ rm -f test-convert-darcs* # Darcs
+ rm -f test-convert-git* # git
+ rm -f test-convert-mtn* # monotone
+ rm -f test-convert-tla* # GNU Arch tla
+ #rm -f test-doctest* # doctest always fails with python 2.5.x
+ rm -f test-largefiles* # tends to time out
+
+ popd &>/dev/null || die
+ distutils-r1_src_test
+}
+
+python_test() {
+ local TEST_DIR
+
+ rm -rf "${TMPDIR}"/test
+ distutils_install_for_testing
+ cd tests || die
+ "${PYTHON}" run-tests.py --verbose \
+ --tmpdir="${TMPDIR}"/test \
+ --with-hg="${TEST_DIR}"/scripts/hg \
+ || die "Tests fail with ${EPYTHON}"
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+
+ elog "If you want to convert repositories from other tools using convert"
+ elog "extension please install correct tool:"
+ elog " dev-vcs/cvs"
+ elog " dev-vcs/darcs"
+ elog " dev-vcs/git"
+ elog " dev-vcs/monotone"
+ elog " dev-vcs/subversion"
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-vcs/mercurial/mercurial-4.6.2.ebuild b/dev-vcs/mercurial/mercurial-4.6.2.ebuild
new file mode 100644
index 000000000000..d89c3546437c
--- /dev/null
+++ b/dev-vcs/mercurial/mercurial-4.6.2.ebuild
@@ -0,0 +1,134 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="threads"
+
+inherit bash-completion-r1 elisp-common eutils distutils-r1 flag-o-matic
+
+DESCRIPTION="Scalable distributed SCM"
+HOMEPAGE="https://www.mercurial-scm.org/"
+SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="bugzilla emacs gpg test tk"
+
+RDEPEND="bugzilla? ( dev-python/mysql-python[${PYTHON_USEDEP}] )
+ gpg? ( app-crypt/gnupg )
+ tk? ( dev-lang/tk )
+ app-misc/ca-certificates"
+DEPEND="emacs? ( virtual/emacs )
+ test? ( app-arch/unzip
+ dev-python/pygments[${PYTHON_USEDEP}] )"
+
+SITEFILE="70${PN}-gentoo.el"
+
+PATCHES=( "${FILESDIR}/${PN}-3.0.1-po_fixes.patch" )
+
+python_prepare_all() {
+ # fix up logic that won't work in Gentoo Prefix (also won't outside in
+ # certain cases), bug #362891
+ sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_configure_all() {
+ strip-flags -ftracer -ftree-vectorize
+ # Note: make it impl-conditional if py3 is supported
+ append-flags -fno-strict-aliasing
+
+ "${PYTHON}" setup.py build_mo || die
+}
+
+python_compile_all() {
+ rm -r contrib/{win32,macosx} || die
+ if use emacs; then
+ cd contrib || die
+ elisp-compile mercurial.el || die "elisp-compile failed!"
+ fi
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ newbashcomp contrib/bash_completion hg
+
+ insinto /usr/share/zsh/site-functions
+ newins contrib/zsh_completion _hg
+
+ rm -f doc/*.?.txt
+ dodoc CONTRIBUTORS
+ cp hgweb*.cgi "${ED}"/usr/share/doc/${PF}/ || die
+
+ dobin hgeditor
+ dobin contrib/hgk
+ python_foreach_impl python_doscript contrib/hg-ssh
+
+ if use emacs; then
+ elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!"
+ elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+ fi
+
+ local RM_CONTRIB=(hgk hg-ssh bash_completion zsh_completion wix buildrpm plan9
+ *.el mercurial.spec)
+ for f in ${RM_CONTRIB[@]}; do
+ rm -r contrib/$f || die
+ done
+
+ dodoc -r contrib
+ docompress -x /usr/share/doc/${PF}/contrib
+ doman doc/*.?
+
+ insinto /etc/mercurial/hgrc.d
+ doins "${FILESDIR}/cacerts.rc"
+}
+
+src_test() {
+ pushd tests &>/dev/null || die
+ rm -rf *svn* # Subversion tests fail with 1.5
+ rm -f test-archive* # Fails due to verbose tar output changes
+ rm -f test-convert-baz* # GNU Arch baz
+ rm -f test-convert-cvs* # CVS
+ rm -f test-convert-darcs* # Darcs
+ rm -f test-convert-git* # git
+ rm -f test-convert-mtn* # monotone
+ rm -f test-convert-tla* # GNU Arch tla
+ #rm -f test-doctest* # doctest always fails with python 2.5.x
+ rm -f test-largefiles* # tends to time out
+
+ popd &>/dev/null || die
+ distutils-r1_src_test
+}
+
+python_test() {
+ local TEST_DIR
+
+ rm -rf "${TMPDIR}"/test
+ distutils_install_for_testing
+ cd tests || die
+ "${PYTHON}" run-tests.py --verbose \
+ --tmpdir="${TMPDIR}"/test \
+ --with-hg="${TEST_DIR}"/scripts/hg \
+ || die "Tests fail with ${EPYTHON}"
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+
+ elog "If you want to convert repositories from other tools using convert"
+ elog "extension please install correct tool:"
+ elog " dev-vcs/cvs"
+ elog " dev-vcs/darcs"
+ elog " dev-vcs/git"
+ elog " dev-vcs/monotone"
+ elog " dev-vcs/subversion"
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-vcs/mercurial/mercurial-9999.ebuild b/dev-vcs/mercurial/mercurial-9999.ebuild
new file mode 100644
index 000000000000..66be22841e62
--- /dev/null
+++ b/dev-vcs/mercurial/mercurial-9999.ebuild
@@ -0,0 +1,154 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="threads"
+
+inherit bash-completion-r1 elisp-common eutils distutils-r1 mercurial flag-o-matic
+
+DESCRIPTION="Scalable distributed SCM"
+HOMEPAGE="https://www.mercurial-scm.org/"
+EHG_REPO_URI="http://selenic.com/repo/hg"
+EHG_REVISION="@"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS=""
+IUSE="bugzilla emacs gpg test tk zsh-completion"
+
+RDEPEND="bugzilla? ( dev-python/mysql-python[${PYTHON_USEDEP}] )
+ gpg? ( app-crypt/gnupg )
+ tk? ( dev-lang/tk )
+ zsh-completion? ( app-shells/zsh )
+ app-misc/ca-certificates"
+DEPEND="emacs? ( virtual/emacs )
+ test? ( app-arch/unzip
+ dev-python/pygments[${PYTHON_USEDEP}] )
+ dev-python/docutils[${PYTHON_USEDEP}]"
+
+SITEFILE="70${PN}-gentoo.el"
+
+python_prepare_all() {
+ # fix up logic that won't work in Gentoo Prefix (also won't outside in
+ # certain cases), bug #362891
+ sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_configure_all() {
+ strip-flags -ftracer -ftree-vectorize
+ # Note: make it impl-conditional if py3 is supported
+ append-flags -fno-strict-aliasing
+
+ "${PYTHON}" setup.py build_mo || die
+}
+
+python_compile_all() {
+ rm -r contrib/{win32,macosx} || die
+ emake doc
+ if use emacs; then
+ cd contrib || die
+ elisp-compile mercurial.el || die "elisp-compile failed!"
+ fi
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ newbashcomp contrib/bash_completion hg
+
+ if use zsh-completion ; then
+ insinto /usr/share/zsh/site-functions
+ newins contrib/zsh_completion _hg
+ fi
+
+ rm -f doc/*.?.txt || die
+ dodoc CONTRIBUTORS doc/*.txt
+ cp hgweb*.cgi "${ED}"/usr/share/doc/${PF}/ || die
+
+ dobin hgeditor
+ dobin contrib/hgk
+ python_foreach_impl python_doscript contrib/hg-ssh
+
+ if use emacs; then
+ elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!"
+ elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+ fi
+
+ local RM_CONTRIB=(hgk hg-ssh bash_completion zsh_completion wix buildrpm plan9
+ *.el mercurial.spec)
+ for f in ${RM_CONTRIB[@]}; do
+ rm -rf contrib/$f || die
+ done
+
+ dodoc -r contrib
+ docompress -x /usr/share/doc/${PF}/contrib
+ doman doc/*.?
+
+ cat > "${T}/80mercurial" <<-EOF
+HG="${EPREFIX}/usr/bin/hg"
+EOF
+ doenvd "${T}/80mercurial"
+
+ insinto /etc/mercurial/hgrc.d
+ doins "${FILESDIR}/cacerts.rc"
+}
+
+src_test() {
+ cd tests || die
+ rm -rf *svn* || die # Subversion tests fail with 1.5
+ rm -f test-archive* || die # Fails due to verbose tar output changes
+ rm -f test-convert-baz* || die # GNU Arch baz
+ rm -f test-convert-cvs* || die # CVS
+ rm -f test-convert-darcs* || die # Darcs
+ rm -f test-convert-git* || die # git
+ rm -f test-convert-mtn* || die # monotone
+ rm -f test-convert-tla* || die # GNU Arch tla
+ rm -f test-doctest* || die # doctest always fails with python 2.5.x
+ rm -f test-largefiles* || die # tends to time out
+ if [[ ${EUID} -eq 0 ]]; then
+ einfo "Removing tests which require user privileges to succeed"
+ rm -f test-command-template* || die # Test is broken when run as root
+ rm -f test-convert* || die # Test is broken when run as root
+ rm -f test-lock-badness* || die # Test is broken when run as root
+ rm -f test-permissions* || die # Test is broken when run as root
+ rm -f test-pull-permission* || die # Test is broken when run as root
+ rm -f test-clone-failure* || die
+ rm -f test-journal-exists* || die
+ rm -f test-repair-strip* || die
+ fi
+
+ cd .. || die
+ distutils-r1_src_test
+}
+
+python_test() {
+ local TEST_DIR
+
+ rm -rf "${TMPDIR}"/test
+ distutils_install_for_testing
+ cd tests || die
+ "${PYTHON}" run-tests.py --verbose \
+ --tmpdir="${TMPDIR}"/test \
+ --with-hg="${TEST_DIR}"/scripts/hg \
+ || die "Tests fail with ${EPYTHON}"
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+
+ elog "If you want to convert repositories from other tools using convert"
+ elog "extension please install correct tool:"
+ elog " dev-vcs/cvs"
+ elog " dev-vcs/darcs"
+ elog " dev-vcs/git"
+ elog " dev-vcs/monotone"
+ elog " dev-vcs/subversion"
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-vcs/mercurial/metadata.xml b/dev-vcs/mercurial/metadata.xml
new file mode 100644
index 000000000000..6f2bedbfd600
--- /dev/null
+++ b/dev-vcs/mercurial/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>polynomial-c@gentoo.org</email>
+ <name>Lars Wendler</name>
+ </maintainer>
+ <use>
+ <flag name="bugzilla">Support bugzilla integration.</flag>
+ <flag name="gpg">Support signing with GnuPG.</flag>
+ <flag name="tk">Install dev-lang/tk for hgk script.</flag>
+ </use>
+</pkgmetadata>