summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCédric Krier <cedk@gentoo.org>2023-07-15 12:20:30 +0200
committerCédric Krier <cedk@gentoo.org>2023-07-15 12:22:34 +0200
commit513916cb8f9a595c79c71203744274caed8c2142 (patch)
treee8bf8573bda3f4aa11e905f0e7ed8f5de0f20f5c /dev-vcs/mercurial
parentsys-devel/gdb: backport fix for auto-load path expansion (diff)
downloadgentoo-513916cb8f9a595c79c71203744274caed8c2142.tar.gz
gentoo-513916cb8f9a595c79c71203744274caed8c2142.tar.bz2
gentoo-513916cb8f9a595c79c71203744274caed8c2142.zip
dev-vcs/mercurial: add 6.5
Use PEP517 and build rhg with rust use. Closes: https://bugs.gentoo.org/909983 Signed-off-by: Cédric Krier <cedk@gentoo.org>
Diffstat (limited to 'dev-vcs/mercurial')
-rw-r--r--dev-vcs/mercurial/Manifest4
-rw-r--r--dev-vcs/mercurial/mercurial-6.5.ebuild351
-rw-r--r--dev-vcs/mercurial/mercurial-9999.ebuild14
3 files changed, 366 insertions, 3 deletions
diff --git a/dev-vcs/mercurial/Manifest b/dev-vcs/mercurial/Manifest
index 5b048549ed26..b613d3f96961 100644
--- a/dev-vcs/mercurial/Manifest
+++ b/dev-vcs/mercurial/Manifest
@@ -123,6 +123,7 @@ DIST memoffset-0.6.5.crate 7686 BLAKE2B 9a797388702389076c426052c3d54dc62802d5db
DIST mercurial-6.2.3.tar.gz 8058864 BLAKE2B 72d710985298f17b2940b0a5cda896e8cadb881db0c9293c2c32ff3c2100dc2291fa314157b433eb05a5a25a442c0e0ae021a5abf7c477885a1e39201f5b0b0a SHA512 0d82582e6d40ceabcc32419bf0423dd9f49b72b72c91a0f575181f92b355699a88f0426a192c46ca47f3105e47cb45dc3ac1a6499f4c83e01fa31e31c1ffdfbb
DIST mercurial-6.3.2.tar.gz 8092710 BLAKE2B c64759736719af4a675abddd0f4d3578c815fc11a1644c52d7aaddfafb547faf018253d9a47e6ac869e7c1de91ca518b0106e77104e998deed9cbeadd6d3cee2 SHA512 5ca7e448bf336c2a2d4db174c4f486f66f41eef33db14f152abb09b8d82416124d251784cb5898499580083ca104113d0763e27baa9b77feb90ba2fd96d40be5
DIST mercurial-6.4.4.tar.gz 8182450 BLAKE2B 620d20c64830b6eebe153b786e4e656140760e05f369931173f88702651073bd285144dccfcc2455e1169278c8eb7c673a9051a128a8698f18f7eb2982fd36e5 SHA512 6b97eaa10d2367dc583160170e74535e2c863ccc02e3d5527467769ce0b2db78a5496a48bad0f812a1bff5a9afec7751eea88edcefb06d052b9632a16da08c0f
+DIST mercurial-6.5.tar.gz 8231320 BLAKE2B e1f59f944964869d511d74eb4d1d918a97c30a69424e6c4bb593df68f763cf1aff29fea7bb3a888bb98f07fc3b79a2d32901e4d633e381927f46949c2e57f5a1 SHA512 34f61b3f6a7d488afeffbaed7a35ab2da682f18171b07f78e405e89b7871dd7e7cbc1e92ef30b3bf82e35e2185d44c7e5379fecba4fafbe9ae8de194e92c12f3
DIST micro-timer-0.4.0.crate 3513 BLAKE2B cc189b0db3d6fff554dec8548243894f70ea0445e095179bbe5b0d06dae4de6c09bcded31f00507d2f238523a3ef300e25054102d37cc4768aeef569ee7fc6a0 SHA512 33f1b5c65d9fb293fd86d52509687b7f9adb7af6bdcb3904f24740a9ad58ba9b30987d2a63fc19afcd6a55467f294ab098401f53bafafbd15c48b30d87232585
DIST micro-timer-macros-0.4.0.crate 2929 BLAKE2B df30df7ca02b79c13d375b71efdedfe33feb836f52b7889ea842e6d98441434022554986a4cc69e995203ca5906ccc9676653015ac7e1015d55cfa62b7bba908 SHA512 e1f141a0d331078be270cb9ad623348c39e18d355b32822f5285f29e325f1cc5d07d8833c130f03a43783590ccc4076d950d96b10468999f4285bcb521e194d0
DIST miniz_oxide-0.4.3.crate 50058 BLAKE2B bc7a152a984de061803c11255459ce3d8fa64dd5b38de9f2ed29213abc1922d68746ff523de3b99e0e95a8933ea75448a9fa1e14cbbe248549074cd5ce7b3c1d SHA512 8c0e2b3a585a0986a61977d4459adb1a7c396ab53f4f688dcbeb2a09c60878b0423f54fd1879c190f5c64690a2473ed2a07d4162a650f6c39f402f6b27e863b7
@@ -186,6 +187,7 @@ DIST rustc_version-0.4.0.crate 12175 BLAKE2B 6fda2ce03eab45d7193fa0d70175cc7ffb5
DIST same-file-1.0.6.crate 10183 BLAKE2B a320c8343e0b38078ba81c4f0159d886bf47764c74efe0d7cd2b3218426e8341b51e523c00a9e5fbc2ee1057618296bd70b576c68751bd55d6ddb352defaca15 SHA512 3ba35309742c8db63210d9ea78bff4ecd80471d69e6238eb96c7bf0673814f221e2d838fe6311bfc5a0e71b4a7ccba33e07859c0b9cff2171969ff08a4214a7c
DIST scopeguard-1.1.0.crate 11470 BLAKE2B f774eb90b7d3ffb2efba47518e9d1dead4017ab4b38a4bd74914daa84a5af4bf9eb63da0496e3924499d79cd0439c37447aeda4a21226f95645bddcd6becfabe SHA512 368fa5726df8f42b599993681579a9ffd0196480ee3cd0f9f671e8493f3bedd1e1779bdf2beb329e77e0005fa09b816e3385f309490c0f2781568db275d4d17d
DIST scratch-1.0.2.crate 8152 BLAKE2B d38df70a8067ab6a411798b64e4e9679b554aa66886c824e410d50ed805555716e96c54872186617f2963526119ba81c20ce237d4a0b1ce754d7d28696c9b742 SHA512 c3863dff0c67184605b356d6cc57db2bdf26cad9e0357ce6cbf7d3f23d913fa8917966a8c93b3084a3c9c900e357c6ca4bc2bc5ae5db3bb6feb5ee1ea5c61521
+DIST self_cell-1.0.0.crate 14958 BLAKE2B bf6c7b0113356545b324276159e21f13a1c1dfd3f9b24fc06f410bd487673d788eab422c6825ab74aa0c8d7c75617a7029132e2e2da6bf0ecdc743049c4ec5c7 SHA512 3294b23920dbf28fde07d7e568c39a0f68939e94bdb0d534c3992f359e1b216b67c9d0a59822ddd8d3b2a7bcbab5359cd93ddd6364d8ae88bd60fec5f2db68ce
DIST semver-1.0.14.crate 29813 BLAKE2B a080f0a65127142a90bf033452241ffebfc7098b56a6a6b8bd818528df3b88fb48b3982125b405c1601e1bd55f3a0fdb4ffd9653e398295d8156651a04b2e903 SHA512 04db4c0a30141c2767d24d6d715b66ecd6355c1c88e572d4c473e0fa8c1fdd7197092b8286c973f25d201c5fcdc9105ba3e28c11ba1546a666167afc1fdf6728
DIST semver-1.0.6.crate 29941 BLAKE2B 1aad12eb93534a0a72fa1645a71fe4cc03121a2215520030d697e863427fa06edd9f63d05c522f696c5b9c1c45556803ae381cb4c77a2d4a7fc30f7363e3ecea SHA512 0470b9a3a6d398233d19a8240de3b0d18c4cd8f8fc6887658baac4053c88463d5de9b7145a564abd43f813e03b75a26050eedc1689450895953bc7f96b64859f
DIST sha-1-0.10.0.crate 12239 BLAKE2B ddb515d3ec52871a22fcb1ac76f5b16dd8d785194131e57a26ec24f94a8b7fb84478ad3ce45f5f2e5496d674c08ad91324d14eabb17ee047d9167ff13137d76c SHA512 5f202e74a5323ccd12bb2fa57f6357eb8d12d5702fe9fda745aaed70725a5c9c78dd6f8aa734b350948fe8155cb36d8bbfe16615f0335f0502827ad26ea387ac
@@ -228,8 +230,10 @@ DIST wasm-bindgen-backend-0.2.83.crate 25620 BLAKE2B 3cbba20a2f5344c0ed2791de7b0
DIST wasm-bindgen-macro-0.2.83.crate 12075 BLAKE2B 3b358ba7c2a3563840f54f11170cde78044a8f087659daa7c784fa252f5dd4b7f6200eba425d95b568e50fd43c04c32a509994ddaf5248120feaa67586402150 SHA512 eb83e06f998e858cf25494c1d171984269e72db798147d4d1d8aeeb25ea7a35c5986b882011e131968621742ceecff976430856b4e8b7d7fd7f1237767cf01b4
DIST wasm-bindgen-macro-support-0.2.83.crate 18530 BLAKE2B f305c9fc1f7bba5bee65a1c76fc2216c98aa306a072286e1ced048ab191f49e7e4436bf2f67d4c1fff558f59b2cef5e9b40e9e940268128ab1ebeb3c64696107 SHA512 804014c75ae5f8c1c7f0fad3f3209887fa346d74029e5f6e1830e44f7318719e65c4a643c71d87cf388f131fd370af40d536bbc15fc11c25b91cb785f56a908b
DIST wasm-bindgen-shared-0.2.83.crate 7194 BLAKE2B 4dd1cffea1edc98dcd4993bf6fdde8100fe00d1e97322ce8bc0bdefd0c659047c8c726e5da27b59fd7a6621c1e5385c18204e834c6c6fd1fb9de52f95b40e40d SHA512 2bfc1a068fa41a9ecacce7bda494fc0485c57ccb102c1d76c87a42e00ad30b944b0cb788642e8339d050a0e831ce8306844a77292ab9f79ed765b65cdb4765e7
+DIST web-sys-0.3.60.crate 700485 BLAKE2B 13942a583dd8462b0591a19759a41f41fb17d2356b3bcd78402e420fdf5726782e5b4ed211c3716a81c1cdf64ce9b8adecaa3fa22756a3ec84eb7c3e12e3018c SHA512 d883363f99300e2d50bc5bf198f0fb8d6c53e5a778217e340573560ac07db26a71c98419fa2ced32820472126d6f97ad5773ad082521be0a1c9a374af9d61df9
DIST which-4.2.5.crate 9326 BLAKE2B 8aea79157007f2326d21083e1eba387611233a19f39368904cf2b0e9b6f09b4fdf6dc469cff83373912bec6e2aeec191d217b0b1e720ee0db1848b6f64d37054 SHA512 2b2b44773b568946799035e5b90c1f0c304b399f4d330c1e063323f631f56ddc6c5d8a9d026d987cb39c801ccbfb614450064030fc19e1de34ab6a495f053395
DIST which-4.3.0.crate 9635 BLAKE2B 36556a9eca6d8702c0e3634abc458f7ff831aec28a7117f21f812c6f46cccd8db0e6ce7cc76f8033ba89d51858411251e5fecb0883542669269cade9c1a5aadb SHA512 cad05bd43dfcf9e50fd6e3b9dcd5d9a987175a0f44adbf204079117b70d0b42e6483e635287924698c51d0452f168e48e041453f18ff5720c0e2ec4c734d2578
+DIST whoami-1.4.0.crate 15581 BLAKE2B 86bd50054dc6b37f185092596f317c5af91c70cea4be62f4b483930a506af6f618b56fe1ddee4e1b22ae7e33e83918822c9282c091738669cb655d14381b299e SHA512 85a236cd5da6308bbf990428c4c29de25e16d7d3628ba304d7d28aaf8b28acd0740bdb0da62d4648c917299edf48d148c7da8900b1503146b65c5fcbf4cf67ec
DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
DIST winapi-util-0.1.5.crate 10164 BLAKE2B fc800aceae5249a858c806c3e969ef2545766099872d856ebee51c883d9acf1122278db9607d50ca53eac351502b700fd2463900932d342240f97f683d517963 SHA512 7baeb661f397c4693dfa001fdc774b323c51a7c55caad40f2de5112a1cefd1d6151e3df41fa4ee193460a5905917c83d2b1de5fa10b4bd014ad96690af95c0fd
diff --git a/dev-vcs/mercurial/mercurial-6.5.ebuild b/dev-vcs/mercurial/mercurial-6.5.ebuild
new file mode 100644
index 000000000000..b2484b4b0aa3
--- /dev/null
+++ b/dev-vcs/mercurial/mercurial-6.5.ebuild
@@ -0,0 +1,351 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CARGO_OPTIONAL=1
+DISTUTILS_USE_PEP517="setuptools"
+DISTUTILS_EXT=1
+PYTHON_COMPAT=( python3_{9..12} )
+PYTHON_REQ_USE="threads(+)"
+
+CRATES="
+ adler-1.0.2
+ ahash-0.8.2
+ aho-corasick-0.7.19
+ android_system_properties-0.1.5
+ atty-0.2.14
+ autocfg-1.1.0
+ bitflags-1.3.2
+ bitmaps-2.1.0
+ block-buffer-0.9.0
+ block-buffer-0.10.3
+ bumpalo-3.11.1
+ byteorder-1.4.3
+ bytes-cast-0.3.0
+ bytes-cast-derive-0.2.0
+ cc-1.0.76
+ cfg-if-1.0.0
+ chrono-0.4.23
+ clap-4.0.24
+ clap_derive-4.0.21
+ clap_lex-0.3.0
+ codespan-reporting-0.11.1
+ convert_case-0.4.0
+ core-foundation-sys-0.8.3
+ cpufeatures-0.2.5
+ cpython-0.7.1
+ crc32fast-1.3.2
+ crossbeam-channel-0.5.6
+ crossbeam-deque-0.8.2
+ crossbeam-epoch-0.9.11
+ crossbeam-utils-0.8.12
+ crypto-common-0.1.6
+ ctor-0.1.26
+ cxx-1.0.81
+ cxx-build-1.0.81
+ cxxbridge-flags-1.0.81
+ cxxbridge-macro-1.0.81
+ derive_more-0.99.17
+ diff-0.1.13
+ digest-0.9.0
+ digest-0.10.5
+ either-1.8.0
+ env_logger-0.9.3
+ fastrand-1.8.0
+ flate2-1.0.24
+ format-bytes-0.3.0
+ format-bytes-macros-0.4.0
+ generic-array-0.14.6
+ getrandom-0.1.16
+ getrandom-0.2.8
+ hashbrown-0.13.1
+ heck-0.4.0
+ hermit-abi-0.1.19
+ hex-0.4.3
+ home-0.5.4
+ humantime-2.1.0
+ iana-time-zone-0.1.53
+ iana-time-zone-haiku-0.1.1
+ im-rc-15.1.0
+ instant-0.1.12
+ itertools-0.10.5
+ jobserver-0.1.25
+ js-sys-0.3.60
+ lazy_static-1.4.0
+ libc-0.2.137
+ libm-0.2.6
+ libz-sys-1.1.8
+ link-cplusplus-1.0.7
+ log-0.4.17
+ logging_timer-1.1.0
+ logging_timer_proc_macros-1.1.0
+ memchr-2.5.0
+ memmap2-0.5.8
+ memoffset-0.6.5
+ miniz_oxide-0.5.4
+ num-integer-0.1.45
+ num-traits-0.2.15
+ num_cpus-1.14.0
+ once_cell-1.16.0
+ opaque-debug-0.3.0
+ os_str_bytes-6.4.0
+ output_vt100-0.1.3
+ paste-1.0.9
+ pkg-config-0.3.26
+ ppv-lite86-0.2.17
+ pretty_assertions-1.3.0
+ proc-macro-error-1.0.4
+ proc-macro-error-attr-1.0.4
+ proc-macro2-1.0.47
+ python3-sys-0.7.1
+ quote-1.0.21
+ rand-0.7.3
+ rand-0.8.5
+ rand_chacha-0.2.2
+ rand_chacha-0.3.1
+ rand_core-0.5.1
+ rand_core-0.6.4
+ rand_distr-0.4.3
+ rand_hc-0.2.0
+ rand_pcg-0.3.1
+ rand_xoshiro-0.6.0
+ rayon-1.7.0
+ rayon-core-1.11.0
+ redox_syscall-0.2.16
+ regex-1.7.0
+ regex-syntax-0.6.28
+ remove_dir_all-0.5.3
+ rustc_version-0.4.0
+ same-file-1.0.6
+ scopeguard-1.1.0
+ scratch-1.0.2
+ self_cell-1.0.0
+ semver-1.0.14
+ sha-1-0.9.8
+ sha-1-0.10.0
+ sized-chunks-0.6.5
+ stable_deref_trait-1.2.0
+ static_assertions-1.1.0
+ strsim-0.10.0
+ syn-1.0.103
+ tempfile-3.3.0
+ termcolor-1.1.3
+ thread_local-1.1.4
+ time-0.1.44
+ twox-hash-1.6.3
+ typenum-1.15.0
+ unicode-ident-1.0.5
+ unicode-width-0.1.10
+ vcpkg-0.2.15
+ vcsgraph-0.2.0
+ version_check-0.9.4
+ wasi-0.9.0+wasi-snapshot-preview1
+ wasi-0.10.0+wasi-snapshot-preview1
+ wasi-0.11.0+wasi-snapshot-preview1
+ wasm-bindgen-0.2.83
+ wasm-bindgen-backend-0.2.83
+ wasm-bindgen-macro-0.2.83
+ wasm-bindgen-macro-support-0.2.83
+ wasm-bindgen-shared-0.2.83
+ web-sys-0.3.60
+ which-4.3.0
+ whoami-1.4.0
+ winapi-0.3.9
+ winapi-i686-pc-windows-gnu-0.4.0
+ winapi-util-0.1.5
+ winapi-x86_64-pc-windows-gnu-0.4.0
+ yansi-0.5.1
+ zstd-0.12.3+zstd.1.5.2
+ zstd-safe-6.0.4+zstd.1.5.4
+ zstd-sys-2.0.7+zstd.1.5.4
+"
+
+inherit bash-completion-r1 cargo elisp-common distutils-r1 flag-o-matic multiprocessing
+
+DESCRIPTION="Scalable distributed SCM"
+HOMEPAGE="https://www.mercurial-scm.org/"
+SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz
+ rust? ( $(cargo_crate_uris ${CRATES}) )"
+
+LICENSE="GPL-2+
+ rust? ( 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD MIT MPL-2.0 PSF-2 Unicode-DFS-2016 Unlicense ZLIB )"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="+chg emacs gpg test tk rust"
+
+BDEPEND="rust? ( ${RUST_DEPEND} )"
+RDEPEND="
+ app-misc/ca-certificates
+ gpg? ( app-crypt/gnupg )
+ tk? ( dev-lang/tk )"
+
+DEPEND="emacs? ( >=app-editors/emacs-23.1:* )
+ test? (
+ app-arch/unzip
+ dev-python/pygments[${PYTHON_USEDEP}]
+ )"
+
+SITEFILE="70${PN}-gentoo.el"
+
+RESTRICT="!test? ( test )"
+
+src_unpack() {
+ default_src_unpack
+ if use rust; then
+ local S="${S}/rust/hg-cpython"
+ cargo_src_unpack
+ fi
+}
+
+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
+ sed -i -e 's/__APPLE__/__NO_APPLE__/g' mercurial/cext/osutil.c || die
+
+ distutils-r1_python_prepare_all
+}
+
+src_compile() {
+ if use rust; then
+ pushd rust/hg-cpython || die
+ cargo_src_compile --no-default-features --jobs $(makeopts_jobs)
+ popd || die
+ fi
+ distutils-r1_src_compile
+}
+
+python_compile() {
+ filter-flags -ftracer -ftree-vectorize
+ if use rust; then
+ local -x HGWITHRUSTEXT="cpython"
+ fi
+ distutils-r1_python_compile build_ext
+}
+
+python_compile_all() {
+ rm -r contrib/win32 || die
+ if use chg; then
+ emake -C contrib/chg
+ fi
+ if use rust; then
+ pushd rust/rhg || die
+ cargo_src_compile --no-default-features --jobs $(makeopts_jobs)
+ popd || die
+ fi
+ if use emacs; then
+ cd contrib || die
+ elisp-compile mercurial.el || die "elisp-compile failed!"
+ fi
+}
+
+src_install() {
+ distutils-r1_src_install
+}
+
+python_install() {
+ if use rust; then
+ local -x HGWITHRUSTEXT="cpython"
+ fi
+
+ distutils-r1_python_install build_ext
+ python_doscript contrib/hg-ssh
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ newbashcomp contrib/bash_completion hg
+
+ insinto /usr/share/zsh/site-functions
+ newins contrib/zsh_completion _hg
+
+ dobin hgeditor
+ if use tk; then
+ dobin contrib/hgk
+ fi
+
+ if use emacs; then
+ elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!"
+ elisp-make-site-file "${SITEFILE}"
+ fi
+
+ local RM_CONTRIB=( hgk hg-ssh bash_completion zsh_completion plan9 *.el )
+
+ if use chg; then
+ dobin contrib/chg/chg
+ doman contrib/chg/chg.1
+ RM_CONTRIB+=( chg )
+ fi
+ if use rust; then
+ dobin rust/target/release/rhg
+ fi
+
+ for f in ${RM_CONTRIB[@]}; do
+ rm -rf contrib/${f} || die
+ done
+
+ dodoc -r contrib
+ docompress -x /usr/share/doc/${PF}/contrib
+ doman doc/*.?
+ dodoc CONTRIBUTORS hgweb.cgi
+
+ 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-largefiles* # tends to time out
+ rm -f test-https* # requires to support tls1.0
+ rm -rf test-removeemptydirs* # requires access to access parent directories
+ if [[ ${EUID} -eq 0 ]]; then
+ einfo "Removing tests which require user privileges to succeed"
+ rm -f test-convert*
+ rm -f test-lock-badness*
+ rm -f test-permissions*
+ rm -f test-pull-permission*
+ rm -f test-journal-exists*
+ rm -f test-repair-strip*
+ fi
+
+ popd &>/dev/null || die
+ distutils-r1_src_test
+}
+
+python_test() {
+ if [[ ${EPYTHON} == python3.10 ]]; then
+ einfo "Skipping tests for unsupported Python 3.10"
+ return
+ fi
+ cd tests || die
+ PYTHONWARNINGS=ignore "${PYTHON}" run-tests.py \
+ --jobs $(makeopts_jobs) \
+ --timeout 0 \
+ || 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
index 2fb319d58180..08e01f60fd0b 100644
--- a/dev-vcs/mercurial/mercurial-9999.ebuild
+++ b/dev-vcs/mercurial/mercurial-9999.ebuild
@@ -3,10 +3,11 @@
EAPI=8
+CARGO_OPTIONAL=1
+DISTUTILS_USE_PEP517="setuptools"
+DISTUTILS_EXT=1
PYTHON_COMPAT=( python3_{9..12} )
PYTHON_REQ_USE="threads(+)"
-DISTUTILS_USE_SETUPTOOLS=no
-CARGO_OPTIONAL=1
inherit bash-completion-r1 cargo elisp-common distutils-r1 mercurial flag-o-matic multiprocessing
@@ -78,6 +79,11 @@ python_compile_all() {
if use chg; then
emake -C contrib/chg
fi
+ if use rust; then
+ pushd rust/rhg || die
+ cargo_src_compile --no-default-features --jobs $(makeopts_jobs)
+ popd || die
+ fi
if use emacs; then
cd contrib || die
elisp-compile mercurial.el || die "elisp-compile failed!"
@@ -122,6 +128,9 @@ python_install_all() {
doman contrib/chg/chg.1
RM_CONTRIB+=( chg )
fi
+ if use rust; then
+ dobin rust/target/release/rhg
+ fi
for f in ${RM_CONTRIB[@]}; do
rm -rf contrib/${f} || die
@@ -168,7 +177,6 @@ python_test() {
einfo "Skipping tests for unsupported Python 3.10"
return
fi
- distutils_install_for_testing
cd tests || die
PYTHONWARNINGS=ignore "${PYTHON}" run-tests.py \
--jobs $(makeopts_jobs) \