From fd1261ab65962d2ae35745f060fc1bc8cf1c10e2 Mon Sep 17 00:00:00 2001 From: Calum Lind Date: Sun, 27 Nov 2016 21:47:34 +0000 Subject: [PATCH] [Setup] Create a CleanTranslations class --- setup.py | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/setup.py b/setup.py index 225d6d4e0..5436cf308 100755 --- a/setup.py +++ b/setup.py @@ -193,6 +193,23 @@ class BuildTranslations(cmd.Command): sys.stdout.write('\b\b \nFinished compiling translation files. \n') +class CleanTranslations(cmd.Command): + description = 'Cleans translations files.' + user_options = [('all', 'a', 'Remove all build output, not just temporary by-products')] + boolean_options = ['all'] + + def initialize_options(self): + self.all = None + + def finalize_options(self): + self.set_undefined_options('clean', ('all', 'all')) + + def run(self): + if os.path.isfile(desktop_data): + print('Deleting %s' % desktop_data) + os.remove(desktop_data) + + class BuildPlugins(cmd.Command): description = 'Build plugins into .eggs' @@ -315,7 +332,10 @@ class CleanPlugins(cmd.Command): class Clean(_clean): - sub_commands = _clean.sub_commands + [('clean_plugins', None)] + sub_commands = _clean.sub_commands + [ + ('clean_plugins', None), + ('clean_trans', None), + ] def run(self): # Remove deluge egg-info. @@ -331,10 +351,6 @@ class Clean(_clean): self.run_command(cmd_name) _clean.run(self) - if os.path.exists(desktop_data): - print('Deleting %s' % desktop_data) - os.remove(desktop_data) - cmdclass = { 'build': Build, @@ -344,6 +360,7 @@ cmdclass = { 'build_docs': BuildDocs, 'install_data': InstallData, 'clean_plugins': CleanPlugins, + 'clean_trans': CleanTranslations, 'clean_docs': CleanDocs, 'clean': Clean, 'egg_info_plugins': EggInfoPlugins,