Standardized whitespace around function calls.

This commit is contained in:
Greg Ward 2000-09-30 18:27:54 +00:00
parent 963cd2d85d
commit cb1f4c4d33
14 changed files with 338 additions and 339 deletions

View File

@ -132,7 +132,7 @@ class bdist (Command):
# keep its temporary files around so subsequent runs go faster.
if cmd_name in commands[i+1:]:
sub_cmd.keep_temp = 1
self.run_command (cmd_name)
self.run_command(cmd_name)
# run()

View File

@ -71,24 +71,24 @@ class bdist_dumb (Command):
def run (self):
self.run_command ('build')
self.run_command('build')
install = self.reinitialize_command('install', reinit_subcommands=1)
install.root = self.bdist_dir
self.announce ("installing to %s" % self.bdist_dir)
self.announce("installing to %s" % self.bdist_dir)
self.run_command('install')
# And make an archive relative to the root of the
# pseudo-installation tree.
archive_basename = "%s.%s" % (self.distribution.get_fullname(),
self.plat_name)
self.make_archive (os.path.join(self.dist_dir, archive_basename),
self.format,
root_dir=self.bdist_dir)
self.make_archive(os.path.join(self.dist_dir, archive_basename),
self.format,
root_dir=self.bdist_dir)
if not self.keep_temp:
remove_tree (self.bdist_dir, self.verbose, self.dry_run)
remove_tree(self.bdist_dir, self.verbose, self.dry_run)
# run()

View File

@ -258,7 +258,7 @@ class bdist_rpm (Command):
# Make a source distribution and copy to SOURCES directory with
# optional icon.
sdist = self.reinitialize_command ('sdist')
sdist = self.reinitialize_command('sdist')
if self.use_bzip2:
sdist.formats = ['bztar']
else:

View File

