Build the 'outfiles' list so 'get_outputs()' has something to return.
(Bug spotted and originally fixed by Rene Liebscher; fix redone by me.)
diff --git a/Lib/distutils/command/install_data.py b/Lib/distutils/command/install_data.py
index 5481dab..f8ed0a7 100644
--- a/Lib/distutils/command/install_data.py
+++ b/Lib/distutils/command/install_data.py
@@ -25,7 +25,7 @@
def initialize_options (self):
self.install_dir = None
- self.outfiles = None
+ self.outfiles = []
self.root = None
self.data_files = self.distribution.data_files
@@ -40,7 +40,8 @@
for f in self.data_files:
if type(f) == StringType:
# its a simple file, so copy it
- self.copy_file(f, self.install_dir)
+ out = self.copy_file(f, self.install_dir)
+ self.outfiles.append(out)
else:
# its a tuple with path to install to and a list of files
dir = f[0]
@@ -50,10 +51,11 @@
dir = change_root(self.root, dir)
self.mkpath(dir)
for data in f[1]:
- self.copy_file(data, dir)
+ out = self.copy_file(data, dir)
+ self.outfiles.append(out)
def get_inputs (self):
return self.data_files or []
def get_outputs (self):
- return self.outfiles or []
+ return self.outfiles
diff --git a/Lib/distutils/command/install_headers.py b/Lib/distutils/command/install_headers.py
index 33edb94..afcc887 100644
--- a/Lib/distutils/command/install_headers.py
+++ b/Lib/distutils/command/install_headers.py
@@ -7,6 +7,7 @@
__revision__ = "$Id$"
+import os
from distutils.core import Command
@@ -21,6 +22,7 @@
def initialize_options (self):
self.install_dir = None
+ self.outfiles = []
def finalize_options (self):
self.set_undefined_options('install',
@@ -33,8 +35,14 @@
self.mkpath(self.install_dir)
for header in headers:
- self.copy_file(header, self.install_dir)
+ out = self.copy_file(header, self.install_dir)
+ self.outfiles.append(out)
+ def get_inputs (self):
+ return self.distribution.headers or []
+
+ def get_outputs (self):
+ return self.outfiles
# run()
# class install_headers