diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2019-07-12 17:42:56 +0200 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2019-07-19 00:17:29 +0200 |
commit | b4d313b05876a1af40014a4c3b129fe2db7cafb9 (patch) | |
tree | 71de96cb090361e657d062ac513e2422969ceb51 /mesonbuild/backend/backends.py | |
parent | ed348b7da81dd05aaa7ac398ae9acc4b15bc2733 (diff) | |
download | meson-b4d313b05876a1af40014a4c3b129fe2db7cafb9.zip meson-b4d313b05876a1af40014a4c3b129fe2db7cafb9.tar.gz meson-b4d313b05876a1af40014a4c3b129fe2db7cafb9.tar.bz2 |
backends: remove unnecessary fields from ExecutableSerialisation
"exe.is_cross and exe.needs_exe_wrapper" is the same condition under which
meson chooses whether to include the exe_wrapper. meson_exe has an assertion
for that, but now that meson_exe does not need anymore exe.is_cross,
we can simplify the code if we just "trust" meson to do the right thing.
Remove both fields from ExecutableSerialisation and just test the presence
of the wrapper, and also remove the executable basename which is only
used to "beautify" an assertion failure.
Diffstat (limited to 'mesonbuild/backend/backends.py')
-rw-r--r-- | mesonbuild/backend/backends.py | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/mesonbuild/backend/backends.py b/mesonbuild/backend/backends.py index 5316d45..a334b34 100644 --- a/mesonbuild/backend/backends.py +++ b/mesonbuild/backend/backends.py @@ -69,17 +69,14 @@ class TargetInstallData: self.optional = optional class ExecutableSerialisation: - def __init__(self, name, fname, cmd_args, env=None, is_cross=False, exe_wrapper=None, - workdir=None, extra_paths=None, capture=None, needs_exe_wrapper: bool = False): - self.name = name + def __init__(self, fname, cmd_args, env=None, exe_wrapper=None, + workdir=None, extra_paths=None, capture=None): self.fname = fname self.cmd_args = cmd_args self.env = env or {} - self.is_cross = is_cross if exe_wrapper is not None: assert(isinstance(exe_wrapper, dependencies.ExternalProgram)) self.exe_runner = exe_wrapper - self.needs_exe_wrapper = needs_exe_wrapper self.workdir = workdir self.extra_paths = extra_paths self.capture = capture @@ -387,10 +384,9 @@ class Backend: scratch_file = 'meson_exe_{0}_{1}.dat'.format(basename, digest) exe_data = os.path.join(self.environment.get_scratch_dir(), scratch_file) with open(exe_data, 'wb') as f: - es = ExecutableSerialisation(basename, exe_cmd, cmd_args, env, - is_cross_built, exe_wrapper, workdir, - extra_paths, capture, - self.environment.need_exe_wrapper()) + es = ExecutableSerialisation(exe_cmd, cmd_args, env, + exe_wrapper, workdir, + extra_paths, capture) pickle.dump(es, f) return self.environment.get_build_command() + ['--internal', 'exe', '--unpickle', exe_data] |