Struct system_deps::Library [−][src]
pub struct Library {
pub name: String,
pub source: Source,
pub libs: Vec<String>,
pub link_paths: Vec<PathBuf>,
pub frameworks: Vec<String>,
pub framework_paths: Vec<PathBuf>,
pub include_paths: Vec<PathBuf>,
pub defines: HashMap<String, Option<String>>,
pub version: String,
}Expand description
A system dependency
Fields
name: StringName of the library
source: SourceFrom where the library settings have been retrieved
libs: Vec<String>libraries the linker should link on
link_paths: Vec<PathBuf>directories where the compiler should look for libraries
frameworks: Vec<String>frameworks the linker should link on
framework_paths: Vec<PathBuf>directories where the compiler should look for frameworks
include_paths: Vec<PathBuf>directories where the compiler should look for header files
defines: HashMap<String, Option<String>>macros that should be defined by the compiler
version: Stringlibrary version
Implementations
pub fn from_internal_pkg_config<P>(
pkg_config_dir: P,
lib: &str,
version: &str
) -> Result<Self, BuildInternalClosureError> where
P: AsRef<Path>,
pub fn from_internal_pkg_config<P>(
pkg_config_dir: P,
lib: &str,
version: &str
) -> Result<Self, BuildInternalClosureError> where
P: AsRef<Path>, Create a Library by probing pkg-config on an internal directory.
This helper is meant to be used by Config::add_build_internal closures
after having built the lib to return the library information to system-deps.
Arguments
pkg_config_dir: the directory where the library.pcfile is locatedlib: the name of the library to look forversion: the minimum version oflibrequired
Examples
let mut config = system_deps::Config::new(); config.add_build_internal("mylib", |lib, version| { // Actually build the library here system_deps::Library::from_internal_pkg_config("build-dir", lib, version) });
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Libraryimpl UnwindSafe for Library