From c5de401f753a1ee02a0ca41598f1c48ab07eb89c Mon Sep 17 00:00:00 2001 From: Clement Escoffier Date: Mon, 21 Oct 2024 15:57:00 +0200 Subject: [PATCH] Add Brotli4J Native Dependencies to the BOM MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Quarkus automatically includes the Brotli native dependency corresponding to the platform on which the application is built. However, this approach doesn’t work when the application needs to support multiple platforms. In such cases, users must manually include the appropriate dependencies. This commit adds Brotli4J native dependencies to the BOM and updates the documentation to guide users on which dependencies to add for various platforms. --- bom/application/pom.xml | 45 +++++++++++++++++++++ docs/src/main/asciidoc/vertx-reference.adoc | 30 ++++++++++++++ 2 files changed, 75 insertions(+) diff --git a/bom/application/pom.xml b/bom/application/pom.xml index c9b791cf476a1..965ffd78c5d02 100644 --- a/bom/application/pom.xml +++ b/bom/application/pom.xml @@ -286,6 +286,51 @@ native-linux-x86_64 ${brotli4j.version} + + com.aayushatharva.brotli4j + native-linux-s390x + ${brotli4j.version} + + + com.aayushatharva.brotli4j + native-linux-ppc64le + ${brotli4j.version} + + + com.aayushatharva.brotli4j + native-linux-aarch64 + ${brotli4j.version} + + + com.aayushatharva.brotli4j + native-linux-armv7 + ${brotli4j.version} + + + com.aayushatharva.brotli4j + native-linux-riscv64 + ${brotli4j.version} + + + com.aayushatharva.brotli4j + native-windows-x86_64 + ${brotli4j.version} + + + com.aayushatharva.brotli4j + native-windows-aarch64 + ${brotli4j.version} + + + com.aayushatharva.brotli4j + native-osx-x86_64 + ${brotli4j.version} + + + com.aayushatharva.brotli4j + native-osx-aarch64 + ${brotli4j.version} + io.smallrye.certs diff --git a/docs/src/main/asciidoc/vertx-reference.adoc b/docs/src/main/asciidoc/vertx-reference.adoc index b542c1ff0f2d4..895002137f189 100644 --- a/docs/src/main/asciidoc/vertx-reference.adoc +++ b/docs/src/main/asciidoc/vertx-reference.adoc @@ -1243,4 +1243,34 @@ public class MyCustomizer implements VertxOptionsCustomizer { The _customizer_ beans received the `VertxOptions` (coming from the application configuration), and can modify them. +== Brotli4J and cross-platform support +Brotli4J is a native library that provides support for the Brotli compression algorithm. +By default, Quarkus includes the Brotli native library matching the platform you are running on. +But sometimes, you need to include the native library for a different platform. + +In this case, you need to explicitly add a dependency to your project. +For example, if you need to include the native library for `linux-aarch64`, you can add the following dependency: + +[source,xml] +---- + + com.aayushatharva.brotli4j + native-linux-aarch64 + +---- + +This will include the native library for `linux-aarch64` in your project, in addition to the one matching your machine. + +Here is the list of available brotli4j artifacts for the different platforms: + +* `native-linux-x86_64` +* `native-linux-s390x` +* `native-linux-ppc64le` +* `native-linux-aarch64` +* `native-linux-armv7` +* `native-linux-riscv64` +* `native-windows-x86_64` +* `native-windows-aarch64` +* `native-macos-x86_64` +* `native-macos-aarch64`