Author: Armin Rigo <ar...@tunes.org>
Branch: cffi-1.0
Changeset: r1934:d4a2e140968a
Date: 2015-05-08 20:33 +0200
http://bitbucket.org/cffi/cffi/changeset/d4a2e140968a/

Log:    'cffi_modules' can be unicodes on 2.7 with unicode_literals

diff --git a/_cffi1/setuptools_ext.py b/_cffi1/setuptools_ext.py
--- a/_cffi1/setuptools_ext.py
+++ b/_cffi1/setuptools_ext.py
@@ -1,3 +1,8 @@
+try:
+    basestring
+except NameError:
+    # Python 3.x
+    basestring = str
 
 def error(msg):
     from distutils.errors import DistutilsSetupError
@@ -13,9 +18,10 @@
     from distutils.dir_util import mkpath
     from distutils import log
 
-    if not isinstance(mod_spec, str):
+    if not isinstance(mod_spec, basestring):
         error("argument to 'cffi_modules=...' must be a str or a list of str,"
               " not %r" % (type(mod_spec).__name__,))
+    mod_spec = str(mod_spec)
     try:
         build_mod_name, ffi_var_name = mod_spec.split(':')
     except ValueError:
@@ -67,7 +73,7 @@
 
 def cffi_modules(dist, attr, value):
     assert attr == 'cffi_modules'
-    if isinstance(value, str):
+    if isinstance(value, basestring):
         value = [value]
 
     for cffi_module in value:
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to