mirror of
https://github.com/AdaCore/cpython.git
synced 2026-02-12 12:57:15 -08:00
Visious hackery to solve a build-control problem related to our use of
distutils for the library modules built as shared objects. A better solution
appears possible, but with the threat that the distutils becomes more
magical ("complex").
This closes SF bug #458343.
This commit is contained in:
@@ -456,6 +456,17 @@ class build_ext (Command):
|
||||
debug=self.debug,
|
||||
extra_postargs=extra_args)
|
||||
|
||||
# XXX -- this is a Vile HACK!
|
||||
#
|
||||
# The setup.py script for Python on Unix needs to be able to
|
||||
# get this list so it can perform all the clean up needed to
|
||||
# avoid keeping object files around when cleaning out a failed
|
||||
# build of an extension module. Since Distutils does not
|
||||
# track dependencies, we have to get rid of intermediates to
|
||||
# ensure all the intermediates will be properly re-built.
|
||||
#
|
||||
self._built_objects = objects[:]
|
||||
|
||||
# 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.
|
||||
|
||||
7
setup.py
7
setup.py
@@ -172,6 +172,13 @@ class PyBuildExt(build_ext):
|
||||
self.get_ext_filename(fullname))
|
||||
os.remove(ext_filename)
|
||||
|
||||
# XXX -- This relies on a Vile HACK in
|
||||
# distutils.command.build_ext.build_extension(). The
|
||||
# _built_objects attribute is stored there strictly for
|
||||
# use here.
|
||||
for filename in self._built_objects:
|
||||
os.remove(filename)
|
||||
|
||||
def get_platform (self):
|
||||
# Get value of sys.platform
|
||||
platform = sys.platform
|
||||
|
||||
Reference in New Issue
Block a user