}
}
+#[cfg(not(feature = "rust-version-1.80"))]
mod libraries {
use indexmap::IndexMap;
use std::sync::OnceLock;
}
}
+#[cfg(feature = "rust-version-1.80")]
+mod libraries {
+ use indexmap::IndexMap;
+ use std::sync::LazyLock;
+
+ static LIBRARIES: LazyLock<IndexMap<&'static str, &'static str>> = OnceLock::new(|| {
+ let mut m = IndexMap::new();
+
+ include!(concat!(env!("OUT_DIR"), "/libraries.rs"));
+
+ m
+ });
+
+ pub(crate) fn contains(name: &str) -> bool {
+ LIBRARIES.contains_key(name)
+ }
+
+ pub(crate) fn get(name: &str) -> Option<&'static str> {
+ LIBRARIES.get(name).copied()
+ }
+}
+
pub static BREAK_FROM_DISPATCH_LOOP_LOC: usize = 0;
pub static INSTALL_VERIFY_ATTR_INTERRUPT: usize = 1;
pub static VERIFY_ATTR_INTERRUPT_LOC: usize = 2;