|
6 | 6 | Lesser GNU General Public License.
|
7 | 7 | """
|
8 | 8 |
|
9 |
| -from distutils.core import setup, Command |
10 |
| -# use setuptools if available |
11 |
| - |
12 | 9 | from datetime import datetime
|
13 | 10 | from glob import glob
|
14 | 11 | import os
|
15 | 12 | import sys
|
16 | 13 | import shutil
|
17 | 14 | import warnings
|
18 | 15 |
|
| 16 | +try: |
| 17 | + from setuptools import setup, Command |
| 18 | + _have_setuptools = True |
| 19 | +except: |
| 20 | + from distutils.core import setup, Command |
| 21 | + _have_setuptools = False |
| 22 | + |
19 | 23 |
|
| 24 | +setuptools_kwargs = {} |
20 | 25 | if sys.version_info[0] >= 3:
|
21 |
| - try: |
22 |
| - from setuptools import setup |
23 |
| - _have_setuptools = True |
24 |
| - except ImportError: |
25 |
| - raise ImportError('require setuptools/distribute for Py3k') |
26 |
| - setuptools_args = {'use_2to3': True, |
| 26 | + |
| 27 | + setuptools_kwargs = {'use_2to3': True, |
27 | 28 | 'zip_safe': False,
|
28 | 29 | 'install_requires': ['python-dateutil > 2','numpy'],
|
29 | 30 | }
|
| 31 | + if not _have_setuptools: |
| 32 | + sys.exit("need setuptools/distribute for Py3k" |
| 33 | + "\n$ pip install distribute") |
| 34 | + |
30 | 35 | else:
|
31 |
| - setuptools_args = { |
| 36 | + setuptools_kwargs = { |
32 | 37 | 'install_requires': ['python-dateutil < 2','numpy'],
|
33 | 38 | }
|
| 39 | + if not _have_setuptools: |
| 40 | + try: |
| 41 | + import numpy |
| 42 | + import dateutil |
| 43 | + setuptools_kwargs = {} |
| 44 | + except ImportError: |
| 45 | + sys.exit("install requires: 'python-dateutil < 2','numpy'. use pip or easy_install." |
| 46 | + "\n $ pip install 'python-dateutil < 2' 'numpy'") |
34 | 47 |
|
35 | 48 | try:
|
36 | 49 | import numpy as np
|
37 | 50 | except ImportError:
|
38 | 51 | nonumpy_msg = ("# numpy needed to finish setup. run:\n\n"
|
39 |
| - "pip install numpy \n# or easy_install numpy\n") |
40 |
| - print nonumpy_msg |
41 |
| - import sys |
42 |
| - sys.exit() |
| 52 | + " $ pip install numpy # or easy_install numpy\n") |
| 53 | + sys.exit(nonumpy_msg) |
43 | 54 |
|
44 |
| -# from numpy.distutils.core import setup |
45 | 55 |
|
46 | 56 | from distutils.extension import Extension
|
47 | 57 | from distutils.command.build import build
|
@@ -335,7 +345,7 @@ def srcpath(name=None, suffix='.pyx', subdir='src'):
|
335 | 345 | extensions.extend([sandbox_ext])
|
336 | 346 |
|
337 | 347 | # if _have_setuptools:
|
338 |
| -# setuptools_args["test_suite"] = "nose.collector" |
| 348 | +# setuptools_kwargs["test_suite"] = "nose.collector" |
339 | 349 |
|
340 | 350 | write_version_py()
|
341 | 351 | setup(name=DISTNAME,
|
@@ -371,4 +381,4 @@ def srcpath(name=None, suffix='.pyx', subdir='src'):
|
371 | 381 | long_description=LONG_DESCRIPTION,
|
372 | 382 | classifiers=CLASSIFIERS,
|
373 | 383 | platforms='any',
|
374 |
| - **setuptools_args) |
| 384 | + **setuptools_kwargs) |
0 commit comments