poky: subtree update:9d1b332292..2834c2f853

Alex Stewart (3):
      opkg-utils: upgrade to version 0.4.5
      opkg: upgrade to version 0.4.5
      opkg: add QA check for openssl feed verification

Alexander Kanavin (37):
      virglrenderer: explicitly depend on libgbm
      elfutils: update 0.183 -> 0.185
      libcap: update 2.49 -> 2.50
      perl: split perl-cross into its own recipe
      perl-cross: 1.3.5 -> 1.3.6
      perl: update 5.32.1 -> 5.34.0
      libgcrypt: upgrade 1.9.2 -> 1.9.3
      erofs-utils: correct upstream version check
      m4: correct ptest failures
      ovmf: update 2021.02 -> 2021.05
      apt: update 2.2.3 -> 2.2.4
      util-linux: update 2.36.2 -> 2.37
      cross-canadian: correct the location of pkg-config files
      nettle: update 3.7.2 -> 3.7.3
      glib-2.0: update 2.68.2 -> 2.68.3
      meson: upgrade 0.58.0 -> 0.58.1
      ell: upgrade 0.40 -> 0.41
      erofs-utils: upgrade 1.2.1 -> 1.3
      grub: upgrade 2.04+2.06~rc1 -> 2.06
      gptfdisk: upgrade 1.0.7 -> 1.0.8
      connman: update 1.39 -> 1.40
      libksba: upgrade 1.5.1 -> 1.6.0
      libnss-mdns: upgrade 0.15 -> 0.15.1
      libwpe: upgrade 1.10.0 -> 1.10.1
      puzzles: upgrade to latest revision
      rng-tools: upgrade 6.12 -> 6.13
      stress-ng: upgrade 0.12.09 -> 0.12.10
      python3-magic: upgrade 0.4.23 -> 0.4.24
      sudo: upgrade 1.9.7 -> 1.9.7p1
      wpebackend-fdo: upgrade 1.8.4 -> 1.10.0
      xkeyboard-config: upgrade 2.32 -> 2.33
      bitbake.conf: enable debuginfod in native/nativesdk
      gdb-cross: enable debuginfod
      util-linux: backport a patch to address mkswap hangs
      selftest: do not hardcode /tmp/sdk
      glibc: do not enable memory tagging on aarch64 just yet
      mesa: enable gallium intel drivers when building for x86

Alexandre Belloni (1):
      runqemu: time the copy to tmpfs

Alexey Brodkin (3):
      gcc: Fixes for ARC
      gdb: Add native GDB support for ARC
      gcc: Apply multilib fix to ARC as well

Alistair Francis (3):
      recipes-bsp/opensbi: Disable FW_PIC
      recipes-bsp/u-boot: Allow deploying the u-boot DTB
      recipes-bsp/opensbi: Add support for specifying a device tree

Anders Wallin (1):
      coreutils: remove NOSTAT_LEAF_OPTIMIZATION

Andrea Adami (1):
      kernel.bbclass: fix do_sizecheck() comparison

Andreas Müller (19):
      mesa: upgrade 21.1.1 -> 21.1.2
      systemd: Add more ugly casts to fix build with musl
      alsa-lib: upgrade 1.2.4 -> 1.2.5
      alsa-plugins: upgrade 1.2.2 -> 1.2.5
      alsa-tools: upgrade 1.2.2 -> 1.2.5
      alsa-topology-conf: upgrade 1.2.4 -> 1.2.5
      alsa-ucm-conf: upgrade 1.2.4 -> 1.2.5
      alsa-utils(-scripts): upgrade 1.2.4 -> 1.2.5
      libinput: upgrade 1.17.3 -> 1.18.0
      xf86-input-libinput: upgrade 0.30.0 -> 1.0.1
      epiphany: upgrade 40.1 -> 40.2
      vala: upgrade 0.52.3 -> 0.52.4
      p11-kit: upgrade 0.23.22 -> 0.23.24
      xorgproto: upgrade 2021.4.99.1 -> 2021.4.99.2
      mpg123: 1.27.2 -> 1.28.0
      libx11: upgrade 1.7.1 -> 1.7.2
      libx11: remove CPPFLAGS_FOR_BUILD += "-D_GNU_SOURCE"
      libpcap: upgrade 1.10.0 -> 1.10.1
      mesa: upgrade 21.1.2 -> 21.1.3

