[meld] build_helpers: Extend base build's subcommands instead of subclassing



commit 66d861aca4797b9d857a88d40b65de7e99f9cd38
Author: Kai Willadsen <kai willadsen gmail com>
Date:   Sat Mar 22 08:15:55 2014 +1000

    build_helpers: Extend base build's subcommands instead of subclassing
    
    This plays more nicely with cx_freeze's build step.

 meld/build_helpers.py |   31 ++++++++++++++++---------------
 1 files changed, 16 insertions(+), 15 deletions(-)
---
diff --git a/meld/build_helpers.py b/meld/build_helpers.py
index 57b4a5b..747b048 100644
--- a/meld/build_helpers.py
+++ b/meld/build_helpers.py
@@ -28,27 +28,28 @@ import glob
 import os.path
 
 
-class build_extra(distutils.command.build.build):
+def has_help(self):
+       return "build_help" in self.distribution.cmdclass and os.name != 'nt'
 
-    def __init__(self, dist):
-        distutils.command.build.build.__init__(self, dist)
 
-        def has_help(command):
-            return "build_help" in self.distribution.cmdclass
+def has_icons(self):
+       return "build_icons" in self.distribution.cmdclass
 
-        def has_icons(command):
-            return "build_icons" in self.distribution.cmdclass
 
-        def has_i18n(command):
-            return "build_i18n" in self.distribution.cmdclass
+def has_i18n(self):
+       return "build_i18n" in self.distribution.cmdclass and os.name != 'nt'
 
-        def has_data(command):
-            return "build_data" in self.distribution.cmdclass
 
-        self.sub_commands.append(("build_i18n", has_i18n))
-        self.sub_commands.append(("build_icons", has_icons))
-        self.sub_commands.append(("build_help", has_help))
-        self.sub_commands.append(("build_data", has_data))
+def has_data(self):
+       return "build_data" in self.distribution.cmdclass
+
+
+distutils.command.build.build.sub_commands.extend([
+    ("build_i18n", has_i18n),
+    ("build_icons", has_icons),
+    ("build_help", has_help),
+    ("build_data", has_data),
+])
 
 
 class build_data(distutils.cmd.Command):


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]