gentoo/dev-python/pillow/pillow-5.2.0.ebuild
Virgil Dupras 331fb7baff
dev-python/pillow: fix test dependencies
Some tests require imagemagick to be installed but, more importantly,
installed with the png USE flag. When imagemagick was installed without
the png use flag, those tests would run and fail.

Package-Manager: Portage-2.3.40, Repoman-2.3.9
2018-07-11 10:38:41 -04:00

88 lines
2.0 KiB
Bash

# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 python3_{5,6} )
PYTHON_REQ_USE='tk?,threads(+)'
inherit distutils-r1 eutils virtualx
MY_PN=Pillow
MY_P=${MY_PN}-${PV}
DESCRIPTION="Python Imaging Library (fork)"
HOMEPAGE="https://python-pillow.org/"
SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
LICENSE="HPND"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
IUSE="doc examples imagequant jpeg jpeg2k lcms test tiff tk truetype webp zlib"
REQUIRED_USE="test? ( jpeg tiff )"
RDEPEND="
dev-python/olefile[${PYTHON_USEDEP}]
imagequant? ( media-gfx/libimagequant:0 )
jpeg? ( virtual/jpeg:0 )
jpeg2k? ( media-libs/openjpeg:2= )
lcms? ( media-libs/lcms:2= )
tiff? ( media-libs/tiff:0=[jpeg,zlib] )
truetype? ( media-libs/freetype:2= )
webp? ( media-libs/libwebp:0= )
zlib? ( sys-libs/zlib:0= )"
DEPEND="${RDEPEND}
dev-python/setuptools[${PYTHON_USEDEP}]
doc? (
dev-python/sphinx[${PYTHON_USEDEP}]
dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
)
test? (
dev-python/pytest[${PYTHON_USEDEP}]
media-gfx/imagemagick[png]
)
"
S="${WORKDIR}/${MY_P}"
python_compile() {
local args=(
--disable-platform-guessing
$(use_enable truetype freetype)
$(use_enable jpeg)
$(use_enable jpeg2k jpeg2000)
$(use_enable lcms)
$(use_enable tiff)
$(use_enable imagequant)
$(use_enable webp)
$(use_enable webp webpmux)
$(use_enable zlib)
)
distutils-r1_python_compile build_ext "${args[@]}"
}
python_compile_all() {
use doc && emake -C docs html
}
python_test() {
"${PYTHON}" selftest.py --installed || die "selftest failed with ${EPYTHON}"
virtx pytest -vx Tests/test_*.py
}
python_install() {
python_doheader src/libImaging/*.h
distutils-r1_python_install
}
python_install_all() {
use doc && local HTML_DOCS=( docs/_build/html/. )
if use examples ; then
docinto example
dodoc docs/example/*
docompress -x /usr/share/doc/${PF}/example
fi
distutils-r1_python_install_all
}