servo/servobuild.example
Jonathan Schwender 80529ef358
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>
2024-11-21 11:28:15 +00:00

68 lines
2.4 KiB
Text
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Copy this file to .servobuild in the Servo root directory
# Paths starting with "./" are relative to the repo root
# Tool options
[tools]
# If uncommented, this command is used instead of the platforms default
# to notify at the end of a compilation that took a long time.
# This is the name or path of an executable called with two arguments:
# the summary and content of the notification.
#notify-command = "notify-send"
[build]
# Set "mode = dev" or use `mach build --dev` to build the project with warning.
# or Set "mode = release" or use `mach build --release` for optimized build.
# Use `mode = <profile>` or `mach build --profile=<profile>` to build the given
# profile. Check the `Cargo.toml` manifest for a complete list of custom profiles.
# Defaults to prompting before building
#mode = "dev"
# Set "android = true" or use `mach build --android` to build the Android app.
android = false
# Enable `debug_assert!` macros in release mode
debug-assertions = true
# Set "debug-mozjs" or use `mach build --debug-mozjs` to build a debug spidermonkey.
debug-mozjs = false
# When a GL error occurs as a result of a WebGL operation, print the stack trace for the content
# JS and native Rust code that triggered the failed operation. Warning: very slow.
webgl-backtrace = false
# When a DOM exception is reported, print the stack trace for the content JS and native Rust code
# that triggered it.
dom-backtrace = false
# Default to the “2020” implementation of CSS layout instead of the “2013” one.
layout-2020 = true
# Pick a media stack based on the target. Other values are "gstreamer" and "dummy"
media-stack = "auto"
# Set to the path to your ccache binary to enable caching of compiler outputs
#ccache = "/usr/local/bin/ccache"
# Any optional flags that will be added to $RUSTFLAGS
#rustflags = ""
# Enable or disable rustcs incremental compilation
# Cargos default is to enable it in debug mode but not in release mode.
# Leaving this key unspecified makes mach keep Cargos default.
# It can be set to true or false in order to always enable or always disable
# incremental compilation.
#incremental = false
#incremental = true
# Android information
[android]
# Defaults to the value of $ANDROID_SDK_ROOT, $ANDROID_NDK_ROOT respectively
#sdk = "/opt/android-sdk"
#ndk = "/opt/android-ndk"
# OpenHarmony
[ohos]
# Defaults to the value of $OHOS_SDK_NATIVE
#ndk = "/path/to/ohos-sdk/<host-os>/native"