diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2014-07-09 16:30:58 +0300 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2014-07-09 16:30:58 +0300 |
commit | 6759e404d996a64bbe19df5988360dc913eb099e (patch) | |
tree | ecd9eef788c316441e2742a004ed66deb1023ca9 /interpreter.py | |
parent | 5e648a9fb92ffe9ca8d6641c9b316acf4af9174a (diff) | |
download | meson-6759e404d996a64bbe19df5988360dc913eb099e.zip meson-6759e404d996a64bbe19df5988360dc913eb099e.tar.gz meson-6759e404d996a64bbe19df5988360dc913eb099e.tar.bz2 |
Make it possible to run a custom script during install.
Diffstat (limited to 'interpreter.py')
-rw-r--r-- | interpreter.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/interpreter.py b/interpreter.py index 1820885..d8e20de 100644 --- a/interpreter.py +++ b/interpreter.py @@ -565,8 +565,21 @@ class MesonMain(InterpreterObject): 'is_unity' : self.is_unity_method, 'current_source_dir' : self.current_source_dir_method, 'current_build_dir' : self.current_build_dir_method, + 'set_install_script' : self.set_install_script_method, }) + def set_install_script_method(self, args, kwargs): + if len(args) != 1: + raise InterpreterException('Set_install_script takes exactly one argument.') + scriptbase = args[0] + if not isinstance(scriptbase, str): + raise InterpreterException('Set_install_script argument is not a string.') + scriptfile = os.path.join(self.interpreter.environment.source_dir, + self.interpreter.subdir, scriptbase) + if not os.path.isfile(scriptfile): + raise InterpreterException('Can not find install script %s.' % scriptbase) + self.build.install_script = scriptfile + def current_source_dir_method(self, args, kwargs): src = self.interpreter.environment.source_dir sub = self.interpreter.subdir |