summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorVitalii Kuzhdin2025-04-10 22:35:45 +0200
committerVitalii Kuzhdin2025-04-10 22:35:45 +0200
commit573073dae5c6b59b7d8edef03dd37d6ce3a3502f (patch)
treed388435a0a3786e958297f22e89e8faca07b74ba
downloadaur-lib32-libavif.tar.gz
Initial build (1.2.1)
-rw-r--r--.SRCINFO27
-rw-r--r--.gitignore6
-rw-r--r--.nvchecker.toml4
-rw-r--r--PKGBUILD77
-rw-r--r--libavif_gtest.patch13
5 files changed, 127 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..53c2018a0ad4
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,27 @@
+pkgbase = lib32-libavif
+ pkgdesc = Library for encoding and decoding .avif files (32-bit)
+ pkgver = 1.2.1
+ pkgrel = 1
+ url = https://github.com/AOMediaCodec/libavif
+ arch = x86_64
+ license = LicenseRef-libavif
+ makedepends = cmake>=3.13
+ makedepends = lib32-gdk-pixbuf2
+ makedepends = lib32-gtest
+ depends = lib32-aom
+ depends = lib32-libdav1d
+ depends = lib32-gcc-libs
+ depends = lib32-glib2
+ depends = lib32-glibc
+ depends = lib32-libwebp
+ depends = lib32-libyuv
+ depends = lib32-rav1e
+ depends = lib32-svt-av1
+ depends = libavif>=1.2.1
+ provides = libavif.so
+ source = libavif-1.2.1.tar.gz::https://github.com/AOMediaCodec/libavif/archive/refs/tags/v1.2.1.tar.gz
+ source = libavif_gtest.patch
+ sha256sums = 9c859c7c12ccb0f407511bfe303e6a7247f5f6738f54852662c6df8048daddf4
+ sha256sums = 2b35300a447f70d56809f35be961e6c12dff3e9034043775a42f4c0aba6a09c5
+
+pkgname = lib32-libavif
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..7ad41061a76d
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,6 @@
+*
+!PKGBUILD
+!.SRCINFO
+!.gitignore
+!.nvchecker.toml
+!*.patch
diff --git a/.nvchecker.toml b/.nvchecker.toml
new file mode 100644
index 000000000000..ed8ebc2d5e0d
--- /dev/null
+++ b/.nvchecker.toml
@@ -0,0 +1,4 @@
+[lib32-libavif]
+source = "archpkg"
+archpkg = "libavif"
+strp_release = true
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..da7b263725a0
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,77 @@
+# Maintainer: Vitalii Kuzhdin <vitaliikuzhdin@gmail.com>
+
+_name="libavif"
+pkgname="lib32-${_name}"
+pkgver=1.2.1
+pkgrel=1
+pkgdesc="Library for encoding and decoding .avif files (32-bit)"
+arch=('x86_64')
+url="https://github.com/AOMediaCodec/${_name}"
+license=('LicenseRef-libavif')
+depends=('lib32-aom' 'lib32-libdav1d' 'lib32-gcc-libs' 'lib32-glib2'
+ 'lib32-glibc' 'lib32-libwebp' 'lib32-libyuv' 'lib32-rav1e'
+ 'lib32-svt-av1' "${_name}>=${pkgver}")
+makedepends=('cmake>=3.13' 'lib32-gdk-pixbuf2' 'lib32-gtest') # 'nasm'
+provides=("${_name}.so")
+_pkgsrc="${_name}-${pkgver}"
+source=("${_pkgsrc}.tar.gz::${url}/archive/refs/tags/v${pkgver}.tar.gz"
+ "${_name}_gtest.patch")
+sha256sums=('9c859c7c12ccb0f407511bfe303e6a7247f5f6738f54852662c6df8048daddf4'
+ '2b35300a447f70d56809f35be961e6c12dff3e9034043775a42f4c0aba6a09c5')
+
+prepare() {
+ cd "${srcdir}/${_pkgsrc}"
+ patch -Np1 -i "${srcdir}/${_name}_gtest.patch"
+}
+
+build() {
+ export CFLAGS+=" -m32"
+ export CXXFLAGS+=" -m32"
+ export LDFLAGS+=" -m32"
+ export PKG_CONFIG_PATH='/usr/lib32/pkgconfig'
+ local cmake_options=(
+ -G 'Unix Makefiles'
+ -B "${_pkgsrc}/build"
+ -S "${_pkgsrc}"
+ -Wno-dev
+ -DCMAKE_BUILD_TYPE:STRING='None'
+ -DCMAKE_INSTALL_PREFIX:PATH='/usr'
+ -DCMAKE_INSTALL_LIBDIR='lib32'
+ -DAVIF_BUILD_APPS:BOOL=OFF
+ -DAVIF_BUILD_TESTS:BOOL=ON
+ -DAVIF_BUILD_EXAMPLES:BOOL=OFF
+ -DAVIF_BUILD_MAN_PAGES:BOOL=OFF
+ -DAVIF_BUILD_GDK_PIXBUF:BOOL=ON
+ -DAVIF_CODEC_AOM=SYSTEM
+ -DAVIF_CODEC_DAV1D=SYSTEM
+ -DAVIF_CODEC_RAV1E=SYSTEM
+ -DAVIF_CODEC_SVT=SYSTEM
+ -DAVIF_LIBSHARPYUV=SYSTEM
+ -DAVIF_GTEST:BOOL=ON
+)
+
+ cd "${srcdir}"
+ cmake "${cmake_options[@]}"
+ cmake --build "${_pkgsrc}/build"
+}
+
+check() {
+ local excluded_tests=""
+ local ctest_flags=(
+ --test-dir "${_pkgsrc}/build"
+ --output-on-failure
+ --parallel $(nproc)
+ --exclude-regex "${excluded_tests}"
+ )
+
+ cd "${srcdir}"
+ ctest "${ctest_flags[@]}"
+}
+
+package() {
+ cd "${srcdir}"
+ DESTDIR="${pkgdir}" cmake --install "${_pkgsrc}/build"
+
+ cd "${pkgdir}/usr"
+ rm -rf "bin" "include" "share"
+}
diff --git a/libavif_gtest.patch b/libavif_gtest.patch
new file mode 100644
index 000000000000..d91466f600a8
--- /dev/null
+++ b/libavif_gtest.patch
@@ -0,0 +1,13 @@
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -43,6 +43,10 @@
+ add_test(NAME avifyuv_${AVIFYUV_MODE} COMMAND avifyuv -m ${AVIFYUV_MODE})
+ endforeach()
+
++if(AVIF_GTEST)
++ find_package(GTest REQUIRED)
++endif()
++
+ if(AVIF_FUZZTEST OR AVIF_GTEST OR AVIF_BUILD_APPS)
+ add_library(aviftest_helpers OBJECT gtest/aviftest_helpers.cc)
+ target_link_libraries(aviftest_helpers PUBLIC avif_apps avif)