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, pub statik: bool, }
Expand description
A system dependency
Fields
name: String
Name of the library
source: Source
From 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: String
library version
statik: bool
library is statically linked
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.
This library will be statically linked.
Arguments
pkg_config_dir
: the directory where the library.pc
file is locatedlib
: the name of the library to look forversion
: the minimum version oflib
required
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 Library
impl UnwindSafe for Library