thrift: add missing py-six dependency (#18285)

* thrift: add missing py-six dependency

* add more missing dependencies (+extras)

* small fix

* gssapi variant / setuptools run dep

Co-authored-by: Andrew Elble <aweits@localhost.localdomain>
This commit is contained in:
Andrew W Elble 2020-08-27 14:24:42 -04:00 committed by GitHub
parent ccae9cff3a
commit 77a28b81ac
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 67 additions and 3 deletions

View file

@ -0,0 +1,22 @@
# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
class PyKerberos(PythonPackage):
"""This Python package is a high-level wrapper for Kerberos
(GSSAPI) operations. The goal is to avoid having to build a module
that wraps the entire Kerberos.framework, and instead offer a
limited set of functions that do what is needed for client/server
Kerberos authentication based on
<http://www.ietf.org/rfc/rfc4559.txt>."""
homepage = "https://github.com/apple/ccs-pykerberos"
url = "https://pypi.io/packages/source/k/kerberos/kerberos-1.3.0.tar.gz"
version('1.3.0', sha256='f039b7dd4746df56f6102097b3dc250fe0078be75130b9dc4211a85a3b1ec6a4')
depends_on('py-setuptools', type='build')
depends_on('keyutils')
depends_on('krb5@1.3.0:')

View file

@ -0,0 +1,21 @@
# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
class PyPureSasl(PythonPackage):
"""This package provides a reasonably high-level SASL client
written in pure Python. New mechanisms may be integrated easily,
but by default, support for PLAIN, ANONYMOUS, EXTERNAL, CRAM-MD5,
DIGEST-MD5, and GSSAPI are provided."""
homepage = "http://github.com/thobbs/pure-sasl"
url = "https://pypi.io/packages/source/p/pure-sasl/pure-sasl-0.6.2.tar.gz"
version('0.6.2', sha256='53c1355f5da95e2b85b2cc9a6af435518edc20c81193faa0eea65fdc835138f4')
variant('gssapi', default=True, description='build with kerberos/gssapi support')
depends_on('py-setuptools', type='build')
depends_on('py-kerberos@1.3.0:', type=('build', 'run'), when='+gssapi')

View file

@ -8,8 +8,9 @@ class PyThinc(PythonPackage):
"""Thinc: Practical Machine Learning for NLP in Python.""" """Thinc: Practical Machine Learning for NLP in Python."""
homepage = "https://github.com/explosion/thinc" homepage = "https://github.com/explosion/thinc"
url = "https://pypi.io/packages/source/t/thinc/thinc-7.4.0.tar.gz" url = "https://pypi.io/packages/source/t/thinc/thinc-7.4.1.tar.gz"
version('7.4.1', sha256='523e9be1bfaa3ed1d03d406ce451b6b4793a9719d5b83d2ea6b3398b96bc58b8')
version('7.4.0', sha256='523e9be1bfaa3ed1d03d406ce451b6b4793a9719d5b83d2ea6b3398b96bc58b8') version('7.4.0', sha256='523e9be1bfaa3ed1d03d406ce451b6b4793a9719d5b83d2ea6b3398b96bc58b8')
depends_on('py-setuptools', type='build') depends_on('py-setuptools', type='build')

View file

@ -19,11 +19,13 @@ class PyZopeInterface(PythonPackage):
# Maybe some kind of namespace issue? # Maybe some kind of namespace issue?
# import_modules = ['zope.interface', 'zope.interface.common'] # import_modules = ['zope.interface', 'zope.interface.common']
version('5.1.0', sha256='40e4c42bd27ed3c11b2c983fecfb03356fae1209de10686d03c02c8696a1d90e')
version('4.5.0', sha256='57c38470d9f57e37afb460c399eb254e7193ac7fb8042bd09bdc001981a9c74c') version('4.5.0', sha256='57c38470d9f57e37afb460c399eb254e7193ac7fb8042bd09bdc001981a9c74c')
depends_on('python@2.7:2.8,3.4:', type=('build', 'run')) depends_on('python@2.7:2.8,3.4:', type=('build', 'run'), when='@4.5.0')
depends_on('python@2.7:2.8,3.5:', type=('build', 'run'), when='@5.1.0:')
depends_on('py-setuptools', type='build') depends_on('py-setuptools', type=('build', 'run'))
depends_on('py-zope-event', type='test') depends_on('py-zope-event', type='test')
depends_on('py-nose', type='test') depends_on('py-nose', type='test')
depends_on('py-coverage', type='test') depends_on('py-coverage', type='test')

View file

@ -32,3 +32,12 @@ class Scons(PythonPackage):
@when('@3.0.2:') @when('@3.0.2:')
def install_args(self, spec, prefix): def install_args(self, spec, prefix):
return ['--prefix={0}'.format(prefix), '--root=/'] return ['--prefix={0}'.format(prefix), '--root=/']
def setup_run_environment(self, env):
env.prepend_path('PYTHONPATH', self.prefix.lib.scons)
def setup_dependent_build_environment(self, env, dependent_spec):
env.prepend_path('PYTHONPATH', self.prefix.lib.scons)
def setup_dependent_run_environment(self, env, dependent_spec):
env.prepend_path('PYTHONPATH', self.prefix.lib.scons)

View file

@ -45,6 +45,15 @@ class Thrift(Package):
# Variant dependencies # Variant dependencies
extends('python', when='+python') extends('python', when='+python')
depends_on('py-setuptools', type=('build', 'run'), when='+python')
depends_on('py-six@1.7.2:', type=('build', 'run'), when='@0.10.0:+python')
depends_on('py-tornado', type=('build', 'run'), when='+python')
depends_on('py-twisted', type=('build', 'run'), when='+python')
depends_on('py-zope-interface', type=('build', 'run'), when='+python')
depends_on('py-ipaddress', type=('build', 'run'), when='+python ^python@2')
depends_on('py-backports-ssl-match-hostname@3.5:', when='+python ^python@:3.4', type=('build', 'run'))
depends_on('py-pure-sasl', type=('build', 'run'), when='+python')
depends_on('scons', type=('build', 'run'), when='+python')
depends_on('zlib', when='+c') depends_on('zlib', when='+c')
depends_on('libevent', when='+c') depends_on('libevent', when='+c')