7aaa0aa2222928886e59e974a1e4c2fbf71b833d
[gentoo.git] / dev-vcs / bzr / bzr-2.5.1-r1.ebuild
1 # Copyright 1999-2017 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI="5"
5 PYTHON_COMPAT=( python2_7 )
6 PYTHON_REQ_USE="threads,ssl,xml"
7
8 inherit bash-completion-r1 distutils-r1 eutils flag-o-matic versionator
9
10 MY_P=${PN}-${PV}
11 SERIES=$(get_version_component_range 1-2)
12
13 DESCRIPTION="Bazaar is a next generation distributed version control system"
14 HOMEPAGE="http://bazaar-vcs.org/"
15 #SRC_URI="http://bazaar-vcs.org/releases/src/${MY_P}.tar.gz"
16 SRC_URI="https://launchpad.net/bzr/${SERIES}/${PV}/+download/${MY_P}.tar.gz"
17
18 LICENSE="GPL-2"
19 SLOT="0"
20 KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris"
21 IUSE="curl doc +sftp test"
22
23 RDEPEND="curl? ( dev-python/pycurl[${PYTHON_USEDEP}] )
24         sftp? ( dev-python/paramiko[${PYTHON_USEDEP}] )"
25
26 DEPEND="test? (
27                 ${RDEPEND}
28                 >=dev-python/pyftpdlib-0.7.0[${PYTHON_USEDEP}]
29                 dev-python/subunit
30                 >=dev-python/testtools-0.9.5[${PYTHON_USEDEP}]
31         )"
32
33 S="${WORKDIR}/${MY_P}"
34
35 PATCHES=(
36         "${FILESDIR}/${PN}-2.4.2-no-pyrex-citon.patch"
37         "${FILESDIR}/${P}-sphinx-test-failures.patch"
38 )
39
40 python_configure_all() {
41         # Generate the locales first to avoid a race condition.
42         esetup.py build_mo
43 }
44
45 python_compile() {
46         if [[ ${EPYTHON} != python3* ]]; then
47                 local CFLAGS=${CFLAGS}
48                 append-cflags -fno-strict-aliasing
49         fi
50         distutils-r1_python_compile
51 }
52
53 python_test() {
54         # Some tests expect the usual pyc compiling behaviour.
55         local -x PYTHONDONTWRITEBYTECODE
56
57         # Define tests which are known to fail below.
58         local skip_tests="("
59         # https://bugs.launchpad.net/bzr/+bug/850676
60         skip_tests+="per_transport.TransportTests.test_unicode_paths.*"
61         skip_tests+=")"
62         if [[ -n ${skip_tests} ]]; then
63                 einfo "Skipping tests known to fail: ${skip_tests}"
64         fi
65
66         LC_ALL="C" "${PYTHON}" bzr --no-plugins selftest -v \
67                 ${skip_tests:+-x} "${skip_tests}" || die "Tests fail with ${EPYTHON}"
68 }
69
70 python_install_all() {
71         distutils-r1_python_install_all
72
73         # Fixup manpages manually; passing --install-data causes locales to be
74         # installed in /usr/share/share/locale
75         dodir /usr/share
76         mv "${ED%/}"/usr/{man,share/man} || die
77
78         dodoc doc/*.txt
79
80         if use doc; then
81                 docinto developers
82                 dodoc -r doc/developers/* || die
83                 for doc in mini-tutorial tutorials user-{guide,reference}; do
84                         docinto ${doc}
85                         dodoc -r doc/en/${doc}/* || die
86                 done
87         fi
88
89         dobashcomp contrib/bash/bzr || die
90 }