diff --git a/DEVELOPERS b/DEVELOPERS index f482e3fe56..7b0f65fbfb 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -55,6 +55,7 @@ F: package/brotli/ F: package/bubblewrap/ F: package/cage/ F: package/cog/ +F: package/libavif/ F: package/libdex/ F: package/libepoxy/ F: package/libmanette/ diff --git a/package/Config.in b/package/Config.in index eeb11dfa83..a52ed146d9 100644 --- a/package/Config.in +++ b/package/Config.in @@ -1677,6 +1677,7 @@ menu "Graphics" source "package/leptonica/Config.in" source "package/lesstif/Config.in" source "package/libart/Config.in" + source "package/libavif/Config.in" source "package/libdecor/Config.in" source "package/libdmtx/Config.in" source "package/libdri2/Config.in" diff --git a/package/libavif/Config.in b/package/libavif/Config.in new file mode 100644 index 0000000000..a15e9fc733 --- /dev/null +++ b/package/libavif/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_LIBAVIF + bool "libavif" + depends on !BR2_STATIC_LIBS # dav1d, dlfcn.h + depends on BR2_TOOLCHAIN_HAS_THREADS # dav1d, pthread + select BR2_PACKAGE_DAV1D + help + Friendly, portable C implementation of the AV1 Image File + Format. + + https://github.com/AOMediaCodec/libavif + +comment "libavif needs a toolchain w/ threads, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/libavif/libavif.hash b/package/libavif/libavif.hash new file mode 100644 index 0000000000..f4599cdb0b --- /dev/null +++ b/package/libavif/libavif.hash @@ -0,0 +1,3 @@ +sha256 dc56708c83a4b934a8af2b78f67f866ba2fb568605c7cf94312acf51ee57d146 libavif-1.0.4.tar.gz + +sha256 10952217a6d404de8bf8a997fbea9b88f682df1fe98cb9b9f467ade641525639 LICENSE diff --git a/package/libavif/libavif.mk b/package/libavif/libavif.mk new file mode 100644 index 0000000000..b87597995a --- /dev/null +++ b/package/libavif/libavif.mk @@ -0,0 +1,34 @@ +################################################################################ +# +# libavif +# +################################################################################ + +LIBAVIF_VERSION = 1.0.4 +LIBAVIF_SITE = $(call github,AOMediaCodec,libavif,v$(LIBAVIF_VERSION)) +LIBAVIF_LICENSE = BSD-2-Clause, IJG, Apache-2.0 +LIBAVIF_LICENSE_FILES = LICENSE +LIBAVIF_INSTALL_STAGING = YES + +# Only the dav1d decoder is packaged at the moment. +LIBAVIF_DEPENDENCIES = dav1d +LIBAVIF_CONF_OPTS = \ + -DAVIF_BUILD_APPS=OFF \ + -DAVIF_BUILD_EXAMPLES=OFF \ + -DAVIF_BUILD_MAN_PAGES=OFF \ + -DAVIF_BUILD_TESTS=OFF \ + -DAVIF_CODEC_AOM=OFF \ + -DAVIF_CODEC_DAV1D=ON \ + -DAVIF_CODEC_LIBGAV1=OFF \ + -DAVIF_CODEC_RAV1E=OFF \ + -DAVIF_CODEC_SVT=OFF \ + -DAVIF_CODEC_AVM=OFF \ + -DAVIF_ENABLE_GTEST=OFF + +# There is no CMake options to explicitly enable/disable usage of +# libyuv, only autodetection :-( +ifeq ($(BR2_PACKAGE_LIBYUV),y) +LIBAVIF_DEPENDENCIES += libyuv +endif + +$(eval $(cmake-package))