diff options
Diffstat (limited to 'meta/recipes-multimedia')
72 files changed, 1124 insertions, 1324 deletions
diff --git a/meta/recipes-multimedia/alsa/alsa-lib/ad8c8e5503980295dd8e5e54a6285d2d7e32eb1e.patch b/meta/recipes-multimedia/alsa/alsa-lib/ad8c8e5503980295dd8e5e54a6285d2d7e32eb1e.patch deleted file mode 100644 index 98e2988dda..0000000000 --- a/meta/recipes-multimedia/alsa/alsa-lib/ad8c8e5503980295dd8e5e54a6285d2d7e32eb1e.patch +++ /dev/null @@ -1,31 +0,0 @@ -From ad8c8e5503980295dd8e5e54a6285d2d7e32eb1e Mon Sep 17 00:00:00 2001 -From: Jaroslav Kysela <perex@perex.cz> -Date: Thu, 22 Oct 2020 20:57:32 +0200 -Subject: [PATCH] dlmisc: the snd_plugin_dir_set / snd_plugin_dir must be - declared even for \!DL_ORIGIN_AVAILABLE - -Fixes: 8580c081c2 ("dlsym: add support for ALSA_PLUGIN_DIR environment variable") -BugLink: https://github.com/alsa-project/alsa-lib/issues/91 -Signed-off-by: Jaroslav Kysela <perex@perex.cz> -Upstream-Status: Backport -Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> ---- - src/dlmisc.c | 2 -- - 1 file changed, 2 deletions(-) - -diff --git a/src/dlmisc.c b/src/dlmisc.c -index c9517c55..f20eb593 100644 ---- a/src/dlmisc.c -+++ b/src/dlmisc.c -@@ -42,11 +42,9 @@ - #ifndef PIC - struct snd_dlsym_link *snd_dlsym_start = NULL; - #endif --#ifdef DL_ORIGIN_AVAILABLE - static int snd_plugin_dir_set = 0; - static char *snd_plugin_dir = NULL; - #endif --#endif - - #if defined(DL_ORIGIN_AVAILABLE) && defined(HAVE_LIBPTHREAD) - static pthread_mutex_t snd_dlpath_mutex = PTHREAD_MUTEX_INITIALIZER; diff --git a/meta/recipes-multimedia/alsa/alsa-lib_1.2.4.bb b/meta/recipes-multimedia/alsa/alsa-lib_1.2.4.bb deleted file mode 100644 index f38e8b94ff..0000000000 --- a/meta/recipes-multimedia/alsa/alsa-lib_1.2.4.bb +++ /dev/null @@ -1,43 +0,0 @@ -SUMMARY = "ALSA sound library" -HOMEPAGE = "http://www.alsa-project.org" -BUGTRACKER = "http://alsa-project.org/main/index.php/Bug_Tracking" -SECTION = "libs/multimedia" -LICENSE = "LGPLv2.1 & GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=a916467b91076e631dd8edb7424769c7 \ - file://src/socket.c;md5=285675b45e83f571c6a957fe4ab79c93;beginline=9;endline=24 \ - " - -SRC_URI = "https://www.alsa-project.org/files/pub/lib/${BP}.tar.bz2 \ - file://ad8c8e5503980295dd8e5e54a6285d2d7e32eb1e.patch" -SRC_URI[sha256sum] = "f7554be1a56cdff468b58fc1c29b95b64864c590038dd309c7a978c7116908f7" - -inherit autotools pkgconfig - -EXTRA_OECONF += " \ - ${@bb.utils.contains('TARGET_FPU', 'soft', '--with-softfloat', '', d)} \ - --disable-python \ -" - -PACKAGES =+ "alsa-server alsa-conf libatopology" - -FILES_alsa-server = "${bindir}/*" -FILES_alsa-conf = "${datadir}/alsa/" -FILES_libatopology = "${libdir}/libatopology.so.*" - -RDEPENDS_${PN}_class-target = "alsa-conf alsa-ucm-conf" -RDEPENDS_libatopology_class-target = "alsa-topology-conf" - -# upgrade path -RPROVIDES_${PN} = "libasound" -RREPLACES_${PN} = "libasound" -RCONFLICTS_${PN} = "libasound" - -RPROVIDES_${PN}-dev = "alsa-dev" -RREPLACES_${PN}-dev = "alsa-dev" -RCONFLICTS_${PN}-dev = "alsa-dev" - -RPROVIDES_alsa-conf = "alsa-conf-base" -RREPLACES_alsa-conf = "alsa-conf-base" -RCONFLICTS_alsa-conf = "alsa-conf-base" - -BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-multimedia/alsa/alsa-lib_1.2.6.1.bb b/meta/recipes-multimedia/alsa/alsa-lib_1.2.6.1.bb new file mode 100644 index 0000000000..7c03287b84 --- /dev/null +++ b/meta/recipes-multimedia/alsa/alsa-lib_1.2.6.1.bb @@ -0,0 +1,44 @@ +SUMMARY = "ALSA sound library" +DESCRIPTION = "(Occasionally a.k.a. libasound) is a userspace library that \ +provides a level of abstraction over the /dev interfaces provided by the kernel modules." +HOMEPAGE = "http://www.alsa-project.org" +BUGTRACKER = "http://alsa-project.org/main/index.php/Bug_Tracking" +SECTION = "libs/multimedia" +LICENSE = "LGPLv2.1 & GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=a916467b91076e631dd8edb7424769c7 \ + file://src/socket.c;md5=285675b45e83f571c6a957fe4ab79c93;beginline=9;endline=24 \ + " + +SRC_URI = "https://www.alsa-project.org/files/pub/lib/${BP}.tar.bz2" +SRC_URI[sha256sum] = "ad582993d52cdb5fb159a0beab60a6ac57eab0cc1bdf85dc4db6d6197f02333f" + +inherit autotools pkgconfig + +EXTRA_OECONF += " \ + ${@bb.utils.contains('TARGET_FPU', 'soft', '--with-softfloat', '', d)} \ + --disable-python \ +" + +PACKAGES =+ "alsa-server alsa-conf libatopology" + +FILES:alsa-server = "${bindir}/*" +FILES:alsa-conf = "${datadir}/alsa/" +FILES:libatopology = "${libdir}/libatopology.so.*" + +RDEPENDS:${PN}:class-target = "alsa-conf alsa-ucm-conf" +RDEPENDS:libatopology:class-target = "alsa-topology-conf" + +# upgrade path +RPROVIDES:${PN} = "libasound" +RREPLACES:${PN} = "libasound" +RCONFLICTS:${PN} = "libasound" + +RPROVIDES:${PN}-dev = "alsa-dev" +RREPLACES:${PN}-dev = "alsa-dev" +RCONFLICTS:${PN}-dev = "alsa-dev" + +RPROVIDES:alsa-conf = "alsa-conf-base" +RREPLACES:alsa-conf = "alsa-conf-base" +RCONFLICTS:alsa-conf = "alsa-conf-base" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-multimedia/alsa/alsa-plugins_1.2.2.bb b/meta/recipes-multimedia/alsa/alsa-plugins_1.2.6.bb index e8402a6fcb..7b1ca2ee15 100644 --- a/meta/recipes-multimedia/alsa/alsa-plugins_1.2.2.bb +++ b/meta/recipes-multimedia/alsa/alsa-plugins_1.2.6.bb @@ -1,4 +1,7 @@ SUMMARY = "ALSA Plugins" +DESCRIPTION = "Used to create virtual devices that can be used like normal \ +hardware devices but cause extra processing of the sound stream to take place. \ +They are used while configuring ALSA in the .asoundrc file." HOMEPAGE = "http://alsa-project.org" BUGTRACKER = "http://alsa-project.org/main/index.php/Bug_Tracking" SECTION = "multimedia" @@ -20,8 +23,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=a916467b91076e631dd8edb7424769c7 \ " SRC_URI = "https://www.alsa-project.org/files/pub/plugins/${BP}.tar.bz2" -SRC_URI[md5sum] = "8455e3c6fbc47f62f070afabc14ba575" -SRC_URI[sha256sum] = "1c0f06450c928d711719686c9dbece2d480184f36fab11b8f0534cb7b41e337d" +SRC_URI[sha256sum] = "068818a4b55d8c029daa00015d853d45113f56b224b7c64e1e117988c825b2a0" DEPENDS += "alsa-lib" @@ -47,10 +49,10 @@ PACKAGES_DYNAMIC = "^libasound-module-.*" # The alsa-plugins package doesn't itself contain anything, it just depends on # all built plugins. -FILES_${PN} = "" -ALLOW_EMPTY_${PN} = "1" +FILES:${PN} = "" +ALLOW_EMPTY:${PN} = "1" -do_install_append() { +do_install:append() { rm -f ${D}${libdir}/alsa-lib/*.la if [ "${@bb.utils.contains('PACKAGECONFIG', 'pulseaudio', 'yes', 'no', d)}" = "yes" ]; then @@ -63,10 +65,10 @@ do_install_append() { fi } -python populate_packages_prepend() { +python populate_packages:prepend() { plugindir = d.expand('${libdir}/alsa-lib/') packages = " ".join(do_split_packages(d, plugindir, r'^libasound_module_(.*)\.so$', 'libasound-module-%s', 'Alsa plugin for %s', extra_depends='')) - d.setVar("RDEPENDS_alsa-plugins", packages) + d.setVar("RDEPENDS:alsa-plugins", packages) } # Many plugins have a configuration file (plus a symlink in /etc) associated @@ -82,51 +84,51 @@ python populate_packages_prepend() { # cause big problems, but some kind of improvement to the packaging could # probably be done here (at least it would be good to handle the different # plugins in a consistent way). -FILES_${MLPREFIX}libasound-module-ctl-arcam-av += "\ +FILES:${MLPREFIX}libasound-module-ctl-arcam-av += "\ ${datadir}/alsa/alsa.conf.d/50-arcam-av-ctl.conf \ ${sysconfdir}/alsa/conf.d/50-arcam-av-ctl.conf \ " -FILES_${MLPREFIX}libasound-module-pcm-a52 += "\ +FILES:${MLPREFIX}libasound-module-pcm-a52 += "\ ${datadir}/alsa/alsa.conf.d/60-a52-encoder.conf \ ${sysconfdir}/alsa/conf.d/60-a52-encoder.conf \ " -FILES_${MLPREFIX}libasound-module-pcm-alsa-dsp += "\ +FILES:${MLPREFIX}libasound-module-pcm-alsa-dsp += "\ ${datadir}/alsa/alsa.conf.d/98-maemo.conf \ ${sysconfdir}/alsa/conf.d/98-maemo.conf \ " -FILES_${MLPREFIX}libasound-module-pcm-jack += "\ +FILES:${MLPREFIX}libasound-module-pcm-jack += "\ ${datadir}/alsa/alsa.conf.d/50-jack.conf \ ${sysconfdir}/alsa/conf.d/50-jack.conf \ " -FILES_${MLPREFIX}libasound-module-pcm-oss += "\ +FILES:${MLPREFIX}libasound-module-pcm-oss += "\ ${datadir}/alsa/alsa.conf.d/50-oss.conf \ ${sysconfdir}/alsa/conf.d/50-oss.conf \ " -FILES_${MLPREFIX}libasound-module-pcm-speex += "\ +FILES:${MLPREFIX}libasound-module-pcm-speex += "\ ${datadir}/alsa/alsa.conf.d/60-speex.conf \ ${sysconfdir}/alsa/conf.d/60-speex.conf \ " -FILES_${MLPREFIX}libasound-module-pcm-upmix += "\ +FILES:${MLPREFIX}libasound-module-pcm-upmix += "\ ${datadir}/alsa/alsa.conf.d/60-upmix.conf \ ${sysconfdir}/alsa/conf.d/60-upmix.conf \ " -FILES_${MLPREFIX}libasound-module-pcm-usb-stream += "\ +FILES:${MLPREFIX}libasound-module-pcm-usb-stream += "\ ${datadir}/alsa/alsa.conf.d/98-usb-stream.conf \ ${sysconfdir}/alsa/conf.d/98-usb-stream.conf \ " -FILES_${MLPREFIX}libasound-module-pcm-vdownmix += "\ +FILES:${MLPREFIX}libasound-module-pcm-vdownmix += "\ ${datadir}/alsa/alsa.conf.d/60-vdownmix.conf \ ${sysconfdir}/alsa/conf.d/60-vdownmix.conf \ " -FILES_${MLPREFIX}libasound-module-rate-lavrate += "\ +FILES:${MLPREFIX}libasound-module-rate-lavrate += "\ ${datadir}/alsa/alsa.conf.d/10-rate-lav.conf \ ${sysconfdir}/alsa/conf.d/10-rate-lav.conf \ " -FILES_${MLPREFIX}libasound-module-rate-samplerate += "\ +FILES:${MLPREFIX}libasound-module-rate-samplerate += "\ ${datadir}/alsa/alsa.conf.d/10-samplerate.conf \ ${sysconfdir}/alsa/conf.d/10-samplerate.conf \ " -FILES_${MLPREFIX}libasound-module-rate-speexrate += "\ +FILES:${MLPREFIX}libasound-module-rate-speexrate += "\ ${datadir}/alsa/alsa.conf.d/10-speexrate.conf \ ${sysconfdir}/alsa/conf.d/10-speexrate.conf \ " @@ -147,25 +149,25 @@ FILES_${MLPREFIX}libasound-module-rate-speexrate += "\ # The symlinks cause QA errors, because usually it's a bug if a non # -dev/-dbg/-nativesdk package contains links to .so files, but in this case # the errors are false positives, so we disable the QA checks. -FILES_${MLPREFIX}libasound-module-rate-lavrate += "${libdir}/alsa-lib/*rate_lavrate_*.so" -FILES_${MLPREFIX}libasound-module-rate-samplerate += "${libdir}/alsa-lib/*rate_samplerate_*.so" -FILES_${MLPREFIX}libasound-module-rate-speexrate += "${libdir}/alsa-lib/*rate_speexrate_*.so" -INSANE_SKIP_${MLPREFIX}libasound-module-rate-lavrate = "dev-so" -INSANE_SKIP_${MLPREFIX}libasound-module-rate-samplerate = "dev-so" -INSANE_SKIP_${MLPREFIX}libasound-module-rate-speexrate = "dev-so" +FILES:${MLPREFIX}libasound-module-rate-lavrate += "${libdir}/alsa-lib/*rate_lavrate_*.so" +FILES:${MLPREFIX}libasound-module-rate-samplerate += "${libdir}/alsa-lib/*rate_samplerate_*.so" +FILES:${MLPREFIX}libasound-module-rate-speexrate += "${libdir}/alsa-lib/*rate_speexrate_*.so" +INSANE_SKIP:${MLPREFIX}libasound-module-rate-lavrate = "dev-so" +INSANE_SKIP:${MLPREFIX}libasound-module-rate-samplerate = "dev-so" +INSANE_SKIP:${MLPREFIX}libasound-module-rate-speexrate = "dev-so" # 50-pulseaudio.conf defines a device named "pulse" that applications can use # if they explicitly want to use the PulseAudio plugin. # 99-pulseaudio-default.conf configures the "default" device to use the # PulseAudio plugin. -FILES_${PN}-pulseaudio-conf += "\ +FILES:${PN}-pulseaudio-conf += "\ ${datadir}/alsa/alsa.conf.d/50-pulseaudio.conf \ ${datadir}/alsa/alsa.conf.d/99-pulseaudio-default.conf \ ${sysconfdir}/alsa/conf.d/50-pulseaudio.conf \ ${sysconfdir}/alsa/conf.d/99-pulseaudio-default.conf \ " -RDEPENDS_${PN}-pulseaudio-conf += "\ +RDEPENDS:${PN}-pulseaudio-conf += "\ ${MLPREFIX}libasound-module-conf-pulse \ ${MLPREFIX}libasound-module-ctl-pulse \ ${MLPREFIX}libasound-module-pcm-pulse \ diff --git a/meta/recipes-multimedia/alsa/alsa-tools_1.2.2.bb b/meta/recipes-multimedia/alsa/alsa-tools_1.2.5.bb index 0838be8798..540f4f79f4 100644 --- a/meta/recipes-multimedia/alsa/alsa-tools_1.2.2.bb +++ b/meta/recipes-multimedia/alsa/alsa-tools_1.2.5.bb @@ -1,4 +1,7 @@ SUMMARY = "Advanced tools for certain ALSA sound card drivers" +DESCRIPTION = "Package containing a number of tools ranging from envy24control \ +which provides complete control over all devices with an envy24 chip, to \ +firmware loaders for pcmcia, USB and the hdsp devices." HOMEPAGE = "http://www.alsa-project.org" BUGTRACKER = "http://alsa-project.org/main/index.php/Bug_Tracking" SECTION = "console/utils" @@ -11,8 +14,7 @@ LIC_FILES_CHKSUM = "file://hdsploader/COPYING;md5=59530bdf33659b29e73d4adb9f9f65 SRC_URI = "https://www.alsa-project.org/files/pub/tools/${BP}.tar.bz2" -SRC_URI[md5sum] = "4e6187d2c3a8c73a9d75d66a72faed27" -SRC_URI[sha256sum] = "bfd3c7aae1289269605d3da02279159b10e3dabdd31e658cbceaa30170957349" +SRC_URI[sha256sum] = "35a71027a01f4d7de4722e223520e940de68b3c570b6c671691567ae28f9893e" inherit autotools-brokensep pkgconfig # brokensep as as10k1 (and probably more) fail out of tree @@ -83,4 +85,4 @@ python do_install() { pass } -FILES_${PN} += "${datadir}" +FILES:${PN} += "${datadir}" diff --git a/meta/recipes-multimedia/alsa/alsa-topology-conf_1.2.4.bb b/meta/recipes-multimedia/alsa/alsa-topology-conf_1.2.5.1.bb index aac4b48948..4374a6bb6d 100644 --- a/meta/recipes-multimedia/alsa/alsa-topology-conf_1.2.4.bb +++ b/meta/recipes-multimedia/alsa/alsa-topology-conf_1.2.5.1.bb @@ -1,11 +1,15 @@ SUMMARY = "ALSA topology configuration files" +DESCRIPTION = "Provides a method for audio drivers to load their mixers, \ +routing, PCMs and capabilities from user space at runtime without changing \ +any driver source code." HOMEPAGE = "https://alsa-project.org" BUGTRACKER = "https://alsa-project.org/wiki/Bug_Tracking" LICENSE = "BSD-3-Clause" LIC_FILES_CHKSUM = "file://LICENSE;md5=20d74d74db9741697903372ad001d3b4" SRC_URI = "https://www.alsa-project.org/files/pub/lib/${BP}.tar.bz2" -SRC_URI[sha256sum] = "55e0e6e42eca4cc7656c257af2440cdc65b83689dca49fc60ca0194db079ed07" +SRC_URI[sha256sum] = "f7c5bae1545abcd73824bc97f4e72c340e11abea188ba0f1c06f5e0ad776b179" +# Something went wrong at upstream tarballing inherit allarch @@ -16,4 +20,4 @@ do_install() { PACKAGES = "${PN}" -FILES_${PN} = "*" +FILES:${PN} = "*" diff --git a/meta/recipes-multimedia/alsa/alsa-ucm-conf_1.2.4.bb b/meta/recipes-multimedia/alsa/alsa-ucm-conf_1.2.6.2.bb index da41c3db75..10860e61a0 100644 --- a/meta/recipes-multimedia/alsa/alsa-ucm-conf_1.2.4.bb +++ b/meta/recipes-multimedia/alsa/alsa-ucm-conf_1.2.6.2.bb @@ -1,11 +1,15 @@ SUMMARY = "ALSA Use Case Manager configuration" +DESCRIPTION = "This package contains ALSA Use Case Manager configuration \ +of audio input/output names and routing for specific audio hardware. \ +They can be used with the alsaucm tool. " HOMEPAGE = "https://alsa-project.org" BUGTRACKER = "https://alsa-project.org/wiki/Bug_Tracking" LICENSE = "BSD-3-Clause" LIC_FILES_CHKSUM = "file://LICENSE;md5=20d74d74db9741697903372ad001d3b4" SRC_URI = "https://www.alsa-project.org/files/pub/lib/${BP}.tar.bz2" -SRC_URI[sha256sum] = "2c3b535c77dcb9aaf62a61f4f8324f1ab184162f105f7ec9ed1e37c742fcd340" +SRC_URI[sha256sum] = "8be24fb9fe789ee2778ae6f32e18e8043fe7f8bc735871e9d17c68a04566a822" +# Something went wrong at upstream tarballing inherit allarch @@ -17,4 +21,4 @@ do_install() { PACKAGES = "${PN}" -FILES_${PN} = "*" +FILES:${PN} = "*" diff --git a/meta/recipes-multimedia/alsa/alsa-utils-scripts_1.2.4.bb b/meta/recipes-multimedia/alsa/alsa-utils-scripts_1.2.6.bb index 048fef68a5..000e984a7d 100644 --- a/meta/recipes-multimedia/alsa/alsa-utils-scripts_1.2.4.bb +++ b/meta/recipes-multimedia/alsa/alsa-utils-scripts_1.2.6.bb @@ -3,12 +3,12 @@ require alsa-utils.inc SUMMARY = "Shell scripts that show help info and create ALSA configuration files" PROVIDES = "alsa-utils-alsaconf" -FILESEXTRAPATHS_prepend := "${THISDIR}/alsa-utils:" +FILESEXTRAPATHS:prepend := "${THISDIR}/alsa-utils:" PACKAGES = "${PN}" -RDEPENDS_${PN} += "bash" +RDEPENDS:${PN} += "bash" -FILES_${PN} = "${sbindir}/alsaconf \ +FILES:${PN} = "${sbindir}/alsaconf \ ${sbindir}/alsa-info.sh \ ${sbindir}/alsabat-test.sh \ " diff --git a/meta/recipes-multimedia/alsa/alsa-utils.inc b/meta/recipes-multimedia/alsa/alsa-utils.inc index c001b29a0c..631cbe1029 100644 --- a/meta/recipes-multimedia/alsa/alsa-utils.inc +++ b/meta/recipes-multimedia/alsa/alsa-utils.inc @@ -1,4 +1,6 @@ SUMMARY = "ALSA sound utilities" +DESCRIPTION = "collection of small and often extremely powerful applications \ +designed to allow users to control the various parts of the ALSA system." HOMEPAGE = "http://www.alsa-project.org" BUGTRACKER = "http://alsa-project.org/main/index.php/Bug_Tracking" SECTION = "console/utils" @@ -22,7 +24,7 @@ PACKAGECONFIG[manpages] = "--enable-xmlto, --disable-xmlto, xmlto-native docbook # alsa-utils specified in SRC_URI due to alsa-utils-scripts recipe SRC_URI = "https://www.alsa-project.org/files/pub/utils/alsa-utils-${PV}.tar.bz2" -SRC_URI[sha256sum] = "98ffc2d599de0577d423a48fa5f20a992ca0b82d812ed1f2e58ade49ac6da426" +SRC_URI[sha256sum] = "6a1efd8a1f1d9d38e489633eaec1fffa5c315663b316cab804be486887e6145d" # On build machines with python-docutils (not python3-docutils !!) installed # rst2man (not rst2man.py) is detected and compile fails with @@ -53,41 +55,41 @@ ALSA_UTILS_PKGS = "\ " PACKAGES += "${ALSA_UTILS_PKGS}" -RDEPENDS_${PN} += "${ALSA_UTILS_PKGS}" +RDEPENDS:${PN} += "${ALSA_UTILS_PKGS}" -FILES_${PN} = "" -ALLOW_EMPTY_alsa-utils = "1" -FILES_alsa-utils-alsabat = "${bindir}/alsabat" -FILES_alsa-utils-alsatplg = "${bindir}/alsatplg" -FILES_alsa-utils-aplay = "${bindir}/aplay ${bindir}/arecord ${bindir}/axfer" -FILES_alsa-utils-amixer = "${bindir}/amixer" -FILES_alsa-utils-alsamixer = "${bindir}/alsamixer" -FILES_alsa-utils-speakertest = "${bindir}/speaker-test ${datadir}/sounds/alsa/ ${datadir}/alsa/speaker-test/" -FILES_alsa-utils-midi = "${bindir}/aplaymidi ${bindir}/arecordmidi ${bindir}/amidi" -FILES_alsa-utils-aconnect = "${bindir}/aconnect" -FILES_alsa-utils-aseqnet = "${bindir}/aseqnet" -FILES_alsa-utils-iecset = "${bindir}/iecset" -FILES_alsa-utils-alsactl = "${sbindir}/alsactl */udev/rules.d/90-alsa-restore.rules */*/udev/rules.d/90-alsa-restore.rules ${systemd_unitdir} ${localstatedir}/lib/alsa ${datadir}/alsa/init/" -FILES_alsa-utils-aseqdump = "${bindir}/aseqdump" -FILES_alsa-utils-alsaloop = "${bindir}/alsaloop" -FILES_alsa-utils-alsaucm = "${bindir}/alsaucm */udev/rules.d/89-alsa-ucm.rules */*/udev/rules.d/89-alsa-ucm.rules" +FILES:${PN} = "" +ALLOW_EMPTY:alsa-utils = "1" +FILES:alsa-utils-alsabat = "${bindir}/alsabat" +FILES:alsa-utils-alsatplg = "${bindir}/alsatplg" +FILES:alsa-utils-aplay = "${bindir}/aplay ${bindir}/arecord ${bindir}/axfer" +FILES:alsa-utils-amixer = "${bindir}/amixer" +FILES:alsa-utils-alsamixer = "${bindir}/alsamixer" +FILES:alsa-utils-speakertest = "${bindir}/speaker-test ${datadir}/sounds/alsa/ ${datadir}/alsa/speaker-test/" +FILES:alsa-utils-midi = "${bindir}/aplaymidi ${bindir}/arecordmidi ${bindir}/amidi" +FILES:alsa-utils-aconnect = "${bindir}/aconnect" +FILES:alsa-utils-aseqnet = "${bindir}/aseqnet" +FILES:alsa-utils-iecset = "${bindir}/iecset" +FILES:alsa-utils-alsactl = "${sbindir}/alsactl */udev/rules.d/90-alsa-restore.rules */*/udev/rules.d/90-alsa-restore.rules ${systemd_unitdir} ${localstatedir}/lib/alsa ${datadir}/alsa/init/" +FILES:alsa-utils-aseqdump = "${bindir}/aseqdump" +FILES:alsa-utils-alsaloop = "${bindir}/alsaloop" +FILES:alsa-utils-alsaucm = "${bindir}/alsaucm */udev/rules.d/89-alsa-ucm.rules */*/udev/rules.d/89-alsa-ucm.rules" -SUMMARY_alsa-utils-alsabat = "Command-line sound tester for ALSA sound card driver" -SUMMARY_alsa-utils-alsatplg = "Converts topology text files into binary format for kernel" -SUMMARY_alsa-utils-aplay = "Play (and record) sound files using ALSA" -SUMMARY_alsa-utils-amixer = "Command-line control for ALSA mixer and settings" -SUMMARY_alsa-utils-alsamixer = "ncurses-based control for ALSA mixer and settings" -SUMMARY_alsa-utils-speakertest = "ALSA surround speaker test utility" -SUMMARY_alsa-utils-midi = "Miscellaneous MIDI utilities for ALSA" -SUMMARY_alsa-utils-aconnect = "ALSA sequencer connection manager" -SUMMARY_alsa-utils-aseqnet = "Network client/server for ALSA sequencer" -SUMMARY_alsa-utils-iecset = "ALSA utility for setting/showing IEC958 (S/PDIF) status bits" -SUMMARY_alsa-utils-alsactl = "Saves/restores ALSA-settings in /etc/asound.state" -SUMMARY_alsa-utils-aseqdump = "Shows the events received at an ALSA sequencer port" -SUMMARY_alsa-utils-alsaloop = "ALSA PCM loopback utility" -SUMMARY_alsa-utils-alsaucm = "ALSA Use Case Manager" +SUMMARY:alsa-utils-alsabat = "Command-line sound tester for ALSA sound card driver" +SUMMARY:alsa-utils-alsatplg = "Converts topology text files into binary format for kernel" +SUMMARY:alsa-utils-aplay = "Play (and record) sound files using ALSA" +SUMMARY:alsa-utils-amixer = "Command-line control for ALSA mixer and settings" +SUMMARY:alsa-utils-alsamixer = "ncurses-based control for ALSA mixer and settings" +SUMMARY:alsa-utils-speakertest = "ALSA surround speaker test utility" +SUMMARY:alsa-utils-midi = "Miscellaneous MIDI utilities for ALSA" +SUMMARY:alsa-utils-aconnect = "ALSA sequencer connection manager" +SUMMARY:alsa-utils-aseqnet = "Network client/server for ALSA sequencer" +SUMMARY:alsa-utils-iecset = "ALSA utility for setting/showing IEC958 (S/PDIF) status bits" +SUMMARY:alsa-utils-alsactl = "Saves/restores ALSA-settings in /etc/asound.state" +SUMMARY:alsa-utils-aseqdump = "Shows the events received at an ALSA sequencer port" +SUMMARY:alsa-utils-alsaloop = "ALSA PCM loopback utility" +SUMMARY:alsa-utils-alsaucm = "ALSA Use Case Manager" -RRECOMMENDS_alsa-utils-alsactl = "alsa-states" +RRECOMMENDS:alsa-utils-alsactl = "alsa-states" do_install() { autotools_do_install diff --git a/meta/recipes-multimedia/alsa/alsa-utils_1.2.4.bb b/meta/recipes-multimedia/alsa/alsa-utils_1.2.6.bb index 3430288da4..3430288da4 100644 --- a/meta/recipes-multimedia/alsa/alsa-utils_1.2.4.bb +++ b/meta/recipes-multimedia/alsa/alsa-utils_1.2.6.bb diff --git a/meta/recipes-multimedia/ffmpeg/ffmpeg/0001-lavf-srt-fix-build-fail-when-used-the-libsrt-1.4.1.patch b/meta/recipes-multimedia/ffmpeg/ffmpeg/0001-lavf-srt-fix-build-fail-when-used-the-libsrt-1.4.1.patch deleted file mode 100644 index 7635c9196a..0000000000 --- a/meta/recipes-multimedia/ffmpeg/ffmpeg/0001-lavf-srt-fix-build-fail-when-used-the-libsrt-1.4.1.patch +++ /dev/null @@ -1,52 +0,0 @@ -From aebb72e025cbfbd4a6765354f6f565ad4ac89789 Mon Sep 17 00:00:00 2001 -From: Jun Zhao <barryjzhao@tencent.com> -Date: Sun, 12 Jul 2020 05:48:48 +0800 -Subject: [PATCH] lavf/srt: fix build fail when used the libsrt 1.4.1 - -lavf/srt: fix build fail when used the libsrt 1.4.1 - -libsrt changed the: -SRTO_SMOOTHER -> SRTO_CONGESTION -SRTO_STRICTENC -> SRTO_ENFORCEDENCRYPTION -and removed the front of deprecated options (SRTO_SMOOTHER/SRTO_STRICTENC) -in the header, it's lead to build fail - -fix #8760 - -Upstream-Status: Backport [https://github.com/FFmpeg/FFmpeg/commit/7c59e1b0f285cd7c7b35fcd71f49c5fd52cf9315] - -Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com> -Signed-off-by: Jun Zhao <barryjzhao@tencent.com> ---- - libavformat/libsrt.c | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/libavformat/libsrt.c b/libavformat/libsrt.c -index 4de575b..4719ce0 100644 ---- a/libavformat/libsrt.c -+++ b/libavformat/libsrt.c -@@ -313,8 +313,12 @@ static int libsrt_set_options_pre(URLContext *h, int fd) - (s->pbkeylen >= 0 && libsrt_setsockopt(h, fd, SRTO_PBKEYLEN, "SRTO_PBKEYLEN", &s->pbkeylen, sizeof(s->pbkeylen)) < 0) || - (s->passphrase && libsrt_setsockopt(h, fd, SRTO_PASSPHRASE, "SRTO_PASSPHRASE", s->passphrase, strlen(s->passphrase)) < 0) || - #if SRT_VERSION_VALUE >= 0x010302 -+#if SRT_VERSION_VALUE >= 0x010401 -+ (s->enforced_encryption >= 0 && libsrt_setsockopt(h, fd, SRTO_ENFORCEDENCRYPTION, "SRTO_ENFORCEDENCRYPTION", &s->enforced_encryption, sizeof(s->enforced_encryption)) < 0) || -+#else - /* SRTO_STRICTENC == SRTO_ENFORCEDENCRYPTION (53), but for compatibility, we used SRTO_STRICTENC */ - (s->enforced_encryption >= 0 && libsrt_setsockopt(h, fd, SRTO_STRICTENC, "SRTO_STRICTENC", &s->enforced_encryption, sizeof(s->enforced_encryption)) < 0) || -+#endif - (s->kmrefreshrate >= 0 && libsrt_setsockopt(h, fd, SRTO_KMREFRESHRATE, "SRTO_KMREFRESHRATE", &s->kmrefreshrate, sizeof(s->kmrefreshrate)) < 0) || - (s->kmpreannounce >= 0 && libsrt_setsockopt(h, fd, SRTO_KMPREANNOUNCE, "SRTO_KMPREANNOUNCE", &s->kmpreannounce, sizeof(s->kmpreannounce)) < 0) || - #endif -@@ -333,7 +337,11 @@ static int libsrt_set_options_pre(URLContext *h, int fd) - (s->lossmaxttl >= 0 && libsrt_setsockopt(h, fd, SRTO_LOSSMAXTTL, "SRTO_LOSSMAXTTL", &s->lossmaxttl, sizeof(s->lossmaxttl)) < 0) || - (s->minversion >= 0 && libsrt_setsockopt(h, fd, SRTO_MINVERSION, "SRTO_MINVERSION", &s->minversion, sizeof(s->minversion)) < 0) || - (s->streamid && libsrt_setsockopt(h, fd, SRTO_STREAMID, "SRTO_STREAMID", s->streamid, strlen(s->streamid)) < 0) || -+#if SRT_VERSION_VALUE >= 0x010401 -+ (s->smoother && libsrt_setsockopt(h, fd, SRTO_CONGESTION, "SRTO_CONGESTION", s->smoother, strlen(s->smoother)) < 0) || -+#else - (s->smoother && libsrt_setsockopt(h, fd, SRTO_SMOOTHER, "SRTO_SMOOTHER", s->smoother, strlen(s->smoother)) < 0) || -+#endif - (s->messageapi >= 0 && libsrt_setsockopt(h, fd, SRTO_MESSAGEAPI, "SRTO_MESSAGEAPI", &s->messageapi, sizeof(s->messageapi)) < 0) || - (s->payload_size >= 0 && libsrt_setsockopt(h, fd, SRTO_PAYLOADSIZE, "SRTO_PAYLOADSIZE", &s->payload_size, sizeof(s->payload_size)) < 0) || - ((h->flags & AVIO_FLAG_WRITE) && libsrt_setsockopt(h, fd, SRTO_SENDER, "SRTO_SENDER", &yes, sizeof(yes)) < 0)) { diff --git a/meta/recipes-multimedia/ffmpeg/ffmpeg/0001-libavutil-include-assembly-with-full-path-from-sourc.patch b/meta/recipes-multimedia/ffmpeg/ffmpeg/0001-libavutil-include-assembly-with-full-path-from-sourc.patch new file mode 100644 index 0000000000..2b4ca0e9b9 --- /dev/null +++ b/meta/recipes-multimedia/ffmpeg/ffmpeg/0001-libavutil-include-assembly-with-full-path-from-sourc.patch @@ -0,0 +1,97 @@ +From 24a58d70cbb3997e471366bd5afe54be9007bfb1 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex.kanavin@gmail.com> +Date: Tue, 10 Nov 2020 15:32:14 +0000 +Subject: [PATCH] libavutil: include assembly with full path from source root + +Otherwise nasm writes the full host-specific paths into .o +output, which breaks binary reproducibility. + +Upstream-Status: Submitted [by email to jamrial@gmail.com,ffmpeg-devel@ffmpeg.org] +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> +--- + libavutil/x86/cpuid.asm | 2 +- + libavutil/x86/emms.asm | 2 +- + libavutil/x86/fixed_dsp.asm | 2 +- + libavutil/x86/float_dsp.asm | 2 +- + libavutil/x86/lls.asm | 2 +- + libavutil/x86/pixelutils.asm | 2 +- + 6 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/libavutil/x86/cpuid.asm b/libavutil/x86/cpuid.asm +index c3f7866..766f77f 100644 +--- a/libavutil/x86/cpuid.asm ++++ b/libavutil/x86/cpuid.asm +@@ -21,7 +21,7 @@ + ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + ;****************************************************************************** + +-%include "x86util.asm" ++%include "libavutil/x86/x86util.asm" + + SECTION .text + +diff --git a/libavutil/x86/emms.asm b/libavutil/x86/emms.asm +index 8611762..df84f22 100644 +--- a/libavutil/x86/emms.asm ++++ b/libavutil/x86/emms.asm +@@ -18,7 +18,7 @@ + ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + ;****************************************************************************** + +-%include "x86util.asm" ++%include "libavutil/x86/x86util.asm" + + SECTION .text + +diff --git a/libavutil/x86/fixed_dsp.asm b/libavutil/x86/fixed_dsp.asm +index 979dd5c..2f41185 100644 +--- a/libavutil/x86/fixed_dsp.asm ++++ b/libavutil/x86/fixed_dsp.asm +@@ -20,7 +20,7 @@ + ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + ;****************************************************************************** + +-%include "x86util.asm" ++%include "libavutil/x86/x86util.asm" + + SECTION .text + +diff --git a/libavutil/x86/float_dsp.asm b/libavutil/x86/float_dsp.asm +index 517fd63..b773e61 100644 +--- a/libavutil/x86/float_dsp.asm ++++ b/libavutil/x86/float_dsp.asm +@@ -20,7 +20,7 @@ + ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + ;****************************************************************************** + +-%include "x86util.asm" ++%include "libavutil/x86/x86util.asm" + + SECTION_RODATA 32 + pd_reverse: dd 7, 6, 5, 4, 3, 2, 1, 0 +diff --git a/libavutil/x86/lls.asm b/libavutil/x86/lls.asm +index 317fba6..d2526d1 100644 +--- a/libavutil/x86/lls.asm ++++ b/libavutil/x86/lls.asm +@@ -20,7 +20,7 @@ + ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + ;****************************************************************************** + +-%include "x86util.asm" ++%include "libavutil/x86/x86util.asm" + + SECTION .text + +diff --git a/libavutil/x86/pixelutils.asm b/libavutil/x86/pixelutils.asm +index 36c57c5..8b45ead 100644 +--- a/libavutil/x86/pixelutils.asm ++++ b/libavutil/x86/pixelutils.asm +@@ -21,7 +21,7 @@ + ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + ;****************************************************************************** + +-%include "x86util.asm" ++%include "libavutil/x86/x86util.asm" + + SECTION .text + diff --git a/meta/recipes-multimedia/ffmpeg/ffmpeg/mips64_cpu_detection.patch b/meta/recipes-multimedia/ffmpeg/ffmpeg/mips64_cpu_detection.patch deleted file mode 100644 index 69429af8f0..0000000000 --- a/meta/recipes-multimedia/ffmpeg/ffmpeg/mips64_cpu_detection.patch +++ /dev/null @@ -1,32 +0,0 @@ -It will add -mips64r6 and -mips64r2 to cmdline which will -cause conflicts - -in OE we user mips32r2 and mips64r2 for mips arch versions -so there is no benefit of detecting it automatically by -poking at tools especially in cross env - -Fixes errors like - -linking -mnan=2008 module with previous -mnan=legacy modules -failed to merge target specific data of file - --Khem -Upstream-Status: Inappropriate [OE-Specific] - -Index: ffmpeg-3.1.1/configure -=================================================================== ---- ffmpeg-3.1.1.orig/configure -+++ ffmpeg-3.1.1/configure -@@ -5220,12 +5220,9 @@ elif enabled mips; then - - # Enable minimum ISA based on selected options - if enabled mips64; then -- enabled mips64r6 && check_inline_asm_flags mips64r6 '"dlsa $0, $0, $0, 1"' '-mips64r6' - enabled mips64r2 && check_inline_asm_flags mips64r2 '"dext $0, $0, 0, 1"' '-mips64r2' - disabled mips64r6 && disabled mips64r2 && check_inline_asm_flags mips64r1 '"daddi $0, $0, 0"' '-mips64' - else -- enabled mips32r6 && check_inline_asm_flags mips32r6 '"aui $0, $0, 0"' '-mips32r6' -- enabled mips32r5 && check_inline_asm_flags mips32r5 '"eretnc"' '-mips32r5' - enabled mips32r2 && check_inline_asm_flags mips32r2 '"ext $0, $0, 0, 1"' '-mips32r2' - disabled mips32r6 && disabled mips32r5 && disabled mips32r2 && check_inline_asm_flags mips32r1 '"addi $0, $0, 0"' '-mips32' - fi diff --git a/meta/recipes-multimedia/ffmpeg/ffmpeg_4.3.1.bb b/meta/recipes-multimedia/ffmpeg/ffmpeg_4.4.1.bb index 72c2fe16ec..3ba07c31d6 100644 --- a/meta/recipes-multimedia/ffmpeg/ffmpeg_4.3.1.bb +++ b/meta/recipes-multimedia/ffmpeg/ffmpeg_4.4.1.bb @@ -5,17 +5,17 @@ DESCRIPTION = "FFmpeg is the leading multimedia framework, able to decode, encod HOMEPAGE = "https://www.ffmpeg.org/" SECTION = "libs" -LICENSE = "BSD & GPLv2+ & LGPLv2.1+ & MIT" -LICENSE_${PN} = "GPLv2+" -LICENSE_libavcodec = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" -LICENSE_libavdevice = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" -LICENSE_libavfilter = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" -LICENSE_libavformat = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" -LICENSE_libavresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" -LICENSE_libavutil = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" -LICENSE_libpostproc = "GPLv2+" -LICENSE_libswresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" -LICENSE_libswscale = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE = "GPLv2+ & LGPLv2.1+ & ISC & MIT & BSD-2-Clause & BSD-3-Clause & IJG" +LICENSE:${PN} = "GPLv2+" +LICENSE:libavcodec = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE:libavdevice = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE:libavfilter = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE:libavformat = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE:libavresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE:libavutil = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE:libpostproc = "GPLv2+" +LICENSE:libswresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE:libswscale = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" LICENSE_FLAGS = "commercial" LIC_FILES_CHKSUM = "file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ @@ -24,15 +24,14 @@ LIC_FILES_CHKSUM = "file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ file://COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02" SRC_URI = "https://www.ffmpeg.org/releases/${BP}.tar.xz \ - file://mips64_cpu_detection.patch \ - file://0001-lavf-srt-fix-build-fail-when-used-the-libsrt-1.4.1.patch \ + file://0001-libavutil-include-assembly-with-full-path-from-sourc.patch \ " -SRC_URI[sha256sum] = "ad009240d46e307b4e03a213a0f49c11b650e445b1f8be0dda2a9212b34d2ffb" +SRC_URI[sha256sum] = "eadbad9e9ab30b25f5520fbfde99fae4a92a1ae3c0257a8d68569a4651e30e02" # Build fails when thumb is enabled: https://bugzilla.yoctoproject.org/show_bug.cgi?id=7717 -ARM_INSTRUCTION_SET_armv4 = "arm" -ARM_INSTRUCTION_SET_armv5 = "arm" -ARM_INSTRUCTION_SET_armv6 = "arm" +ARM_INSTRUCTION_SET:armv4 = "arm" +ARM_INSTRUCTION_SET:armv5 = "arm" +ARM_INSTRUCTION_SET:armv6 = "arm" # Should be API compatible with libav (which was a fork of ffmpeg) # libpostproc was previously packaged from a separate recipe @@ -43,7 +42,8 @@ DEPENDS = "nasm-native" inherit autotools pkgconfig PACKAGECONFIG ??= "avdevice avfilter avcodec avformat swresample swscale postproc avresample \ - alsa bzlib gpl lzma theora x264 zlib \ + alsa bzlib lzma pic pthreads shared theora zlib \ + ${@bb.utils.contains('AVAILTUNES', 'mips32r2', 'mips32r2', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'xv xcb', '', d)}" # libraries to build in addition to avutil @@ -64,6 +64,7 @@ PACKAGECONFIG[fdk-aac] = "--enable-libfdk-aac --enable-nonfree,--disable-libfdk- PACKAGECONFIG[gpl] = "--enable-gpl,--disable-gpl" PACKAGECONFIG[gsm] = "--enable-libgsm,--disable-libgsm,libgsm" PACKAGECONFIG[jack] = "--enable-indev=jack,--disable-indev=jack,jack" +PACKAGECONFIG[libopus] = "--enable-libopus,--disable-libopus,libopus" PACKAGECONFIG[libvorbis] = "--enable-libvorbis,--disable-libvorbis,libvorbis" PACKAGECONFIG[lzma] = "--enable-lzma,--disable-lzma,xz" PACKAGECONFIG[mfx] = "--enable-libmfx,--disable-libmfx,intel-mediasdk" @@ -82,6 +83,13 @@ PACKAGECONFIG[xcb] = "--enable-libxcb,--disable-libxcb,libxcb" PACKAGECONFIG[xv] = "--enable-outdev=xv,--disable-outdev=xv,libxv" PACKAGECONFIG[zlib] = "--enable-zlib,--disable-zlib,zlib" +# other configuration options +PACKAGECONFIG[mips32r2] = ",--disable-mipsdsp --disable-mipsdspr2" +PACKAGECONFIG[pic] = "--enable-pic" +PACKAGECONFIG[pthreads] = "--enable-pthreads,--disable-pthreads" +PACKAGECONFIG[shared] = "--enable-shared" +PACKAGECONFIG[strip] = ",--disable-stripping" + # Check codecs that require --enable-nonfree USE_NONFREE = "${@bb.utils.contains_any('PACKAGECONFIG', [ 'openssl' ], 'yes', '', d)}" @@ -92,37 +100,43 @@ def cpu(d): return 'generic' EXTRA_OECONF = " \ - --disable-stripping \ - --enable-pic \ - --enable-shared \ - --enable-pthreads \ ${@bb.utils.contains('USE_NONFREE', 'yes', '--enable-nonfree', '', d)} \ \ --cross-prefix=${TARGET_PREFIX} \ \ - --ld="${CCLD}" \ - --cc="${CC}" \ - --cxx="${CXX}" \ + --ld='${CCLD}' \ + --cc='${CC}' \ + --cxx='${CXX}' \ --arch=${TARGET_ARCH} \ - --target-os="linux" \ + --target-os='linux' \ --enable-cross-compile \ - --extra-cflags="${CFLAGS} ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" \ - --extra-ldflags="${LDFLAGS}" \ - --sysroot="${STAGING_DIR_TARGET}" \ + --extra-cflags='${CFLAGS} ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}' \ + --extra-ldflags='${LDFLAGS}' \ + --sysroot='${STAGING_DIR_TARGET}' \ ${EXTRA_FFCONF} \ --libdir=${libdir} \ --shlibdir=${libdir} \ --datadir=${datadir}/ffmpeg \ - ${@bb.utils.contains('AVAILTUNES', 'mips32r2', '', '--disable-mipsdsp --disable-mipsdspr2', d)} \ --cpu=${@cpu(d)} \ --pkg-config=pkg-config \ " -EXTRA_OECONF_append_linux-gnux32 = " --disable-asm" +EXTRA_OECONF:append:linux-gnux32 = " --disable-asm" + +EXTRA_OECONF += "${@bb.utils.contains('TUNE_FEATURES', 'mipsisa64r6', '--disable-mips64r2 --disable-mips32r2', '', d)}" +EXTRA_OECONF += "${@bb.utils.contains('TUNE_FEATURES', 'mipsisa64r2', '--disable-mips64r6 --disable-mips32r6', '', d)}" +EXTRA_OECONF += "${@bb.utils.contains('TUNE_FEATURES', 'mips32r2', '--disable-mips64r6 --disable-mips32r6', '', d)}" +EXTRA_OECONF += "${@bb.utils.contains('TUNE_FEATURES', 'mips32r6', '--disable-mips64r2 --disable-mips32r2', '', d)}" +EXTRA_OECONF:append:mips = " --extra-libs=-latomic --disable-mips32r5 --disable-mipsdsp --disable-mipsdspr2 \ + --disable-loongson2 --disable-loongson3 --disable-mmi --disable-msa --disable-msa2" +EXTRA_OECONF:append:riscv32 = " --extra-libs=-latomic" +EXTRA_OECONF:append:armv5 = " --extra-libs=-latomic" +EXTRA_OECONF:append:powerpc = " --extra-libs=-latomic" + # gold crashes on x86, another solution is to --disable-asm but thats more hacky # ld.gold: internal error in relocate_section, at ../../gold/i386.cc:3684 -LDFLAGS_append_x86 = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}" +LDFLAGS:append:x86 = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}" EXTRA_OEMAKE = "V=1" @@ -130,6 +144,11 @@ do_configure() { ${S}/configure ${EXTRA_OECONF} } +# patch out build host paths for reproducibility +do_compile:prepend:class-target() { + sed -i -e "s,${WORKDIR},,g" ${B}/config.h +} + PACKAGES =+ "libavcodec \ libavdevice \ libavfilter \ @@ -140,23 +159,23 @@ PACKAGES =+ "libavcodec \ libswresample \ libswscale" -FILES_libavcodec = "${libdir}/libavcodec${SOLIBS}" -FILES_libavdevice = "${libdir}/libavdevice${SOLIBS}" -FILES_libavfilter = "${libdir}/libavfilter${SOLIBS}" -FILES_libavformat = "${libdir}/libavformat${SOLIBS}" -FILES_libavresample = "${libdir}/libavresample${SOLIBS}" -FILES_libavutil = "${libdir}/libavutil${SOLIBS}" -FILES_libpostproc = "${libdir}/libpostproc${SOLIBS}" -FILES_libswresample = "${libdir}/libswresample${SOLIBS}" -FILES_libswscale = "${libdir}/libswscale${SOLIBS}" +FILES:libavcodec = "${libdir}/libavcodec${SOLIBS}" +FILES:libavdevice = "${libdir}/libavdevice${SOLIBS}" +FILES:libavfilter = "${libdir}/libavfilter${SOLIBS}" +FILES:libavformat = "${libdir}/libavformat${SOLIBS}" +FILES:libavresample = "${libdir}/libavresample${SOLIBS}" +FILES:libavutil = "${libdir}/libavutil${SOLIBS}" +FILES:libpostproc = "${libdir}/libpostproc${SOLIBS}" +FILES:libswresample = "${libdir}/libswresample${SOLIBS}" +FILES:libswscale = "${libdir}/libswscale${SOLIBS}" # ffmpeg disables PIC on some platforms (e.g. x86-32) -INSANE_SKIP_${MLPREFIX}libavcodec = "textrel" -INSANE_SKIP_${MLPREFIX}libavdevice = "textrel" -INSANE_SKIP_${MLPREFIX}libavfilter = "textrel" -INSANE_SKIP_${MLPREFIX}libavformat = "textrel" -INSANE_SKIP_${MLPREFIX}libavutil = "textrel" -INSANE_SKIP_${MLPREFIX}libavresample = "textrel" -INSANE_SKIP_${MLPREFIX}libswscale = "textrel" -INSANE_SKIP_${MLPREFIX}libswresample = "textrel" -INSANE_SKIP_${MLPREFIX}libpostproc = "textrel" +INSANE_SKIP:${MLPREFIX}libavcodec = "textrel" +INSANE_SKIP:${MLPREFIX}libavdevice = "textrel" +INSANE_SKIP:${MLPREFIX}libavfilter = "textrel" +INSANE_SKIP:${MLPREFIX}libavformat = "textrel" +INSANE_SKIP:${MLPREFIX}libavutil = "textrel" +INSANE_SKIP:${MLPREFIX}libavresample = "textrel" +INSANE_SKIP:${MLPREFIX}libswscale = "textrel" +INSANE_SKIP:${MLPREFIX}libswresample = "textrel" +INSANE_SKIP:${MLPREFIX}libpostproc = "textrel" diff --git a/meta/recipes-multimedia/flac/flac_1.3.3.bb b/meta/recipes-multimedia/flac/flac_1.3.3.bb index cb6692aedf..c796cacd2c 100644 --- a/meta/recipes-multimedia/flac/flac_1.3.3.bb +++ b/meta/recipes-multimedia/flac/flac_1.3.3.bb @@ -3,7 +3,7 @@ DESCRIPTION = "FLAC stands for Free Lossless Audio Codec, a lossless audio compr HOMEPAGE = "https://xiph.org/flac/" BUGTRACKER = "http://sourceforge.net/p/flac/bugs/" SECTION = "libs" -LICENSE = "GFDL-1.2 & GPLv2+ & LGPLv2.1+ & BSD" +LICENSE = "GFDL-1.2 & GPLv2+ & LGPLv2.1+ & BSD-3-Clause" LIC_FILES_CHKSUM = "file://COPYING.FDL;md5=ad1419ecc56e060eccf8184a87c4285f \ file://src/Makefile.am;beginline=1;endline=17;md5=09501c864f89dfc7ead65553129817ca \ file://COPYING.GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ @@ -38,9 +38,9 @@ EXTRA_OECONF += "${@bb.utils.contains("TUNE_FEATURES", "core2", " --enable-sse", EXTRA_OECONF += "${@bb.utils.contains("TUNE_FEATURES", "corei7", " --enable-sse", "", d)}" PACKAGES += "libflac libflac++ liboggflac liboggflac++" -FILES_${PN} = "${bindir}/*" -FILES_libflac = "${libdir}/libFLAC.so.*" -FILES_libflac++ = "${libdir}/libFLAC++.so.*" -FILES_liboggflac = "${libdir}/libOggFLAC.so.*" -FILES_liboggflac++ = "${libdir}/libOggFLAC++.so.*" +FILES:${PN} = "${bindir}/*" +FILES:libflac = "${libdir}/libFLAC.so.*" +FILES:libflac++ = "${libdir}/libFLAC++.so.*" +FILES:liboggflac = "${libdir}/libOggFLAC.so.*" +FILES:liboggflac++ = "${libdir}/libOggFLAC++.so.*" diff --git a/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.1.bb b/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.5.bb index 2e09ef9c25..1b46b89cb9 100644 --- a/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.1.bb +++ b/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.5.bb @@ -12,12 +12,12 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gst-devtools/gst-devtools-${PV} file://0001-connect-has-a-different-signature-on-musl.patch \ " -SRC_URI[sha256sum] = "712212babd2238233d55beecfc0fe1ea8db18e8807ac6ab05a64505b2c7ab0df" +SRC_URI[sha256sum] = "fecffc86447daf5c2a06843c757a991d745caa2069446a0d746e99b13f7cb079" DEPENDS = "json-glib glib-2.0 glib-2.0-native gstreamer1.0 gstreamer1.0-plugins-base" -RRECOMMENDS_${PN} = "git" +RRECOMMENDS:${PN} = "git" -FILES_${PN} += "${datadir}/gstreamer-1.0/* ${libdir}/gst-validate-launcher/* ${libdir}/gstreamer-1.0/*" +FILES:${PN} += "${datadir}/gstreamer-1.0/* ${libdir}/gst-validate-launcher/* ${libdir}/gstreamer-1.0/*" inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection @@ -38,5 +38,12 @@ EXTRA_OEMESON += " \ ${@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/meta/recipes-multimedia/gstreamer/gst-examples_1.18.1.bb b/meta/recipes-multimedia/gstreamer/gst-examples_1.18.5.bb index 048b45a08f..a720bb73ff 100644 --- a/meta/recipes-multimedia/gstreamer/gst-examples_1.18.1.bb +++ b/meta/recipes-multimedia/gstreamer/gst-examples_1.18.5.bb @@ -1,4 +1,7 @@ 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" @@ -9,7 +12,7 @@ SRC_URI = "git://gitlab.freedesktop.org/gstreamer/gst-examples.git;protocol=http file://gst-player.desktop \ " -SRCREV = "998ee69af18a5928759dbe17fffbceebbc8d72d0" +SRCREV = "fe9a365dc0f1ff632abcfe3322ac5527a2cf30a0" S = "${WORKDIR}/git" @@ -19,14 +22,14 @@ UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)" ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" -do_install_append() { +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 \ +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" +RPROVIDES:${PN} += "gst-player gst-player-bin" diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.1.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.5.bb index 38bbffafa4..a77ec62759 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.1.bb +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.5.bb @@ -1,4 +1,6 @@ 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" @@ -10,7 +12,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d \ " SRC_URI = "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${PV}.tar.xz" -SRC_URI[sha256sum] = "39a717bc2613efbbba19df3cf5cacff0987471fc8281ba2c5dcdeaded79c2ed8" +SRC_URI[sha256sum] = "822e008a910e9dd13aedbdd8dc63fedef4040c0ee2e927bab3112e9de693a548" S = "${WORKDIR}/gst-libav-${PV}" @@ -18,5 +20,5 @@ 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" +FILES:${PN} += "${libdir}/gstreamer-1.0/*.so" +FILES:${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a" diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bb index 016e176707..57a9adbaec 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bb +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bb @@ -18,13 +18,13 @@ PACKAGES = "\ gstreamer1.0-meta-debug \ gstreamer1.0-meta-video" -ALLOW_EMPTY_gstreamer1.0-meta-base = "1" -ALLOW_EMPTY_gstreamer1.0-meta-x11-base = "1" -ALLOW_EMPTY_gstreamer1.0-meta-audio = "1" -ALLOW_EMPTY_gstreamer1.0-meta-debug = "1" -ALLOW_EMPTY_gstreamer1.0-meta-video = "1" +ALLOW_EMPTY:gstreamer1.0-meta-base = "1" +ALLOW_EMPTY:gstreamer1.0-meta-x11-base = "1" +ALLOW_EMPTY:gstreamer1.0-meta-audio = "1" +ALLOW_EMPTY:gstreamer1.0-meta-debug = "1" +ALLOW_EMPTY:gstreamer1.0-meta-video = "1" -RDEPENDS_gstreamer1.0-meta-base = "\ +RDEPENDS:gstreamer1.0-meta-base = "\ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gstreamer1.0-meta-x11-base', '', d)} \ gstreamer1.0 \ gstreamer1.0-plugins-base-playback \ @@ -39,11 +39,11 @@ RDEPENDS_gstreamer1.0-meta-base = "\ gstreamer1.0-plugins-good-autodetect \ gstreamer1.0-plugins-good-soup" -RRECOMMENDS_gstreamer1.0-meta-x11-base = "\ +RRECOMMENDS:gstreamer1.0-meta-x11-base = "\ gstreamer1.0-plugins-base-ximagesink \ gstreamer1.0-plugins-base-xvimagesink" -RDEPENDS_gstreamer1.0-meta-audio = "\ +RDEPENDS:gstreamer1.0-meta-audio = "\ gstreamer1.0-meta-base \ gstreamer1.0-plugins-base-vorbis \ gstreamer1.0-plugins-base-ogg \ @@ -51,18 +51,18 @@ RDEPENDS_gstreamer1.0-meta-audio = "\ gstreamer1.0-plugins-good-flac \ ${COMMERCIAL_AUDIO_PLUGINS}" -RDEPENDS_gstreamer1.0-meta-debug = "\ +RDEPENDS:gstreamer1.0-meta-debug = "\ gstreamer1.0-meta-base \ gstreamer1.0-plugins-good-debug \ gstreamer1.0-plugins-base-audiotestsrc \ gstreamer1.0-plugins-base-videotestsrc" -RDEPENDS_gstreamer1.0-meta-video = "\ +RDEPENDS:gstreamer1.0-meta-video = "\ gstreamer1.0-meta-base \ gstreamer1.0-plugins-good-avi \ gstreamer1.0-plugins-good-matroska \ gstreamer1.0-plugins-base-theora \ ${COMMERCIAL_VIDEO_PLUGINS}" -RRECOMMENDS_gstreamer1.0-meta-video = "\ +RRECOMMENDS:gstreamer1.0-meta-video = "\ gstreamer1.0-meta-audio" diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.1.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.5.bb index 513d66f9fc..b2c1eb3ea0 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.1.bb +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.5.bb @@ -1,4 +1,5 @@ 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" @@ -9,7 +10,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \ SRC_URI = "https://gstreamer.freedesktop.org/src/gst-omx/gst-omx-${PV}.tar.xz" -SRC_URI[sha256sum] = "42a8e0f9518b94655981ede441638f9f9395f4b1b9a4b329f068ee793975a965" +SRC_URI[sha256sum] = "2cd457c1e8deb1a9b39608048fb36a44f6c9a864a6b6115b1453a32e7be93b42" S = "${WORKDIR}/gst-omx-${PV}" @@ -39,8 +40,8 @@ set_omx_core_name() { } do_install[postfuncs] += " set_omx_core_name " -FILES_${PN} += "${libdir}/gstreamer-1.0/*.so" -FILES_${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a" +FILES:${PN} += "${libdir}/gstreamer-1.0/*.so" +FILES:${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a" VIRTUAL-RUNTIME_libomxil ?= "libomxil" -RDEPENDS_${PN} = "${VIRTUAL-RUNTIME_libomxil}" +RDEPENDS:${PN} = "${VIRTUAL-RUNTIME_libomxil}" diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0005-msdk-fix-includedir-path.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0005-msdk-fix-includedir-path.patch new file mode 100644 index 0000000000..cb3bb7d361 --- /dev/null +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0005-msdk-fix-includedir-path.patch @@ -0,0 +1,31 @@ +From 1f00d5026118ebd48e4ccf83d32d67155c4e7f60 Mon Sep 17 00:00:00 2001 +From: Naveen Saini <naveen.kumar.saini@intel.com> +Date: Wed, 30 Dec 2020 16:37:47 +0800 +Subject: [PATCH] msdk: fix includedir path + +In cross compilation, need to prepend PKG_CONFIG_SYSROOT_DIR to the dir path. + +Upstream-Status: Inappropriate [OE-specific] + +Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com> +--- + sys/msdk/meson.build | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/sys/msdk/meson.build b/sys/msdk/meson.build +index 6346c9451..068f38548 100644 +--- a/sys/msdk/meson.build ++++ b/sys/msdk/meson.build +@@ -40,7 +40,9 @@ endif + + 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 + diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.1.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.5.bb index ebd8c5a27d..f90dff693d 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.1.bb +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.5.bb @@ -1,18 +1,27 @@ 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] = "c195978c85d97406c05eb9d43ac54b9ab35eda6ffdae32b3ed597b8f1743c1b2" +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 @@ -20,13 +29,15 @@ inherit gobject-introspection PACKAGECONFIG ??= " \ ${GSTREAMER_ORC} \ ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'directfb vulkan', 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 rsvg sbc smoothstreaming sndfile \ - ttml uvch264 webp \ + 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" @@ -39,7 +50,11 @@ 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-crypto=nettle,-Dhls=disabled,nettle" +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. @@ -64,7 +79,7 @@ PACKAGECONFIG[resindvd] = "-Dresindvd=enabled,-Dresindvd=disabled,libdvdr 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,usrsctp" +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" @@ -72,6 +87,7 @@ 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" @@ -81,14 +97,8 @@ 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[v4l2codecs] = "-D-Dv4l2codecs=enabled,-Dv4l2codecs=disabled,libgudev" - -# these plugins currently have no corresponding library in OE-core or meta-openembedded: -# aom androidmedia applemedia bs2b chromaprint d3dvideosink -# directsound dts fdkaac gme gsm iq kate ladspa lv2 mpeg2enc -# mplex musepack nvdec nvenc ofa openexr openni2 opensles -# soundtouch spandsp teletext wasapi wildmidi winks -# winscreencap wpe x265 +PACKAGECONFIG[x11] = "-Dx11=enabled,-Dx11=disabled,libxcb libxkbcommon" +PACKAGECONFIG[x265] = "-Dx265=enabled,-Dx265=disabled,x265" EXTRA_OEMESON += " \ -Ddoc=disabled \ @@ -96,9 +106,8 @@ EXTRA_OEMESON += " \ -Ddvb=enabled \ -Dfbdev=enabled \ -Dipcpipeline=enabled \ - -Dnetsim=enabled \ -Dshm=enabled \ - -Daom=disabled \ + -Dtranscode=enabled \ -Dandroidmedia=disabled \ -Dapplemedia=disabled \ -Davtp=disabled \ @@ -137,17 +146,15 @@ EXTRA_OEMESON += " \ -Dwinks=disabled \ -Dwinscreencap=disabled \ -Dwpe=disabled \ - -Dx265=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" +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/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.1.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.5.bb index 1b2bd4fe14..180241828f 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.1.bb +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.5.bb @@ -1,5 +1,8 @@ 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" @@ -9,7 +12,7 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-ba file://0002-ssaparse-enhance-SSA-text-lines-parsing.patch \ file://0004-glimagesink-Downrank-to-marginal.patch \ " -SRC_URI[sha256sum] = "1ba654d7de30f7284b4c7071b32f881b609733ce02ab6d9d9ea29386a036c641" +SRC_URI[sha256sum] = "960b7af4585700db0fdd5b843554e11e2564fed9e061f591fae88a7be6446fa3" S = "${WORKDIR}/gst-plugins-base-${PV}" @@ -40,6 +43,7 @@ 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" @@ -62,23 +66,19 @@ PACKAGECONFIG[egl] = ",,virtual/egl" 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_append = "${@bb.utils.contains('PACKAGECONFIG', 'x11', ' x11', '', d)}" -OPENGL_WINSYS_append = "${@bb.utils.contains('PACKAGECONFIG', 'gbm', ' gbm', '', d)}" -OPENGL_WINSYS_append = "${@bb.utils.contains('PACKAGECONFIG', 'wayland', ' wayland', '', d)}" -OPENGL_WINSYS_append = "${@bb.utils.contains('PACKAGECONFIG', 'dispmanx', ' dispmanx', '', d)}" -OPENGL_WINSYS_append = "${@bb.utils.contains('PACKAGECONFIG', 'egl', ' egl', '', d)}" +OPENGL_WINSYS = "${@bb.utils.filter('PACKAGECONFIG', 'x11 gbm wayland dispmanx egl viv-fb', d)}" EXTRA_OEMESON += " \ -Ddoc=disabled \ - -Dgl-graphene=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" +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 = [] diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc index dba96e0f6e..54dd92873f 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc @@ -21,7 +21,7 @@ GSTREAMER_ORC ?= "orc" # workaround to disable orc on mips to fix the build failure # {standard input}: Assembler messages: # {standard input}:46587: Error: branch out of range -GSTREAMER_ORC_mips = "" +GSTREAMER_ORC:mips = "" PACKAGECONFIG[orc] = "-Dorc=enabled,-Dorc=disabled,orc orc-native" # TODO: put this in a gettext.bbclass patch (with variables to allow for @@ -45,6 +45,3 @@ EXTRA_OEMESON += " \ GIR_MESON_ENABLE_FLAG = "enabled" GIR_MESON_DISABLE_FLAG = "disabled" - -# Dynamically generate packages for all enabled plugins -PACKAGES_DYNAMIC = "^${PN}-.*" diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0001-rpicamsrc-add-vchostif-library-as-it-is-required-to-.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0001-rpicamsrc-add-vchostif-library-as-it-is-required-to-.patch deleted file mode 100644 index 685ee08e50..0000000000 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good/0001-rpicamsrc-add-vchostif-library-as-it-is-required-to-.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 3ec4fe5507a39383b161f1ab7687acb4a57c32f8 Mon Sep 17 00:00:00 2001 -From: Jose Quaresma <quaresma.jose@gmail.com> -Date: Sun, 15 Nov 2020 11:30:07 +0000 -Subject: [PATCH] rpicamsrc: add vchostif library as it is required to build - successful - -fix: undefined reference to `vc_gencmd' -/usr/src/debug/gstreamer1.0-plugins-good/1.18.1-r0/build/../gst-plugins-good-1.18.1/sys/rpicamsrc/RaspiCamControl.c:1440: undefined reference to `vc_gencmd' - -Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/818] - -Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com> ---- - sys/rpicamsrc/meson.build | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/sys/rpicamsrc/meson.build b/sys/rpicamsrc/meson.build -index dc18a8345..48b2ceb66 100644 ---- a/sys/rpicamsrc/meson.build -+++ b/sys/rpicamsrc/meson.build -@@ -34,7 +34,7 @@ if not cc.has_header('bcm_host.h', args: rpi_inc_args) - endif - - mmal_deps = [] --foreach rpi_lib : ['mmal_core', 'mmal_util', 'mmal_vc_client', 'vcos', 'bcm_host'] -+foreach rpi_lib : ['mmal_core', 'mmal_util', 'mmal_vc_client', 'vcos', 'vchostif', 'bcm_host'] - l = cc.find_library(rpi_lib, dirs: rpi_lib_path, required: false) - if not l.found() - if get_option('rpicamsrc').enabled() --- -2.29.2 - diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.1.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.5.bb index 77e1333ddc..ade935df9e 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.1.bb +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.5.bb @@ -1,11 +1,14 @@ 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 \ - file://0001-rpicamsrc-add-vchostif-library-as-it-is-required-to-.patch \ " -SRC_URI[sha256sum] = "e210e91a5590ecb6accc9d06c949a58ca6897d8edb3b3d55828e424c624f626c" +SRC_URI[sha256sum] = "3aaeeea7765fbf8801acce4a503a9b05f73f04e8a35352e9d00232cfd555796b" S = "${WORKDIR}/gst-plugins-good-${PV}" @@ -14,8 +17,8 @@ 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" +RPROVIDES:${PN}-pulseaudio += "${PN}-pulse" +RPROVIDES:${PN}-soup += "${PN}-souphttpsrc" PACKAGECONFIG ??= " \ ${GSTREAMER_ORC} \ @@ -70,4 +73,4 @@ EXTRA_OEMESON += " \ -Dwaveform=disabled \ " -FILES_${PN}-equalizer += "${datadir}/gstreamer-1.0/presets/*.prs" +FILES:${PN}-equalizer += "${datadir}/gstreamer-1.0/presets/*.prs" diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc index 9a7a1b6afe..e906053ac0 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc @@ -6,8 +6,11 @@ # This is mainly used by the gstreamer1.0-plugins-* plugin set recipes, # but can be used in any recipe that produces GStreamer plugins. -PACKAGESPLITFUNCS_prepend = " split_gstreamer10_packages " -PACKAGESPLITFUNCS_append = " set_gstreamer10_metapkg_rdepends " +# Dynamically generate packages for all enabled plugins +PACKAGES_DYNAMIC = "^${PN}-.* ^libgst.*" + +PACKAGESPLITFUNCS:prepend = " split_gstreamer10_packages " +PACKAGESPLITFUNCS:append = " set_gstreamer10_metapkg_rdepends " python split_gstreamer10_packages () { gst_libdir = d.expand('${libdir}/gstreamer-1.0') @@ -33,8 +36,8 @@ python set_gstreamer10_metapkg_rdepends () { pn = d.getVar('PN') metapkg = pn + '-meta' - d.setVar('ALLOW_EMPTY_' + metapkg, "1") - d.setVar('FILES_' + metapkg, "") + d.setVar('ALLOW_EMPTY:' + metapkg, "1") + d.setVar('FILES:' + metapkg, "") blacklist = [ pn, pn + '-meta' ] metapkg_rdepends = [] pkgdest = d.getVar('PKGDEST') @@ -51,20 +54,20 @@ python set_gstreamer10_metapkg_rdepends () { is_empty = len(dir_contents) == 0 if not is_empty: metapkg_rdepends.append(pkg) - d.setVar('RDEPENDS_' + metapkg, ' '.join(metapkg_rdepends)) - d.setVar('DESCRIPTION_' + metapkg, pn + ' meta package') + d.setVar('RDEPENDS:' + metapkg, ' '.join(metapkg_rdepends)) + d.setVar('DESCRIPTION:' + metapkg, pn + ' meta package') } # each plugin-dev depends on PN-dev, plugin-staticdev on PN-staticdev # so we need them even when empty (like in gst-plugins-good case) -ALLOW_EMPTY_${PN} = "1" -ALLOW_EMPTY_${PN}-dev = "1" -ALLOW_EMPTY_${PN}-staticdev = "1" +ALLOW_EMPTY:${PN} = "1" +ALLOW_EMPTY:${PN}-dev = "1" +ALLOW_EMPTY:${PN}-staticdev = "1" PACKAGES += "${PN}-apps ${PN}-meta ${PN}-glib" -FILES_${PN} = "" -FILES_${PN}-apps = "${bindir}" -FILES_${PN}-glib = "${datadir}/glib-2.0" +FILES:${PN} = "" +FILES:${PN}-apps = "${bindir}" +FILES:${PN}-glib = "${datadir}/glib-2.0" -RRECOMMENDS_${PN} += "${PN}-meta" +RRECOMMENDS:${PN} += "${PN}-meta" diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.1.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.5.bb index 614ef8d740..9777aaee19 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.1.bb +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.5.bb @@ -1,5 +1,9 @@ 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" @@ -9,7 +13,7 @@ LICENSE_FLAGS = "commercial" SRC_URI = " \ https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-${PV}.tar.xz \ " -SRC_URI[sha256sum] = "18cd6cb829eb9611ca63cbcbf46aca0f0de1dd28b2df18caa2834326a75ff725" +SRC_URI[sha256sum] = "df32803e98f8a9979373fa2ca7e05e62f977b1097576d3a80619d9f5c69f66d9" S = "${WORKDIR}/gst-plugins-ugly-${PV}" @@ -35,5 +39,5 @@ EXTRA_OEMESON += " \ -Dsidplay=disabled \ " -FILES_${PN}-amrnb += "${datadir}/gstreamer-1.0/presets/GstAmrnbEnc.prs" -FILES_${PN}-x264 += "${datadir}/gstreamer-1.0/presets/GstX264Enc.prs" +FILES:${PN}-amrnb += "${datadir}/gstreamer-1.0/presets/GstAmrnbEnc.prs" +FILES:${PN}-x264 += "${datadir}/gstreamer-1.0/presets/GstX264Enc.prs" diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-ptest.inc b/meta/recipes-multimedia/gstreamer/gstreamer1.0-ptest.inc deleted file mode 100644 index b698067041..0000000000 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-ptest.inc +++ /dev/null @@ -1,23 +0,0 @@ -inherit ptest-gnome - -TEST_FILES_PATH = "${datadir}/installed-tests/gstreamer-1.0/test-files" -RUN_PTEST_FILE = "${D}${PTEST_PATH}/run-ptest" - -EXTRA_OEMESON += "-Dtest-files-path=${TEST_FILES_PATH}" - -GST_TEST_SUITE_NAME ?= "gstreamer-1.0" - -# Using do_install_ptest_base instead of do_install_ptest, since -# the default do_install_ptest_base is hardcoded to expect Makefiles. -do_install_ptest_base() { - # Generate run-ptest file - echo "#!/usr/bin/env sh" > "${RUN_PTEST_FILE}" - echo "gnome-desktop-testing-runner ${GST_TEST_SUITE_NAME}" >> "${RUN_PTEST_FILE}" - chmod 0755 "${RUN_PTEST_FILE}" - - # Install additional files required by tests - if [ -d "${S}/tests/files" ] ; then - install -d "${D}/${TEST_FILES_PATH}" - install -m 0644 "${S}/tests/files"/* "${D}/${TEST_FILES_PATH}" - fi -} diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.1.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.5.bb index c0c5d271d0..045aea4409 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.1.bb +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.5.bb @@ -1,4 +1,6 @@ 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" @@ -6,17 +8,19 @@ 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] = "42b289422f7ab32757670848cf2245c5a8a8b08a665a9cab65ded8d69364f6f6" +SRC_URI[sha256sum] = "533685871305959d6db89507f3b3aa6c765c2f2b0dacdc32c5a6543e72e5bc52" DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject" -RDEPENDS_${PN} += "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" -UNKNOWN_CONFIGURE_WHITELIST_append = " introspection" +GIR_MESON_OPTION = "" inherit meson pkgconfig distutils3-base upstream-version-is-even gobject-introspection features_check diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.1.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.5.bb index 30534c9782..50426ad46d 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.1.bb +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.5.bb @@ -10,7 +10,7 @@ PNREAL = "gst-rtsp-server" SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz" -SRC_URI[sha256sum] = "10a82865c3d199e66731017ca4b120bad071df9889e60cfe4dd6c49d953ef754" +SRC_URI[sha256sum] = "04d63bf48816c6f41c73f6de0f912a7cef0aab39c44162a7bcece1923dfc9d1f" S = "${WORKDIR}/${PNREAL}-${PV}" diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.1.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.5.bb index acf5598a62..9a68a3fadf 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.1.bb +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.5.bb @@ -1,4 +1,5 @@ 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'." @@ -10,7 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c" SRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-${PV}.tar.xz" -SRC_URI[sha256sum] = "400d3c42810b50b4566df03f37319a6bdd758f969560c40147e7d9a3b0e8a6ea" +SRC_URI[sha256sum] = "4a460fb95559f41444eb24864ad2d9e37922b6eea941510310319fc3e0ba727b" S = "${WORKDIR}/${REALPN}-${PV}" DEPENDS = "libva gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad" @@ -46,7 +47,7 @@ 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}/*" +FILES:${PN} += "${libdir}/gstreamer-*/*.so" +FILES:${PN}-dbg += "${libdir}/gstreamer-*/.debug" +FILES:${PN}-dev += "${libdir}/gstreamer-*/*.a" +FILES:${PN}-tests = "${bindir}/*" diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch index 17f8a0beb7..23ebd5c600 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch @@ -1,27 +1,44 @@ -From f700975f514758a4a7582c2c972fa54ecfca3302 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin <alex.kanavin@gmail.com> -Date: Thu, 25 Jan 2018 17:55:02 +0200 -Subject: [PATCH 1/4] gst/gstpluginloader.c: when env var is set do not fall - through to system plugin scanner +From fd8f49dba8c09d47425da80f5faab3bfa4a7c962 Mon Sep 17 00:00:00 2001 +From: Jose Quaresma <quaresma.jose@gmail.com> +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. -written by: Alexander Kanavin <alex.kanavin@gmail.com> +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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/669> + +Upstream-Status: Backport [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/9f958058697e6fbf5bde325228034572331d1a3a] -Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/669] Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com> --- - gst/gstpluginloader.c | 4 +--- - 1 file changed, 1 insertion(+), 3 deletions(-) + gst/gstpluginloader.c | 15 +++++++-------- + 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/gst/gstpluginloader.c b/gst/gstpluginloader.c -index d1e404d..2e00c3c 100644 +index d1e404d98..c626bf263 100644 --- a/gst/gstpluginloader.c +++ b/gst/gstpluginloader.c -@@ -475,9 +475,7 @@ gst_plugin_loader_spawn (GstPluginLoader * loader) +@@ -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); @@ -29,9 +46,24 @@ index d1e404d..2e00c3c 100644 - - 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.28.0 +2.29.2 diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst_private.h-increse-padding-in-struct-_GstClockEnt.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst_private.h-increse-padding-in-struct-_GstClockEnt.patch deleted file mode 100644 index a2d215d72d..0000000000 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst_private.h-increse-padding-in-struct-_GstClockEnt.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 4449246a8d788e71dfe4679fba95955cec5894c1 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Tue, 3 Nov 2020 22:58:26 -0800 -Subject: [PATCH] gst_private.h: increse padding in struct _GstClockEntryImpl - -When compiling for 32bit architectures with 64bit time_t e.g. riscv32, -the static assert that the GstClockEntryImpl smaller or -equal to the struct _GstClockEntryImpl triggered. -(they were 12bytes off). - -To fix this, the padding is increased by 8 bytes (on 32bit). - -Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/694] -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - gst/gst_private.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/gst/gst_private.h b/gst/gst_private.h -index a8897e1..8252ede 100644 ---- a/gst/gst_private.h -+++ b/gst/gst_private.h -@@ -522,7 +522,7 @@ struct _GstClockEntryImpl - GstClockEntry entry; - GWeakRef clock; - GDestroyNotify destroy_entry; -- gpointer padding[19]; /* padding for allowing e.g. systemclock -+ gpointer padding[21]; /* padding for allowing e.g. systemclock - * to add data in lieu of overridable - * virtual functions on the clock */ - }; --- -2.29.2 - diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-Remove-unused-valgrind-detection.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-Remove-unused-valgrind-detection.patch index c8bd58d471..5121044734 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-Remove-unused-valgrind-detection.patch +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0002-Remove-unused-valgrind-detection.patch @@ -1,7 +1,7 @@ -From 355dd938bfb2cd36d6c3c4ed59ba1dcafdc78d95 Mon Sep 17 00:00:00 2001 +From e275ba2bd854ac15a4b65a8f07d9f042021950da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= <tim@centricular.com> Date: Fri, 14 Aug 2020 16:38:26 +0100 -Subject: [PATCH 2/4] Remove unused valgrind detection +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 @@ -19,7 +19,7 @@ Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com> 3 files changed, 42 deletions(-) diff --git a/gst/gst_private.h b/gst/gst_private.h -index 1b0f02b..a8897e1 100644 +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 @@ -32,12 +32,12 @@ index 1b0f02b..a8897e1 100644 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 37987d3..15f522e 100644 +index eea1a21..d3035d6 100644 --- a/gst/gstinfo.c +++ b/gst/gstinfo.c -@@ -304,36 +304,6 @@ static gboolean pretty_tags = PRETTY_TAGS_DEFAULT; - static volatile gint G_GNUC_MAY_ALIAS __default_level = GST_LEVEL_DEFAULT; - static volatile gint G_GNUC_MAY_ALIAS __use_color = GST_DEBUG_COLOR_MODE_ON; +@@ -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 @@ -72,7 +72,7 @@ index 37987d3..15f522e 100644 static gchar * _replace_pattern_in_gst_debug_file_name (gchar * name, const char *token, guint val) -@@ -462,9 +432,6 @@ _priv_gst_debug_init (void) +@@ -463,9 +433,6 @@ _priv_gst_debug_init (void) _priv_GST_CAT_PROTECTION = _gst_debug_category_new ("GST_PROTECTION", 0, "protection"); @@ -82,7 +82,7 @@ index 37987d3..15f522e 100644 env = g_getenv ("GST_DEBUG_OPTIONS"); if (env != NULL) { if (strstr (env, "full_tags") || strstr (env, "full-tags")) -@@ -2502,12 +2469,6 @@ gst_debug_construct_win_color (guint colorinfo) +@@ -2505,12 +2472,6 @@ gst_debug_construct_win_color (guint colorinfo) return 0; } @@ -96,7 +96,7 @@ index 37987d3..15f522e 100644 _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 f95b4f7..143c043 100644 +index 82a1728..42ae617 100644 --- a/meson.build +++ b/meson.build @@ -200,7 +200,6 @@ check_headers = [ @@ -108,5 +108,5 @@ index f95b4f7..143c043 100644 'sys/uio.h', ] -- -2.28.0 +2.29.2 diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-meson-Add-option-for-installed-tests.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-meson-Add-option-for-installed-tests.patch deleted file mode 100644 index 1c0e1f8171..0000000000 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-meson-Add-option-for-installed-tests.patch +++ /dev/null @@ -1,257 +0,0 @@ -From 24867db22a5cc35e7643bc218e959ce56c306aca Mon Sep 17 00:00:00 2001 -From: Carlos Rafael Giani <crg7475@mailbox.org> -Date: Fri, 25 Oct 2019 00:06:26 +0200 -Subject: [PATCH 3/4] meson: Add option for installed tests - -This adds an option for producing installed versions of the unit tests. -These versions don't need meson to run (only a small shell script). This -makes it easier to run cross compiled tests on a target machine. - -Upstream-Status: Pending - -Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org> ---- - build-aux/gen-installed-test-desc.py | 18 ++++++ - build-aux/gen-installed-test-shscript.py | 25 ++++++++ - meson_options.txt | 2 + - tests/check/meson.build | 46 +++++++++++++- - tests/files/testfile | 80 ++++++++++++++++++++++++ - 5 files changed, 170 insertions(+), 1 deletion(-) - create mode 100644 build-aux/gen-installed-test-desc.py - create mode 100644 build-aux/gen-installed-test-shscript.py - create mode 100644 tests/files/testfile - -diff --git a/build-aux/gen-installed-test-desc.py b/build-aux/gen-installed-test-desc.py -new file mode 100644 -index 0000000..69e8a0f ---- /dev/null -+++ b/build-aux/gen-installed-test-desc.py -@@ -0,0 +1,18 @@ -+import sys -+import os -+import argparse -+ -+def write_template(filename, data): -+ with open(filename, 'w') as f: -+ f.write(data) -+ -+def build_template(testdir, testname): -+ return "[Test]\nType=session\nExec={}\n".format(os.path.join(testdir, testname)) -+ -+argparser = argparse.ArgumentParser(description='Generate installed-test data.') -+argparser.add_argument('--test-execdir', metavar='dir', required=True, help='Installed test directory') -+argparser.add_argument('--testname', metavar='name', required=True, help='Installed test name') -+argparser.add_argument('--output', metavar='file', required=True, help='Output file') -+args = argparser.parse_args() -+ -+write_template(args.output, build_template(args.test_execdir, args.testname)) -diff --git a/build-aux/gen-installed-test-shscript.py b/build-aux/gen-installed-test-shscript.py -new file mode 100644 -index 0000000..5da86fb ---- /dev/null -+++ b/build-aux/gen-installed-test-shscript.py -@@ -0,0 +1,25 @@ -+import sys -+import os -+import argparse -+ -+def write_template(filename, data): -+ with open(filename, 'w') as f: -+ f.write(data) -+ -+def build_template(testdir, testname): -+ return ''.join([ -+ "#!/usr/bin/env sh\n", -+ "export GST_STATE_IGNORE_ELEMENTS=''\n", -+ "export CK_DEFAULT_TIMEOUT=20\n", -+ "export GST_PLUGIN_LOADING_WHITELIST='gstreamer'\n", -+ "{}\n".format(os.path.join(testdir, testname)), -+ ]) -+ -+argparser = argparse.ArgumentParser(description='Generate installed-test data.') -+argparser.add_argument('--test-execdir', metavar='dir', required=True, help='Installed test directory') -+argparser.add_argument('--testname', metavar='name', required=True, help='Installed test name') -+argparser.add_argument('--output', metavar='file', required=True, help='Output file') -+args = argparser.parse_args() -+ -+write_template(args.output, build_template(args.test_execdir, args.testname)) -+os.chmod(args.output, 0o755) -diff --git a/meson_options.txt b/meson_options.txt -index 72c3997..346c423 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -15,6 +15,8 @@ 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') -+option('test-files-path', type : 'string', description : 'Path where to find test files') - - # Feature options - option('check', type : 'feature', value : 'auto', description : 'Build unit test libraries') -diff --git a/tests/check/meson.build b/tests/check/meson.build -index 372ea41..bb0dcfa 100644 ---- a/tests/check/meson.build -+++ b/tests/check/meson.build -@@ -120,11 +120,17 @@ if add_languages('cpp', native: false, required: false) - ] - endif - -+test_files_path = get_option('test-files-path') -+if test_files_path == '' -+ test_files_path = meson.current_source_dir() + '/../files' -+endif -+message('Using path "@0@" as the path to read test files from'.format(test_files_path)) -+ - 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"', -+ '-DTESTFILE="@0@"'.format(test_files_path + '/testfile'), - '-DGST_DISABLE_DEPRECATED', - ] - -@@ -138,6 +144,14 @@ endif - glib_deps = [gio_dep, gobject_dep, gmodule_dep, glib_dep] - gst_deps = [gst_dep, gst_base_dep, gst_check_dep, gst_net_dep, gst_controller_dep] - -+installed_tests_datadir = join_paths(prefix, get_option('datadir'), 'installed-tests', 'gstreamer-1.0') -+installed_tests_execdir = join_paths(prefix, libexecdir, 'installed-tests', 'gstreamer-1.0') -+installed_tests_enabled = get_option('installed-tests') -+ -+python = import('python').find_installation() -+gen_installed_test_desc = files('../../build-aux/gen-installed-test-desc.py') -+gen_installed_test_shscript = files('../../build-aux/gen-installed-test-shscript.py') -+ - foreach t : core_tests - fname = t[0] - test_name = fname.split('.')[0].underscorify() -@@ -151,8 +165,38 @@ 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 - ) - -+ if installed_tests_enabled -+ installed_test_shscript = test_name + '.sh' -+ shscript = custom_target (test_name + '_shscript', -+ output: installed_test_shscript, -+ command: [ -+ python, -+ gen_installed_test_shscript, -+ '--test-execdir=@0@'.format(installed_tests_execdir), -+ '--testname=@0@'.format(test_name), -+ '--output=@0@'.format(join_paths('@OUTDIR@', installed_test_shscript)), -+ ], -+ install: true, -+ install_dir: installed_tests_execdir) -+ -+ installed_test_desc = test_name + '.test' -+ data = custom_target(test_name + '_desc', -+ output: installed_test_desc, -+ command: [ -+ python, -+ gen_installed_test_desc, -+ '--test-execdir=@0@'.format(installed_tests_execdir), -+ '--testname=@0@'.format(installed_test_shscript), -+ '--output=@0@'.format(join_paths('@OUTDIR@', installed_test_desc)), -+ ], -+ install: true, -+ install_dir: installed_tests_datadir) -+ endif -+ - env = environment() - env.set('GST_PLUGIN_PATH_1_0', meson.build_root()) - env.set('GST_PLUGIN_SYSTEM_PATH_1_0', '') -diff --git a/tests/files/testfile b/tests/files/testfile -new file mode 100644 -index 0000000..89954e0 ---- /dev/null -+++ b/tests/files/testfile -@@ -0,0 +1,80 @@ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ -+................................................................................ --- -2.28.0 - diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch new file mode 100644 index 0000000000..e0e64e2c7a --- /dev/null +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch @@ -0,0 +1,32 @@ +From 1db36347d05d88835519368442e9aa89c64091ad Mon Sep 17 00:00:00 2001 +From: Seungha Yang <seungha@centricular.com> +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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/625> + +Upstream-Status: Backport [https://cgit.freedesktop.org/gstreamer/gstreamer/commit?id=f44312ae5d831438fcf8041162079c65321c588c] +Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> +--- + 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/meta/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-respect-the-idententaion-used-in-meson.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-respect-the-idententaion-used-in-meson.patch new file mode 100644 index 0000000000..6f571a12d8 --- /dev/null +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-respect-the-idententaion-used-in-meson.patch @@ -0,0 +1,36 @@ +From 122e5ac3dd16a461b6ae595605490c8f5d1c3a9d Mon Sep 17 00:00:00 2001 +From: Jose Quaresma <quaresma.jose@gmail.com> +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 <quaresma.jose@gmail.com> +--- + 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/meta/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-add-support-for-install-the-tests.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-add-support-for-install-the-tests.patch new file mode 100644 index 0000000000..b77fb5797f --- /dev/null +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-add-support-for-install-the-tests.patch @@ -0,0 +1,110 @@ +From c9e93c7a3e4d2773abef4f5e1464af24f36700b3 Mon Sep 17 00:00:00 2001 +From: Jose Quaresma <quaresma.jose@gmail.com> +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 <quaresma.jose@gmail.com> +--- + 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/meta/recipes-multimedia/gstreamer/gstreamer1.0/0006-tests-use-a-dictionaries-for-environment.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0006-tests-use-a-dictionaries-for-environment.patch new file mode 100644 index 0000000000..46813cec3d --- /dev/null +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0006-tests-use-a-dictionaries-for-environment.patch @@ -0,0 +1,48 @@ +From e82dedec1803922656e92285fc1bb75b2cdc0aad Mon Sep 17 00:00:00 2001 +From: Jose Quaresma <quaresma.jose@gmail.com> +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 <quaresma.jose@gmail.com> +--- + 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/meta/recipes-multimedia/gstreamer/gstreamer1.0/0007-tests-install-the-environment-for-installed_tests.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0007-tests-install-the-environment-for-installed_tests.patch new file mode 100644 index 0000000000..eabe7bcbe1 --- /dev/null +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0/0007-tests-install-the-environment-for-installed_tests.patch @@ -0,0 +1,58 @@ +From 57d2965e979f886e03eecd7e351bf01812053971 Mon Sep 17 00:00:00 2001 +From: Jose Quaresma <quaresma.jose@gmail.com> +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 <quaresma.jose@gmail.com> +--- + 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/meta/recipes-multimedia/gstreamer/gstreamer1.0/run-ptest b/meta/recipes-multimedia/gstreamer/gstreamer1.0/run-ptest new file mode 100755 index 0000000000..0cfa955f03 --- /dev/null +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0/run-ptest @@ -0,0 +1,2 @@ +#!/usr/bin/env sh +gnome-desktop-testing-runner gstreamer diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.1.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.5.bb index d55b2871e7..0d82dd338c 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.1.bb +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.5.bb @@ -8,7 +8,7 @@ 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 +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" @@ -16,12 +16,16 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d \ 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-meson-Add-option-for-installed-tests.patch \ - file://0001-gst_private.h-increse-padding-in-struct-_GstClockEnt.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] = "79df8de21f284a105a5c1568527f8c559c583c85c0f2bd7bdb5b0372b8beecba" +SRC_URI[sha256sum] = "55862232a63459bbf56abebde3085ca9aec211b478e891dacea4d6df8cafe80a" PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \ check \ @@ -30,13 +34,14 @@ PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \ 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] = ",,libcap libcap-native" +PACKAGECONFIG[setcap] = "-Dptp-helper-permissions=capabilities,,libcap libcap-native" # TODO: put this in a gettext.bbclass patch def gettext_oemeson(d): @@ -60,11 +65,11 @@ 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" +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" -require gstreamer1.0-ptest.inc +PTEST_BUILD_HOST_FILES = "" diff --git a/meta/recipes-multimedia/lame/lame_3.100.bb b/meta/recipes-multimedia/lame/lame_3.100.bb index 7f8996fb52..4927c9f2b3 100644 --- a/meta/recipes-multimedia/lame/lame_3.100.bb +++ b/meta/recipes-multimedia/lame/lame_3.100.bb @@ -1,5 +1,6 @@ SUMMARY = "High quality MP3 audio encoder" -HOMEPAGE = "http://lame.sourceforge.net/" +DESCRIPTION = "LAME is an educational tool to be used for learning about MP3 encoding." +HOMEPAGE = "https://lame.sourceforge.io/" BUGTRACKER = "http://sourceforge.net/tracker/?group_id=290&atid=100290" SECTION = "console/utils" LICENSE = "LGPLv2+" @@ -19,7 +20,7 @@ SRC_URI[sha256sum] = "ddfe36cab873794038ae2c1210557ad34857a4b6bdc515785d1da9e175 inherit autotools pkgconfig PACKAGES += "libmp3lame libmp3lame-dev" -FILES_${PN} = "${bindir}/lame" -FILES_libmp3lame = "${libdir}/libmp3lame.so.*" -FILES_libmp3lame-dev = "${includedir} ${libdir}/*" -FILES_${PN}-dev = "" +FILES:${PN} = "${bindir}/lame" +FILES:libmp3lame = "${libdir}/libmp3lame.so.*" +FILES:libmp3lame-dev = "${includedir} ${libdir}/*" +FILES:${PN}-dev = "" diff --git a/meta/recipes-multimedia/liba52/liba52_0.7.4.bb b/meta/recipes-multimedia/liba52/liba52_0.7.4.bb index 8ff8889b60..ea16270cf8 100644 --- a/meta/recipes-multimedia/liba52/liba52_0.7.4.bb +++ b/meta/recipes-multimedia/liba52/liba52_0.7.4.bb @@ -1,4 +1,7 @@ SUMMARY = "ATSC A/52 surround sound stream decoder" +DESCRIPTION = "Library for decoding ATSC A/52 streams. The A/52 standard \ +is used in a variety of applications, including digital television \ +and DVD. It is also known as AC-3." HOMEPAGE = "http://liba52.sourceforge.net/" LICENSE = "GPLv2+" LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \ @@ -22,5 +25,5 @@ EXTRA_OECONF = " --enable-shared " PACKAGES =+ "a52dec a52dec-doc" -FILES_a52dec = " ${bindir}/* " -FILES_a52dec-doc = " ${mandir}/man1/* " +FILES:a52dec = " ${bindir}/* " +FILES:a52dec-doc = " ${mandir}/man1/* " diff --git a/meta/recipes-multimedia/libid3tag/libid3tag/0001-Fix-gperf-3.1-incompatibility.patch b/meta/recipes-multimedia/libid3tag/libid3tag/0001-Fix-gperf-3.1-incompatibility.patch deleted file mode 100644 index 54f49f6f23..0000000000 --- a/meta/recipes-multimedia/libid3tag/libid3tag/0001-Fix-gperf-3.1-incompatibility.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 91fcf66b9182c75cd2b96d88991d5a1c6307d4b4 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin <alex.kanavin@gmail.com> -Date: Wed, 2 Aug 2017 16:27:52 +0300 -Subject: [PATCH] Fix gperf 3.1 incompatibility. - -Upstream-Status: Pending -Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> ---- - compat.h | 2 +- - frametype.h | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/compat.h b/compat.h -index 8af71ec..b3d80d9 100644 ---- a/compat.h -+++ b/compat.h -@@ -34,7 +34,7 @@ struct id3_compat { - }; - - struct id3_compat const *id3_compat_lookup(register char const *, -- register unsigned int); -+ register size_t); - - int id3_compat_fixup(struct id3_tag *); - -diff --git a/frametype.h b/frametype.h -index dd064b2..b5b7593 100644 ---- a/frametype.h -+++ b/frametype.h -@@ -37,6 +37,6 @@ extern struct id3_frametype const id3_frametype_unknown; - extern struct id3_frametype const id3_frametype_obsolete; - - struct id3_frametype const *id3_frametype_lookup(register char const *, -- register unsigned int); -+ register size_t); - - # endif --- -2.13.2 - diff --git a/meta/recipes-multimedia/libid3tag/libid3tag/10_utf16.patch b/meta/recipes-multimedia/libid3tag/libid3tag/10_utf16.patch deleted file mode 100644 index 10e089018c..0000000000 --- a/meta/recipes-multimedia/libid3tag/libid3tag/10_utf16.patch +++ /dev/null @@ -1,34 +0,0 @@ -libid3tag: patch for CVE-2004-2779 - -The patch comes from -https://sources.debian.org/patches/libid3tag/0.15.1b-13/10_utf16.dpatch - -Upstream-Status: Pending - -CVE: CVE-2004-2779 -CVE: CVE-2017-11551 - -Signed-off-by: Changqing Li <changqing.li@windriver.com> - -diff -urNad libid3tag-0.15.1b/utf16.c /tmp/dpep.tKvO7a/libid3tag-0.15.1b/utf16.c ---- libid3tag-0.15.1b/utf16.c 2006-01-13 15:26:29.000000000 +0100 -+++ /tmp/dpep.tKvO7a/libid3tag-0.15.1b/utf16.c 2006-01-13 15:27:19.000000000 +0100 -@@ -282,5 +282,18 @@ - - free(utf16); - -+ if (end == *ptr && length % 2 != 0) -+ { -+ /* We were called with a bogus length. It should always -+ * be an even number. We can deal with this in a few ways: -+ * - Always give an error. -+ * - Try and parse as much as we can and -+ * - return an error if we're called again when we -+ * already tried to parse everything we can. -+ * - tell that we parsed it, which is what we do here. -+ */ -+ (*ptr)++; -+ } -+ - return ucs4; - } diff --git a/meta/recipes-multimedia/libid3tag/libid3tag/addpkgconfig.patch b/meta/recipes-multimedia/libid3tag/libid3tag/addpkgconfig.patch deleted file mode 100644 index 38d40c3632..0000000000 --- a/meta/recipes-multimedia/libid3tag/libid3tag/addpkgconfig.patch +++ /dev/null @@ -1,43 +0,0 @@ -Upstream-Status: Inappropriate [configuration] - -Index: libid3tag-0.15.1b/Makefile.am -=================================================================== ---- libid3tag-0.15.1b.orig/Makefile.am 2009-07-29 09:29:20.000000000 +0100 -+++ libid3tag-0.15.1b/Makefile.am 2009-07-29 09:29:47.000000000 +0100 -@@ -27,6 +27,9 @@ - lib_LTLIBRARIES = libid3tag.la - include_HEADERS = id3tag.h - -+pkgconfigdir = $(libdir)/pkgconfig -+pkgconfig_DATA = id3tag.pc -+ - ## From the libtool documentation on library versioning: - ## - ## CURRENT -Index: libid3tag-0.15.1b/configure.ac -=================================================================== ---- libid3tag-0.15.1b.orig/configure.ac 2009-07-29 09:27:15.000000000 +0100 -+++ libid3tag-0.15.1b/configure.ac 2009-07-29 09:27:45.000000000 +0100 -@@ -201,5 +201,5 @@ - dnl AC_SUBST(LTLIBOBJS) - - AC_CONFIG_FILES([Makefile msvc++/Makefile \ -- libid3tag.list]) -+ libid3tag.list id3tag.pc]) - AC_OUTPUT -Index: libid3tag-0.15.1b/id3tag.pc.in -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ libid3tag-0.15.1b/id3tag.pc.in 2009-07-29 09:29:10.000000000 +0100 -@@ -0,0 +1,11 @@ -+prefix=@prefix@ -+exec_prefix=@exec_prefix@ -+libdir=@libdir@ -+includedir=@includedir@ -+ -+Name: id3tag -+Description: ID3 tag reading library -+Requires: -+Version: @VERSION@ -+Libs: -L${libdir} -lid3tag -lz -+Cflags: -I${includedir} diff --git a/meta/recipes-multimedia/libid3tag/libid3tag/obsolete_automake_macros.patch b/meta/recipes-multimedia/libid3tag/libid3tag/obsolete_automake_macros.patch deleted file mode 100644 index 2845fb1d3a..0000000000 --- a/meta/recipes-multimedia/libid3tag/libid3tag/obsolete_automake_macros.patch +++ /dev/null @@ -1,15 +0,0 @@ -Upstream-Status: Submitted [https://sourceforge.net/tracker/?func=detail&aid=3599280&group_id=12349&atid=112349] - -Signed-off-by: Marko Lindqvist <cazfi74@gmail.com> -diff -Nurd libid3tag-0.15.1b/configure.ac libid3tag-0.15.1b/configure.ac ---- libid3tag-0.15.1b/configure.ac 2004-01-24 01:22:46.000000000 +0200 -+++ libid3tag-0.15.1b/configure.ac 2013-01-03 06:41:02.734835014 +0200 -@@ -28,7 +28,7 @@ - --AM_INIT_AUTOMAKE -+AM_INIT_AUTOMAKE([foreign]) - --AM_CONFIG_HEADER([config.h]) -+AC_CONFIG_HEADERS([config.h]) - - dnl System type. diff --git a/meta/recipes-multimedia/libid3tag/libid3tag/unknown-encoding.patch b/meta/recipes-multimedia/libid3tag/libid3tag/unknown-encoding.patch deleted file mode 100644 index f0867b5f01..0000000000 --- a/meta/recipes-multimedia/libid3tag/libid3tag/unknown-encoding.patch +++ /dev/null @@ -1,39 +0,0 @@ -In case of an unknown/invalid encoding, id3_parse_string() will -return NULL, but the return value wasn't checked resulting -in segfault in id3_ucs4_length(). This is the only place -the return value wasn't checked. - -Patch taken from Debian: -https://sources.debian.org/patches/libid3tag/0.15.1b-14/11_unknown_encoding.dpatch/ - -CVE: CVE-2017-11550 -Upstream-Status: Pending -Signed-off-by: Ross Burton <ross.burton@intel.com> - -diff -urNad libid3tag-0.15.1b~/compat.gperf libid3tag-0.15.1b/compat.gperf ---- libid3tag-0.15.1b~/compat.gperf 2004-01-23 09:41:32.000000000 +0000 -+++ libid3tag-0.15.1b/compat.gperf 2007-01-14 14:36:53.000000000 +0000 -@@ -236,6 +236,10 @@ - - encoding = id3_parse_uint(&data, 1); - string = id3_parse_string(&data, end - data, encoding, 0); -+ if (!string) -+ { -+ continue; -+ } - - if (id3_ucs4_length(string) < 4) { - free(string); -diff -urNad libid3tag-0.15.1b~/parse.c libid3tag-0.15.1b/parse.c ---- libid3tag-0.15.1b~/parse.c 2004-01-23 09:41:32.000000000 +0000 -+++ libid3tag-0.15.1b/parse.c 2007-01-14 14:37:34.000000000 +0000 -@@ -165,6 +165,9 @@ - case ID3_FIELD_TEXTENCODING_UTF_8: - ucs4 = id3_utf8_deserialize(ptr, length); - break; -+ default: -+ /* FIXME: Unknown encoding! Print warning? */ -+ return NULL; - } - - if (ucs4 && !full) { diff --git a/meta/recipes-multimedia/libid3tag/libid3tag_0.15.1b.bb b/meta/recipes-multimedia/libid3tag/libid3tag_0.15.1b.bb deleted file mode 100644 index 0312a610c0..0000000000 --- a/meta/recipes-multimedia/libid3tag/libid3tag_0.15.1b.bb +++ /dev/null @@ -1,27 +0,0 @@ -SUMMARY = "Library for interacting with ID3 tags in MP3 files" -HOMEPAGE = "http://sourceforge.net/projects/mad/" -BUGTRACKER = "http://sourceforge.net/tracker/?group_id=12349&atid=112349" -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ - file://COPYRIGHT;md5=5e6279efb87c26c6e5e7a68317a6a87a \ - file://version.h;beginline=1;endline=8;md5=86ac68b67f054b7afde9e149bbc3fe63" -SECTION = "libs" -DEPENDS = "zlib gperf-native" -PR = "r7" - -SRC_URI = "${SOURCEFORGE_MIRROR}/mad/libid3tag-${PV}.tar.gz \ - file://addpkgconfig.patch \ - file://obsolete_automake_macros.patch \ - file://0001-Fix-gperf-3.1-incompatibility.patch \ - file://10_utf16.patch \ - file://unknown-encoding.patch \ - " -UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/mad/files/libid3tag/" -UPSTREAM_CHECK_REGEX = "/projects/mad/files/libid3tag/(?P<pver>.*)/$" - -SRC_URI[md5sum] = "e5808ad997ba32c498803822078748c3" -SRC_URI[sha256sum] = "63da4f6e7997278f8a3fef4c6a372d342f705051d1eeb6a46a86b03610e26151" - -S = "${WORKDIR}/libid3tag-${PV}" - -inherit autotools pkgconfig diff --git a/meta/recipes-multimedia/libogg/libogg_1.3.4.bb b/meta/recipes-multimedia/libogg/libogg_1.3.5.bb index c4004619b9..b4f02e404c 100644 --- a/meta/recipes-multimedia/libogg/libogg_1.3.4.bb +++ b/meta/recipes-multimedia/libogg/libogg_1.3.5.bb @@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=db1b7a668b2a6f47b2af88fb008ad555 \ SRC_URI = "http://downloads.xiph.org/releases/ogg/${BP}.tar.xz" -SRC_URI[md5sum] = "eadef24aad6e3e8379ba0d14971fd64a" -SRC_URI[sha256sum] = "c163bc12bc300c401b6aa35907ac682671ea376f13ae0969a220f7ddf71893fe" +SRC_URI[md5sum] = "3178c98341559657a15b185bf5d700a5" +SRC_URI[sha256sum] = "c4d91be36fc8e54deae7575241e03f4211eb102afb3fc0775fbbc1b740016705" inherit autotools pkgconfig diff --git a/meta/recipes-multimedia/libomxil/libomxil_0.9.3.bb b/meta/recipes-multimedia/libomxil/libomxil_0.9.3.bb index 2061c280e4..864d6bbeea 100644 --- a/meta/recipes-multimedia/libomxil/libomxil_0.9.3.bb +++ b/meta/recipes-multimedia/libomxil/libomxil_0.9.3.bb @@ -4,7 +4,7 @@ DESCRIPTION = "Bellagio is an opensource implementation of the Khronos OpenMAX \ HOMEPAGE = "http://omxil.sourceforge.net/" LICENSE = "LGPLv2.1+" -LICENSE_FLAGS = "commercial" +LICENSE_FLAGS = "${@bb.utils.contains('PACKAGECONFIG', 'amr', 'commercial', '', d)}" LIC_FILES_CHKSUM = "file://COPYING;md5=ae6f0f4dbc7ac193b50f323a6ae191cb \ file://src/omxcore.h;beginline=1;endline=27;md5=806b1e5566c06486fe8e42b461e03a90" @@ -28,14 +28,18 @@ PROVIDES += "virtual/libomxil" CFLAGS += "-fcommon" +PACKAGECONFIG ??= "" + +PACKAGECONFIG[amr] = "--enable-amr,," + # # The .so files under ${libdir}/bellagio are not intended to be versioned and symlinked. # Make sure they get packaged in the main package. # -FILES_${PN} += "${libdir}/bellagio/*.so \ +FILES:${PN} += "${libdir}/bellagio/*.so \ ${libdir}/omxloaders/*${SOLIBS}" -FILES_${PN}-staticdev += "${libdir}/bellagio/*.a \ +FILES:${PN}-staticdev += "${libdir}/bellagio/*.a \ ${libdir}/omxloaders/*.a" -FILES_${PN}-dev += "${libdir}/bellagio/*.la \ +FILES:${PN}-dev += "${libdir}/bellagio/*.la \ ${libdir}/omxloaders/*.la \ ${libdir}/omxloaders/*${SOLIBSDEV}" diff --git a/meta/recipes-multimedia/libpng/libpng_1.6.37.bb b/meta/recipes-multimedia/libpng/libpng_1.6.37.bb index edb2ac6146..7791b0eecf 100644 --- a/meta/recipes-multimedia/libpng/libpng_1.6.37.bb +++ b/meta/recipes-multimedia/libpng/libpng_1.6.37.bb @@ -1,4 +1,7 @@ SUMMARY = "PNG image format decoding library" +DESCRIPTION = "An open source project to develop and maintain the reference \ +library for use in applications that read, create, and manipulate PNG \ +(Portable Network Graphics) raster image files. " HOMEPAGE = "http://www.libpng.org/" SECTION = "libs" LICENSE = "Libpng" @@ -20,11 +23,11 @@ BINCONFIG = "${bindir}/libpng-config ${bindir}/libpng16-config" inherit autotools binconfig-disabled pkgconfig # Work around missing symbols -EXTRA_OECONF_append_class-target = " ${@bb.utils.contains("TUNE_FEATURES", "neon", "--enable-arm-neon=on", "--enable-arm-neon=off", d)}" +EXTRA_OECONF:append:class-target = " ${@bb.utils.contains("TUNE_FEATURES", "neon", "--enable-arm-neon=on", "--enable-arm-neon=off", d)}" PACKAGES =+ "${PN}-tools" -FILES_${PN}-tools = "${bindir}/png-fix-itxt ${bindir}/pngfix ${bindir}/pngcp" +FILES:${PN}-tools = "${bindir}/png-fix-itxt ${bindir}/pngfix ${bindir}/pngcp" BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-multimedia/libsamplerate/libsamplerate0/0001-configure.ac-improve-alsa-handling.patch b/meta/recipes-multimedia/libsamplerate/libsamplerate0/0001-configure.ac-improve-alsa-handling.patch deleted file mode 100644 index d19b514e6b..0000000000 --- a/meta/recipes-multimedia/libsamplerate/libsamplerate0/0001-configure.ac-improve-alsa-handling.patch +++ /dev/null @@ -1,62 +0,0 @@ -From 957ebce3837588f71016e37ffaf9aad0a9d41cec Mon Sep 17 00:00:00 2001 -From: Tanu Kaskinen <tanuk@iki.fi> -Date: Fri, 23 Sep 2016 12:02:06 +0300 -Subject: [PATCH] configure.ac: improve alsa handling - -Three improvements: - -1) "--enable-alsa" or "--disable-alsa" caused a warning about an -unsupported configure option, because AC_ARG_ENABLE was not used. - -2) If alsa was disabled, the "Have ALSA" item in the summary would print -an empty string instead of "no". - -3) If "--enable-alsa" was passed to configure, but the headers were not -found, configure would still succeed (with alsa disabled). It's better -to fail and abort configure if a feature that was explicitly requested -can't be enabled. - -Upstream-Status: Submitted [sent to src@mega-nerd.com] - -Signed-off-by: Tanu Kaskinen <tanuk@iki.fi> ---- - configure.ac | 9 ++++++++- - 1 file changed, 8 insertions(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index 474c6ab..bad597e 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -101,6 +101,9 @@ AC_ARG_ENABLE(cpu-clip, - AC_HELP_STRING([--disable-cpu-clip], [disable tricky cpu specific clipper]), - ac_arg_cpu_clip="N", ac_arg_cpu_clip="Y") - -+AC_ARG_ENABLE(alsa, -+ AC_HELP_STRING([--disable-alsa], [disable ALSA support in the varispeed-play example program])) -+ - #==================================================================================== - # Check types and their sizes. - -@@ -194,6 +197,10 @@ if test x$enable_alsa != xno ; then - if test x$ac_cv_header_alsa_asoundlib_h = xyes ; then - ALSA_LIBS="-lasound" - enable_alsa=yes -+ elif test x$enable_alsa = xyes ; then -+ AC_MSG_ERROR(["ALSA headers not found"]) -+ else -+ enable_alsa=no - fi - fi - -@@ -340,7 +347,7 @@ AC_MSG_RESULT([ - Have FFTW : ................... ${ac_cv_fftw3}]) - - AC_MSG_RESULT([ Have libsndfile : ............. ${ac_cv_sndfile}]) --AC_MSG_RESULT([ Have ALSA : ................... ${ac_cv_header_alsa_asoundlib_h} -+AC_MSG_RESULT([ Have ALSA : ................... ${enable_alsa} - ]) - - AC_MSG_RESULT([ Installation directories : --- -2.9.3 - diff --git a/meta/recipes-multimedia/libsamplerate/libsamplerate0_0.1.9.bb b/meta/recipes-multimedia/libsamplerate/libsamplerate0_0.2.2.bb index ae08189441..ed2b6437dd 100644 --- a/meta/recipes-multimedia/libsamplerate/libsamplerate0_0.1.9.bb +++ b/meta/recipes-multimedia/libsamplerate/libsamplerate0_0.2.2.bb @@ -1,22 +1,20 @@ SUMMARY = "Audio Sample Rate Conversion library" -HOMEPAGE = "http://www.mega-nerd.com/SRC/" +DESCRIPTION = "Also known as Secret Rabbit Code - a library for performing sample rate conversion of audio data." +HOMEPAGE = "https://libsndfile.github.io/libsamplerate/" SECTION = "libs" LICENSE = "BSD-2-Clause" LIC_FILES_CHKSUM = "file://COPYING;md5=336d6faf40fb600bafb0061f4052f1f4 \ - file://src/samplerate.c;beginline=1;endline=7;md5=5b6982a8c2811c7312c13cccbf55f55e" + file://src/samplerate.c;beginline=1;endline=7;md5=7a4238289dc36bfb70968ccaa5bd0d4f" DEPENDS = "libsndfile1" -PR = "r1" -SRC_URI = "http://www.mega-nerd.com/SRC/libsamplerate-${PV}.tar.gz \ - file://0001-configure.ac-improve-alsa-handling.patch \ +SRC_URI = "https://github.com/libsndfile/libsamplerate/releases/download/${PV}/libsamplerate-${PV}.tar.xz \ " -SRC_URI[md5sum] = "2b78ae9fe63b36b9fbb6267fad93f259" -SRC_URI[sha256sum] = "0a7eb168e2f21353fb6d84da152e4512126f7dc48ccb0be80578c565413444c1" +SRC_URI[sha256sum] = "3258da280511d24b49d6b08615bbe824d0cacc9842b0e4caf11c52cf2b043893" CVE_PRODUCT = "libsamplerate" -UPSTREAM_CHECK_URI = "http://www.mega-nerd.com/SRC/download.html" +UPSTREAM_CHECK_URI = "https://github.com/libsndfile/libsamplerate/releases" S = "${WORKDIR}/libsamplerate-${PV}" diff --git a/meta/recipes-multimedia/libsndfile/libsndfile1_1.0.28.bb b/meta/recipes-multimedia/libsndfile/libsndfile1_1.0.28.bb index b100108766..443ca95e32 100644 --- a/meta/recipes-multimedia/libsndfile/libsndfile1_1.0.28.bb +++ b/meta/recipes-multimedia/libsndfile/libsndfile1_1.0.28.bb @@ -1,4 +1,7 @@ SUMMARY = "Audio format Conversion library" +DESCRIPTION = "Library for reading and writing files containing sampled \ +sound (such as MS Windows WAV and the Apple/SGI AIFF format) through \ +one standard library interface." HOMEPAGE = "http://www.mega-nerd.com/libsndfile" AUTHOR = "Erik de Castro Lopo" DEPENDS = "flac libogg libvorbis" @@ -34,7 +37,7 @@ PACKAGECONFIG[regtest] = "--enable-sqlite,--disable-sqlite,sqlite3" inherit autotools lib_package pkgconfig multilib_header -do_install_append() { +do_install:append() { oe_multilib_header sndfile.h } diff --git a/meta/recipes-multimedia/libtiff/tiff_4.1.0.bb b/meta/recipes-multimedia/libtiff/tiff_4.3.0.bb index 9b907fbc24..6852758c6a 100644 --- a/meta/recipes-multimedia/libtiff/tiff_4.1.0.bb +++ b/meta/recipes-multimedia/libtiff/tiff_4.3.0.bb @@ -1,4 +1,8 @@ SUMMARY = "Provides support for the Tag Image File Format (TIFF)" +DESCRIPTION = "Library provides support for the Tag Image File Format \ +(TIFF), a widely used format for storing image data. This library \ +provide means to easily access and create TIFF image files." +HOMEPAGE = "http://www.libtiff.org/" LICENSE = "BSD-2-Clause" LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=34da3db46fab7501992f9615d7e158cf" @@ -6,12 +10,15 @@ CVE_PRODUCT = "libtiff" SRC_URI = "http://download.osgeo.org/libtiff/tiff-${PV}.tar.gz \ " -SRC_URI[md5sum] = "2165e7aba557463acc0664e71a3ed424" -SRC_URI[sha256sum] = "5d29f32517dadb6dbcd1255ea5bbc93a2b54b94fbf83653b4d65c7d6775b8634" +SRC_URI[sha256sum] = "0e46e5acb087ce7d1ac53cf4f56a09b221537fc86dfc5daaad1c2e89e1b37ac8" # exclude betas UPSTREAM_CHECK_REGEX = "tiff-(?P<pver>\d+(\.\d+)+).tar" +# Tested with check from https://security-tracker.debian.org/tracker/CVE-2015-7313 +# and 4.3.0 doesn't have the issue +CVE_CHECK_WHITELIST += "CVE-2015-7313" + inherit autotools multilib_header CACHED_CONFIGUREVARS = "ax_cv_check_gl_libgl=no" @@ -40,10 +47,10 @@ PACKAGECONFIG[check-ycbcr-subsampling] = "--enable-check-ycbcr-subsampling,--dis PACKAGECONFIG[chunky-strip-read] = "--enable-chunky-strip-read,--disable-chunky-strip-read,," PACKAGES =+ "tiffxx tiff-utils" -FILES_tiffxx = "${libdir}/libtiffxx.so.*" -FILES_tiff-utils = "${bindir}/*" +FILES:tiffxx = "${libdir}/libtiffxx.so.*" +FILES:tiff-utils = "${bindir}/*" -do_install_append() { +do_install:append() { oe_multilib_header tiffconf.h } diff --git a/meta/recipes-multimedia/mpeg2dec/mpeg2dec_0.5.1.bb b/meta/recipes-multimedia/mpeg2dec/mpeg2dec_0.5.1.bb index 00ca3675ca..ee4b754c12 100644 --- a/meta/recipes-multimedia/mpeg2dec/mpeg2dec_0.5.1.bb +++ b/meta/recipes-multimedia/mpeg2dec/mpeg2dec_0.5.1.bb @@ -1,5 +1,9 @@ SUMMARY = "Library and test program for decoding MPEG-2 and MPEG-1 video streams" -HOMEPAGE = "http://libmpeg2.sourceforge.net/" +DESCRIPTION = "mpeg2dec is a test program for libmpeg2. It decodes \ +mpeg-1 and mpeg-2 video streams, and also includes a demultiplexer \ +for mpeg-1 and mpeg-2 program streams. The main purpose of mpeg2dec \ +is to have a simple test bed for libmpeg2." +HOMEPAGE = "https://libmpeg2.sourceforge.io/" SECTION = "libs" LICENSE = "GPLv2+" LICENSE_FLAGS = "commercial" @@ -30,18 +34,18 @@ PACKAGECONFIG[x11] = "--with-x,--without-x,virtual/libx11 libxext libxv" PACKAGES = "mpeg2dec-dbg mpeg2dec mpeg2dec-doc libmpeg2 libmpeg2-dev libmpeg2convert libmpeg2convert-dev libmpeg2-staticdev libmpeg2convert-staticdev" -FILES_${PN} = "${bindir}/*" -FILES_libmpeg2 = "${libdir}/libmpeg2.so.*" -FILES_libmpeg2convert = "${libdir}/libmpeg2convert.so.*" -FILES_libmpeg2-dev = "${libdir}/libmpeg2.so \ +FILES:${PN} = "${bindir}/*" +FILES:libmpeg2 = "${libdir}/libmpeg2.so.*" +FILES:libmpeg2convert = "${libdir}/libmpeg2convert.so.*" +FILES:libmpeg2-dev = "${libdir}/libmpeg2.so \ ${libdir}/libmpeg2.la \ ${libdir}/libmpeg2arch.la \ ${libdir}/pkgconfig/libmpeg2.pc \ ${includedir}/mpeg2dec/mpeg2.h" -FILES_libmpeg2-staticdev = "${libdir}/libmpeg2.a" -FILES_libmpeg2convert-dev = "${libdir}/libmpeg2convert.so \ +FILES:libmpeg2-staticdev = "${libdir}/libmpeg2.a" +FILES:libmpeg2convert-dev = "${libdir}/libmpeg2convert.so \ ${libdir}/libmpeg2convert.la \ ${libdir}/libmpeg2convertarch.la \ ${libdir}/pkgconfig/libmpeg2convert.pc \ ${includedir}/mpeg2dec/mpeg2convert.h" -FILES_libmpeg2convert-staticdev = "${libdir}/libmpeg2convert.a" +FILES:libmpeg2convert-staticdev = "${libdir}/libmpeg2convert.a" diff --git a/meta/recipes-multimedia/mpg123/mpg123_1.26.3.bb b/meta/recipes-multimedia/mpg123/mpg123_1.29.3.bb index 0746d8d47d..6e0dc1beff 100644 --- a/meta/recipes-multimedia/mpg123/mpg123_1.26.3.bb +++ b/meta/recipes-multimedia/mpg123/mpg123_1.29.3.bb @@ -7,10 +7,10 @@ BUGTRACKER = "http://sourceforge.net/p/mpg123/bugs/" SECTION = "multimedia" LICENSE = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=1e86753638d3cf2512528b99079bc4f3" +LIC_FILES_CHKSUM = "file://COPYING;md5=e7b9c15fcfb986abb4cc5e8400a24169" SRC_URI = "https://www.mpg123.de/download/${BP}.tar.bz2" -SRC_URI[sha256sum] = "30c998785a898f2846deefc4d17d6e4683a5a550b7eacf6ea506e30a7a736c6e" +SRC_URI[sha256sum] = "963885d8cc77262f28b77187c7d189e32195e64244de2530b798ddf32183e847" UPSTREAM_CHECK_REGEX = "mpg123-(?P<pver>\d+(\.\d+)+)\.tar" @@ -40,6 +40,7 @@ EXTRA_OECONF = " \ --with-audio='${AUDIOMODS}' \ ${@bb.utils.contains('TUNE_FEATURES', 'neon', '--with-cpu=neon', '', d)} \ ${@bb.utils.contains('TUNE_FEATURES', 'altivec', '--with-cpu=altivec', '', d)} \ + ${@bb.utils.contains('TARGET_FPU', 'soft', '--with-cpu=generic_nofpu', '', d)} \ " # Fails to build with thumb-1 (qemuarm) #| {standard input}: Assembler messages: @@ -47,5 +48,5 @@ EXTRA_OECONF = " \ #| {standard input}:48: Error: shifts in CMP/MOV instructions are only supported in unified syntax -- `mov r5,r5,lsr#24' #... #| make[3]: *** [equalizer.lo] Error 1 -ARM_INSTRUCTION_SET_armv4 = "arm" -ARM_INSTRUCTION_SET_armv5 = "arm" +ARM_INSTRUCTION_SET:armv4 = "arm" +ARM_INSTRUCTION_SET:armv5 = "arm" diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio.inc b/meta/recipes-multimedia/pulseaudio/pulseaudio.inc index 3a26cb59dd..4a1456d407 100644 --- a/meta/recipes-multimedia/pulseaudio/pulseaudio.inc +++ b/meta/recipes-multimedia/pulseaudio/pulseaudio.inc @@ -1,4 +1,6 @@ SUMMARY = "Sound server for Linux and Unix-like operating systems" +DESCRIPTION = "A general purpose sound server intended to run as a middleware \ +between your applications and your hardware devices, either using ALSA or OSS." HOMEPAGE = "http://www.pulseaudio.org" AUTHOR = "Lennart Poettering" SECTION = "libs/multimedia" @@ -56,47 +58,47 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=0e5cd938de1a7a53ea5adac38cc10c39 \ file://src/pulsecore/filter/biquad.h;beginline=1;endline=4;md5=6d46d1365206528a20137355924233c1 \ " +# libtool is needed for libltdl, used in module loading. DEPENDS = "libatomic-ops libsndfile1 libtool" # optional DEPENDS += "udev alsa-lib glib-2.0" DEPENDS += "speexdsp libxml-parser-perl-native libcap" -inherit autotools bash-completion pkgconfig useradd gettext perlnative systemd manpages gsettings +inherit bash-completion meson pkgconfig useradd gettext perlnative systemd manpages gsettings # *.desktop rules wont be generated during configure and build will fail # if using --disable-nls USE_NLS = "yes" -EXTRA_OECONF = "\ - --disable-hal-compat \ - --disable-orc \ - --enable-tcpwrap=no \ - --with-access-group=audio \ - --disable-openssl \ - --with-database=simple \ - --without-zsh-completion-dir \ - --with-udev-rules-dir=`pkg-config --variable=udevdir udev`/rules.d \ - ac_cv_header_valgrind_memcheck_h=no \ - --disable-tests \ - --disable-running-from-build-tree \ +EXTRA_OEMESON = "\ + -Dhal-compat=false \ + -Dorc=disabled \ + -Daccess_group=audio \ + -Dopenssl=disabled \ + -Ddatabase=simple \ + -Dzshcompletiondir=no \ + -Dudevrulesdir=`pkg-config --variable=udevdir udev`/rules.d \ + -Dvalgrind=disabled \ + -Dtests=false \ + -Drunning-from-build-tree=false \ " # soxr (the SoX Resampler library) doesn't seem to be currently packaged in # oe-core nor meta-oe, so let's not add a PACKAGECONFIG entry for it for now. -EXTRA_OECONF += "--without-soxr" +EXTRA_OEMESON += "-Dsoxr=disabled" # The FFTW dependency (for module-equalizer-sink) was removed in commit # ddbd713293 without explaining why it was not made a PACKAGECONFIG item # instead. Oh well, let's keep it disabled until someone expresses some # interest in having it enabled. -EXTRA_OECONF += "--without-fftw" +EXTRA_OEMESON += "-Dfftw=disabled" # The "adrian" echo canceller implementation has a non-standard license # (src/modules/echo-cancel/adrian-license.txt). It's a permissive license, so # the licensing terms are probably not problematic, but it would be an extra # hassle to add the license to OE-Core's set of licenses. The canceller isn't # very good anyway, better alternatives exist (such as the webrtc canceller). -EXTRA_OECONF += "--disable-adrian-aec" +EXTRA_OEMESON += "-Dadrian-aec=false" PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez5', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'zeroconf', 'avahi', '', d)} \ @@ -105,35 +107,25 @@ PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez5' dbus gsettings \ " -PACKAGECONFIG[dbus] = "--enable-dbus,--disable-dbus,dbus" -PACKAGECONFIG[bluez5] = "--enable-bluez5,--disable-bluez5,bluez5 sbc" -PACKAGECONFIG[gconf] = "--enable-gconf,--disable-gconf,gconf" -PACKAGECONFIG[gsettings] = "--enable-gsettings,--disable-gsettings,glib-2.0-native glib-2.0" -PACKAGECONFIG[ofono] = "--enable-bluez5-ofono-headset,--disable-bluez5-ofono-headset,ofono" -PACKAGECONFIG[gtk] = "--enable-gtk3,--disable-gtk3,gtk+3" -PACKAGECONFIG[systemd] = "--enable-systemd-daemon --enable-systemd-login --enable-systemd-journal --with-systemduserunitdir=${systemd_user_unitdir},--disable-systemd-daemon --disable-systemd-login --disable-systemd-journal,systemd" -PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,virtual/libx11 libxtst libice libsm libxcb" -PACKAGECONFIG[avahi] = "--enable-avahi,--disable-avahi,avahi" -PACKAGECONFIG[jack] = "--enable-jack,--disable-jack,jack" +PACKAGECONFIG[dbus] = "-Ddbus=enabled,-Ddbus=disabled,dbus" +PACKAGECONFIG[bluez5] = "-Dbluez5=enabled,-Dbluez5=disabled,bluez5 sbc" +PACKAGECONFIG[gsettings] = "-Dgsettings=enabled,-Dgsettings=disabled,glib-2.0-native glib-2.0" +PACKAGECONFIG[ofono] = "-Dbluez5-ofono-headset=true,-Dbluez5-ofono-headset=false,ofono" +PACKAGECONFIG[gtk] = "-Dgtk=enabled,-Dgtk=disabled,gtk+3" +PACKAGECONFIG[systemd] = "-Dsystemd=enabled -Dsystemduserunitdir=${systemd_user_unitdir},-Dsystemd=disabled,systemd" +PACKAGECONFIG[x11] = "-Dx11=enabled,-Dx11=disabled,virtual/libx11 libxtst libice libsm libxcb" +PACKAGECONFIG[avahi] = "-Davahi=enabled,-Davahi=disabled,avahi" +PACKAGECONFIG[jack] = "-Djack=enabled,-Djack=disabled,jack" # Since many embedded systems don't have non-root users, it's useful to be # able to use pulseaudio autospawn for root as well. PACKAGECONFIG[autospawn-for-root] = ",,," -PACKAGECONFIG[lirc] = "--enable-lirc,--disable-lirc,lirc" -PACKAGECONFIG[webrtc] = "--enable-webrtc-aec,--disable-webrtc-aec,webrtc-audio-processing" -PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," -PACKAGECONFIG[manpages] = "--enable-manpages, --disable-manpages, " - -EXTRA_OECONF_append_arm = "${@bb.utils.contains("TUNE_FEATURES", "neon", "", " --enable-neon-opt=no", d)}" -EXTRA_OECONF_append_armeb = "${@bb.utils.contains("TUNE_FEATURES", "neon", "", " --enable-neon-opt=no", d)}" - +PACKAGECONFIG[lirc] = "-Dlirc=enabled,-Dlirc=disabled,lirc" +PACKAGECONFIG[webrtc] = "-Dwebrtc-aec=enabled,-Dwebrtc-aec=disabled,webrtc-audio-processing" +PACKAGECONFIG[ipv6] = "-Dipv6=true,-Dipv6=false," +PACKAGECONFIG[manpages] = "-Dman=true,-Dman=false," export TARGET_PFPU = "${TARGET_FPU}" -# TODO: Use more fine granular version -#OE_LT_RPATH_ALLOW=":${libdir}/pulse-0.9:" -OE_LT_RPATH_ALLOW = "any" -OE_LT_RPATH_ALLOW[export]="1" - set_cfg_value () { sed -i -e "s/\(; *\)\?$2 =.*/$2 = $3/" "$1" if ! grep -q "^$2 = $3\$" "$1"; then @@ -141,20 +133,20 @@ set_cfg_value () { fi } -do_compile_append () { +do_compile:append () { if ${@bb.utils.contains('PACKAGECONFIG', 'autospawn-for-root', 'true', 'false', d)}; then - set_cfg_value src/client.conf allow-autospawn-for-root yes + set_cfg_value src/pulse/client.conf allow-autospawn-for-root yes fi } -do_install_append() { +do_install:append() { install -d ${D}${sysconfdir}/default/volatiles install -m 0644 ${WORKDIR}/volatiles.04_pulse ${D}${sysconfdir}/default/volatiles/04_pulse } USERADD_PACKAGES = "pulseaudio-server" -GROUPADD_PARAM_pulseaudio-server = "--system pulse" -USERADD_PARAM_pulseaudio-server = "--system --home /var/run/pulse \ +GROUPADD_PARAM:pulseaudio-server = "--system pulse" +USERADD_PARAM:pulseaudio-server = "--system --home /var/run/pulse \ --no-create-home --shell /bin/false \ --groups audio,pulse --gid pulse pulse" @@ -176,50 +168,49 @@ PACKAGES =+ "\ PACKAGES =+ "${@bb.utils.contains('PACKAGECONFIG', 'dbus', 'pulseaudio-module-console-kit', '', d)}" #upgrade path: -RREPLACES_pulseaudio-server = "libpulse-bin libpulse-conf" +RREPLACES:pulseaudio-server = "libpulse-bin libpulse-conf" PACKAGES_DYNAMIC += "^pulseaudio-lib-.* ^pulseaudio-module-.*" -FILES_libpulsecore = "${libdir}/pulseaudio/libpulsecore*.so" -FILES_libpulsecommon = "${libdir}/pulseaudio/libpulsecommon*.so" +FILES:libpulsecore = "${libdir}/pulseaudio/libpulsecore*.so" +FILES:libpulsecommon = "${libdir}/pulseaudio/libpulsecommon*.so" # client.conf configures the behaviour of libpulse, so it belongs in the same # package. -FILES_libpulse = "${libdir}/libpulse.so.* ${sysconfdir}/pulse/client.conf" +FILES:libpulse = "${libdir}/libpulse.so.* ${sysconfdir}/pulse/client.conf" -FILES_libpulse-simple = "${libdir}/libpulse-simple.so.*" -FILES_libpulse-mainloop-glib = "${libdir}/libpulse-mainloop-glib.so.*" +FILES:libpulse-simple = "${libdir}/libpulse-simple.so.*" +FILES:libpulse-mainloop-glib = "${libdir}/libpulse-mainloop-glib.so.*" -FILES_${PN}-dev += "${libdir}/pulse-${PV}/modules/*.la ${datadir}/vala ${libdir}/cmake" -FILES_${PN}-conf = "${sysconfdir}" -FILES_${PN}-bin += "${sysconfdir}/default/volatiles/04_pulse" -FILES_${PN}-pa-info = "${bindir}/pa-info" -FILES_${PN}-server = "${bindir}/pulseaudio ${bindir}/start-* ${sysconfdir} ${bindir}/pactl */udev/rules.d/*.rules */*/udev/rules.d/*.rules ${systemd_user_unitdir}/*" +FILES:${PN}-dev += "${libdir}/pulse-${PV}/modules/*.la ${datadir}/vala" +FILES:${PN}-bin += "${sysconfdir}/default/volatiles/04_pulse" +FILES:${PN}-pa-info = "${bindir}/pa-info" +FILES:${PN}-server = "${bindir}/pulseaudio ${bindir}/start-* ${sysconfdir} ${bindir}/pactl */udev/rules.d/*.rules */*/udev/rules.d/*.rules ${systemd_user_unitdir}/*" #SYSTEMD_PACKAGES = "${PN}-server" -SYSTEMD_SERVICE_${PN}-server = "pulseaudio.service" +SYSTEMD_SERVICE:${PN}-server = "pulseaudio.service" -FILES_${PN}-misc = "${bindir}/* ${libdir}/pulseaudio/libpulsedsp.so" +FILES:${PN}-misc = "${bindir}/* ${libdir}/pulseaudio/libpulsedsp.so" # Allow the pulseaudio package to be created empty as a placeholder (-dbg and -dev depend on it) -FILES_${PN} = "" -ALLOW_EMPTY_${PN} = "1" +FILES:${PN} = "" +ALLOW_EMPTY:${PN} = "1" -CONFFILES_libpulse = "${sysconfdir}/pulse/client.conf" +CONFFILES:libpulse = "${sysconfdir}/pulse/client.conf" -CONFFILES_pulseaudio-server = "\ +CONFFILES:pulseaudio-server = "\ ${sysconfdir}/pulse/default.pa \ ${sysconfdir}/pulse/daemon.conf \ ${sysconfdir}/pulse/system.pa \ " -pkg_postinst_${PN}-server() { +pkg_postinst:${PN}-server() { if [ -z "$D" ] && [ -e ${sysconfdir}/init.d/populate-volatile.sh ] ; then ${sysconfdir}/init.d/populate-volatile.sh update fi } -python populate_packages_prepend() { +python populate_packages:prepend() { plugindir = d.expand('${libdir}/pulse-${PV}/modules/') do_split_packages(d, plugindir, r'^module-(.*)\.so$', '${PN}-module-%s', 'PulseAudio module for %s', extra_depends='', prepend=True) do_split_packages(d, plugindir, r'^lib(.*)\.so$', '${PN}-lib-%s', 'PulseAudio library for %s', extra_depends='', prepend=True) @@ -227,7 +218,7 @@ python populate_packages_prepend() { # pa-info is a bash script that collects information about the audio setup. # It's primarily useful for attaching an information dump when reporting bugs. -RDEPENDS_${PN}-pa-info = "\ +RDEPENDS:${PN}-pa-info = "\ alsa-utils-amixer \ alsa-utils-aplay \ alsa-utils-scripts \ @@ -235,7 +226,7 @@ RDEPENDS_${PN}-pa-info = "\ ${PN}-server \ " -RDEPENDS_pulseaudio-server = " \ +RDEPENDS:pulseaudio-server = " \ pulseaudio-module-filter-apply \ pulseaudio-module-filter-heuristics \ pulseaudio-module-udev-detect \ @@ -261,24 +252,23 @@ RDEPENDS_pulseaudio-server = " \ # If the server is installed, it's usually desirable to make ALSA applications # use PulseAudio. alsa-plugins-pulseaudio-conf will install the configuration # that makes the PulseAudio plugin the default ALSA device. -RDEPENDS_pulseaudio-server += "alsa-plugins-pulseaudio-conf" +RDEPENDS:pulseaudio-server += "alsa-plugins-pulseaudio-conf" # pulseaudio-module-console-kit is built whenever dbus is enabled by PACKAGECONFIG # but consolekit depends on libx11 and is available only for DISTRO with x11 in DISTRO_FEATURES -RDEPENDS_pulseaudio-module-console-kit =+ "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'consolekit', '', d)}" -RDEPENDS_pulseaudio-misc += "pulseaudio-module-cli-protocol-unix" +RDEPENDS:pulseaudio-module-console-kit =+ "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'consolekit', '', d)}" +RDEPENDS:pulseaudio-misc += "pulseaudio-module-cli-protocol-unix" -FILES_${PN}-module-alsa-card += "${datadir}/pulseaudio/alsa-mixer" -FILES_${PN}-module-gconf += "${libexecdir}/pulse/gconf-helper" +FILES:${PN}-module-alsa-card += "${datadir}/pulseaudio/alsa-mixer" GSETTINGS_PACKAGE = "${@bb.utils.contains('PACKAGECONFIG', 'gsettings', '${PN}-module-gsettings', '', d)}" -FILES_${PN}-module-gsettings += "${libexecdir}/pulse/gsettings-helper ${datadir}/GConf/gsettings ${datadir}/glib-2.0/schemas" +FILES:${PN}-module-gsettings += "${libexecdir}/pulse/gsettings-helper ${datadir}/GConf/gsettings ${datadir}/glib-2.0/schemas" # The console-kit module is good to have on X11 systems (it keeps PulseAudio # running for the duration of the user login session). The device-manager and # x11-* modules are referenced from the start-pulseaudio-x11 script, so those # modules must be installed when X11 is enabled. -RDEPENDS_pulseaudio-server += "\ +RDEPENDS:pulseaudio-server += "\ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '\ pulseaudio-module-device-manager \ pulseaudio-module-x11-cork-request \ @@ -286,6 +276,6 @@ RDEPENDS_pulseaudio-server += "\ pulseaudio-module-x11-xsmp \ ', '', d)}" -RDEPENDS_pulseaudio-server += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', \ +RDEPENDS:pulseaudio-server += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', \ bb.utils.contains('DISTRO_FEATURES', 'systemd', 'pulseaudio-module-systemd-login', 'pulseaudio-module-console-kit', d), \ '', d)}" diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-doxygen-meson.build-remove-dependency-on-doxygen-bin.patch b/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-doxygen-meson.build-remove-dependency-on-doxygen-bin.patch new file mode 100644 index 0000000000..b1a43bd7f0 --- /dev/null +++ b/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-doxygen-meson.build-remove-dependency-on-doxygen-bin.patch @@ -0,0 +1,26 @@ +From 4ee244d0824e772ab35abb0f9df5e8088e16fc5d Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <alex.kanavin@gmail.com> +Date: Mon, 26 Apr 2021 19:30:40 +0200 +Subject: [PATCH] doxygen/meson.build: remove dependency on doxygen binary + +New meson refuses to complete confuguration if doxygen is absent +even if this target is never actually run. As we never run it, +let's remove it, until upstream and/or meson figure out that it's +optional and should be treated as such. + +Upstream-Status: Inappropriate [needs proper upstream fix] +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> +--- + doxygen/meson.build | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/doxygen/meson.build b/doxygen/meson.build +index afc0e49..df55c83 100644 +--- a/doxygen/meson.build ++++ b/doxygen/meson.build +@@ -6,5 +6,3 @@ doxygen_conf = configure_file( + configuration : cdata, + ) + +-run_target('doxygen', +- command : ['doxygen', doxygen_conf]) diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-meson-Check-for-__get_cpuid.patch b/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-meson-Check-for-__get_cpuid.patch new file mode 100644 index 0000000000..c9d8abcbf2 --- /dev/null +++ b/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-meson-Check-for-__get_cpuid.patch @@ -0,0 +1,82 @@ +From 9d0dc8aedd08d77797f90fa6075a59613f18bf0d Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sun, 20 Dec 2020 07:56:07 -0800 +Subject: [PATCH] meson: Check for __get_cpuid + +checking for presence of cpuid.h header alone is not sufficient in some case to use +cpuid related functions. e.g. when using clang which is built for +multiple targets will have cpuid.h header as part of compiler headers in +distribution but one maybe compiling pulseaudion for non-x86 target. The +current check in meson succeeds and then compile fails later because +cpuid.h is x86-specific header. Therefore checking for symbol that is +needed makes this robust, so even if header exist it will try to ensure +the given symbol can be used + +Fixes +src/pulsecore/core-util.c:113: +| /mnt/b/yoe/master/build/tmp/work/riscv64-yoe-linux/pulseaudio/14.0-r0/recipe-sysroot-native/usr/lib/clang/11.0.1/include/cpuid.h:11:2: error: this header is for x86 only +| #error this header is for x86 only +| ^ + +Upstream-Status: Pending + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +Cc: Tanu Kaskinen <tanuk@iki.fi> +--- + meson.build | 5 ++++- + src/pulsecore/core-util.c | 2 +- + src/pulsecore/cpu-x86.c | 2 +- + 3 files changed, 6 insertions(+), 3 deletions(-) + +diff --git a/meson.build b/meson.build +index 2589627..5f5127e 100644 +--- a/meson.build ++++ b/meson.build +@@ -185,7 +185,6 @@ endif + check_headers = [ + 'arpa/inet.h', + 'byteswap.h', +- 'cpuid.h', + 'dlfcn.h', + 'execinfo.h', + 'grp.h', +@@ -243,6 +242,10 @@ if cc.has_header_symbol('pthread.h', 'PTHREAD_PRIO_INHERIT') + cdata.set('HAVE_PTHREAD_PRIO_INHERIT', 1) + endif + ++if cc.has_header_symbol('cpuid.h', '__get_cpuid') ++ cdata.set('HAVE_GET_CPUID', 1) ++endif ++ + # Functions + + check_functions = [ +diff --git a/src/pulsecore/core-util.c b/src/pulsecore/core-util.c +index 601b1d1..6f34e7c 100644 +--- a/src/pulsecore/core-util.c ++++ b/src/pulsecore/core-util.c +@@ -109,7 +109,7 @@ + #include <sys/personality.h> + #endif + +-#ifdef HAVE_CPUID_H ++#ifdef HAVE_GET_CPUID + #include <cpuid.h> + #endif + +diff --git a/src/pulsecore/cpu-x86.c b/src/pulsecore/cpu-x86.c +index 4e59e14..86595d4 100644 +--- a/src/pulsecore/cpu-x86.c ++++ b/src/pulsecore/cpu-x86.c +@@ -24,7 +24,7 @@ + + #include <stdint.h> + +-#ifdef HAVE_CPUID_H ++#ifdef HAVE_GET_CPUID + #include <cpuid.h> + #endif + +-- +2.29.2 + diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-remap-arm-Adjust-inline-asm-constraints.patch b/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-remap-arm-Adjust-inline-asm-constraints.patch deleted file mode 100644 index 95133fd9d4..0000000000 --- a/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-remap-arm-Adjust-inline-asm-constraints.patch +++ /dev/null @@ -1,114 +0,0 @@ -From 3450d1fcfe8a8f84553ab299cd96ae0705ddffbe Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Thu, 5 Mar 2020 11:48:28 -0800 -Subject: [PATCH] remap/arm: Adjust inline asm constraints - -gcc10 can effectively emit single precision registers if right -operand modifier constraint is not in use - -This results in assembler rejecting the code - -/tmp/ccEG4QpI.s:646: Error: VFP/Neon double precision register expected -- `vtbl.8 d3,{d0,d1},s8' -/tmp/ccEG4QpI.s:678: Error: invalid instruction shape -- `vmul.f32 d0,d0,s8' - -Therefore add %P qualifier to request double registers sinece 'w' could -mean variable could be stored in s0..s14 and GCC defaults to printing out s0..s14. -Note those registers map to d0..d7 also. - -Output generated is exactly same with gcc9, and it also now compiles -with gcc10 - -Its not documented well in gcc docs and there is a ticket for that -https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84343 - -Upstream-Status: Submitted [https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/261] -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - src/pulsecore/remap_neon.c | 22 +++++++++++----------- - 1 file changed, 11 insertions(+), 11 deletions(-) - -diff --git a/src/pulsecore/remap_neon.c b/src/pulsecore/remap_neon.c -index 41208986d..ca3b95b48 100644 ---- a/src/pulsecore/remap_neon.c -+++ b/src/pulsecore/remap_neon.c -@@ -189,7 +189,7 @@ static void remap_ch4_to_mono_float32ne_neon(pa_remap_t *m, float *dst, const fl - "vadd.f32 d0, d0, d1 \n\t" - "vadd.f32 d2, d2, d3 \n\t" - "vadd.f32 d0, d0, d2 \n\t" -- "vmul.f32 d0, d0, %[quart] \n\t" -+ "vmul.f32 d0, d0, %P[quart] \n\t" - "vst1.32 {d0}, [%[dst]]! \n\t" - : [dst] "+r" (dst), [src] "+r" (src) /* output operands */ - : [quart] "w" (quart) /* input operands */ -@@ -276,7 +276,7 @@ static void remap_arrange_stereo_s16ne_neon(pa_remap_t *m, int16_t *dst, const i - for (; n >= 2; n -= 2) { - __asm__ __volatile__ ( - "vld1.s16 d0, [%[src]]! \n\t" -- "vtbl.8 d0, {d0}, %[t] \n\t" -+ "vtbl.8 d0, {d0}, %P[t] \n\t" - "vst1.s16 d0, [%[dst]]! \n\t" - : [dst] "+r" (dst), [src] "+r" (src) /* output operands */ - : [t] "w" (t) /* input operands */ -@@ -287,7 +287,7 @@ static void remap_arrange_stereo_s16ne_neon(pa_remap_t *m, int16_t *dst, const i - if (n > 0) { - __asm__ __volatile__ ( - "vld1.32 d0[0], [%[src]]! \n\t" -- "vtbl.8 d0, {d0}, %[t] \n\t" -+ "vtbl.8 d0, {d0}, %P[t] \n\t" - "vst1.32 d0[0], [%[dst]]! \n\t" - : [dst] "+r" (dst), [src] "+r" (src) /* output operands */ - : [t] "w" (t) /* input operands */ -@@ -302,8 +302,8 @@ static void remap_arrange_ch2_ch4_s16ne_neon(pa_remap_t *m, int16_t *dst, const - for (; n > 0; n--) { - __asm__ __volatile__ ( - "vld1.32 d0[0], [%[src]]! \n\t" -- "vtbl.8 d0, {d0}, %[t] \n\t" -- "vst1.s16 d0, [%[dst]]! \n\t" -+ "vtbl.8 d0, {d0}, %P[t] \n\t" -+ "vst1.s16 d0, [%[dst]]! \n\t" - : [dst] "+r" (dst), [src] "+r" (src) /* output operands */ - : [t] "w" (t) /* input operands */ - : "memory", "d0" /* clobber list */ -@@ -317,7 +317,7 @@ static void remap_arrange_ch4_s16ne_neon(pa_remap_t *m, int16_t *dst, const int1 - for (; n > 0; n--) { - __asm__ __volatile__ ( - "vld1.s16 d0, [%[src]]! \n\t" -- "vtbl.8 d0, {d0}, %[t] \n\t" -+ "vtbl.8 d0, {d0}, %P[t] \n\t" - "vst1.s16 d0, [%[dst]]! \n\t" - : [dst] "+r" (dst), [src] "+r" (src) /* output operands */ - : [t] "w" (t) /* input operands */ -@@ -332,7 +332,7 @@ static void remap_arrange_stereo_float32ne_neon(pa_remap_t *m, float *dst, const - for (; n > 0; n--) { - __asm__ __volatile__ ( - "vld1.f32 d0, [%[src]]! \n\t" -- "vtbl.8 d0, {d0}, %[t] \n\t" -+ "vtbl.8 d0, {d0}, %P[t] \n\t" - "vst1.s16 {d0}, [%[dst]]! \n\t" - : [dst] "+r" (dst), [src] "+r" (src) /* output operands */ - : [t] "w" (t) /* input operands */ -@@ -349,8 +349,8 @@ static void remap_arrange_ch2_ch4_any32ne_neon(pa_remap_t *m, float *dst, const - for (; n > 0; n--) { - __asm__ __volatile__ ( - "vld1.f32 d0, [%[src]]! \n\t" -- "vtbl.8 d1, {d0}, %[t0] \n\t" -- "vtbl.8 d2, {d0}, %[t1] \n\t" -+ "vtbl.8 d1, {d0}, %P[t0] \n\t" -+ "vtbl.8 d2, {d0}, %P[t1] \n\t" - "vst1.s16 {d1,d2}, [%[dst]]! \n\t" - : [dst] "+r" (dst), [src] "+r" (src) /* output operands */ - : [t0] "w" (t0), [t1] "w" (t1) /* input operands */ -@@ -366,8 +366,8 @@ static void remap_arrange_ch4_float32ne_neon(pa_remap_t *m, float *dst, const fl - for (; n > 0; n--) { - __asm__ __volatile__ ( - "vld1.f32 {d0,d1}, [%[src]]! \n\t" -- "vtbl.8 d2, {d0,d1}, %[t0] \n\t" -- "vtbl.8 d3, {d0,d1}, %[t1] \n\t" -+ "vtbl.8 d2, {d0,d1}, %P[t0] \n\t" -+ "vtbl.8 d3, {d0,d1}, %P[t1] \n\t" - "vst1.s16 {d2,d3}, [%[dst]]! \n\t" - : [dst] "+r" (dst), [src] "+r" (src) /* output operands */ - : [t0] "w" (t0), [t1] "w" (t1) /* input operands */ --- -2.25.1 - diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-remap_neon-use-register-r12-instead-of-r7.patch b/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-remap_neon-use-register-r12-instead-of-r7.patch deleted file mode 100644 index aaa162f9b0..0000000000 --- a/meta/recipes-multimedia/pulseaudio/pulseaudio/0001-remap_neon-use-register-r12-instead-of-r7.patch +++ /dev/null @@ -1,48 +0,0 @@ -From 4a1668f341f0228904105f77fe5871b9d59b2663 Mon Sep 17 00:00:00 2001 -From: Tanu Kaskinen <tanuk@iki.fi> -Date: Mon, 13 Jul 2020 12:42:14 +0300 -Subject: [PATCH] remap_neon: use register r12 instead of r7 - -When the Thumb instructions set is used and frame pointers are enabled -(-fno-omit-frame-pointer), r7 can't be used, because it's used for the -frame pointer. Trying to use r7 caused the compilation to fail. - -Thanks to Andre McCurdy for suggesting[1] this fix, all I had to do was to -test that it works. The code builds now, and cpu-remap-test also -succeeds. - -[1] https://lists.openembedded.org/g/openembedded-core/message/136786 - -Upstream-Status: Submitted [https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/324] - -Signed-off-by: Tanu Kaskinen <tanuk@iki.fi> ---- - src/pulsecore/remap_neon.c | 10 +++++++--- - 1 file changed, 7 insertions(+), 3 deletions(-) - -diff --git a/src/pulsecore/remap_neon.c b/src/pulsecore/remap_neon.c -index ca3b95b48..6f71345f8 100644 ---- a/src/pulsecore/remap_neon.c -+++ b/src/pulsecore/remap_neon.c -@@ -52,11 +52,15 @@ static void remap_mono_to_stereo_float32ne_generic_arm(pa_remap_t *m, float *dst - __asm__ __volatile__ ( - "ldm %[src]!, {r4,r6} \n\t" - "mov r5, r4 \n\t" -- "mov r7, r6 \n\t" -- "stm %[dst]!, {r4-r7} \n\t" -+ -+ /* We use r12 instead of r7 here, because r7 is reserved for the -+ * frame pointer when using Thumb. */ -+ "mov r12, r6 \n\t" -+ -+ "stm %[dst]!, {r4-r6,r12} \n\t" - : [dst] "+r" (dst), [src] "+r" (src) /* output operands */ - : /* input operands */ -- : "memory", "r4", "r5", "r6", "r7" /* clobber list */ -+ : "memory", "r4", "r5", "r6", "r12" /* clobber list */ - ); - } - --- -2.20.1 - diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio/0002-do-not-display-CLFAGS-to-improve-reproducibility-bui.patch b/meta/recipes-multimedia/pulseaudio/pulseaudio/0002-do-not-display-CLFAGS-to-improve-reproducibility-bui.patch index 43add75db4..48f0492177 100644 --- a/meta/recipes-multimedia/pulseaudio/pulseaudio/0002-do-not-display-CLFAGS-to-improve-reproducibility-bui.patch +++ b/meta/recipes-multimedia/pulseaudio/pulseaudio/0002-do-not-display-CLFAGS-to-improve-reproducibility-bui.patch @@ -13,18 +13,18 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/daemon/main.c b/src/daemon/main.c -index c80fa94..75496be 100644 +index 30ef499..5c3abf0 100644 --- a/src/daemon/main.c +++ b/src/daemon/main.c -@@ -908,7 +908,7 @@ int main(int argc, char *argv[]) { +@@ -916,7 +916,7 @@ int main(int argc, char *argv[]) { + pa_set_env_and_record("PULSE_SYSTEM", conf->system_instance ? "1" : "0"); pa_log_info("This is PulseAudio %s", PACKAGE_VERSION); - pa_log_debug("Compilation host: %s", CANONICAL_HOST); - pa_log_debug("Compilation CFLAGS: %s", PA_CFLAGS); + pa_log_debug("Compilation CFLAGS: ***"); #ifdef HAVE_LIBSAMPLERATE pa_log_warn("Compiled with DEPRECATED libsamplerate support!"); -- -2.7.4 +2.25.1 diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio_13.0.bb b/meta/recipes-multimedia/pulseaudio/pulseaudio_15.0.bb index 53e9a2357d..239d31810b 100644 --- a/meta/recipes-multimedia/pulseaudio/pulseaudio_13.0.bb +++ b/meta/recipes-multimedia/pulseaudio/pulseaudio_15.0.bb @@ -3,10 +3,9 @@ require pulseaudio.inc SRC_URI = "http://freedesktop.org/software/pulseaudio/releases/${BP}.tar.xz \ file://0001-client-conf-Add-allow-autospawn-for-root.patch \ file://0002-do-not-display-CLFAGS-to-improve-reproducibility-bui.patch \ - file://0001-remap-arm-Adjust-inline-asm-constraints.patch \ - file://0001-remap_neon-use-register-r12-instead-of-r7.patch \ + file://0001-meson-Check-for-__get_cpuid.patch \ file://volatiles.04_pulse \ + file://0001-doxygen-meson.build-remove-dependency-on-doxygen-bin.patch \ " -SRC_URI[md5sum] = "e41d606f90254ed45c90520faf83d95c" -SRC_URI[sha256sum] = "961b23ca1acfd28f2bc87414c27bb40e12436efcf2158d29721b1e89f3f28057" +SRC_URI[sha256sum] = "a40b887a3ba98cc26976eb11bdb6613988f145b19024d1b6555c6a03c9cba1a0" UPSTREAM_CHECK_REGEX = "pulseaudio-(?P<pver>\d+(\.(?!99)\d+)+)\.tar" diff --git a/meta/recipes-multimedia/sbc/sbc/0001-sbc_primitives-Fix-build-on-non-x86.patch b/meta/recipes-multimedia/sbc/sbc/0001-sbc_primitives-Fix-build-on-non-x86.patch new file mode 100644 index 0000000000..11cec74fbb --- /dev/null +++ b/meta/recipes-multimedia/sbc/sbc/0001-sbc_primitives-Fix-build-on-non-x86.patch @@ -0,0 +1,45 @@ +From f4a1224323e386090a44bf70ee0ac9877ba7fb0d Mon Sep 17 00:00:00 2001 +From: Marius Bakke <marius@gnu.org> +Date: Tue, 22 Dec 2020 11:04:26 +0000 +Subject: [PATCH] sbc_primitives: Fix build on non-x86. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Don't call __builtin_cpu_init unless targeting i386 or x86_64. +Otherwise we get an error at link time: + + CC sbc/sbc_primitives.lo +sbc/sbc_primitives.c: In function ‘sbc_init_primitives_x86’: +sbc/sbc_primitives.c:596:2: warning: implicit declaration of function ‘__builtin_cpu_init’; did you mean ‘__builtin_irint’? [-Wimplicit-function-declaration] +[...] + CCLD src/sbcdec +ld: sbc/.libs/libsbc-private.a(sbc_primitives.o): in function `sbc_init_primitives': +sbc_primitives.c:(.text+0x3a30): undefined reference to `__builtin_cpu_init' + +Upstream-Status: Backport +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> +--- + sbc/sbc_primitives.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/sbc/sbc_primitives.c b/sbc/sbc_primitives.c +index 97a75be..09c214a 100644 +--- a/sbc/sbc_primitives.c ++++ b/sbc/sbc_primitives.c +@@ -593,6 +593,7 @@ static int sbc_calc_scalefactors_j( + + static void sbc_init_primitives_x86(struct sbc_encoder_state *state) + { ++#if defined(__x86_64__) || defined(__i386__) + __builtin_cpu_init(); + + #ifdef SBC_BUILD_WITH_MMX_SUPPORT +@@ -604,6 +605,7 @@ static void sbc_init_primitives_x86(struct sbc_encoder_state *state) + if (__builtin_cpu_supports("sse4.2")) + sbc_init_primitives_sse(state); + #endif ++#endif + } + + /* diff --git a/meta/recipes-multimedia/sbc/sbc_1.4.bb b/meta/recipes-multimedia/sbc/sbc_1.5.bb index 674d77ef48..13bba6b6b3 100644 --- a/meta/recipes-multimedia/sbc/sbc_1.4.bb +++ b/meta/recipes-multimedia/sbc/sbc_1.5.bb @@ -3,8 +3,8 @@ DESCRIPTION = "Bluetooth low-complexity, subband codec (SBC) library." HOMEPAGE = "https://www.bluez.org" SECTION = "libs" LICENSE = "GPLv2+ & LGPLv2.1+" -LICENSE_${PN} = "LGPLv2.1+" -LICENSE_${PN}-examples = "GPLv2+" +LICENSE:${PN} = "LGPLv2.1+" +LICENSE:${PN}-examples = "GPLv2+" LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \ file://COPYING.LIB;md5=fb504b67c50331fc78734fed90fb0e09 \ file://src/sbcenc.c;beginline=1;endline=24;md5=08e7a70b127f4100ff2cd7d629147d8d \ @@ -12,12 +12,13 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \ DEPENDS = "libsndfile1" -SRC_URI = "${KERNELORG_MIRROR}/linux/bluetooth/${BP}.tar.xz" +SRC_URI = "${KERNELORG_MIRROR}/linux/bluetooth/${BP}.tar.xz \ + file://0001-sbc_primitives-Fix-build-on-non-x86.patch \ + " -SRC_URI[md5sum] = "800fb0908899baa48dc216d8e156cc05" -SRC_URI[sha256sum] = "518bf46e6bb3dc808a95e1eabad26fdebe8a099c1e781c27ed7fca6c2f4a54c9" +SRC_URI[sha256sum] = "0cbad69823a99e8421fe0700e8cf9eeb8fa0c1ad28e8dbc2182b3353507931d2" inherit autotools pkgconfig PACKAGES =+ "${PN}-examples" -FILES_${PN}-examples += "${bindir}/*" +FILES:${PN}-examples += "${bindir}/*" diff --git a/meta/recipes-multimedia/speex/speexdsp_1.2.0.bb b/meta/recipes-multimedia/speex/speexdsp_1.2.0.bb index 6369646761..bb7bc9aade 100644 --- a/meta/recipes-multimedia/speex/speexdsp_1.2.0.bb +++ b/meta/recipes-multimedia/speex/speexdsp_1.2.0.bb @@ -21,7 +21,7 @@ EXTRA_OECONF = "\ # speexdsp was split off from speex in 1.2rc2. Older versions of speex can't # be installed together with speexdsp, since they contain overlapping files. -RCONFLICTS_${PN} = "speex (< 1.2rc2)" -RCONFLICTS_${PN}-dbg = "speex-dbg (< 1.2rc2)" -RCONFLICTS_${PN}-dev = "speex-dev (< 1.2rc2)" -RCONFLICTS_${PN}-staticdev = "speex-staticdev (< 1.2rc2)" +RCONFLICTS:${PN} = "speex (< 1.2rc2)" +RCONFLICTS:${PN}-dbg = "speex-dbg (< 1.2rc2)" +RCONFLICTS:${PN}-dev = "speex-dev (< 1.2rc2)" +RCONFLICTS:${PN}-staticdev = "speex-staticdev (< 1.2rc2)" diff --git a/meta/recipes-multimedia/webp/libwebp_1.1.0.bb b/meta/recipes-multimedia/webp/libwebp_1.2.1.bb index 68e5ae2b3c..d634e02180 100644 --- a/meta/recipes-multimedia/webp/libwebp_1.1.0.bb +++ b/meta/recipes-multimedia/webp/libwebp_1.2.1.bb @@ -14,8 +14,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=6e8dee932c26f2dab503abf70c96d8bb \ file://PATENTS;md5=c6926d0cb07d296f886ab6e0cc5a85b7" SRC_URI = "http://downloads.webmproject.org/releases/webp/${BP}.tar.gz" -SRC_URI[md5sum] = "7e047f2cbaf584dff7a8a7e0f8572f18" -SRC_URI[sha256sum] = "98a052268cc4d5ece27f76572a7f50293f439c17a98e67c4ea0c7ed6f50ef043" +SRC_URI[sha256sum] = "808b98d2f5b84e9b27fdef6c5372dac769c3bda4502febbfa5031bd3c4d7d018" UPSTREAM_CHECK_URI = "http://downloads.webmproject.org/releases/webp/index.html" @@ -31,8 +30,8 @@ EXTRA_OECONF = " \ EXTRA_OECONF_ARM = " \ ${@bb.utils.contains("TUNE_FEATURES","neon","--enable-neon","--disable-neon",d)} \ " -EXTRA_OECONF_append_arm = " ${EXTRA_OECONF_ARM}" -EXTRA_OECONF_append_armeb = " ${EXTRA_OECONF_ARM}" +EXTRA_OECONF:append:arm = " ${EXTRA_OECONF_ARM}" +EXTRA_OECONF:append:armeb = " ${EXTRA_OECONF_ARM}" inherit autotools lib_package @@ -52,5 +51,5 @@ PACKAGECONFIG[gl] = "--enable-gl,--disable-gl,mesa-glut" PACKAGES =+ "${PN}-gif2webp" -DESCRIPTION_${PN}-gif2webp = "Simple tool to convert animated GIFs to WebP" -FILES_${PN}-gif2webp = "${bindir}/gif2webp" +DESCRIPTION:${PN}-gif2webp = "Simple tool to convert animated GIFs to WebP" +FILES:${PN}-gif2webp = "${bindir}/gif2webp" diff --git a/meta/recipes-multimedia/x264/x264_git.bb b/meta/recipes-multimedia/x264/x264_git.bb index 25ab72c66d..c49e935d1c 100644 --- a/meta/recipes-multimedia/x264/x264_git.bb +++ b/meta/recipes-multimedia/x264/x264_git.bb @@ -8,26 +8,26 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" DEPENDS = "nasm-native" -SRC_URI = "git://github.com/mirror/x264;branch=stable \ +SRC_URI = "git://github.com/mirror/x264;branch=stable;protocol=https \ file://don-t-default-to-cortex-a9-with-neon.patch \ file://Fix-X32-build-by-disabling-asm.patch \ " UPSTREAM_CHECK_COMMITS = "1" -SRCREV = "d198931a63049db1f2c92d96c34904c69fde8117" +SRCREV = "5db6aa6cab1b146e07b60cc1736a01f21da01154" -PV = "r3011+git${SRCPV}" +PV = "r3039+git${SRCPV}" S = "${WORKDIR}/git" inherit lib_package pkgconfig X264_DISABLE_ASM = "" -X264_DISABLE_ASM_x86 = "--disable-asm" -X264_DISABLE_ASM_armv4 = "--disable-asm" -X264_DISABLE_ASM_armv5 = "--disable-asm" -X264_DISABLE_ASM_powerpc = "${@bb.utils.contains("TUNE_FEATURES", "spe", "--disable-asm", "", d)}" -X264_DISABLE_ASM_mipsarch = "${@bb.utils.contains("TUNE_FEATURES", "r6", "", "--disable-asm", d)}" +X264_DISABLE_ASM:x86 = "--disable-asm" +X264_DISABLE_ASM:armv4 = "--disable-asm" +X264_DISABLE_ASM:armv5 = "--disable-asm" +X264_DISABLE_ASM:powerpc = "${@bb.utils.contains("TUNE_FEATURES", "spe", "--disable-asm", "", d)}" +X264_DISABLE_ASM:mipsarch = "${@bb.utils.contains("TUNE_FEATURES", "r6", "", "--disable-asm", d)}" EXTRA_OECONF = '--prefix=${prefix} \ --host=${HOST_SYS} \ |