summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--var/spack/repos/builtin/packages/py-pillow/package.py61
1 files changed, 31 insertions, 30 deletions
diff --git a/var/spack/repos/builtin/packages/py-pillow/package.py b/var/spack/repos/builtin/packages/py-pillow/package.py
index 3934b4d4bb..32faff9956 100644
--- a/var/spack/repos/builtin/packages/py-pillow/package.py
+++ b/var/spack/repos/builtin/packages/py-pillow/package.py
@@ -13,11 +13,12 @@ class PyPillow(PythonPackage):
capabilities."""
homepage = "https://python-pillow.org/"
- url = "https://pypi.io/packages/source/P/Pillow/Pillow-7.0.0.tar.gz"
+ url = "https://pypi.io/packages/source/P/Pillow/Pillow-7.2.0.tar.gz"
maintainers = ['adamjstewart']
import_modules = ['PIL']
+ version('7.2.0', sha256='97f9e7953a77d5a70f49b9a48da7776dc51e9b738151b22dacf101641594a626')
version('7.0.0', sha256='4d9ed9a64095e031435af120d3c910148067087541131e82b3e8db302f4c8946')
version('6.2.2', sha256='db9ff0c251ed066d367f53b64827cc9e18ccea001b986d08c265e53625dab950')
version('6.2.1', sha256='bf4e972a88f8841d8fdc6db1a75e0f8d763e66e3754b03006cbc3854d89f1cb1')
@@ -32,40 +33,44 @@ class PyPillow(PythonPackage):
# These defaults correspond to Pillow defaults
# https://pillow.readthedocs.io/en/stable/installation.html#external-libraries
- variant('tiff', default=False, description='Compressed TIFF functionality')
- variant('freetype', default=False, description='Type related services')
- variant('lcms', default=False, description='Color management')
- variant('webp', default=False, description='WebP format')
- variant('webpmux', default=False, description='WebP metadata')
- variant('jpeg2000', default=False, description='JPEG 2000 functionality')
-
- # Spack does not (yet) support these modes of building
- # variant('imagequant', default=False,
- # description='Improved color quantization')
+ variant('zlib', default=True, description='Compressed PNG functionality')
+ variant('jpeg', default=True, description='JPEG functionality')
+ variant('tiff', default=False, description='Compressed TIFF functionality')
+ variant('freetype', default=False, description='Type related services')
+ variant('lcms', default=False, description='Color management')
+ variant('webp', default=False, description='WebP format')
+ variant('webpmux', default=False, description='WebP metadata')
+ variant('jpeg2000', default=False, description='JPEG 2000 functionality')
+ variant('imagequant', default=False, description='Improved color quantization')
+ variant('xcb', default=False, description='X11 screengrab support')
# Required dependencies
- depends_on('python@2.6:2.8,3.2:', when='@3:', type=('build', 'run'))
- depends_on('python@2.7:2.8,3.3:', when='@4:', type=('build', 'run'))
- depends_on('python@2.7:2.8,3.4:', when='@5:', type=('build', 'run'))
- depends_on('python@2.7:2.8,3.5:', when='@6:', type=('build', 'run'))
- depends_on('python@3.5:', when='@7:', type=('build', 'run'))
+ # https://pillow.readthedocs.io/en/latest/installation.html#notes
+ depends_on('python@3.6:3.9', when='@8:', type=('build', 'run'))
+ depends_on('python@3.5:3.8', when='@7.0:7.2', type=('build', 'run'))
+ depends_on('python@2.7:2.8,3.5:3.8', when='@6.2.1:6.2.2', type=('build', 'run'))
+ depends_on('python@2.7:2.8,3.5:3.7', when='@6.0:6.2.0', type=('build', 'run'))
+ depends_on('python@2.7:2.8,3.4:3.7', when='@5.2:5.4', type=('build', 'run'))
+ depends_on('python@2.7:2.8,3.4:3.6', when='@5.0:5.1', type=('build', 'run'))
+ depends_on('python@2.7:2.8,3.3:3.6', when='@4.0:4.999', type=('build', 'run'))
+ depends_on('python@2.6:2.8,3.2:3.5', when='@2:3', type=('build', 'run'))
+ depends_on('python@2.4:2.7', when='@:1', type=('build', 'run'))
depends_on('py-setuptools', type='build')
- depends_on('zlib')
- depends_on('jpeg')
depends_on('py-pytest', type='test')
depends_on('py-pytest-runner', type='test')
+ depends_on('imagemagick', type='test')
# Optional dependencies
+ depends_on('zlib', when='+zlib')
+ depends_on('jpeg', when='+jpeg')
depends_on('libtiff', when='+tiff')
depends_on('freetype', when='+freetype')
depends_on('lcms@2:', when='+lcms')
depends_on('libwebp', when='+webp')
depends_on('libwebp+libwebpmux+libwebpdemux', when='+webpmux')
depends_on('openjpeg', when='+jpeg2000')
- depends_on('imagemagick', type='test')
-
- # Spack does not (yet) support these modes of building
- # depends_on('libimagequant', when='+imagequant')
+ depends_on('libimagequant', when='+imagequant')
+ depends_on('libxcb', when='+xcb')
conflicts('+webpmux', when='~webp', msg='Webpmux relies on WebP support')
@@ -95,19 +100,15 @@ class PyPillow(PythonPackage):
with open('setup.cfg', 'a') as setup:
# Default backend
setup.write('[build_ext]\n')
- setup.write('enable-zlib=1\n')
- setup.write('enable-jpeg=1\n')
- variants = ['tiff', 'freetype', 'lcms', 'webp',
- 'webpmux', 'jpeg2000']
- for variant in variants:
+ for variant in self.spec.variants.keys():
setup.write(variant_to_cfg(setup))
- # Spack does not (yet) support these modes of building
- setup.write('disable-imagequant=1\n')
-
setup.write('rpath={0}\n'.format(':'.join(self.rpath)))
setup.write('[install]\n')
+ def setup_build_environment(self, env):
+ env.set('MAX_CONCURRENCY', str(make_jobs))
+
# Tests need to be re-added since `phases` was overridden
run_after('build_ext')(
PythonPackage._run_default_build_time_test_callbacks)