Bruce Ashfield (10):
      linux-yocto/5.10: update to v5.10.42
      linux-yocto/5.10: temporarily revert aufs
      linux-yocto-dev: base AUTOREV on specified version
      linux-yocto/5.4: update to v5.4.124
      linux-yocto/5.10: restore aufs
      linux-yocto/5.10: update to v5.10.43
      linux-yocto/5.4: update to v5.4.125
      linux-yocto/5.10: cgroup1: fix leaked context root causing sporadic NULL deref in LTP
      btrfs-tools: include linux/const.h to fix build with 5.12+ headers
      bsps/5.10: update to v5.10.43

Changqing Li (1):
      libjpeg-turbo: fix do_compile error on arm

Chris Laplante (1):
      bitbake: build: warn on setting noexec/nostamp/fakeroot flag to any value besides '1'

Daniel Wagenknecht (5):
      ref-manual: variables: update examples refering to DEPLOY_DIR_IMAGE
      ref-manual: variables: document IMGDEPLOYDIR
      ref-manual: migration-2.2: add note about IMGDEPLOYDIR
      ref-manual: variables: fixup example in IMAGE_CMD
      ref-manual: variables: fixup class reference in IMAGE_MANIFEST

Joe Slater (1):
      tcf-agent: change license to EPL/EDL

Joshua Watt (2):
      classes/buildhistory: Add option to strip path prefix
      classes/reproducible_build: Use atomic rename for SDE file

Justin Bronder (1):
      populate_sdk_ext: copy BBMULTICONFIG files

Kai Kang (1):
      valgrind: fix a typo

Khem Raj (14):
      harfbuzz: Fix unused-variable warning
      arch-armv4: Allow -march=armv4
      ffmpeg: Link in libatomic on riscv32
      libssp-nonshared: Use a different implementation for __stack_chk_fail
      qemuriscv: Enable 4 core emulation
      gcompat: Add recipe
      musl: Do not package glibc loader
      musl: Set UPSTREAM_CHECK_COMMITS
      Revert "libgcc-initial: Do not build fp128 to decimal ppc functions"
      qemu: Provide float128 via hwcaps2 on ppc64le
      linuxloader: Be aware of riscv32 ldso
      linuxloader.bbclass: Add entry for ppc64 LE glibc loader
      gcompat: Create symlinks to glibc ldso locations
      sdk: Enable do_populate_sdk with multilibs

Luca Boccassi (1):
      systemd: install new sysext tool via systemd-extra-utils

Marcus Comstedt (1):
      conf/machine-sdk: Add ppc64 SDK machine

Matt Spencer (1):
      systemd-conf: Prevent systemd-network from managing veth interfaces

Michael Halstead (1):
      releases: update to include 3.1.8

Michael Opdenacker (12):
      bitbake: docs: Add BB_HASHSERVE definition to glossary
      bitbake: doc: bitbake-user-manual: fix erroneous statement in glossary intro
      manuals: fix epub export warnings
      ref-manual: move migration guides to separate document
      releases: clarify supported and outdated releases
      releases: put release number after "Release Series"
      sdk-manual: fix broken references
      migration guides: remove index reference to BB_SETSCENE_VERIFY_FUNCTION2
      manuals: fix issues related to trailing dots
      sdk-manual: add missing quoting around "devtool upgrade"
      sdk-manual: fix wrong word
      sdk-manual: add missing index references

Ming Liu (2):
      u-boot-tools: fix a mkimage signature issue
      uboot-sign.bbclass: fix some install commands

Mingli Yu (2):
      sysstat: make the service start automatically
      boost: fix wrong type for mutex in regex v5

Nicolas Dechesne (3):
      index: remove the link/section to 'mega manual' from main page
      index: remove links to releases manual and index
      index: split releases manuals and indexes into two sections in the tree

