poky: subtree update:20946c63c2..c17113f1e2

Adrian Bunk (3):
      shadow: musl now supports secure_getenv
      kmod: Replace dolt hacks with backport of upstream dolt removal
      btrfs-tools: Add a PACKAGECONFIG for zstd

Alexander Kanavin (12):
      linux-yocto: add drm-bochs support
      mesa: fix upstream version check
      conf/conf-notes.txt: add a mention of common tools
      conf/conf-notes.txt: add a mention of common tools
      gtk-doc: upgrade 1.30 -> 1.31
      desktop-file-utils: upgrade 0.23 -> 0.24
      libdazzle: upgrade 3.32.2 -> 3.32.3
      rt-tests: exclude another development version
      vala: upgrade 0.44.5 -> 0.44.7
      epiphany: upgrade 3.32.3 -> 3.32.4
      libmodulemd: depend on target python at build time
      createrepo-c: upgrade 0.14.3 -> 0.15.0

Alistair Francis (3):
      qemu: Upgrade to version 4.1
      scripts/runqemu: Add support for the BIOS variable
      qemuriscv64: Specify the firmware as a bios instead of kernel

Anuj Mittal (2):
      binutils: fix CVE-2019-14250 CVE-2019-14444
      patch: backport fixes

Bruce Ashfield (6):
      kernel-devsrc: tweak for v5.3+
      kern-tools: Add SPDX license headers to source files
      linux-yocto: arch/x86/boot: use prefix map to avoid embedded paths
      kernel-yocto: import security fragments from meta-security
      kconf_check: tweak CONFIG_ regex
      linux-yocto/4.19: make drm-bochs feature available

Changqing Li (2):
      dbus: disable test-bus
      qemumips/qemumips64: move QB_SYSTEM_NAME to corresponding conf

Chen Qi (1):
      target-sdk-provides-dummy: extend packages for multilib case

He Zhe (2):
      ltp: Fix tgkill03 failure
      ltp: Fix ustat02 failure

Hongxu Jia (3):
      nfs-utils: decrease RLIMIT_NOFILE to 4k for systemd
      distcc: upgrade 3.3.2 -> 3.3.3
      ncurses: upgrade 6.1+20181013 -> 6.1+20190803

Jaewon Lee (1):
      devtool: build: Also run deploy for devtool build if applicable

Jason Wessel (2):
      cross-localedef-native: Add hardlink resolver from util-linux
      libc-package.bbclass: Split locale hard link processing into two parts

Jon Mason (1):
      resulttool: Prevent multiple results for the same test

Kai Kang (1):
      webkitgtk: disable gold on mipsn32

Kevin Hao (1):
      psplash: Avoid mount the psplash tmpfs twice

Khem Raj (10):
      musl: Update to latest tip
      systemd: Drop musl __secure_getenv patch
      mesa: Add packageconfigs for vc4 and v3d
      util-linux: Make pam specific logic apply to target recipe alone
      systemd.bbclass: Limit rm_sysvinit_initddir and rm_systemd_unitdir to target alone
      systemd: Refresh patch after removal of __secure_getenv patch
      gcc-9: Upgrade to 9.2
      gcc: Search in OE specific target gcclibdir
      opensbi: Disable SECURITY_CFLAGS since it cant link with libssp
      libffi: Upgrade to 3.3-rc0

Lei Maohui (2):
      nativesdk-qemu: support aarch64_be.
      at: fix a spelling mistake.

Mikko Rapeli (1):
      stress-ng: provide stress

Mingli Yu (1):
      python3: fix the test_locale output format

Oleksandr Kravchuk (8):
      ffmpeg: update to 4.2
      python-setuptools: update to 41.1.0
      python3-scons: update to 3.1.1
      ofono: update to 1.30
      bitbake.conf: fix XORG_MIRROR URL
      cups: update to 2.2.12
      git: update to 2.23.0
      python-setuptools: update to 41.2.0

Otavio Salvador (2):
      linux-firmware: Upgrade 20190618 -> 20190815
      kmscube: Bump revision to f632b23

Philippe Normand (1):
      libtasn1: Enable nativesdk support

Ricardo Ribalda Delgado (1):
      packagegroup-core-base-utils: Make it machine specific

Richard Purdie (7):
      yocto-check-layer: Ensure we use OEBasicHash as the signature handler
      package: Fix race between do_package and do_packagedata
      bitbake: cookerdata: Delay the setup of the siggen slightly to allow metadata defined siggens
      bitbake: runqueue: Small but critical fix
      bitbake: runqueue: Optimise holdoff task handling
      bitbake: runqueue: Further optimise holdoff tasks
      bitbake: runqueue: Optimise build_taskdepdata slightly

Ross Burton (2):
      systemd: add PACKAGECONFIG for gnu-efi
      pango: upgrade to 1.44.5

Trevor Gamblin (2):
      quilt: Export QUILT_PC variable in ptest Makefile
      quilt: added less to RDEPENDS list

Wes Lindauer (5):
      iw: Fix license field to BSD-2-Clause
      openssh: Update LICENSE field with missing values
      shadow: Fix BSD license file checksum
      sudo: Fix BSD license file checksum
      libunwind: Fix MIT license file checksum

Yuan Chao (1):
      libnss-nis: upgrade 3.0 -> 3.1

