From 286fedf04a264620002e81cd5493ccc52eff1b24 Mon Sep 17 00:00:00 2001 From: Robert Klotzner Date: Sat, 16 Apr 2022 13:42:33 +0200 Subject: [PATCH] Make debug builds more useful & testing faster. (#4807) * Make debug builds more useful & testing likely faster. Stolen from substrate. * Add some more packages from https://github.com/paritytech/polkadot/pull/3344/files * Fix compilation. --- polkadot/Cargo.toml | 56 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/polkadot/Cargo.toml b/polkadot/Cargo.toml index 4a957d8c4e..78339014e8 100644 --- a/polkadot/Cargo.toml +++ b/polkadot/Cargo.toml @@ -121,6 +121,61 @@ exclude = ["bridges/relays/bin-substrate", "bridges/bin/rialto/runtime", "bridge [badges] maintenance = { status = "actively-developed" } +# The list of dependencies below (which can be both direct and indirect dependencies) are crates +# that are suspected to be CPU-intensive, and that are unlikely to require debugging (as some of +# their debug info might be missing) or to require to be frequently recompiled. We compile these +# dependencies with `opt-level=3` even in "dev" mode in order to make "dev" mode more usable. +# The majority of these crates are cryptographic libraries. +# +# If you see an error mentioning "profile package spec ... did not match any packages", it +# probably concerns this list. +# +# This list is ordered alphabetically. +[profile.dev.package] +blake2b_simd = { opt-level = 3 } +blake2 = { opt-level = 3 } +blake2-rfc = { opt-level = 3 } +chacha20poly1305 = { opt-level = 3 } +cranelift-codegen = { opt-level = 3 } +cranelift-wasm = { opt-level = 3 } +crc32fast = { opt-level = 3 } +crossbeam-deque = { opt-level = 3 } +crypto-mac = { opt-level = 3 } +curve25519-dalek = { opt-level = 3 } +ed25519-dalek = { opt-level = 3 } +flate2 = { opt-level = 3 } +futures-channel = { opt-level = 3 } +hashbrown = { opt-level = 3 } +hash-db = { opt-level = 3 } +hmac = { opt-level = 3 } +httparse = { opt-level = 3 } +integer-sqrt = { opt-level = 3 } +keccak = { opt-level = 3 } +libm = { opt-level = 3 } +librocksdb-sys = { opt-level = 3 } +libsecp256k1 = { opt-level = 3 } +libz-sys = { opt-level = 3 } +mio = { opt-level = 3 } +nalgebra = { opt-level = 3 } +num-bigint = { opt-level = 3 } +parking_lot_core = { opt-level = 3 } +parking_lot = { opt-level = 3 } +percent-encoding = { opt-level = 3 } +primitive-types = { opt-level = 3 } +reed-solomon-novelpoly = { opt-level = 3 } +ring = { opt-level = 3 } +rustls = { opt-level = 3 } +sha2 = { opt-level = 3 } +sha3 = { opt-level = 3 } +smallvec = { opt-level = 3 } +snow = { opt-level = 3 } +twox-hash = { opt-level = 3 } +uint = { opt-level = 3 } +wasmi = { opt-level = 3 } +x25519-dalek = { opt-level = 3 } +yamux = { opt-level = 3 } +zeroize = { opt-level = 3 } + [profile.release] # Polkadot runtime requires unwinding. panic = "unwind" @@ -181,3 +236,4 @@ polkadot = { path = "/usr/bin/polkadot" } [package.metadata.spellcheck] config = "./scripts/gitlab/spellcheck.toml" +