poky: subtree update:a8544811d7..b5763b2f48

Alexander Kanavin (29):
      rpm: upgrade to 4.15.1
      libmodulemd: move from 1.x to 2.x version
      libdnf: upgrade 0.28.1 -> 0.47.0
      dnf: upgrade 4.2.2 -> 4.2.21
      dnf: add a patch for base-files installation failures
      logrotate: update to 3.16.0
      rt-tests: further exclusion of development versions
      kmscube: update to latest commit
      xcb-proto: update to 1.14
      libxcb: update to 1.14
      ghostscript: do not hardcode version in SRC_URI
      ghostscript: update 9.50 -> 9.52
      webkitgtk: update to 2.28.2
      python3-gitdb: update to 4.0.4
      libevdev: update to 1.9.0
      python3-dbusmock: add recipe from meta-oe
      mc: update to 4.8.24
      coreutils: update to 8.32
      glib-2.0: update 2.62.4 -> 2.64.2
      glib-networking: update to 2.64.2
      gptfdisk: update to 1.0.5
      clutter-1.0: update to 1.26.4
      diffoscope: update to 143
      wpe: update to 1.6.0
      vte: update to 0.60.2
      libnotify: update to 0.7.9
      connman: update to 1.38
      xkeyboard-config: update to 2.29
      gcr: update to 3.36.0

Andreas M?ller (1):
      libsecret: upgrade 0.20.1 -> 0.20.3 / port to meson

Anibal Limon (2):
      ptest-runner: Bump to 2.4.0
      oeqa/runtime: Use libdir to run ptest-runner

Bartłomiej Burdukiewicz (2):
      libva: add PACKAGECONFIG and additonal rules for glx.
      libva: removed opengl from REQUIRED_DISTRO_FEATURES.

Benjamin Fair (1):
      util-linux: fix build error in kill

Bruce Ashfield (4):
      linux-yocto/5.4: update to v5.4.28
      linux-yocto/5.4: update to v5.4.32
      linux-yocto-dev: bump to v5.7-rc
      linux-yocto/5.4: update to v5.4.34

Frazer Clews (2):
      bitbake: lib/toaster: fixup codebase so pydocstyle can parse
      bitbake: lib/bs4/testing.py: fix bs4 testing

Jan Luebbe (1):
      openssl: upgrade 1.1.1f -> 1.1.1g

Joshua Watt (1):
      jquery: Upgrade 3.4.1 -> 3.5.0

Khem Raj (2):
      dpkg: Add riscv32 CPU support
      musl: Remove spurious unused patch

Mingli Yu (1):
      iputils: Initialize libgcrypt

Peter Kjellerstedt (1):
      libdnf: Use single-quotes around string literals used in SQL statements

Pierre-Jean Texier (3):
      timezone: upgrade 2019c -> 2020a
      curl: upgrade 7.69.1 -> 7.70.0
      curl: support mqtt in PACKAGECONFIG

Richard Purdie (6):
      sanity: Require gcc 6 or later
      gcc-target: Ensure buildtools-extended-tarball doesn't use arch=native
      abi_version/staging: Bump versions to force rebuild after sstate corruption
      bitbake: bitdoc: Remove it
      utils: Drop FILESPATHPKG usage
      utils: Drop is_machine_specific()/machine_paths()

Robert P. J. Day (5):
      ref-manual: fix excessive command indentation
      ref-manual: IMAGE_TYPES, add tar.zst, delete elf
      ref-manual: typo "SSTATE_MIRROR" -> "SSTATE_MIRRORS"
      ref-manual: Remove long-dead PACKAGE_GROUP variable
      bitbake: docs: delete reference to obsolete recipe-depends.dot

Sakib Sajal (1):
      sqlite: backport CVE fixes

Tim Orling (2):
      atk: upgrade 2.34.1 -> 2.36.0
      at-spi2-core: upgrade 2.34.0 -> 2.36.0

Vyacheslav Yurkov (1):
      os-release: sanitize required fields

Wang Mingyu (1):
      icu: CVE-2020-10531