Paul Barker (2):
      bitbake: asyncrpc: Add ping method
      bitbake: asyncrpc: Reduce verbosity

Quentin Schulz (6):
      docs: ref-manual: migration-3.0: remove reference to non-existing BB_SETSCENE_VERIFY_FUNCTION2
      docs: ref-manual: variables: add missing links to terms glossary
      bitbake: doc: user-manual: remove mentions to BBVERSIONS
      bitbake: doc: user-manual: ref-manual: remove mentions to BB_SETSCENE_VERIFY_FUNCTION2
      documentation: Makefile: turn warnings into errors by default
      docs: replace ``FOO`` by :term:`FOO` where possible

Richard Purdie (11):
      lttng-tools: upgrade 2.12.3 -> 2.12.4
      qemurunner: Try to ensure mmap'd libs are paged in
      qemurunner: Increase startup timeout 120 -> 300
      build-appliance-image: Update to master head revision
      test-manual: add initial reproducible builds documentation
      test-manual: Add initial YP Compatible documentation
      README: Tweak as the website isn't really new now
      README: Move to using markdown as the format
      perf: Use python3targetconfig to ensure we use target libraries
      ltp: Reinstate 'hanging' tests for evaluation
      README.poky: Formatting and content cleanup

Richard Weinberger (1):
      Document erofs filesystem targets

Robert P. J. Day (2):
      ref-manual: add SRCTREECOVEREDTASKS to variable glossary
      ref-manual: add glossary entry for NON_MULTILIB_RECIPES

Ross Burton (11):
      mx: remove from Openembedded Core
      core-image-weston: remove Clutter examples
      Remove Clutter and Cogl
      oeqa: remove Clutter usage
      meta-poky: remove clutter references
      Remove Clutter references
      gcc: enable branch protection by standard
      image_types: add zsync conversions
      avahi: apply fix for CVE-2021-3468
      qemu: fix virtio vhost-user-gpu CVEs
      gcc: replace gdb helper install revert with the upstream fix

Sakib Sajal (3):
      oeqa/core/target/qemu.py: display contents of dumped files
      oe-time-dd-test.sh: improve output formatting
      oe-time-dd-test.sh: add iostat command

Saul Wold (1):
      qemurunner: add second qmp port

Scott Weaver (1):
      bitbake: fetch2: add check for empty SRC_URI hash string

Tim Orling (8):
      maintainers.inc: update email address
      python3-scons: upgrade 3.1.2 -> 4.1.0; simplify
      python3-hypothesis: upgrade 6.13.7 -> 6.13.14
      at-spi2-core: upgrade 2.40.1 -> 2.40.2
      python3-importlib-metadata: upgrade 4.4.0 -> 4.5.0
      python3-manifest: add statistics subpackage
      python3-hypothesis: upgrade 6.13.14 -> 6.14.0
      python3: skip tests requiring tools-sdk

Tony Battersby (1):
      glibc: fix path to place zdump in the tzcode package

Tony Tascioglu (3):
      valgrind: Improve non-deterministic ptest reliability
      valgrind: remove buggy ptest from arm64
      valgrind: Actually install list of non-deterministic ptests

hongxu (1):
      nativesdk-libdnf: fix installed and not shipped files

wangmy (21):
      cmake: upgrade 3.20.2 -> 3.20.3
      mtools: upgrade 4.0.27 -> 4.0.29
      python3-magic: upgrade 0.4.22 -> 0.4.23
      less: upgrade 586 -> 589
      python3-libarchive-c: upgrade 3.0 -> 3.1
      diffoscope: upgrade 175 -> 177
      dtc: upgrade 1.6.0 -> 1.6.1
      git: upgrade 2.31.1 -> 2.32.0
      gnutls: upgrade 3.7.1 -> 3.7.2
      go: upgrade 1.16.4 -> 1.16.5
      less: upgrade 589 -> 590
      ethtool: upgrade 5.10 -> 5.12
      m4: upgrade 1.4.18 -> 1.4.19
      alsa-lib: upgrade 1.2.5 -> 1.2.5.1
      alsa-utils: upgrade 1.2.5 -> 1.2.5.1
      alsa-topology-conf: upgrade 1.2.5 -> 1.2.5.1
      alsa-ucm-conf: upgrade 1.2.5 -> 1.2.5.1
      blktrace: upgrade 1.2.0 -> 1.3.0
      enchant2: upgrade 2.2.15 -> 2.3.0
      librepo: upgrade 1.14.0 -> 1.14.1
      createrepo-c: upgrade 0.17.2 -> 0.17.3

