[Checkins] SVN: zope.proxy/trunk/ Add support for PyPy.
Tres Seaver
cvs-admin at zope.org
Wed Jun 6 20:13:24 UTC 2012
Log message for revision 126625:
Add support for PyPy.
Changed:
_U zope.proxy/trunk/
U zope.proxy/trunk/CHANGES.txt
U zope.proxy/trunk/setup.py
-=-
Modified: zope.proxy/trunk/CHANGES.txt
===================================================================
--- zope.proxy/trunk/CHANGES.txt 2012-06-06 20:13:17 UTC (rev 126624)
+++ zope.proxy/trunk/CHANGES.txt 2012-06-06 20:13:21 UTC (rev 126625)
@@ -5,6 +5,8 @@
4.0.0 (unreleased)
------------------
+- Added support for PyPy.
+
- Added a pure-Python fallback implementations of ``zope.proxy.ProxyBase``
and the proxy module API functions.
Modified: zope.proxy/trunk/setup.py
===================================================================
--- zope.proxy/trunk/setup.py 2012-06-06 20:13:17 UTC (rev 126624)
+++ zope.proxy/trunk/setup.py 2012-06-06 20:13:21 UTC (rev 126625)
@@ -18,12 +18,35 @@
##############################################################################
"""Setup for zope.proxy package
"""
-import os, sys
-from setuptools import setup, Extension
+import os
+import platform
+from setuptools import setup, Extension, Feature
+
def read(*rnames):
return open(os.path.join(os.path.dirname(__file__), *rnames)).read()
+Cwrapper = Feature(
+ "C wrapper",
+ standard = True,
+ ext_modules=[Extension("zope.proxy._zope_proxy_proxy",
+ [os.path.join('src', 'zope', 'proxy',
+ "_zope_proxy_proxy.c")
+ ],
+ extra_compile_args=['-g']),
+ ],
+)
+
+# PyPy won't build the extension.
+py_impl = getattr(platform, 'python_implementation', lambda: None)
+is_pypy = py_impl() == 'PyPy'
+if is_pypy:
+ features = {}
+ headers = []
+else:
+ features = {'Cwrapper': Cwrapper}
+ headers=[os.path.join('src', 'zope', 'proxy', 'proxy.h')],
+
setup(name='zope.proxy',
version = '4.0.0dev',
author='Zope Foundation and Contributors',
@@ -46,20 +69,16 @@
'Programming Language :: Python :: 2.7',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.2',
+ 'Programming Language :: Python :: Implementation :: CPython',
+ 'Programming Language :: Python :: Implementation :: PyPy',
'Natural Language :: English',
'Operating System :: OS Independent'],
keywords='proxy generic transparent',
packages=['zope', 'zope.proxy'],
package_dir = {'': 'src'},
namespace_packages=['zope',],
-
- headers=[os.path.join('src', 'zope', 'proxy', 'proxy.h')],
- ext_modules=[Extension("zope.proxy._zope_proxy_proxy",
- [os.path.join('src', 'zope', 'proxy',
- "_zope_proxy_proxy.c")
- ]),
- ],
-
+ features=features,
+ headers=headers,
test_suite = 'zope.proxy',
install_requires=[
'zope.interface',
More information about the checkins
mailing list