[Python-checkins] distutils2: Finish hashlib backport.

tarek.ziade python-checkins at python.org
Sun Aug 8 11:50:45 CEST 2010


tarek.ziade pushed 7b8e17e8f4eb to distutils2:

http://hg.python.org/distutils2/rev/7b8e17e8f4eb
changeset:   419:7b8e17e8f4eb
user:        ?ric Araujo <merwok at netwok.org>
date:        Sat Jul 31 17:46:23 2010 +0200
summary:     Finish hashlib backport.
files:       src/Modules/_hashopenssl.c, src/Modules/md5.c, src/Modules/md5.h, src/Modules/md5module.c, src/Modules/sha256module.c, src/Modules/sha512module.c, src/Modules/shamodule.c, src/distutils2/_backport/_hashopenssl.c, src/distutils2/_backport/hashlib.py, src/distutils2/_backport/md5.c, src/distutils2/_backport/md5.h, src/distutils2/_backport/md5module.c, src/distutils2/_backport/sha256module.c, src/distutils2/_backport/sha512module.c, src/distutils2/_backport/shamodule.c, src/distutils2/_backport/tests/test_pkgutil.py, src/distutils2/command/upload.py, src/setup.py, src/tests.sh

diff --git a/src/Modules/_hashopenssl.c b/src/distutils2/_backport/_hashopenssl.c
rename from src/Modules/_hashopenssl.c
rename to src/distutils2/_backport/_hashopenssl.c
diff --git a/src/distutils2/_backport/hashlib.py b/src/distutils2/_backport/hashlib.py
--- a/src/distutils2/_backport/hashlib.py
+++ b/src/distutils2/_backport/hashlib.py
@@ -65,20 +65,20 @@
 
 def __get_builtin_constructor(name):
     if name in ('SHA1', 'sha1'):
-        import _sha
+        from distutils2._backport import _sha
         return _sha.new
     elif name in ('MD5', 'md5'):
-        import _md5
+        from distutils2._backport import _md5
         return _md5.new
     elif name in ('SHA256', 'sha256', 'SHA224', 'sha224'):
-        import _sha256
+        from distutils2._backport import _sha256
         bs = name[3:]
         if bs == '256':
             return _sha256.sha256
         elif bs == '224':
             return _sha256.sha224
     elif name in ('SHA512', 'sha512', 'SHA384', 'sha384'):
-        import _sha512
+        from distutils2._backport import _sha512
         bs = name[3:]
         if bs == '512':
             return _sha512.sha512
@@ -122,7 +122,7 @@
 
 
 try:
-    import _hashlib
+    from distutils2._backport import _hashlib
     new = __hash_new
     __get_hash = __get_openssl_constructor
 except ImportError:
diff --git a/src/Modules/md5.c b/src/distutils2/_backport/md5.c
rename from src/Modules/md5.c
rename to src/distutils2/_backport/md5.c
diff --git a/src/Modules/md5.h b/src/distutils2/_backport/md5.h
rename from src/Modules/md5.h
rename to src/distutils2/_backport/md5.h
diff --git a/src/Modules/md5module.c b/src/distutils2/_backport/md5module.c
rename from src/Modules/md5module.c
rename to src/distutils2/_backport/md5module.c
diff --git a/src/Modules/sha256module.c b/src/distutils2/_backport/sha256module.c
rename from src/Modules/sha256module.c
rename to src/distutils2/_backport/sha256module.c
diff --git a/src/Modules/sha512module.c b/src/distutils2/_backport/sha512module.c
rename from src/Modules/sha512module.c
rename to src/distutils2/_backport/sha512module.c
diff --git a/src/Modules/shamodule.c b/src/distutils2/_backport/shamodule.c
rename from src/Modules/shamodule.c
rename to src/distutils2/_backport/shamodule.c
diff --git a/src/distutils2/_backport/tests/test_pkgutil.py b/src/distutils2/_backport/tests/test_pkgutil.py
--- a/src/distutils2/_backport/tests/test_pkgutil.py
+++ b/src/distutils2/_backport/tests/test_pkgutil.py
@@ -10,7 +10,7 @@
 try:
     from hashlib import md5
 except ImportError:
-    from md5 import md5
+    from distutils2._backport.hashlib import md5
 
 from test.test_support import run_unittest, TESTFN
 from distutils2.tests.support import unittest
diff --git a/src/distutils2/command/upload.py b/src/distutils2/command/upload.py
--- a/src/distutils2/command/upload.py
+++ b/src/distutils2/command/upload.py
@@ -11,7 +11,7 @@
 try:
     from hashlib import md5
 except ImportError:
-    from md5 import md5
+    from distutils2._backport.hashlib import md5
 
 from distutils2.errors import DistutilsOptionError
 from distutils2.util import spawn
diff --git a/src/setup.py b/src/setup.py
--- a/src/setup.py
+++ b/src/setup.py
@@ -168,29 +168,25 @@
 
         # The _hashlib module wraps optimized implementations
         # of hash functions from the OpenSSL library.
-        exts.append(Extension('_hashlib', ['_hashopenssl.c'],
+        exts.append(Extension('distutils2._backport._hashlib',
+                              ['distutils2/_backport/_hashopenssl.c'],
                               include_dirs = [ssl_inc_dir],
                               library_dirs = [os.path.dirname(ssl_lib)],
                               libraries = oslibs[os.name]))
     else:
-        exts.append(Extension('_sha', ['shamodule.c']) )
-        exts.append(Extension('_md5',
-                              sources=['md5module.c', 'md5.c'],
-                              depends=['md5.h']) )
+        exts.append(Extension('distutils2._backport._sha',
+                              ['distutils2/_backport/shamodule.c']))
+        exts.append(Extension('distutils2._backport._md5',
+                              sources=['distutils2/_backport/md5module.c',
+                                       'distutils2/_backport/md5.c'],
+                              depends=['distutils2/_backport/md5.h']) )
 
     if (not ssl_lib or openssl_ver < 0x00908000):
         # OpenSSL doesn't do these until 0.9.8 so we'll bring our own
-        exts.append(Extension('_sha256', ['sha256module.c']))
-        exts.append(Extension('_sha512', ['sha512module.c']))
-
-    def prepend_modules(filename):
-        return os.path.join('Modules', filename)
-
-    # all the C code is in the Modules subdirectory, prepend the path
-    for ext in exts:
-        ext.sources = [prepend_modules(fn) for fn in ext.sources]
-        if hasattr(ext, 'depends') and ext.depends is not None:
-            ext.depends = [prepend_modules(fn) for fn in ext.depends]
+        exts.append(Extension('distutils2._backport._sha256',
+                              ['distutils2/_backport/sha256module.c']))
+        exts.append(Extension('distutils2._backport._sha512',
+                              ['distutils2/_backport/sha512module.c']))
 
     return exts
 
diff --git a/src/tests.sh b/src/tests.sh
--- a/src/tests.sh
+++ b/src/tests.sh
@@ -1,11 +1,11 @@
 #!/bin/sh
 echo -n "Running tests for Python 2.4... "
-rm -f _hashlib.so
+rm -f distutils2/_backport/_hashlib.so
 python2.4 setup.py build_ext -q 2> /dev/null > /dev/null
 python2.4 -Wd runtests.py -q 2> /dev/null
 if [ $? -ne 0 ];then
     echo "Failed"
-    rm -f _hashlib.so
+    rm -f distutils2/_backport/_hashlib.so
     exit 1
 else
     echo "Success"

--
Repository URL: http://hg.python.org/distutils2


More information about the Python-checkins mailing list