zangrc (1):
      python3-pycairo: upgrade 1.20.0 -> 1.20.1

zhengruoqin (6):
      python3-importlib-metadata: upgrade 4.3.0 -> 4.4.0
      libogg: upgrade 1.3.4 -> 1.3.5
      liburcu: upgrade 0.12.2 -> 0.13.0
      libcomps: upgrade 0.1.16 -> 0.1.17
      python3-dbusmock: upgrade 0.23.0 -> 0.23.1
      nfs-utils: upgrade 2.5.3 -> 2.5.4

Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: Iac124e214336beb9cab7fb3b67a6968d4e34d06f
diff --git a/poky/meta/recipes-core/ovmf/ovmf/0006-reproducible.patch b/poky/meta/recipes-core/ovmf/ovmf/0006-reproducible.patch
new file mode 100644
index 0000000..343c21b
--- /dev/null
+++ b/poky/meta/recipes-core/ovmf/ovmf/0006-reproducible.patch
@@ -0,0 +1,180 @@
+From 27ed9962f5cb3afcc44d6c96c53277132a999712 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Mon, 14 Jun 2021 19:57:30 +0200
+Subject: [PATCH 6/6] reproducible
+
+This patch fixes various things which make the build more reproducible. Some changes
+here only change intermediate artefacts but that means when you have two build trees
+giving differing results, the differences can be isolated more easily. The issues here
+usually become apparent with longer paths.
+
+This was all debugged with:
+TMPDIR = "${TOPDIR}/tmp"
+vs.
+TMPDIR = "${TOPDIR}/tmp-inital-mylongpath-mylongpath-mylongpath-mylongpath-mylongpath-mylongpath-mylongpath-mylongpath-mylongpath"
+
+The patch specifically:
+
+ * Sorts output in GNUmakefile
+ * Always generates indirect flags files used to avoid pathlength issues else the
+   compile commands suddenly change when using longer paths
+ * Sorts the AutoGenTimeStamp file contents
+ * Makes the TargetDescBlock objects from BuildEngine sortable to allow the makefile fix
+ * Fix ElfConvert within GenFw so that only the basename of the binary being converted
+   is used, else the output from "GenFw XXX.bin" differs from "GenFw /long/path/XXX.bin"
+   with sufficiently long paths
+
+Upstream-Status: Pending [At least some of this might be interesting to upstream]
+Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ BaseTools/Source/C/GenFw/Elf64Convert.c       |  8 ++++---
+ .../Source/Python/AutoGen/BuildEngine.py      |  3 +++
+ BaseTools/Source/Python/AutoGen/GenMake.py    | 24 +++++++++----------
+ .../Source/Python/AutoGen/ModuleAutoGen.py    |  5 +++-
+ 4 files changed, 24 insertions(+), 16 deletions(-)
+
+diff --git a/BaseTools/Source/C/GenFw/Elf64Convert.c b/BaseTools/Source/C/GenFw/Elf64Convert.c
+index d097db8632..a87ae6f3d0 100644
+--- a/BaseTools/Source/C/GenFw/Elf64Convert.c
++++ b/BaseTools/Source/C/GenFw/Elf64Convert.c
+@@ -14,6 +14,8 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
+ #ifndef __GNUC__

+ #include <windows.h>

+ #include <io.h>

++#else

++#define _GNU_SOURCE

+ #endif

+ #include <assert.h>

+ #include <stdio.h>

+@@ -769,7 +771,7 @@ ScanSections64 (
+   }

+   mCoffOffset = mDebugOffset + sizeof(EFI_IMAGE_DEBUG_DIRECTORY_ENTRY) +

