summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorGonzalo Exequiel Pedone2024-04-17 21:40:18 -0300
committerGonzalo Exequiel Pedone2024-04-17 21:40:18 -0300
commit2768a0007185795529c266090e02abca96d234f0 (patch)
tree86e277aada63742e021af6241a4a2355059c7da9
downloadaur-android-x86-libjxl.tar.gz
New package.
-rw-r--r--.SRCINFO30
-rw-r--r--.gitignore6
-rw-r--r--PKGBUILD91
3 files changed, 127 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..696af3f2f98f
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,30 @@
+pkgbase = android-x86-libjxl
+ pkgdesc = JPEG XL image format reference implementation (Android x86)
+ pkgver = 0.10.2
+ pkgrel = 1
+ url = https://jpeg.org/jpegxl/
+ arch = any
+ license = BSD-3-Clause
+ makedepends = git
+ makedepends = android-cmake
+ makedepends = android-x86-gdk-pixbuf2
+ makedepends = java-environment
+ makedepends = python
+ makedepends = asciidoc
+ makedepends = xdg-utils
+ depends = android-x86-brotli
+ depends = android-x86-giflib
+ depends = android-x86-highway
+ depends = android-x86-libjpeg-turbo
+ depends = android-x86-libpng
+ depends = android-x86-openexr
+ optdepends = android-x86-gdk-pixbuf2: for gdk-pixbuf loader
+ optdepends = java-runtime: for JNI bindings
+ options = !strip
+ options = !buildflags
+ options = staticlibs
+ options = !emptydirs
+ source = https://github.com/libjxl/libjxl/archive/refs/tags/v0.10.2.tar.gz
+ md5sums = e383b622cb2caef4dfcc8047f5a0fe72
+
+pkgname = android-x86-libjxl
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..b5b03b115225
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,6 @@
+pkg
+src
+*.tar.xz
+*.tar.gz
+*.tar.bz2
+*.asc
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..b3db1c7296b3
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,91 @@
+# Maintainer: Gonzalo Exequiel Pedone <hipersayan DOT x AT gmail DOT com>
+# Contributor: Daniel Bermond <dbermond@archlinux.org>
+
+_android_arch=x86
+
+pkgname=android-${_android_arch}-libjxl
+pkgver=0.10.2
+pkgrel=1
+arch=('any')
+pkgdesc="JPEG XL image format reference implementation (Android ${_android_arch})"
+url='https://jpeg.org/jpegxl/'
+license=('BSD-3-Clause')
+depends=("android-${_android_arch}-brotli"
+ "android-${_android_arch}-giflib"
+ "android-${_android_arch}-highway"
+ "android-${_android_arch}-libjpeg-turbo"
+ "android-${_android_arch}-libpng"
+ "android-${_android_arch}-openexr")
+makedepends=('git'
+ 'android-cmake'
+ "android-${_android_arch}-gdk-pixbuf2"
+ "java-environment"
+ "python"
+ "asciidoc"
+ "xdg-utils")
+optdepends=("android-${_android_arch}-gdk-pixbuf2: for gdk-pixbuf loader"
+ "java-runtime: for JNI bindings")
+options=(!strip !buildflags staticlibs !emptydirs)
+source=("https://github.com/libjxl/libjxl/archive/refs/tags/v${pkgver}.tar.gz")
+md5sums=('e383b622cb2caef4dfcc8047f5a0fe72')
+
+prepare() {
+ cd "${srcdir}/libjxl-${pkgver}"
+ source android-env ${_android_arch}
+
+ ./deps.sh
+}
+
+build() {
+ cd "${srcdir}/libjxl-${pkgver}"
+ source android-env ${_android_arch}
+
+ export CFLAGS="${CFLAGS} -DNDEBUG"
+ export CXXFLAGS="${CXXFLAGS} -DNDEBUG"
+
+ android-${_android_arch}-cmake \
+ -S . \
+ -B build \
+ -DBUILD_TESTING=OFF \
+ -DJPEGXL_ENABLE_BENCHMARK=OFF \
+ -DJPEGXL_ENABLE_DOXYGEN=OFF \
+ -DJPEGXL_ENABLE_EXAMPLES=OFF \
+ -DJPEGXL_ENABLE_FUZZERS=OFF \
+ -DJPEGXL_ENABLE_MANPAGES=OFF \
+ -DJPEGXL_ENABLE_PLUGINS=ON \
+ -DJPEGXL_ENABLE_TOOLS=OFF \
+ -DJPEGXL_ENABLE_VIEWERS=OFF \
+ -DJPEGXL_ENABLE_SJPEG=OFF \
+ -DJPEGXL_ENABLE_PLUGIN_GIMP210=OFF \
+ -DJPEGXL_FORCE_SYSTEM_BROTLI=ON \
+ -DJPEGXL_FORCE_SYSTEM_GTEST=ON \
+ -DJPEGXL_FORCE_SYSTEM_HWY=ON \
+ -DJPEGXL_FORCE_SYSTEM_LCMS2=ON \
+ -DJPEGXL_BUNDLE_LIBPNG=OFF \
+ -DJPEGXL_ENABLE_JNI=ON \
+ -DJPEGXL_INSTALL_JARDIR="${ANDROID_PREFIX_SHARE}/java" \
+ -DHWY_INCLUDE_DIR="${ANDROID_PREFIX_INCLUDE}" \
+ -DHWY_LIBRARY="${ANDROID_PREFIX_LIB}/libhwy.so" \
+ -DBROTLI_INCLUDE_DIR="${ANDROID_PREFIX_INCLUDE}/brotli" \
+ -DBROTLICOMMON_LIBRARY="${ANDROID_PREFIX_LIB}/libbrotlicommon.so" \
+ -DBROTLIENC_LIBRARY="${ANDROID_PREFIX_LIB}/libbrotlienc.so" \
+ -DBROTLIDEC_LIBRARY="${ANDROID_PREFIX_LIB}/libbrotlidec.so" \
+ -DLCMS2_INCLUDE_DIR="${ANDROID_PREFIX_INCLUDE}" \
+ -DLCMS2_LIBRARY="${ANDROID_PREFIX_LIB}/liblcms2.so" \
+ -DPNG_PNG_INCLUDE_DIR="${ANDROID_PREFIX_INCLUDE}/png" \
+ -DPNG_LIBRARY="${ANDROID_PREFIX_LIB}/libpng.so" \
+ -DZLIB_INCLUDE_DIR="${ANDROID_PREFIX_INCLUDE}" \
+ -DZLIB_LIBRARY_RELEASE="${ANDROID_PREFIX_LIB}/libz.so" \
+ -Wno-dev
+ sed -i "s|liblcms2.so -lgdk_pixbuf-2.0 |liblcms2.so -L${ANDROID_PREFIX_LIB} -lgdk_pixbuf-2.0 |g" build/plugins/gdk-pixbuf/CMakeFiles/pixbufloader-jxl.dir/link.txt
+ make -C build $MAKEFLAGS
+}
+
+package() {
+ cd "${srcdir}/libjxl-${pkgver}"
+ source android-env ${_android_arch}
+
+ make -C build DESTDIR="$pkgdir" install
+ ${ANDROID_STRIP} -g --strip-unneeded "${pkgdir}"/${ANDROID_PREFIX_LIB}/*.so
+ mv "${pkgdir}/${ANDROID_PREFIX_SHARE}/java"/{org.jpeg.jpegxl,jpegxl}.jar
+}