Author: Matti Picus <[email protected]>
Branch: quieter-translation
Changeset: r75206:2e6785bb21f2
Date: 2015-01-02 11:03 +0200
http://bitbucket.org/pypy/pypy/changeset/2e6785bb21f2/

Log:    windows has no resource module

diff --git a/lib_pypy/ctypes_config_cache/resource.ctc.py 
b/lib_pypy/ctypes_config_cache/resource.ctc.py
--- a/lib_pypy/ctypes_config_cache/resource.ctc.py
+++ b/lib_pypy/ctypes_config_cache/resource.ctc.py
@@ -8,55 +8,60 @@
 import dumpcache
 from ctypes_configure.configure import (configure,
     ExternalCompilationInfo, ConstantInteger, DefinedConstantInteger,
-    SimpleType)
+    SimpleType, check_eci)
 
 
-_CONSTANTS = (
-    'RLIM_INFINITY',
-    'RLIM_NLIMITS',
-)
-_OPTIONAL_CONSTANTS = (
-    'RLIMIT_CPU',
-    'RLIMIT_FSIZE',
-    'RLIMIT_DATA',
-    'RLIMIT_STACK',
-    'RLIMIT_CORE',
-    'RLIMIT_RSS',
-    'RLIMIT_NPROC',
-    'RLIMIT_NOFILE',
-    'RLIMIT_OFILE',
-    'RLIMIT_MEMLOCK',
-    'RLIMIT_AS',
-    'RLIMIT_LOCKS',
-    'RLIMIT_SIGPENDING',
-    'RLIMIT_MSGQUEUE',
-    'RLIMIT_NICE',
-    'RLIMIT_RTPRIO',
-    'RLIMIT_VMEM',
+eci = ExternalCompilationInfo(includes=['sys/resource.h'])
+HAS_RESOURCE = check_eci(eci)
 
-    'RUSAGE_BOTH',
-    'RUSAGE_SELF',
-    'RUSAGE_CHILDREN',
-)
+if HAS_RESOURCE:
 
-# Setup our configure
-class ResourceConfigure:
-    _compilation_info_ = ExternalCompilationInfo(includes=['sys/resource.h'])
-    rlim_t = SimpleType('rlim_t')
-for key in _CONSTANTS:
-    setattr(ResourceConfigure, key, ConstantInteger(key))
-for key in _OPTIONAL_CONSTANTS:
-    setattr(ResourceConfigure, key, DefinedConstantInteger(key))
+    _CONSTANTS = (
+        'RLIM_INFINITY',
+        'RLIM_NLIMITS',
+    )
+    _OPTIONAL_CONSTANTS = (
+        'RLIMIT_CPU',
+        'RLIMIT_FSIZE',
+        'RLIMIT_DATA',
+        'RLIMIT_STACK',
+        'RLIMIT_CORE',
+        'RLIMIT_RSS',
+        'RLIMIT_NPROC',
+        'RLIMIT_NOFILE',
+        'RLIMIT_OFILE',
+        'RLIMIT_MEMLOCK',
+        'RLIMIT_AS',
+        'RLIMIT_LOCKS',
+        'RLIMIT_SIGPENDING',
+        'RLIMIT_MSGQUEUE',
+        'RLIMIT_NICE',
+        'RLIMIT_RTPRIO',
+        'RLIMIT_VMEM',
 
-# Configure constants and types
-config = configure(ResourceConfigure)
-config['rlim_t_max'] = (1<<(sizeof(config['rlim_t']) * 8)) - 1
-optional_constants = []
-for key in _OPTIONAL_CONSTANTS:
-    if config[key] is not None:
-        optional_constants.append(key)
-    else:
-        del config[key]
+        'RUSAGE_BOTH',
+        'RUSAGE_SELF',
+        'RUSAGE_CHILDREN',
+    )
 
-config['ALL_CONSTANTS'] = _CONSTANTS + tuple(optional_constants)
-dumpcache.dumpcache2('resource', config)
+    # Setup our configure
+    class ResourceConfigure:
+        _compilation_info_ = 
ExternalCompilationInfo(includes=['sys/resource.h'])
+        rlim_t = SimpleType('rlim_t')
+    for key in _CONSTANTS:
+        setattr(ResourceConfigure, key, ConstantInteger(key))
+    for key in _OPTIONAL_CONSTANTS:
+        setattr(ResourceConfigure, key, DefinedConstantInteger(key))
+
+    # Configure constants and types
+    config = configure(ResourceConfigure)
+    config['rlim_t_max'] = (1<<(sizeof(config['rlim_t']) * 8)) - 1
+    optional_constants = []
+    for key in _OPTIONAL_CONSTANTS:
+        if config[key] is not None:
+            optional_constants.append(key)
+        else:
+            del config[key]
+
+    config['ALL_CONSTANTS'] = _CONSTANTS + tuple(optional_constants)
+    dumpcache.dumpcache2('resource', config)
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to