Files
signal-cli-rest-api/ext/libraries/libsignal-client

HOWTO BUILD

cross is used for cross compiling libsignal-client.

  • download new release from https://github.com/signalapp/libsignal-client/releases

  • unzip + change into directory

  • cd into java directory

  • run cross build --target x86_64-unknown-linux-gnu --release -p libsignal-jni

    run cross build --target armv7-unknown-linux-gnueabihf --release -p libsignal-jni

    run cross build --target aarch64-unknown-linux-gnu --release -p libsignal-jni to build the library for x86-64, armv7 and arm64

  • the built library will be in the target/<architecture>/release folder

Why?

Building libsignal-client every time a new docker image gets released takes really long (especially for cross platform builds with docker/buildx and QEMU). Furthermore, due to this bug here (https://github.com/docker/buildx/issues/395) we would need to use an ugly workaround for that right now. As libsignal-client isn't released very often I guess it's okay to manually build a new version once in a while.