Zang Ruochen (3):
      acpid: upgrade 2.0.31 -> 2.0.32
      lz4:upgrade 1.9.1 -> 1.9.2
      python3-pip:upgrade 19.2.1 -> 19.2.2

Change-Id: I2068692bfdbbf18f892761a12f85e913b8212f3f
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.2.bb b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.2.bb
new file mode 100644
index 0000000..2d69d8b
--- /dev/null
+++ b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.2.bb
@@ -0,0 +1,154 @@
+SUMMARY = "A complete, cross-platform solution to record, convert and stream audio and video."
+DESCRIPTION = "FFmpeg is the leading multimedia framework, able to decode, encode, transcode, \
+               mux, demux, stream, filter and play pretty much anything that humans and machines \
+               have created. It supports the most obscure ancient formats up to the cutting edge."
+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_FLAGS = "commercial"
+
+LIC_FILES_CHKSUM = "file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+                    file://COPYING.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \
+                    file://COPYING.LGPLv2.1;md5=bd7a443320af8c812e4c18d1b79df004 \
+                    file://COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02"
+
+SRC_URI = "https://www.ffmpeg.org/releases/${BP}.tar.xz \
+           file://mips64_cpu_detection.patch \
+           "
+SRC_URI[md5sum] = "fb33a9110251873002869664686b2a3f"
+SRC_URI[sha256sum] = "023f10831a97ad93d798f53a3640e55cd564abfeba807ecbe8524dac4fedecd5"
+
+# 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"
+
+# Should be API compatible with libav (which was a fork of ffmpeg)
+# libpostproc was previously packaged from a separate recipe
+PROVIDES = "libav libpostproc"
+
+DEPENDS = "alsa-lib zlib libogg nasm-native"
+
+inherit autotools pkgconfig
+
+PACKAGECONFIG ??= "avdevice avfilter avcodec avformat swresample swscale postproc avresample \
+                   bzlib gpl lzma theora x264 \
+                   ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'xv xcb', '', d)}"
+
+# libraries to build in addition to avutil
+PACKAGECONFIG[avdevice] = "--enable-avdevice,--disable-avdevice"
+PACKAGECONFIG[avfilter] = "--enable-avfilter,--disable-avfilter"
+PACKAGECONFIG[avcodec] = "--enable-avcodec,--disable-avcodec"
+PACKAGECONFIG[avformat] = "--enable-avformat,--disable-avformat"
+PACKAGECONFIG[swresample] = "--enable-swresample,--disable-swresample"
+PACKAGECONFIG[swscale] = "--enable-swscale,--disable-swscale"
+PACKAGECONFIG[postproc] = "--enable-postproc,--disable-postproc"
+PACKAGECONFIG[avresample] = "--enable-avresample,--disable-avresample"
+
+# features to support
+PACKAGECONFIG[bzlib] = "--enable-bzlib,--disable-bzlib,bzip2"
+PACKAGECONFIG[gpl] = "--enable-gpl,--disable-gpl"
+PACKAGECONFIG[gsm] = "--enable-libgsm,--disable-libgsm,libgsm"
+PACKAGECONFIG[jack] = "--enable-indev=jack,--disable-indev=jack,jack"
+PACKAGECONFIG[libvorbis] = "--enable-libvorbis,--disable-libvorbis,libvorbis"
+PACKAGECONFIG[lzma] = "--enable-lzma,--disable-lzma,xz"
+PACKAGECONFIG[mfx] = "--enable-libmfx,--disable-libmfx,intel-mediasdk"
+PACKAGECONFIG[mp3lame] = "--enable-libmp3lame,--disable-libmp3lame,lame"
+PACKAGECONFIG[openssl] = "--enable-openssl,--disable-openssl,openssl"
+PACKAGECONFIG[sdl2] = "--enable-sdl2,--disable-sdl2,virtual/libsdl2"
+PACKAGECONFIG[speex] = "--enable-libspeex,--disable-libspeex,speex"
+PACKAGECONFIG[theora] = "--enable-libtheora,--disable-libtheora,libtheora"
+PACKAGECONFIG[vaapi] = "--enable-vaapi,--disable-vaapi,libva"
+PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau"
+PACKAGECONFIG[vpx] = "--enable-libvpx,--disable-libvpx,libvpx"
+PACKAGECONFIG[x264] = "--enable-libx264,--disable-libx264,x264"
+PACKAGECONFIG[xcb] = "--enable-libxcb,--disable-libxcb,libxcb"
+PACKAGECONFIG[xv] = "--enable-outdev=xv,--disable-outdev=xv,libxv"
+
+# Check codecs that require --enable-nonfree
+USE_NONFREE = "${@bb.utils.contains_any('PACKAGECONFIG', [ 'openssl' ], 'yes', '', d)}"
+
+def cpu(d):
+    for arg in (d.getVar('TUNE_CCARGS') or '').split():
+        if arg.startswith('-mcpu='):
+            return arg[6:]
+    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}" \
+    --arch=${TARGET_ARCH} \
+    --target-os="linux" \
+    --enable-cross-compile \
+    --extra-cflags="${TARGET_CFLAGS} ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" \
+    --extra-ldflags="${TARGET_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"
+# 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)}"
+
+do_configure() {
+    ${S}/configure ${EXTRA_OECONF}
+}
+
+PACKAGES =+ "libavcodec \
+             libavdevice \
+             libavfilter \
+             libavformat \
+             libavresample \
+             libavutil \
+             libpostproc \
+             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}"
+
+# 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"