Add medium profile for daily work scenario (#34035)

- The standard `dev` mode is often too slow for daily work on servo
- Increasing the optimization level to 2 improves the performance noticably.
- Build time for opt-level = 1 is slightly higher than 2 on my machine
- Reducing debug info to `line-tables-only` improves link and build times,
  while still keeping relevant info for backtraces.

Also extend .servobuild to allow setting custom cargo profiles instead
of just release and dev.

Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com>
This commit is contained in:
Jonathan Schwender 2024-11-21 12:28:15 +01:00 committed by GitHub
parent 527e2d426d
commit 80529ef358
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 14 additions and 0 deletions

View file

@ -678,6 +678,10 @@ class CommandBase(object):
elif self.config["build"]["mode"] == "release":
print("No build type specified, but .servobuild specified `--release`.")
return BuildType.release()
elif self.config["build"]["mode"] != "":
profile = self.config["build"]["mode"]
print(f"No build type specified, but .servobuild specified custom profile `{profile}`.")
return BuildType.custom(profile)
else:
print("No build type specified so assuming `--dev`.")
return BuildType.dev()