changeset 589:c8bef607128c trunk

no warnings when running setup.py without installed setuptools (#262)
author fschwarz
date Wed, 08 Aug 2012 12:36:03 +0000
parents acdb8f9c9ce6
children 6f86d60dab56
files ChangeLog setup.py
diffstat 2 files changed, 36 insertions(+), 26 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -46,6 +46,7 @@
  * fix handling of messages containing '\\n' (#198)
  * handle irregular multi-line msgstr (no "" as first line) gracefully (#171)
  * parse_decimal() now returns Decimals not floats, API change (#178)
+ * no warnings when running setup.py without installed setuptools (#262)
 
 
 Version 0.9.6
--- a/setup.py
+++ b/setup.py
@@ -15,8 +15,10 @@
 import os
 try:
     from setuptools import setup
+    have_setuptools = True
 except ImportError:
     from distutils.core import setup
+    have_setuptools = False
 import sys
 
 sys.path.append(os.path.join('doc', 'common'))
@@ -26,6 +28,37 @@
     build_doc = test_doc = None
 
 
+extra_arguments = dict()
+if have_setuptools:
+    extra_arguments = dict(
+        zip_safe = False,
+        test_suite = 'babel.tests.suite',
+        tests_require = ['pytz'],
+
+        entry_points = """
+        [console_scripts]
+        pybabel = babel.messages.frontend:main
+        
+        [distutils.commands]
+        compile_catalog = babel.messages.frontend:compile_catalog
+        extract_messages = babel.messages.frontend:extract_messages
+        init_catalog = babel.messages.frontend:init_catalog
+        update_catalog = babel.messages.frontend:update_catalog
+        
+        [distutils.setup_keywords]
+        message_extractors = babel.messages.frontend:check_message_extractors
+        
+        [babel.checkers]
+        num_plurals = babel.messages.checkers:num_plurals
+        python_format = babel.messages.checkers:python_format
+        
+        [babel.extractors]
+        ignore = babel.messages.extract:extract_nothing
+        python = babel.messages.extract:extract_python
+        javascript = babel.messages.extract:extract_javascript
+        """,
+    )
+
 setup(
     name = 'Babel',
     version = '1.0',
@@ -37,7 +70,6 @@
     license = 'BSD',
     url = 'http://babel.edgewall.org/',
     download_url = 'http://babel.edgewall.org/wiki/Download',
-    zip_safe = False,
 
     classifiers = [
         'Development Status :: 4 - Beta',
@@ -50,31 +82,8 @@
     ],
     packages = ['babel', 'babel.messages'],
     package_data = {'babel': ['global.dat', 'localedata/*.dat']},
-    test_suite = 'babel.tests.suite',
-    tests_require = ['pytz'],
 
-    entry_points = """
-    [console_scripts]
-    pybabel = babel.messages.frontend:main
-    
-    [distutils.commands]
-    compile_catalog = babel.messages.frontend:compile_catalog
-    extract_messages = babel.messages.frontend:extract_messages
-    init_catalog = babel.messages.frontend:init_catalog
-    update_catalog = babel.messages.frontend:update_catalog
+    cmdclass = {'build_doc': build_doc, 'test_doc': test_doc},
     
-    [distutils.setup_keywords]
-    message_extractors = babel.messages.frontend:check_message_extractors
-    
-    [babel.checkers]
-    num_plurals = babel.messages.checkers:num_plurals
-    python_format = babel.messages.checkers:python_format
-    
-    [babel.extractors]
-    ignore = babel.messages.extract:extract_nothing
-    python = babel.messages.extract:extract_python
-    javascript = babel.messages.extract:extract_javascript
-    """,
-
-    cmdclass = {'build_doc': build_doc, 'test_doc': test_doc}
+    **extra_arguments
 )
Copyright (C) 2012-2017 Edgewall Software