4Suite API Documentation

Module Ft.Lib.DistExt

Extensions to distutils to support building, installing, packaging 4Suite
Copyright 2005 Fourthought, Inc. (USA).
Detailed license and copyright information: http://4suite.org/COPYRIGHT
Project home, documentation, distributions: http://4suite.org/
Classes:
Functions:

Modules

Main distutils extensions for generating documentation
distutils command for installing the configuration file.
distutils.command.install_egg_info
Utilities to help applications using modulefinder get all of the modules and data files used throughout 4Suite.
Data structures that are to be used in a pkg file.

Classes

class Document
An XSLT rendered document. It creates both a XML, HTML and Text version of the document (if desired)

Methods

__init__(self, source, stylesheet, params=None, title=None, category=None, flags=None, mtime=None, outfile=None)
__repr__(self)
class Executable
Just a collection of attributes that describes an executable and everything needed to build it (hopefully in a portable way, but there are hooks that let you be as unportable as you need).
Instance attributes:
  name : string
    the full name of the extension, including any packages -- ie.
    *not* a filename or pathname, but Python dotted name
  sources : [string]
    list of source filenames, relative to the distribution root
    (where the setup script lives), in Unix form (slash-separated)
    for portability.  Source files may be C, C++, SWIG (.i),
    platform-specific resource files, or whatever else is recognized
    by the "build_ext" command as source for a Python extension.
  include_dirs : [string]
    list of directories to search for C/C++ header files (in Unix
    form for portability)
  define_macros : [(name : string, value : string|None)]
    list of macros to define; each macro is defined using a 2-tuple,
    where 'value' is either the string to define it to or None to
    define it without a particular value (equivalent of "#define
    FOO" in source or -DFOO on Unix C compiler command line)
  undef_macros : [string]
    list of macros to undefine explicitly
  library_dirs : [string]
    list of directories to search for C/C++ libraries at link time
  libraries : [string]
    list of library names (not filenames or paths) to link against
  runtime_library_dirs : [string]
    list of directories to search for C/C++ libraries at run time
    (for shared extensions, this is when the extension is loaded)
  extra_objects : [string]
    list of extra files to link with (eg. object files not implied
    by 'sources', static library that must be explicitly specified,
    binary resource files, etc.)
  extra_compile_args : [string]
    any extra platform- and compiler-specific information to use
    when compiling the source files in 'sources'.  For platforms and
    compilers where "command line" makes sense, this is typically a
    list of command-line arguments, but for other platforms it could
    be anything.
  extra_link_args : [string]
    any extra platform- and compiler-specific information to use
    when linking object files together to create the extension (or
    to create a new static Python interpreter).  Similar
    interpretation as for 'extra_compile_args'.

Methods

__init__(self, name, sources, include_dirs=None, define_macros=None, undef_macros=None, library_dirs=None, libraries=None, runtime_library_dirs=None, extra_objects=None, extra_compile_args=None, extra_link_args=None)
__repr__(self)
class Extension
Just a collection of attributes that describes an extension module and everything needed to build it (hopefully in a portable way, but there are hooks that let you be as unportable as you need).
Instance attributes:
  name : string
    the full name of the extension, including any packages -- ie.
    *not* a filename or pathname, but Python dotted name
  sources : [string]
    list of source filenames, relative to the distribution root
    (where the setup script lives), in Unix form (slash-separated)
    for portability.  Source files may be C, C++, SWIG (.i),
    platform-specific resource files, or whatever else is recognized
    by the "build_ext" command as source for a Python extension.
  include_dirs : [string]
    list of directories to search for C/C++ header files (in Unix
    form for portability)
  define_macros : [(name : string, value : string|None)]
    list of macros to define; each macro is defined using a 2-tuple,
    where 'value' is either the string to define it to or None to
    define it without a particular value (equivalent of "#define
    FOO" in source or -DFOO on Unix C compiler command line)
  undef_macros : [string]
    list of macros to undefine explicitly
  library_dirs : [string]
    list of directories to search for C/C++ libraries at link time
  libraries : [string]
    list of library names (not filenames or paths) to link against
  runtime_library_dirs : [string]
    list of directories to search for C/C++ libraries at run time
    (for shared extensions, this is when the extension is loaded)
  extra_objects : [string]
    list of extra files to link with (eg. object files not implied
    by 'sources', static library that must be explicitly specified,
    binary resource files, etc.)
  extra_compile_args : [string]
    any extra platform- and compiler-specific information to use
    when compiling the source files in 'sources'.  For platforms and
    compilers where "command line" makes sense, this is typically a
    list of command-line arguments, but for other platforms it could
    be anything.
  extra_link_args : [string]
    any extra platform- and compiler-specific information to use
    when linking object files together to create the extension (or
    to create a new static Python interpreter).  Similar
    interpretation as for 'extra_compile_args'.
  export_symbols : [string]
    list of symbols to be exported from a shared extension.  Not
    used on all platforms, and not generally necessary for Python
    extensions, which typically export exactly one symbol: "init" +
    extension_name.
  depends : [string]
    list of files that the extension depends on
  language : string
    extension language (i.e. "c", "c++", "objc"). Will be detected
    from the source extensions if not provided.

Methods

__init__(self, name, sources, include_dirs=None, define_macros=None, undef_macros=None, library_dirs=None, libraries=None, runtime_library_dirs=None, extra_objects=None, extra_compile_args=None, extra_link_args=None, export_symbols=None, depends=None, language=None, **kw)
# When adding arguments to this constructor, be sure to update # setup_keywords in core.py.
class ExtensionsDocument(Ft.Lib.DistExt.Structures.GeneratedDocument)
A collection of attributes that describes a set of Python modules that implement 4Suite's XPath/XSLT extension API. Instances of File are used as members of the doc_files argument to setup().

Methods

__init__(self, name, modules, title)
__repr__(self)

Methods inherited from class Ft.Lib.DistExt.Structures.GeneratedDocument

class File
A collection of attributes that describes a file on the filesystem. Instances of File are used as members of the doc_files argument to setup().

Methods

__init__(self, source, outdir='', flags=None)
__repr__(self)
get_source_files(self)
class FileList(distutils.filelist.FileList)
Defines a collection of files.

Methods

__init__(self, dest, sources, recursive=False, excludes=None)
Overrides: __init__ from class FileList

Methods inherited from class distutils.filelist.FileList

append, debug_print, exclude_pattern, extend, findall, include_pattern, process_template_line, remove_duplicates, set_allfiles, sort
class Localization
Defines a message catalog for a particular language

Methods

__init__(self, language, source)
__repr__(self)
class ModulesDocument(Ft.Lib.DistExt.Structures.GeneratedDocument)

Methods

__init__(self, title, packages)
__repr__(self)

Methods inherited from class Ft.Lib.DistExt.Structures.GeneratedDocument

class Script

Methods

__init__(self, name, module, function=None, application=None)
__repr__(self)

Functions

EnsureVersion(version)
Checks Distutils version against specified version number
setup(**attrs)
The gateway to the Distutils: do everything your setup script needs to do, in a highly flexible and user-driven way. Briefly: create a Distribution instance; find and parse config files; parse the command line; run each Distutils command found there, customized by the options supplied to 'setup()' (as keyword arguments), in config files, and on the command line.
The Distribution instance might be an instance of a class supplied via
the 'distclass' keyword argument to 'setup'; if no such class is
supplied, then the Distribution class (in dist.py) is instantiated.
All other arguments to 'setup' (except for 'cmdclass') are used to set
attributes of the Distribution instance.

The 'cmdclass' argument, if supplied, is a dictionary mapping command
names to command classes.  Each command encountered on the command line
will be turned into a command class, which is in turn instantiated; any
class found in 'cmdclass' is used in place of the default, which is
(for command 'foo_bar') class 'foo_bar' in module
'distutils.command.foo_bar'.  The command class must provide a
'user_options' attribute which is a list of option specifiers for
'distutils.fancy_getopt'.  Any command-line options between the current
and the next command are used to set attributes of the current command
object.

When the entire command-line has been successfully parsed, calls the
'run()' method on each command object in turn.  This method will be
driven entirely by the Distribution object (which each command object
has a reference to, thanks to its constructor), and the
command-specific options that became attributes of each command
object.