Make sys.argv an argument of keywords_with_side_effects()

This commit is contained in:
Peter Odding 2014-07-12 01:18:35 +02:00 committed by Paul Kehrer
parent c9b83f7bee
commit 51ec05fc24

View file

@ -140,10 +140,13 @@ class PyTest(test):
sys.exit(errno)
def keywords_with_side_effects():
def keywords_with_side_effects(argv):
"""
Get a dictionary with setup keywords that (can) have side effects.
:param argv: A list of strings with command line arguments.
:returns: A dictionary with keyword arguments for the ``setup()`` function.
This setup.py script uses the setuptools 'setup_requires' feature because
this is required by the cffi package to compile extension modules. The
purpose of ``keywords_with_side_effects()`` is to avoid triggering the cffi
@ -161,8 +164,8 @@ def keywords_with_side_effects():
.. _pip issue #25: https://github.com/pypa/pip/issues/25
.. _setup.py script of SciPy: https://github.com/scipy/scipy/blob/master/setup.py
"""
if len(sys.argv) >= 2 and ('--help' in sys.argv[1:] or
sys.argv[1] in ('--help-commands', '--version', 'clean', 'egg_info')):
if len(argv) >= 2 and ('--help' in argv[1:] or
argv[1] in ('--help-commands', '--version', 'clean', 'egg_info')):
return {}
else:
return dict(setup_requires=requirements,
@ -221,5 +224,5 @@ setup(
entry_points={
"cryptography.backends": backends,
},
**keywords_with_side_effects()
**keywords_with_side_effects(sys.argv)
)