From 7e0e3c0c6a2cd4e76ebca17ed16a37155992025e Mon Sep 17 00:00:00 2001 From: Andrew Geissler Date: Fri, 25 Feb 2022 20:34:39 +0000 Subject: subtree updates feb 25 2022 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit poky: 27ff420543..49168f5d55: Ahsan Hussain (1): staging: use relative path in sysroot_stage_dir() Alejandro Hernandez Samaniego (5): core-image-tiny-initramfs: Mark recipe as 32 bit ARM compatible kernel.bbclass: Allow initramfs to be built from a separate multiconfig busybox: Add shell arithmetic to work with poky-tiny newlib: Upgrade 4.1.0 -> 4.2.0 documentation: Add multiconfig initramfs configuration: Alex Stewart (1): sudo: add /etc/sudoers to sudo-lib conffiles Alexander Kanavin (84): ruby: do not parallel install bind: upgrade 9.16.24 -> 9.16.25 ifupdown: upgrade 0.8.36 -> 0.8.37 ethtool: upgrade 5.15 -> 5.16 webkitgtk: upgrade 2.34.3 -> 2.34.4 debianutils: upgrade 5.5 -> 5.7 diffoscope: upgrade 200 -> 201 libbsd: upgrade 0.11.3 -> 0.11.5 libical: upgrade 3.0.12 -> 3.0.13 zstd: update 1.5.0 -> 1.5.2 rust: update 1.58.0 -> 1.58.1 wpa-supplicant: update 2.9 -> 2.10 ltp: update 20210927 -> 20220121 gnutls: update 3.7.2 -> 3.7.3 libusb1: correct SRC_URI gobject-introspection: replace prelink-rtld with objdump -p util-linux: update 2.37.2 -> 2.37.3 cmake: update 3.22.1 -> 3.22.2 git: merge .inc into .bb git: build manpages from source subject to manpages PACKAGECONFIG git: update 2.34.1 -> 2.35.1 python3-pycryptodome: update 3.12.0 -> 3.14.0 at: update 3.2.2 -> 3.2.4 sudo: update 1.9.8p2 -> 1.9.9 seatd: add recipe weston: upgrade 9.0.0 -> 10.0.0 xf86-input-libinput: update 1.2.0 -> 1.2.1 glib-2.0: upgrade 2.70.2 -> 2.70.3 lua: upgrade 5.4.3 -> 5.4.4 mmc-utils: upgrade to latest revision python3-cython: upgrade 0.29.26 -> 0.29.27 python3-hypothesis: upgrade 6.36.0 -> 6.36.1 python3-pip: upgrade 21.3.1 -> 22.0.2 cups: upgrade 2.4.0 -> 2.4.1 stress-ng: upgrade 0.13.10 -> 0.13.11 mesa: upgrade 21.3.4 -> 21.3.5 piglit: upgrade to latest revision puzzles: upgrade to latest revision diffoscope: upgrade 201 -> 202 libcap: upgrade 2.62 -> 2.63 libusb1: upgrade 1.0.24 -> 1.0.25 re2c: upgrade 2.2 -> 3.0 libgpg-error: update 1.43 -> 1.44 harfbuzz: upgrade 3.2.0 -> 3.3.1 qemu: replace a gtk wrapper with directly setting environment from runqemu runqemu: preload uninative libraries when host gl drivers are in use git: restore reproducibility on centos 7 insane.bbclass: use multiprocessing for collecting 'objdump -p' output llvm: update 12.0.1 -> 13.0.1 python3-numpy: update 1.22.1 -> 1.22.2 sstate: additional debugging when fetch fails occur sstate: fix up additional debugging when fetch fails occur ruby: correctly set native/target dependencies core-image-weston-sdk: synchronize with core-image-sato-sdk gstreamer1.0: disable flaky gstbin:test_watch_for_state_change test weston-init: disable systemd watchdog option webkitgtk: drop patch merged upstream man-db: update 2.10.0 -> 2.10.1 webkitgtk: remove rejected patch vulkan: update 1.2.198 -> 1.3.204 vulkan-samples: update to latest revision xkeyboard-config: update 2.34 -> 2.35.1 libgit2: update 1.3.0 -> 1.4.0 util-linux: upgrade 2.37.3 -> 2.37.4 python3-tomli: upgrade 2.0.0 -> 2.0.1 repo: upgrade 2.20 -> 2.21 help2man: upgrade 1.48.5 -> 1.49.1 meson: upgrade 0.61.1 -> 0.61.2 mmc-utils: upgrade to latest revision python3-dtschema: upgrade 2021.12 -> 2022.1 python3-pytest: upgrade 7.0.0 -> 7.0.1 vala: upgrade 0.54.6 -> 0.54.7 gi-docgen: upgrade 2021.8 -> 2022.1 pango: upgrade 1.48.10 -> 1.50.4 piglit: upgrade to latest revision shaderc: upgrade 2022.0 -> 2022.1 gst-examples: upgrade 1.18.5 -> 1.18.6 libical: upgrade 3.0.13 -> 3.0.14 diffoscope: upgrade 202 -> 204 gdb: update 11.1 -> 11.2 weston-init: replace deprecated/disabled fbdev with drm backend devtool: explicitly set main or master branches in upgrades when available base/staging: use HOST_PREFIX, not TARGET_PREFIX insane: use HOST_ variables, not TARGET_ to determine the cross system Alexandru Ardelean (1): libsndfile1: bump to version 1.0.31 Andrej Valek (3): busybox: refresh defconfig oeqa: qemu: create missing directory for _write_dump dhcpcd: add option to set DBDIR location Andres Beltran (1): create-spdx: add support for SDKs Andrey Zhizhikin (1): waffle: add wayland-protocols when building with wayland Bruce Ashfield (18): linux-yocto/5.15: update to v5.15.15 linux-yocto/5.10: update to v5.10.92 x86: fix defconfig configuration warnings linux-yocto/5.15: update to v5.15.16 linux-yocto/5.10: update to v5.10.93 linux-libc-headers: update to v5.16 qemuarm64: Add tiny ktype to qemuarm64 bsp lttng-modules: fix build against v5.17+ linux-yocto-dev: update to v5.17+ linux-yocto/5.15: update to v5.15.19 linux-yocto/5.10: update to v5.10.96 lttng-modules: update devupstream to latest 2.13 linux-yocto/5.15: update to v5.15.22 linux-yocto/5.10: update to v5.10.99 linux-yocto/5.15: ppc/riscv: fix build with binutils 2.3.8 linux-yocto/5.10: ppc/riscv: fix build with binutils 2.3.8 linux-yocto/5.10: fix dssall build error with binutils 2.3.8 linux-yocto/5.15: fix dssall build error with binutils 2.3.8 Carlos Rafael Giani (1): libxml2: Backport python3-lxml workaround patch Changhyeok Bae (1): connman: update 1.40 -> 1.41 Changqing Li (2): mdadm: fix testcase 00multipath failure nghttp2: fix for multilib support Chen Qi (1): mdadm: install mdcheck Christian Eggers (5): sdk: fix search for dynamic loader mc: fix build if ncurses have been configured without wide characters curl: configure with '--without-ssl' if ssl is disabled gcsections: add nativesdk-cairo to exclude list dev-manual: update example from kernel.bbclass Daiane Angolini (1): classes/lib/useradd: The option -P is deprecated Daniel Gomez (2): bitbake: contrib: Fix hash server Dockerfile dependencies bitbake: asyncrpc: Fix attribute errors Daniel Müller (1): scripts/runqemu-ifdown: Don't treat the last iptables command as special Denys Dmytriyenko (2): wayland-protocols: upgrade 1.24 -> 1.25 yocto-check-layer: add ability to perform tests from a global bbclass Florian Amstutz (1): devtool: deploy-target: Remove stripped binaries in pseudo context Hongxu Jia (1): glibc: fix create thread failed in unprivileged process Joe Slater (1): virglrenderer: fix CVE-2022-0135 and -0175 Jon Mason (1): linux-yocto-dev: add qemuriscv32 Jose Quaresma (18): icecc.bbclass: replace deprecated bash command substitution spirv-headers: bump to b42ba6 spirv-tools: upgrade 2021.4 -> 2022.1 glslang: upgrade 11.7.1 -> 11.8.0 shaderc: upgrade 2021.3 -> 2021.4 shaderc: upgrade 2021.4 -> 2022.0 gstreamer1.0: upgrade 1.18.5 -> 1.20.0 gstreamer1.0-plugins-base: upgrade 1.18.5 -> 1.20.0 gstreamer1.0-plugins-good: upgrade 1.18.5 -> 1.20.0 gstreamer1.0-plugins-bad: upgrade 1.18.5 -> 1.20.0 gstreamer1.0-plugins-ugly: upgrade 1.18.5 -> 1.20.0 gstreamer1.0-rtsp-server: upgrade 1.18.5 -> 1.20.0 gstreamer1.0-libav: upgrade 1.18.5 -> 1.20.0 gstreamer1.0-vaapi: upgrade 1.18.5 -> 1.20.0 gstreamer1.0-omx: upgrade 1.18.5 -> 1.20.0 gstreamer1.0-python: upgrade 1.18.5 -> 1.20.0 gst-devtools: upgrade 1.18.5 -> 1.20.0 gstreamer1.0: update licenses of all modules Joshua Watt (4): classes/create-spdx: Add packageSupplier field classes/create-spdx: Remove unnecessary package spdx: Add set helper for list properties bitbake: msg: Ensure manually created loggers have the once filter Justin Bronder (1): initramfs-framework: unmount automounts before switch_root Kai Kang (2): toolchain-scripts.bbclass: use double quotes for exported PS1 webkitgtk: 2.34.4 -> 2.34.5 Khem Raj (17): ffmpeg: Remove --disable-msa2 mips option systemd: Forward port musl patches ruby: Fix build on riscv/musl musl: Update to latest master libstd-rs: Apply patches to right version of libc image-prelink: Remove bbclass qemuppc64.conf: Remove commented prelink use meta: Remove libsegfault and catchsegv man-db: Fix build with clang diffutils: Link with libbcrypt on mingw binutils: Upgrade to 2.38 release opensbi: Upgrade to 1.0 u-boot: Fix RISCV build with binutils 2.38 libgit2: Upgrade to 1.4.1 grub: Fix build with bintutils 2.38 on riscv boost: Fix build on 32bit arches with 64bit time_t defaults scripts/documentation-audit: Use renamed LICENSE_FLAGS_ACCEPTED variable Konrad Weihmann (2): ruby: fix DEPENDS append gmp: fix EXTRA_OECONF for mipsarchr6 Kory Maincent (1): icu: fix make_icudata dependencies Lee Chee Yang (1): libarchive : update to 3.5.3 LiweiSong (1): qemu: add tpm string section to qemu acpi table Luna Gräfje (1): tune-cortexa72: Fix a misspelt override in PACKAGE_EXTRA_ARCHS Marek Vasut (1): kernel-fitimage: Add missing dependency for UBOOT_ENV Markus Niebel (1): kmscube: depend on virtual/libgbm Markus Volk (2): libical: build gobject and vala introspection seatd: build systemd backend if DISTRO_FEATURE systemd is set Marta Rybczynska (1): bitbake: lib/bb: fix exit when found renamed variables Martin Beeger (1): cmake: remove bogus CMAKE_LDFLAGS_FLAGS definition from toolchain file Martin Jansa (2): systemd: fix DeprecationWarning about regexps icecc.bbclass: fix syntax error Matthias Klein (1): boost: add json lib Michael Halstead (3): uninative: Upgrade to 3.5 releases: update to include 3.1.14 releases: update to include 3.4.2 Michael Opdenacker (8): migration-3.5: mention task specific network access dev-manual: stop mentioning the Angstrom distribution dev-manual: new "working with pre-compiled libraries" section manuals: improve references to classes manuals: propose https for SSTATE_MIRRORS ref-manual: add usage details about ccache.bbclass ref-manual: update TCLIBC description manuals: add 3.4 and 3.4.1 release notes after migration information Oleksandr Kravchuk (1): ell: update to 0.48 Oleksandr Suvorov (1): depmodwrapper-cross: add config directory option Pavel Zhukov (3): systemd: allow to create directory whose path contains symlink systemd: enable KeepConfiguration= when running on network filesystem patch.py: Prevent git repo reinitialization Peter Kjellerstedt (21): sstate: A third fix for for touching files inside pseudo devtool: sdk-update: Remove an unnecessary \n from SSTATE_MIRRORS sstatetests: Correct a typo in a comment glibc-tests: Correct PACKAGE_DEBUG_SPLIT_STYLE test-manual: Correct two references to BB_SKIP_NETTESTS package: Split out package_debug_vars from split_and_strip_files package: Make package_debug_vars() return a dict package: Pass dv (debug_vars) around instead of individual vars bitbake: bitbake-user-manual: Remove unnecessary \n from a PREMIRRORS example bitbake: tests/fetch: Skip the crate tests if network tests are disabled bitbake: tests/fetch: Remove unnecessary \n from mirror variables bitbake: tests/fetch: Improve the verbose messages for skipped tests bitbake: tests/fetch: Unify how git commands are run bitbake: tests/fetch: Only set the Git user name/email if they are not already set bitbake: tests/fetch: Make test_npm_premirrors work with the current fetcher bitbake: fetch2: Correct handling of replacing the basename in URIs bitbake: fetch2: npm: Put all downloaded files in the npm2 directory poky.conf: Remove unnecessary \n from PREMIRRORS local.conf.sample: Remove unnecessary \n from the SSTATE_MIRRORS example manuals: Remove unnecessary \n from SSTATE_MIRRORS examples oeqa/selftest/bblogging: Add logging tests for bb.build.exec_func with shell/python code Pgowda (2): glibc : Fix CVE-2021-3998 glibc : Fix CVE-2021-3999 Quentin Schulz (2): docs: point to renamed BB_BASEHASH_IGNORE_VARS variable docs: fix hardcoded link warning messages Richard Purdie (65): lttng-tools: upgrade 2.13.2 -> 2.13.4 gcc: Drop stdlib++ option patch staging: Add extra hash handling code abi_version/sstate: Bump for hash equivalence fix prelink: Drop support for it glibc: Drop prelink patch oqea/runtime/oe_syslog: Improve test vim: Upgrade 4269 -> 4134 binutils: Add fix for CVE-2021-45078 glibc: Upgrade to 2.35 patchelf: Fix corrupted file mode patch buildtools: Allow testsdk to access the network scriptutils: Fix handling of srcuri urls default-distrovars.inc: Switch connectivity check to a yoctoproject.org page bitbake: tests/fetch: Add missing branch param for git urls oeqa/buildtools: Switch to our webserver instead of example.com openssl: Add perl functionality test to do_configure ltp: Disable proc01 test bitbake: fetch2/cooker: Fix source revision handling with floating upstreams bitbake: data_smart: Fix overrides file/line message additions bitbake: cooker: Improve parsing failure from handled exception usability bitbake: msg: Add bb.warnonce() and bb.erroronce() log methods bitbake: data_smart: Add hasOverrides method to public datastore API selftest/bbtests: Add tests for git floating tag resolution oeqa/selftest/bbtests: Update to match changed bitbake output features_check/insane: Use hasOverrides datastore method recipeutils: Add missing get_srcrev() call archiver: Fix typo bitbake: utils: Fix environment decorator logic error bitbake: fetch2: Abstract fetcher environment to a function core-image-testmaster: Rename to core-image-testcontroller scripts: Add a conversion script to use SPDX license names meta/meta-selftest/meta-skeleton: Update LICENSE variable to use SPDX license identifiers oeqa/selftest/bbtests: Update after license changes sstate: Setup fetcher environment in advance expat: Upgrade 2.4.4 -> 2.4.5 expat: Upgrade 2.4.5 -> 2.4.6 perl: Improve and update module RPDEPENDS libxml-parser-perl: Add missing RDEPENDS vim: Upgrade 8.2.4314 -> 8.2.4424 tiff: Add backports for two CVEs from upstream bitbake: utils: Ensure shell function failure in python logging is correct oeqa/selftest/bblogging: Split the test cases up for ease of testing bitbake: data_smart/cookerdata: Add variable remapping support bitbake: data_smart: Allow rename mechanism to show full expressions bitbake: data_smart: Add support to BB_RENAMED_VARIABLES for custom strings bitbake: bitbake: Bump version to 1.53.1 sanity.conf: Require bitbake version 1.53.1 layer.conf: Update to use kirkstone meta/scripts: Change BB_ENV_EXTRA_WHITE -> BB_ENV_PASSTHROUGH_ADDITIONS meta/scripts: Handle bitbake variable renaming bitbake.conf: Add entries for renamed variables meta/scripts: Automated conversion of OE renamed variables icecc: Improve variables/terminology bitbake.conf: Add entries to warn on usage of removed variables layer.conf: Update to kirkstone namespace bitbake: data_smart: Avoid exceptions for non string data bitbake: tests/fetch: Update for master -> main change upstream python3targetconfig: Use for nativesdk too licenses: Fix logic error introduced in rename pip_install_wheel: Recompile modified files pip_install_wheel: Use --ignore-installed for pip python3-pip: Don't change shebang python3-pip: Improve reproducibility python3-numpy: Fix pyc determinism issue Robert Joslyn (1): dev-manual/common-tasks: Fix typo Robert Yang (1): bitbake: bitbake: bitbake-worker: Preserve network non-local uid Ross Burton (21): tiff: backport fix for CVE-2022-22844 yocto-check-layer: add debug output for the layers that were found openssl: export OPENSSL_MODULES in the wrapper expat: upgrade to 2.4.4 vim: upgrade to patch 4269 core-image-sato-sdk: allocate more memory when in qemu oeqa/runtime/stap: improve systemtap test systemtap: backport buffer size tuning patches strace: remove obsolete musl-on-MIPS patch strace: skip a number of load-sensitive tests yocto-check-layer: check for duplicate layers when finding layers common-licences: remove ambiguous "BSD" license newlib: fix license checksums oeqa/selftest: test that newlib can build cmake: stop FetchContent from fetching content kernel: make kernel-base recommend kernel-image, not depend poky-tiny: don't skip core-image-base and core-image-full-cmdline poky-tiny: set QB_DEFAULT_FSTYPE correctly coreutils: remove obsolete ignored CVE list cve-check: get_cve_info should open the database read-only oeqa/controllers: update for MasterImageHardwareTarget->Controller... Rudolf J Streif (1): linux-firmware: Add CLM blob to linux-firmware-bcm4373 package Saul Wold (13): recipetool: Fix circular reference in SRC_URI create-spdx: Get SPDX-License-Identifier from source blacklist: Replace class with SKIP_RECIPE variable dnf: Use renamed SKIP_RECIPE varFlag multilib: Use renamed SKIP_RECIPE varFlag imagefeatures: selftest: Change variable to be more descriptive scripts: Add convert-variable-renames script for inclusive language variable renaming meta: Rename LICENSE_FLAGS variable poky-tiny: Use renamed SKIP_RECIPES varFlag Rename LICENSE_FLAGS variable meta: Further LICENSE_FLAGS variable updates package: rename LICENSE_EXCLUSION license.py: rename variables Scott Murray (13): bitbake: bitbake: Rename basehas and taskhash filtering variables bitbake: bitbake: Rename environment filtering variables bitbake: bitbake: Rename configuration hash filtering variable bitbake: bitbake: Rename setscene enforce filtering variable bitbake: bitbake: Rename allowed multiple provider variable bitbake: lib: Replace remaining "blacklist"/"whitelist" usage bitbake: lib/bb: Replace "abort" usage in task handling bitbake: lib/bb: Replace "ABORT" action in BB_DISKMON_DIRS bitbake: bitbake: Replace remaining "abort" usage local.conf/oeqa: Update BB_DISKMON_DIRS use meta-poky: Update BB_DISKMON_DIRS use scripts: fix file writing in convert-variable-renames scripts: fix file writing in convert-spdx-licenses Sean Anderson (1): libpcap: Disable DPDK explicitly Stefan Herbrechtsmeier (12): cve-check: create directory of CVE_CHECK_MANIFEST before copy systemd: Add link-udev-shared PACKAGECONFIG systemd: Minimize udev package size if DISTRO_FEATURES doen't contain sysvinit gcc-target: fix glob to remove gcc- binary gcc-target: move cc1plus to g++ package wic: partition: Support valueless keys in sourceparams wic: rawcopy: Add support for packed images selftest: wic: Remove requirement of syslinux from test_rawcopy_plugin selftest: wic: Add rawcopy plugin unpack test selftest: wic: Disable graphic of qemu to support WSL classes: rootfs-postcommands: avoid exception in overlayfs_qa_check files: overlayfs-create-dirs: split ExecStart into two commands Tamizharasan Kumar (2): linux-yocto/5.10: update genericx86* machines to v5.10.99 linux-yocto/5.15: update genericx86* machines to v5.15.22 Tim Orling (43): python3-hypothesis: upgrade 6.35.0 -> 6.36.0 python3-setuptools-scm: upgrade 6.3.2 -> 6.4.2 python3-pyparsing: upgrade 3.0.6 -> 3.0.7 python3-importlib-metadata: upgrade 4.10.0 -> 4.10.1 python3-wheel: move 0.37.1 from meta-python python3-flit-core: add recipe for 3.6.0 python3-flit-core: SUMMARY DESCRIPTION HOMEPAGE python3-flit-core: inherit pip_install_wheel flit_core.bbclass: add helper for newer python packaging python3-wheel: inherit flit_core pip_install_wheel.bbclass: add helper class python3-wheel-native: install ${bindir}/wheel setuptools_build_meta.bbclass: add helper class python3-pip: inherit setuptools_build_meta python3-pip-native: install scripts in ${bindir} python3-attrs: inherit setuptools_build_meta python3-git: inherit setuptools_build_meta python3-pytest: inherit setuptools_build_meta python3-setuptools-scm: inherit setuptools_build_meta python3-zipp: inherit setuptools_build_meta python3-iniconfig: inherit setuptools_build_meta python3-py: inherit setuptools_build_meta python3-pluggy: inherit setuptools_build_meta python3-setuptools: inherit setuptools_base_meta setuptools3.bbclass: refactor for wheels python3-more-itertools: set PIP_INSTALL_PACKAGE meson: inherit setuptools_build_meta python3-libarchive-c: set PIP_INSTALL_PACKAGE python3-smartypants: patch hash bang to python3 python3-scons: merge -native recipe python3-subunit: merge inc; set PIP_INSTALL_PACKAGE python3-magic: set PIP_INSTALL_PACKAGE bmap-tools: set PIP_INSTALL_PACKAGE, BASEVER asciidoc: set PIP_INSTALL_PACKAGE gi-docgen: set PIP_INSTALL_PACKAGE python3-numpy: set PIP_INSTALL_PACKAGE python3-dbusmock: set PIP_INSTALL_PACKAGE python3-mako: inherit setuptools_build_meta python3-packaging: inherit setuptools_build_meta python3-nose: drop recipe disutils*.bbclasses: move to meta-python selftest: drop distutils3 test from recipetool pip_install_wheel: improved wheel filename guess Tom Hochstein (1): xwayland: Add xkbcomp runtime dependency Yi Zhao (2): glibc: unify wordsize.h between arm and aarch64 glibc: fix multilib headers conflict for arm Zoltán Böszörményi (2): qemuboot: Fix build error if UNINATIVE_LOADER is unset gtk-icon-cache: Allow using gtk4 Zygmunt Krynicki (13): bitbake: fetch2/wget: move loop-invariant load of BB_ORIGENV bitbake: cooker: Fix typo "isn't" and "tuples" bitbake: cookerdata: Fix typo "normally" bitbake: daemonize: Fix typo "separate" bitbake: event: Fix typo "asynchronous" and "occasionally" bitbake: fetch2: Fix typo "conform" and "processed" bitbake: fetch2/git: Remove duplicate "the" bitbake: persist_data: Fix typo "committed" bitbake: process: Fix typo: "process" bitbake: progress: Fix typo "wherever" bitbake: tinfoil: Fix typo "receive" and "something" bitbake: utils: Fix typo "dependency" and "spawning" bitbake: wget: Fix grammar "can happen" pgowda (1): gcc : Fix CVE-2021-46195 wangmy (44): libwebp: 1.2.1 -> 1.2.2 python3-libarchive-c: upgrade 3.2 -> 4.0 lighttpd: upgrade 1.4.63 -> 1.4.64 nfs-utils: upgrade 2.5.4 -> 2.6.1 libmodulemd: upgrade 2.13.0 -> 2.14.0 libxcrypt: upgrade 4.4.27 -> 4.4.28 lzip: upgrade 1.22 -> 1.23 libxkbcommon: upgrade 1.3.1 -> 1.4.0 man-db: upgrade 2.9.4 -> 2.10.0 gdbm: upgrade 1.22 -> 1.23 harfbuzz: upgrade 3.3.1 -> 3.3.2 findutils: upgrade 4.8.0 -> 4.9.0 python3-magic: upgrade 0.4.24 -> 0.4.25 python3-pycryptodome: upgrade 3.14.0 -> 3.14.1 python3-pytest: upgrade 6.2.5 -> 7.0.0 python3-pip: upgrade 22.0.2 -> 22.0.3 python3-pyelftools: upgrade 0.27 -> 0.28 screen: upgrade 4.8.0 -> 4.9.0 ed: upgrade 1.17 -> 1.18 autoconf-archive: upgrade 2021.02.19 -> 2022.02.11 gpgme: upgrade 1.16.0 -> 1.17.0 glib-2.0: upgrade 2.70.3 -> 2.70.4 harfbuzz: upgrade 3.3.2 -> 3.4.0 python3-hypothesis: upgrade 6.36.1 -> 6.36.2 python3-pathlib2: upgrade 2.3.6 -> 2.3.7 python3-pbr: upgrade 5.8.0 -> 5.8.1 python3-ruamel-yaml: upgrade 0.17.20 -> 0.17.21 linux-firmware: upgrade 20211216 -> 20220209 rng-tools: upgrade 6.14 -> 6.15 mesa: upgrade 21.3.5 -> 21.3.6 go: upgrade 1.17.6 -> 1.17.7 libhandy: Use upstream regex to check version of upgrade. libva-utils: upgrade 2.13.0 -> 2.14.0 patchelf: upgrade 0.14.3 -> 0.14.5 quilt: upgrade 0.66 -> 0.67 ruby: upgrade 3.1.0 -> 3.1.1 wireless-regdb: upgrade 2021.08.28 -> 2022.02.18 bind: upgrade 9.16.25 -> 9.16.26 flac: upgrade 1.3.3 -> 1.3.4 init-system-helpers: upgrade 1.60 -> 1.62 libdrm: upgrade 2.4.109 -> 2.4.110 python3-hypothesis: upgrade 6.36.2 -> 6.37.2 python3-markupsafe: upgrade 2.0.1 -> 2.1.0 asciidoc: upgrade 10.1.1 -> 10.1.3 meta-raspberrypi: 836755370f..e39a0a570c: Andrei Gherzan (13): README.md: Add contributing section Move the python3-adafruit recipes depending on meta-oe to dynamic layers README.md: Don't advertise meta-oe dependency docs: Detail the merging process of patches sent through the mailing list ci: Define an action for building a local docker image ci: Define an action for cleaning dangling image ci: Define an action for cleaning/removing an image ci: Introduce workflow for compliance ci: Introduce workflow Yocto operations/builds ci: Add workflow to cancel redundant workflows ci: Add git mirror workflow ci: No need for checkout step in mirror workflow ci: Use the current stable version for the mirror action Aníbal Limón (1): gstreamer1.0-plugins-good: Update bbappend to 1.20 Bernhard Guillon (1): rpi-base.inc: enable i2c-gpio overlay Devendra Tewari (1): linux-raspberrypi: Upgrade to 5.10.83 Khem Raj (7): raspberrypi4-64: Switch to using cortexa72-crc default tune picamera-libs,python3-picamera: Limit visibility to 32 bit rpi machines rpi-gpio: Replace setuptool3 instead of distutils3 python3-adafruit-blinka: Disable on musl linux-raspberrypi: Add recipe for 5.15 LTS kernel rpi-default-versions: Use 5.15 as default kernel layers: Bump to use kirkstone Martin Jansa (4): sdcard_image-rpi: fix DeprecationWarning gstreamer1.0-plugins-bad: remove libmms PACKAGECONFIG and add gpl meta: update variable names meta: update license names Mauro Anjo (1): machine: add Pi Zero 2 W 32bits Michal Toman (1): rpi-base.inc: Add vc4-fkms-v3d-pi4 overlay Mingli Yu (1): xserver-xorg: remove xshmfence configure option Otto Esko (2): recipes-bsp: Add support for gpio-shutdown Add documentation for gpio-shutdown Paul Barker (1): raspberrypi4-64: Switch to cortexa72 tune bhargavthriler (1): python3-picamera: Add picamera library meta-openembedded: 6b63095946..cf0ed42391: Alejandro Hernandez Samaniego (1): remmina: Upgrade to 1.4.23 Alexander Kanavin (4): libvncserver: disable ffmpeg support due to incompatiblility with ffmpeg 5.0 opencv: update 4.5.2 -> 4.5.5 minidlna: update 1.2.1 -> 1.3.0 mpd: update 0.22.9 -> 0.23.5 An?bal Lim?n (2): python3-apt: add new recipe version 2.3.0 unattended-upgrades: add new recipe version 2.6 Andreas Müller (1): All layers: Follow oe-core's variable name changes Andrej Valek (1): nodejs: add option to use openssl legacy providers Carlos Rafael Giani (3): pipewire: Upgrade to 0.3.45 wireplumber: Add recipe wireplumber: Improve configuration Changqing Li (1): python3-psutil: fix test failure Christian Eggers (5): ebtables: remove perl from RDEPENDS graphviz: native: create /usr/lib/graphviz/config6 in populate_sysroot boost-sml: add new recipe python3-dt-schema: remove recipe graphviz: added PACKAGECONFIG for librsvg Clément Péron (1): networking: add new netsniff-ng recipe version 0.6.8 Daniel Gomez (1): opencv: Update contrib 4.5.2 -> 4.5.5 Devendra Tewari (1): libcamera: add pkg-config files Fabio Estevam (2): rtc-tools: Add a recipe rtc-tools: Update to 2022.02 Gianfranco Costamagna (4): vboxguestdrivers: upgrade 6.1.30 -> 6.1.32 boinc-client: Update to 7.18.1 mosquitto: upgrade 2.0.12 -> 2.0.14 websocketpp: Apply upstream proposed patch to fix a Scons 4.2.0+ build failure Jan Luebbe (1): snappy: use main branch to fix fetch failure Jan Vermaete (2): netdata: upgrade 1.32.1 -> 1.33.0 netdata: version bump 1.33.0 -> 1.33.1 Justin Bronder (4): yaml-cpp: bump 0.7.0 googlebenchmark: add 1.6.1 python3-pytest-forked: add 1.4.0 python3-pytest-xdist: add 2.5.0 Kai Kang (1): openjpeg: fix CVE-2021-29338 Kartikey Rameshbhai Parmar (1): imagemagick: update SRC_URI branch to main Khem Raj (46): xfce4-datetime-setter: Fix build with meson 0.61+ gerbera: Upgrade to 1.9.2 iotop: Disable LTO with clang/rv64 spdlog: Update the external fmt patch dlt-daemon: Bump to latest revision on master evolution-data-server: Disable g-i data generation gerbera: Fix build with fmt 8.1+ php: Update to 8.1.2 postgresql: Fix build on riscv libcec: Fix type mismatch for return value of LibCecBootloader() gparted: Do not use NULL where boolean is expected python3-pyruvate: Fix build with mips python3-pyruvate: Fix build with riscv64/musl pcp: Disable parallel compile gst-shark: Upgrade to 0.7.3.1 crda: Fix buffer overflow in sscanf open-vm-tools: Fix build with musl openldap: Fix build with musl gimp: Disable vector icons on x86 with clang libjs-jquery-icheck: Use hardcoded SHA for srcrev smarty: Upgrade to 4.1.0 dhcp-relay: Package needed shared libs from bind gimp: Disable vector icons with clang on arm capnproto: Fix build on mips packagegroup-meta-oe: Add googlebenchmark packagegroup-meta-python: Add python3-pytest-forked and python3-pytest-xdist ntopng: Avoid linking libm statically libsigc++-3: Upgrade to 3.2.0 geany-plugins: Fix build with libgit2 1.4+ recipes: Use renamed SKIP_RECIPE varFlag recipes: Use new CVE_CHECK_IGNORE variable meta-oe: Use new variable SYSROOT_DIRS_IGNORE layers: Bump to use kirkstone capnproto: Link with libatomic on rv32 iotop: Disable lto with clang for rv32 glibmm: Add recipe for 2.70.0 cairomm: Add recipe for cairomm 1.16 pangomm: Add recipe for pangomm-2.48 atkmm: Add new recipe for 2.36+ libxml++: Upgrade to 2.42.1 release libxml++-5.0: Add recipe for libxml++ 5.0 Revert "libcamera: add pkg-config files" python3-blinker: Migrate to use pytest instead of nose for testing python3-oauthlib: Drop redundant nose dependency netplan: Add knob to enable tests openldap: Use renamed variable CVE_CHECK_IGNORE Leon Anavi (23): python3-imageio: Upgrade 2.14.0 -> 2.14.1 python3-pandas: Upgrade 1.3.5 -> 1.4.0 python3-aenum: Upgrade 3.1.6 -> 3.1.8 python3-redis: Upgrade 4.0.2 -> 4.1.1 python3-jdatetime: Upgrade 3.8.1 -> 3.8.2 python3-bandit: Upgrade 1.7.1 -> 1.7.2 python3-fasteners: Upgrade 0.17.2 -> 0.17.3 python3-ansi2html: Upgrade 1.6.0 -> 1.7.0 python3-coverage: Upgrade 6.2 -> 6.3 python3-imageio: Upgrade 2.14.1 -> 2.15.0 python3-humanize: Upgrade 3.13.1 -> 3.14.0 python3-bitarray: Upgrade 2.3.5 -> 2.3.6 python3-itsdangerous: Upgrade 2.0.1 -> 2.1.0 python3-croniter: Upgrade 1.2.0 -> 1.3.4 python3-distro: Upgrade 1.6.0 -> 1.7.0 python3-click: Upgrade 8.0.3 -> 8.0.4 python3-ordered-set: Upgrade 4.0.2 -> 4.1.0 python3-bitarray: Upgrade 2.3.6 -> 2.3.7 python3-pandas: Upgrade 1.4.0 -> 1.4.1 python3-unidiff: Upgrade 0.7.0 -> 0.7.3 python3-langtable: Upgrade to release 0.0.57 python3-cmd2: Upgrade 2.3.3 -> 2.4.0 python3-coverage: Upgrade 6.3 -> 6.3.2 Marek Vasut (1): freerdp: Update to FreeRDP 2.5.0 Mark Jonas (1): mbedtls: Upgrade to 2.28.0 Markus Volk (12): geary: initial add recipe packagegroup-gnome-apps.bb: add geary folks: add PACKAGECONFIG for import_tool and inspect_tool geary: use sha hash for SRCREV; fix identation folks: make some dependencies optional evolution-data-server: try to fix g-i data generation folks: dont build tests as they are not installed anyway gvfs: upgrade 1.48.1 -> 1.49.1 libxfce4util: inherit vala xfconf: inherit vala libxfce4ui: disable vala xfce4-panel: disable vala Martin Jansa (1): Fix DeprecationWarning about regexps Matsunaga-Shinji (1): openldap: add CVE-2015-3276 to allowlist Matthias Klein (1): gpsd-machine-conf: set precise BSD-3-Clause license Mingli Yu (5): plymouth: switch to KillMode=mixed lxdm: remove conflicts setting plymouth: add extra kernel parameter opencv: disable sse4.1 and sse4.2 on x86 plymouth: Add the retain-splash option Oleksandr Kravchuk (4): redis: add recipe for 7.0-rc1 iwd: update to 1.24 fping: update to 5.1 capnproto: update to 0.9.1 Peter Bergin (1): pipewire: fix build error when pipewire-jack is used Peter Griffin (1): libcamera: update meson options to build pipeline handlers & cam utility Randy MacLeod (1): rsyslog: update to 8.2202 Robert Joslyn (1): hwdata: Update to 0.356 Ross Burton (16): python3-jsonpath-rw: set correct license concurrencykit: use precise BSD licence version pkcs11-helper: update homepage pkcs11-helper: set precise BSD license spice: set correct LICENSE poppler-data: set precise BSD license openipmi: use precise BSD license s-nail: add a maintained mail(1) fork minidlna: use precise BSD license smartmontools: use s-nail mailx: remove spice-protocol: upgrade to 1.14.3 libjs-jquery: remove fwupd-efi: upgrade to 1.2 fping: set precise license concurrencykit: enable 32- and 64-bit Arm targets Sakib Sajal (1): nss: uprev v3.73.1 -> v3.74 Sam Van Den Berge (1): libiio: use setuptools functions instead of distutils Thomas Perrot (1): breakpad: fix branch for gtest in SRC_URI Tim Orling (2): python3-wheel: drop; moved to oe-core python3-test-generator: drop recipe Trevor Gamblin (1): phoronix-test-suite: upgrade 9.2.1 -> 10.8.1 Wang Mingyu (39): ndpi: upgrade 4.0 -> 4.2 ntopng: upgrade 5.0 -> 5.2.1 python3-werkzeug: upgrade 2.0.2 -> 2.0.3 python3-twisted: upgrade 21.7.0 -> 22.1.0 python3-natsort: upgrade 8.0.2 -> 8.1.0 xfsdump: upgrade 3.1.9 -> 3.1.10 mm-common: upgrade 1.0.3 -> 1.0.4 fsverity-utils: upgrade 1.4 -> 1.5 libgee: upgrade 0.20.4 -> 0.20.5 libqmi: upgrade 1.30.2 -> 1.30.4 libcrypt-openssl-guess-perl: upgrade 0.14 -> 0.15 gjs: upgrade 1.70.0 -> 1.70.1 dnf-plugin-tui: Fix a bug of multilib libwacom: upgrade 1.12 -> 2.1.0 gedit: upgrade 40.1 -> 41.0 gnome-autoar: upgrade 0.4.2 -> 0.4.3 libwnck3: upgrade 40.0 -> 40.1 iscsi-initiator-utils: upgrade 2.1.5 -> 2.1.6 iotop: upgrade 1.20 -> 1.21 inotify-tools: upgrade 3.21.9.6 -> 3.22.1.0 gnuplot: upgrade 5.4.2 -> 5.4.3 libxmlb: upgrade 0.3.6 -> 0.3.7 libgusb: upgrade 0.3.9 -> 0.3.10 monit: upgrade 5.30.0 -> 5.31.0 libjcat: upgrade 0.1.9 -> 0.1.10 libio-socket-ssl-perl: upgrade 2.073 -> 2.074 mpv: upgrade 0.34.0 -> 0.34.1 php: upgrade 8.1.2 -> 8.1.3 nano: upgrade 6.0 -> 6.2 rdma-core: upgrade 38.0 -> 39.0 netplan: upgrade 0.103 -> 0.104 nautilus: upgrade 41.1 -> 41.2 zchunk: upgrade 1.1.16 -> 1.2.0 tree: upgrade 2.0.1 -> 2.0.2 soci: upgrade 4.0.2 -> 4.0.3 remmina: upgrade 1.4.23 -> 1.4.24 wolfssl: upgrade 5.1.0- > 5.2.0 tcpreplay: upgrade 4.4.0 -> 4.4.1 spice-protocol: upgrade 0.14.3 -> 0.14.4 Xu Huan (15): python3-multidict: upgrade 5.2.0 -> 6.0.2 python3-pulsectl upgrade 21.10.5 -> 22.1.3 python3-pyephem: upgrade 4.1.1 -> 4.1.3 python3-pytest-timeout: upgrade 2.0.2 -> 2.1.0 python3-pywbemtools: upgrade 0.9.0 -> 0.9.1 python3-requests-oauthlib: upgrade 1.3.0 -> 1.3.1 python3-sqlalchemy: upgrade 1.4.29 -> 1.4.31 python3-oauthlib: upgrade 3.1.1 -> 3.2.0 python3-pyudev: upgrade 0.22.0 -> 0.23.2 python3-pyopenssl: upgrade 21.0.0 -> 22.0.0 python3-alembic upgrade 1.7.5 -> 1.7.6 python3-autobahn: upgrade 21.11.1 -> 22.1.1 python3-flask: upgrade 2.0.2 -> 2.0.3 python3-imageio: upgrade 2.15.0 -> 2.16.0 python3-jdatetime: upgrade 3.8.2 -> 4.0.0 Yi Zhao (5): phpmyadmin: upgrade 5.1.1 -> 5.1.2 tcpdump: upgrade 4.99.0 -> 4.99.1 tcpslice: upgrade 1.2a3 -> 1.5 tcpreplay: update HOMEPAGE samba: upgrade 4.14.11 -> 4.14.12 Zheng Ruoqin (6): libjs-jquery: Upgrade to 3.3.1. protobuf: upgrade 3.19.3 -> 3.19.4 phpmyadmin: upgrade 5.1.2 -> 5.1.3 postgresql: upgrade 14.1 -> 14.2 pugixml: upgrade 1.11.4 -> 1.12 poppler: upgrade 22.01.0 -> 22.02.0 wangmy (14): fatcat: upgrade 1.1.0 -> 1.1.1 libnma: upgrade 1.8.32 -> 1.8.34 botan: upgrade 2.18.2 -> 2.19.1 cgdb: upgrade 0.7.1 -> 0.8.0 ddrescue: upgrade 1.25 -> 1.26 hostapd: upgrade 2.9 -> 2.10 libcereal: upgrade 1.3.0 -> 1.3.1 ser2net: upgrade 4.3.4 -> 4.3.5 dlt-daemon: upgrade 2.18.7 -> 2.18.8 devilspie2: upgrade 0.43 -> 0.44 opensaf: upgrade 5.21.09 -> 5.22.01 tcpreplay: upgrade 4.3.4 -> 4.4.0 lcms: upgrade 2.12 -> 2.13.1 libcgi-perl: upgrade 4.53 -> 4.54 meta-security: c20b35b527..6cc8dde794: Akshay Bhat (2): meta-hardening: Fix override syntax scap-security-guide: Fix openembedded platform tests Anton Antonov (1): Upgrade parsec-tool to 0.5.1 Armin Kuster (11): google-authenticator-libpam: update to 1.09 packagegroup-security-tpm2.bb: remove dynamic pkgs tpm2-pkcs11_1.7.0: Drop dstat from DPENDS lkrg-module: update to 0.9.2 suricata: update to 6.0.4 tpm2-tss: update to 3.1.0 parsec-service: fix compile issue. layer.conf: Update to use kirkstone recipes: Use renamed SKIP_RECIPE varFlag chipsec: fix WARNING smack: Use new CVE_CHECK_IGNORE variable Patrick Williams (1): tpm2-pkcs11: fix RDEPENDS variable Yi Zhao (1): samhain: upgrade 4.4.3 -> 4.4.6 Signed-off-by: Andrew Geissler Change-Id: I270425c8a022f2e281a28ea19fdfae47aa375551 --- .../gstreamer/gst-devtools_1.18.5.bb | 49 --- .../gstreamer/gst-devtools_1.20.0.bb | 52 ++++ .../gstreamer/gst-examples_1.18.5.bb | 35 --- .../gstreamer/gst-examples_1.18.6.bb | 35 +++ ...001-gst-libav-fix-build-with-ffmpeg-5.0.0.patch | 346 --------------------- .../gstreamer/gstreamer1.0-libav_1.18.5.bb | 26 -- .../gstreamer/gstreamer1.0-libav_1.20.0.bb | 28 ++ .../gstreamer/gstreamer1.0-omx_1.18.5.bb | 47 --- .../gstreamer/gstreamer1.0-omx_1.20.0.bb | 47 +++ ...ninitialized-warnings-when-compiling-with.patch | 8 +- .../0002-avoid-including-sys-poll.h-directly.patch | 12 +- ...valid-sentinals-for-gst_structure_get-etc.patch | 22 +- ...lve-missing-opencv-data-dir-in-yocto-buil.patch | 42 +-- .../0005-msdk-fix-includedir-path.patch | 41 ++- .../gstreamer/gstreamer1.0-plugins-bad_1.18.5.bb | 160 ---------- .../gstreamer/gstreamer1.0-plugins-bad_1.20.0.bb | 165 ++++++++++ .../0004-glimagesink-Downrank-to-marginal.patch | 32 -- .../gstreamer/gstreamer1.0-plugins-base_1.18.5.bb | 94 ------ .../gstreamer/gstreamer1.0-plugins-base_1.20.0.bb | 94 ++++++ .../gstreamer/gstreamer1.0-plugins-good_1.18.5.bb | 76 ----- .../gstreamer/gstreamer1.0-plugins-good_1.20.0.bb | 76 +++++ .../gstreamer/gstreamer1.0-plugins-ugly_1.18.5.bb | 43 --- .../gstreamer/gstreamer1.0-plugins-ugly_1.20.0.bb | 46 +++ .../gstreamer/gstreamer1.0-python_1.18.5.bb | 26 -- .../gstreamer/gstreamer1.0-python_1.20.0.bb | 30 ++ .../gstreamer/gstreamer1.0-rtsp-server_1.18.5.bb | 31 -- .../gstreamer/gstreamer1.0-rtsp-server_1.20.0.bb | 31 ++ .../gstreamer/gstreamer1.0-vaapi_1.18.5.bb | 53 ---- .../gstreamer/gstreamer1.0-vaapi_1.20.0.bb | 53 ++++ ...inloader.c-when-env-var-is-set-do-not-fal.patch | 69 ---- ...ts-respect-the-idententaion-used-in-meson.patch | 36 +++ .../0002-Remove-unused-valgrind-detection.patch | 112 ------- ...2-tests-add-support-for-install-the-tests.patch | 109 +++++++ ...Don-t-use-too-strict-timeout-for-validati.patch | 32 -- ...-tests-use-a-dictionaries-for-environment.patch | 50 +++ ...-helper-script-to-run-the-installed_tests.patch | 74 +++++ ...ts-respect-the-idententaion-used-in-meson.patch | 36 --- ...5-tests-add-support-for-install-the-tests.patch | 110 ------- ...e-gstbin-test_watch_for_state_change-test.patch | 107 +++++++ ...-tests-use-a-dictionaries-for-environment.patch | 48 --- ...stall-the-environment-for-installed_tests.patch | 58 ---- .../gstreamer/gstreamer1.0_1.18.5.bb | 75 ----- .../gstreamer/gstreamer1.0_1.20.0.bb | 73 +++++ 43 files changed, 1162 insertions(+), 1627 deletions(-) delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.5.bb create mode 100644 poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.20.0.bb delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gst-examples_1.18.5.bb create mode 100644 poky/meta/recipes-multimedia/gstreamer/gst-examples_1.18.6.bb delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav/0001-gst-libav-fix-build-with-ffmpeg-5.0.0.patch delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.5.bb create mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.20.0.bb delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.5.bb create mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.20.0.bb delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.5.bb create mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.20.0.bb delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0004-glimagesink-Downrank-to-marginal.patch delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.5.bb create mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.0.bb delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.5.bb create mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.0.bb delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.5.bb create mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.20.0.bb delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.5.bb create mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.20.0.bb delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.5.bb create mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.20.0.bb delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.5.bb create mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.20.0.bb delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch create mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-respect-the-idententaion-used-in-meson.patch delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-Remove-unused-valgrind-detection.patch create mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-tests-add-support-for-install-the-tests.patch delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch create mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-use-a-dictionaries-for-environment.patch create mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-add-helper-script-to-run-the-installed_tests.patch delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-respect-the-idententaion-used-in-meson.patch delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-add-support-for-install-the-tests.patch create mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-remove-gstbin-test_watch_for_state_change-test.patch delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0006-tests-use-a-dictionaries-for-environment.patch delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0007-tests-install-the-environment-for-installed_tests.patch delete mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.5.bb create mode 100644 poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.20.0.bb (limited to 'poky/meta/recipes-multimedia/gstreamer') diff --git a/poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.5.bb b/poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.5.bb deleted file mode 100644 index 1b46b89cb9..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.5.bb +++ /dev/null @@ -1,49 +0,0 @@ -SUMMARY = "Gstreamer validation tool" -DESCRIPTION = "A Tool to test GStreamer components" -HOMEPAGE = "https://gstreamer.freedesktop.org/documentation/gst-devtools/index.html" -SECTION = "multimedia" - -LICENSE = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://validate/COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343" - -#S = "${WORKDIR}/gst-devtools-${PV}" - -SRC_URI = "https://gstreamer.freedesktop.org/src/gst-devtools/gst-devtools-${PV}.tar.xz \ - file://0001-connect-has-a-different-signature-on-musl.patch \ - " - -SRC_URI[sha256sum] = "fecffc86447daf5c2a06843c757a991d745caa2069446a0d746e99b13f7cb079" - -DEPENDS = "json-glib glib-2.0 glib-2.0-native gstreamer1.0 gstreamer1.0-plugins-base" -RRECOMMENDS:${PN} = "git" - -FILES:${PN} += "${datadir}/gstreamer-1.0/* ${libdir}/gst-validate-launcher/* ${libdir}/gstreamer-1.0/*" - -inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection - -# TODO: put this in a gettext.bbclass patch -def gettext_oemeson(d): - if d.getVar('USE_NLS') == 'no': - return '-Dnls=disabled' - # Remove the NLS bits if USE_NLS is no or INHIBIT_DEFAULT_DEPS is set - if d.getVar('INHIBIT_DEFAULT_DEPS') and not oe.utils.inherits(d, 'cross-canadian'): - return '-Dnls=disabled' - return '-Dnls=enabled' - -EXTRA_OEMESON += " \ - -Ddoc=disabled \ - -Ddebug_viewer=disabled \ - -Dtests=disabled \ - -Dvalidate=enabled \ - ${@gettext_oemeson(d)} \ -" - -do_install:append () { - for fn in ${bindir}/gst-validate-launcher \ - ${libdir}/gst-validate-launcher/python/launcher/config.py; do - sed -i -e 's,${B},/usr/src/debug/${PN},g' -e 's,${S},/usr/src/debug/${PN},g' ${D}$fn - done -} - -GIR_MESON_ENABLE_FLAG = "enabled" -GIR_MESON_DISABLE_FLAG = "disabled" diff --git a/poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.20.0.bb b/poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.20.0.bb new file mode 100644 index 0000000000..e17f4ee09d --- /dev/null +++ b/poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.20.0.bb @@ -0,0 +1,52 @@ +SUMMARY = "Gstreamer validation tool" +DESCRIPTION = "A Tool to test GStreamer components" +HOMEPAGE = "https://gstreamer.freedesktop.org/documentation/gst-devtools/index.html" +SECTION = "multimedia" + +LICENSE = "LGPL-2.1-or-later" +LIC_FILES_CHKSUM = "file://validate/COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343" + +#S = "${WORKDIR}/gst-devtools-${PV}" + +SRC_URI = "https://gstreamer.freedesktop.org/src/gst-devtools/gst-devtools-${PV}.tar.xz \ + file://0001-connect-has-a-different-signature-on-musl.patch \ + " + +SRC_URI[sha256sum] = "69fc8756ec9d93e5c5258c99088434f203e91fdbc5af28d1f2c583fd819b7a1d" + +DEPENDS = "json-glib glib-2.0 glib-2.0-native gstreamer1.0 gstreamer1.0-plugins-base" +RRECOMMENDS:${PN} = "git" + +FILES:${PN} += "${datadir}/gstreamer-1.0/* ${libdir}/gst-validate-launcher/* ${libdir}/gstreamer-1.0/*" + +inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection + +# TODO: put this in a gettext.bbclass patch +def gettext_oemeson(d): + if d.getVar('USE_NLS') == 'no': + return '-Dnls=disabled' + # Remove the NLS bits if USE_NLS is no or INHIBIT_DEFAULT_DEPS is set + if d.getVar('INHIBIT_DEFAULT_DEPS') and not oe.utils.inherits(d, 'cross-canadian'): + return '-Dnls=disabled' + return '-Dnls=enabled' + +# Build GstValidateVideo +PACKAGECONFIG[cairo] = "-Dcairo=enabled,-Dcairo=disabled,cairo" + +EXTRA_OEMESON += " \ + -Ddoc=disabled \ + -Ddebug_viewer=disabled \ + -Dtests=disabled \ + -Dvalidate=enabled \ + ${@gettext_oemeson(d)} \ +" + +do_install:append () { + for fn in ${bindir}/gst-validate-launcher \ + ${libdir}/gst-validate-launcher/python/launcher/config.py; do + sed -i -e 's,${B},/usr/src/debug/${PN},g' -e 's,${S},/usr/src/debug/${PN},g' ${D}$fn + done +} + +GIR_MESON_ENABLE_FLAG = "enabled" +GIR_MESON_DISABLE_FLAG = "disabled" diff --git a/poky/meta/recipes-multimedia/gstreamer/gst-examples_1.18.5.bb b/poky/meta/recipes-multimedia/gstreamer/gst-examples_1.18.5.bb deleted file mode 100644 index a720bb73ff..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gst-examples_1.18.5.bb +++ /dev/null @@ -1,35 +0,0 @@ -SUMMARY = "GStreamer examples (including gtk-play, gst-play)" -DESCRIPTION = "GStreamer example applications" -HOMEPAGE = "https://gitlab.freedesktop.org/gstreamer/gst-examples" -BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-examples/-/issues" -LICENSE = "LGPL-2.0+" -LIC_FILES_CHKSUM = "file://playback/player/gtk/gtk-play.c;beginline=1;endline=20;md5=f8c72dae3d36823ec716a9ebcae593b9" - -DEPENDS = "glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad gtk+3 libsoup-2.4 json-glib glib-2.0-native" - -SRC_URI = "git://gitlab.freedesktop.org/gstreamer/gst-examples.git;protocol=https;branch=1.18 \ - file://0001-Make-player-examples-installable.patch \ - file://gst-player.desktop \ - " - -SRCREV = "fe9a365dc0f1ff632abcfe3322ac5527a2cf30a0" - -S = "${WORKDIR}/git" - -inherit meson pkgconfig features_check - -UPSTREAM_CHECK_GITTAGREGEX = "(?P\d+\.(\d*[02468])+(\.\d+)+)" - -ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" - -do_install:append() { - install -m 0644 -D ${WORKDIR}/gst-player.desktop ${D}${datadir}/applications/gst-player.desktop -} - -RDEPENDS:${PN} = "gstreamer1.0-plugins-base-playback" -RRECOMMENDS:${PN} = "gstreamer1.0-plugins-base-meta \ - gstreamer1.0-plugins-good-meta \ - gstreamer1.0-plugins-bad-meta \ - ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "gstreamer1.0-libav", "", d)} \ - ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "gstreamer1.0-plugins-ugly-meta", "", d)}" -RPROVIDES:${PN} += "gst-player gst-player-bin" diff --git a/poky/meta/recipes-multimedia/gstreamer/gst-examples_1.18.6.bb b/poky/meta/recipes-multimedia/gstreamer/gst-examples_1.18.6.bb new file mode 100644 index 0000000000..02282ac5d9 --- /dev/null +++ b/poky/meta/recipes-multimedia/gstreamer/gst-examples_1.18.6.bb @@ -0,0 +1,35 @@ +SUMMARY = "GStreamer examples (including gtk-play, gst-play)" +DESCRIPTION = "GStreamer example applications" +HOMEPAGE = "https://gitlab.freedesktop.org/gstreamer/gst-examples" +BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-examples/-/issues" +LICENSE = "LGPL-2.0-or-later" +LIC_FILES_CHKSUM = "file://playback/player/gtk/gtk-play.c;beginline=1;endline=20;md5=f8c72dae3d36823ec716a9ebcae593b9" + +DEPENDS = "glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad gtk+3 libsoup-2.4 json-glib glib-2.0-native" + +SRC_URI = "git://gitlab.freedesktop.org/gstreamer/gst-examples.git;protocol=https;branch=1.18 \ + file://0001-Make-player-examples-installable.patch \ + file://gst-player.desktop \ + " + +SRCREV = "70e4fcf4fc8ae19641aa990de5f37d758cdfcea4" + +S = "${WORKDIR}/git" + +inherit meson pkgconfig features_check + +UPSTREAM_CHECK_GITTAGREGEX = "(?P\d+\.(\d*[02468])+(\.\d+)+)" + +ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" + +do_install:append() { + install -m 0644 -D ${WORKDIR}/gst-player.desktop ${D}${datadir}/applications/gst-player.desktop +} + +RDEPENDS:${PN} = "gstreamer1.0-plugins-base-playback" +RRECOMMENDS:${PN} = "gstreamer1.0-plugins-base-meta \ + gstreamer1.0-plugins-good-meta \ + gstreamer1.0-plugins-bad-meta \ + ${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "gstreamer1.0-libav", "", d)} \ + ${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "gstreamer1.0-plugins-ugly-meta", "", d)}" +RPROVIDES:${PN} += "gst-player gst-player-bin" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav/0001-gst-libav-fix-build-with-ffmpeg-5.0.0.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav/0001-gst-libav-fix-build-with-ffmpeg-5.0.0.patch deleted file mode 100644 index 022ff9af29..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav/0001-gst-libav-fix-build-with-ffmpeg-5.0.0.patch +++ /dev/null @@ -1,346 +0,0 @@ -From 38d10ee800e42afeacc6bee714216e4c974c11f5 Mon Sep 17 00:00:00 2001 -From: Xi Ruoyao -Date: Mon, 17 Jan 2022 01:33:47 +0800 -Subject: [PATCH] gst-libav: fix build with ffmpeg-5.0.0 - -Latest ffmpeg has removed avcodec_get_context_defaults(), and its -documentation says a new AVCodecContext should be allocated for this -purpose. The pointer returned by avcodec_find_decoder() is now -const-qualified so we also need to adjust for it. And, AVCOL_RANGE_MPEG -is now rejected with strict_std_compliance > FF_COMPLIANCE_UNOFFICIAL. - -Part-of: -Upstream-Status: Backport -Signed-off-by: Alexander Kanavin ---- - ext/libav/gstavauddec.c | 22 ++++++++------------- - ext/libav/gstavaudenc.c | 40 +++++++++++++++++++-------------------- - ext/libav/gstavcodecmap.c | 7 ++++--- - ext/libav/gstavutils.c | 2 +- - ext/libav/gstavviddec.c | 28 +++++++++++---------------- - ext/libav/gstavvidenc.c | 21 ++++++++++---------- - 6 files changed, 54 insertions(+), 66 deletions(-) - -diff --git a/ext/libav/gstavauddec.c b/ext/libav/gstavauddec.c -index baf7aa5..b03a724 100644 ---- a/ext/libav/gstavauddec.c -+++ b/ext/libav/gstavauddec.c -@@ -168,12 +168,7 @@ gst_ffmpegauddec_finalize (GObject * object) - GstFFMpegAudDec *ffmpegdec = (GstFFMpegAudDec *) object; - - av_frame_free (&ffmpegdec->frame); -- -- if (ffmpegdec->context != NULL) { -- gst_ffmpeg_avcodec_close (ffmpegdec->context); -- av_free (ffmpegdec->context); -- ffmpegdec->context = NULL; -- } -+ avcodec_free_context (&ffmpegdec->context); - - G_OBJECT_CLASS (parent_class)->finalize (object); - } -@@ -193,14 +188,12 @@ gst_ffmpegauddec_close (GstFFMpegAudDec * ffmpegdec, gboolean reset) - gst_ffmpeg_avcodec_close (ffmpegdec->context); - ffmpegdec->opened = FALSE; - -- if (ffmpegdec->context->extradata) { -- av_free (ffmpegdec->context->extradata); -- ffmpegdec->context->extradata = NULL; -- } -+ av_freep (&ffmpegdec->context->extradata); - - if (reset) { -- if (avcodec_get_context_defaults3 (ffmpegdec->context, -- oclass->in_plugin) < 0) { -+ avcodec_free_context (&ffmpegdec->context); -+ ffmpegdec->context = avcodec_alloc_context3 (oclass->in_plugin); -+ if (ffmpegdec->context == NULL) { - GST_DEBUG_OBJECT (ffmpegdec, "Failed to set context defaults"); - return FALSE; - } -@@ -219,8 +212,9 @@ gst_ffmpegauddec_start (GstAudioDecoder * decoder) - oclass = (GstFFMpegAudDecClass *) (G_OBJECT_GET_CLASS (ffmpegdec)); - - GST_OBJECT_LOCK (ffmpegdec); -- gst_ffmpeg_avcodec_close (ffmpegdec->context); -- if (avcodec_get_context_defaults3 (ffmpegdec->context, oclass->in_plugin) < 0) { -+ avcodec_free_context (&ffmpegdec->context); -+ ffmpegdec->context = avcodec_alloc_context3 (oclass->in_plugin); -+ if (ffmpegdec->context == NULL) { - GST_DEBUG_OBJECT (ffmpegdec, "Failed to set context defaults"); - GST_OBJECT_UNLOCK (ffmpegdec); - return FALSE; -diff --git a/ext/libav/gstavaudenc.c b/ext/libav/gstavaudenc.c -index 3ff6432..689982f 100644 ---- a/ext/libav/gstavaudenc.c -+++ b/ext/libav/gstavaudenc.c -@@ -175,10 +175,8 @@ gst_ffmpegaudenc_finalize (GObject * object) - - /* clean up remaining allocated data */ - av_frame_free (&ffmpegaudenc->frame); -- gst_ffmpeg_avcodec_close (ffmpegaudenc->context); -- gst_ffmpeg_avcodec_close (ffmpegaudenc->refcontext); -- av_free (ffmpegaudenc->context); -- av_free (ffmpegaudenc->refcontext); -+ avcodec_free_context (&ffmpegaudenc->context); -+ avcodec_free_context (&ffmpegaudenc->refcontext); - - G_OBJECT_CLASS (parent_class)->finalize (object); - } -@@ -193,9 +191,9 @@ gst_ffmpegaudenc_start (GstAudioEncoder * encoder) - ffmpegaudenc->opened = FALSE; - ffmpegaudenc->need_reopen = FALSE; - -- gst_ffmpeg_avcodec_close (ffmpegaudenc->context); -- if (avcodec_get_context_defaults3 (ffmpegaudenc->context, -- oclass->in_plugin) < 0) { -+ avcodec_free_context (&ffmpegaudenc->context); -+ ffmpegaudenc->context = avcodec_alloc_context3 (oclass->in_plugin); -+ if (ffmpegaudenc->context == NULL) { - GST_DEBUG_OBJECT (ffmpegaudenc, "Failed to set context defaults"); - return FALSE; - } -@@ -241,10 +239,10 @@ gst_ffmpegaudenc_set_format (GstAudioEncoder * encoder, GstAudioInfo * info) - - /* close old session */ - if (ffmpegaudenc->opened) { -- gst_ffmpeg_avcodec_close (ffmpegaudenc->context); -+ avcodec_free_context (&ffmpegaudenc->context); - ffmpegaudenc->opened = FALSE; -- if (avcodec_get_context_defaults3 (ffmpegaudenc->context, -- oclass->in_plugin) < 0) { -+ ffmpegaudenc->context = avcodec_alloc_context3 (oclass->in_plugin); -+ if (ffmpegaudenc->context == NULL) { - GST_DEBUG_OBJECT (ffmpegaudenc, "Failed to set context defaults"); - return FALSE; - } -@@ -286,11 +284,11 @@ gst_ffmpegaudenc_set_format (GstAudioEncoder * encoder, GstAudioInfo * info) - /* open codec */ - if (gst_ffmpeg_avcodec_open (ffmpegaudenc->context, oclass->in_plugin) < 0) { - gst_caps_unref (allowed_caps); -- gst_ffmpeg_avcodec_close (ffmpegaudenc->context); -+ avcodec_free_context (&ffmpegaudenc->context); - GST_DEBUG_OBJECT (ffmpegaudenc, "avenc_%s: Failed to open FFMPEG codec", - oclass->in_plugin->name); -- if (avcodec_get_context_defaults3 (ffmpegaudenc->context, -- oclass->in_plugin) < 0) -+ ffmpegaudenc->context = avcodec_alloc_context3 (oclass->in_plugin); -+ if (ffmpegaudenc->context == NULL) - GST_DEBUG_OBJECT (ffmpegaudenc, "Failed to set context defaults"); - - if ((oclass->in_plugin->capabilities & AV_CODEC_CAP_EXPERIMENTAL) && -@@ -312,10 +310,10 @@ gst_ffmpegaudenc_set_format (GstAudioEncoder * encoder, GstAudioInfo * info) - - if (!other_caps) { - gst_caps_unref (allowed_caps); -- gst_ffmpeg_avcodec_close (ffmpegaudenc->context); -+ avcodec_free_context (&ffmpegaudenc->context); - GST_DEBUG ("Unsupported codec - no caps found"); -- if (avcodec_get_context_defaults3 (ffmpegaudenc->context, -- oclass->in_plugin) < 0) -+ ffmpegaudenc->context = avcodec_alloc_context3 (oclass->in_plugin); -+ if (ffmpegaudenc->context == NULL) - GST_DEBUG_OBJECT (ffmpegaudenc, "Failed to set context defaults"); - return FALSE; - } -@@ -331,10 +329,10 @@ gst_ffmpegaudenc_set_format (GstAudioEncoder * encoder, GstAudioInfo * info) - - if (!gst_audio_encoder_set_output_format (GST_AUDIO_ENCODER (ffmpegaudenc), - icaps)) { -- gst_ffmpeg_avcodec_close (ffmpegaudenc->context); -+ avcodec_free_context (&ffmpegaudenc->context); - gst_caps_unref (icaps); -- if (avcodec_get_context_defaults3 (ffmpegaudenc->context, -- oclass->in_plugin) < 0) -+ ffmpegaudenc->context = avcodec_alloc_context3 (oclass->in_plugin); -+ if (ffmpegaudenc->context == NULL) - GST_DEBUG_OBJECT (ffmpegaudenc, "Failed to set context defaults"); - return FALSE; - } -@@ -403,8 +401,8 @@ buffer_info_free (void *opaque, guint8 * data) - gst_buffer_unmap (info->buffer, &info->map); - gst_buffer_unref (info->buffer); - } else { -- av_free (info->ext_data); -- av_free (info->ext_data_array); -+ av_freep (&info->ext_data); -+ av_freep (&info->ext_data_array); - } - g_slice_free (BufferInfo, info); - } -diff --git a/ext/libav/gstavcodecmap.c b/ext/libav/gstavcodecmap.c -index f58633d..e2a3641 100644 ---- a/ext/libav/gstavcodecmap.c -+++ b/ext/libav/gstavcodecmap.c -@@ -2331,7 +2331,7 @@ gst_ffmpeg_codecid_to_caps (enum AVCodecID codec_id, - } - - if (buildcaps) { -- AVCodec *codec; -+ const AVCodec *codec; - - if ((codec = avcodec_find_decoder (codec_id)) || - (codec = avcodec_find_encoder (codec_id))) { -@@ -2975,6 +2975,7 @@ gst_ffmpeg_videoinfo_to_context (GstVideoInfo * info, AVCodecContext * context) - context->color_range = AVCOL_RANGE_JPEG; - } else { - context->color_range = AVCOL_RANGE_MPEG; -+ context->strict_std_compliance = FF_COMPLIANCE_UNOFFICIAL; - } - } - -@@ -4330,7 +4331,7 @@ gst_ffmpeg_caps_to_codecid (const GstCaps * caps, AVCodecContext * context) - audio = TRUE; - } else if (!strncmp (mimetype, "audio/x-gst-av-", 15)) { - gchar ext[16]; -- AVCodec *codec; -+ const AVCodec *codec; - - if (strlen (mimetype) <= 30 && - sscanf (mimetype, "audio/x-gst-av-%s", ext) == 1) { -@@ -4342,7 +4343,7 @@ gst_ffmpeg_caps_to_codecid (const GstCaps * caps, AVCodecContext * context) - } - } else if (!strncmp (mimetype, "video/x-gst-av-", 15)) { - gchar ext[16]; -- AVCodec *codec; -+ const AVCodec *codec; - - if (strlen (mimetype) <= 30 && - sscanf (mimetype, "video/x-gst-av-%s", ext) == 1) { -diff --git a/ext/libav/gstavutils.c b/ext/libav/gstavutils.c -index 3780cff..f3878c3 100644 ---- a/ext/libav/gstavutils.c -+++ b/ext/libav/gstavutils.c -@@ -36,7 +36,7 @@ - const gchar * - gst_ffmpeg_get_codecid_longname (enum AVCodecID codec_id) - { -- AVCodec *codec; -+ const AVCodec *codec; - /* Let's use what ffmpeg can provide us */ - - if ((codec = avcodec_find_decoder (codec_id)) || -diff --git a/ext/libav/gstavviddec.c b/ext/libav/gstavviddec.c -index 7ec5766..5dd207e 100644 ---- a/ext/libav/gstavviddec.c -+++ b/ext/libav/gstavviddec.c -@@ -320,12 +320,7 @@ gst_ffmpegviddec_finalize (GObject * object) - GstFFMpegVidDec *ffmpegdec = (GstFFMpegVidDec *) object; - - av_frame_free (&ffmpegdec->picture); -- -- if (ffmpegdec->context != NULL) { -- gst_ffmpeg_avcodec_close (ffmpegdec->context); -- av_free (ffmpegdec->context); -- ffmpegdec->context = NULL; -- } -+ avcodec_free_context (&ffmpegdec->context); - - G_OBJECT_CLASS (parent_class)->finalize (object); - } -@@ -363,13 +358,11 @@ gst_ffmpegviddec_close (GstFFMpegVidDec * ffmpegdec, gboolean reset) - - gst_buffer_replace (&ffmpegdec->palette, NULL); - -- if (ffmpegdec->context->extradata) { -- av_free (ffmpegdec->context->extradata); -- ffmpegdec->context->extradata = NULL; -- } -+ av_freep (&ffmpegdec->context->extradata); - if (reset) { -- if (avcodec_get_context_defaults3 (ffmpegdec->context, -- oclass->in_plugin) < 0) { -+ avcodec_free_context (&ffmpegdec->context); -+ ffmpegdec->context = avcodec_alloc_context3 (oclass->in_plugin); -+ if (ffmpegdec->context == NULL) { - GST_DEBUG_OBJECT (ffmpegdec, "Failed to set context defaults"); - return FALSE; - } -@@ -1704,7 +1697,7 @@ gst_ffmpegviddec_video_frame (GstFFMpegVidDec * ffmpegdec, - if (side_data) { - GST_LOG_OBJECT (ffmpegdec, - "Found CC side data of type AV_FRAME_DATA_A53_CC, size %d", -- side_data->size); -+ (int) side_data->size); - GST_MEMDUMP ("A53 CC", side_data->data, side_data->size); - - /* do not add closed caption meta if it already exists */ -@@ -1966,8 +1959,9 @@ gst_ffmpegviddec_start (GstVideoDecoder * decoder) - oclass = (GstFFMpegVidDecClass *) (G_OBJECT_GET_CLASS (ffmpegdec)); - - GST_OBJECT_LOCK (ffmpegdec); -- gst_ffmpeg_avcodec_close (ffmpegdec->context); -- if (avcodec_get_context_defaults3 (ffmpegdec->context, oclass->in_plugin) < 0) { -+ avcodec_free_context (&ffmpegdec->context); -+ ffmpegdec->context = avcodec_alloc_context3 (oclass->in_plugin); -+ if (ffmpegdec->context == NULL) { - GST_DEBUG_OBJECT (ffmpegdec, "Failed to set context defaults"); - GST_OBJECT_UNLOCK (ffmpegdec); - return FALSE; -@@ -2261,10 +2255,10 @@ gst_ffmpegviddec_get_property (GObject * object, - - switch (prop_id) { - case PROP_LOWRES: -- g_value_set_enum (value, ffmpegdec->context->lowres); -+ g_value_set_enum (value, ffmpegdec->lowres); - break; - case PROP_SKIPFRAME: -- g_value_set_enum (value, ffmpegdec->context->skip_frame); -+ g_value_set_enum (value, ffmpegdec->skip_frame); - break; - case PROP_DIRECT_RENDERING: - g_value_set_boolean (value, ffmpegdec->direct_rendering); -diff --git a/ext/libav/gstavvidenc.c b/ext/libav/gstavvidenc.c -index 0468d88..2ed9e5a 100644 ---- a/ext/libav/gstavvidenc.c -+++ b/ext/libav/gstavvidenc.c -@@ -224,8 +224,8 @@ gst_ffmpegvidenc_finalize (GObject * object) - av_frame_free (&ffmpegenc->picture); - gst_ffmpeg_avcodec_close (ffmpegenc->context); - gst_ffmpeg_avcodec_close (ffmpegenc->refcontext); -- av_free (ffmpegenc->context); -- av_free (ffmpegenc->refcontext); -+ av_freep (&ffmpegenc->context); -+ av_freep (&ffmpegenc->refcontext); - - G_OBJECT_CLASS (parent_class)->finalize (object); - } -@@ -247,10 +247,10 @@ gst_ffmpegvidenc_set_format (GstVideoEncoder * encoder, - - /* close old session */ - if (ffmpegenc->opened) { -- gst_ffmpeg_avcodec_close (ffmpegenc->context); -+ avcodec_free_context (&ffmpegenc->context); - ffmpegenc->opened = FALSE; -- if (avcodec_get_context_defaults3 (ffmpegenc->context, -- oclass->in_plugin) < 0) { -+ ffmpegenc->context = avcodec_alloc_context3 (oclass->in_plugin); -+ if (ffmpegenc->context == NULL) { - GST_DEBUG_OBJECT (ffmpegenc, "Failed to set context defaults"); - return FALSE; - } -@@ -454,9 +454,9 @@ bad_input_fmt: - } - close_codec: - { -- gst_ffmpeg_avcodec_close (ffmpegenc->context); -- if (avcodec_get_context_defaults3 (ffmpegenc->context, -- oclass->in_plugin) < 0) -+ avcodec_free_context (&ffmpegenc->context); -+ ffmpegenc->context = avcodec_alloc_context3 (oclass->in_plugin); -+ if (ffmpegenc->context == NULL) - GST_DEBUG_OBJECT (ffmpegenc, "Failed to set context defaults"); - goto cleanup_stats_in; - } -@@ -896,8 +896,9 @@ gst_ffmpegvidenc_start (GstVideoEncoder * encoder) - ffmpegenc->need_reopen = FALSE; - - /* close old session */ -- gst_ffmpeg_avcodec_close (ffmpegenc->context); -- if (avcodec_get_context_defaults3 (ffmpegenc->context, oclass->in_plugin) < 0) { -+ avcodec_free_context (&ffmpegenc->context); -+ ffmpegenc->context = avcodec_alloc_context3 (oclass->in_plugin); -+ if (ffmpegenc->context == NULL) { - GST_DEBUG_OBJECT (ffmpegenc, "Failed to set context defaults"); - return FALSE; - } diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.5.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.5.bb deleted file mode 100644 index 64b8bcdb52..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.5.bb +++ /dev/null @@ -1,26 +0,0 @@ -SUMMARY = "Libav-based GStreamer 1.x plugin" -DESCRIPTION = "Contains a GStreamer plugin for using the encoders, decoders, \ -muxers, and demuxers provided by FFmpeg." -HOMEPAGE = "http://gstreamer.freedesktop.org/" -SECTION = "multimedia" - -# ffmpeg has comercial license flags so add it as we need ffmpeg as a dependency -LICENSE_FLAGS = "commercial" -LICENSE = "LGPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d \ - file://ext/libav/gstav.h;beginline=1;endline=18;md5=a752c35267d8276fd9ca3db6994fca9c \ - " - -SRC_URI = "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${PV}.tar.xz \ - file://0001-gst-libav-fix-build-with-ffmpeg-5.0.0.patch \ - " -SRC_URI[sha256sum] = "822e008a910e9dd13aedbdd8dc63fedef4040c0ee2e927bab3112e9de693a548" - -S = "${WORKDIR}/gst-libav-${PV}" - -DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base ffmpeg" - -inherit meson pkgconfig upstream-version-is-even - -FILES:${PN} += "${libdir}/gstreamer-1.0/*.so" -FILES:${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.20.0.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.20.0.bb new file mode 100644 index 0000000000..575e608d65 --- /dev/null +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.20.0.bb @@ -0,0 +1,28 @@ +SUMMARY = "Libav-based GStreamer 1.x plugin" +DESCRIPTION = "Contains a GStreamer plugin for using the encoders, decoders, \ +muxers, and demuxers provided by FFmpeg." +HOMEPAGE = "http://gstreamer.freedesktop.org/" +SECTION = "multimedia" + +# ffmpeg has comercial license flags so add it as we need ffmpeg as a dependency +LICENSE_FLAGS = "commercial" +LICENSE = "LGPL-2.1-or-later" +LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770 \ + file://ext/libav/gstav.h;beginline=1;endline=18;md5=a752c35267d8276fd9ca3db6994fca9c \ + " + +SRC_URI = "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${PV}.tar.xz" +SRC_URI[sha256sum] = "5eee5ed8d5082a31b500448e41535c722ee30cd5f8224f32982bbaba2eedef17" + +S = "${WORKDIR}/gst-libav-${PV}" + +DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base ffmpeg" + +inherit meson pkgconfig upstream-version-is-even + +EXTRA_OEMESON += " \ + -Dtests=disabled \ +" + +FILES:${PN} += "${libdir}/gstreamer-1.0/*.so" +FILES:${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.5.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.5.bb deleted file mode 100644 index b2c1eb3ea0..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.5.bb +++ /dev/null @@ -1,47 +0,0 @@ -SUMMARY = "OpenMAX IL plugins for GStreamer" -DESCRIPTION = "Wraps available OpenMAX IL components and makes them available as standard GStreamer elements." -HOMEPAGE = "http://gstreamer.freedesktop.org/" -SECTION = "multimedia" - -LICENSE = "LGPLv2.1" -LICENSE_FLAGS = "commercial" -LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \ - file://omx/gstomx.h;beginline=1;endline=21;md5=5c8e1fca32704488e76d2ba9ddfa935f" - -SRC_URI = "https://gstreamer.freedesktop.org/src/gst-omx/gst-omx-${PV}.tar.xz" - -SRC_URI[sha256sum] = "2cd457c1e8deb1a9b39608048fb36a44f6c9a864a6b6115b1453a32e7be93b42" - -S = "${WORKDIR}/gst-omx-${PV}" - -DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad virtual/libomxil" - -inherit meson pkgconfig upstream-version-is-even - -GSTREAMER_1_0_OMX_TARGET ?= "bellagio" -GSTREAMER_1_0_OMX_CORE_NAME ?= "${libdir}/libomxil-bellagio.so.0" - -EXTRA_OEMESON += "-Dtarget=${GSTREAMER_1_0_OMX_TARGET}" - -python __anonymous () { - omx_target = d.getVar("GSTREAMER_1_0_OMX_TARGET") - if omx_target in ['generic', 'bellagio']: - # Bellagio headers are incomplete (they are missing the OMX_VERSION_MAJOR,# - # OMX_VERSION_MINOR, OMX_VERSION_REVISION, and OMX_VERSION_STEP macros); - # appending a directory path to gst-omx' internal OpenMAX IL headers fixes this - d.appendVar("CFLAGS", " -I${S}/omx/openmax") - elif omx_target == "rpi": - # Dedicated Raspberry Pi OpenMAX IL support makes this package machine specific - d.setVar("PACKAGE_ARCH", d.getVar("MACHINE_ARCH")) -} - -set_omx_core_name() { - sed -i -e "s;^core-name=.*;core-name=${GSTREAMER_1_0_OMX_CORE_NAME};" "${D}${sysconfdir}/xdg/gstomx.conf" -} -do_install[postfuncs] += " set_omx_core_name " - -FILES:${PN} += "${libdir}/gstreamer-1.0/*.so" -FILES:${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a" - -VIRTUAL-RUNTIME_libomxil ?= "libomxil" -RDEPENDS:${PN} = "${VIRTUAL-RUNTIME_libomxil}" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.20.0.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.20.0.bb new file mode 100644 index 0000000000..94c5214a37 --- /dev/null +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.20.0.bb @@ -0,0 +1,47 @@ +SUMMARY = "OpenMAX IL plugins for GStreamer" +DESCRIPTION = "Wraps available OpenMAX IL components and makes them available as standard GStreamer elements." +HOMEPAGE = "http://gstreamer.freedesktop.org/" +SECTION = "multimedia" + +LICENSE = "LGPL-2.1-or-later" +LICENSE_FLAGS = "commercial" +LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \ + file://omx/gstomx.h;beginline=1;endline=21;md5=5c8e1fca32704488e76d2ba9ddfa935f" + +SRC_URI = "https://gstreamer.freedesktop.org/src/gst-omx/gst-omx-${PV}.tar.xz" + +SRC_URI[sha256sum] = "c1e46b70ac379ac7b3646506370c9e1007b56ae293f4d334bc0e724c76c345dd" + +S = "${WORKDIR}/gst-omx-${PV}" + +DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad virtual/libomxil" + +inherit meson pkgconfig upstream-version-is-even + +GSTREAMER_1_0_OMX_TARGET ?= "bellagio" +GSTREAMER_1_0_OMX_CORE_NAME ?= "${libdir}/libomxil-bellagio.so.0" + +EXTRA_OEMESON += "-Dtarget=${GSTREAMER_1_0_OMX_TARGET}" + +python __anonymous () { + omx_target = d.getVar("GSTREAMER_1_0_OMX_TARGET") + if omx_target in ['generic', 'bellagio']: + # Bellagio headers are incomplete (they are missing the OMX_VERSION_MAJOR,# + # OMX_VERSION_MINOR, OMX_VERSION_REVISION, and OMX_VERSION_STEP macros); + # appending a directory path to gst-omx' internal OpenMAX IL headers fixes this + d.appendVar("CFLAGS", " -I${S}/omx/openmax") + elif omx_target == "rpi": + # Dedicated Raspberry Pi OpenMAX IL support makes this package machine specific + d.setVar("PACKAGE_ARCH", d.getVar("MACHINE_ARCH")) +} + +set_omx_core_name() { + sed -i -e "s;^core-name=.*;core-name=${GSTREAMER_1_0_OMX_CORE_NAME};" "${D}${sysconfdir}/xdg/gstomx.conf" +} +do_install[postfuncs] += " set_omx_core_name " + +FILES:${PN} += "${libdir}/gstreamer-1.0/*.so" +FILES:${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a" + +VIRTUAL-RUNTIME_libomxil ?= "libomxil" +RDEPENDS:${PN} = "${VIRTUAL-RUNTIME_libomxil}" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch index 13a673cd50..4b3451d321 100644 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch @@ -1,11 +1,12 @@ -From f08ab3ac2ce43ac91d3bf65b26f26436690f499b Mon Sep 17 00:00:00 2001 +From 6c3eeaf6435608f744303c17d52245f926cd28ac Mon Sep 17 00:00:00 2001 From: Andre McCurdy Date: Tue, 26 Jan 2016 15:16:01 -0800 -Subject: [PATCH 1/4] fix maybe-uninitialized warnings when compiling with -Os +Subject: [PATCH] fix maybe-uninitialized warnings when compiling with -Os Upstream-Status: Pending Signed-off-by: Andre McCurdy + --- gst-libs/gst/codecparsers/gstvc1parser.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) @@ -23,6 +24,3 @@ index 2c60ced..e8226d8 100644 guint8 structA[8] = { 0, }; guint8 structB[12] = { 0, }; GstBitReader br; --- -2.28.0 - diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0002-avoid-including-sys-poll.h-directly.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0002-avoid-including-sys-poll.h-directly.patch index ead6897f67..e3e5d9fb60 100644 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0002-avoid-including-sys-poll.h-directly.patch +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0002-avoid-including-sys-poll.h-directly.patch @@ -1,22 +1,23 @@ -From 3b05e91720c10fcf6e0e408595b7217f6fa145c2 Mon Sep 17 00:00:00 2001 +From 701255c5797f222f0c47ace6437d213607b98d1e Mon Sep 17 00:00:00 2001 From: Andre McCurdy Date: Wed, 3 Feb 2016 18:05:41 -0800 -Subject: [PATCH 2/4] avoid including directly +Subject: [PATCH] avoid including directly musl libc generates warnings if is included directly. Upstream-Status: Pending Signed-off-by: Andre McCurdy + --- sys/dvb/gstdvbsrc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dvb/gstdvbsrc.c b/sys/dvb/gstdvbsrc.c -index ca6b92a..b2772db 100644 +index 92c918c..5e27871 100644 --- a/sys/dvb/gstdvbsrc.c +++ b/sys/dvb/gstdvbsrc.c -@@ -97,7 +97,7 @@ +@@ -98,7 +98,7 @@ #include #include #include @@ -25,6 +26,3 @@ index ca6b92a..b2772db 100644 #include #include #include --- -2.28.0 - diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0003-ensure-valid-sentinals-for-gst_structure_get-etc.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0003-ensure-valid-sentinals-for-gst_structure_get-etc.patch index 88fbc40dcd..280cbf984a 100644 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0003-ensure-valid-sentinals-for-gst_structure_get-etc.patch +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0003-ensure-valid-sentinals-for-gst_structure_get-etc.patch @@ -1,7 +1,7 @@ -From 5ed27de9f662fe063b8b3d5d4335aa64cd4718c9 Mon Sep 17 00:00:00 2001 +From 001fa08542dd5fc79571f7c803b2d3dd59c04a06 Mon Sep 17 00:00:00 2001 From: Andre McCurdy Date: Tue, 9 Feb 2016 14:00:00 -0800 -Subject: [PATCH 3/4] ensure valid sentinals for gst_structure_get() etc +Subject: [PATCH] ensure valid sentinals for gst_structure_get() etc For GStreamer functions declared with G_GNUC_NULL_TERMINATED, ie __attribute__((__sentinel__)), gcc will generate a warning if the @@ -17,6 +17,7 @@ without an explicit cast to a pointer type. Upstream-Status: Pending Signed-off-by: Andre McCurdy + --- sys/decklink/gstdecklink.cpp | 10 +++++----- sys/decklink/gstdecklinkaudiosrc.cpp | 2 +- @@ -24,10 +25,10 @@ Signed-off-by: Andre McCurdy 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/sys/decklink/gstdecklink.cpp b/sys/decklink/gstdecklink.cpp -index 4dac7e1..43762ce 100644 +index 3f79deb..96600c6 100644 --- a/sys/decklink/gstdecklink.cpp +++ b/sys/decklink/gstdecklink.cpp -@@ -674,7 +674,7 @@ gst_decklink_mode_get_generic_structure (GstDecklinkModeEnum e) +@@ -680,7 +680,7 @@ gst_decklink_mode_get_generic_structure (GstDecklinkModeEnum e) "pixel-aspect-ratio", GST_TYPE_FRACTION, mode->par_n, mode->par_d, "interlace-mode", G_TYPE_STRING, mode->interlaced ? "interleaved" : "progressive", @@ -36,7 +37,7 @@ index 4dac7e1..43762ce 100644 return s; } -@@ -699,16 +699,16 @@ gst_decklink_mode_get_structure (GstDecklinkModeEnum e, BMDPixelFormat f, +@@ -705,16 +705,16 @@ gst_decklink_mode_get_structure (GstDecklinkModeEnum e, BMDPixelFormat f, case bmdFormat8BitYUV: /* '2vuy' */ gst_structure_set (s, "format", G_TYPE_STRING, "UYVY", "colorimetry", G_TYPE_STRING, mode->colorimetry, @@ -58,10 +59,10 @@ index 4dac7e1..43762ce 100644 case bmdFormat10BitRGB: /* 'r210' Big-endian RGB 10-bit per component with SMPTE video levels (64-960). Packed as 2:10:10:10 */ case bmdFormat12BitRGB: /* 'R12B' Big-endian RGB 12-bit per component with full range (0-4095). Packed as 12-bit per component */ diff --git a/sys/decklink/gstdecklinkaudiosrc.cpp b/sys/decklink/gstdecklinkaudiosrc.cpp -index 2fef934..c47229a 100644 +index 50ad5cc..d209180 100644 --- a/sys/decklink/gstdecklinkaudiosrc.cpp +++ b/sys/decklink/gstdecklinkaudiosrc.cpp -@@ -379,7 +379,7 @@ gst_decklink_audio_src_start (GstDecklinkAudioSrc * self) +@@ -388,7 +388,7 @@ gst_decklink_audio_src_start (GstDecklinkAudioSrc * self) g_mutex_unlock (&self->input->lock); if (videosrc) { @@ -71,10 +72,10 @@ index 2fef934..c47229a 100644 switch (vconn) { diff --git a/sys/decklink/gstdecklinkvideosink.cpp b/sys/decklink/gstdecklinkvideosink.cpp -index e3a6775..f1a5aae 100644 +index a64c046..07a09e8 100644 --- a/sys/decklink/gstdecklinkvideosink.cpp +++ b/sys/decklink/gstdecklinkvideosink.cpp -@@ -286,7 +286,7 @@ reset_framerate (GstCapsFeatures * features, GstStructure * structure, +@@ -288,7 +288,7 @@ reset_framerate (GstCapsFeatures * features, GstStructure * structure, gpointer user_data) { gst_structure_set (structure, "framerate", GST_TYPE_FRACTION_RANGE, 0, 1, @@ -83,6 +84,3 @@ index e3a6775..f1a5aae 100644 return TRUE; } --- -2.28.0 - diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch index b816709066..029b80e174 100644 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch @@ -1,7 +1,7 @@ -From f19ff66640f2f472c4e9d9055253032d34e125c6 Mon Sep 17 00:00:00 2001 +From 3bc5d48257032b6bbee532aad15062fbbcc43bfe Mon Sep 17 00:00:00 2001 From: Andrey Zhizhikin Date: Mon, 27 Jan 2020 10:22:35 +0000 -Subject: [PATCH 4/4] opencv: resolve missing opencv data dir in yocto build +Subject: [PATCH] opencv: resolve missing opencv data dir in yocto build When Yocto build is performed, opencv searches for data dir using simple 'test' command, this fails because pkg-config provides an absolute @@ -11,39 +11,23 @@ in order for the 'test' utility to pick up the absolute path. Upstream-Status: Inappropriate [OE-specific] Signed-off-by: Andrey Zhizhikin +Signed-off-by: Jose Quaresma + --- - ext/opencv/meson.build | 7 ++++--- - 1 file changed, 4 insertions(+), 3 deletions(-) + ext/opencv/meson.build | 3 +++ + 1 file changed, 3 insertions(+) diff --git a/ext/opencv/meson.build b/ext/opencv/meson.build -index 0b0b3fc..0ed3344 100644 +index 1d86b90..b5c8b95 100644 --- a/ext/opencv/meson.build +++ b/ext/opencv/meson.build -@@ -78,20 +78,21 @@ else - endif - - if opencv_found -+ pkgconf_sysroot = run_command(python3, '-c', 'import os; print(os.environ.get("PKG_CONFIG_SYSROOT_DIR"))').stdout().strip() - opencv_prefix = opencv_dep.get_pkgconfig_variable('prefix') +@@ -87,6 +87,9 @@ if opencv_found + opencv_prefix = opencv_dep.get_variable('prefix') gstopencv_cargs += ['-DOPENCV_PREFIX="' + opencv_prefix + '"'] ++ pkgconf_sysroot = run_command(python3, '-c', 'import os; print(os.environ.get("PKG_CONFIG_SYSROOT_DIR"))').stdout().strip() ++ opencv_prefix = pkgconf_sysroot + opencv_prefix ++ # Check the data dir used by opencv for its xml data files # Use prefix from pkg-config to be compatible with cross-compilation -- r = run_command('test', '-d', opencv_prefix + '/share/opencv') -+ r = run_command('test', '-d', pkgconf_sysroot + opencv_prefix + '/share/opencv') - if r.returncode() == 0 - gstopencv_cargs += '-DOPENCV_PATH_NAME="opencv"' - else -- r = run_command('test', '-d', opencv_prefix + '/share/OpenCV') -+ r = run_command('test', '-d', pkgconf_sysroot + opencv_prefix + '/share/OpenCV') - if r.returncode() == 0 - gstopencv_cargs += '-DOPENCV_PATH_NAME="OpenCV"' - else -- r = run_command('test', '-d', opencv_prefix + '/share/opencv4') -+ r = run_command('test', '-d', pkgconf_sysroot + opencv_prefix + '/share/opencv4') - if r.returncode() == 0 - gstopencv_cargs += '-DOPENCV_PATH_NAME="opencv4"' - else --- -2.28.0 - + r = run_command('test', '-d', opencv_prefix + '/share/opencv', check: false) diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0005-msdk-fix-includedir-path.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0005-msdk-fix-includedir-path.patch index cb3bb7d361..273b45bd49 100644 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0005-msdk-fix-includedir-path.patch +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0005-msdk-fix-includedir-path.patch @@ -1,4 +1,4 @@ -From 1f00d5026118ebd48e4ccf83d32d67155c4e7f60 Mon Sep 17 00:00:00 2001 +From e31f68c46ff0c29fa3c22755f18d5dde87b23bf2 Mon Sep 17 00:00:00 2001 From: Naveen Saini Date: Wed, 30 Dec 2020 16:37:47 +0800 Subject: [PATCH] msdk: fix includedir path @@ -8,24 +8,33 @@ In cross compilation, need to prepend PKG_CONFIG_SYSROOT_DIR to the dir path. Upstream-Status: Inappropriate [OE-specific] Signed-off-by: Naveen Saini +Signed-off-by: Jose Quaresma + --- - sys/msdk/meson.build | 2 ++ - 1 file changed, 2 insertions(+) + sys/msdk/meson.build | 4 ++++ + 1 file changed, 4 insertions(+) diff --git a/sys/msdk/meson.build b/sys/msdk/meson.build -index 6346c9451..068f38548 100644 +index 24aabc7..6003bb7 100644 --- a/sys/msdk/meson.build +++ b/sys/msdk/meson.build -@@ -40,7 +40,9 @@ endif +@@ -46,7 +46,9 @@ if mfx_api != 'oneVPL' + mfx_dep = dependency('libmfx', version: ['>= 1.0', '<= 1.99'], required: false) - mfx_dep = dependency('libmfx', required: false) - if mfx_dep.found() -+ pkgconf_sysroot = run_command(python3, '-c', 'import os; print(os.environ.get("PKG_CONFIG_SYSROOT_DIR"))').stdout().strip() - mfx_incdir = mfx_dep.get_pkgconfig_variable('includedir') -+ mfx_incdir = pkgconf_sysroot + mfx_incdir - mfx_inc = [] - else - # Old versions of MediaSDK don't provide a pkg-config file --- -2.17.1 - + if mfx_dep.found() ++ pkgconf_sysroot = run_command(python3, '-c', 'import os; print(os.environ.get("PKG_CONFIG_SYSROOT_DIR"))').stdout().strip() + mfx_incdir = mfx_dep.get_variable('includedir') ++ mfx_incdir = pkgconf_sysroot + mfx_incdir + mfx_inc = [] + use_msdk = true + else +@@ -75,7 +77,9 @@ if not use_msdk and mfx_api != 'MSDK' + mfx_dep = dependency('vpl', version: '>= 2.2', required: false) + + if mfx_dep.found() ++ pkgconf_sysroot = run_command(python3, '-c', 'import os; print(os.environ.get("PKG_CONFIG_SYSROOT_DIR"))').stdout().strip() + mfx_incdir = mfx_dep.get_variable('includedir') ++ mfx_incdir = pkgconf_sysroot + mfx_incdir + mfx_inc = [] + use_onevpl = true + endif diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.5.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.5.bb deleted file mode 100644 index f90dff693d..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.5.bb +++ /dev/null @@ -1,160 +0,0 @@ -require gstreamer1.0-plugins-common.inc - -DESCRIPTION = "'Bad' GStreamer plugins and helper libraries " -HOMEPAGE = "https://gstreamer.freedesktop.org/" -BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues" - -SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${PV}.tar.xz \ - file://0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch \ - file://0002-avoid-including-sys-poll.h-directly.patch \ - file://0003-ensure-valid-sentinals-for-gst_structure_get-etc.patch \ - file://0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch \ - file://0005-msdk-fix-includedir-path.patch \ - " -SRC_URI[sha256sum] = "a164923b94f0d08578a6fcaeaac6e0c05da788a46903a1086870e9ca45ad678e" - -S = "${WORKDIR}/gst-plugins-bad-${PV}" - -LICENSE = "GPLv2+ & LGPLv2+ & LGPLv2.1+" -LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" - -# remove at next version upgrade or when output changes -PR = "r1" -HASHEQUIV_HASH_VERSION .= ".1" - -DEPENDS += "gstreamer1.0-plugins-base" - -inherit gobject-introspection - -PACKAGECONFIG ??= " \ - ${GSTREAMER_ORC} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'directfb vulkan x11', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gl', '', d)} \ - bz2 closedcaption curl dash dtls hls openssl sbc smoothstreaming \ - sndfile ttml uvch264 webp \ - ${@bb.utils.contains('TUNE_FEATURES', 'mx32', '', 'rsvg', d)} \ -" - -PACKAGECONFIG[aom] = "-Daom=enabled,-Daom=disabled,aom" -PACKAGECONFIG[assrender] = "-Dassrender=enabled,-Dassrender=disabled,libass" -PACKAGECONFIG[bluez] = "-Dbluez=enabled,-Dbluez=disabled,bluez5" -PACKAGECONFIG[bz2] = "-Dbz2=enabled,-Dbz2=disabled,bzip2" -PACKAGECONFIG[closedcaption] = "-Dclosedcaption=enabled,-Dclosedcaption=disabled,pango cairo" -PACKAGECONFIG[curl] = "-Dcurl=enabled,-Dcurl=disabled,curl" -PACKAGECONFIG[dash] = "-Ddash=enabled,-Ddash=disabled,libxml2" -PACKAGECONFIG[dc1394] = "-Ddc1394=enabled,-Ddc1394=disabled,libdc1394" -PACKAGECONFIG[directfb] = "-Ddirectfb=enabled,-Ddirectfb=disabled,directfb" -PACKAGECONFIG[dtls] = "-Ddtls=enabled,-Ddtls=disabled,openssl" -PACKAGECONFIG[faac] = "-Dfaac=enabled,-Dfaac=disabled,faac" -PACKAGECONFIG[faad] = "-Dfaad=enabled,-Dfaad=disabled,faad2" -PACKAGECONFIG[fluidsynth] = "-Dfluidsynth=enabled,-Dfluidsynth=disabled,fluidsynth" -PACKAGECONFIG[hls] = "-Dhls=enabled,-Dhls=disabled," -# Pick atleast one crypto backend below when enabling hls -PACKAGECONFIG[nettle] = "-Dhls-crypto=nettle,,nettle" -PACKAGECONFIG[openssl] = "-Dhls-crypto=openssl,,openssl" -PACKAGECONFIG[gcrypt] = "-Dhls-crypto=libgcrypt,,libgcrypt" -# the gl packageconfig enables OpenGL elements that haven't been ported -# to -base yet. They depend on the gstgl library in -base, so we do -# not add GL dependencies here, since these are taken care of in -base. -PACKAGECONFIG[gl] = "-Dgl=enabled,-Dgl=disabled," -PACKAGECONFIG[kms] = "-Dkms=enabled,-Dkms=disabled,libdrm" -PACKAGECONFIG[libde265] = "-Dlibde265=enabled,-Dlibde265=disabled,libde265" -PACKAGECONFIG[libmms] = "-Dlibmms=enabled,-Dlibmms=disabled,libmms" -PACKAGECONFIG[libssh2] = "-Dcurl-ssh2=enabled,-Dcurl-ssh2=disabled,libssh2" -PACKAGECONFIG[lcms2] = "-Dcolormanagement=enabled,-Dcolormanagement=disabled,lcms" -PACKAGECONFIG[modplug] = "-Dmodplug=enabled,-Dmodplug=disabled,libmodplug" -PACKAGECONFIG[msdk] = "-Dmsdk=enabled,-Dmsdk=disabled,intel-mediasdk" -PACKAGECONFIG[neon] = "-Dneon=enabled,-Dneon=disabled,neon" -PACKAGECONFIG[openal] = "-Dopenal=enabled,-Dopenal=disabled,openal-soft" -PACKAGECONFIG[opencv] = "-Dopencv=enabled,-Dopencv=disabled,opencv" -PACKAGECONFIG[openh264] = "-Dopenh264=enabled,-Dopenh264=disabled,openh264" -PACKAGECONFIG[openjpeg] = "-Dopenjpeg=enabled,-Dopenjpeg=disabled,openjpeg" -PACKAGECONFIG[openmpt] = "-Dopenmpt=enabled,-Dopenmpt=disabled,libopenmpt" -# the opus encoder/decoder elements are now in the -base package, -# but the opus parser remains in -bad -PACKAGECONFIG[opusparse] = "-Dopus=enabled,-Dopus=disabled,libopus" -PACKAGECONFIG[resindvd] = "-Dresindvd=enabled,-Dresindvd=disabled,libdvdread libdvdnav" -PACKAGECONFIG[rsvg] = "-Drsvg=enabled,-Drsvg=disabled,librsvg" -PACKAGECONFIG[rtmp] = "-Drtmp=enabled,-Drtmp=disabled,rtmpdump" -PACKAGECONFIG[sbc] = "-Dsbc=enabled,-Dsbc=disabled,sbc" -PACKAGECONFIG[sctp] = "-Dsctp=enabled,-Dsctp=disabled" -PACKAGECONFIG[smoothstreaming] = "-Dsmoothstreaming=enabled,-Dsmoothstreaming=disabled,libxml2" -PACKAGECONFIG[sndfile] = "-Dsndfile=enabled,-Dsndfile=disabled,libsndfile1" -PACKAGECONFIG[srt] = "-Dsrt=enabled,-Dsrt=disabled,srt" -PACKAGECONFIG[srtp] = "-Dsrtp=enabled,-Dsrtp=disabled,libsrtp" -PACKAGECONFIG[tinyalsa] = "-Dtinyalsa=enabled,-Dtinyalsa=disabled,tinyalsa" -PACKAGECONFIG[ttml] = "-Dttml=enabled,-Dttml=disabled,libxml2 pango cairo" -PACKAGECONFIG[uvch264] = "-Duvch264=enabled,-Duvch264=disabled,libusb1 libgudev" -PACKAGECONFIG[v4l2codecs] = "-Dv4l2codecs=enabled,-Dv4l2codecs=disabled,libgudev" -PACKAGECONFIG[va] = "-Dva=enabled,-Dva=disabled,libva" -PACKAGECONFIG[voaacenc] = "-Dvoaacenc=enabled,-Dvoaacenc=disabled,vo-aacenc" -PACKAGECONFIG[voamrwbenc] = "-Dvoamrwbenc=enabled,-Dvoamrwbenc=disabled,vo-amrwbenc" -PACKAGECONFIG[vulkan] = "-Dvulkan=enabled,-Dvulkan=disabled,vulkan-loader shaderc-native" -PACKAGECONFIG[wayland] = "-Dwayland=enabled,-Dwayland=disabled,wayland-native wayland wayland-protocols libdrm" -PACKAGECONFIG[webp] = "-Dwebp=enabled,-Dwebp=disabled,libwebp" -PACKAGECONFIG[webrtc] = "-Dwebrtc=enabled,-Dwebrtc=disabled,libnice" -PACKAGECONFIG[webrtcdsp] = "-Dwebrtcdsp=enabled,-Dwebrtcdsp=disabled,webrtc-audio-processing" -PACKAGECONFIG[zbar] = "-Dzbar=enabled,-Dzbar=disabled,zbar" -PACKAGECONFIG[x11] = "-Dx11=enabled,-Dx11=disabled,libxcb libxkbcommon" -PACKAGECONFIG[x265] = "-Dx265=enabled,-Dx265=disabled,x265" - -EXTRA_OEMESON += " \ - -Ddoc=disabled \ - -Ddecklink=enabled \ - -Ddvb=enabled \ - -Dfbdev=enabled \ - -Dipcpipeline=enabled \ - -Dshm=enabled \ - -Dtranscode=enabled \ - -Dandroidmedia=disabled \ - -Dapplemedia=disabled \ - -Davtp=disabled \ - -Dbs2b=disabled \ - -Dchromaprint=disabled \ - -Dd3dvideosink=disabled \ - -Dd3d11=disabled \ - -Ddirectsound=disabled \ - -Ddts=disabled \ - -Dfdkaac=disabled \ - -Dflite=disabled \ - -Dgme=disabled \ - -Dgsm=disabled \ - -Diqa=disabled \ - -Dkate=disabled \ - -Dladspa=disabled \ - -Dlv2=disabled \ - -Dmagicleap=disabled \ - -Dmediafoundation=disabled \ - -Dmicrodns=disabled \ - -Dmpeg2enc=disabled \ - -Dmplex=disabled \ - -Dmusepack=disabled \ - -Dnvcodec=disabled \ - -Dofa=disabled \ - -Dopenexr=disabled \ - -Dopenni2=disabled \ - -Dopensles=disabled \ - -Dsoundtouch=disabled \ - -Dspandsp=disabled \ - -Dsvthevcenc=disabled \ - -Dteletext=disabled \ - -Dwasapi=disabled \ - -Dwasapi2=disabled \ - -Dwildmidi=disabled \ - -Dwinks=disabled \ - -Dwinscreencap=disabled \ - -Dwpe=disabled \ - -Dzxing=disabled \ -" - -export OPENCV_PREFIX = "${STAGING_DIR_TARGET}${prefix}" - -ARM_INSTRUCTION_SET:armv4 = "arm" -ARM_INSTRUCTION_SET:armv5 = "arm" - -FILES:${PN}-freeverb += "${datadir}/gstreamer-1.0/presets/GstFreeverb.prs" -FILES:${PN}-opencv += "${datadir}/gst-plugins-bad/1.0/opencv*" -FILES:${PN}-transcode += "${datadir}/gstreamer-1.0/encoding-profiles" -FILES:${PN}-voamrwbenc += "${datadir}/gstreamer-1.0/presets/GstVoAmrwbEnc.prs" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.20.0.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.20.0.bb new file mode 100644 index 0000000000..44532222fa --- /dev/null +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.20.0.bb @@ -0,0 +1,165 @@ +require gstreamer1.0-plugins-common.inc + +DESCRIPTION = "'Bad' GStreamer plugins and helper libraries " +HOMEPAGE = "https://gstreamer.freedesktop.org/" +BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues" + +SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${PV}.tar.xz \ + file://0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch \ + file://0002-avoid-including-sys-poll.h-directly.patch \ + file://0003-ensure-valid-sentinals-for-gst_structure_get-etc.patch \ + file://0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch \ + file://0005-msdk-fix-includedir-path.patch \ + " +SRC_URI[sha256sum] = "015b8d4d9a395ebf444d40876867a2034dd3304b3ad48bc3a0dd0c1ee71dc11d" + +S = "${WORKDIR}/gst-plugins-bad-${PV}" + +LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later" +LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" + +DEPENDS += "gstreamer1.0-plugins-base" + +inherit gobject-introspection + +PACKAGECONFIG ??= " \ + ${GSTREAMER_ORC} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \ + ${@bb.utils.filter('DISTRO_FEATURES', 'directfb vulkan x11', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gl', '', d)} \ + bz2 closedcaption curl dash dtls hls openssl sbc smoothstreaming \ + sndfile ttml uvch264 webp \ + ${@bb.utils.contains('TUNE_FEATURES', 'mx32', '', 'rsvg', d)} \ +" + +PACKAGECONFIG[aom] = "-Daom=enabled,-Daom=disabled,aom" +PACKAGECONFIG[assrender] = "-Dassrender=enabled,-Dassrender=disabled,libass" +PACKAGECONFIG[bluez] = "-Dbluez=enabled,-Dbluez=disabled,bluez5" +PACKAGECONFIG[bz2] = "-Dbz2=enabled,-Dbz2=disabled,bzip2" +PACKAGECONFIG[closedcaption] = "-Dclosedcaption=enabled,-Dclosedcaption=disabled,pango cairo" +PACKAGECONFIG[curl] = "-Dcurl=enabled,-Dcurl=disabled,curl" +PACKAGECONFIG[dash] = "-Ddash=enabled,-Ddash=disabled,libxml2" +PACKAGECONFIG[dc1394] = "-Ddc1394=enabled,-Ddc1394=disabled,libdc1394" +PACKAGECONFIG[directfb] = "-Ddirectfb=enabled,-Ddirectfb=disabled,directfb" +PACKAGECONFIG[dtls] = "-Ddtls=enabled,-Ddtls=disabled,openssl" +PACKAGECONFIG[faac] = "-Dfaac=enabled,-Dfaac=disabled,faac" +PACKAGECONFIG[fluidsynth] = "-Dfluidsynth=enabled,-Dfluidsynth=disabled,fluidsynth" +PACKAGECONFIG[hls] = "-Dhls=enabled,-Dhls=disabled," +# Pick atleast one crypto backend below when enabling hls +PACKAGECONFIG[nettle] = "-Dhls-crypto=nettle,,nettle" +PACKAGECONFIG[openssl] = "-Dhls-crypto=openssl,,openssl" +PACKAGECONFIG[gcrypt] = "-Dhls-crypto=libgcrypt,,libgcrypt" +# the gl packageconfig enables OpenGL elements that haven't been ported +# to -base yet. They depend on the gstgl library in -base, so we do +# not add GL dependencies here, since these are taken care of in -base. +PACKAGECONFIG[gl] = "-Dgl=enabled,-Dgl=disabled," +PACKAGECONFIG[kms] = "-Dkms=enabled,-Dkms=disabled,libdrm" +PACKAGECONFIG[libde265] = "-Dlibde265=enabled,-Dlibde265=disabled,libde265" +PACKAGECONFIG[libssh2] = "-Dcurl-ssh2=enabled,-Dcurl-ssh2=disabled,libssh2" +PACKAGECONFIG[lcms2] = "-Dcolormanagement=enabled,-Dcolormanagement=disabled,lcms" +PACKAGECONFIG[modplug] = "-Dmodplug=enabled,-Dmodplug=disabled,libmodplug" +PACKAGECONFIG[msdk] = "-Dmsdk=enabled,-Dmsdk=disabled,intel-mediasdk" +PACKAGECONFIG[neon] = "-Dneon=enabled,-Dneon=disabled,neon" +PACKAGECONFIG[openal] = "-Dopenal=enabled,-Dopenal=disabled,openal-soft" +PACKAGECONFIG[opencv] = "-Dopencv=enabled,-Dopencv=disabled,opencv" +PACKAGECONFIG[openh264] = "-Dopenh264=enabled,-Dopenh264=disabled,openh264" +PACKAGECONFIG[openjpeg] = "-Dopenjpeg=enabled,-Dopenjpeg=disabled,openjpeg" +PACKAGECONFIG[openmpt] = "-Dopenmpt=enabled,-Dopenmpt=disabled,libopenmpt" +# the opus encoder/decoder elements are now in the -base package, +# but the opus parser remains in -bad +PACKAGECONFIG[opusparse] = "-Dopus=enabled,-Dopus=disabled,libopus" +PACKAGECONFIG[rsvg] = "-Drsvg=enabled,-Drsvg=disabled,librsvg" +PACKAGECONFIG[rtmp] = "-Drtmp=enabled,-Drtmp=disabled,rtmpdump" +PACKAGECONFIG[sbc] = "-Dsbc=enabled,-Dsbc=disabled,sbc" +PACKAGECONFIG[sctp] = "-Dsctp=enabled,-Dsctp=disabled" +PACKAGECONFIG[smoothstreaming] = "-Dsmoothstreaming=enabled,-Dsmoothstreaming=disabled,libxml2" +PACKAGECONFIG[sndfile] = "-Dsndfile=enabled,-Dsndfile=disabled,libsndfile1" +PACKAGECONFIG[srt] = "-Dsrt=enabled,-Dsrt=disabled,srt" +PACKAGECONFIG[srtp] = "-Dsrtp=enabled,-Dsrtp=disabled,libsrtp" +PACKAGECONFIG[tinyalsa] = "-Dtinyalsa=enabled,-Dtinyalsa=disabled,tinyalsa" +PACKAGECONFIG[ttml] = "-Dttml=enabled,-Dttml=disabled,libxml2 pango cairo" +PACKAGECONFIG[uvch264] = "-Duvch264=enabled,-Duvch264=disabled,libusb1 libgudev" +PACKAGECONFIG[v4l2codecs] = "-Dv4l2codecs=enabled,-Dv4l2codecs=disabled,libgudev" +PACKAGECONFIG[va] = "-Dva=enabled,-Dva=disabled,libva" +PACKAGECONFIG[voaacenc] = "-Dvoaacenc=enabled,-Dvoaacenc=disabled,vo-aacenc" +PACKAGECONFIG[voamrwbenc] = "-Dvoamrwbenc=enabled,-Dvoamrwbenc=disabled,vo-amrwbenc" +PACKAGECONFIG[vulkan] = "-Dvulkan=enabled,-Dvulkan=disabled,vulkan-loader shaderc-native" +PACKAGECONFIG[wayland] = "-Dwayland=enabled,-Dwayland=disabled,wayland-native wayland wayland-protocols libdrm" +PACKAGECONFIG[webp] = "-Dwebp=enabled,-Dwebp=disabled,libwebp" +PACKAGECONFIG[webrtc] = "-Dwebrtc=enabled,-Dwebrtc=disabled,libnice" +PACKAGECONFIG[webrtcdsp] = "-Dwebrtcdsp=enabled,-Dwebrtcdsp=disabled,webrtc-audio-processing" +PACKAGECONFIG[zbar] = "-Dzbar=enabled,-Dzbar=disabled,zbar" +PACKAGECONFIG[x11] = "-Dx11=enabled,-Dx11=disabled,libxcb libxkbcommon" + +# GPL - only built if gpl option is also enabled! +PACKAGECONFIG[gpl] = "-Dgpl=enabled,-Dgpl=disabled" +PACKAGECONFIG[faad] = "-Dfaad=enabled,-Dfaad=disabled,faad2" +PACKAGECONFIG[resindvd] = "-Dresindvd=enabled,-Dresindvd=disabled,libdvdread libdvdnav" +PACKAGECONFIG[x265] = "-Dx265=enabled,-Dx265=disabled,x265" + +EXTRA_OEMESON += " \ + -Ddoc=disabled \ + -Daes=enabled \ + -Dcodecalpha=enabled \ + -Ddecklink=enabled \ + -Ddvb=enabled \ + -Dfbdev=enabled \ + -Dipcpipeline=enabled \ + -Dshm=enabled \ + -Dtranscode=enabled \ + -Dandroidmedia=disabled \ + -Dapplemedia=disabled \ + -Dasio=disabled \ + -Davtp=disabled \ + -Dbs2b=disabled \ + -Dchromaprint=disabled \ + -Dd3dvideosink=disabled \ + -Dd3d11=disabled \ + -Ddirectsound=disabled \ + -Ddts=disabled \ + -Dfdkaac=disabled \ + -Dflite=disabled \ + -Dgme=disabled \ + -Dgs=disabled \ + -Dgsm=disabled \ + -Diqa=disabled \ + -Dkate=disabled \ + -Dladspa=disabled \ + -Dldac=disabled \ + -Dlv2=disabled \ + -Dmagicleap=disabled \ + -Dmediafoundation=disabled \ + -Dmicrodns=disabled \ + -Dmpeg2enc=disabled \ + -Dmplex=disabled \ + -Dmusepack=disabled \ + -Dnvcodec=disabled \ + -Dopenexr=disabled \ + -Dopenni2=disabled \ + -Dopenaptx=disabled \ + -Dopensles=disabled \ + -Donnx=disabled \ + -Dqroverlay=disabled \ + -Dsoundtouch=disabled \ + -Dspandsp=disabled \ + -Dsvthevcenc=disabled \ + -Dteletext=disabled \ + -Dwasapi=disabled \ + -Dwasapi2=disabled \ + -Dwildmidi=disabled \ + -Dwinks=disabled \ + -Dwinscreencap=disabled \ + -Dwpe=disabled \ + -Dzxing=disabled \ +" + +export OPENCV_PREFIX = "${STAGING_DIR_TARGET}${prefix}" + +ARM_INSTRUCTION_SET:armv4 = "arm" +ARM_INSTRUCTION_SET:armv5 = "arm" + +FILES:${PN}-freeverb += "${datadir}/gstreamer-1.0/presets/GstFreeverb.prs" +FILES:${PN}-opencv += "${datadir}/gst-plugins-bad/1.0/opencv*" +FILES:${PN}-transcode += "${datadir}/gstreamer-1.0/encoding-profiles" +FILES:${PN}-voamrwbenc += "${datadir}/gstreamer-1.0/presets/GstVoAmrwbEnc.prs" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0004-glimagesink-Downrank-to-marginal.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0004-glimagesink-Downrank-to-marginal.patch deleted file mode 100644 index f45ea65ef3..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0004-glimagesink-Downrank-to-marginal.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 79841a02ee754eba736cb32aaf2ed2b2fc0483d4 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin -Date: Thu, 24 Sep 2015 19:47:32 +0300 -Subject: [PATCH 4/4] glimagesink: Downrank to marginal - -On desktop, where there is good OpenGL, xvimagesink will come up first, -on other platforms, OpenGL can't be trusted because it's either software (like -in a VM) or broken (like on embedded)., so let ximagesink come above. - -Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=751684] - -Signed-off-by: Alexander Kanavin ---- - ext/gl/gstopengl.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ext/gl/gstopengl.c b/ext/gl/gstopengl.c -index 302e845..463be9c 100644 ---- a/ext/gl/gstopengl.c -+++ b/ext/gl/gstopengl.c -@@ -127,7 +127,7 @@ plugin_init (GstPlugin * plugin) - #endif - - if (!gst_element_register (plugin, "glimagesink", -- GST_RANK_SECONDARY, gst_gl_image_sink_bin_get_type ())) { -+ GST_RANK_MARGINAL, gst_gl_image_sink_bin_get_type ())) { - return FALSE; - } - --- -2.28.0 - diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.5.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.5.bb deleted file mode 100644 index 180241828f..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.5.bb +++ /dev/null @@ -1,94 +0,0 @@ -require gstreamer1.0-plugins-common.inc - -DESCRIPTION = "'Base' GStreamer plugins and helper libraries" -HOMEPAGE = "https://gstreamer.freedesktop.org/" -BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues" -LICENSE = "GPLv2+ & LGPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d" - -SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-${PV}.tar.xz \ - file://0001-ENGR00312515-get-caps-from-src-pad-when-query-caps.patch \ - file://0003-viv-fb-Make-sure-config.h-is-included.patch \ - file://0002-ssaparse-enhance-SSA-text-lines-parsing.patch \ - file://0004-glimagesink-Downrank-to-marginal.patch \ - " -SRC_URI[sha256sum] = "960b7af4585700db0fdd5b843554e11e2564fed9e061f591fae88a7be6446fa3" - -S = "${WORKDIR}/gst-plugins-base-${PV}" - -DEPENDS += "iso-codes util-linux zlib" - -inherit gobject-introspection - -PACKAGES_DYNAMIC =+ "^libgst.*" - -# opengl packageconfig factored out to make it easy for distros -# and BSP layers to choose OpenGL APIs/platforms/window systems -PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}" - -PACKAGECONFIG ??= " \ - ${GSTREAMER_ORC} \ - ${PACKAGECONFIG_GL} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'alsa x11', d)} \ - jpeg ogg pango png theora vorbis \ - ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland egl', '', d)} \ -" - -OPENGL_APIS = 'opengl gles2' -OPENGL_PLATFORMS = 'egl' - -X11DEPENDS = "virtual/libx11 libsm libxrender libxv" -X11ENABLEOPTS = "-Dx11=enabled -Dxvideo=enabled -Dxshm=enabled" -X11DISABLEOPTS = "-Dx11=disabled -Dxvideo=disabled -Dxshm=disabled" - -PACKAGECONFIG[alsa] = "-Dalsa=enabled,-Dalsa=disabled,alsa-lib" -PACKAGECONFIG[cdparanoia] = "-Dcdparanoia=enabled,-Dcdparanoia=disabled,cdparanoia" -PACKAGECONFIG[graphene] = "-Dgl-graphene=enabled,-Dgl-graphene=disabled,graphene" -PACKAGECONFIG[jpeg] = "-Dgl-jpeg=enabled,-Dgl-jpeg=disabled,jpeg" -PACKAGECONFIG[ogg] = "-Dogg=enabled,-Dogg=disabled,libogg" -PACKAGECONFIG[opus] = "-Dopus=enabled,-Dopus=disabled,libopus" -PACKAGECONFIG[pango] = "-Dpango=enabled,-Dpango=disabled,pango" -PACKAGECONFIG[png] = "-Dgl-png=enabled,-Dgl-png=disabled,libpng" -PACKAGECONFIG[theora] = "-Dtheora=enabled,-Dtheora=disabled,libtheora" -PACKAGECONFIG[tremor] = "-Dtremor=enabled,-Dtremor=disabled,tremor" -PACKAGECONFIG[visual] = "-Dlibvisual=enabled,-Dlibvisual=disabled,libvisual" -PACKAGECONFIG[vorbis] = "-Dvorbis=enabled,-Dvorbis=disabled,libvorbis" -PACKAGECONFIG[x11] = "${X11ENABLEOPTS},${X11DISABLEOPTS},${X11DEPENDS}" - -# OpenGL API packageconfigs -PACKAGECONFIG[opengl] = ",,virtual/libgl libglu" -PACKAGECONFIG[gles2] = ",,virtual/libgles2" - -# OpenGL platform packageconfigs -PACKAGECONFIG[egl] = ",,virtual/egl" - -# OpenGL window systems (except for X11) -PACKAGECONFIG[gbm] = ",,virtual/libgbm libgudev libdrm" -PACKAGECONFIG[wayland] = ",,wayland-native wayland wayland-protocols libdrm" -PACKAGECONFIG[dispmanx] = ",,virtual/libomxil" -PACKAGECONFIG[viv-fb] = ",,virtual/libgles2 virtual/libg2d" - -OPENGL_WINSYS = "${@bb.utils.filter('PACKAGECONFIG', 'x11 gbm wayland dispmanx egl viv-fb', d)}" - -EXTRA_OEMESON += " \ - -Ddoc=disabled \ - ${@get_opengl_cmdline_list('gl_api', d.getVar('OPENGL_APIS'), d)} \ - ${@get_opengl_cmdline_list('gl_platform', d.getVar('OPENGL_PLATFORMS'), d)} \ - ${@get_opengl_cmdline_list('gl_winsys', d.getVar('OPENGL_WINSYS'), d)} \ -" - -FILES:${PN}-dev += "${libdir}/gstreamer-1.0/include/gst/gl/gstglconfig.h" -FILES:${MLPREFIX}libgsttag-1.0 += "${datadir}/gst-plugins-base/1.0/license-translations.dict" - -def get_opengl_cmdline_list(switch_name, options, d): - selected_options = [] - if bb.utils.contains('DISTRO_FEATURES', 'opengl', True, False, d): - for option in options.split(): - if bb.utils.contains('PACKAGECONFIG', option, True, False, d): - selected_options += [option] - if selected_options: - return '-D' + switch_name + '=' + ','.join(selected_options) - else: - return '' - -CVE_PRODUCT += "gst-plugins-base" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.0.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.0.bb new file mode 100644 index 0000000000..c9fbc599ae --- /dev/null +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.0.bb @@ -0,0 +1,94 @@ +require gstreamer1.0-plugins-common.inc + +DESCRIPTION = "'Base' GStreamer plugins and helper libraries" +HOMEPAGE = "https://gstreamer.freedesktop.org/" +BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues" +LICENSE = "LGPL-2.1-or-later" +LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770" + +SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-${PV}.tar.xz \ + file://0001-ENGR00312515-get-caps-from-src-pad-when-query-caps.patch \ + file://0003-viv-fb-Make-sure-config.h-is-included.patch \ + file://0002-ssaparse-enhance-SSA-text-lines-parsing.patch \ + " +SRC_URI[sha256sum] = "4cb66fccf730b1037e6533862c2128990912a6db4e5bbd14e0ef914450eb4c7c" + +S = "${WORKDIR}/gst-plugins-base-${PV}" + +DEPENDS += "iso-codes util-linux zlib" + +inherit gobject-introspection + +PACKAGES_DYNAMIC =+ "^libgst.*" + +# opengl packageconfig factored out to make it easy for distros +# and BSP layers to choose OpenGL APIs/platforms/window systems +PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}" + +PACKAGECONFIG ??= " \ + ${GSTREAMER_ORC} \ + ${PACKAGECONFIG_GL} \ + ${@bb.utils.filter('DISTRO_FEATURES', 'alsa x11', d)} \ + jpeg ogg pango png theora vorbis \ + ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland egl', '', d)} \ +" + +OPENGL_APIS = 'opengl gles2' +OPENGL_PLATFORMS = 'egl' + +X11DEPENDS = "virtual/libx11 libsm libxrender libxv" +X11ENABLEOPTS = "-Dx11=enabled -Dxvideo=enabled -Dxshm=enabled" +X11DISABLEOPTS = "-Dx11=disabled -Dxvideo=disabled -Dxshm=disabled" + +PACKAGECONFIG[alsa] = "-Dalsa=enabled,-Dalsa=disabled,alsa-lib" +PACKAGECONFIG[cdparanoia] = "-Dcdparanoia=enabled,-Dcdparanoia=disabled,cdparanoia" +PACKAGECONFIG[graphene] = "-Dgl-graphene=enabled,-Dgl-graphene=disabled,graphene" +PACKAGECONFIG[jpeg] = "-Dgl-jpeg=enabled,-Dgl-jpeg=disabled,jpeg" +PACKAGECONFIG[ogg] = "-Dogg=enabled,-Dogg=disabled,libogg" +PACKAGECONFIG[opus] = "-Dopus=enabled,-Dopus=disabled,libopus" +PACKAGECONFIG[pango] = "-Dpango=enabled,-Dpango=disabled,pango" +PACKAGECONFIG[png] = "-Dgl-png=enabled,-Dgl-png=disabled,libpng" +PACKAGECONFIG[qt5] = "-Dqt5=enabled,-Dqt5=disabled,qtbase qtdeclarative qtbase-native" +PACKAGECONFIG[theora] = "-Dtheora=enabled,-Dtheora=disabled,libtheora" +PACKAGECONFIG[tremor] = "-Dtremor=enabled,-Dtremor=disabled,tremor" +PACKAGECONFIG[visual] = "-Dlibvisual=enabled,-Dlibvisual=disabled,libvisual" +PACKAGECONFIG[vorbis] = "-Dvorbis=enabled,-Dvorbis=disabled,libvorbis" +PACKAGECONFIG[x11] = "${X11ENABLEOPTS},${X11DISABLEOPTS},${X11DEPENDS}" + +# OpenGL API packageconfigs +PACKAGECONFIG[opengl] = ",,virtual/libgl libglu" +PACKAGECONFIG[gles2] = ",,virtual/libgles2" + +# OpenGL platform packageconfigs +PACKAGECONFIG[egl] = ",,virtual/egl" + +# OpenGL window systems (except for X11) +PACKAGECONFIG[gbm] = ",,virtual/libgbm libgudev libdrm" +PACKAGECONFIG[wayland] = ",,wayland-native wayland wayland-protocols libdrm" +PACKAGECONFIG[dispmanx] = ",,virtual/libomxil" +PACKAGECONFIG[viv-fb] = ",,virtual/libgles2 virtual/libg2d" + +OPENGL_WINSYS = "${@bb.utils.filter('PACKAGECONFIG', 'x11 gbm wayland dispmanx egl viv-fb', d)}" + +EXTRA_OEMESON += " \ + -Ddoc=disabled \ + ${@get_opengl_cmdline_list('gl_api', d.getVar('OPENGL_APIS'), d)} \ + ${@get_opengl_cmdline_list('gl_platform', d.getVar('OPENGL_PLATFORMS'), d)} \ + ${@get_opengl_cmdline_list('gl_winsys', d.getVar('OPENGL_WINSYS'), d)} \ +" + +FILES:${PN}-dev += "${libdir}/gstreamer-1.0/include/gst/gl/gstglconfig.h" +FILES:${MLPREFIX}libgsttag-1.0 += "${datadir}/gst-plugins-base/1.0/license-translations.dict" + +def get_opengl_cmdline_list(switch_name, options, d): + selected_options = [] + if bb.utils.contains('DISTRO_FEATURES', 'opengl', True, False, d): + for option in options.split(): + if bb.utils.contains('PACKAGECONFIG', option, True, False, d): + selected_options += [option] + if selected_options: + return '-D' + switch_name + '=' + ','.join(selected_options) + else: + return '' + +CVE_PRODUCT += "gst-plugins-base" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.5.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.5.bb deleted file mode 100644 index ade935df9e..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.5.bb +++ /dev/null @@ -1,76 +0,0 @@ -require gstreamer1.0-plugins-common.inc - -DESCRIPTION = "'Good' GStreamer plugins" -HOMEPAGE = "https://gstreamer.freedesktop.org/" -BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues" - -SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-${PV}.tar.xz \ - file://0001-qt-include-ext-qt-gstqtgl.h-instead-of-gst-gl-gstglf.patch \ - " - -SRC_URI[sha256sum] = "3aaeeea7765fbf8801acce4a503a9b05f73f04e8a35352e9d00232cfd555796b" - -S = "${WORKDIR}/gst-plugins-good-${PV}" - -LICENSE = "GPLv2+ & LGPLv2.1+" -LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \ - file://gst/replaygain/rganalysis.c;beginline=1;endline=23;md5=b60ebefd5b2f5a8e0cab6bfee391a5fe" - -DEPENDS += "gstreamer1.0-plugins-base libcap zlib" -RPROVIDES:${PN}-pulseaudio += "${PN}-pulse" -RPROVIDES:${PN}-soup += "${PN}-souphttpsrc" - -PACKAGECONFIG ??= " \ - ${GSTREAMER_ORC} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'pulseaudio x11', d)} \ - ${@bb.utils.contains('TUNE_FEATURES', 'm64', 'asm', '', d)} \ - bz2 cairo flac gdk-pixbuf gudev jpeg lame libpng mpg123 soup speex taglib v4l2 \ -" - -X11DEPENDS = "virtual/libx11 libsm libxrender libxfixes libxdamage" -X11ENABLEOPTS = "-Dximagesrc=enabled -Dximagesrc-xshm=enabled -Dximagesrc-xfixes=enabled -Dximagesrc-xdamage=enabled" -X11DISABLEOPTS = "-Dximagesrc=disabled -Dximagesrc-xshm=disabled -Dximagesrc-xfixes=disabled -Dximagesrc-xdamage=disabled" - -QT5WAYLANDDEPENDS = "${@bb.utils.contains("DISTRO_FEATURES", "wayland", "qtwayland", "", d)}" - -PACKAGECONFIG[asm] = "-Dasm=enabled,-Dasm=disabled,nasm-native" -PACKAGECONFIG[bz2] = "-Dbz2=enabled,-Dbz2=disabled,bzip2" -PACKAGECONFIG[cairo] = "-Dcairo=enabled,-Dcairo=disabled,cairo" -PACKAGECONFIG[dv1394] = "-Ddv1394=enabled,-Ddv1394=disabled,libiec61883 libavc1394 libraw1394" -PACKAGECONFIG[flac] = "-Dflac=enabled,-Dflac=disabled,flac" -PACKAGECONFIG[gdk-pixbuf] = "-Dgdk-pixbuf=enabled,-Dgdk-pixbuf=disabled,gdk-pixbuf" -PACKAGECONFIG[gtk] = "-Dgtk3=enabled,-Dgtk3=disabled,gtk+3" -PACKAGECONFIG[gudev] = "-Dv4l2-gudev=enabled,-Dv4l2-gudev=disabled,libgudev" -PACKAGECONFIG[jack] = "-Djack=enabled,-Djack=disabled,jack" -PACKAGECONFIG[jpeg] = "-Djpeg=enabled,-Djpeg=disabled,jpeg" -PACKAGECONFIG[lame] = "-Dlame=enabled,-Dlame=disabled,lame" -PACKAGECONFIG[libpng] = "-Dpng=enabled,-Dpng=disabled,libpng" -PACKAGECONFIG[libv4l2] = "-Dv4l2-libv4l2=enabled,-Dv4l2-libv4l2=disabled,v4l-utils" -PACKAGECONFIG[mpg123] = "-Dmpg123=enabled,-Dmpg123=disabled,mpg123" -PACKAGECONFIG[pulseaudio] = "-Dpulse=enabled,-Dpulse=disabled,pulseaudio" -PACKAGECONFIG[qt5] = "-Dqt5=enabled,-Dqt5=disabled,qtbase qtdeclarative qtbase-native ${QT5WAYLANDDEPENDS}" -PACKAGECONFIG[soup] = "-Dsoup=enabled,-Dsoup=disabled,libsoup-2.4" -PACKAGECONFIG[speex] = "-Dspeex=enabled,-Dspeex=disabled,speex" -PACKAGECONFIG[rpi] = "-Drpicamsrc=enabled,-Drpicamsrc=disabled,userland" -PACKAGECONFIG[taglib] = "-Dtaglib=enabled,-Dtaglib=disabled,taglib" -PACKAGECONFIG[v4l2] = "-Dv4l2=enabled -Dv4l2-probe=true,-Dv4l2=disabled -Dv4l2-probe=false" -PACKAGECONFIG[vpx] = "-Dvpx=enabled,-Dvpx=disabled,libvpx" -PACKAGECONFIG[wavpack] = "-Dwavpack=enabled,-Dwavpack=disabled,wavpack" -PACKAGECONFIG[x11] = "${X11ENABLEOPTS},${X11DISABLEOPTS},${X11DEPENDS}" - -EXTRA_OEMESON += " \ - -Ddoc=disabled \ - -Daalib=disabled \ - -Ddirectsound=disabled \ - -Ddv=disabled \ - -Dlibcaca=disabled \ - -Doss=enabled \ - -Doss4=disabled \ - -Dosxaudio=disabled \ - -Dosxvideo=disabled \ - -Dshout2=disabled \ - -Dtwolame=disabled \ - -Dwaveform=disabled \ -" - -FILES:${PN}-equalizer += "${datadir}/gstreamer-1.0/presets/*.prs" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.0.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.0.bb new file mode 100644 index 0000000000..17086bc3b8 --- /dev/null +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.0.bb @@ -0,0 +1,76 @@ +require gstreamer1.0-plugins-common.inc + +DESCRIPTION = "'Good' GStreamer plugins" +HOMEPAGE = "https://gstreamer.freedesktop.org/" +BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues" + +SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-${PV}.tar.xz \ + file://0001-qt-include-ext-qt-gstqtgl.h-instead-of-gst-gl-gstglf.patch \ + " + +SRC_URI[sha256sum] = "2d119c15ab8c9e79f8cd3c6bf582ff7a050b28ccae52ab4865e1a1464991659c" + +S = "${WORKDIR}/gst-plugins-good-${PV}" + +LICENSE = "LGPL-2.1-or-later" +LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \ + file://gst/replaygain/rganalysis.c;beginline=1;endline=23;md5=b60ebefd5b2f5a8e0cab6bfee391a5fe" + +DEPENDS += "gstreamer1.0-plugins-base libcap zlib" +RPROVIDES:${PN}-pulseaudio += "${PN}-pulse" +RPROVIDES:${PN}-soup += "${PN}-souphttpsrc" + +PACKAGECONFIG ??= " \ + ${GSTREAMER_ORC} \ + ${@bb.utils.filter('DISTRO_FEATURES', 'pulseaudio x11', d)} \ + ${@bb.utils.contains('TUNE_FEATURES', 'm64', 'asm', '', d)} \ + bz2 cairo flac gdk-pixbuf gudev jpeg lame libpng mpg123 soup speex taglib v4l2 \ +" + +X11DEPENDS = "virtual/libx11 libsm libxrender libxfixes libxdamage" +X11ENABLEOPTS = "-Dximagesrc=enabled -Dximagesrc-xshm=enabled -Dximagesrc-xfixes=enabled -Dximagesrc-xdamage=enabled" +X11DISABLEOPTS = "-Dximagesrc=disabled -Dximagesrc-xshm=disabled -Dximagesrc-xfixes=disabled -Dximagesrc-xdamage=disabled" + +QT5WAYLANDDEPENDS = "${@bb.utils.contains("DISTRO_FEATURES", "wayland", "qtwayland", "", d)}" + +PACKAGECONFIG[asm] = "-Dasm=enabled,-Dasm=disabled,nasm-native" +PACKAGECONFIG[bz2] = "-Dbz2=enabled,-Dbz2=disabled,bzip2" +PACKAGECONFIG[cairo] = "-Dcairo=enabled,-Dcairo=disabled,cairo" +PACKAGECONFIG[dv1394] = "-Ddv1394=enabled,-Ddv1394=disabled,libiec61883 libavc1394 libraw1394" +PACKAGECONFIG[flac] = "-Dflac=enabled,-Dflac=disabled,flac" +PACKAGECONFIG[gdk-pixbuf] = "-Dgdk-pixbuf=enabled,-Dgdk-pixbuf=disabled,gdk-pixbuf" +PACKAGECONFIG[gtk] = "-Dgtk3=enabled,-Dgtk3=disabled,gtk+3" +PACKAGECONFIG[gudev] = "-Dv4l2-gudev=enabled,-Dv4l2-gudev=disabled,libgudev" +PACKAGECONFIG[jack] = "-Djack=enabled,-Djack=disabled,jack" +PACKAGECONFIG[jpeg] = "-Djpeg=enabled,-Djpeg=disabled,jpeg" +PACKAGECONFIG[lame] = "-Dlame=enabled,-Dlame=disabled,lame" +PACKAGECONFIG[libpng] = "-Dpng=enabled,-Dpng=disabled,libpng" +PACKAGECONFIG[libv4l2] = "-Dv4l2-libv4l2=enabled,-Dv4l2-libv4l2=disabled,v4l-utils" +PACKAGECONFIG[mpg123] = "-Dmpg123=enabled,-Dmpg123=disabled,mpg123" +PACKAGECONFIG[pulseaudio] = "-Dpulse=enabled,-Dpulse=disabled,pulseaudio" +PACKAGECONFIG[qt5] = "-Dqt5=enabled,-Dqt5=disabled,qtbase qtdeclarative qtbase-native ${QT5WAYLANDDEPENDS}" +PACKAGECONFIG[soup] = "-Dsoup=enabled,-Dsoup=disabled,libsoup-2.4" +PACKAGECONFIG[speex] = "-Dspeex=enabled,-Dspeex=disabled,speex" +PACKAGECONFIG[rpi] = "-Drpicamsrc=enabled,-Drpicamsrc=disabled,userland" +PACKAGECONFIG[taglib] = "-Dtaglib=enabled,-Dtaglib=disabled,taglib" +PACKAGECONFIG[v4l2] = "-Dv4l2=enabled -Dv4l2-probe=true,-Dv4l2=disabled -Dv4l2-probe=false" +PACKAGECONFIG[vpx] = "-Dvpx=enabled,-Dvpx=disabled,libvpx" +PACKAGECONFIG[wavpack] = "-Dwavpack=enabled,-Dwavpack=disabled,wavpack" +PACKAGECONFIG[x11] = "${X11ENABLEOPTS},${X11DISABLEOPTS},${X11DEPENDS}" + +EXTRA_OEMESON += " \ + -Ddoc=disabled \ + -Daalib=disabled \ + -Ddirectsound=disabled \ + -Ddv=disabled \ + -Dlibcaca=disabled \ + -Doss=enabled \ + -Doss4=disabled \ + -Dosxaudio=disabled \ + -Dosxvideo=disabled \ + -Dshout2=disabled \ + -Dtwolame=disabled \ + -Dwaveform=disabled \ +" + +FILES:${PN}-equalizer += "${datadir}/gstreamer-1.0/presets/*.prs" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.5.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.5.bb deleted file mode 100644 index 9777aaee19..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.5.bb +++ /dev/null @@ -1,43 +0,0 @@ -require gstreamer1.0-plugins-common.inc - -DESCRIPTION = "'Ugly GStreamer plugins" -HOMEPAGE = "https://gstreamer.freedesktop.org/" -BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-ugly/-/issues" - -LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \ - file://tests/check/elements/xingmux.c;beginline=1;endline=21;md5=4c771b8af188724855cb99cadd390068" - -LICENSE = "GPLv2+ & LGPLv2.1+ & LGPLv2+" -LICENSE_FLAGS = "commercial" - -SRC_URI = " \ - https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-${PV}.tar.xz \ - " -SRC_URI[sha256sum] = "df32803e98f8a9979373fa2ca7e05e62f977b1097576d3a80619d9f5c69f66d9" - -S = "${WORKDIR}/gst-plugins-ugly-${PV}" - -DEPENDS += "gstreamer1.0-plugins-base" - -GST_PLUGIN_SET_HAS_EXAMPLES = "0" - -PACKAGECONFIG ??= " \ - ${GSTREAMER_ORC} \ - a52dec mpeg2dec \ -" - -PACKAGECONFIG[a52dec] = "-Da52dec=enabled,-Da52dec=disabled,liba52" -PACKAGECONFIG[amrnb] = "-Damrnb=enabled,-Damrnb=disabled,opencore-amr" -PACKAGECONFIG[amrwb] = "-Damrwbdec=enabled,-Damrwbdec=disabled,opencore-amr" -PACKAGECONFIG[cdio] = "-Dcdio=enabled,-Dcdio=disabled,libcdio" -PACKAGECONFIG[dvdread] = "-Ddvdread=enabled,-Ddvdread=disabled,libdvdread" -PACKAGECONFIG[mpeg2dec] = "-Dmpeg2dec=enabled,-Dmpeg2dec=disabled,mpeg2dec" -PACKAGECONFIG[x264] = "-Dx264=enabled,-Dx264=disabled,x264" - -EXTRA_OEMESON += " \ - -Ddoc=disabled \ - -Dsidplay=disabled \ -" - -FILES:${PN}-amrnb += "${datadir}/gstreamer-1.0/presets/GstAmrnbEnc.prs" -FILES:${PN}-x264 += "${datadir}/gstreamer-1.0/presets/GstX264Enc.prs" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.20.0.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.20.0.bb new file mode 100644 index 0000000000..9b6f80aa89 --- /dev/null +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.20.0.bb @@ -0,0 +1,46 @@ +require gstreamer1.0-plugins-common.inc + +DESCRIPTION = "'Ugly GStreamer plugins" +HOMEPAGE = "https://gstreamer.freedesktop.org/" +BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-ugly/-/issues" + +LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \ + file://tests/check/elements/xingmux.c;beginline=1;endline=21;md5=4c771b8af188724855cb99cadd390068" + +LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later" +LICENSE_FLAGS = "commercial" + +SRC_URI = " \ + https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-${PV}.tar.xz \ + " +SRC_URI[sha256sum] = "4e8dcb5d26552f0a4937f6bc6279bd9070f55ca6ae0eaa32d72d264c44001c2e" + +S = "${WORKDIR}/gst-plugins-ugly-${PV}" + +DEPENDS += "gstreamer1.0-plugins-base" + +GST_PLUGIN_SET_HAS_EXAMPLES = "0" + +PACKAGECONFIG ??= " \ + ${GSTREAMER_ORC} \ + gpl a52dec mpeg2dec \ +" + +PACKAGECONFIG[amrnb] = "-Damrnb=enabled,-Damrnb=disabled,opencore-amr" +PACKAGECONFIG[amrwb] = "-Damrwbdec=enabled,-Damrwbdec=disabled,opencore-amr" + +# GPL - only built if gpl option is also enabled! +PACKAGECONFIG[gpl] = "-Dgpl=enabled,-Dgpl=disabled" +PACKAGECONFIG[cdio] = "-Dcdio=enabled,-Dcdio=disabled,libcdio" +PACKAGECONFIG[a52dec] = "-Da52dec=enabled,-Da52dec=disabled,liba52" +PACKAGECONFIG[dvdread] = "-Ddvdread=enabled,-Ddvdread=disabled,libdvdread" +PACKAGECONFIG[mpeg2dec] = "-Dmpeg2dec=enabled,-Dmpeg2dec=disabled,mpeg2dec" +PACKAGECONFIG[x264] = "-Dx264=enabled,-Dx264=disabled,x264" + +EXTRA_OEMESON += " \ + -Ddoc=disabled \ + -Dsidplay=disabled \ +" + +FILES:${PN}-amrnb += "${datadir}/gstreamer-1.0/presets/GstAmrnbEnc.prs" +FILES:${PN}-x264 += "${datadir}/gstreamer-1.0/presets/GstX264Enc.prs" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.5.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.5.bb deleted file mode 100644 index 1dd7d0d09a..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.5.bb +++ /dev/null @@ -1,26 +0,0 @@ -SUMMARY = "Python bindings for GStreamer 1.0" -DESCRIPTION = "GStreamer Python binding overrides (complementing the bindings \ -provided by python-gi) " -HOMEPAGE = "http://cgit.freedesktop.org/gstreamer/gst-python/" -SECTION = "multimedia" - -LICENSE = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=c34deae4e395ca07e725ab0076a5f740" - -SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz" -SRC_URI[sha256sum] = "533685871305959d6db89507f3b3aa6c765c2f2b0dacdc32c5a6543e72e5bc52" - -DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject" -RDEPENDS:${PN} += "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject" - -PNREAL = "gst-python" - -S = "${WORKDIR}/${PNREAL}-${PV}" - -EXTRA_OEMESON += "-Dlibpython-dir=${libdir}" - -# gobject-introspection is mandatory and cannot be configured -REQUIRED_DISTRO_FEATURES = "gobject-introspection-data" -GIR_MESON_OPTION = "" - -inherit meson pkgconfig setuptools3-base upstream-version-is-even gobject-introspection features_check diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.20.0.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.20.0.bb new file mode 100644 index 0000000000..29d7c55acb --- /dev/null +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.20.0.bb @@ -0,0 +1,30 @@ +SUMMARY = "Python bindings for GStreamer 1.0" +DESCRIPTION = "GStreamer Python binding overrides (complementing the bindings \ +provided by python-gi) " +HOMEPAGE = "http://cgit.freedesktop.org/gstreamer/gst-python/" +SECTION = "multimedia" + +LICENSE = "LGPL-2.1-or-later" +LIC_FILES_CHKSUM = "file://COPYING;md5=c34deae4e395ca07e725ab0076a5f740" + +SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz" +SRC_URI[sha256sum] = "8f67bdc5606ba33606c6bc896e89de7dcd8cf4fca459f71389b1b6fe075b5e54" + +DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject" +RDEPENDS:${PN} += "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject" + +PNREAL = "gst-python" + +S = "${WORKDIR}/${PNREAL}-${PV}" + +EXTRA_OEMESON += "\ + -Dtests=disabled \ + -Dplugin=enabled \ + -Dlibpython-dir=${libdir} \ +" + +# gobject-introspection is mandatory and cannot be configured +REQUIRED_DISTRO_FEATURES = "gobject-introspection-data" +GIR_MESON_OPTION = "" + +inherit meson pkgconfig setuptools3-base upstream-version-is-even gobject-introspection features_check diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.5.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.5.bb deleted file mode 100644 index 50426ad46d..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.5.bb +++ /dev/null @@ -1,31 +0,0 @@ -SUMMARY = "A library on top of GStreamer for building an RTSP server" -HOMEPAGE = "http://cgit.freedesktop.org/gstreamer/gst-rtsp-server/" -SECTION = "multimedia" -LICENSE = "LGPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d" - -DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base" - -PNREAL = "gst-rtsp-server" - -SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz" - -SRC_URI[sha256sum] = "04d63bf48816c6f41c73f6de0f912a7cef0aab39c44162a7bcece1923dfc9d1f" - -S = "${WORKDIR}/${PNREAL}-${PV}" - -inherit meson pkgconfig upstream-version-is-even gobject-introspection - -EXTRA_OEMESON += " \ - -Ddoc=disabled \ - -Dexamples=disabled \ - -Dtests=disabled \ -" - -GIR_MESON_ENABLE_FLAG = "enabled" -GIR_MESON_DISABLE_FLAG = "disabled" - -# Starting with 1.8.0 gst-rtsp-server includes dependency-less plugins as well -require gstreamer1.0-plugins-packaging.inc - -CVE_PRODUCT += "gst-rtsp-server" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.20.0.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.20.0.bb new file mode 100644 index 0000000000..be81f87616 --- /dev/null +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.20.0.bb @@ -0,0 +1,31 @@ +SUMMARY = "A library on top of GStreamer for building an RTSP server" +HOMEPAGE = "http://cgit.freedesktop.org/gstreamer/gst-rtsp-server/" +SECTION = "multimedia" +LICENSE = "LGPL-2.1-or-later" +LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770" + +DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base" + +PNREAL = "gst-rtsp-server" + +SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz" + +SRC_URI[sha256sum] = "c209f5ed906da713fdd44a8844e909aa6c8af3dfb630259b092cfb77a7755843" + +S = "${WORKDIR}/${PNREAL}-${PV}" + +inherit meson pkgconfig upstream-version-is-even gobject-introspection + +EXTRA_OEMESON += " \ + -Ddoc=disabled \ + -Dexamples=disabled \ + -Dtests=disabled \ +" + +GIR_MESON_ENABLE_FLAG = "enabled" +GIR_MESON_DISABLE_FLAG = "disabled" + +# Starting with 1.8.0 gst-rtsp-server includes dependency-less plugins as well +require gstreamer1.0-plugins-packaging.inc + +CVE_PRODUCT += "gst-rtsp-server" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.5.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.5.bb deleted file mode 100644 index 9a68a3fadf..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.5.bb +++ /dev/null @@ -1,53 +0,0 @@ -SUMMARY = "VA-API support to GStreamer" -HOMEPAGE = "https://gstreamer.freedesktop.org/" -DESCRIPTION = "gstreamer-vaapi consists of a collection of VA-API \ -based plugins for GStreamer and helper libraries: `vaapidecode', \ -`vaapiconvert', and `vaapisink'." - -REALPN = "gstreamer-vaapi" - -LICENSE = "LGPLv2.1+" -LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c" - -SRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-${PV}.tar.xz" - -SRC_URI[sha256sum] = "4a460fb95559f41444eb24864ad2d9e37922b6eea941510310319fc3e0ba727b" - -S = "${WORKDIR}/${REALPN}-${PV}" -DEPENDS = "libva gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad" - -inherit meson pkgconfig features_check upstream-version-is-even - -REQUIRED_DISTRO_FEATURES ?= "opengl" - -EXTRA_OEMESON += " \ - -Ddoc=disabled \ - -Dexamples=disabled \ - -Dtests=enabled \ -" - -PACKAGES =+ "${PN}-tests" - -# OpenGL packageconfig factored out to make it easy for distros -# and BSP layers to pick either glx, egl, or no GL. By default, -# try detecting X11 first, and if found (with OpenGL), use GLX, -# otherwise try to check if EGL can be used. -PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'glx', \ - bb.utils.contains('DISTRO_FEATURES', 'opengl', 'egl', \ - '', d), d)}" - -PACKAGECONFIG ??= "drm encoders \ - ${PACKAGECONFIG_GL} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" - -PACKAGECONFIG[drm] = "-Dwith_drm=yes,-Dwith_drm=no,udev libdrm" -PACKAGECONFIG[egl] = "-Dwith_egl=yes,-Dwith_egl=no,virtual/egl" -PACKAGECONFIG[encoders] = "-Dwith_encoders=yes,-Dwith_encoders=no" -PACKAGECONFIG[glx] = "-Dwith_glx=yes,-Dwith_glx=no,virtual/libgl" -PACKAGECONFIG[wayland] = "-Dwith_wayland=yes,-Dwith_wayland=no,wayland-native wayland wayland-protocols" -PACKAGECONFIG[x11] = "-Dwith_x11=yes,-Dwith_x11=no,virtual/libx11 libxrandr libxrender" - -FILES:${PN} += "${libdir}/gstreamer-*/*.so" -FILES:${PN}-dbg += "${libdir}/gstreamer-*/.debug" -FILES:${PN}-dev += "${libdir}/gstreamer-*/*.a" -FILES:${PN}-tests = "${bindir}/*" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.20.0.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.20.0.bb new file mode 100644 index 0000000000..7ef8ae3138 --- /dev/null +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.20.0.bb @@ -0,0 +1,53 @@ +SUMMARY = "VA-API support to GStreamer" +HOMEPAGE = "https://gstreamer.freedesktop.org/" +DESCRIPTION = "gstreamer-vaapi consists of a collection of VA-API \ +based plugins for GStreamer and helper libraries: `vaapidecode', \ +`vaapiconvert', and `vaapisink'." + +REALPN = "gstreamer-vaapi" + +LICENSE = "LGPL-2.1-or-later" +LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c" + +SRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-${PV}.tar.xz" + +SRC_URI[sha256sum] = "f79a47346dfd5e585e063e77078e5fc498b06dee895bfcbf47d8863fcac9ea32" + +S = "${WORKDIR}/${REALPN}-${PV}" +DEPENDS = "libva gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad" + +inherit meson pkgconfig features_check upstream-version-is-even + +REQUIRED_DISTRO_FEATURES ?= "opengl" + +EXTRA_OEMESON += " \ + -Ddoc=disabled \ + -Dexamples=disabled \ + -Dtests=enabled \ +" + +PACKAGES =+ "${PN}-tests" + +# OpenGL packageconfig factored out to make it easy for distros +# and BSP layers to pick either glx, egl, or no GL. By default, +# try detecting X11 first, and if found (with OpenGL), use GLX, +# otherwise try to check if EGL can be used. +PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'glx', \ + bb.utils.contains('DISTRO_FEATURES', 'opengl', 'egl', \ + '', d), d)}" + +PACKAGECONFIG ??= "drm encoders \ + ${PACKAGECONFIG_GL} \ + ${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" + +PACKAGECONFIG[drm] = "-Dwith_drm=yes,-Dwith_drm=no,udev libdrm" +PACKAGECONFIG[egl] = "-Dwith_egl=yes,-Dwith_egl=no,virtual/egl" +PACKAGECONFIG[encoders] = "-Dwith_encoders=yes,-Dwith_encoders=no" +PACKAGECONFIG[glx] = "-Dwith_glx=yes,-Dwith_glx=no,virtual/libgl" +PACKAGECONFIG[wayland] = "-Dwith_wayland=yes,-Dwith_wayland=no,wayland-native wayland wayland-protocols" +PACKAGECONFIG[x11] = "-Dwith_x11=yes,-Dwith_x11=no,virtual/libx11 libxrandr libxrender" + +FILES:${PN} += "${libdir}/gstreamer-*/*.so" +FILES:${PN}-dbg += "${libdir}/gstreamer-*/.debug" +FILES:${PN}-dev += "${libdir}/gstreamer-*/*.a" +FILES:${PN}-tests = "${bindir}/*" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch deleted file mode 100644 index 23ebd5c600..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch +++ /dev/null @@ -1,69 +0,0 @@ -From fd8f49dba8c09d47425da80f5faab3bfa4a7c962 Mon Sep 17 00:00:00 2001 -From: Jose Quaresma -Date: Sat, 10 Oct 2020 19:09:03 +0000 -Subject: [PATCH 1/3] gstpluginloader: when env var is set do not fall through - to system plugin scanner - -If we set a custom GST_PLUGIN_SCANNER env var, then we probably want to use that and only that. - -Falling through to the one installed on the system is problamatic in cross-compilation -environemnts, regardless of whether one pointed to by the env var succeeded or failed. - -taken from: -http://cgit.openembedded.org/openembedded-core/commit/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch?id=0db7ba34ca41b107042306d13a6f0162885c123b - -Part-of: - -Upstream-Status: Backport [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/9f958058697e6fbf5bde325228034572331d1a3a] - -Signed-off-by: Jose Quaresma ---- - gst/gstpluginloader.c | 15 +++++++-------- - 1 file changed, 7 insertions(+), 8 deletions(-) - -diff --git a/gst/gstpluginloader.c b/gst/gstpluginloader.c -index d1e404d98..c626bf263 100644 ---- a/gst/gstpluginloader.c -+++ b/gst/gstpluginloader.c -@@ -464,20 +464,19 @@ gst_plugin_loader_spawn (GstPluginLoader * loader) - if (loader->child_running) - return TRUE; - -- /* Find the gst-plugin-scanner: first try the env-var if it is set, -- * otherwise use the installed version */ -+ /* Find the gst-plugin-scanner */ - env = g_getenv ("GST_PLUGIN_SCANNER_1_0"); - if (env == NULL) - env = g_getenv ("GST_PLUGIN_SCANNER"); - - if (env != NULL && *env != '\0') { -+ /* use the env-var if it is set */ - GST_LOG ("Trying GST_PLUGIN_SCANNER env var: %s", env); - helper_bin = g_strdup (env); - res = gst_plugin_loader_try_helper (loader, helper_bin); - g_free (helper_bin); -- } -- -- if (!res) { -+ } else { -+ /* use the installed version */ - GST_LOG ("Trying installed plugin scanner"); - - #ifdef G_OS_WIN32 -@@ -497,10 +496,10 @@ gst_plugin_loader_spawn (GstPluginLoader * loader) - #endif - res = gst_plugin_loader_try_helper (loader, helper_bin); - g_free (helper_bin); -+ } - -- if (!res) { -- GST_INFO ("No gst-plugin-scanner available, or not working"); -- } -+ if (!res) { -+ GST_INFO ("No gst-plugin-scanner available, or not working"); - } - - return loader->child_running; --- -2.29.2 - diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-respect-the-idententaion-used-in-meson.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-respect-the-idententaion-used-in-meson.patch new file mode 100644 index 0000000000..312c04fbfd --- /dev/null +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-respect-the-idententaion-used-in-meson.patch @@ -0,0 +1,36 @@ +From 1eb77a4ea5a3967c688d8f1192f99c605badc7e2 Mon Sep 17 00:00:00 2001 +From: Jose Quaresma +Date: Sun, 11 Apr 2021 19:48:13 +0100 +Subject: [PATCH 1/4] tests: respect the idententaion used in meson + +Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789] + +Signed-off-by: Jose Quaresma +--- + subprojects/gstreamer/tests/check/meson.build | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/subprojects/gstreamer/tests/check/meson.build b/subprojects/gstreamer/tests/check/meson.build +index 9c4228b6e4..506606684d 100644 +--- a/subprojects/gstreamer/tests/check/meson.build ++++ b/subprojects/gstreamer/tests/check/meson.build +@@ -146,11 +146,11 @@ foreach t : core_tests + + if not skip_test + exe = executable(test_name, fname, +- c_args : gst_c_args + test_defines, +- cpp_args : gst_c_args + test_defines, +- include_directories : [configinc], +- link_with : link_with_libs, +- dependencies : test_deps + glib_deps + gst_deps, ++ c_args : gst_c_args + test_defines, ++ cpp_args : gst_c_args + test_defines, ++ include_directories : [configinc], ++ link_with : link_with_libs, ++ dependencies : test_deps + glib_deps + gst_deps, + ) + + env = environment() +-- +2.33.1 + diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-Remove-unused-valgrind-detection.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-Remove-unused-valgrind-detection.patch deleted file mode 100644 index 5121044734..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-Remove-unused-valgrind-detection.patch +++ /dev/null @@ -1,112 +0,0 @@ -From e275ba2bd854ac15a4b65a8f07d9f042021950da Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= -Date: Fri, 14 Aug 2020 16:38:26 +0100 -Subject: [PATCH 2/3] Remove unused valgrind detection - -Having this just to log a debug message in case we're -running inside valgrind doesn't seem very useful, and -the code that used to use this no longer exists it seems. - -Part-of: - -Upstream-Status: Backport [a2cbf75523cdf8a4df1baa7007d86ef455972245] - -Signed-off-by: Jose Quaresma ---- - gst/gst_private.h | 2 -- - gst/gstinfo.c | 39 --------------------------------------- - meson.build | 1 - - 3 files changed, 42 deletions(-) - -diff --git a/gst/gst_private.h b/gst/gst_private.h -index eefd044..8252ede 100644 ---- a/gst/gst_private.h -+++ b/gst/gst_private.h -@@ -116,8 +116,6 @@ G_GNUC_INTERNAL gboolean _priv_plugin_deps_env_vars_changed (GstPlugin * plugin - - G_GNUC_INTERNAL gboolean _priv_plugin_deps_files_changed (GstPlugin * plugin); - --G_GNUC_INTERNAL gboolean _priv_gst_in_valgrind (void); -- - /* init functions called from gst_init(). */ - G_GNUC_INTERNAL void _priv_gst_quarks_initialize (void); - G_GNUC_INTERNAL void _priv_gst_mini_object_initialize (void); -diff --git a/gst/gstinfo.c b/gst/gstinfo.c -index eea1a21..d3035d6 100644 ---- a/gst/gstinfo.c -+++ b/gst/gstinfo.c -@@ -305,36 +305,6 @@ static gboolean pretty_tags = PRETTY_TAGS_DEFAULT; - static gint G_GNUC_MAY_ALIAS __default_level = GST_LEVEL_DEFAULT; - static gint G_GNUC_MAY_ALIAS __use_color = GST_DEBUG_COLOR_MODE_ON; - --/* FIXME: export this? */ --gboolean --_priv_gst_in_valgrind (void) --{ -- static enum -- { -- GST_VG_UNCHECKED, -- GST_VG_NO_VALGRIND, -- GST_VG_INSIDE -- } -- in_valgrind = GST_VG_UNCHECKED; -- -- if (in_valgrind == GST_VG_UNCHECKED) { --#ifdef HAVE_VALGRIND_VALGRIND_H -- if (RUNNING_ON_VALGRIND) { -- GST_CAT_INFO (GST_CAT_GST_INIT, "we're running inside valgrind"); -- in_valgrind = GST_VG_INSIDE; -- } else { -- GST_CAT_LOG (GST_CAT_GST_INIT, "not doing extra valgrind stuff"); -- in_valgrind = GST_VG_NO_VALGRIND; -- } --#else -- in_valgrind = GST_VG_NO_VALGRIND; --#endif -- g_assert (in_valgrind == GST_VG_NO_VALGRIND || -- in_valgrind == GST_VG_INSIDE); -- } -- return (in_valgrind == GST_VG_INSIDE); --} -- - static gchar * - _replace_pattern_in_gst_debug_file_name (gchar * name, const char *token, - guint val) -@@ -463,9 +433,6 @@ _priv_gst_debug_init (void) - _priv_GST_CAT_PROTECTION = - _gst_debug_category_new ("GST_PROTECTION", 0, "protection"); - -- /* print out the valgrind message if we're in valgrind */ -- _priv_gst_in_valgrind (); -- - env = g_getenv ("GST_DEBUG_OPTIONS"); - if (env != NULL) { - if (strstr (env, "full_tags") || strstr (env, "full-tags")) -@@ -2505,12 +2472,6 @@ gst_debug_construct_win_color (guint colorinfo) - return 0; - } - --gboolean --_priv_gst_in_valgrind (void) --{ -- return FALSE; --} -- - void - _gst_debug_dump_mem (GstDebugCategory * cat, const gchar * file, - const gchar * func, gint line, GObject * obj, const gchar * msg, -diff --git a/meson.build b/meson.build -index 82a1728..42ae617 100644 ---- a/meson.build -+++ b/meson.build -@@ -200,7 +200,6 @@ check_headers = [ - 'sys/wait.h', - 'ucontext.h', - 'unistd.h', -- 'valgrind/valgrind.h', - 'sys/resource.h', - 'sys/uio.h', - ] --- -2.29.2 - diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-tests-add-support-for-install-the-tests.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-tests-add-support-for-install-the-tests.patch new file mode 100644 index 0000000000..d18c19c397 --- /dev/null +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-tests-add-support-for-install-the-tests.patch @@ -0,0 +1,109 @@ +From 62f5bb7bfc2498219df7280e73480d8ed2378ce5 Mon Sep 17 00:00:00 2001 +From: Jose Quaresma +Date: Sun, 11 Apr 2021 19:48:13 +0100 +Subject: [PATCH 2/4] tests: add support for install the tests + +This will provide to run the tests using the gnome-desktop-testing [1] + +[1] https://wiki.gnome.org/Initiatives/GnomeGoals/InstalledTests + +Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789] + +Signed-off-by: Jose Quaresma +--- + subprojects/gstreamer/meson.build | 4 ++++ + subprojects/gstreamer/meson_options.txt | 1 + + subprojects/gstreamer/tests/check/meson.build | 22 ++++++++++++++++++- + .../gstreamer/tests/check/template.test.in | 3 +++ + 4 files changed, 29 insertions(+), 1 deletion(-) + create mode 100644 subprojects/gstreamer/tests/check/template.test.in + +diff --git a/subprojects/gstreamer/meson.build b/subprojects/gstreamer/meson.build +index d20fe0040f..b595d8f990 100644 +--- a/subprojects/gstreamer/meson.build ++++ b/subprojects/gstreamer/meson.build +@@ -562,6 +562,10 @@ if bashcomp_dep.found() + endif + endif + ++installed_tests_enabled = get_option('installed_tests') ++installed_tests_metadir = join_paths(datadir, 'installed-tests', meson.project_name()) ++installed_tests_execdir = join_paths(libexecdir, 'installed-tests', meson.project_name()) ++ + plugins_install_dir = join_paths(get_option('libdir'), 'gstreamer-1.0') + + pkgconfig = import('pkgconfig') +diff --git a/subprojects/gstreamer/meson_options.txt b/subprojects/gstreamer/meson_options.txt +index 7363bdb7a1..a34ba37dad 100644 +--- a/subprojects/gstreamer/meson_options.txt ++++ b/subprojects/gstreamer/meson_options.txt +@@ -15,6 +15,7 @@ option('poisoning', type : 'boolean', value : false, description : 'Enable poiso + option('memory-alignment', type: 'combo', + choices : ['1', '2', '4', '8', '16', '32', '64', '128', '256', '512', '1024', '2048', '4096', '8192', 'malloc', 'pagesize'], + value: 'malloc') ++option('installed_tests', type : 'boolean', value : false, description : 'Enable installed tests') + + # Feature options + option('check', type : 'feature', value : 'auto', description : 'Build unit test libraries') +diff --git a/subprojects/gstreamer/tests/check/meson.build b/subprojects/gstreamer/tests/check/meson.build +index 506606684d..00a138a568 100644 +--- a/subprojects/gstreamer/tests/check/meson.build ++++ b/subprojects/gstreamer/tests/check/meson.build +@@ -124,10 +124,16 @@ test_defines = [ + '-UG_DISABLE_ASSERT', + '-UG_DISABLE_CAST_CHECKS', + '-DGST_CHECK_TEST_ENVIRONMENT_BEACON="GST_STATE_IGNORE_ELEMENTS"', +- '-DTESTFILE="' + meson.current_source_dir() + '/meson.build"', + '-DGST_DISABLE_DEPRECATED', + ] + ++testfile = meson.current_source_dir() + '/meson.build' ++if installed_tests_enabled ++ install_data(testfile, install_dir : installed_tests_metadir, rename : 'testfile') ++ testfile = installed_tests_metadir + '/testfile' ++endif ++test_defines += '-DTESTFILE="@0@"'.format(testfile) ++ + # sanity checking + if get_option('check').disabled() + if get_option('tests').enabled() +@@ -151,6 +157,8 @@ foreach t : core_tests + include_directories : [configinc], + link_with : link_with_libs, + dependencies : test_deps + glib_deps + gst_deps, ++ install_dir: installed_tests_execdir, ++ install: installed_tests_enabled, + ) + + env = environment() +@@ -162,6 +170,18 @@ foreach t : core_tests + env.set('GST_PLUGIN_SCANNER_1_0', gst_scanner_dir + '/gst-plugin-scanner') + env.set('GST_PLUGIN_LOADING_WHITELIST', 'gstreamer') + ++ if installed_tests_enabled ++ test_conf = configuration_data() ++ test_conf.set('installed_tests_dir', join_paths(prefix, installed_tests_execdir)) ++ test_conf.set('program', test_name) ++ configure_file( ++ input: 'template.test.in', ++ output: test_name + '.test', ++ install_dir: installed_tests_metadir, ++ configuration: test_conf ++ ) ++ endif ++ + test(test_name, exe, env: env, timeout : 3 * 60) + endif + endforeach +diff --git a/subprojects/gstreamer/tests/check/template.test.in b/subprojects/gstreamer/tests/check/template.test.in +new file mode 100644 +index 0000000000..f701627f87 +--- /dev/null ++++ b/subprojects/gstreamer/tests/check/template.test.in +@@ -0,0 +1,3 @@ ++[Test] ++Type=session ++Exec=@installed_tests_dir@/@program@ +-- +2.33.1 + diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch deleted file mode 100644 index e0e64e2c7a..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 1db36347d05d88835519368442e9aa89c64091ad Mon Sep 17 00:00:00 2001 -From: Seungha Yang -Date: Tue, 15 Sep 2020 00:54:58 +0900 -Subject: [PATCH] tests: seek: Don't use too strict timeout for validation - -Expected segment-done message might not be seen within expected -time if system is not powerful enough. - -Part-of: - -Upstream-Status: Backport [https://cgit.freedesktop.org/gstreamer/gstreamer/commit?id=f44312ae5d831438fcf8041162079c65321c588c] -Signed-off-by: Anuj Mittal ---- - tests/check/pipelines/seek.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/tests/check/pipelines/seek.c b/tests/check/pipelines/seek.c -index 28bb8846d..5f7447bc5 100644 ---- a/tests/check/pipelines/seek.c -+++ b/tests/check/pipelines/seek.c -@@ -521,7 +521,7 @@ GST_START_TEST (test_loopback_2) - - GST_INFO ("wait for segment done message"); - -- msg = gst_bus_timed_pop_filtered (bus, (GstClockTime) 2 * GST_SECOND, -+ msg = gst_bus_timed_pop_filtered (bus, GST_CLOCK_TIME_NONE, - GST_MESSAGE_SEGMENT_DONE | GST_MESSAGE_ERROR); - fail_unless (msg, "no message within the timed window"); - fail_unless_equals_string (GST_MESSAGE_TYPE_NAME (msg), "segment-done"); --- -2.29.2 - diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-use-a-dictionaries-for-environment.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-use-a-dictionaries-for-environment.patch new file mode 100644 index 0000000000..10a6dcc619 --- /dev/null +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-use-a-dictionaries-for-environment.patch @@ -0,0 +1,50 @@ +From fe830f0f75f3b4b41e3dbef8d4cf6ee4103c9e06 Mon Sep 17 00:00:00 2001 +From: Jose Quaresma +Date: Sat, 24 Apr 2021 10:34:47 +0100 +Subject: [PATCH 3/4] tests: use a dictionaries for environment + +meson environment() can't be passed to configure_file and it is needed for installed_tests, +use a dictionary as this is simplest solution to install the environment. + +Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789] + +Signed-off-by: Jose Quaresma +--- + subprojects/gstreamer/tests/check/meson.build | 21 ++++++++++++------- + 1 file changed, 13 insertions(+), 8 deletions(-) + +diff --git a/subprojects/gstreamer/tests/check/meson.build b/subprojects/gstreamer/tests/check/meson.build +index 00a138a568..48ec2532f8 100644 +--- a/subprojects/gstreamer/tests/check/meson.build ++++ b/subprojects/gstreamer/tests/check/meson.build +@@ -161,14 +161,19 @@ foreach t : core_tests + install: installed_tests_enabled, + ) + +- env = environment() +- env.set('GST_PLUGIN_PATH_1_0', meson.project_build_root()) +- env.set('GST_PLUGIN_SYSTEM_PATH_1_0', '') +- env.set('GST_STATE_IGNORE_ELEMENTS', '') +- env.set('CK_DEFAULT_TIMEOUT', '20') +- env.set('GST_REGISTRY', '@0@/@1@.registry'.format(meson.current_build_dir(), test_name)) +- env.set('GST_PLUGIN_SCANNER_1_0', gst_scanner_dir + '/gst-plugin-scanner') +- env.set('GST_PLUGIN_LOADING_WHITELIST', 'gstreamer') ++ # meson environment object can't be passed to configure_file and ++ # installed tests uses configure_file to install the environment. ++ # use a dictionary as this is the simplest solution ++ # to install the environment. ++ env = { ++ 'GST_PLUGIN_PATH_1_0': meson.project_build_root(), ++ 'GST_PLUGIN_SYSTEM_PATH_1_0': '', ++ 'GST_STATE_IGNORE_ELEMENTS': '', ++ 'CK_DEFAULT_TIMEOUT': '20', ++ 'GST_REGISTRY': '@0@/@1@.registry'.format(meson.current_build_dir(), test_name), ++ 'GST_PLUGIN_SCANNER_1_0': gst_scanner_dir + '/gst-plugin-scanner', ++ 'GST_PLUGIN_LOADING_WHITELIST': 'gstreamer', ++ } + + if installed_tests_enabled + test_conf = configuration_data() +-- +2.33.1 + diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-add-helper-script-to-run-the-installed_tests.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-add-helper-script-to-run-the-installed_tests.patch new file mode 100644 index 0000000000..efa004f8ce --- /dev/null +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-add-helper-script-to-run-the-installed_tests.patch @@ -0,0 +1,74 @@ +From 4dcbabebca2ad6f1fdd59ee35a858082e87db7b6 Mon Sep 17 00:00:00 2001 +From: Jose Quaresma +Date: Sun, 2 May 2021 01:58:01 +0100 +Subject: [PATCH 4/4] tests: add helper script to run the installed_tests + +- this is a bash script that will run the installed_tests +with some of the environment variables used in the meson +testing framework. + +Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789] + +Signed-off-by: Jose Quaresma +--- + subprojects/gstreamer/tests/check/meson.build | 17 +++++++++++++++++ + .../gstreamer/tests/check/template.sh.in | 9 +++++++++ + .../gstreamer/tests/check/template.test.in | 2 +- + 3 files changed, 27 insertions(+), 1 deletion(-) + create mode 100755 subprojects/gstreamer/tests/check/template.sh.in + +diff --git a/subprojects/gstreamer/tests/check/meson.build b/subprojects/gstreamer/tests/check/meson.build +index 48ec2532f8..7dc4990d4e 100644 +--- a/subprojects/gstreamer/tests/check/meson.build ++++ b/subprojects/gstreamer/tests/check/meson.build +@@ -185,6 +185,23 @@ foreach t : core_tests + install_dir: installed_tests_metadir, + configuration: test_conf + ) ++ ++ # All the tests will be deployed on the target machine and ++ # we use the home folder ~ for the registry which will then expand at runtime. ++ # Using the /tmp/gstreamer-1.0/@0@.registry can be problematic as it mostly ++ # is mounted using tmpfs and if the machine crash from some reason we can lost the registry ++ # that is useful for debug propose of the tests itself. ++ env += {'GST_REGISTRY': '~/.cache/gstreamer-1.0/@0@.registry'.format(test_name)} ++ ++ # Set the full path for the test it self. ++ env += {'TEST': '@0@/@1@'.format(join_paths(prefix, installed_tests_execdir), test_name)} ++ ++ configure_file( ++ input : 'template.sh.in', ++ output: test_name + '.sh', ++ install_dir: installed_tests_execdir, ++ configuration : env, ++ ) + endif + + test(test_name, exe, env: env, timeout : 3 * 60) +diff --git a/subprojects/gstreamer/tests/check/template.sh.in b/subprojects/gstreamer/tests/check/template.sh.in +new file mode 100755 +index 0000000000..cf7d31b0ea +--- /dev/null ++++ b/subprojects/gstreamer/tests/check/template.sh.in +@@ -0,0 +1,9 @@ ++#!/bin/sh ++ ++set -ax ++ ++CK_DEFAULT_TIMEOUT="@CK_DEFAULT_TIMEOUT@" ++GST_PLUGIN_LOADING_WHITELIST="@GST_PLUGIN_LOADING_WHITELIST@" ++GST_REGISTRY=@GST_REGISTRY@ ++GST_STATE_IGNORE_ELEMENTS="@GST_STATE_IGNORE_ELEMENTS@" ++exec @TEST@ +diff --git a/subprojects/gstreamer/tests/check/template.test.in b/subprojects/gstreamer/tests/check/template.test.in +index f701627f87..b74ef6ad73 100644 +--- a/subprojects/gstreamer/tests/check/template.test.in ++++ b/subprojects/gstreamer/tests/check/template.test.in +@@ -1,3 +1,3 @@ + [Test] + Type=session +-Exec=@installed_tests_dir@/@program@ ++Exec=@installed_tests_dir@/@program@.sh +-- +2.33.1 + diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-respect-the-idententaion-used-in-meson.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-respect-the-idententaion-used-in-meson.patch deleted file mode 100644 index 6f571a12d8..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-respect-the-idententaion-used-in-meson.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 122e5ac3dd16a461b6ae595605490c8f5d1c3a9d Mon Sep 17 00:00:00 2001 -From: Jose Quaresma -Date: Sun, 11 Apr 2021 19:48:13 +0100 -Subject: [PATCH 1/4] tests: respect the idententaion used in meson - -Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789] - -Signed-off-by: Jose Quaresma ---- - tests/check/meson.build | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/tests/check/meson.build b/tests/check/meson.build -index a617cf159..b2636714b 100644 ---- a/tests/check/meson.build -+++ b/tests/check/meson.build -@@ -146,11 +146,11 @@ foreach t : core_tests - - if not skip_test - exe = executable(test_name, fname, -- c_args : gst_c_args + test_defines, -- cpp_args : gst_c_args + test_defines, -- include_directories : [configinc], -- link_with : link_with_libs, -- dependencies : test_deps + glib_deps + gst_deps, -+ c_args : gst_c_args + test_defines, -+ cpp_args : gst_c_args + test_defines, -+ include_directories : [configinc], -+ link_with : link_with_libs, -+ dependencies : test_deps + glib_deps + gst_deps, - ) - - env = environment() --- -2.31.1 - diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-add-support-for-install-the-tests.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-add-support-for-install-the-tests.patch deleted file mode 100644 index b77fb5797f..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-add-support-for-install-the-tests.patch +++ /dev/null @@ -1,110 +0,0 @@ -From c9e93c7a3e4d2773abef4f5e1464af24f36700b3 Mon Sep 17 00:00:00 2001 -From: Jose Quaresma -Date: Sun, 11 Apr 2021 19:48:13 +0100 -Subject: [PATCH 2/4] tests: add support for install the tests - -This will provide to run the tests using the gnome-desktop-testing [1] - -[1] https://wiki.gnome.org/Initiatives/GnomeGoals/InstalledTests - -Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789] - -Signed-off-by: Jose Quaresma ---- - meson.build | 5 +++++ - meson_options.txt | 1 + - template.test.in | 3 +++ - tests/check/meson.build | 22 +++++++++++++++++++++- - 4 files changed, 30 insertions(+), 1 deletion(-) - create mode 100644 template.test.in - -diff --git a/meson.build b/meson.build -index c4e8774f5..1abf4eb26 100644 ---- a/meson.build -+++ b/meson.build -@@ -562,6 +562,11 @@ if bashcomp_dep.found() - endif - endif - -+installed_tests_metadir = join_paths(datadir, 'installed-tests', meson.project_name()) -+installed_tests_execdir = join_paths(libexecdir, 'installed-tests', meson.project_name()) -+installed_tests_enabled = get_option('installed-tests') -+installed_tests_template = files('template.test.in') -+ - plugins_install_dir = join_paths(get_option('libdir'), 'gstreamer-1.0') - - pkgconfig = import('pkgconfig') -diff --git a/meson_options.txt b/meson_options.txt -index c8cee3762..b5da40eaa 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -15,6 +15,7 @@ option('poisoning', type : 'boolean', value : false, description : 'Enable poiso - option('memory-alignment', type: 'combo', - choices : ['1', '2', '4', '8', '16', '32', '64', '128', '256', '512', '1024', '2048', '4096', '8192', 'malloc', 'pagesize'], - value: 'malloc') -+option('installed-tests', type : 'boolean', value : false, description : 'Enable installed tests') - - # Feature options - option('check', type : 'feature', value : 'auto', description : 'Build unit test libraries') -diff --git a/template.test.in b/template.test.in -new file mode 100644 -index 000000000..f701627f8 ---- /dev/null -+++ b/template.test.in -@@ -0,0 +1,3 @@ -+[Test] -+Type=session -+Exec=@installed_tests_dir@/@program@ -diff --git a/tests/check/meson.build b/tests/check/meson.build -index b2636714b..a697a7b06 100644 ---- a/tests/check/meson.build -+++ b/tests/check/meson.build -@@ -124,10 +124,16 @@ test_defines = [ - '-UG_DISABLE_ASSERT', - '-UG_DISABLE_CAST_CHECKS', - '-DGST_CHECK_TEST_ENVIRONMENT_BEACON="GST_STATE_IGNORE_ELEMENTS"', -- '-DTESTFILE="' + meson.current_source_dir() + '/meson.build"', - '-DGST_DISABLE_DEPRECATED', - ] - -+testfile = meson.current_source_dir() + '/meson.build' -+if installed_tests_enabled -+ install_data(testfile, install_dir : installed_tests_metadir, rename : 'testfile') -+ testfile = installed_tests_metadir + '/testfile' -+endif -+test_defines += '-DTESTFILE="@0@"'.format(testfile) -+ - # sanity checking - if get_option('check').disabled() - if get_option('tests').enabled() -@@ -151,6 +157,8 @@ foreach t : core_tests - include_directories : [configinc], - link_with : link_with_libs, - dependencies : test_deps + glib_deps + gst_deps, -+ install_dir: installed_tests_execdir, -+ install: installed_tests_enabled, - ) - - env = environment() -@@ -162,6 +170,18 @@ foreach t : core_tests - env.set('GST_PLUGIN_SCANNER_1_0', gst_scanner_dir + '/gst-plugin-scanner') - env.set('GST_PLUGIN_LOADING_WHITELIST', 'gstreamer') - -+ if installed_tests_enabled -+ test_conf = configuration_data() -+ test_conf.set('installed_tests_dir', join_paths(prefix, installed_tests_execdir)) -+ test_conf.set('program', test_name) -+ configure_file( -+ input: installed_tests_template, -+ output: test_name + '.test', -+ install_dir: installed_tests_metadir, -+ configuration: test_conf -+ ) -+ endif -+ - test(test_name, exe, env: env, timeout : 3 * 60) - endif - endforeach --- -2.31.1 - diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-remove-gstbin-test_watch_for_state_change-test.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-remove-gstbin-test_watch_for_state_change-test.patch new file mode 100644 index 0000000000..f51df6d20b --- /dev/null +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-remove-gstbin-test_watch_for_state_change-test.patch @@ -0,0 +1,107 @@ +From b935abba3d8fa3ea1ce384c08e650afd8c20b78a Mon Sep 17 00:00:00 2001 +From: Claudius Heine +Date: Wed, 2 Feb 2022 13:47:02 +0100 +Subject: [PATCH] tests: remove gstbin:test_watch_for_state_change testcase + +This testcase seems to be flaky, and upstream marked it as such: +https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/778 + +This patch removes the testcase to avoid it interfering with out ptest. + +Signed-off-by: Claudius Heine + +Upstream-Status: Inappropriate [needs proper upstream fix] +--- + tests/check/gst/gstbin.c | 69 ------------------- + 1 file changed, 69 deletions(-) + +diff --git a/tests/check/gst/gstbin.c b/tests/check/gst/gstbin.c +index e366d5fe20..ac29d81474 100644 +--- a/tests/check/gst/gstbin.c ++++ b/tests/check/gst/gstbin.c +@@ -691,74 +691,6 @@ GST_START_TEST (test_message_state_changed_children) + + GST_END_TEST; + +-GST_START_TEST (test_watch_for_state_change) +-{ +- GstElement *src, *sink, *bin; +- GstBus *bus; +- GstStateChangeReturn ret; +- +- bin = gst_element_factory_make ("bin", NULL); +- fail_unless (bin != NULL, "Could not create bin"); +- +- bus = g_object_new (gst_bus_get_type (), NULL); +- gst_object_ref_sink (bus); +- gst_element_set_bus (GST_ELEMENT_CAST (bin), bus); +- +- src = gst_element_factory_make ("fakesrc", NULL); +- fail_if (src == NULL, "Could not create fakesrc"); +- sink = gst_element_factory_make ("fakesink", NULL); +- fail_if (sink == NULL, "Could not create fakesink"); +- +- gst_bin_add (GST_BIN (bin), sink); +- gst_bin_add (GST_BIN (bin), src); +- +- fail_unless (gst_element_link (src, sink), "could not link src and sink"); +- +- /* change state, spawning two times three messages */ +- ret = gst_element_set_state (GST_ELEMENT (bin), GST_STATE_PAUSED); +- fail_unless (ret == GST_STATE_CHANGE_ASYNC); +- ret = +- gst_element_get_state (GST_ELEMENT (bin), NULL, NULL, +- GST_CLOCK_TIME_NONE); +- fail_unless (ret == GST_STATE_CHANGE_SUCCESS); +- +- pop_state_changed (bus, 6); +- pop_async_done (bus); +- pop_latency (bus); +- +- fail_unless (gst_bus_have_pending (bus) == FALSE, +- "Unexpected messages on bus"); +- +- ret = gst_element_set_state (GST_ELEMENT (bin), GST_STATE_PLAYING); +- fail_unless (ret == GST_STATE_CHANGE_SUCCESS); +- +- pop_state_changed (bus, 3); +- +- /* this one might return either SUCCESS or ASYNC, likely SUCCESS */ +- ret = gst_element_set_state (GST_ELEMENT (bin), GST_STATE_PAUSED); +- gst_element_get_state (GST_ELEMENT (bin), NULL, NULL, GST_CLOCK_TIME_NONE); +- +- pop_state_changed (bus, 3); +- if (ret == GST_STATE_CHANGE_ASYNC) { +- pop_async_done (bus); +- pop_latency (bus); +- } +- +- fail_unless (gst_bus_have_pending (bus) == FALSE, +- "Unexpected messages on bus"); +- +- gst_bus_set_flushing (bus, TRUE); +- +- ret = gst_element_set_state (GST_ELEMENT (bin), GST_STATE_NULL); +- fail_unless (ret == GST_STATE_CHANGE_SUCCESS); +- +- /* clean up */ +- gst_object_unref (bus); +- gst_object_unref (bin); +-} +- +-GST_END_TEST; +- + GST_START_TEST (test_state_change_error_message) + { + GstElement *src, *sink, *bin; +@@ -1956,7 +1888,6 @@ gst_bin_suite (void) + tcase_add_test (tc_chain, test_message_state_changed); + tcase_add_test (tc_chain, test_message_state_changed_child); + tcase_add_test (tc_chain, test_message_state_changed_children); +- tcase_add_test (tc_chain, test_watch_for_state_change); + tcase_add_test (tc_chain, test_state_change_error_message); + tcase_add_test (tc_chain, test_add_linked); + tcase_add_test (tc_chain, test_add_self); +-- +2.33.1 + diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0006-tests-use-a-dictionaries-for-environment.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0006-tests-use-a-dictionaries-for-environment.patch deleted file mode 100644 index 46813cec3d..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0006-tests-use-a-dictionaries-for-environment.patch +++ /dev/null @@ -1,48 +0,0 @@ -From e82dedec1803922656e92285fc1bb75b2cdc0aad Mon Sep 17 00:00:00 2001 -From: Jose Quaresma -Date: Sat, 24 Apr 2021 10:34:47 +0100 -Subject: [PATCH 3/4] tests: use a dictionaries for environment - -meson environment() can't be passed to configure_file and it is needed for installed_tests, -use a dictionary as this is simplest solution to install the environment. - -Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789] - -Signed-off-by: Jose Quaresma ---- - tests/check/meson.build | 19 +++++++++++-------- - 1 file changed, 11 insertions(+), 8 deletions(-) - -diff --git a/tests/check/meson.build b/tests/check/meson.build -index a697a7b06..f64524904 100644 ---- a/tests/check/meson.build -+++ b/tests/check/meson.build -@@ -161,14 +161,17 @@ foreach t : core_tests - install: installed_tests_enabled, - ) - -- env = environment() -- env.set('GST_PLUGIN_PATH_1_0', meson.build_root()) -- env.set('GST_PLUGIN_SYSTEM_PATH_1_0', '') -- env.set('GST_STATE_IGNORE_ELEMENTS', '') -- env.set('CK_DEFAULT_TIMEOUT', '20') -- env.set('GST_REGISTRY', '@0@/@1@.registry'.format(meson.current_build_dir(), test_name)) -- env.set('GST_PLUGIN_SCANNER_1_0', gst_scanner_dir + '/gst-plugin-scanner') -- env.set('GST_PLUGIN_LOADING_WHITELIST', 'gstreamer') -+ # environment() can't be passed to configure_file and it is needed for installed_tests -+ # use a dictionary as this is simplest solution to install the environment -+ env = { -+ 'GST_PLUGIN_PATH_1_0': meson.build_root(), -+ 'GST_PLUGIN_SYSTEM_PATH_1_0': '', -+ 'GST_STATE_IGNORE_ELEMENTS': '', -+ 'CK_DEFAULT_TIMEOUT': '20', -+ 'GST_REGISTRY': '@0@/@1@.registry'.format(meson.current_build_dir(), test_name), -+ 'GST_PLUGIN_SCANNER_1_0': gst_scanner_dir + '/gst-plugin-scanner', -+ 'GST_PLUGIN_LOADING_WHITELIST': 'gstreamer', -+ } - - if installed_tests_enabled - test_conf = configuration_data() --- -2.31.1 - diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0007-tests-install-the-environment-for-installed_tests.patch b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0007-tests-install-the-environment-for-installed_tests.patch deleted file mode 100644 index eabe7bcbe1..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0/0007-tests-install-the-environment-for-installed_tests.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 57d2965e979f886e03eecd7e351bf01812053971 Mon Sep 17 00:00:00 2001 -From: Jose Quaresma -Date: Sun, 2 May 2021 01:58:01 +0100 -Subject: [PATCH 4/4] tests: install the environment for installed_tests - -- adapt the test environment for installed_tests -- install the test environment for installed_tests -- run the tests using the installed environment - -Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789] - -Signed-off-by: Jose Quaresma ---- - template.test.in | 2 +- - tests/check/meson.build | 18 ++++++++++++++++++ - 2 files changed, 19 insertions(+), 1 deletion(-) - -diff --git a/template.test.in b/template.test.in -index f701627f8..9a3fbdd09 100644 ---- a/template.test.in -+++ b/template.test.in -@@ -1,3 +1,3 @@ - [Test] - Type=session --Exec=@installed_tests_dir@/@program@ -+Exec=sh -c 'set -aex && source @installed_tests_dir@/@program@.env && exec @installed_tests_dir@/@program@' -diff --git a/tests/check/meson.build b/tests/check/meson.build -index f64524904..a67e0f8dd 100644 ---- a/tests/check/meson.build -+++ b/tests/check/meson.build -@@ -183,6 +183,24 @@ foreach t : core_tests - install_dir: installed_tests_metadir, - configuration: test_conf - ) -+ -+ env += {'GST_REGISTRY': '~/.cache/gstreamer-1.0/@0@.registry'.format(test_name)} -+ configure_file( -+ output: test_name + '.env', -+ install_dir: installed_tests_execdir, -+ configuration : env, -+ ) -+ # helper to convert a meson environment dictionay object exported with configure_file -+ # this also remove not needed variables for the installed tests -+ meson.add_postconf_script('sed', '-i', -+ '-e', '/^#define/!d', -+ '-e', 's/^#define //g', -+ '-e', '/^GST_PLUGIN_PATH_1_0/d', -+ '-e', '/^GST_PLUGIN_SYSTEM_PATH_1_0/d', -+ '-e', '/^GST_PLUGIN_SCANNER_1_0/d', -+ '-e', 's/ /=/', -+ join_paths(meson.current_build_dir(), test_name + '.env') -+ ) - endif - - test(test_name, exe, env: env, timeout : 3 * 60) --- -2.31.1 - diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.5.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.5.bb deleted file mode 100644 index 0d82dd338c..0000000000 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.5.bb +++ /dev/null @@ -1,75 +0,0 @@ -SUMMARY = "GStreamer 1.0 multimedia framework" -DESCRIPTION = "GStreamer is a multimedia framework for encoding and decoding video and sound. \ -It supports a wide range of formats including mp3, ogg, avi, mpeg and quicktime." -HOMEPAGE = "http://gstreamer.freedesktop.org/" -BUGTRACKER = "https://bugzilla.gnome.org/enter_bug.cgi?product=Gstreamer" -SECTION = "multimedia" -LICENSE = "LGPLv2+" - -DEPENDS = "glib-2.0 glib-2.0-native libxml2 bison-native flex-native" - -inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection ptest-gnome - -LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d \ - file://gst/gst.h;beginline=1;endline=21;md5=e059138481205ee2c6fc1c079c016d0d" - -S = "${WORKDIR}/gstreamer-${PV}" - -SRC_URI = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.xz \ - file://run-ptest \ - file://0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch \ - file://0002-Remove-unused-valgrind-detection.patch \ - file://0003-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch \ - file://0004-tests-respect-the-idententaion-used-in-meson.patch \ - file://0005-tests-add-support-for-install-the-tests.patch \ - file://0006-tests-use-a-dictionaries-for-environment.patch \ - file://0007-tests-install-the-environment-for-installed_tests.patch \ - " -SRC_URI[sha256sum] = "55862232a63459bbf56abebde3085ca9aec211b478e891dacea4d6df8cafe80a" - -PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \ - check \ - debug \ - tools" - -PACKAGECONFIG[debug] = "-Dgst_debug=true,-Dgst_debug=false" -PACKAGECONFIG[tracer-hooks] = "-Dtracer_hooks=true,-Dtracer_hooks=false" -PACKAGECONFIG[coretracers] = "-Dcoretracers=enabled,-Dcoretracers=disabled" -PACKAGECONFIG[check] = "-Dcheck=enabled,-Dcheck=disabled" -PACKAGECONFIG[tests] = "-Dtests=enabled -Dinstalled-tests=true,-Dtests=disabled -Dinstalled-tests=false" -PACKAGECONFIG[unwind] = "-Dlibunwind=enabled,-Dlibunwind=disabled,libunwind" -PACKAGECONFIG[dw] = "-Dlibdw=enabled,-Dlibdw=disabled,elfutils" -PACKAGECONFIG[bash-completion] = "-Dbash-completion=enabled,-Dbash-completion=disabled,bash-completion" -PACKAGECONFIG[tools] = "-Dtools=enabled,-Dtools=disabled" -PACKAGECONFIG[setcap] = "-Dptp-helper-permissions=capabilities,,libcap libcap-native" - -# TODO: put this in a gettext.bbclass patch -def gettext_oemeson(d): - if d.getVar('USE_NLS') == 'no': - return '-Dnls=disabled' - # Remove the NLS bits if USE_NLS is no or INHIBIT_DEFAULT_DEPS is set - if d.getVar('INHIBIT_DEFAULT_DEPS') and not oe.utils.inherits(d, 'cross-canadian'): - return '-Dnls=disabled' - return '-Dnls=enabled' - -EXTRA_OEMESON += " \ - -Ddoc=disabled \ - -Dexamples=disabled \ - -Ddbghelp=disabled \ - ${@gettext_oemeson(d)} \ -" - -GIR_MESON_ENABLE_FLAG = "enabled" -GIR_MESON_DISABLE_FLAG = "disabled" - -PACKAGES += "${PN}-bash-completion" - -# Add the core element plugins to the main package -FILES:${PN} += "${libdir}/gstreamer-1.0/*.so" -FILES:${PN}-dev += "${libdir}/gstreamer-1.0/*.a ${libdir}/gstreamer-1.0/include" -FILES:${PN}-bash-completion += "${datadir}/bash-completion/completions/ ${datadir}/bash-completion/helpers/gst*" -FILES:${PN}-dbg += "${datadir}/gdb ${datadir}/gstreamer-1.0/gdb" - -CVE_PRODUCT = "gstreamer" - -PTEST_BUILD_HOST_FILES = "" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.20.0.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.20.0.bb new file mode 100644 index 0000000000..a8954e0eba --- /dev/null +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.20.0.bb @@ -0,0 +1,73 @@ +SUMMARY = "GStreamer 1.0 multimedia framework" +DESCRIPTION = "GStreamer is a multimedia framework for encoding and decoding video and sound. \ +It supports a wide range of formats including mp3, ogg, avi, mpeg and quicktime." +HOMEPAGE = "http://gstreamer.freedesktop.org/" +BUGTRACKER = "https://bugzilla.gnome.org/enter_bug.cgi?product=Gstreamer" +SECTION = "multimedia" +LICENSE = "LGPL-2.1-or-later" + +DEPENDS = "glib-2.0 glib-2.0-native libxml2 bison-native flex-native" + +inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection ptest-gnome + +LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770 \ + file://gst/gst.h;beginline=1;endline=21;md5=e059138481205ee2c6fc1c079c016d0d" + +S = "${WORKDIR}/gstreamer-${PV}" + +SRC_URI = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.xz \ + file://run-ptest \ + file://0001-tests-respect-the-idententaion-used-in-meson.patch;striplevel=3 \ + file://0002-tests-add-support-for-install-the-tests.patch;striplevel=3 \ + file://0003-tests-use-a-dictionaries-for-environment.patch;striplevel=3 \ + file://0004-tests-add-helper-script-to-run-the-installed_tests.patch;striplevel=3 \ + file://0005-tests-remove-gstbin-test_watch_for_state_change-test.patch \ + " +SRC_URI[sha256sum] = "edf4bffff85591d4fff7b21bb9ed7f0feabc123ac4a4eff29e73cbce454f9db7" + +PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \ + check \ + debug \ + tools" + +PACKAGECONFIG[debug] = "-Dgst_debug=true,-Dgst_debug=false" +PACKAGECONFIG[tracer-hooks] = "-Dtracer_hooks=true,-Dtracer_hooks=false" +PACKAGECONFIG[coretracers] = "-Dcoretracers=enabled,-Dcoretracers=disabled" +PACKAGECONFIG[check] = "-Dcheck=enabled,-Dcheck=disabled" +PACKAGECONFIG[tests] = "-Dtests=enabled -Dinstalled_tests=true,-Dtests=disabled -Dinstalled_tests=false" +PACKAGECONFIG[unwind] = "-Dlibunwind=enabled,-Dlibunwind=disabled,libunwind" +PACKAGECONFIG[dw] = "-Dlibdw=enabled,-Dlibdw=disabled,elfutils" +PACKAGECONFIG[bash-completion] = "-Dbash-completion=enabled,-Dbash-completion=disabled,bash-completion" +PACKAGECONFIG[tools] = "-Dtools=enabled,-Dtools=disabled" +PACKAGECONFIG[setcap] = "-Dptp-helper-permissions=capabilities,,libcap libcap-native" + +# TODO: put this in a gettext.bbclass patch +def gettext_oemeson(d): + if d.getVar('USE_NLS') == 'no': + return '-Dnls=disabled' + # Remove the NLS bits if USE_NLS is no or INHIBIT_DEFAULT_DEPS is set + if d.getVar('INHIBIT_DEFAULT_DEPS') and not oe.utils.inherits(d, 'cross-canadian'): + return '-Dnls=disabled' + return '-Dnls=enabled' + +EXTRA_OEMESON += " \ + -Ddoc=disabled \ + -Dexamples=disabled \ + -Ddbghelp=disabled \ + ${@gettext_oemeson(d)} \ +" + +GIR_MESON_ENABLE_FLAG = "enabled" +GIR_MESON_DISABLE_FLAG = "disabled" + +PACKAGES += "${PN}-bash-completion" + +# Add the core element plugins to the main package +FILES:${PN} += "${libdir}/gstreamer-1.0/*.so" +FILES:${PN}-dev += "${libdir}/gstreamer-1.0/*.a ${libdir}/gstreamer-1.0/include" +FILES:${PN}-bash-completion += "${datadir}/bash-completion/completions/ ${datadir}/bash-completion/helpers/gst*" +FILES:${PN}-dbg += "${datadir}/gdb ${datadir}/gstreamer-1.0/gdb" + +CVE_PRODUCT = "gstreamer" + +PTEST_BUILD_HOST_FILES = "" -- cgit v1.2.3