@ -56,8 +56,8 @@ class bdist_wininst (Command):
if self.distribution.has_ext_modules():
short_version = sys.version[:3]
if self.target_version and self.target_version != short_version:
raise DistutilsOptionError ("target version can only be" +
short_version)
raise DistutilsOptionError, \
"target version can only be" + short_version
self.target_version = short_version
self.set_undefined_options('bdist', ('dist_dir', 'dist_dir'))
@ -73,7 +73,7 @@ class bdist_wininst (Command):
("distribution contains extensions and/or C libraries; "
"must be compiled on a Windows 32 platform")
self.run_command ('build')
self.run_command('build')
install = self.reinitialize_command('install')
install.root = self.bdist_dir
@ -91,7 +91,7 @@ class bdist_wininst (Command):
install_lib.ensure_finalized()
self.announce ("installing to %s" % self.bdist_dir)
self.announce("installing to %s" % self.bdist_dir)
install.ensure_finalized()
install.run()
@ -103,24 +103,24 @@ class bdist_wininst (Command):
# Our archive MUST be relative to sys.prefix, which is the
# same as install_purelib in the 'nt' scheme.
root_dir = os.path.normpath (install.install_purelib)
root_dir = os.path.normpath(install.install_purelib)
# Sanity check: Make sure everything is included
for key in ('purelib', 'platlib', 'headers', 'scripts', 'data'):
attrname = 'install_' + key
install_x = getattr (install, attrname)
install_x = getattr(install, attrname)
# (Use normpath so that we can string.find to look for
# subdirectories)
install_x = os.path.normpath (install_x)
if string.find (install_x, root_dir) != 0:
install_x = os.path.normpath(install_x)
if string.find(install_x, root_dir) != 0:
raise DistutilsInternalError \
("'%s' not included in install_lib" % key)
arcname = self.make_archive (archive_basename, "zip",
root_dir=root_dir)
self.create_exe (arcname, fullname)
arcname = self.make_archive(archive_basename, "zip",
root_dir=root_dir)
self.create_exe(arcname, fullname)
if not self.keep_temp:
remove_tree (self.bdist_dir, self.verbose, self.dry_run)
remove_tree(self.bdist_dir, self.verbose, self.dry_run)
# run()
@ -133,37 +133,37 @@ class bdist_wininst (Command):
# Write the [metadata] section. Values are written with
# repr()[1:-1], so they do not contain unprintable characters, and
# are not surrounded by quote chars.
lines.append ("[metadata]")
lines.append("[metadata]")
# 'info' will be displayed in the installer's dialog box,
# describing the items to be installed.
info = (metadata.long_description or '') + '\n'
for name in dir (metadata):
for name in dir(metadata):
if (name != 'long_description'):
data = getattr (metadata, name)
data = getattr(metadata, name)
if data:
info = info + ("\n %s: %s" % \
(string.capitalize (name), data))
lines.append ("%s=%s" % (name, repr (data)[1:-1]))
(string.capitalize(name), data))
lines.append("%s=%s" % (name, repr(data)[1:-1]))
# The [setup] section contains entries controlling
# the installer runtime.
lines.append ("\n[Setup]")
lines.append ("info=%s" % repr (info)[1:-1])
lines.append ("target_compile=%d" % (not self.no_target_compile))
lines.append ("target_optimize=%d" % (not self.no_target_optimize))
lines.append("\n[Setup]")
lines.append("info=%s" % repr(info)[1:-1])
lines.append("target_compile=%d" % (not self.no_target_compile))
lines.append("target_optimize=%d" % (not self.no_target_optimize))
if self.target_version:
lines.append ("target_version=%s" % self.target_version)
lines.append("target_version=%s" % self.target_version)
title = self.distribution.get_fullname()
lines.append ("title=%s" % repr (title)[1:-1])
lines.append("title=%s" % repr(title)[1:-1])
import time
import distutils
build_info = "Build %s with distutils-%s" % \
(time.ctime (time.time()), distutils.__version__)
lines.append ("build_info=%s" % build_info)
return string.join (lines, "\n")
(time.ctime(time.time()), distutils.__version__)
lines.append("build_info=%s" % build_info)
return string.join(lines, "\n")
# get_inidata()
@ -183,36 +183,36 @@ class bdist_wininst (Command):
else:
installer_name = os.path.join(self.dist_dir,
"%s.win32.exe" % fullname)
self.announce ("creating %s" % installer_name)
self.announce("creating %s" % installer_name)
file = open (installer_name, "wb")
file.write (self.get_exe_bytes ())
file.write (cfgdata)
header = struct.pack ("<ii",
0x12345679, # tag
len (cfgdata)) # length
file.write (header)
file.write (open (arcname, "rb").read())
file = open(installer_name, "wb")
file.write(self.get_exe_bytes())
file.write(cfgdata)
header = struct.pack("<ii",
0x12345679, # tag
len(cfgdata)) # length
file.write(header)
file.write(open(arcname, "rb").read())
# create_exe()
def get_exe_bytes (self):
import base64
return base64.decodestring (EXEDATA)
return base64.decodestring(EXEDATA)
# class bdist_wininst
if __name__ == '__main__':
# recreate EXEDATA from wininst.exe by rewriting this file
import re, base64
moddata = open ("bdist_wininst.py", "r").read()
exedata = open ("../../misc/wininst.exe", "rb").read()
print "wininst.exe length is %d bytes" % len (exedata)
print "wininst.exe encoded length is %d bytes" % len (base64.encodestring (exedata))
exp = re.compile ('EXE'+'DATA = """\\\\(\n.*)*\n"""', re.M)
data = exp.sub ('EXE' + 'DATA = """\\\\\n%s"""' %
base64.encodestring (exedata), moddata)
open ("bdist_wininst.py", "w").write (data)
moddata = open("bdist_wininst.py", "r").read()
exedata = open("../../misc/wininst.exe", "rb").read()
print "wininst.exe length is %d bytes" % len(exedata)
print "wininst.exe encoded length is %d bytes" % len(base64.encodestring(exedata))
exp = re.compile('EXE'+'DATA = """\\\\(\n.*)*\n"""', re.M)
data = exp.sub('EXE' + 'DATA = """\\\\\n%s"""' %
base64.encodestring(exedata), moddata)
open("bdist_wininst.py", "w").write(data)
print "bdist_wininst.py recreated"
EXEDATA = """\

View File

@ -70,10 +70,10 @@ class build (Command):
# 'lib.<plat>' under the base build directory. We only use one of
# them for a given distribution, though --
if self.build_purelib is None:
self.build_purelib = os.path.join (self.build_base, 'lib')
self.build_purelib = os.path.join(self.build_base, 'lib')
if self.build_platlib is None:
self.build_platlib = os.path.join (self.build_base,
'lib' + plat_specifier)
self.build_platlib = os.path.join(self.build_base,
'lib' + plat_specifier)
# 'build_lib' is the actual directory that we will use for this
# particular module distribution -- if user didn't supply it, pick
@ -87,10 +87,10 @@ class build (Command):
# 'build_temp' -- temporary directory for compiler turds,
# "build/temp.<plat>"
if self.build_temp is None:
self.build_temp = os.path.join (self.build_base,
'temp' + plat_specifier)
self.build_temp = os.path.join(self.build_base,
'temp' + plat_specifier)
if self.build_scripts is None:
self.build_scripts = os.path.join (self.build_base, 'scripts')
self.build_scripts = os.path.join(self.build_base, 'scripts')
# finalize_options ()

View File

@ -80,22 +80,22 @@ class build_clib (Command):
# I think that C libraries are really just temporary build
# by-products, at least from the point of view of building Python
# extensions -- but I want to keep my options open.
self.set_undefined_options ('build',
('build_temp', 'build_clib'),
('build_temp', 'build_temp'),
('compiler', 'compiler'),
('debug', 'debug'),
('force', 'force'))
self.set_undefined_options('build',
('build_temp', 'build_clib'),
('build_temp', 'build_temp'),
('compiler', 'compiler'),
('debug', 'debug'),
('force', 'force'))
self.libraries = self.distribution.libraries
if self.libraries:
self.check_library_list (self.libraries)
self.check_library_list(self.libraries)
if self.include_dirs is None:
self.include_dirs = self.distribution.include_dirs or []
if type (self.include_dirs) is StringType:
self.include_dirs = string.split (self.include_dirs,
os.pathsep)
if type(self.include_dirs) is StringType:
self.include_dirs = string.split(self.include_dirs,
os.pathsep)
# XXX same as for build_ext -- what about 'self.define' and
# 'self.undef' ?
@ -110,23 +110,23 @@ class build_clib (Command):
# Yech -- this is cut 'n pasted from build_ext.py!
from distutils.ccompiler import new_compiler
self.compiler = new_compiler (compiler=self.compiler,
verbose=self.verbose,
dry_run=self.dry_run,
force=self.force)
self.compiler = new_compiler(compiler=self.compiler,
verbose=self.verbose,
dry_run=self.dry_run,
force=self.force)
customize_compiler(self.compiler)
if self.include_dirs is not None:
self.compiler.set_include_dirs (self.include_dirs)
self.compiler.set_include_dirs(self.include_dirs)
if self.define is not None:
# 'define' option is a list of (name,value) tuples
for (name,value) in self.define:
self.compiler.define_macro (name, value)
self.compiler.define_macro(name, value)
if self.undef is not None:
for macro in self.undef:
self.compiler.undefine_macro (macro)
self.compiler.undefine_macro(macro)
self.build_libraries (self.libraries)
self.build_libraries(self.libraries)
# run()
@ -141,16 +141,16 @@ class build_clib (Command):
# Yechh, blecch, ackk: this is ripped straight out of build_ext.py,
# with only names changed to protect the innocent!
if type (libraries) is not ListType:
if type(libraries) is not ListType:
raise DistutilsSetupError, \
"'libraries' option must be a list of tuples"
for lib in libraries:
if type (lib) is not TupleType and len (lib) != 2:
if type(lib) is not TupleType and len(lib) != 2:
raise DistutilsSetupError, \
"each element of 'libraries' must a 2-tuple"
if type (lib[0]) is not StringType:
if type(lib[0]) is not StringType:
raise DistutilsSetupError, \
"first element of each tuple in 'libraries' " + \
"must be a string (the library name)"
@ -160,7 +160,7 @@ class build_clib (Command):
"may not contain directory separators") % \
lib[0]
if type (lib[1]) is not DictionaryType:
if type(lib[1]) is not DictionaryType:
raise DistutilsSetupError, \
"second element of each tuple in 'libraries' " + \
"must be a dictionary (build info)"
@ -178,7 +178,7 @@ class build_clib (Command):
lib_names = []
for (lib_name, build_info) in self.libraries:
lib_names.append (lib_name)
lib_names.append(lib_name)
return lib_names
# get_library_names ()
@ -189,33 +189,33 @@ class build_clib (Command):
compiler = self.compiler
for (lib_name, build_info) in libraries:
sources = build_info.get ('sources')
if sources is None or type (sources) not in (ListType, TupleType):
sources = build_info.get('sources')
if sources is None or type(sources) not in (ListType, TupleType):
raise DistutilsSetupError, \
("in 'libraries' option (library '%s'), " +
"'sources' must be present and must be " +
"a list of source filenames") % lib_name
sources = list (sources)
sources = list(sources)
self.announce ("building '%s' library" % lib_name)
self.announce("building '%s' library" % lib_name)
# First, compile the source code to object files in the library
# directory. (This should probably change to putting object
# files in a temporary build directory.)
macros = build_info.get ('macros')
include_dirs = build_info.get ('include_dirs')
objects = self.compiler.compile (sources,
output_dir=self.build_temp,
macros=macros,
include_dirs=include_dirs,
debug=self.debug)
macros = build_info.get('macros')
include_dirs = build_info.get('include_dirs')
objects = self.compiler.compile(sources,
output_dir=self.build_temp,
macros=macros,
include_dirs=include_dirs,
debug=self.debug)
# Now "link" the object files together into a static library.
# (On Unix at least, this isn't really linking -- it just
# builds an archive. Whatever.)
self.compiler.create_static_lib (objects, lib_name,
output_dir=self.build_clib,
debug=self.debug)
self.compiler.create_static_lib(objects, lib_name,
output_dir=self.build_clib,
debug=self.debug)
# for libraries

View File

@ -112,12 +112,12 @@ class build_ext (Command):
def finalize_options (self):
from distutils import sysconfig
self.set_undefined_options ('build',
('build_lib', 'build_lib'),
('build_temp', 'build_temp'),
('compiler', 'compiler'),
('debug', 'debug'),
('force', 'force'))
self.set_undefined_options('build',
('build_lib', 'build_lib'),
('build_temp', 'build_temp'),
('compiler', 'compiler'),
('debug', 'debug'),
('force', 'force'))
if self.package is None:
self.package = self.distribution.ext_package
@ -131,17 +131,16 @@ class build_ext (Command):
plat_py_include = sysconfig.get_python_inc(plat_specific=1)
if self.include_dirs is None:
self.include_dirs = self.distribution.include_dirs or []
if type (self.include_dirs) is StringType:
self.include_dirs = string.split (self.include_dirs,
os.pathsep)
if type(self.include_dirs) is StringType:
self.include_dirs = string.split(self.include_dirs, os.pathsep)
# Put the Python "system" include dir at the end, so that
# any local include dirs take precedence.
self.include_dirs.append (py_include)
self.include_dirs.append(py_include)
if plat_py_include != py_include:
self.include_dirs.append (plat_py_include)
self.include_dirs.append(plat_py_include)
if type (self.libraries) is StringType:
if type(self.libraries) is StringType:
self.libraries = [self.libraries]
# Life is easier if we're not forever checking for None, so
@ -157,11 +156,11 @@ class build_ext (Command):
# for Release and Debug builds.
# also Python's library directory must be appended to library_dirs
if os.name == 'nt':
self.library_dirs.append (os.path.join(sys.exec_prefix, 'libs'))
self.library_dirs.append(os.path.join(sys.exec_prefix, 'libs'))
if self.debug:
self.build_temp = os.path.join (self.build_temp, "Debug")
self.build_temp = os.path.join(self.build_temp, "Debug")
else:
self.build_temp = os.path.join (self.build_temp, "Release")
self.build_temp = os.path.join(self.build_temp, "Release")
# finalize_options ()
@ -188,16 +187,16 @@ class build_ext (Command):
# directory where we put them is in the library search path for
# linking extensions.
if self.distribution.has_c_libraries():
build_clib = self.get_finalized_command ('build_clib')
self.libraries.extend (build_clib.get_library_names() or [])
self.library_dirs.append (build_clib.build_clib)
build_clib = self.get_finalized_command('build_clib')
self.libraries.extend(build_clib.get_library_names() or [])
self.library_dirs.append(build_clib.build_clib)
# Setup the CCompiler object that we'll use to do all the
# compiling and linking
self.compiler = new_compiler (compiler=self.compiler,
verbose=self.verbose,
dry_run=self.dry_run,
force=self.force)
self.compiler = new_compiler(compiler=self.compiler,
verbose=self.verbose,
dry_run=self.dry_run,
force=self.force)
customize_compiler(self.compiler)
# And make sure that any compile/link-related options (which might
@ -205,25 +204,25 @@ class build_ext (Command):
# that CCompiler object -- that way, they automatically apply to
# all compiling and linking done here.
if self.include_dirs is not None:
self.compiler.set_include_dirs (self.include_dirs)
self.compiler.set_include_dirs(self.include_dirs)
if self.define is not None:
# 'define' option is a list of (name,value) tuples
for (name,value) in self.define:
self.compiler.define_macro (name, value)
self.compiler.define_macro(name, value)
if self.undef is not None:
for macro in self.undef:
self.compiler.undefine_macro (macro)
self.compiler.undefine_macro(macro)
if self.libraries is not None:
self.compiler.set_libraries (self.libraries)
self.compiler.set_libraries(self.libraries)
if self.library_dirs is not None:
self.compiler.set_library_dirs (self.library_dirs)
self.compiler.set_library_dirs(self.library_dirs)
if self.rpath is not None:
self.compiler.set_runtime_library_dirs (self.rpath)
self.compiler.set_runtime_library_dirs(self.rpath)
if self.link_objects is not None:
self.compiler.set_link_objects (self.link_objects)
self.compiler.set_link_objects(self.link_objects)
# Now actually compile and link everything.
self.build_extensions ()
self.build_extensions()
# run ()
@ -320,7 +319,7 @@ class build_ext (Command):
# Wouldn't it be neat if we knew the names of header files too...
for ext in self.extensions:
filenames.extend (ext.sources)
filenames.extend(ext.sources)
return filenames
@ -330,16 +329,16 @@ class build_ext (Command):
# Sanity check the 'extensions' list -- can't assume this is being
# done in the same run as a 'build_extensions()' call (in fact, we
# can probably assume that it *isn't*!).
self.check_extensions_list (self.extensions)
self.check_extensions_list(self.extensions)
# And build the list of output (built) filenames. Note that this
# ignores the 'inplace' flag, and assumes everything goes in the
# "build" tree.
outputs = []
for ext in self.extensions:
fullname = self.get_ext_fullname (ext.name)
outputs.append (os.path.join (self.build_lib,
self.get_ext_filename(fullname)))
fullname = self.get_ext_fullname(ext.name)
outputs.append(os.path.join(self.build_lib,
self.get_ext_filename(fullname)))
return outputs
# get_outputs ()
@ -348,40 +347,40 @@ class build_ext (Command):
def build_extensions (self):
# First, sanity-check the 'extensions' list
self.check_extensions_list (self.extensions)
self.check_extensions_list(self.extensions)
for ext in self.extensions:
sources = ext.sources
if sources is None or type (sources) not in (ListType, TupleType):
if sources is None or type(sources) not in (ListType, TupleType):
raise DistutilsSetupError, \
("in 'ext_modules' option (extension '%s'), " +
"'sources' must be present and must be " +
"a list of source filenames") % ext.name
sources = list (sources)
sources = list(sources)
fullname = self.get_ext_fullname (ext.name)
fullname = self.get_ext_fullname(ext.name)
if self.inplace:
# ignore build-lib -- put the compiled extension into
# the source tree along with pure Python modules
modpath = string.split (fullname, '.')
package = string.join (modpath[0:-1], '.')
modpath = string.split(fullname, '.')
package = string.join(modpath[0:-1], '.')
base = modpath[-1]
build_py = self.get_finalized_command ('build_py')
package_dir = build_py.get_package_dir (package)
ext_filename = os.path.join (package_dir,
self.get_ext_filename(base))
build_py = self.get_finalized_command('build_py')
package_dir = build_py.get_package_dir(package)
ext_filename = os.path.join(package_dir,
self.get_ext_filename(base))
else:
ext_filename = os.path.join (self.build_lib,
self.get_ext_filename(fullname))
ext_filename = os.path.join(self.build_lib,
self.get_ext_filename(fullname))
if not (self.force or newer_group(sources, ext_filename, 'newer')):
self.announce ("skipping '%s' extension (up-to-date)" %
ext.name)
self.announce("skipping '%s' extension (up-to-date)" %
ext.name)
continue # 'for' loop over all extensions
else:
self.announce ("building '%s' extension" % ext.name)
self.announce("building '%s' extension" % ext.name)
# First, scan the sources for SWIG definition files (.i), run
# SWIG on 'em to create .c files, and modify the sources list
@ -416,22 +415,22 @@ class build_ext (Command):
if os.environ.has_key('CFLAGS'):
extra_args.extend(string.split(os.environ['CFLAGS']))
objects = self.compiler.compile (sources,
output_dir=self.build_temp,
macros=macros,
include_dirs=ext.include_dirs,
debug=self.debug,
extra_postargs=extra_args)
objects = self.compiler.compile(sources,
output_dir=self.build_temp,
macros=macros,
include_dirs=ext.include_dirs,
debug=self.debug,
extra_postargs=extra_args)
# Now link the object files together into a "shared object" --
# of course, first we have to figure out all the other things
# that go into the mix.
if ext.extra_objects:
objects.extend (ext.extra_objects)
objects.extend(ext.extra_objects)
extra_args = ext.extra_link_args or []
self.compiler.link_shared_object (
self.compiler.link_shared_object(
objects, ext_filename,
libraries=self.get_libraries(ext),
library_dirs=ext.library_dirs,
@ -481,11 +480,11 @@ class build_ext (Command):
swig = self.find_swig()
swig_cmd = [swig, "-python", "-dnone", "-ISWIG"]
if self.swig_cpp:
swig_cmd.append ("-c++")
swig_cmd.append("-c++")
for source in swig_sources:
target = swig_targets[source]
self.announce ("swigging %s to %s" % (source, target))
self.announce("swigging %s to %s" % (source, target))
self.spawn(swig_cmd + ["-o", target, source])
return new_sources
@ -507,7 +506,7 @@ class build_ext (Command):
# if not, act like Unix and assume it's in the PATH.
for vers in ("1.3", "1.2", "1.1"):
fn = os.path.join("c:\\swig%s" % vers, "swig.exe")
if os.path.isfile (fn):
if os.path.isfile(fn):
return fn
else:
return "swig.exe"
@ -535,12 +534,12 @@ class build_ext (Command):
"""
from distutils.sysconfig import get_config_var
ext_path = string.split (ext_name, '.')
ext_path = string.split(ext_name, '.')
# extensions in debug_mode are named 'module_d.pyd' under windows
so_ext = get_config_var('SO')
if os.name == 'nt' and self.debug:
return apply (os.path.join, ext_path) + '_d' + so_ext
return apply (os.path.join, ext_path) + so_ext
return apply(os.path.join, ext_path) + '_d' + so_ext
return apply(os.path.join, ext_path) + so_ext
def get_export_symbols (self, ext):
"""Return the list of symbols that a shared extension has to

View File

@ -34,9 +34,9 @@ class build_py (Command):
self.force = None
def finalize_options (self):
self.set_undefined_options ('build',
('build_lib', 'build_lib'),
('force', 'force'))
self.set_undefined_options('build',
('build_lib', 'build_lib'),
('force', 'force'))
# Get the distribution options that are aliases for build_py
# options -- list of packages and list of modules.
@ -83,9 +83,9 @@ class build_py (Command):
# Now we're down to two cases: 'py_modules' only and 'packages' only.
if self.py_modules:
self.build_modules ()
self.build_modules()
else:
self.build_packages ()
self.build_packages()
# run ()
@ -95,24 +95,24 @@ class build_py (Command):
distribution, where package 'package' should be found
(at least according to the 'package_dir' option, if any)."""
path = string.split (package, '.')
path = string.split(package, '.')
if not self.package_dir:
if path:
return apply (os.path.join, path)
return apply(os.path.join, path)
else:
return ''
else:
tail = []
while path:
try:
pdir = self.package_dir[string.join (path, '.')]
pdir = self.package_dir[string.join(path, '.')]
except KeyError:
tail.insert (0, path[-1])
tail.insert(0, path[-1])
del path[-1]
else:
tail.insert (0, pdir)
return apply (os.path.join, tail)
tail.insert(0, pdir)
return apply(os.path.join, tail)
else:
# Oops, got all the way through 'path' without finding a
# match in package_dir. If package_dir defines a directory
@ -126,7 +126,7 @@ class build_py (Command):
tail.insert(0, pdir)
if tail:
return apply (os.path.join, tail)
return apply(os.path.join, tail)
else:
return ''
@ -140,22 +140,22 @@ class build_py (Command):
# my "empty string means current dir" convention, so we have to
# circumvent them.
if package_dir != "":
if not os.path.exists (package_dir):
if not os.path.exists(package_dir):
raise DistutilsFileError, \
"package directory '%s' does not exist" % package_dir
if not os.path.isdir (package_dir):
if not os.path.isdir(package_dir):
raise DistutilsFileError, \
("supposed package directory '%s' exists, " +
"but is not a directory") % package_dir
# Require __init__.py for all but the "root package"
if package:
init_py = os.path.join (package_dir, "__init__.py")
if os.path.isfile (init_py):
init_py = os.path.join(package_dir, "__init__.py")
if os.path.isfile(init_py):
return init_py
else:
self.warn (("package init file '%s' not found " +
"(or not a regular file)") % init_py)
self.warn(("package init file '%s' not found " +
"(or not a regular file)") % init_py)
# Either not in a package at all (__init__.py not expected), or
# __init__.py doesn't exist -- so don't return the filename.
@ -165,9 +165,9 @@ class build_py (Command):
def check_module (self, module, module_file):
if not os.path.isfile (module_file):
self.warn ("file %s (for module %s) not found" %
(module_file, module))
if not os.path.isfile(module_file):
self.warn("file %s (for module %s) not found" %
(module_file, module))
return 0
else:
return 1
@ -176,16 +176,16 @@ class build_py (Command):
def find_package_modules (self, package, package_dir):
self.check_package (package, package_dir)
module_files = glob (os.path.join (package_dir, "*.py"))
self.check_package(package, package_dir)
module_files = glob(os.path.join(package_dir, "*.py"))
modules = []
setup_script = os.path.abspath(self.distribution.script_name)
for f in module_files:
abs_f = os.path.abspath (f)
abs_f = os.path.abspath(f)
if abs_f != setup_script:
module = os.path.splitext (os.path.basename (f))[0]
modules.append ((package, module, f))
module = os.path.splitext(os.path.basename(f))[0]
modules.append((package, module, f))
else:
self.debug_print("excluding %s" % setup_script)
return modules
@ -218,18 +218,18 @@ class build_py (Command):
# - don't check for __init__.py in directory for empty package
for module in self.py_modules:
path = string.split (module, '.')
path = string.split(module, '.')
package = string.join(path[0:-1], '.')
module_base = path[-1]
try:
(package_dir, checked) = packages[package]
except KeyError:
package_dir = self.get_package_dir (package)
package_dir = self.get_package_dir(package)
checked = 0
if not checked:
init_py = self.check_package (package, package_dir)
init_py = self.check_package(package, package_dir)
packages[package] = (package_dir, 1)
if init_py:
modules.append((package, "__init__", init_py))
@ -237,11 +237,11 @@ class build_py (Command):
# XXX perhaps we should also check for just .pyc files
# (so greedy closed-source bastards can distribute Python
# modules too)
module_file = os.path.join (package_dir, module_base + ".py")
if not self.check_module (module, module_file):
module_file = os.path.join(package_dir, module_base + ".py")
if not self.check_module(module, module_file):
continue
modules.append ((package, module_base, module_file))
modules.append((package, module_base, module_file))
return modules
@ -256,13 +256,13 @@ class build_py (Command):
'find_package_modules()' do."""
if self.py_modules:
modules = self.find_modules ()
modules = self.find_modules()
else:
modules = []
for package in self.packages:
package_dir = self.get_package_dir (package)
m = self.find_package_modules (package, package_dir)
modules.extend (m)
package_dir = self.get_package_dir(package)
m = self.find_package_modules(package, package_dir)
modules.extend(m)
return modules
@ -271,43 +271,43 @@ class build_py (Command):
def get_source_files (self):
modules = self.find_all_modules ()
modules = self.find_all_modules()
filenames = []
for module in modules:
filenames.append (module[-1])
filenames.append(module[-1])
return filenames
def get_module_outfile (self, build_dir, package, module):
outfile_path = [build_dir] + list(package) + [module + ".py"]
return apply (os.path.join, outfile_path)
return apply(os.path.join, outfile_path)
def get_outputs (self):
modules = self.find_all_modules ()
modules = self.find_all_modules()
outputs = []
for (package, module, module_file) in modules:
package = string.split (package, '.')
outputs.append (self.get_module_outfile (self.build_lib,
package, module))
package = string.split(package, '.')
outputs.append(self.get_module_outfile(self.build_lib,
package, module))
return outputs
def build_module (self, module, module_file, package):
if type (package) is StringType:
package = string.split (package, '.')
elif type (package) not in (ListType, TupleType):
if type(package) is StringType:
package = string.split(package, '.')
elif type(package) not in (ListType, TupleType):
raise TypeError, \
"'package' must be a string (dot-separated), list, or tuple"
# Now put the module source file into the "build" area -- this is
# easy, we just copy it somewhere under self.build_lib (the build
# directory for Python source).
outfile = self.get_module_outfile (self.build_lib, package, module)
dir = os.path.dirname (outfile)
self.mkpath (dir)
return self.copy_file (module_file, outfile, preserve_mode=0)
outfile = self.get_module_outfile(self.build_lib, package, module)
dir = os.path.dirname(outfile)
self.mkpath(dir)
return self.copy_file(module_file, outfile, preserve_mode=0)
def build_modules (self):
@ -319,7 +319,7 @@ class build_py (Command):
# self.build_lib (the build directory for Python source).
# (Actually, it gets copied to the directory for this package
# under self.build_lib.)
self.build_module (module, module_file, package)
self.build_module(module, module_file, package)
# build_modules ()
@ -337,14 +337,14 @@ class build_py (Command):
# already know its package!), and 'module_file' is the path to
# the .py file, relative to the current directory
# (ie. including 'package_dir').
package_dir = self.get_package_dir (package)
modules = self.find_package_modules (package, package_dir)
package_dir = self.get_package_dir(package)
modules = self.find_package_modules(package, package_dir)
# Now loop over the modules we found, "building" each one (just
# copy it to self.build_lib).
for (package_, module, module_file) in modules:
assert package == package_
self.build_module (module, module_file, package)
self.build_module(module, module_file, package)
# build_packages ()

View File

@ -32,9 +32,9 @@ class build_scripts (Command):
self.outfiles = None
def finalize_options (self):
self.set_undefined_options ('build',
('build_scripts', 'build_dir'),
('force', 'force'))
self.set_undefined_options('build',
('build_scripts', 'build_dir'),
('force', 'force'))
self.scripts = self.distribution.scripts

View File

@ -50,29 +50,29 @@ class clean (Command):
def run(self):
# remove the build/temp.<plat> directory (unless it's already
# gone)
if os.path.exists (self.build_temp):
remove_tree (self.build_temp, self.verbose, self.dry_run)
if os.path.exists(self.build_temp):
remove_tree(self.build_temp, self.verbose, self.dry_run)
else:
self.warn ("'%s' does not exist -- can't clean it" %
self.build_temp)
self.warn("'%s' does not exist -- can't clean it" %
self.build_temp)
if self.all:
# remove build directories
for directory in (self.build_lib,
self.bdist_base,
self.build_scripts):
if os.path.exists (directory):
remove_tree (directory, self.verbose, self.dry_run)
if os.path.exists(directory):
remove_tree(directory, self.verbose, self.dry_run)
else:
self.warn ("'%s' does not exist -- can't clean it" %
directory)
self.warn("'%s' does not exist -- can't clean it" %
directory)
# just for the heck of it, try to remove the base build directory:
# we might have emptied it right now, but if not we don't care
if not self.dry_run:
try:
os.rmdir (self.build_base)
self.announce ("removing '%s'" % self.build_base)
os.rmdir(self.build_base)
self.announce("removing '%s'" % self.build_base)
except OSError:
pass

View File

@ -87,10 +87,10 @@ class config (Command):
# import.
from distutils.ccompiler import CCompiler, new_compiler
if not isinstance(self.compiler, CCompiler):
self.compiler = new_compiler (compiler=self.compiler,
verbose=self.noisy,
dry_run=self.dry_run,
force=1)
self.compiler = new_compiler(compiler=self.compiler,
verbose=self.noisy,
dry_run=self.dry_run,
force=1)
if self.include_dirs:
self.compiler.set_include_dirs(self.include_dirs)
if self.libraries:

View File

@ -210,10 +210,10 @@ class install (Command):
"not both")
else:
if self.exec_prefix:
self.warn ("exec-prefix option ignored on this platform")
self.warn("exec-prefix option ignored on this platform")
self.exec_prefix = None
if self.home:
self.warn ("home option ignored on this platform")
self.warn("home option ignored on this platform")
self.home = None
# Now the interesting logic -- so interesting that we farm it out
@ -224,14 +224,14 @@ class install (Command):
# install_{purelib,platlib,lib,scripts,data,...}, and the
# INSTALL_SCHEME dictionary above. Phew!
self.dump_dirs ("pre-finalize_{unix,other}")
self.dump_dirs("pre-finalize_{unix,other}")
if os.name == 'posix':
self.finalize_unix ()
self.finalize_unix()
else:
self.finalize_other ()
self.finalize_other()
self.dump_dirs ("post-finalize_{unix,other}()")
self.dump_dirs("post-finalize_{unix,other}()")
# Expand configuration variables, tilde, etc. in self.install_base
# and self.install_platbase -- that way, we can use $base or
@ -250,9 +250,9 @@ class install (Command):
'sys_exec_prefix': exec_prefix,
'exec_prefix': exec_prefix,
}
self.expand_basedirs ()
self.expand_basedirs()
self.dump_dirs ("post-expand_basedirs()")
self.dump_dirs("post-expand_basedirs()")
# Now define config vars for the base directories so we can expand
# everything else.
@ -262,13 +262,13 @@ class install (Command):
if DEBUG:
from pprint import pprint
print "config vars:"
pprint (self.config_vars)
pprint(self.config_vars)
# Expand "~" and configuration variables in the installation
# directories.
self.expand_dirs ()
self.expand_dirs()
self.dump_dirs ("post-expand_dirs()")
self.dump_dirs("post-expand_dirs()")
# Pick the actual directory to install all modules to: either
# install_purelib or install_platlib, depending on whether this
@ -290,9 +290,9 @@ class install (Command):
# have to deal with 'extra_path', which is the hack for allowing
# non-packagized module distributions (hello, Numerical Python!) to
# get their own directories.
self.handle_extra_path ()
self.handle_extra_path()
self.install_libbase = self.install_lib # needed for .pth file
self.install_lib = os.path.join (self.install_lib, self.extra_dirs)
self.install_lib = os.path.join(self.install_lib, self.extra_dirs)
# If a new root directory was supplied, make all the installation
# dirs relative to it.
@ -300,12 +300,12 @@ class install (Command):
self.change_roots('libbase', 'lib', 'purelib', 'platlib',
'scripts', 'data', 'headers')
self.dump_dirs ("after prepending root")
self.dump_dirs("after prepending root")
# Find out the build directories, ie. where to install from.
self.set_undefined_options ('build',
('build_base', 'build_base'),
('build_lib', 'build_lib'))
self.set_undefined_options('build',
('build_base', 'build_base'),
('build_lib', 'build_lib'))
# Punt on doc directories for now -- after all, we're punting on
# documentation completely!
@ -321,8 +321,8 @@ class install (Command):
opt_name = opt[0]
if opt_name[-1] == "=":
opt_name = opt_name[0:-1]
opt_name = string.translate (opt_name, longopt_xlate)
val = getattr (self, opt_name)
opt_name = string.translate(opt_name, longopt_xlate)
val = getattr(self, opt_name)
print " %s: %s" % (opt_name, val)
@ -342,15 +342,15 @@ class install (Command):
if self.home is not None:
self.install_base = self.install_platbase = self.home
self.select_scheme ("unix_home")
self.select_scheme("unix_home")
else:
if self.prefix is None:
if self.exec_prefix is not None:
raise DistutilsOptionError, \
"must not supply exec-prefix without prefix"
self.prefix = os.path.normpath (sys.prefix)
self.exec_prefix = os.path.normpath (sys.exec_prefix)
self.prefix = os.path.normpath(sys.prefix)
self.exec_prefix = os.path.normpath(sys.exec_prefix)
else:
if self.exec_prefix is None:
@ -358,7 +358,7 @@ class install (Command):
self.install_base = self.prefix
self.install_platbase = self.exec_prefix
self.select_scheme ("unix_prefix")
self.select_scheme("unix_prefix")
# finalize_unix ()
@ -366,11 +366,11 @@ class install (Command):
def finalize_other (self): # Windows and Mac OS for now
if self.prefix is None:
self.prefix = os.path.normpath (sys.prefix)
self.prefix = os.path.normpath(sys.prefix)
self.install_base = self.install_platbase = self.prefix
try:
self.select_scheme (os.name)
self.select_scheme(os.name)
except KeyError:
raise DistutilsPlatformError, \
"I don't know how to install stuff on '%s'" % os.name
@ -389,26 +389,26 @@ class install (Command):
def _expand_attrs (self, attrs):
for attr in attrs:
val = getattr (self, attr)
val = getattr(self, attr)
if val is not None:
if os.name == 'posix':
val = os.path.expanduser (val)
val = subst_vars (val, self.config_vars)
setattr (self, attr, val)
val = os.path.expanduser(val)
val = subst_vars(val, self.config_vars)
setattr(self, attr, val)
def expand_basedirs (self):
self._expand_attrs (['install_base',
'install_platbase',
'root'])
self._expand_attrs(['install_base',
'install_platbase',
'root'])
def expand_dirs (self):
self._expand_attrs (['install_purelib',
'install_platlib',
'install_lib',
'install_headers',
'install_scripts',
'install_data',])
self._expand_attrs(['install_purelib',
'install_platlib',
'install_lib',
'install_headers',
'install_scripts',
'install_data',])
def convert_paths (self, *names):
@ -423,12 +423,12 @@ class install (Command):
self.extra_path = self.distribution.extra_path
if self.extra_path is not None:
if type (self.extra_path) is StringType:
self.extra_path = string.split (self.extra_path, ',')
if type(self.extra_path) is StringType:
self.extra_path = string.split(self.extra_path, ',')
if len (self.extra_path) == 1:
if len(self.extra_path) == 1:
path_file = extra_dirs = self.extra_path[0]
elif len (self.extra_path) == 2:
elif len(self.extra_path) == 2:
(path_file, extra_dirs) = self.extra_path
else:
raise DistutilsOptionError, \
@ -437,7 +437,7 @@ class install (Command):
# convert to local form in case Unix notation used (as it
# should be in setup scripts)
extra_dirs = convert_path (extra_dirs)
extra_dirs = convert_path(extra_dirs)
else:
path_file = None
@ -463,21 +463,21 @@ class install (Command):
# Obviously have to build before we can install
if not self.skip_build:
self.run_command ('build')
self.run_command('build')
# Run all sub-commands (at least those that need to be run)
for cmd_name in self.get_sub_commands():
self.run_command (cmd_name)
self.run_command(cmd_name)
if self.path_file:
self.create_path_file ()
self.create_path_file()
# write list of installed files, if requested.
if self.record:
outputs = self.get_outputs()
if self.root: # strip any package prefix
root_len = len(self.root)
for counter in xrange (len (outputs)):
for counter in xrange(len(outputs)):
outputs[counter] = outputs[counter][root_len:]
self.execute(write_file,
(self.record, outputs),
@ -496,12 +496,12 @@ class install (Command):
# run ()
def create_path_file (self):
filename = os.path.join (self.install_libbase,
self.path_file + ".pth")
filename = os.path.join(self.install_libbase,
self.path_file + ".pth")
if self.install_path_file:
self.execute (write_file,
(filename, [self.extra_dirs]),
"creating %s" % filename)
self.execute(write_file,
(filename, [self.extra_dirs]),
"creating %s" % filename)
else:
self.warn("path file '%s' not created" % filename)
@ -513,8 +513,8 @@ class install (Command):
# get the outputs of all its sub-commands.
outputs = []
for cmd_name in self.get_sub_commands():
cmd = self.get_finalized_command (cmd_name)
outputs.extend (cmd.get_outputs())
cmd = self.get_finalized_command(cmd_name)
outputs.extend(cmd.get_outputs())
return outputs
@ -522,8 +522,8 @@ class install (Command):
# XXX gee, this looks familiar ;-(
inputs = []
for cmd_name in self.get_sub_commands():
cmd = self.get_finalized_command (cmd_name)
inputs.extend (cmd.get_inputs())
cmd = self.get_finalized_command(cmd_name)
inputs.extend(cmd.get_inputs())
return inputs

View File

@ -33,11 +33,11 @@ class install_scripts (Command):
def finalize_options (self):
self.set_undefined_options('build', ('build_scripts', 'build_dir'))
self.set_undefined_options ('install',
('install_scripts', 'install_dir'),
('force', 'force'),
('skip_build', 'skip_build'),
)
self.set_undefined_options('install',
('install_scripts', 'install_dir'),
('force', 'force'),
('skip_build', 'skip_build'),
)
def run (self):
if not self.skip_build:

View File

@ -118,7 +118,7 @@ class sdist (Command):
"don't know how to create source distributions " + \
"on platform %s" % os.name
bad_format = archive_util.check_archive_formats (self.formats)
bad_format = archive_util.check_archive_formats(self.formats)
if bad_format:
raise DistutilsOptionError, \
"unknown archive format '%s'" % bad_format
@ -135,12 +135,12 @@ class sdist (Command):
# Ensure that all required meta-data is given; warn if not (but
# don't die, it's not *that* serious!)
self.check_metadata ()
self.check_metadata()
# Do whatever it takes to get the list of files to process
# (process the manifest template, read an existing manifest,
# whatever). File list is accumulated in 'self.filelist'.
self.get_file_list ()
self.get_file_list()
# If user just wanted us to regenerate the manifest, stop now.
if self.manifest_only:
@ -148,7 +148,7 @@ class sdist (Command):
# Otherwise, go ahead and create the source distribution tarball,
# or zipfile, or whatever.
self.make_distribution ()
self.make_distribution()
def check_metadata (self):
@ -161,25 +161,25 @@ class sdist (Command):
missing = []
for attr in ('name', 'version', 'url'):
if not (hasattr (metadata, attr) and getattr (metadata, attr)):
missing.append (attr)
if not (hasattr(metadata, attr) and getattr(metadata, attr)):
missing.append(attr)
if missing:
self.warn ("missing required meta-data: " +
string.join (missing, ", "))
self.warn("missing required meta-data: " +
string.join(missing, ", "))
if metadata.author:
if not metadata.author_email:
self.warn ("missing meta-data: if 'author' supplied, " +
"'author_email' must be supplied too")
self.warn("missing meta-data: if 'author' supplied, " +
"'author_email' must be supplied too")
elif metadata.maintainer:
if not metadata.maintainer_email:
self.warn ("missing meta-data: if 'maintainer' supplied, " +
"'maintainer_email' must be supplied too")
self.warn("missing meta-data: if 'maintainer' supplied, " +
"'maintainer_email' must be supplied too")
else:
self.warn ("missing meta-data: either (author and author_email) " +
"or (maintainer and maintainer_email) " +
"must be supplied")
self.warn("missing meta-data: either (author and author_email) " +
"or (maintainer and maintainer_email) " +
"must be supplied")
# check_metadata ()
@ -282,41 +282,41 @@ class sdist (Command):
standards = [('README', 'README.txt'), self.distribution.script_name]
for fn in standards:
if type (fn) is TupleType:
if type(fn) is TupleType:
alts = fn
got_it = 0
for fn in alts:
if os.path.exists (fn):
if os.path.exists(fn):
got_it = 1
self.filelist.append (fn)
self.filelist.append(fn)
break
if not got_it:
self.warn ("standard file not found: should have one of " +
string.join (alts, ', '))
self.warn("standard file not found: should have one of " +
string.join(alts, ', '))
else:
if os.path.exists (fn):
self.filelist.append (fn)
if os.path.exists(fn):
self.filelist.append(fn)
else:
self.warn ("standard file '%s' not found" % fn)
self.warn("standard file '%s' not found" % fn)
optional = ['test/test*.py', 'setup.cfg']
for pattern in optional:
files = filter (os.path.isfile, glob (pattern))
files = filter(os.path.isfile, glob(pattern))
if files:
self.filelist.extend (files)
self.filelist.extend(files)
if self.distribution.has_pure_modules():
build_py = self.get_finalized_command ('build_py')
self.filelist.extend (build_py.get_source_files ())
build_py = self.get_finalized_command('build_py')
self.filelist.extend(build_py.get_source_files())
if self.distribution.has_ext_modules():
build_ext = self.get_finalized_command ('build_ext')
self.filelist.extend (build_ext.get_source_files ())
build_ext = self.get_finalized_command('build_ext')
self.filelist.extend(build_ext.get_source_files())
if self.distribution.has_c_libraries():
build_clib = self.get_finalized_command ('build_clib')
self.filelist.extend (build_clib.get_source_files ())
build_clib = self.get_finalized_command('build_clib')
self.filelist.extend(build_clib.get_source_files())
# add_defaults ()
@ -329,13 +329,13 @@ class sdist (Command):
accordingly.
"""
self.announce("reading manifest template '%s'" % self.template)
template = TextFile (self.template,
strip_comments=1,
skip_blanks=1,
join_lines=1,
lstrip_ws=1,
rstrip_ws=1,
collapse_join=1)
template = TextFile(self.template,
strip_comments=1,
skip_blanks=1,
join_lines=1,
lstrip_ws=1,
rstrip_ws=1,
collapse_join=1)
while 1:
line = template.readline()
@ -386,14 +386,14 @@ class sdist (Command):
distribution.
"""
self.announce("reading manifest file '%s'" % self.manifest)
manifest = open (self.manifest)
manifest = open(self.manifest)
while 1:
line = manifest.readline ()
line = manifest.readline()
if line == '': # end of file
break
if line[-1] == '\n':
line = line[0:-1]
self.filelist.append (line)
self.filelist.append(line)
# read_manifest ()
@ -421,7 +421,7 @@ class sdist (Command):
# out-of-date, because by default we blow away 'base_dir' when
# we're done making the distribution archives.)
if hasattr (os, 'link'): # can make hard links on this system
if hasattr(os, 'link'): # can make hard links on this system
link = 'hard'
msg = "making hard links in %s..." % base_dir
else: # nope, have to copy
@ -431,13 +431,13 @@ class sdist (Command):
if not files:
self.warn("no files to distribute -- empty manifest?")
else:
self.announce (msg)
self.announce(msg)
for file in files:
if not os.path.isfile(file):
self.warn("'%s' not a regular file -- skipping" % file)
else:
dest = os.path.join (base_dir, file)
self.copy_file (file, dest, link=link)
dest = os.path.join(base_dir, file)
self.copy_file(file, dest, link=link)
# make_release_tree ()
@ -455,16 +455,16 @@ class sdist (Command):
base_dir = self.distribution.get_fullname()
base_name = os.path.join(self.dist_dir, base_dir)
self.make_release_tree (base_dir, self.filelist.files)
self.make_release_tree(base_dir, self.filelist.files)
archive_files = [] # remember names of files we create
for fmt in self.formats:
file = self.make_archive (base_name, fmt, base_dir=base_dir)
file = self.make_archive(base_name, fmt, base_dir=base_dir)
archive_files.append(file)
self.archive_files = archive_files
if not self.keep_temp:
dir_util.remove_tree (base_dir, self.verbose, self.dry_run)
dir_util.remove_tree(base_dir, self.verbose, self.dry_run)
def get_archive_files (self):
"""Return the list of archive files created when the command