R/libutils.R

Defines functions inlineCxxPlugin

inlineCxxPlugin <- function(...) {
    ismacos <- Sys.info()[["sysname"]] == "Darwin"
    openmpflag <- if (ismacos) "" else "$(SHLIB_OPENMP_CFLAGS)"
    plugin <- Rcpp::Rcpp.plugin.maker(
                  include.before = "#include <ldshrink.h>",
                  libs           = paste(
                      openmpflag,
                      RcppParallel::RcppParallelLibs(),
                      "$(LAPACK_LIBS) $(BLAS_LIBS) $(FLIBS)"
                  ),
                  package        = "ldshrink"
              )
    settings <- plugin()
    settings$env$PKG_CPPFLAGS <- paste("-I../inst/include", openmpflag)
    if (!ismacos) settings$env$USE_CXX11 <- "yes"
    settings
}
stephenslab/LDshrink documentation built on April 8, 2021, 1:52 a.m.