[][src]Struct system_deps::Library

pub struct Library {
    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,
}

A system dependency

Fields

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

Implementations

impl Library[src]

pub fn from_internal_pkg_config<P>(
    pkg_config_dir: P,
    lib: &str,
    version: &str
) -> Result<Self, BuildInternalClosureError> where
    P: AsRef<Path>, 
[src]

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 .pc file is located
  • lib: the name of the library to look for
  • version: the minimum version of lib 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

impl Debug for Library[src]

Auto Trait Implementations

impl RefUnwindSafe for Library

impl Send for Library

impl Sync for Library

impl Unpin for Library

impl UnwindSafe for Library

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.