tracers-dyn-stap 0.1.0

Implements the dynamic probing API using `libstapsdt`, which in turn uses Linux SystemTap underneath. Do not use this crate directly. Always use the `tracers` crate and let it auto-detect which implementation to use.
Documentation
[package]
name = "tracers-dyn-stap"
version = "0.1.0"
authors = ["Adam Nelson <anelson@127.io>"]
edition = "2018"
license = "MIT OR Apache-2.0"
description = """
Implements the dynamic probing API using `libstapsdt`, which in turn uses Linux SystemTap underneath.

Do not use this crate directly.  Always use the `tracers` crate and let it auto-detect which implementation
to use.
"""
repository = "https://github.com/anelson/tracers"

# This is a hack.  Or maybe a workaround for a bug.
#
# It seems that Cargo does not pass variables to dependent crates using the DEP_(PKGNAME)_(VARNAME)
# env vars unless it thinks the crate is wrapping a native library.  This package is definitely not
# doing that, but setting this in the manifest ensures that the downstream dependency `tracers` build.rs
# can query the variables produced by this `build.rs` to detect if stap is available for us or not
#
# This will be unnecessary once https://github.com/rust-lang/cargo/issues/3544 is implemented
links = "tracers-dyn-stap"

[features]
# by default, building the stap provider is disabled.  It must be explicitly enabled
default = []

# if this feature is enabled, then the build.rs will try to build the stap provider's
# dependencies, libstapstd-sys (and, transitively, libelf-sys).
# if the build fails, this crate's build will still succeed, but the stap provider's code
# will not be included in the resulting crate.
#
# The success or failure of the build will be communicated via a variable in cargo,
# which dependent crates can resolve with DEP_TRACERS_STAP_SUCCEEDED
enabled = ["tracers-libstapsdt-sys/enabled"]

# If this feature is enabled, it implies `enabled`, and also will cause the build to fail if
# the stap provider cannot be built
required = ["tracers-libstapsdt-sys/required"]

[dependencies]
tracers-libstapsdt-sys = { path = "../tracers-libstapsdt-sys", version = "0.1.0", optional = true }
failure = "0.1.6"
once_cell = "1.2.0"

[dependencies.tracers-core]
path = "../tracers-core"
version = "0.1.0"
features = ["dynamic"]

[build-dependencies]
failure = "0.1.6"

[dev-dependencies]
quickcheck = "0.9.0"
quickcheck_macros = "0.8.0"
libc = "0.2.65"