Change-Id: Iae5641be5ca6424275d2e0d63ba3a7a5ba90cde2
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
diff --git a/poky/meta/recipes-devtools/dnf/dnf_4.2.21.bb b/poky/meta/recipes-devtools/dnf/dnf_4.2.21.bb
new file mode 100644
index 0000000..44dab1d
--- /dev/null
+++ b/poky/meta/recipes-devtools/dnf/dnf_4.2.21.bb
@@ -0,0 +1,90 @@
+SUMMARY = "Package manager forked from Yum, using libsolv as a dependency resolver"
+DESCRIPTION = "Software package manager that installs, updates, and removes \
+packages on RPM-based Linux distributions. It automatically computes \
+dependencies and determines the actions required to install packages."
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+                    file://PACKAGE-LICENSING;md5=4a0548e303dbc77f067335b4d688e745 \
+                    "
+
+SRC_URI = "git://github.com/rpm-software-management/dnf.git \
+           file://0001-Corretly-install-tmpfiles.d-configuration.patch \
+           file://0001-Do-not-hardcode-etc-and-systemd-unit-directories.patch \
+           file://0005-Do-not-prepend-installroot-to-logdir.patch \
+           file://0029-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \
+           file://0030-Run-python-scripts-using-env.patch \
+           file://0001-set-python-path-for-completion_helper.patch \
+           file://0001-dnf-write-the-log-lock-to-root.patch \
+           "
+
+SRCREV = "864c381baabf024c299dca75abfda96139b8f583"
+UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
+
+S = "${WORKDIR}/git"
+
+inherit cmake gettext bash-completion distutils3-base systemd
+
+DEPENDS += "libdnf librepo libcomps python3-iniparse"
+
+# manpages generation requires http://www.sphinx-doc.org/
+EXTRA_OECMAKE = " -DWITH_MAN=0 -DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR} -DPYTHON_DESIRED=3"
+
+BBCLASSEXTEND = "native nativesdk"
+
+RDEPENDS_${PN} += " \
+  python3-core \
+  python3-codecs \
+  python3-netclient \
+  python3-email \
+  python3-threading \
+  python3-distutils \
+  python3-logging \
+  python3-fcntl \
+  librepo \
+  python3-shell \
+  libcomps \
+  libdnf \
+  python3-sqlite3 \
+  python3-compression \
+  python3-rpm \
+  python3-iniparse \
+  python3-json \
+  python3-curses \
+  python3-misc \
+  python3-gpg \
+  "
+
+RDEPENDS_${PN}_class-native = ""
+
+RRECOMMENDS_${PN}_class-target += "gnupg"
+
+# Create a symlink called 'dnf' as 'make install' does not do it, but
+# .spec file in dnf source tree does (and then Fedora and dnf documentation
+# says that dnf binary is plain 'dnf').
+do_install_append() {
+        lnr ${D}/${bindir}/dnf-3 ${D}/${bindir}/dnf
+        lnr ${D}/${bindir}/dnf-automatic-3 ${D}/${bindir}/dnf-automatic
+}
+
+# Direct dnf-native to read rpm configuration from our sysroot, not the one it was compiled in
+do_install_append_class-native() {
+        create_wrapper ${D}/${bindir}/dnf \
+                RPM_CONFIGDIR=${STAGING_LIBDIR_NATIVE}/rpm \
+                RPM_NO_CHROOT_FOR_SCRIPTS=1
+}
+
+do_install_append_class-nativesdk() {
+        create_wrapper ${D}/${bindir}/dnf \
+                RPM_CONFIGDIR=${SDKPATHNATIVE}${libdir_nativesdk}/rpm \
+                RPM_NO_CHROOT_FOR_SCRIPTS=1
+}
+
+SYSTEMD_SERVICE_${PN} = "dnf-makecache.service dnf-makecache.timer \
+                         dnf-automatic.service dnf-automatic.timer \
+                         dnf-automatic-download.service dnf-automatic-download.timer \
+                         dnf-automatic-install.service dnf-automatic-install.timer \
+                         dnf-automatic-notifyonly.service dnf-automatic-notifyonly.timer \
+"
+SYSTEMD_AUTO_ENABLE ?= "disable"
+
+PNBLACKLIST[dnf] ?= "${@bb.utils.contains('PACKAGE_CLASSES', 'package_rpm', '', 'does not build without package_rpm in PACKAGE_CLASSES due disabled rpm support in libsolv', d)}"