Skip to main content

Module thirdparty

Module thirdparty 

Source
Expand description

Thirdparty library download and build helpers.

Library source URLs are defined as constants so Renovate can track them.

§Download

download_libraries fetches each library’s source. Most libraries are downloaded as tarballs and extracted with the top-level directory stripped. Libraries that use git submodules (currently freetype2) are cloned with --recurse-submodules so submodule contents are always present. If the cloned source ships an autogen.sh script, it is run immediately after cloning to generate the configure script that build-kobo.sh expects.

§Build

build_libraries iterates over the packages in dependency order, applies kobo.patch if present, then invokes each library’s own build-kobo.sh script.

Enums§

LibrarySource
Describes how a thirdparty library’s source is obtained.

Constants§

BUILT_MARKER
Sentinel file written inside a library directory after a successful build.
BZIP2_VERSION
bzip2 version, tracked and downloaded via GitLab bzip2/bzip2.
DJVULIBRE_VERSION
FREETYPE2_VERSION
FreeType version, cloned from freetype/freetype at tag VER-X-Y-Z.
GUMBO_VERSION
Gumbo version, derived from the archive URL.
HARFBUZZ_VERSION
HarfBuzz version, derived from the archive URL.
JBIG2DEC_VERSION
jbig2dec version, tracked via GitHub Releases on ArtifexSoftware/jbig2dec.
LIBJPEG_VERSION
IJG libjpeg version tracked via the libjpeg-turbo jpeg-<version> tag mirror.
LIBPNG_VERSION
LIBRARY_NAMES 🔒
All libraries in dependency order for building.
LIBWEBP_VERSION
libwebp version, derived from the archive URL.
MUPDF_VERSION
MuPDF version, tracked via GitHub Releases on ArtifexSoftware/mupdf-downloads.
MUPDF_WEBP_PATCHES 🔒
OPENJPEG_VERSION
OpenJPEG version, derived from the archive URL.
SONAMES
Base names of all thirdparty shared libraries.
SOURCE_READY_MARKER
Sentinel file written inside a library directory after source extraction.
WEBP_PATCHED_MARKER 🔒
Marker file written after all MuPDF WebP patches succeed.
ZLIB_VERSION
Version strings for thirdparty libraries tracked by Renovate.

Functions§

apply_mupdf_webp_patches_if_needed
Applies Cadmus’ MuPDF WebP patch series unless it was already applied.
build_libraries
Builds the given libraries for the Kobo ARM target.
clean_untracked
Removes untracked files from a directory using git ls-files, falling back to removing and recreating the directory when git is unavailable.
download_libraries
Downloads source for the given libraries into thirdparty/.
git_clone_tag 🔒
Clones repo at tag into dest, recursing into submodules.
is_built 🔒
Returns true if the library in dir was already built and the sentinel file is present.
is_source_ready 🔒
Returns true if dir already has a completed source download marker.
library_source
Returns the source descriptor for a named library.
mupdf_webp_patches_applied 🔒
soname
Returns the SONAME of lib in libs_dir.
write_marker 🔒
Writes a marker file inside dir to persist task completion state.