From c41d6b35a9de3dd9e3057a0db9a83b182e792f79 Mon Sep 17 00:00:00 2001 From: Greg Ward Date: Mon, 10 Apr 2000 00:19:42 +0000 Subject: Added '--force' option -- very clear what it means for building (ignore timestamps), so every build_* command has 'self.force', which follows the 'build' command if not set by the user. --- Lib/distutils/command/build.py | 5 +++++ Lib/distutils/command/build_clib.py | 6 +++++- Lib/distutils/command/build_ext.py | 6 +++++- Lib/distutils/command/build_py.py | 7 ++++++- 4 files changed, 21 insertions(+), 3 deletions(-) diff --git a/Lib/distutils/command/build.py b/Lib/distutils/command/build.py index 2da589a..bca0ece 100644 --- a/Lib/distutils/command/build.py +++ b/Lib/distutils/command/build.py @@ -28,6 +28,8 @@ class build (Command): "temporary build directory"), ('debug', 'g', "compile extensions and libraries with debugging information"), + ('force', 'f', + "forcibly build everything (ignore file timestamps"), ] def initialize_options (self): @@ -39,9 +41,12 @@ class build (Command): self.build_lib = None self.build_temp = None self.debug = None + self.force = 0 def finalize_options (self): + print "build.finalize: force=%s" % self.force + # Need this to name platform-specific directories, but sys.platform # is not enough -- it only names the OS and version, not the # hardware architecture! diff --git a/Lib/distutils/command/build_clib.py b/Lib/distutils/command/build_clib.py index f48e647..2311187 100644 --- a/Lib/distutils/command/build_clib.py +++ b/Lib/distutils/command/build_clib.py @@ -37,6 +37,8 @@ class build_clib (Command): "directory to put temporary build by-products"), ('debug', 'g', "compile with debugging information"), + ('force', 'f', + "forcibly build everything (ignore file timestamps"), ] def initialize_options (self): @@ -51,6 +53,7 @@ class build_clib (Command): self.define = None self.undef = None self.debug = None + self.force = 0 # initialize_options() @@ -65,7 +68,8 @@ class build_clib (Command): self.set_undefined_options ('build', ('build_temp', 'build_clib'), ('build_temp', 'build_temp'), - ('debug', 'debug')) + ('debug', 'debug'), + ('force', 'force')) self.libraries = self.distribution.libraries if self.libraries: diff --git a/Lib/distutils/command/build_ext.py b/Lib/distutils/command/build_ext.py index 2cb1c61..ddb01d4 100644 --- a/Lib/distutils/command/build_ext.py +++ b/Lib/distutils/command/build_ext.py @@ -66,6 +66,8 @@ class build_ext (Command): "extra explicit link objects to include in the link"), ('debug', 'g', "compile/link with debugging information"), + ('force', 'f', + "forcibly build everything (ignore file timestamps"), ] @@ -84,6 +86,7 @@ class build_ext (Command): self.rpath = None self.link_objects = None self.debug = None + self.force = None def finalize_options (self): @@ -92,7 +95,8 @@ class build_ext (Command): self.set_undefined_options ('build', ('build_lib', 'build_lib'), ('build_temp', 'build_temp'), - ('debug', 'debug')) + ('debug', 'debug'), + ('force', 'force')) if self.package is None: self.package = self.distribution.ext_package diff --git a/Lib/distutils/command/build_py.py b/Lib/distutils/command/build_py.py index 3baddc6..d719cec 100644 --- a/Lib/distutils/command/build_py.py +++ b/Lib/distutils/command/build_py.py @@ -20,6 +20,7 @@ class build_py (Command): user_options = [ ('build-lib=', 'd', "directory to \"build\" (copy) to"), + ('force', 'f', "forcibly build everything (ignore file timestamps"), ] @@ -28,10 +29,14 @@ class build_py (Command): self.modules = None self.package = None self.package_dir = None + self.force = None def finalize_options (self): + print "build_py.finalize: force=%s" % self.force self.set_undefined_options ('build', - ('build_lib', 'build_lib')) + ('build_lib', 'build_lib'), + ('force', 'force')) + print "build_py.finalize: force=%s" % self.force # Get the distribution options that are aliases for build_py # options -- list of packages and list of modules. -- cgit v0.12