[workspace] # Here we declare that this is a workspace, containing several crates # within it. # # Please keep this list topologically sorted by dependency relation, so # that every crate appears _before_ any other crate that depends on it. members = [ "crates/arti", "crates/arti-bench", "crates/arti-client", "crates/arti-config", "crates/arti-hyper", "crates/arti-testing", "crates/caret", "crates/fs-mistrust", "crates/retry-error", "crates/safelog", "crates/tor-basic-utils", "crates/tor-bytes", "crates/tor-cell", "crates/tor-cert", "crates/tor-chanmgr", "crates/tor-checkable", "crates/tor-circmgr", "crates/tor-config", "crates/tor-consdiff", "crates/tor-dirclient", "crates/tor-dirmgr", "crates/tor-error", "crates/tor-events", "crates/tor-guardmgr", "crates/tor-linkspec", "crates/tor-llcrypto", "crates/tor-netdir", "crates/tor-netdoc", "crates/tor-persist", "crates/tor-proto", "crates/tor-protover", "crates/tor-rtcompat", "crates/tor-rtmock", "crates/tor-socksproto", "crates/tor-units", ] resolver = "2" [profile.release] # By default we'd like to get good performance and a small download size. # (Assuming xz compression on the binary.) # # The biggest win is to run `strip --strip-debug` on the binary after # generating it, to throw out debugging symbols that we inherited from # other libraries. Don't do `strip --strip-unused`, though, or you'll # break backtraces. That saves about 21% download size. # Using LTO saves a further 14% of download size, and improves performance, # at the cost of compile time. lto = true # Setting codegen-units=1 saves a further 7% download size. It also # improves performance at the cost of compile time. codegen-units = 1 # Optimize for size. [Actually this is even smaller than 'z' on rust # 1.56. It saves about 11% download size over the default value of '3'.] opt-level = 's'