[workspace] members = [ "compiler/ident", "compiler/region", "compiler/collections", "compiler/exhaustive", "compiler/module", "compiler/parse", "compiler/can", "compiler/problem", "compiler/types", "compiler/builtins", "compiler/constrain", "compiler/unify", "compiler/solve", "compiler/fmt", "compiler/mono", "compiler/alias_analysis", "compiler/test_mono", "compiler/load", "compiler/load_internal", "compiler/gen_llvm", "compiler/gen_dev", "compiler/gen_wasm", "compiler/build", "compiler/arena_pool", "compiler/test_gen", "compiler/roc_target", "compiler/debug_flags", "vendor/ena", "vendor/inkwell", "vendor/pathfinding", "vendor/pretty", "bindgen", "editor", "ast", "cli", "code_markup", "highlight", "error_macros", "reporting", "repl_cli", "repl_eval", "repl_test", "repl_wasm", "test_utils", "utils", "docs", "docs_cli", "linker", "wasi-libc-sys", ] exclude = [ # Examples sometimes have Rust hosts in their platforms. The compiler should ignore those. "examples", "ci/bench-runner", # Ignore building these normally. They are only imported by tests. # The tests will still correctly build them. "cli_utils", "compiler/test_mono_macros", # `cargo build` would cause roc_std to be built with default features which errors on windows "roc_std", ] # Needed to be able to run `cargo run -p roc_cli --no-default-features` - # see www/build.sh for more. # # Without the `-p` flag, cargo ignores `--no-default-features` when you have a # workspace, and without `resolver = "2"` here, you can't use `-p` like this. resolver = "2" # Optimizations based on https://deterministic.space/high-performance-rust.html [profile.release] lto = "thin" codegen-units = 1 # debug = true # enable when profiling [profile.bench] lto = "thin" codegen-units = 1