Part of twisted.python View Source
Don't use this outside of Twisted.
Maintainer: Christopher Armstrong
Class | ConditionalExtension | An extension module that will only be compiled if certain conditions are met. |
Function | setup | An alternative to distutils' setup() which is specially designed for Twisted subprojects. |
Function | get_setup_args | Undocumented |
Function | getVersion | Extract the version number for a given project. |
Function | relativeTo | Gets 'relativee' relative to 'basepath'. |
Function | getDataFiles | Get all the data files that should be included in this distutils Project. |
Function | getExtensions | Get all extensions from core and all subprojects. |
Function | getPackages | Get all packages which are under dname. This is necessary for Python 2.2's distutils. Pretty similar arguments to getDataFiles, including 'parent'. |
Function | getAllScripts | Undocumented |
Function | getScripts | Returns a list of scripts for a Twisted subproject; this works in any of an SVN checkout, a project-specific tarball. |
Class | build_scripts_twisted | Renames scripts so they end with '.py' on Windows. |
Class | install_data_twisted | I make sure data files are installed in the package directory. |
Class | build_ext_twisted | Allow subclasses to easily detect and customize Extensions to build at install-time. |
Function | _filterNames | Given a list of file names, return those names that should be copied. |
Function | _checkCPython | Checks if this implementation is CPython. |
Pass twisted_subproject=projname if you want package and data files to automatically be found for you.
Parameters | conditionalExtensions | Extensions to optionally build. (type: list of ConditionalExtension ) |
Parameters | proj | the name of the project. Examples are "core", "conch", "words", "mail". |
Returns | The version number of the project, as a string like "2.0.0". (type: str) |
i.e.,
>>> relativeTo('/home/', '/home/radix/') 'radix' >>> relativeTo('.', '/home/radix/Projects/Twisted') # curdir is /home/radix 'Projects/Twisted'
The 'relativee' must be a child of 'basepath'.
'dname' should be the path to the package that you're distributing.
'ignore' is a list of sub-packages to ignore. This facilitates disparate package hierarchies. That's a fancy way of saying that the 'twisted' package doesn't want to include the 'twisted.conch' package, so it will pass ['conch'] as the value.
'parent' is necessary if you're distributing a subpackage like twisted.conch. 'dname' should point to 'twisted/conch' and 'parent' should point to 'twisted'. This ensures that your data_files are generated correctly, only using relative paths for the first element of the tuple ('twisted/conch/*'). The default 'parent' is the current working directory.
This uses platform.python_implementation
.
This takes sys
and platform
kwargs that by
default use the real modules. You shouldn't care about these -- they are
for testing purposes only.
Returns | False if the implementation is definitely not CPython,
True otherwise. |