# -------------------------------------------- # CITATION file created with {cffr} R package # See also: https://docs.ropensci.org/cffr/ # -------------------------------------------- cff-version: 1.2.0 message: 'To cite package "rvtk" in publications use:' type: software license: MIT title: 'rvtk: Bindings for the Visualization Toolkit (''VTK'')' version: 0.2.0 doi: 10.32614/CRAN.package.rvtk abstract: 'Provides pre-compiled static ''VTK'' libraries and headers so that downstream R packages can link against the Visualization Toolkit without requiring users to install ''VTK'' manually. On all platforms the package first honours a user-supplied ''VTK_DIR'' environment variable. On macOS it then tries ''Homebrew'', followed by ''pkg-config''. On Linux it tries ''pkg-config'' and well-known system prefixes (''/usr'', ''/usr/local''). If no suitable system installation is found on macOS or Linux, pre-built static libraries are downloaded automatically from the package''s GitHub releases for x86_64 and aarch64. On Windows the package tries ''VTK_DIR'', then ''Rtools45'' ''pacman'', then common ''MSYS2'' prefixes, accepting both static (''.a'') and shared (''.dll.a'' import libs + DLLs) installations. When shared libraries are used, the VTK DLLs are staged in ''inst/vtk-dlls/'' and an ''.onLoad'' hook prepends that directory to PATH via ''Sys.setenv()'' when the package is loaded, and restored in ''.onUnload()''. The pre-built fallback downloads static libraries by default; set ''VTK_LINK_TYPE=shared'' before installation to download the DLL build instead. The pre-built bundles include the following VTK modules (plus their transitive dependencies): ''VTK_IOLegacy'', ''VTK_IOXML'', ''VTK_IOCore'', ''VTK_CommonCore'', and ''VTK_CommonDataModel''. Note that on Windows ''VTK_IONetCDF'', ''VTK_IOHDF'', ''VTK_GeovisCore'', and ''VTK_RenderingCore'' are additionally disabled because ''netcdf'' and ''libproj'' are not available in the ''Rtools45'' ''static.posix'' sysroot. Downstream packages can declare ''Imports: rvtk'' and obtain the correct compiler and linker flags at install time via rvtk::CppFlags() and rvtk::LdFlagsFile(), optionally restricting linking to a subset of modules via the ''modules'' argument. A convenience helper use_rvtk() (in the spirit of the ''usethis'' package) automates the full setup of a downstream package: it adds ''rvtk'' to ''Imports'' in ''DESCRIPTION'' and writes all files required to resolve VTK flags at install time (''src/Makevars'', ''src/Makevars.win'', ''tools/configure.R'', and ''R/rvtk_imports.R''), and keeps generated build artefacts out of version control.' authors: - family-names: Stamm given-names: Aymeric email: aymeric.stamm@cnrs.fr orcid: https://orcid.org/0000-0002-8725-3654 repository: https://astamm.r-universe.dev repository-code: https://github.com/astamm/rvtk commit: ff412edd17fd7dd9ed5c0a9e0c9b1f66f5a9923c url: https://astamm.github.io/rvtk/ date-released: '2026-05-24' contact: - family-names: Stamm given-names: Aymeric email: aymeric.stamm@cnrs.fr orcid: https://orcid.org/0000-0002-8725-3654