From 92c1a5513ad150d599d8c2454ba8ec3985c68617 Mon Sep 17 00:00:00 2001 From: Matthieu Gautier Date: Wed, 22 Feb 2017 14:24:47 +0100 Subject: [PATCH] Move some variables definition in a property instead of classic calculus. --- dependency_utils.py | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/dependency_utils.py b/dependency_utils.py index 721b4b5..9819077 100644 --- a/dependency_utils.py +++ b/dependency_utils.py @@ -188,16 +188,19 @@ class MakeBuilder(Builder): make_target = "" make_install_target = "install" - def _configure(self, context): - context.try_skip(self.build_path) - configure_option = "{} {} {}".format( + @property + def all_configure_option(self): + return "{} {} {}".format( self.configure_option, self.static_configure_option if self.buildEnv.build_static else self.dynamic_configure_option, self.buildEnv.configure_option if not self.target.force_native_build else "") + + def _configure(self, context): + context.try_skip(self.build_path) command = "{configure_script} {configure_option} --prefix {install_dir} --libdir {libdir}" command = command.format( configure_script=pj(self.source_path, self.configure_script), - configure_option=configure_option, + configure_option=self.all_configure_option, install_dir=self.buildEnv.install_dir, libdir=pj(self.buildEnv.install_dir, self.buildEnv.libprefix) ) @@ -262,15 +265,15 @@ class CMakeBuilder(MakeBuilder): class MesonBuilder(Builder): configure_option = "" + @property + def library_type(self): + return 'static' if self.buildEnv.build_static else 'shared' + def _configure(self, context): context.try_skip(self.build_path) if os.path.exists(self.build_path): shutil.rmtree(self.build_path) os.makedirs(self.build_path) - if self.buildEnv.build_static: - library_type = 'static' - else: - library_type = 'shared' configure_option = self.configure_option.format(buildEnv=self.buildEnv) command = ("{command} . {build_path}" " --default-library={library_type}" @@ -280,7 +283,7 @@ class MesonBuilder(Builder): " {cross_option}") command = command.format( command=self.buildEnv.meson_command, - library_type=library_type, + library_type=self.library_type, configure_option=configure_option, build_path=self.build_path, buildEnv=self.buildEnv,