"""Extended build_ext command that adds support for 'built' headers.
If there are any public headers for any of the packages included in
this distribution, the build/include-X.Y/ directory is added to the
include path of the extensions being built. This also ensures that
the build_headers command runs before the build_ext command.
"""
__docformat__ = "reStructuredText"
import distutils.command.build_ext
import os.path
class build_ext(distutils.command.build_ext.build_ext):
def run(self):
cmd = self.get_finalized_command("build_headers")
if cmd.package_headers:
self.run_command("build_headers")
self._extra_includes = cmd.build_dir
else:
self._extra_includes = None
distutils.command.build_ext.build_ext.run(self)
def build_extension(self, ext):
if self._extra_includes:
ext.include_dirs.append(self._extra_includes)
distutils.command.build_ext.build_ext.build_extension(self, ext)
syntax highlighted by Code2HTML, v. 0.9.1