diff options
author | Mukilan Thiyagarajan <mukilan@igalia.com> | 2024-08-26 18:38:21 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-08-26 13:08:21 +0000 |
commit | b6d5ac09b0b2acbb0f5b00232e53d0111a159063 (patch) | |
tree | 18842738e78794ba096a0af44b16d37695cff6d7 /python/servo/testing_commands.py | |
parent | 4397d8a02156a009d16d8b79796b1e54ca635624 (diff) | |
download | servo-b6d5ac09b0b2acbb0f5b00232e53d0111a159063.tar.gz servo-b6d5ac09b0b2acbb0f5b00232e53d0111a159063.zip |
mach: introduce `BuildTarget` abstraction (#33114)
Introduce a new `BuildTarget` abstraction to centralize the code for
supporting different ways of choosing the build target (e.g --android,
--target x86_64-linux-android , --target aarch64-linux-ohos). This
is currently handled in an adhoc fashion in different commands (
mach package, install, run) leading to a proliferation of keyword
parameters for the commands and duplicated logic.
The patch introduces a new `allow_target_configuration` decorator to
do the validation and parsing of these parameters into the appropriate
`BuildTarget` subclass, which is now stored as an instance attribute
of the CommandBase class. All the code that previously relied on
`self.cross_compile_target` has been switched to use the BuildTarget.
Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
Diffstat (limited to 'python/servo/testing_commands.py')
-rw-r--r-- | python/servo/testing_commands.py | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/python/servo/testing_commands.py b/python/servo/testing_commands.py index b05a89a7a30..d3d09745eee 100644 --- a/python/servo/testing_commands.py +++ b/python/servo/testing_commands.py @@ -321,12 +321,10 @@ class MachCommands(CommandBase): ) return self._test_wpt(build_type=build_type, android=True, **kwargs) - def _test_wpt(self, build_type: BuildType, with_asan=False, android=False, **kwargs): - if not android: - os.environ.update(self.build_env()) - + @CommandBase.allow_target_configuration + def _test_wpt(self, build_type: BuildType, with_asan=False, **kwargs): # TODO(mrobinson): Why do we pass the wrong binary path in when running WPT on Android? - binary_path = self.get_binary_path(build_type=build_type, asan=with_asan) + binary_path = self.get_binary_path(build_type, asan=with_asan) return_value = wpt.run.run_tests(binary_path, **kwargs) return return_value if not kwargs["always_succeed"] else 0 @@ -388,7 +386,6 @@ class MachCommands(CommandBase): avd = "servo-x86" target = "i686-linux-android" print("Assuming --target " + target) - self.cross_compile_target = target env = self.build_env() os.environ["PATH"] = env["PATH"] |