+                 sizeof(EFI_IMAGE_DEBUG_CODEVIEW_NB10_ENTRY) +

+-                strlen(mInImageName) + 1;

++                strlen(basename(mInImageName)) + 1;

+ 

+   mCoffOffset = CoffAlign(mCoffOffset);

+   if (SectionCount == 0) {

+@@ -1608,7 +1610,7 @@ WriteDebug64 (
+   EFI_IMAGE_DEBUG_DIRECTORY_ENTRY     *Dir;

+   EFI_IMAGE_DEBUG_CODEVIEW_NB10_ENTRY *Nb10;

+ 

+-  Len = strlen(mInImageName) + 1;

++  Len = strlen(basename(mInImageName)) + 1;

+ 

+   Dir = (EFI_IMAGE_DEBUG_DIRECTORY_ENTRY*)(mCoffFile + mDebugOffset);

+   Dir->Type = EFI_IMAGE_DEBUG_TYPE_CODEVIEW;

+@@ -1618,7 +1620,7 @@ WriteDebug64 (
+ 

+   Nb10 = (EFI_IMAGE_DEBUG_CODEVIEW_NB10_ENTRY*)(Dir + 1);

+   Nb10->Signature = CODEVIEW_SIGNATURE_NB10;

+-  strcpy ((char *)(Nb10 + 1), mInImageName);

++  strcpy ((char *)(Nb10 + 1), basename(mInImageName));

+ 

+ 

+   NtHdr = (EFI_IMAGE_OPTIONAL_HEADER_UNION *)(mCoffFile + mNtHdrOffset);

+diff --git a/BaseTools/Source/Python/AutoGen/BuildEngine.py b/BaseTools/Source/Python/AutoGen/BuildEngine.py
+index 722fead75a..8f1c236970 100644
+--- a/BaseTools/Source/Python/AutoGen/BuildEngine.py
++++ b/BaseTools/Source/Python/AutoGen/BuildEngine.py
+@@ -70,6 +70,9 @@ class TargetDescBlock(object):
+         else:

+             return str(Other) == self.Target.Path

+ 

++    def __lt__(self, other):

++        return str(self) < str(other)

++

+     def AddInput(self, Input):

+         if Input not in self.Inputs:

+             self.Inputs.append(Input)

+diff --git a/BaseTools/Source/Python/AutoGen/GenMake.py b/BaseTools/Source/Python/AutoGen/GenMake.py
+index 961b2ab1c3..23c1592025 100755
+--- a/BaseTools/Source/Python/AutoGen/GenMake.py
++++ b/BaseTools/Source/Python/AutoGen/GenMake.py
+@@ -575,7 +575,7 @@ cleanlib:
+                 os.remove(RespFileList)

+ 

+         # convert source files and binary files to build targets

+-        self.ResultFileList = [str(T.Target) for T in MyAgo.CodaTargetList]

++        self.ResultFileList = sorted([str(T.Target) for T in MyAgo.CodaTargetList])

+         if len(self.ResultFileList) == 0 and len(MyAgo.SourceFileList) != 0:

+             EdkLogger.error("build", AUTOGEN_ERROR, "Nothing to build",

+                             ExtraData="[%s]" % str(MyAgo))

+@@ -726,7 +726,7 @@ cleanlib:
+         OutputFile = ''

+         DepsFileList = []

+ 

+-        for Cmd in self.GenFfsList:

++        for Cmd in sorted(self.GenFfsList):

+             if Cmd[2]:

+                 for CopyCmd in Cmd[2]:

+                     Src, Dst = CopyCmd

+@@ -759,7 +759,7 @@ cleanlib:
+             self.BuildTargetList.append('\t%s' % CmdString)

+ 

+             self.ParseSecCmd(DepsFileList, Cmd[1])

+-            for SecOutputFile, SecDepsFile, SecCmd in self.FfsOutputFileList :

++            for SecOutputFile, SecDepsFile, SecCmd in sorted(self.FfsOutputFileList):

+                 self.BuildTargetList.append('%s : %s' % (self.ReplaceMacro(SecOutputFile), self.ReplaceMacro(SecDepsFile)))

+                 self.BuildTargetList.append('\t%s' % self.ReplaceMacro(SecCmd))

+             self.FfsOutputFileList = []

+@@ -798,13 +798,13 @@ cleanlib:
+ 

+     def CommandExceedLimit(self):

+         FlagDict = {

+-                    'CC'    :  { 'Macro' : '$(CC_FLAGS)',    'Value' : False},

+-                    'PP'    :  { 'Macro' : '$(PP_FLAGS)',    'Value' : False},

+-                    'APP'   :  { 'Macro' : '$(APP_FLAGS)',   'Value' : False},

+-                    'ASLPP' :  { 'Macro' : '$(ASLPP_FLAGS)', 'Value' : False},

+-                    'VFRPP' :  { 'Macro' : '$(VFRPP_FLAGS)', 'Value' : False},

+-                    'ASM'   :  { 'Macro' : '$(ASM_FLAGS)',   'Value' : False},

+-                    'ASLCC' :  { 'Macro' : '$(ASLCC_FLAGS)', 'Value' : False},

++                    'CC'    :  { 'Macro' : '$(CC_FLAGS)',    'Value' : True},

++                    'PP'    :  { 'Macro' : '$(PP_FLAGS)',    'Value' : True},

++                    'APP'   :  { 'Macro' : '$(APP_FLAGS)',   'Value' : True},

++                    'ASLPP' :  { 'Macro' : '$(ASLPP_FLAGS)', 'Value' : True},

++                    'VFRPP' :  { 'Macro' : '$(VFRPP_FLAGS)', 'Value' : True},

++                    'ASM'   :  { 'Macro' : '$(ASM_FLAGS)',   'Value' : True},

++                    'ASLCC' :  { 'Macro' : '$(ASLCC_FLAGS)', 'Value' : True},

+                    }

+ 

+         RespDict = {}

+@@ -1007,9 +1007,9 @@ cleanlib:
+                 if not self.ObjTargetDict.get(T.Target.SubDir):

+                     self.ObjTargetDict[T.Target.SubDir] = set()

+                 self.ObjTargetDict[T.Target.SubDir].add(NewFile)

+-        for Type in self._AutoGenObject.Targets:

++        for Type in sorted(self._AutoGenObject.Targets):

+             resp_file_number = 0

+-            for T in self._AutoGenObject.Targets[Type]:

++            for T in sorted(self._AutoGenObject.Targets[Type]):

+                 # Generate related macros if needed

+                 if T.GenFileListMacro and T.FileListMacro not in self.FileListMacros:

+                     self.FileListMacros[T.FileListMacro] = []

+diff --git a/BaseTools/Source/Python/AutoGen/ModuleAutoGen.py b/BaseTools/Source/Python/AutoGen/ModuleAutoGen.py
+index d70b0d7ae8..25dca9a6df 100755
+--- a/BaseTools/Source/Python/AutoGen/ModuleAutoGen.py
++++ b/BaseTools/Source/Python/AutoGen/ModuleAutoGen.py
+@@ -1484,6 +1484,9 @@ class ModuleAutoGen(AutoGen):
+             for File in Files:

+                 if File.lower().endswith('.pdb'):

+                     AsBuiltInfDict['binary_item'].append('DISPOSABLE|' + File)

++

++        AsBuiltInfDict['binary_item'] = sorted(AsBuiltInfDict['binary_item'])

++

+         HeaderComments = self.Module.HeaderComments

+         StartPos = 0

+         for Index in range(len(HeaderComments)):

+@@ -1759,7 +1762,7 @@ class ModuleAutoGen(AutoGen):
+             if os.path.exists (self.TimeStampPath):

+                 os.remove (self.TimeStampPath)

+ 

+-            SaveFileOnChange(self.TimeStampPath, "\n".join(FileSet), False)

++            SaveFileOnChange(self.TimeStampPath, "\n".join(sorted(FileSet)), False)

+ 

+         # Ignore generating makefile when it is a binary module

+         if self.IsBinaryModule:

+-- 
+2.32.0
+