diff options
author | Jesus Cea <jcea@jcea.es> | 2012-10-04 15:14:56 +0200 |
---|---|---|
committer | Jesus Cea <jcea@jcea.es> | 2012-10-04 15:14:56 +0200 |
commit | debda5d4e23d6ab18175995dbce4afba55f0baff (patch) | |
tree | 2d276b2ab63310226ef4ea37a7b2580a9380db97 | |
parent | 3e94e14a6829070d23a4dbb6d19aaea3a9e5003c (diff) | |
download | cpython-git-debda5d4e23d6ab18175995dbce4afba55f0baff.tar.gz |
Closes #16112: platform.architecture does not correctly escape argument to /usr/bin/file. Solve a 2.7 bootstrap issue
-rwxr-xr-x | Lib/platform.py | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/Lib/platform.py b/Lib/platform.py index e94a32aab7..d177499573 100755 --- a/Lib/platform.py +++ b/Lib/platform.py @@ -113,7 +113,7 @@ __copyright__ = """ __version__ = '1.0.7' -import sys,string,os,re,subprocess +import sys,string,os,re ### Globals & Constants @@ -1020,6 +1020,26 @@ def _syscmd_file(target,default=''): case the command should fail. """ + + # We do the import here to avoid a bootstrap issue. + # See c73b90b6dadd changeset. + # + # [..] + # ranlib libpython2.7.a + # gcc -o python \ + # Modules/python.o \ + # libpython2.7.a -lsocket -lnsl -ldl -lm + # Traceback (most recent call last): + # File "./setup.py", line 8, in <module> + # from platform import machine as platform_machine + # File "[..]/build/Lib/platform.py", line 116, in <module> + # import sys,string,os,re,subprocess + # File "[..]/build/Lib/subprocess.py", line 429, in <module> + # import select + # ImportError: No module named select + + import subprocess + if sys.platform in ('dos','win32','win16','os2'): # XXX Others too ? return default |