From 14106ebdde145be0e5d88bbba8f87653c2558efb Mon Sep 17 00:00:00 2001 From: Steve Myers Date: Sat, 19 Feb 2022 16:08:08 -0800 Subject: [PATCH] Prevent building with more than one database feature enabled --- build.rs | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/build.rs b/build.rs index 92e4946..30c1796 100644 --- a/build.rs +++ b/build.rs @@ -16,4 +16,21 @@ fn main() { if blockchain_features.len() > 1 { panic!("At most one blockchain client feature can be enabled but these features were enabled: {:?}", blockchain_features) } + + let key_value_db = + env::var_os("CARGO_FEATURE_KEY_VALUE_DB").map(|_| "key-value-db".to_string()); + let sqlite_db = env::var_os("CARGO_FEATURE_SQLITE_DB").map(|_| "sqlite-db".to_string()); + + let database_features: Vec = vec![key_value_db, sqlite_db] + .iter() + .map(|f| f.to_owned()) + .flatten() + .collect(); + + if database_features.len() > 1 { + panic!( + "At most one database feature can be enabled but these features were enabled: {:?}", + database_features + ) + } } -- 2.49.0