Skip to content

Prebuilt igraph static library for Bioconductor packages

Notifications You must be signed in to change notification settings

libscran/Rigraphlib

Folders and files

NameName
Last commit message
Last commit date
Mar 9, 2025
Feb 24, 2025
Sep 20, 2024
Mar 5, 2025
Feb 24, 2025
Sep 20, 2024
Mar 9, 2025
Sep 20, 2024
Mar 7, 2025
Sep 20, 2024
Sep 20, 2024
Feb 7, 2025

Repository files navigation

Static igraph libraries for R packages

Environment Status
BioC-release Release OK
BioC-devel Devel OK

Builds the igraph static library for use in R/Bioconductor packages. This is primarily intended for R packages that wrap other C/C++ libraries that depend on the igraph C library and cannot easily be modified to use the usual igraph R package. By vendoring in the source code, we reduce our susceptibility to out-of-release-schedule changes in results due to igraph updates. It also allows developers to access functionality that might yet not be available from the R bindings.

For downstream package developers, use of Rigraphlib is as simple as adding:

Imports: Rigraphlib

to the DESCRIPTION, and setting:

RIGRAPH_FLAGS=$(shell "${R_HOME}/bin${R_ARCH_BIN}/Rscript" -e 'Rigraphlib::pkgconfig("PKG_CPPFLAGS")')
PKG_CPPFLAGS=$(RIGRAPH_FLAGS)
RIGRAPH_LIBS=$(shell "${R_HOME}/bin${R_ARCH_BIN}/Rscript" -e 'Rigraphlib::pkgconfig("PKG_LIBS")')
PKG_LIBS=$(RIGRAPH_LIBS) $(LAPACK_LIBS) $(BLAS_LIBS) $(FLIBS) 

in the src/Makevars. We use R's own BLAS and LAPACK libraries to avoid redundant recompilation of igraph's vendored copies.

We can update the vendored copy of the source code with:

VERSION=0.10.15
url=https://github.com/igraph/igraph/releases/download/${VERSION}/igraph-${VERSION}.tar.gz
curl -L ${url} > sources.tar.gz

About

Prebuilt igraph static library for Bioconductor packages

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published