Note: I'm merging these changes out of consistency, but they don't seem

to be needed in py3k (except perhaps for non-utf8 paths).


Merged revisions 77466-77467 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r77466 | antoine.pitrou | 2010-01-13 12:47:49 +0100 (mer., 13 janv. 2010) | 5 lines

  Issue #7661: Allow ctypes to be built from a non-ASCII directory path.
  Patch by Florent Xicluna.
........
  r77467 | antoine.pitrou | 2010-01-13 12:57:42 +0100 (mer., 13 janv. 2010) | 3 lines

  Use `with`
........
This commit is contained in:
Antoine Pitrou 2010-01-13 12:04:20 +00:00
parent aa92589c4d
commit 72f4d646f5
2 changed files with 6 additions and 11 deletions

View File

@ -28,8 +28,6 @@ ffi_platforms = {
'PA_HPUX': ['src/pa/hpux32.S', 'src/pa/ffi.c'], 'PA_HPUX': ['src/pa/hpux32.S', 'src/pa/ffi.c'],
} }
ffi_srcdir = '@srcdir@'
ffi_sources += ffi_platforms['@TARGET@'] ffi_sources += ffi_platforms['@TARGET@']
ffi_sources = [os.path.join('@srcdir@', f) for f in ffi_sources]
ffi_cflags = '@CFLAGS@' ffi_cflags = '@CFLAGS@'

View File

@ -1498,22 +1498,19 @@ class PyBuildExt(build_ext):
return False return False
fficonfig = {} fficonfig = {}
fp = open(ffi_configfile) with open(ffi_configfile) as f:
try: exec(f.read(), globals(), fficonfig)
script = fp.read()
finally:
fp.close()
exec(script, globals(), fficonfig)
ffi_srcdir = os.path.join(fficonfig['ffi_srcdir'], 'src')
# Add .S (preprocessed assembly) to C compiler source extensions. # Add .S (preprocessed assembly) to C compiler source extensions.
self.compiler_obj.src_extensions.append('.S') self.compiler_obj.src_extensions.append('.S')
include_dirs = [os.path.join(ffi_builddir, 'include'), include_dirs = [os.path.join(ffi_builddir, 'include'),
ffi_builddir, ffi_srcdir] ffi_builddir,
os.path.join(ffi_srcdir, 'src')]
extra_compile_args = fficonfig['ffi_cflags'].split() extra_compile_args = fficonfig['ffi_cflags'].split()
ext.sources.extend(fficonfig['ffi_sources']) ext.sources.extend(os.path.join(ffi_srcdir, f) for f in
fficonfig['ffi_sources'])
ext.include_dirs.extend(include_dirs) ext.include_dirs.extend(include_dirs)
ext.extra_compile_args.extend(extra_compile_args) ext.extra_compile_args.extend(extra_compile_args)
return True return True