% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/duckhts.R
\name{rduckhts_htslib_config}
\alias{rduckhts_htslib_config}
\title{Get the Installed htslib Linking Contract}
\usage{
rduckhts_htslib_config(link = NULL, validate = TRUE)
}
\arguments{
\item{link}{Either `"shared"` or `"static"`. When omitted, use the link
mode selected when this Rduckhts package was configured.}

\item{validate}{Whether to validate installed files, header identity, and
the loaded htslib runtime version.}
}
\value{
An object of class `rduckhts_htslib_config`. Its `cppflags` and
  `ldflags` elements can be consumed by a downstream package configure
  script; `duckdb_platform` records the extension footer platform and the
  remaining fields form the versioned build receipt.
}
\description{
Resolves headers, an exact shared or static library, linker flags, enabled
features, and build identity from the installed Rduckhts package. With
validation enabled, the receipt and public headers are also compared with
the htslib version reported by the loaded DuckHTS extension.
}
\details{
The shared contract is currently available on native Unix builds. MinGW and
browser-wasm builds expose the static contract unless a shared htslib was
explicitly built. Static consumers must review `static_license_note`.
}
\examples{
\dontrun{
config <- rduckhts_htslib_config()
config$cppflags
config$ldflags
config$features
}
}
