This repository contains scripts to build and publish an Alpine compatible version of libv8.
The Alpine Linux distribution relies on the musl libc instead of the traditional GNU C Library (glibc). Many binary packages need to be rebuilt with musl in order to work on Alpine.
The libv8 gem is a binary build of V8. At each release, the gem is published with 2 versions:
- the source gem: odd version number (e.g.
6.3.292.48.1
) - the compiled gem: even version number (e.g.
6.3.292.48.0
)
In Ruby, the binary gems are bundled per OS. Distinguishing variant builds such as musl or glibc is not possible. It means the default binary version of libv8 does not work on Alpine Linux.
When installing libv8 on some versions of Alpine, Ruby will fetch automatically the latest version of libv8. This version is the compiled version for the glibc.
This repository forces the installation & compilation of the source version and bundles it into a native Linux musl gem.