meta-openembedded: subtree update:4fe1065655..2449e5f07a

Alexander Kanavin (1):
      remmina: make avahi support optional and off by default

Alexander Vickberg (1):
      hostapd: fix building with CONFIG_TLS=internal

Andreas Müller (63):
      mariadb: Fix configure
      evolution-data-server: Backport upstream patch to fix configure on latest CMake
      libgtop: tidy up recipe
      xfce4-systemload-plugin: upgrade 1.3.0 -> 1.3.1 / introduce PACKAGECONFIGs
      xfce4-clipman-plugin: upgrade 1.6.1 -> 1.6.2
      xfce4-panel: upgrade 4.16.2 -> 4.16.3
      fluidsynth: upgrade 2.2.0 -> 2.2.1
      gparted: upgrade 1.2.0 -> 1.3.0
      poppler: upgrade 21.04.0 -> 21.05.0
      tracker: upgrade 2.3.6 -> 3.0.4
      tracker-miners: upgrade 2.3.5 -> 3.0.5
      nautilus: upgrade 3.36.3 -> 40.1
      gnome-photos: upgrade 3.34.2 -> 40.0
      file-roller: upgrade 3.36.3 -> 3.38.1
      tepl: upgrade 4.4.0 -> 6.00.0
      gedit: upgrade 3.36.2 -> 40.1
      evince: upgrade 3.38.0 -> 40.1
      gnome-calculator: upgrade 3.36.0 -> 40.1
      gnome-system-monitor: upgrade 3.36.1 -> 40.1
      dconf-editor: upgrade 3.38.2 -> 3.38.3
      libwnck3: upgrade 3.36.0 -> 40.0
      babl: upgrade 0.1.84 -> 0.1.86
      gimp: upgrade 2.10.22 -> 2.10.24
      gegl: add PACKAGECONFIG libraw and enable it by default
      gegl: add poppler PCAKAGECONFIG and enable it by default
      Revert "gimp: Disable svg icons on arm"
      grilo-plugins: initial add 0.3.13
      gnome-photos: rrecommend grilo-plugins
      gnome-photos: Let all desktops add gnome-photos to their start menu
      meta-gnome: remove upstream-version-is-even from inherit on 40.x version recipes
      portaudio-v19: upgrade 19.6.0 -> 19.7.0
      mousepad: upgrade 0.5.4 -> 0.5.5
      network-manager-applet: upgrade 1.18.0 -> 1.22.0
      nano: upgrade 5.6 -> 5.7
      gnuplot: upgrade 5.2.8 -> 5.4.1
      zsh: upgrade 5.4.2 -> 5.8
      ttf-lohit: upgrade 2 -> 2.92.1
      xrdp: upgrade 0.9.15 -> 0.9.16
      snappy: upgrade 1.1.8 -> 1.1.9
      redis: upgrade 6.2.2 -> 6.2.3
      remmina: upgrade 1.4.11 -> 1.4.17
      libpeas: upgrade 1.26.0 -> 1.30.0
      modemmanager: upgrade 1.16.2 -> 1.16.4
      mm-common: upgrade 1.0.2 -> 1.0.3
      protobuf: upgrade 3.15.2 -> 3.17.0
      qpdf: upgrade 10.2.0 -> 10.3.2
      libmxml: upgrade 3.1 -> 3.2
      libgusb: upgrade 0.3.5 -> 0.3.6
      libeigen: upgrade 3.3.7 -> 3.3.9
      giflib: upgrade 5.1.4 -> 5.2.1
      fltk: upgrade 1.3.5 -> 1.3.6
      botan: upgrade 2.14.0 -> 2.18.1
      dialog: upgrade 1.3-20210319 -> 1.3-20210509
      colord: upgrade 1.4.4 -> 1.4.5
      flatbuffers: upgrade 1.12.0 -> 2.0.0
      gtkwave: upgrade 3.3.108 -> 3.3.109 / move to gtk3 / tidy up recipe
      hwdata: upgrade 0.346 -> 0.347
      mime-support: upgrade 3.48 -> 3.62
      mpv: upgrade 0.32.0 -> 0.33.1
      renderdoc: upgrade 1.7 -> 1.13
      xfce4-screenshooter: upgrade 1.9.8 -> 1.9.9
      hunspell-dictionaries: use better names for dictionary files
      gupnp: upgrade 1.2.4 -> 1.2.6

Andrej Kozemcak (1):
      squid: upgrade 4.14 -> 4.15

Armin Kuster (6):
      audit: migrate from meta-selinux
      packagegroup-meta-oe: add audit to pkg grp
      python3-scapy: move from meta-security
      python3-scapy: add pkg to pkg grp
      python3-scapy: drop from pkg grp
      python3-scapy: drop this recipe

Ayoub Zaki (1):
      evemu-tools: Add initial recipe

Bartosz Golaszewski (3):
      python3-pycocotools: new package
      python3-pydbus-manager: add runtime dependencies
      python3-asyncio-glib: new package

Bruce Mitchell (1):
      makedumpfile: Bump srcrev

Changqing Li (3):
      python3-paho-mqtt: add package python3-paho-mqtt-examples
      nmap: change shebang to python3
      libgtop: fix do_compile error

Chen Qi (1):
      mutter: add polkit to REQUIRED_DISTRO_FEATRUES

Daniel Ammann (1):
      nyancat: add new package

Gianfranco (1):
      vboxguestdrivers: upgrade 6.1.20 -> 6.1.22

Guy Morand (1):
      qperf: add qperf recipe

Hongxu Jia (1):
      cdrkit: add nativesdk support

Kai Kang (1):
      thunar: 4.16.6 -> 4.16.8

Khem Raj (47):
      liburing: Upgrade to 2.0
      catch2: Upgrade to 2.13.6
      mongodb: Update to 4.4.6-rc0
      icewm: Upgrade to 2.3.3
      python3-m2crypto: Pass correct ABI defines to swig
      python3-lazy-object-proxy: Add missing dep on pip
      python3-markdown: Remove
      sdbus-c++-libsystemd: Avoid hard dependency on rsync
      libmusicbrainz: Rework native and target pieces
      abseil-cpp: Upgrade to lts_2021_03_24
      grpc: Upgrade to 1.37.1
      minicoredumper: Replace pthread_mutexattr_setrobust_np with pthread_mutexattr_setrobust
      libupnp: Do not use _np versions of mutex APIs
      mariadb: Upgrade to 10.5.10
      apitrace: Upgrade to 0.10
      evolution-data-server: Update to 3.40.1
      mongodb: Do not use MINSIGSTKSZ
      tbb: Fix build with GCC 11
      breakpad: Fix type mismatch for SIGSTKSZ
      packagegroup-meta-networking.bb: Add http-parser to packagegroup-meta-networking-support
      nautilus: Exclude from builds
      python3-m2crypto: Fix build on riscv and mips
      googletest: Update to tip of trunk
      libraw: Move from meta-qt5-extra to meta-oe
      Revert "nautilus: Exclude from builds"
      libcamera: Update to latest master tip
      python3-haversine: Fix build with latest python/setuptools
      opencv: Disable tbb on riscv/musl
      rdma-core: Upgrade to 35.0
      wireshark: Add zstd via packageconfig
      dhcp-relay: Use recent config.guess and config.sub for bind
      projucer: Update to latest master tip
      opencv: Do not lock to gcc only compiler
      minifi-cpp: Fix build with llvm C++ runtime
      sdbus-cpp: Do not fetch googletest on the fly
      python3-grpcio: Update to 1.38.0
      heaptrack: Fix build with clang and llvm libunwind
      grpc: Upgrade to 1.38.0
      packagegroup-meta-oe: Add qperf package
      dovecot: Fix build with llvm libunwind
      mpich: Upgrade to 3.4.2
      packagegroup-meta-oe: Add evemu-tools
      vk-gl-cts: Fix O_TRUNC conflict with fcntl.h
      dhcp-relay: Fix libtool files for internal bind build
      mongodb: Change PV to 4.4.6
      mongodb: Fix -Wc++11-narrowing warning on 32bit
      mariadb: Include missing sys/type.h for ssize_t

Leon Anavi (81):
      python3-pywbemtools: Upgrade 0.8.1 -> 0.9.0
      python3-humanize: Upgrade 3.4.1 -> 3.5.0
      python3-elementpath: Upgrade 2.2.1 -> 2.2.2
      python3-typing-extensions: Upgrade 3.7.4.3 -> 3.10.0.0
      python3-watchdog: Upgrade 2.0.3 -> 2.1.0
      python3-greenlet: Upgrade 1.0.0 -> 1.1.0
      python3-bitarray: Upgrade 2.0.1 -> 2.1.0
      python3-websockets: Upgrade 8.1 -> 9.0.1
      python3-babel: Upgrade 2.9.0 -> 2.9.1
      python3-croniter: Upgrade 1.0.12 -> 1.0.13
      python3-serpent: Upgrade 1.30.2 -> 1.40
      python3-cerberus: Upgrade 1.3.3 -> 1.3.4
      python3-aiohue: Upgrade 2.2.0 -> 2.3.0
      python3-robotframework: Upgrade 4.0.1 -> 4.0.2
      python3-sentry-sdk: Upgrade 1.0.0 -> 1.1.0
      python3-aiohue: Upgrade 2.3.0 -> 2.3.1
      python3-watchdog: Upgrade 2.1.0 -> 2.1.1
      python3-itsdangerous: Upgrade 1.1.0 -> 2.0.0
      python3-websocket-client: Upgrade 0.58.0 -> 0.59.0
      python3-google-api-python-client: Upgrade 2.2.0 -> 2.4.0
      python3-configargparse: Upgrade 1.4 -> 1.4.1
      python3-click: Upgrade 7.1.2 -> 8.0.0
      python3-pysonos: Upgrade 0.0.43 -> 0.0.46
      python3-rfc3339-validator: Upgrade 0.1.3 -> 0.1.4
      python3-pymongo: Upgrade 3.11.3 -> 3.11.4
      python3-alembic: Upgrade 1.5.8 -> 1.6.2
      python3-deprecated: Add recipe
      python3-pymisp: Upgrade 2.4.142 -> 2.4.143
      python3-aiohue: Upgrade 2.3.1 -> 2.4.0
      python3-pyroute2: Upgrade 0.5.18 -> 0.5.19
      python3-matplotlib-inline: Add recipe
      python3-ipython: Upgrade 7.22.0 -> 7.23.1
      python3-sh: Upgrade 1.14.1 -> 1.14.2
      python3-javaobj-py3: Upgrade 0.4.2 -> 0.4.3
      python3-pyjwt: Upgrade 2.0.1 -> 2.1.0
      python3-aiofiles: Upgrade 0.6.0 -> 0.7.0
      python3-aiohue: Upgrade 2.4.0 -> 2.5.0
      python3-cbor2: Upgrade 5.2.0 -> 5.3.0
      python3-websockets: Upgrade 9.0.1 -> 9.0.2
      python3-decorator: Upgrade 5.0.7 -> 5.0.9
      python3-websocket-client: Upgrade 0.59.0 -> 1.0.0
      python3-pysonos: Upgrade 0.0.46 -> 0.0.48
      surf: Upgrade 2.0 -> 2.1
      python3-pywbem: Upgrade 1.1.3 -> 1.2.0
      python3-watchdog: Upgrade 2.1.1 -> 2.1.2
      python3-click: Upgrade 8.0.0 -> 8.0.1
      python3-pysonos: Upgrade 0.0.48 -> 0.0.49
      python3-pytest-runner: Upgrade 5.3.0 -> 5.3.1
      python3-xmlschema: Upgrade 1.6.1 -> 1.6.2
      python3-websocket-client: Upgrade 1.0.0 -> 1.0.1
      python3-alembic: Upgrade 1.6.2 -> 1.6.4
      python3-sqlalchemy: Upgrade 1.4.11 -> 1.4.15
      python3-flask-migrate: Upgrade 2.7.0 -> 3.0.0
      python3-flask: Upgrade 1.1.2 -> 2.0.1
      python3-flask-wtf: Upgrade 0.14.3 -> 0.15.1
      python3-flask-socketio: Upgrade 5.0.1 -> 5.0.3
      python3-werkzeug: Upgrade 1.0.1 -> 2.0.1
      python3-bidict: Add recipe
      python3-socketio: Upgrade 5.1.0 -> 5.3.0
      python3-robotframework: Upgrade 4.0.2 -> 4.0.3
      python3-flask-restful: Upgrade 0.3.8 -> 0.3.9
      python3-pysonos: Upgrade 0.0.49 -> 0.0.50
      python3-aenum: Upgrade 3.0.0 -> 3.1.0
      python3-pyscaffold: Upgrade 4.0.1 -> 4.0.2
      python3-urllib3: Upgrade 1.26.4 -> 1.26.5
      python3-tqdm: Upgrade 4.60.0 -> 4.61.0
      python3-flask: Extend RDEPENDS
      python3-ecdsa: Upgrade 0.16.1 -> 0.17.0
      python3-alembic: Upgrade 1.6.4 -> 1.6.5
      python3-websockets: Upgrade 9.0.2 -> 9.1
      python3-pyzmq: Upgrade 22.0.3 -> 22.1.0
      python3-ntplib: Upgrade 0.3.4 -> 0.4.0
      python3-humanize: Upgrade 3.5.0 -> 3.6.0
      python3-astroid: Upgrade 2.5.6 -> 2.5.7
      python3-netifaces: Upgrade 0.10.9 -> 0.11.0
      python3-certifi: Upgrade 2020.12.5 -> 2021.5.30
      python3-click-repl: Upgrade 0.1.6 -> 0.2.0
      python3-google-api-python-client: Upgrade 2.4.0 -> 2.6.0
      python3-pytest-helpers-namespace: Upgrade 2021.3.24 -> 2021.4.29
      python3-ipython: Upgrade 7.23.1 -> 7.24.0
      python3-ruamel-yaml: Upgrade 0.17.4 -> 0.17.7

LiweiSong (1):
      pm-graph: parse separated cpu exec line

Martin Jansa (7):
      ostree: switch from default master branch to main to fix do_fetch failure
      snappy: explicity disable building tests and benchmark
      libtinyxml2: restore building shared library
      zsh: work around file-rdeps QA issues with usrmerge in DISTRO_FEATURES
      snappy: fix native build with older gcc on host
      p7zip: refresh patches with devtool to apply cleanly
      gtkwave: set REQUIRED_DISTRO_FEATURES only to wayland

Nisha Parrakat (1):
      p7zip: build and package lib7z.so needed for fastboot

Nuno Sá (2):
      libiio: add serial backend support
      libiio: mark libxml2 as depends for usb_backend

Robert Joslyn (1):
      ctags: Use PACKAGECONFIG for build options

Romain Naour (4):
      poke: add recipe for version 1.2
      poke: add optional json-c dependency
      packagegroup-meta-oe: Add poke to packagegroup-meta-oe-devtools
      libiec61850: Upgrade to 1.5.0

Ross Burton (3):
      nss: disable -Werror
      nss: remove -march vs -mcpu workaround
      meta-gnome: add Cogl/Clutter from oe-core

Saul Wold (2):
      opencv: remove tbb packageconfig for powerpc
      sysdig: disable building for ppc

Stefan Ghinea (1):
      thunar: fix CVE-2021-32563

Stefan Wiehler (3):
      http-parser: add recipe
      restinio: add recipe
      restinio: fix license

Trevor Gamblin (6):
      python3-django: upgrade 2.2.20 -> 2.2.22
      python3-django: upgrade 3.2 -> 3.2.2
      python3-django: upgrade 2.2.22 -> 2.2.23
      python3-django: upgrade 3.2.2 -> 3.2.3
      python3-ujson: fix ptests
      python3-prettytable: add python3-sqlite3 for ptest

William A. Kennington III (1):
      span-lite: upgrade 0.8.1 -> 0.9.2

Yi Zhao (1):
      dhcp-relay: add recipe

wangmy (11):
      uftrace: Fix a plthook crash on aarch64 with binutils2.35.1 and later versions on aarch64
      exiv2: Fix CVE-2021-29457
      exiv2: Fix CVE-2021-29458
      exiv2: Fix CVE-2021-29463
      exiv2: Fix CVE-2021-3482
      exiv2: Fix CVE-2021-29464
      exiv2: Fix CVE-2021-29470
      exiv2: Fix CVE-2021-29473
      libsdl: Fix CVE-2019-13616
      trace-cmd: Conflict resolution
      uftrace: upgrade 0.9.4 -> 0.10

zangrc (21):
      ifenslave: upgrade 2.11 -> 2.12
      lksctp-tools: upgrade 1.0.18 -> 1.0.19
      nbdkit: upgrade 1.25.6 -> 1.25.7
      tcpreplay: upgrade 4.3.3 -> 4.3.4
      cloc: upgrade 1.88 -> 1.90
      gensio: upgrade 2.2.4 -> 2.2.5
      iwd: upgrade 1.13 -> 1.14
      makedumpfile: upgrade 1.6.8 -> 1.6.9
      postgresql: upgrade 13.2 -> 13.3
      libencode-perl: upgrade 3.08 -> 3.10
      python3-xlsxwriter: upgrade 1.4.0 -> 1.4.3
      python3-itsdangerous: upgrade 2.0.0 -> 2.0.1
      python3-protobuf: upgrade 3.14.0 -> 3.17.0
      python3-pulsectl: upgrade 21.3.4 -> 21.5.17
      python3-engineio: upgrade 3.13.0 -> 4.2.0
      python3-can: upgrade 3.3.3 -> 3.3.4
      gexiv2: upgrade 0.12.1 -> 0.12.2
      gnome-autoar: upgrade 0.3.1 -> 0.3.2
      gnome-bluetooth: upgrade 3.34.1 -> 3.34.5
      libgweather: upgrade 3.36.1 -> 3.36.2
      libstemmer: upgrade 2.0.0 -> 2.1.0

zhengruoqin (8):
      libdivecomputer: upgrade 0.6.0 -> 0.7.0
      libjcat: upgrade 0.1.6 -> 0.1.7
      libxmlb: upgrade 0.3.0 -> 0.3.1
      chrony: upgrade 4.0 -> 4.1
      libqmi: upgrade 1.28.2 -> 1.28.4
      libtinyxml2: upgrade 8.0.0 -> 8.1.0
      libndp: upgrade 1.7 -> 1.8
      valijson: upgrade 0.3 -> 0.4

Change-Id: I8a1f42af3063886d88a7c0c5c79a45dde55c34da
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/0001-Do-not-use-MINSIGSTKSZ.patch b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/0001-Do-not-use-MINSIGSTKSZ.patch
new file mode 100644
index 0000000..0ee64e9
--- /dev/null
+++ b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/0001-Do-not-use-MINSIGSTKSZ.patch
@@ -0,0 +1,34 @@
+From 027044a692b588ef586d495f65eb58b07cc711a3 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 11 May 2021 10:15:51 -0700
+Subject: [PATCH] Do not use MINSIGSTKSZ
+
+Since glibc 2.34+ MINSIGSTKSZ is no more a constant.  So,
+let's hardwire this for now until better fix is found.
+64Kb should be good anyway
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/mongo/stdx/thread.h | 5 +----
+ 1 file changed, 1 insertion(+), 4 deletions(-)
+
+diff --git a/src/mongo/stdx/thread.h b/src/mongo/stdx/thread.h
+index f8058279e3..f31f309959 100644
+--- a/src/mongo/stdx/thread.h
++++ b/src/mongo/stdx/thread.h
+@@ -104,10 +104,7 @@ private:
+     //   .                     N   Y :      4,344 |  13,048 |     7,352
+     //   .                     Y   Y :      4,424 |  13,672 |     8,392
+     //   ( https://jira.mongodb.org/secure/attachment/233569/233569_stacktrace-writeup.txt )
+-    static constexpr std::size_t kMongoMinSignalStackSize = std::size_t{64} << 10;
+-
+-    static constexpr std::size_t kStackSize =
+-        std::max(kMongoMinSignalStackSize, std::size_t{MINSIGSTKSZ});
++    static constexpr std::size_t kStackSize = std::size_t{64} << 10;
+     std::unique_ptr<std::byte[]> _stackStorage = std::make_unique<std::byte[]>(kStackSize);
+ 
+ #else   // !MONGO_HAS_SIGALTSTACK
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/0001-Use-explicit-typecast-to-size_t.patch b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/0001-Use-explicit-typecast-to-size_t.patch
new file mode 100644
index 0000000..5b724ff
--- /dev/null
+++ b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/0001-Use-explicit-typecast-to-size_t.patch
@@ -0,0 +1,35 @@
+From 6fdb2d304e05a17e57b2efd7f8252794a8722dbe Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 1 Jun 2021 08:25:36 -0700
+Subject: [PATCH] Use explicit typecast to size_t
+
+maxMemoryUsageBytes is size_t type which may not match long long value
+internalDocumentSourceGroupMaxMemoryBytes.load() returns, so typecast it
+to avoid narrowing warning from clang
+
+document_source_group.cpp:378:22: error: non-constant-expression cannot be narrowed from type 'long long' to 'size_t' (aka 'unsigned int') in initializer list [-Wc++11-narrowing]
+                     maxMemoryUsageBytes ? *maxMemoryUsageBytes
+                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Upstream-Status: Submitted [https://github.com/mongodb/mongo/pull/1405]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/mongo/db/pipeline/document_source_group.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/mongo/db/pipeline/document_source_group.cpp b/src/mongo/db/pipeline/document_source_group.cpp
+index c7bf44e72e..a52906a940 100644
+--- a/src/mongo/db/pipeline/document_source_group.cpp
++++ b/src/mongo/db/pipeline/document_source_group.cpp
+@@ -376,7 +376,7 @@ DocumentSourceGroup::DocumentSourceGroup(const intrusive_ptr<ExpressionContext>&
+       _doingMerge(false),
+       _memoryTracker{pExpCtx->allowDiskUse && !pExpCtx->inMongos,
+                      maxMemoryUsageBytes ? *maxMemoryUsageBytes
+-                                         : internalDocumentSourceGroupMaxMemoryBytes.load()},
++                                         : (size_t)internalDocumentSourceGroupMaxMemoryBytes.load()},
+       _initialized(false),
+       _groups(pExpCtx->getValueComparator().makeUnorderedValueMap<Accumulators>()),
+       _spilled(false) {
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/0001-kms-message-bump-libmongocrypto-to-v1.0.4.patch b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/0001-kms-message-bump-libmongocrypto-to-v1.0.4.patch
deleted file mode 100644
index df4cee2..0000000
--- a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb/0001-kms-message-bump-libmongocrypto-to-v1.0.4.patch
+++ /dev/null
@@ -1,714 +0,0 @@
-From 44272ce47e768e090263df5cb9cb7ce17e544ad3 Mon Sep 17 00:00:00 2001
-From: Vincent Prince <vincent.prince.external@saftbatteries.com>
-Date: Tue, 15 Sep 2020 11:40:15 +0200
-Subject: [PATCH] kms-message: bump libmongocrypto to v1.0.4
-
-This fixes compilation with alpinelinux
-see https://github.com/mongodb/libmongocrypt/pull/89
-
-Upstream-Status: Pending
-
-Signed-off-by: Vincent Prince <vincent.prince.fr@gmail.com>
----
- .../kms-message/THIRD_PARTY_NOTICES           |  2 +-
- src/third_party/kms-message/src/hexlify.c     | 21 +----
- src/third_party/kms-message/src/hexlify.h     |  2 -
- .../kms-message/src/kms_crypto_apple.c        |  5 +
- .../kms-message/src/kms_crypto_libcrypto.c    | 94 +++++++++++++++++++
- .../kms-message/src/kms_crypto_none.c         |  4 +
- .../kms-message/src/kms_crypto_windows.c      |  4 +
- .../kms-message/src/kms_decrypt_request.c     |  2 +-
- .../kms-message/src/kms_encrypt_request.c     |  2 +-
- src/third_party/kms-message/src/kms_kv_list.c | 11 ++-
- .../kms-message/src/kms_message/kms_message.h |  2 +
- .../src/kms_message/kms_message_defines.h     | 10 ++
- src/third_party/kms-message/src/kms_port.c    | 33 +++++++
- src/third_party/kms-message/src/kms_port.h    | 27 +++---
- src/third_party/kms-message/src/kms_request.c | 41 +++++---
- .../kms-message/src/kms_request_str.c         | 13 ++-
- .../kms-message/src/kms_request_str.h         |  5 -
- .../kms-message/src/kms_response_parser.c     | 26 ++++-
- .../scripts/kms_message_get_sources.sh        |  2 +-
- 19 files changed, 244 insertions(+), 62 deletions(-)
- create mode 100644 src/third_party/kms-message/src/kms_crypto_libcrypto.c
- create mode 100644 src/third_party/kms-message/src/kms_port.c
-
-diff --git a/src/third_party/kms-message/THIRD_PARTY_NOTICES b/src/third_party/kms-message/THIRD_PARTY_NOTICES
-index 3fc095170c..4110c1b91e 100644
---- a/src/third_party/kms-message/THIRD_PARTY_NOTICES
-+++ b/src/third_party/kms-message/THIRD_PARTY_NOTICES
-@@ -1,4 +1,4 @@
--License notice for common-b64.c
-+License notice for kms_b64.c
- -------------------------------------------------------------------------------
- 
- ISC License
-diff --git a/src/third_party/kms-message/src/hexlify.c b/src/third_party/kms-message/src/hexlify.c
-index be9ee030b9..941fc93d1b 100644
---- a/src/third_party/kms-message/src/hexlify.c
-+++ b/src/third_party/kms-message/src/hexlify.c
-@@ -24,6 +24,8 @@ char *
- hexlify (const uint8_t *buf, size_t len)
- {
-    char *hex_chars = malloc (len * 2 + 1);
-+   KMS_ASSERT (hex_chars);
-+
-    char *p = hex_chars;
-    size_t i;
- 
-@@ -35,22 +37,3 @@ hexlify (const uint8_t *buf, size_t len)
- 
-    return hex_chars;
- }
--
--uint8_t *
--unhexlify (const char *hex_chars, size_t *len)
--{
--   uint8_t *buf;
--   uint8_t *pos;
--
--   *len = strlen (hex_chars) / 2;
--   buf = malloc (*len);
--   pos = buf;
--
--   while (*hex_chars) {
--      KMS_ASSERT (1 == sscanf (hex_chars, "%2hhx", pos));
--      pos++;
--      hex_chars += 2;
--   }
--
--   return buf;
--}
-diff --git a/src/third_party/kms-message/src/hexlify.h b/src/third_party/kms-message/src/hexlify.h
-index e0096eb6ca..a6a504ebe8 100644
---- a/src/third_party/kms-message/src/hexlify.h
-+++ b/src/third_party/kms-message/src/hexlify.h
-@@ -19,5 +19,3 @@
- 
- char *
- hexlify (const uint8_t *buf, size_t len);
--uint8_t *
--unhexlify (const char *hex_chars, size_t *len);
-diff --git a/src/third_party/kms-message/src/kms_crypto_apple.c b/src/third_party/kms-message/src/kms_crypto_apple.c
-index 61da0a6288..a26e0d65e8 100644
---- a/src/third_party/kms-message/src/kms_crypto_apple.c
-+++ b/src/third_party/kms-message/src/kms_crypto_apple.c
-@@ -16,9 +16,12 @@
- 
- #include "kms_crypto.h"
- 
-+#ifdef KMS_MESSAGE_ENABLE_CRYPTO_COMMON_CRYPTO
-+
- #include <CommonCrypto/CommonDigest.h>
- #include <CommonCrypto/CommonHMAC.h>
- 
-+
- int
- kms_crypto_init ()
- {
-@@ -54,3 +57,5 @@ kms_sha256_hmac (void *unused_ctx,
-    CCHmac (kCCHmacAlgSHA256, key_input, key_len, input, len, hash_out);
-    return true;
- }
-+
-+#endif /* KMS_MESSAGE_ENABLE_CRYPTO_COMMON_CRYPTO */
-diff --git a/src/third_party/kms-message/src/kms_crypto_libcrypto.c b/src/third_party/kms-message/src/kms_crypto_libcrypto.c
-new file mode 100644
-index 0000000000..6f25657fdd
---- /dev/null
-+++ b/src/third_party/kms-message/src/kms_crypto_libcrypto.c
-@@ -0,0 +1,94 @@
-+/*
-+ * Copyright 2018-present MongoDB, Inc.
-+ *
-+ * Licensed under the Apache License, Version 2.0 (the "License");
-+ * you may not use this file except in compliance with the License.
-+ * You may obtain a copy of the License at
-+ *
-+ *   http://www.apache.org/licenses/LICENSE-2.0
-+ *
-+ * Unless required by applicable law or agreed to in writing, software
-+ * distributed under the License is distributed on an "AS IS" BASIS,
-+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-+ * See the License for the specific language governing permissions and
-+ * limitations under the License.
-+ */
-+
-+#include "kms_crypto.h"
-+
-+#ifdef KMS_MESSAGE_ENABLE_CRYPTO_LIBCRYPTO
-+
-+#include <openssl/sha.h>
-+#include <openssl/evp.h>
-+#include <openssl/hmac.h>
-+
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L || \
-+   (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x20700000L)
-+static EVP_MD_CTX *
-+EVP_MD_CTX_new (void)
-+{
-+   return calloc (sizeof (EVP_MD_CTX), 1);
-+}
-+
-+static void
-+EVP_MD_CTX_free (EVP_MD_CTX *ctx)
-+{
-+   EVP_MD_CTX_cleanup (ctx);
-+   free (ctx);
-+}
-+#endif
-+
-+int
-+kms_crypto_init ()
-+{
-+   return 0;
-+}
-+
-+void
-+kms_crypto_cleanup ()
-+{
-+}
-+
-+bool
-+kms_sha256 (void *unused_ctx,
-+            const char *input,
-+            size_t len,
-+            unsigned char *hash_out)
-+{
-+   EVP_MD_CTX *digest_ctxp = EVP_MD_CTX_new ();
-+   bool rval = false;
-+
-+   if (1 != EVP_DigestInit_ex (digest_ctxp, EVP_sha256 (), NULL)) {
-+      goto cleanup;
-+   }
-+
-+   if (1 != EVP_DigestUpdate (digest_ctxp, input, len)) {
-+      goto cleanup;
-+   }
-+
-+   rval = (1 == EVP_DigestFinal_ex (digest_ctxp, hash_out, NULL));
-+
-+cleanup:
-+   EVP_MD_CTX_free (digest_ctxp);
-+
-+   return rval;
-+}
-+
-+bool
-+kms_sha256_hmac (void *unused_ctx,
-+                 const char *key_input,
-+                 size_t key_len,
-+                 const char *input,
-+                 size_t len,
-+                 unsigned char *hash_out)
-+{
-+   return HMAC (EVP_sha256 (),
-+                key_input,
-+                key_len,
-+                (unsigned char *) input,
-+                len,
-+                hash_out,
-+                NULL) != NULL;
-+}
-+
-+#endif /* KMS_MESSAGE_ENABLE_CRYPTO_LIBCRYPTO */
-diff --git a/src/third_party/kms-message/src/kms_crypto_none.c b/src/third_party/kms-message/src/kms_crypto_none.c
-index 9ef2147687..94da5abd88 100644
---- a/src/third_party/kms-message/src/kms_crypto_none.c
-+++ b/src/third_party/kms-message/src/kms_crypto_none.c
-@@ -16,6 +16,8 @@
- 
- #include "kms_crypto.h"
- 
-+#ifndef KMS_MESSAGE_ENABLE_CRYPTO
-+
- int
- kms_crypto_init ()
- {
-@@ -48,3 +50,5 @@ kms_sha256_hmac (void *unused_ctx,
-    /* only gets called if hooks were mistakenly not set */
-    return false;
- }
-+
-+#endif /* KMS_MESSAGE_ENABLE_CRYPTO */
-diff --git a/src/third_party/kms-message/src/kms_crypto_windows.c b/src/third_party/kms-message/src/kms_crypto_windows.c
-index ccdc7e095d..8177b0ddc0 100644
---- a/src/third_party/kms-message/src/kms_crypto_windows.c
-+++ b/src/third_party/kms-message/src/kms_crypto_windows.c
-@@ -16,6 +16,8 @@
- 
- #include "kms_crypto.h"
- 
-+#ifdef KMS_MESSAGE_ENABLE_CRYPTO_CNG
-+
- // tell windows.h not to include a bunch of headers we don't need:
- #define WIN32_LEAN_AND_MEAN
- 
-@@ -130,3 +132,5 @@ cleanup:
- 
-    return status == STATUS_SUCCESS ? 1 : 0;
- }
-+
-+#endif /* KMS_MESSAGE_ENABLE_CRYPTO_CNG */
-diff --git a/src/third_party/kms-message/src/kms_decrypt_request.c b/src/third_party/kms-message/src/kms_decrypt_request.c
-index 06faa43119..f1ca282768 100644
---- a/src/third_party/kms-message/src/kms_decrypt_request.c
-+++ b/src/third_party/kms-message/src/kms_decrypt_request.c
-@@ -48,7 +48,7 @@ kms_decrypt_request_new (const uint8_t *ciphertext_blob,
-    if (!(b64 = malloc (b64_len))) {
-       KMS_ERROR (request,
-                  "Could not allocate %d bytes for base64-encoding payload",
--                 b64_len);
-+                 (int) b64_len);
-       goto done;
-    }
- 
-diff --git a/src/third_party/kms-message/src/kms_encrypt_request.c b/src/third_party/kms-message/src/kms_encrypt_request.c
-index b5f4d6436e..24b064d95f 100644
---- a/src/third_party/kms-message/src/kms_encrypt_request.c
-+++ b/src/third_party/kms-message/src/kms_encrypt_request.c
-@@ -47,7 +47,7 @@ kms_encrypt_request_new (const uint8_t *plaintext,
-    if (!(b64 = malloc (b64_len))) {
-       KMS_ERROR (request,
-                  "Could not allocate %d bytes for base64-encoding payload",
--                 b64_len);
-+                 (int) b64_len);
-       goto done;
-    }
- 
-diff --git a/src/third_party/kms-message/src/kms_kv_list.c b/src/third_party/kms-message/src/kms_kv_list.c
-index 2d6845a1aa..0cff3dc2c6 100644
---- a/src/third_party/kms-message/src/kms_kv_list.c
-+++ b/src/third_party/kms-message/src/kms_kv_list.c
-@@ -17,6 +17,7 @@
- 
- #include "kms_kv_list.h"
- #include "kms_message/kms_message.h"
-+#include "kms_message_private.h"
- #include "kms_request_str.h"
- #include "kms_port.h"
- #include "sort.h"
-@@ -39,9 +40,12 @@ kms_kv_list_t *
- kms_kv_list_new (void)
- {
-    kms_kv_list_t *lst = malloc (sizeof (kms_kv_list_t));
-+   KMS_ASSERT (lst);
- 
-    lst->size = 16;
-    lst->kvs = malloc (lst->size * sizeof (kms_kv_t));
-+   KMS_ASSERT (lst->kvs);
-+
-    lst->len = 0;
- 
-    return lst;
-@@ -72,6 +76,7 @@ kms_kv_list_add (kms_kv_list_t *lst,
-    if (lst->len == lst->size) {
-       lst->size *= 2;
-       lst->kvs = realloc (lst->kvs, lst->size * sizeof (kms_kv_t));
-+      KMS_ASSERT (lst->kvs);
-    }
- 
-    kv_init (&lst->kvs[lst->len], key, value);
-@@ -84,7 +89,7 @@ kms_kv_list_find (const kms_kv_list_t *lst, const char *key)
-    size_t i;
- 
-    for (i = 0; i < lst->len; i++) {
--      if (0 == strcasecmp (lst->kvs[i].key->str, key)) {
-+      if (0 == kms_strcasecmp (lst->kvs[i].key->str, key)) {
-          return &lst->kvs[i];
-       }
-    }
-@@ -119,8 +124,12 @@ kms_kv_list_dup (const kms_kv_list_t *lst)
-    }
- 
-    dup = malloc (sizeof (kms_kv_list_t));
-+   KMS_ASSERT (dup);
-+
-    dup->size = dup->len = lst->len;
-    dup->kvs = malloc (lst->len * sizeof (kms_kv_t));
-+   KMS_ASSERT (dup->kvs);
-+
- 
-    for (i = 0; i < lst->len; i++) {
-       kv_init (&dup->kvs[i], lst->kvs[i].key, lst->kvs[i].value);
-diff --git a/src/third_party/kms-message/src/kms_message/kms_message.h b/src/third_party/kms-message/src/kms_message/kms_message.h
-index 6ea95dd04c..8048528f2e 100644
---- a/src/third_party/kms-message/src/kms_message/kms_message.h
-+++ b/src/third_party/kms-message/src/kms_message/kms_message.h
-@@ -17,6 +17,8 @@
- #ifndef KMS_MESSAGE_H
- #define KMS_MESSAGE_H
- 
-+#include <sys/types.h>
-+
- #include "kms_message_defines.h"
- #include "kms_request_opt.h"
- #include "kms_request.h"
-diff --git a/src/third_party/kms-message/src/kms_message/kms_message_defines.h b/src/third_party/kms-message/src/kms_message/kms_message_defines.h
-index a4d019bd77..a539d531ef 100644
---- a/src/third_party/kms-message/src/kms_message/kms_message_defines.h
-+++ b/src/third_party/kms-message/src/kms_message/kms_message_defines.h
-@@ -53,4 +53,14 @@ kms_message_cleanup (void);
- } /* extern "C" */
- #endif
- 
-+#ifdef _MSC_VER
-+#include <basetsd.h>
-+#pragma warning(disable : 4142)
-+#ifndef _SSIZE_T_DEFINED
-+#define _SSIZE_T_DEFINED
-+typedef SSIZE_T ssize_t;
-+#endif
-+#pragma warning(default : 4142)
-+#endif
-+
- #endif /* KMS_MESSAGE_DEFINES_H */
-diff --git a/src/third_party/kms-message/src/kms_port.c b/src/third_party/kms-message/src/kms_port.c
-new file mode 100644
-index 0000000000..ee9e6ed9c9
---- /dev/null
-+++ b/src/third_party/kms-message/src/kms_port.c
-@@ -0,0 +1,33 @@
-+/*
-+ * Copyright 2020-present MongoDB, Inc.
-+ *
-+ * Licensed under the Apache License, Version 2.0 (the "License");
-+ * you may not use this file except in compliance with the License.
-+ * You may obtain a copy of the License at
-+ *
-+ *   http://www.apache.org/licenses/LICENSE-2.0
-+ *
-+ * Unless required by applicable law or agreed to in writing, software
-+ * distributed under the License is distributed on an "AS IS" BASIS,
-+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-+ * See the License for the specific language governing permissions and
-+ * limitations under the License.
-+ */
-+
-+#include "kms_port.h"
-+#if defined(_WIN32)
-+#include <stdlib.h>
-+#include <string.h>
-+char * kms_strndup (const char *src, size_t len)
-+{
-+   char *dst = (char *) malloc (len + 1);
-+   if (!dst) {
-+      return 0;
-+   }
-+
-+   memcpy (dst, src, len);
-+   dst[len] = '\0';
-+
-+   return dst;
-+}
-+#endif
-\ No newline at end of file
-diff --git a/src/third_party/kms-message/src/kms_port.h b/src/third_party/kms-message/src/kms_port.h
-index c3cbbac369..2123a99dc9 100644
---- a/src/third_party/kms-message/src/kms_port.h
-+++ b/src/third_party/kms-message/src/kms_port.h
-@@ -15,21 +15,18 @@
-  * limitations under the License.
-  */
- 
--#if defined(_WIN32)
--#define strcasecmp _stricmp
--
--inline char *
--strndup (const char *src, size_t len)
--{
--   char *dst = (char *) malloc (len + 1);
--   if (!dst) {
--      return 0;
--   }
--
--   memcpy (dst, src, len);
--   dst[len] = '\0';
-+#ifndef KMS_PORT_H
-+#define KMS_PORT_H
- 
--   return dst;
--}
-+#include <stddef.h>
- 
-+#if defined(_WIN32)
-+#define kms_strcasecmp _stricmp
-+char *
-+kms_strndup (const char *src, size_t len);
-+#else
-+#define kms_strndup strndup
-+#define kms_strcasecmp strcasecmp
- #endif
-+
-+#endif /* KMS_PORT_H */
-\ No newline at end of file
-diff --git a/src/third_party/kms-message/src/kms_request.c b/src/third_party/kms-message/src/kms_request.c
-index fa2d487123..ac2b07ea6b 100644
---- a/src/third_party/kms-message/src/kms_request.c
-+++ b/src/third_party/kms-message/src/kms_request.c
-@@ -61,6 +61,7 @@ kms_request_new (const char *method,
-    kms_request_t *request = calloc (1, sizeof (kms_request_t));
-    const char *question_mark;
- 
-+   KMS_ASSERT (request);
-    /* parsing may set failed to true */
-    request->failed = false;
- 
-@@ -92,10 +93,14 @@ kms_request_new (const char *method,
-    request->header_fields = kms_kv_list_new ();
-    request->auto_content_length = true;
- 
--   kms_request_set_date (request, NULL);
-+   if (!kms_request_set_date (request, NULL)) {
-+      return request;
-+   }
- 
-    if (opt && opt->connection_close) {
--      kms_request_add_header_field (request, "Connection", "close");
-+      if (!kms_request_add_header_field (request, "Connection", "close")) {
-+         return request;
-+      }
-    }
- 
-    if (opt && opt->crypto.sha256) {
-@@ -164,7 +169,9 @@ kms_request_set_date (kms_request_t *request, const struct tm *tm)
-    kms_request_str_set_chars (request->date, buf, sizeof "YYYYmmDD" - 1);
-    kms_request_str_set_chars (request->datetime, buf, sizeof AMZ_DT_FORMAT - 1);
-    kms_kv_list_del (request->header_fields, "X-Amz-Date");
--   kms_request_add_header_field (request, "X-Amz-Date", buf);
-+   if (!kms_request_add_header_field (request, "X-Amz-Date", buf)) {
-+      return false;
-+   }
- 
-    return true;
- }
-@@ -309,7 +316,8 @@ append_canonical_headers (kms_kv_list_t *lst, kms_request_str_t *str)
-     * values in headers that have multiple values." */
-    for (i = 0; i < lst->len; i++) {
-       kv = &lst->kvs[i];
--      if (previous_key && 0 == strcasecmp (previous_key->str, kv->key->str)) {
-+      if (previous_key &&
-+          0 == kms_strcasecmp (previous_key->str, kv->key->str)) {
-          /* duplicate header */
-          kms_request_str_append_char (str, ',');
-          kms_request_str_append_stripped (str, kv->value);
-@@ -339,12 +347,13 @@ append_signed_headers (kms_kv_list_t *lst, kms_request_str_t *str)
- 
-    for (i = 0; i < lst->len; i++) {
-       kv = &lst->kvs[i];
--      if (previous_key && 0 == strcasecmp (previous_key->str, kv->key->str)) {
-+      if (previous_key &&
-+          0 == kms_strcasecmp (previous_key->str, kv->key->str)) {
-          /* duplicate header */
-          continue;
-       }
- 
--      if (0 == strcasecmp (kv->key->str, "connection")) {
-+      if (0 == kms_strcasecmp (kv->key->str, "connection")) {
-          continue;
-       }
- 
-@@ -412,7 +421,8 @@ finalize (kms_request_t *request)
- static int
- cmp_header_field_names (const void *a, const void *b)
- {
--   return strcasecmp (((kms_kv_t *) a)->key->str, ((kms_kv_t *) b)->key->str);
-+   return kms_strcasecmp (((kms_kv_t *) a)->key->str,
-+                          ((kms_kv_t *) b)->key->str);
- }
- 
- static kms_kv_list_t *
-@@ -447,6 +457,7 @@ kms_request_get_canonical (kms_request_t *request)
-    kms_request_str_append_newline (canonical);
-    normalized = kms_request_str_path_normalized (request->path);
-    kms_request_str_append_escaped (canonical, normalized, false);
-+   kms_request_str_destroy (normalized);
-    kms_request_str_append_newline (canonical);
-    append_canonical_query (request, canonical);
-    kms_request_str_append_newline (canonical);
-@@ -454,12 +465,14 @@ kms_request_get_canonical (kms_request_t *request)
-    append_canonical_headers (lst, canonical);
-    kms_request_str_append_newline (canonical);
-    append_signed_headers (lst, canonical);
--   kms_request_str_append_newline (canonical);
--   kms_request_str_append_hashed (
--      &request->crypto, canonical, request->payload);
--
--   kms_request_str_destroy (normalized);
-    kms_kv_list_destroy (lst);
-+   kms_request_str_append_newline (canonical);
-+   if (!kms_request_str_append_hashed (
-+          &request->crypto, canonical, request->payload)) {
-+      KMS_ERROR (request, "could not generate hash");
-+      kms_request_str_destroy (canonical);
-+      return NULL;
-+   }
- 
-    return kms_request_str_detach (canonical);
- }
-@@ -514,6 +527,10 @@ kms_request_get_string_to_sign (kms_request_t *request)
-    kms_request_str_append_chars (sts, "/aws4_request\n", -1);
- 
-    creq = kms_request_str_wrap (kms_request_get_canonical (request), -1);
-+   if (!creq) {
-+      goto done;
-+   }
-+
-    if (!kms_request_str_append_hashed (&request->crypto, sts, creq)) {
-       goto done;
-    }
-diff --git a/src/third_party/kms-message/src/kms_request_str.c b/src/third_party/kms-message/src/kms_request_str.c
-index 0f7c19c972..65207d2f4f 100644
---- a/src/third_party/kms-message/src/kms_request_str.c
-+++ b/src/third_party/kms-message/src/kms_request_str.c
-@@ -51,10 +51,13 @@ kms_request_str_t *
- kms_request_str_new (void)
- {
-    kms_request_str_t *s = malloc (sizeof (kms_request_str_t));
-+   KMS_ASSERT (s);
- 
-    s->len = 0;
-    s->size = 16;
-    s->str = malloc (s->size);
-+   KMS_ASSERT (s->str);
-+
-    s->str[0] = '\0';
- 
-    return s;
-@@ -64,11 +67,15 @@ kms_request_str_t *
- kms_request_str_new_from_chars (const char *chars, ssize_t len)
- {
-    kms_request_str_t *s = malloc (sizeof (kms_request_str_t));
-+   KMS_ASSERT (s);
-+
-    size_t actual_len;
- 
-    actual_len = len < 0 ? strlen (chars) : (size_t) len;
-    s->size = actual_len + 1;
-    s->str = malloc (s->size);
-+   KMS_ASSERT (s->str);
-+
-    memcpy (s->str, chars, actual_len);
-    s->str[actual_len] = '\0';
-    s->len = actual_len;
-@@ -86,6 +93,8 @@ kms_request_str_wrap (char *chars, ssize_t len)
-    }
- 
-    s = malloc (sizeof (kms_request_str_t));
-+   KMS_ASSERT (s);
-+
- 
-    s->str = chars;
-    s->len = len < 0 ? strlen (chars) : (size_t) len;
-@@ -148,8 +157,10 @@ kms_request_str_t *
- kms_request_str_dup (kms_request_str_t *str)
- {
-    kms_request_str_t *dup = malloc (sizeof (kms_request_str_t));
-+   KMS_ASSERT (dup);
-+
- 
--   dup->str = strndup (str->str, str->len);
-+   dup->str = kms_strndup (str->str, str->len);
-    dup->len = str->len;
-    dup->size = str->len + 1;
- 
-diff --git a/src/third_party/kms-message/src/kms_request_str.h b/src/third_party/kms-message/src/kms_request_str.h
-index f053a595aa..0898f59067 100644
---- a/src/third_party/kms-message/src/kms_request_str.h
-+++ b/src/third_party/kms-message/src/kms_request_str.h
-@@ -25,11 +25,6 @@
- #include <stdint.h>
- #include <string.h>
- 
--#if defined(_WIN32)
--#include <basetsd.h>
--typedef SSIZE_T ssize_t;
--#endif // _WIN32
--
- typedef struct {
-    char *str;
-    size_t len;
-diff --git a/src/third_party/kms-message/src/kms_response_parser.c b/src/third_party/kms-message/src/kms_response_parser.c
-index 31e4868a68..6f86fac854 100644
---- a/src/third_party/kms-message/src/kms_response_parser.c
-+++ b/src/third_party/kms-message/src/kms_response_parser.c
-@@ -1,7 +1,7 @@
- #include "kms_message/kms_response_parser.h"
- #include "kms_message_private.h"
- 
--#include "kms_message_private.h"
-+#include <errno.h>
- #include <limits.h>
- #include <stdio.h>
- #include <stdlib.h>
-@@ -24,6 +24,7 @@ _parser_init (kms_response_parser_t *parser)
-    parser->raw_response = kms_request_str_new ();
-    parser->content_length = -1;
-    parser->response = calloc (1, sizeof (kms_response_t));
-+   KMS_ASSERT (parser->response);
-    parser->response->headers = kms_kv_list_new ();
-    parser->state = PARSING_STATUS_LINE;
-    parser->start = 0;
-@@ -34,6 +35,8 @@ kms_response_parser_t *
- kms_response_parser_new (void)
- {
-    kms_response_parser_t *parser = malloc (sizeof (kms_response_parser_t));
-+   KMS_ASSERT (parser);
-+
-    _parser_init (parser);
-    return parser;
- }
-@@ -59,11 +62,26 @@ static bool
- _parse_int (const char *str, int *result)
- {
-    char *endptr = NULL;
-+   int64_t long_result;
- 
--   *result = (int) strtol (str, &endptr, 10);
--   if (*endptr) {
-+   errno = 0;
-+   long_result = strtol (str, &endptr, 10);
-+   if (endptr == str) {
-+      /* No digits were parsed. Consider this an error */
-+      return false;
-+   }
-+   if (endptr != NULL && *endptr != '\0') {
-+      /* endptr points to the first invalid character. */
-+      return false;
-+   }
-+   if (errno == EINVAL || errno == ERANGE) {
-+      return false;
-+   }
-+   if (long_result > INT32_MAX || long_result < INT32_MIN) {
-       return false;
-    }
-+   *result = (int) long_result;
-+
-    return true;
- }
- 
-@@ -72,6 +90,8 @@ static bool
- _parse_int_from_view (const char *str, int start, int end, int *result)
- {
-    char *num_str = malloc (end - start + 1);
-+   KMS_ASSERT (num_str);
-+
-    bool ret;
- 
-    strncpy (num_str, str + start, end - start);
-diff --git a/src/third_party/scripts/kms_message_get_sources.sh b/src/third_party/scripts/kms_message_get_sources.sh
-index 6ad2fbb0e6..52ce21b9dd 100755
---- a/src/third_party/scripts/kms_message_get_sources.sh
-+++ b/src/third_party/scripts/kms_message_get_sources.sh
-@@ -18,7 +18,7 @@ if grep -q Microsoft /proc/version; then
- fi
- 
- NAME=libmongocrypt
--REVISION=59c8c17bbdfa1cf0fdec60cfdde73a437a868221
-+REVISION=052f7fc610f0cea83a2adf3dd263a5ff04833371
- 
- if grep -q Microsoft /proc/version; then
-     SRC_ROOT=$(wslpath -u $(powershell.exe -Command "Get-ChildItem Env:TEMP | Get-Content | Write-Host"))
--- 
-2.24.0
-
diff --git a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb_git.bb b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb_git.bb
index b78255a..95e0cf7 100644
--- a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb_git.bb
+++ b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-dbs/mongodb/mongodb_git.bb
@@ -11,11 +11,10 @@
 
 inherit scons dos2unix siteinfo python3native systemd useradd
 
-PV = "4.4.4"
-#v4.4.4
-SRCREV = "8db30a63db1a9d84bdcad0c83369623f708e0397"
+PV = "4.4.6"
+#v4.4.6
+SRCREV = "72e66213c2c3eab37d9358d5e78ad7f5c1d0d0d7"
 SRC_URI = "git://github.com/mongodb/mongo.git;branch=v4.4 \
-           file://0001-kms-message-bump-libmongocrypto-to-v1.0.4.patch \
            file://0001-Tell-scons-to-use-build-settings-from-environment-va.patch \
            file://0001-Use-long-long-instead-of-int64_t.patch \
            file://0001-Use-__GLIBC__-to-control-use-of-gnu_get_libc_version.patch \
@@ -30,6 +29,8 @@
            file://0001-include-needed-c-header.patch \
            file://disable_runtime_check.patch \
            file://ppc64_ARCH_BITS.patch \
+           file://0001-Do-not-use-MINSIGSTKSZ.patch \
+           file://0001-Use-explicit-typecast-to-size_t.patch \
            "
 SRC_URI_append_libc-musl ="\
            file://0001-Mark-one-of-strerror_r-implementation-glibc-specific.patch \
diff --git a/meta-openembedded/meta-oe/dynamic-layers/networking-layer/recipes-devtools/valijson/valijson_0.3.bb b/meta-openembedded/meta-oe/dynamic-layers/networking-layer/recipes-devtools/valijson/valijson_0.4.bb
similarity index 95%
rename from meta-openembedded/meta-oe/dynamic-layers/networking-layer/recipes-devtools/valijson/valijson_0.3.bb
rename to meta-openembedded/meta-oe/dynamic-layers/networking-layer/recipes-devtools/valijson/valijson_0.4.bb
index 049cdef..63930b9 100644
--- a/meta-openembedded/meta-oe/dynamic-layers/networking-layer/recipes-devtools/valijson/valijson_0.3.bb
+++ b/meta-openembedded/meta-oe/dynamic-layers/networking-layer/recipes-devtools/valijson/valijson_0.4.bb
@@ -4,7 +4,7 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=015106c62262b2383f6c72063f0998f2"
 
 SRC_URI = "git://github.com/tristanpenman/valijson.git"
-SRCREV = "7a52fc88cdffd6678c009ca2fad700151f7363c6"
+SRCREV = "9183462118f58a3ca4be82b8f656f18707229737"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/licenses/Bellcore b/meta-openembedded/meta-oe/licenses/Bellcore
new file mode 100644
index 0000000..6bbbf94
--- /dev/null
+++ b/meta-openembedded/meta-oe/licenses/Bellcore
@@ -0,0 +1,13 @@
+Copyright: (c) 1991 Bell Communications Research, Inc. (Bellcore)
+License: Bellcore
+ Permission to use, copy, modify, and distribute this material 
+ for any purpose and without fee is hereby granted, provided 
+ that the above copyright notice and this permission notice 
+ appear in all copies, and that the name of Bellcore not be 
+ used in advertising or publicity pertaining to this 
+ material without the specific, prior written permission 
+ of an authorized representative of Bellcore.  BELLCORE 
+ MAKES NO REPRESENTATIONS ABOUT THE ACCURACY OR SUITABILITY 
+ OF THIS MATERIAL FOR ANY PURPOSE.  IT IS PROVIDED "AS IS", 
+ WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES.
+
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/qperf/qperf_0.4.11.bb b/meta-openembedded/meta-oe/recipes-benchmark/qperf/qperf_0.4.11.bb
new file mode 100644
index 0000000..f21af4b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-benchmark/qperf/qperf_0.4.11.bb
@@ -0,0 +1,19 @@
+SUMMARY = "Measure socket and RDMA performance"
+DESCRIPTION = "qperf measures bandwidth and latency between two nodes."
+HOMEPAGE = "https://github.com/linux-rdma/qperf"
+AUTHOR = "Johann George"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
+
+inherit autotools-brokensep
+
+SRCREV = "c706363815a38ff2c5cbc07b73e2cfaaa59bae0f"
+SRC_URI = "git://github.com/linux-rdma/qperf.git;protocol=https;branch=master"
+
+S = "${WORKDIR}/git"
+
+do_configure() {
+  ./cleanup
+  ./autogen.sh
+  oe_runconf
+}
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/gensio/gensio_2.2.4.bb b/meta-openembedded/meta-oe/recipes-connectivity/gensio/gensio_2.2.5.bb
similarity index 93%
rename from meta-openembedded/meta-oe/recipes-connectivity/gensio/gensio_2.2.4.bb
rename to meta-openembedded/meta-oe/recipes-connectivity/gensio/gensio_2.2.5.bb
index a024428..271a668 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/gensio/gensio_2.2.4.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/gensio/gensio_2.2.5.bb
@@ -5,7 +5,7 @@
                     file://COPYING;md5=bae3019b4c6dc4138c217864bd04331f \
                     "
 
-SRCREV = "95cfb8f6d8985e2fb8ba51c4887dd70aa7551a03"
+SRCREV = "ed307629e067a9ef55d79beec9c9f67b86efbaaf"
 
 SRC_URI = "git://github.com/cminyard/gensio;protocol=https;branch=2.2.x"
 
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0001-Prepare-for-CVE-2021-30004.patch.patch b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0001-Prepare-for-CVE-2021-30004.patch.patch
new file mode 100644
index 0000000..1bedb4f
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0001-Prepare-for-CVE-2021-30004.patch.patch
@@ -0,0 +1,45 @@
+From 14fab0772db19297c82dd1b8612c9335369dce41 Mon Sep 17 00:00:00 2001
+From: Alexander Vickberg <wickbergster@gmail.com>
+Date: Mon, 17 May 2021 17:54:13 +0200
+Subject: [PATCH] Prepare for CVE-2021-30004.patch
+
+Without this building fails for CONFIG_TLS=internal
+
+Signed-off-by: Alexander Vickberg <wickbergster@gmail.com>
+---
+ src/tls/asn1.h       | 6 ++++++
+ src/utils/includes.h | 1 +
+ 2 files changed, 7 insertions(+)
+
+diff --git a/src/tls/asn1.h b/src/tls/asn1.h
+index 6bd7df5..77b94ef 100644
+--- a/src/tls/asn1.h
++++ b/src/tls/asn1.h
+@@ -66,6 +66,12 @@ void asn1_oid_to_str(const struct asn1_oid *oid, char *buf, size_t len);
+ unsigned long asn1_bit_string_to_long(const u8 *buf, size_t len);
+ int asn1_oid_equal(const struct asn1_oid *a, const struct asn1_oid *b);
+ 
++static inline bool asn1_is_null(const struct asn1_hdr *hdr)
++{
++	return hdr->class == ASN1_CLASS_UNIVERSAL &&
++		hdr->tag == ASN1_TAG_NULL;
++}
++
+ extern struct asn1_oid asn1_sha1_oid;
+ extern struct asn1_oid asn1_sha256_oid;
+ 
+diff --git a/src/utils/includes.h b/src/utils/includes.h
+index 75513fc..741fc9c 100644
+--- a/src/utils/includes.h
++++ b/src/utils/includes.h
+@@ -18,6 +18,7 @@
+ 
+ #include <stdlib.h>
+ #include <stddef.h>
++#include <stdbool.h>
+ #include <stdio.h>
+ #include <stdarg.h>
+ #include <string.h>
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.9.bb b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.9.bb
index e586018..a9780bc 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.9.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.9.bb
@@ -11,6 +11,7 @@
     file://defconfig \
     file://init \
     file://hostapd.service \
+    file://0001-Prepare-for-CVE-2021-30004.patch.patch \
     file://CVE-2019-16275.patch \
     file://CVE-2019-5061.patch \
     file://CVE-2021-0326.patch \
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd/0001-build-Use-abs_top_srcdir-instead-of-abs_srcdir-for-e.patch b/meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd/0001-build-Use-abs_top_srcdir-instead-of-abs_srcdir-for-e.patch
index 63d617f..9ed7310 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd/0001-build-Use-abs_top_srcdir-instead-of-abs_srcdir-for-e.patch
+++ b/meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd/0001-build-Use-abs_top_srcdir-instead-of-abs_srcdir-for-e.patch
@@ -1,6 +1,6 @@
-From 0532cddcec9c3abff1f3bc22d2fa50df03d55d17 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 5 Apr 2021 14:11:40 -0700
+From b0b51d762f45ff9d320b96bd0acb89313148a446 Mon Sep 17 00:00:00 2001
+From: Zang Ruochen <zangrc.fnst@fujitsu.com>
+Date: Wed, 12 May 2021 14:28:24 +0900
 Subject: [PATCH] build: Use abs_top_srcdir instead of abs_srcdir for ell sources
 
 this makes it build when build dir is outside of sources dir
@@ -10,13 +10,12 @@
  Makefile.am | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
 
+diff --git a/Makefile.am b/Makefile.am
+index 68035e4..e3f7990 100644
 --- a/Makefile.am
 +++ b/Makefile.am
-@@ -625,9 +625,10 @@ unit/tls-settings.8021x: unit/cert-ca.pe
- BUILT_SOURCES = $(ell_built_sources) src/builtin.h
- 
- ell/shared: Makefile
-+	$(AM_V_at)$(MKDIR_P) ell
+@@ -628,7 +628,7 @@ ell/shared: Makefile
+ 	$(AM_V_at)$(MKDIR_P) ell
  	$(AM_V_GEN)for f in $(ell_shared) ; do \
  		if [ ! -f $$f ] ; then \
 -			$(LN_S) -t ell -f $(abs_srcdir)/../ell/$$f ; \
@@ -24,7 +23,7 @@
  		fi \
  	done > $@
  
-@@ -635,7 +636,7 @@ ell/internal: Makefile
+@@ -636,7 +636,7 @@ ell/internal: Makefile
  	$(AM_V_at)$(MKDIR_P) ell
  	$(AM_V_GEN)for f in $(ell_headers) $(ell_sources) ; do \
  		if [ ! -f $$f ] ; then \
@@ -33,3 +32,6 @@
  		fi \
  	done > $@
  
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd_1.13.bb b/meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd_1.14.bb
similarity index 94%
rename from meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd_1.13.bb
rename to meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd_1.14.bb
index 19d3a50..dbcc319 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd_1.13.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd_1.14.bb
@@ -8,7 +8,7 @@
 SRC_URI = "https://www.kernel.org/pub/linux/network/wireless/${BP}.tar.xz \
            file://0001-build-Use-abs_top_srcdir-instead-of-abs_srcdir-for-e.patch \
           "
-SRC_URI[sha256sum] = "b005f7ed0f0a96a2c6181c44560fc868533a18e7034bd4cb43ea0d40c21b4e7a"
+SRC_URI[sha256sum] = "21be6ad59ba666ba1e50e01889d647472b9b2f96f4941123db036fd33c257f0b"
 
 inherit autotools manpages pkgconfig python3native systemd
 
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/libndp/libndp_1.7.bb b/meta-openembedded/meta-oe/recipes-connectivity/libndp/libndp_1.8.bb
similarity index 80%
rename from meta-openembedded/meta-oe/recipes-connectivity/libndp/libndp_1.7.bb
rename to meta-openembedded/meta-oe/recipes-connectivity/libndp/libndp_1.8.bb
index 07a7a1d..0d35465 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/libndp/libndp_1.7.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/libndp/libndp_1.8.bb
@@ -5,8 +5,8 @@
 
 SRC_URI = "git://github.com/jpirko/libndp \
            "
-# tag for v1.6
-SRCREV = "96674e7d4f4d569c2c961e865cc16152dfab5f09"
+# tag for v1.8
+SRCREV = "009ce9cd9b950ffa1f4f94c9436027b936850d0c"
 S = "${WORKDIR}/git"
 
 inherit autotools
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.28.2.bb b/meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.28.4.bb
similarity index 89%
rename from meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.28.2.bb
rename to meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.28.4.bb
index 9be48b7..c6422c3 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.28.2.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.28.4.bb
@@ -14,7 +14,7 @@
 
 SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BPN}-${PV}.tar.xz"
 
-SRC_URI[sha256sum] = "8c8c3ee719874d2529bce9b35b028fe435b36f003979a360d3ad0938449db783"
+SRC_URI[sha256sum] = "3b14cd2ab5221a7adbb39fed16ef697538ea1c79308821ad2d19b505e1daaea0"
 
 PACKAGECONFIG ??= "udev mbim"
 PACKAGECONFIG[udev] = ",--without-udev,libgudev"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.16.2.bb b/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.16.4.bb
similarity index 94%
rename from meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.16.2.bb
rename to meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.16.4.bb
index d1ba8e4..f8e8aa1 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.16.2.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.16.4.bb
@@ -12,7 +12,7 @@
 DEPENDS = "glib-2.0 libgudev intltool-native libxslt-native"
 
 SRC_URI = "http://www.freedesktop.org/software/ModemManager/ModemManager-${PV}.tar.xz"
-SRC_URI[sha256sum] = "efa9a963499e0885f3f163096d433334143c4937545134ecd682e0157fa591e3"
+SRC_URI[sha256sum] = "167e60b26fa05887f87a0b3fb54143d7845e6e4d8c2f2dd93afac059f41e7edf"
 S = "${WORKDIR}/ModemManager-${PV}"
 
 PACKAGECONFIG ??= "mbim qmi \
diff --git a/meta-openembedded/meta-oe/recipes-core/mm-common/mm-common_1.0.2.bb b/meta-openembedded/meta-oe/recipes-core/mm-common/mm-common_1.0.3.bb
similarity index 66%
rename from meta-openembedded/meta-oe/recipes-core/mm-common/mm-common_1.0.2.bb
rename to meta-openembedded/meta-oe/recipes-core/mm-common/mm-common_1.0.3.bb
index 207d939..ae2bf2d 100644
--- a/meta-openembedded/meta-oe/recipes-core/mm-common/mm-common_1.0.2.bb
+++ b/meta-openembedded/meta-oe/recipes-core/mm-common/mm-common_1.0.3.bb
@@ -6,8 +6,7 @@
 
 inherit gnomebase
 
-SRC_URI[archive.md5sum] = "440133a2676275ae26770b3651f89827"
-SRC_URI[archive.sha256sum] = "a2a99f3fa943cf662f189163ed39a2cfc19a428d906dd4f92b387d3659d1641d"
+SRC_URI[archive.sha256sum] = "e81596625899aacf1d0bf27ccc2fcc7f373405ec48735ca1c7273c0fbcdc1ef5"
 SRC_URI += "file://0001-meson.build-do-not-ask-for-python-installation-versi.patch"
 
 BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
index eb095a2..d0665f2 100644
--- a/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
+++ b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
@@ -74,6 +74,7 @@
     memtester \
     nbench-byte \
     phoronix-test-suite \
+    qperf \
     s-suite \
     stressapptest \
     sysbench \
@@ -300,6 +301,7 @@
     xmlrpc-c \
     yasm \
     json-schema-validator \
+    poke \
 "
 RDEPENDS_packagegroup-meta-oe-devtools_append_x86 = " cpuid msr-tools pmtools"
 RDEPENDS_packagegroup-meta-oe-devtools_append_x86-64 = " cpuid msr-tools pcimem pmtools"
@@ -481,6 +483,7 @@
     libforms \
     lxdm \
     numlockx \
+    nyancat \
     obconf \
     openbox \
     packagegroup-fonts-truetype \
@@ -696,6 +699,7 @@
     ${@bb.utils.contains("DISTRO_FEATURES", "pam", "passwdqc", "", d)} \
     softhsm \
     tomoyo-tools \
+    auditd \
 "
 
 RDEPENDS_packagegroup-meta-oe-shells ="\
@@ -727,6 +731,7 @@
     digitemp \
     dstat \
     espeak \
+    evemu-tools \
     exiv2 \
     libnice \
     c-periphery \
diff --git a/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-0.8.3/0001-Do-not-download-gtest-automatically.patch b/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-0.8.3/0001-Do-not-download-gtest-automatically.patch
new file mode 100644
index 0000000..5bd3801
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-0.8.3/0001-Do-not-download-gtest-automatically.patch
@@ -0,0 +1,44 @@
+From af91a20ee201f13e56f225df536a56e5d8d259e8 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 27 May 2021 09:56:49 -0700
+Subject: [PATCH] Do not download gtest automatically
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ tests/CMakeLists.txt                        | 9 +--------
+ tests/googletest-download/CMakeLists.txt.in | 3 ---
+ 2 files changed, 1 insertion(+), 11 deletions(-)
+
+--- a/tests/googletest-download/CMakeLists.txt.in
++++ b/tests/googletest-download/CMakeLists.txt.in
+@@ -7,10 +7,7 @@ project(googletest-download NONE)
+ include(ExternalProject)
+ 
+ ExternalProject_Add(googletest
+-    GIT_REPOSITORY    https://github.com/google/googletest.git
+-    GIT_TAG           master
+-    GIT_SHALLOW       1
+-    SOURCE_DIR        "${CMAKE_CURRENT_BINARY_DIR}/googletest-src"
++    SOURCE_DIR        "${CMAKE_CURRENT_SOURCE_DIR}/googletest-src"
+     BINARY_DIR        "${CMAKE_CURRENT_BINARY_DIR}/googletest-build"
+     UPDATE_COMMAND    ""
+     CONFIGURE_COMMAND ""
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -6,9 +6,7 @@ include(FetchContent)
+ 
+ message("Fetching googletest...")
+ FetchContent_Declare(googletest
+-                     GIT_REPOSITORY https://github.com/google/googletest.git
+-                     GIT_TAG        master
+-                     GIT_SHALLOW    1
++                     SOURCE_DIR    ${CMAKE_CURRENT_SOURCE_DIR}/googletest-src
+                      UPDATE_COMMAND "")
+ 
+ #FetchContent_MakeAvailable(googletest) # Not available in CMake 3.13 :-( Let's do it manually:
+@@ -144,4 +142,4 @@ endif()
+ if(NOT CMAKE_CROSSCOMPILING)
+     add_test(NAME sdbus-c++-unit-tests COMMAND sdbus-c++-unit-tests)
+     add_test(NAME sdbus-c++-integration-tests COMMAND sdbus-c++-integration-tests)
+-endif() 
++endif()
diff --git a/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-0.8.3/0001-test-Check-for-googletest-on-system-first.patch b/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-0.8.3/0001-test-Check-for-googletest-on-system-first.patch
new file mode 100644
index 0000000..8a6acea
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-0.8.3/0001-test-Check-for-googletest-on-system-first.patch
@@ -0,0 +1,41 @@
+From dc5fa7a4b342ef80cda533cdb821841d8183287c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 23 May 2021 09:01:09 -0700
+Subject: [PATCH] test: Check for googletest on system first
+
+This ensures if googletest is instslled already then use that version
+before downloading and building own copy
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ tests/CMakeLists.txt | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
+index 97f7c1a..3dfdd1c 100644
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -2,6 +2,10 @@
+ # DOWNLOAD AND BUILD OF GOOGLETEST
+ #-------------------------------
+ 
++find_package(GTest)
++
++if(NOT GTest_FOUND)
++
+ include(FetchContent)
+ 
+ message("Fetching googletest...")
+@@ -23,7 +27,7 @@ if(NOT googletest_POPULATED)
+     add_subdirectory(${googletest_SOURCE_DIR} ${googletest_BINARY_DIR})
+     set(BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS_BAK})
+ endif()
+-
++endif()
+ #-------------------------------
+ # SOURCE FILES CONFIGURATION
+ #-------------------------------
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-libsystemd-243/7c5fd25119a495009ea62f79e5daec34cc464628.patch b/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-libsystemd-243/7c5fd25119a495009ea62f79e5daec34cc464628.patch
new file mode 100644
index 0000000..ae44979
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-libsystemd-243/7c5fd25119a495009ea62f79e5daec34cc464628.patch
@@ -0,0 +1,53 @@
+From 7c5fd25119a495009ea62f79e5daec34cc464628 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
+Date: Mon, 12 Apr 2021 14:03:32 +0200
+Subject: [PATCH] meson: do not fail if rsync is not installed with meson
+ 0.57.2
+
+https://github.com/mesonbuild/meson/issues/8641
+
+Our CI started to fail. Even if the change is reverted in meson,
+we need a quick workaround here.
+
+Upstream-Status: Backport
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ man/meson.build | 25 ++++++++++++++-----------
+ 1 file changed, 14 insertions(+), 11 deletions(-)
+
+diff --git a/man/meson.build b/man/meson.build
+index 3cae8446cda..f9c4b83dc81 100644
+--- a/man/meson.build
++++ b/man/meson.build
+@@ -184,17 +184,20 @@ html = custom_target(
+         depends : html_pages,
+         command : ['echo'])
+ 
+-run_target(
+-        'doc-sync',
+-        depends : man_pages + html_pages,
+-        command : ['rsync', '-rlv',
+-                   '--delete-excluded',
+-                   '--include=man',
+-                   '--include=*.html',
+-                   '--exclude=*',
+-                   '--omit-dir-times',
+-                   meson.current_build_dir(),
+-                   get_option('www-target')])
++rsync = find_program('rsync', required : false)
++if rsync.found()
++        run_target(
++                'doc-sync',
++                depends : man_pages + html_pages,
++                command : [rsync, '-rlv',
++                           '--delete-excluded',
++                           '--include=man',
++                           '--include=*.html',
++                           '--exclude=*',
++                           '--omit-dir-times',
++                           meson.current_build_dir(),
++                           get_option('www-target')])
++endif
+ 
+ ############################################################
+ 
diff --git a/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-libsystemd_243.bb b/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-libsystemd_243.bb
index 4b93087..dee3eab 100644
--- a/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-libsystemd_243.bb
+++ b/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-libsystemd_243.bb
@@ -12,9 +12,10 @@
 
 SRCREV = "efb536d0cbe2e58f80e501d19999928c75e08f6a"
 SRCBRANCH = "v243-stable"
-SRC_URI = "git://github.com/systemd/systemd-stable.git;protocol=git;branch=${SRCBRANCH}"
-
-SRC_URI += "file://static-libsystemd-pkgconfig.patch"
+SRC_URI = "git://github.com/systemd/systemd-stable.git;protocol=git;branch=${SRCBRANCH} \
+           file://static-libsystemd-pkgconfig.patch \
+           file://7c5fd25119a495009ea62f79e5daec34cc464628.patch \
+           "
 
 # patches needed by musl
 SRC_URI_append_libc-musl = " ${SRC_URI_MUSL}"
diff --git a/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++_0.8.3.bb b/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++_0.8.3.bb
index 9882976..338a89d 100644
--- a/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++_0.8.3.bb
+++ b/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++_0.8.3.bb
@@ -17,7 +17,13 @@
 DEPENDS += "expat"
 
 SRCREV = "6e8e5aadb674cccea5bdd55141db5dad887fbacd"
-SRC_URI = "git://github.com/Kistler-Group/sdbus-cpp.git;protocol=https;branch=master"
+SRCREV_gtest = "a3460d1aeeaa43fdf137a6adefef10ba0b59fe4b"
+SRCREV_FORMAT = "default_gtest"
+
+SRC_URI = "git://github.com/Kistler-Group/sdbus-cpp.git;protocol=https;branch=master \
+           git://github.com/google/googletest.git;protocol=https;branch=master;name=gtest;destsuffix=git/tests/googletest-src \
+           file://0001-Do-not-download-gtest-automatically.patch \
+"
 SRC_URI += "file://run-ptest"
 
 EXTRA_OECMAKE = "-DBUILD_CODE_GEN=ON \
diff --git a/meta-openembedded/meta-oe/recipes-crypto/botan/botan_2.14.0.bb b/meta-openembedded/meta-oe/recipes-crypto/botan/botan_2.18.1.bb
similarity index 89%
rename from meta-openembedded/meta-oe/recipes-crypto/botan/botan_2.14.0.bb
rename to meta-openembedded/meta-oe/recipes-crypto/botan/botan_2.18.1.bb
index 13b2c66..041eff0 100644
--- a/meta-openembedded/meta-oe/recipes-crypto/botan/botan_2.14.0.bb
+++ b/meta-openembedded/meta-oe/recipes-crypto/botan/botan_2.18.1.bb
@@ -5,8 +5,7 @@
 SECTION = "libs"
 
 SRC_URI = "https://botan.randombit.net/releases/Botan-${PV}.tar.xz"
-SRC_URI[md5sum] = "ebc68c08b99bbc4b4fc9bdbfad398b02"
-SRC_URI[sha256sum] = "0c10f12b424a40ee19bde00292098e201d7498535c062d8d5b586d07861a54b5"
+SRC_URI[sha256sum] = "f8c7b46222a857168a754a5cc329bb780504122b270018dda5304c98db28ae29"
 
 S = "${WORKDIR}/Botan-${PV}"
 
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.5.9.bb b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.5.10.bb
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.5.9.bb
rename to meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.5.10.bb
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc
index 9833b28..25e630a 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc
@@ -11,7 +11,6 @@
            file://install_db \
            file://mysql-systemd-start \
            file://configure.cmake-fix-valgrind.patch \
-           file://fix-a-building-failure.patch \
            file://support-files-CMakeLists.txt-fix-do_populate_sysroot.patch \
            file://sql-CMakeLists.txt-fix-gen_lex_hash-not-found.patch \
            file://0001-disable-ucontext-on-musl.patch \
@@ -22,10 +21,12 @@
            file://0001-innobase-Define-__NR_futex-if-it-does-not-exist.patch \
            file://0001-aio_linux-Check-if-syscall-exists-before-using-it.patch \
            file://sys_futex.patch \
+           file://cross-compiling.patch \
+           file://ssize_t.patch \
           "
 SRC_URI_append_libc-musl = " file://ppc-remove-glibc-dep.patch"
 
-SRC_URI[sha256sum] = "40ab19aeb8de141fdc188cf2251213c9e7351bee4d0cd29db704fae68d1068cf"
+SRC_URI[sha256sum] = "a5ff32f9fcaaf26bf5cba94accc7b246d2d5eb75710d027e40122df6bac0babb"
 
 UPSTREAM_CHECK_URI = "https://github.com/MariaDB/server/releases"
 
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/fix-a-building-failure.patch b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/cross-compiling.patch
similarity index 61%
rename from meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/fix-a-building-failure.patch
rename to meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/cross-compiling.patch
index 9149ee2..0f4815b 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/fix-a-building-failure.patch
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/cross-compiling.patch
@@ -1,28 +1,21 @@
-From 1b2b6a61c9f82157cd2e0c3744f6c07e07aeb0bd Mon Sep 17 00:00:00 2001
-From: Mingli Yu <mingli.yu@windriver.com>
-Date: Mon, 4 Mar 2019 01:11:30 -0800
-Subject: [PATCH] fix a building failure
-
-Upstream-Status: Inappropriate [configuration]
+This is not needed for OE builds
 
 building failed since native does not generate import_executables.cmake
 In fact, our building system will export the needed commands
 
+Upstream-Status: Inappropriate [configuration]
+
 Signed-off-by: Roy Li <rongqing.li@windriver.com>
 Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
----
- CMakeLists.txt | 5 -----
- 1 file changed, 5 deletions(-)
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
 
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index fc30750..4f9110e 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -347,11 +347,6 @@ CHECK_PCRE()
+@@ -392,11 +392,6 @@ CHECK_PCRE()
  
  CHECK_SYSTEMD()
  
--IF(CMAKE_CROSSCOMPILING)
+-IF(CMAKE_CROSSCOMPILING AND NOT DEFINED CMAKE_CROSSCOMPILING_EMULATOR)
 -  SET(IMPORT_EXECUTABLES "IMPORTFILE-NOTFOUND" CACHE FILEPATH "Path to import_executables.cmake from a native build")
 -  INCLUDE(${IMPORT_EXECUTABLES})
 -ENDIF()
@@ -30,6 +23,3 @@
  #
  # Setup maintainer mode options. Platform checks are
  # not run with the warning options as to not perturb fragile checks
--- 
-2.17.1
-
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/ppc-remove-glibc-dep.patch b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/ppc-remove-glibc-dep.patch
index 1ca86bc..d082d42 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/ppc-remove-glibc-dep.patch
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/ppc-remove-glibc-dep.patch
@@ -36,7 +36,7 @@
 +  __builtin_ppc_get_timebase();
  #elif defined __GNUC__ && (defined __arm__ || defined __aarch64__)
    /* Mainly, prevent the compiler from optimizing away delay loops */
-   __asm__ __volatile__ ("":::"memory");
+   __asm__ __volatile__ ("isb":::"memory");
 --- a/storage/tokudb/PerconaFT/portability/toku_time.h
 +++ b/storage/tokudb/PerconaFT/portability/toku_time.h
 @@ -124,7 +124,7 @@ static inline tokutime_t toku_time_now(v
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/ssize_t.patch b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/ssize_t.patch
new file mode 100644
index 0000000..4e499d4
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/ssize_t.patch
@@ -0,0 +1,15 @@
+ssize_t comes from sys/types.h therefore include it
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/wsrep-lib/include/wsrep/gtid.hpp
++++ b/wsrep-lib/include/wsrep/gtid.hpp
+@@ -25,7 +25,7 @@
+ #include "compiler.hpp"
+ 
+ #include <iosfwd>
+-
++#include <sys/types.h>
+ /**
+  * Minimum number of bytes guaratneed to store GTID string representation,
+  * terminating '\0' not included (36 + 1 + 20).
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.5.9.bb b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.5.10.bb
similarity index 85%
rename from meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.5.9.bb
rename to meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.5.10.bb
index e6743fe..8ae8241 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.5.9.bb
+++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.5.10.bb
@@ -2,7 +2,7 @@
 
 EXTRA_OECMAKE += "-DSTACK_DIRECTION=-1"
 
-DEPENDS += "mariadb-native bison-native libpcre2 curl openssl ncurses zlib libaio libedit libevent libxml2"
+DEPENDS += "mariadb-native bison-native boost libpcre2 curl openssl ncurses zlib libaio libedit libevent libxml2"
 
 PROVIDES += "mysql5 libmysqlclient"
 
diff --git a/meta-openembedded/meta-oe/recipes-dbs/postgresql/files/0001-configure.in-bypass-autoconf-2.69-version-check.patch b/meta-openembedded/meta-oe/recipes-dbs/postgresql/files/0001-configure.in-bypass-autoconf-2.69-version-check.patch
index 970d750..45f283a 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/postgresql/files/0001-configure.in-bypass-autoconf-2.69-version-check.patch
+++ b/meta-openembedded/meta-oe/recipes-dbs/postgresql/files/0001-configure.in-bypass-autoconf-2.69-version-check.patch
@@ -16,7 +16,7 @@
 +++ b/configure.in
 @@ -19,10 +19,6 @@ m4_pattern_forbid(^PGAC_)dnl to catch un
  
- AC_INIT([PostgreSQL], [13.2], [pgsql-bugs@lists.postgresql.org], [], [https://www.postgresql.org/])
+ AC_INIT([PostgreSQL], [13.3], [pgsql-bugs@lists.postgresql.org], [], [https://www.postgresql.org/])
  
 -m4_if(m4_defn([m4_PACKAGE_VERSION]), [2.69], [], [m4_fatal([Autoconf version 2.69 is required.
 -Untested combinations of 'autoconf' and PostgreSQL versions are not
diff --git a/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_13.2.bb b/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_13.3.bb
similarity index 78%
rename from meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_13.2.bb
rename to meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_13.3.bb
index ca8a6c7..862dd61 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_13.2.bb
+++ b/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_13.3.bb
@@ -9,4 +9,4 @@
    file://0001-configure.in-bypass-autoconf-2.69-version-check.patch \
 "
 
-SRC_URI[sha256sum] = "5fd7fcd08db86f5b2aed28fcfaf9ae0aca8e9428561ac547764c2a2b0f41adfc"
+SRC_URI[sha256sum] = "3cd9454fa8c7a6255b6743b767700925ead1b9ab0d7a0f9dcb1151010f8eb4a1"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0001-Export-of-internal-Abseil-changes.patch b/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0001-Export-of-internal-Abseil-changes.patch
new file mode 100644
index 0000000..52d4f42
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0001-Export-of-internal-Abseil-changes.patch
@@ -0,0 +1,100 @@
+From a9831f1cbf93fb18dd951453635f488037454ce9 Mon Sep 17 00:00:00 2001
+From: Abseil Team <absl-team@google.com>
+Date: Mon, 3 May 2021 07:37:39 -0700
+Subject: [PATCH] Export of internal Abseil changes
+
+--
+cf88f9cf40eab54c06bca7f20795352ec23bb583 by Derek Mauro <dmauro@google.com>:
+
+Fixes build with latest glibc
+Fixes #952
+
+PiperOrigin-RevId: 371693908
+
+--
+99bcd0f4a747ce7a401e23c745adf34d0ec5131b by Samuel Benzaquen <sbenza@google.com>:
+
+Add support for std::string_view in StrFormat even when
+absl::string_view != std::string_view.
+
+PiperOrigin-RevId: 371693633
+
+--
+e35463572149a6c2d4a0d439b9300ce03fd6b96d by Abseil Team <absl-team@google.com>:
+
+Cmake builds should only install pkg-config when explicitly requested.
+
+PiperOrigin-RevId: 371403419
+GitOrigin-RevId: cf88f9cf40eab54c06bca7f20795352ec23bb583
+Change-Id: I4360a18c638a4d901ff44ab1e0a9d8f321c302ea
+---
+ CMake/AbseilHelpers.cmake                        | 3 ++-
+ absl/debugging/failure_signal_handler.cc         | 3 ++-
+ absl/strings/internal/str_format/arg.h           | 8 ++++++++
+ absl/strings/internal/str_format/convert_test.cc | 3 +++
+ 4 files changed, 15 insertions(+), 2 deletions(-)
+
+diff --git a/CMake/AbseilHelpers.cmake b/CMake/AbseilHelpers.cmake
+index 1f754392..1a80b5b4 100644
+--- a/CMake/AbseilHelpers.cmake
++++ b/CMake/AbseilHelpers.cmake
+@@ -141,7 +141,8 @@ function(absl_cc_library)
+   endif()
+ 
+   # Generate a pkg-config file for every library:
+-  if(_build_type STREQUAL "static" OR _build_type STREQUAL "shared")
++  if((_build_type STREQUAL "static" OR _build_type STREQUAL "shared")
++     AND ABSL_ENABLE_INSTALL)
+     if(NOT ABSL_CC_LIB_TESTONLY)
+       if(absl_VERSION)
+         set(PC_VERSION "${absl_VERSION}")
+diff --git a/absl/debugging/failure_signal_handler.cc b/absl/debugging/failure_signal_handler.cc
+index e458a795..689e5979 100644
+--- a/absl/debugging/failure_signal_handler.cc
++++ b/absl/debugging/failure_signal_handler.cc
+@@ -136,7 +136,8 @@ static bool SetupAlternateStackOnce() {
+ #else
+   const size_t page_mask = sysconf(_SC_PAGESIZE) - 1;
+ #endif
+-  size_t stack_size = (std::max(SIGSTKSZ, 65536) + page_mask) & ~page_mask;
++  size_t stack_size =
++      (std::max<size_t>(SIGSTKSZ, 65536) + page_mask) & ~page_mask;
+ #if defined(ABSL_HAVE_ADDRESS_SANITIZER) || \
+     defined(ABSL_HAVE_MEMORY_SANITIZER) || defined(ABSL_HAVE_THREAD_SANITIZER)
+   // Account for sanitizer instrumentation requiring additional stack space.
+diff --git a/absl/strings/internal/str_format/arg.h b/absl/strings/internal/str_format/arg.h
+index 7040c866..3c91be70 100644
+--- a/absl/strings/internal/str_format/arg.h
++++ b/absl/strings/internal/str_format/arg.h
+@@ -122,6 +122,14 @@ StringConvertResult FormatConvertImpl(const std::string& v,
+ StringConvertResult FormatConvertImpl(string_view v,
+                                       FormatConversionSpecImpl conv,
+                                       FormatSinkImpl* sink);
++#if defined(ABSL_HAVE_STD_STRING_VIEW) && !defined(ABSL_USES_STD_STRING_VIEW)
++inline StringConvertResult FormatConvertImpl(std::string_view v,
++                                             FormatConversionSpecImpl conv,
++                                             FormatSinkImpl* sink) {
++  return FormatConvertImpl(absl::string_view(v.data(), v.size()), conv, sink);
++}
++#endif  // ABSL_HAVE_STD_STRING_VIEW && !ABSL_USES_STD_STRING_VIEW
++
+ ArgConvertResult<FormatConversionCharSetUnion(
+     FormatConversionCharSetInternal::s, FormatConversionCharSetInternal::p)>
+ FormatConvertImpl(const char* v, const FormatConversionSpecImpl conv,
+diff --git a/absl/strings/internal/str_format/convert_test.cc b/absl/strings/internal/str_format/convert_test.cc
+index 926283cf..91e03609 100644
+--- a/absl/strings/internal/str_format/convert_test.cc
++++ b/absl/strings/internal/str_format/convert_test.cc
+@@ -229,6 +229,9 @@ TEST_F(FormatConvertTest, BasicString) {
+   TestStringConvert(static_cast<const char*>("hello"));
+   TestStringConvert(std::string("hello"));
+   TestStringConvert(string_view("hello"));
++#if defined(ABSL_HAVE_STD_STRING_VIEW)
++  TestStringConvert(std::string_view("hello"));
++#endif  // ABSL_HAVE_STD_STRING_VIEW
+ }
+ 
+ TEST_F(FormatConvertTest, NullString) {
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/abseil-ppc-fixes.patch b/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/abseil-ppc-fixes.patch
index ee0c254..a4937e1 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/abseil-ppc-fixes.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/abseil-ppc-fixes.patch
@@ -53,21 +53,21 @@
  #include "absl/base/attributes.h"
  #include "absl/base/internal/raw_logging.h"
  #include "absl/base/macros.h"
-@@ -55,8 +59,10 @@ void* GetProgramCounter(void* vuc) {
+@@ -63,8 +67,10 @@ void* GetProgramCounter(void* vuc) {
      return reinterpret_cast<void*>(context->uc_mcontext.pc);
  #elif defined(__powerpc64__)
      return reinterpret_cast<void*>(context->uc_mcontext.gp_regs[32]);
 -#elif defined(__powerpc__)
 +#elif defined(__powerpc__) && defined(__GLIBC__)
-     return reinterpret_cast<void*>(context->uc_mcontext.regs->nip);
+     return reinterpret_cast<void*>(context->uc_mcontext.uc_regs->gregs[32]);
 +#elif defined(__powerpc__)
-+    return reinterpret_cast<void*>(((struct pt_regs *)context->uc_regs)->nip);
++    return reinterpret_cast<void*>(((struct pt_regs *)context->uc_regs)->gregs[32]);
  #elif defined(__riscv)
      return reinterpret_cast<void*>(context->uc_mcontext.__gregs[REG_PC]);
  #elif defined(__s390__) && !defined(__s390x__)
 --- a/absl/debugging/internal/stacktrace_config.h
 +++ b/absl/debugging/internal/stacktrace_config.h
-@@ -64,7 +64,7 @@
+@@ -55,7 +55,7 @@
  #elif defined(__i386__) || defined(__x86_64__)
  #define ABSL_STACKTRACE_INL_HEADER \
    "absl/debugging/internal/stacktrace_x86-inl.inc"
@@ -76,19 +76,3 @@
  #define ABSL_STACKTRACE_INL_HEADER \
    "absl/debugging/internal/stacktrace_powerpc-inl.inc"
  #elif defined(__aarch64__)
---- a/absl/debugging/internal/stacktrace_powerpc-inl.inc
-+++ b/absl/debugging/internal/stacktrace_powerpc-inl.inc
-@@ -130,8 +130,13 @@ static void **NextStackFrame(void **old_
-         StacktracePowerPCGetLR(new_sp) == kernel_sigtramp_rt64_address) {
-       const ucontext_t* signal_context =
-           reinterpret_cast<const ucontext_t*>(uc);
-+#if defined(__powerpc64__)
-       void **const sp_before_signal =
-           reinterpret_cast<void**>(signal_context->uc_mcontext.gp_regs[PT_R1]);
-+#else
-+      void **const sp_before_signal =
-+          reinterpret_cast<void**>(signal_context->uc_mcontext.uc_regs->gregs[PT_R1]);
-+#endif
-       // Check that alleged sp before signal is nonnull and is reasonably
-       // aligned.
-       if (sp_before_signal != nullptr &&
diff --git a/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb b/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb
index 903b7b4..01dd9f5 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb
@@ -7,13 +7,14 @@
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=df52c6edb7adc22e533b2bacc3bd3915"
 
-PV = "20200923+git${SRCPV}"
-SRCREV = "6f9d96a1f41439ac172ee2ef7ccd8edf0e5d068c"
-BRANCH = "lts_2020_09_23"
+PV = "20210324+git${SRCPV}"
+SRCREV = "e1d388e7e74803050423d035e4374131b9b57919"
+BRANCH = "lts_2021_03_24"
 SRC_URI = "git://github.com/abseil/abseil-cpp;branch=${BRANCH}         \
            file://0001-absl-always-use-asm-sgidefs.h.patch             \
            file://0002-Remove-maes-option-from-cross-compilation.patch \
            file://abseil-ppc-fixes.patch \
+           file://0001-Export-of-internal-Abseil-changes.patch \
           "
 
 S = "${WORKDIR}/git"
@@ -30,5 +31,4 @@
 
 BBCLASSEXTEND = "native nativesdk"
 
-FILES_${PN} = "${libdir}/libabsl_*.so"
-FILES_${PN}-dev = "${includedir} ${libdir}/cmake"
+FILES_${PN}-dev += "${includedir} ${libdir}/cmake ${libdir}/pkgconfig"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/apitrace/apitrace/0001-libbacktrace-include-config.h.patch b/meta-openembedded/meta-oe/recipes-devtools/apitrace/apitrace/0001-libbacktrace-include-config.h.patch
new file mode 100644
index 0000000..87fb499
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/apitrace/apitrace/0001-libbacktrace-include-config.h.patch
@@ -0,0 +1,33 @@
+From bdd5f0834d95a9598b0d87a18e7e96afade9d418 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 10 May 2021 15:28:05 -0700
+Subject: [PATCH] libbacktrace: include config.h
+
+Fixes
+thirdparty/libbacktrace/backtrace.h:53:10: fatal error: gstdint.h: No such file or directory
+   53 | #include "gstdint.h"
+      |          ^~~~~~~~~~~
+compilation terminated.
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ thirdparty/libbacktrace/backtrace.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/thirdparty/libbacktrace/backtrace.h b/thirdparty/libbacktrace/backtrace.h
+index 2814763f..802cf989 100644
+--- a/thirdparty/libbacktrace/backtrace.h
++++ b/thirdparty/libbacktrace/backtrace.h
+@@ -33,6 +33,7 @@ POSSIBILITY OF SUCH DAMAGE.  */
+ #ifndef BACKTRACE_H
+ #define BACKTRACE_H
+ 
++#include <config.h>
+ #include <stddef.h>
+ #include <stdio.h>
+ 
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/apitrace/apitrace_9.0.bb b/meta-openembedded/meta-oe/recipes-devtools/apitrace/apitrace_10.0.bb
similarity index 80%
rename from meta-openembedded/meta-oe/recipes-devtools/apitrace/apitrace_9.0.bb
rename to meta-openembedded/meta-oe/recipes-devtools/apitrace/apitrace_10.0.bb
index 826291a..616d56d 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/apitrace/apitrace_9.0.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/apitrace/apitrace_10.0.bb
@@ -5,8 +5,10 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=aeb969185a143c3c25130bc2c3ef9a50 \
                     file://thirdparty/snappy/COPYING;md5=f62f3080324a97b3159a7a7e61812d0c"
 
-SRCREV = "cae55f54c53449fd07f8a917dcd0874db2c15032"
-SRC_URI = "git://github.com/${BPN}/${BPN}.git"
+SRCREV = "03e4e9d2cab4f1a61d3f589785641a73dff027c5"
+SRC_URI = "git://github.com/${BPN}/${BPN}.git \
+           file://0001-libbacktrace-include-config.h.patch \
+          "
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-exception_handler.cc-Match-the-types-for-SIGSTKSZ.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-exception_handler.cc-Match-the-types-for-SIGSTKSZ.patch
new file mode 100644
index 0000000..afe8a61
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-exception_handler.cc-Match-the-types-for-SIGSTKSZ.patch
@@ -0,0 +1,34 @@
+From 66a2b6e4ba8e2b49115043127ce4aa0fcd71ad1e Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 11 May 2021 11:12:35 -0700
+Subject: [PATCH] exception_handler.cc: Match the types for SIGSTKSZ
+
+In glibc 2.34, SIGSTKSZ is a syscall which returns a long int, therefore
+current check fails
+
+| ../git/src/client/linux/handler/exception_handler.cc:141:49: error: no matching function for call to 'max(int, long int)'
+|   141 |   static const unsigned kSigStackSize = std::max(16384, SIGSTKSZ);
+|       |                                         ~~~~~~~~^~~~~~~~~~~~~~~~~
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/client/linux/handler/exception_handler.cc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/client/linux/handler/exception_handler.cc b/src/client/linux/handler/exception_handler.cc
+index ca353c40..dc0fc4a9 100644
+--- a/src/client/linux/handler/exception_handler.cc
++++ b/src/client/linux/handler/exception_handler.cc
+@@ -138,7 +138,7 @@ void InstallAlternateStackLocked() {
+   // SIGSTKSZ may be too small to prevent the signal handlers from overrunning
+   // the alternative stack. Ensure that the size of the alternative stack is
+   // large enough.
+-  static const unsigned kSigStackSize = std::max(16384, SIGSTKSZ);
++  static const unsigned kSigStackSize = std::max(16384u, (unsigned)SIGSTKSZ);
+ 
+   // Only set an alternative stack if there isn't already one, or if the current
+   // one is too small.
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
index 81955f4..4756ef7 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
@@ -40,6 +40,7 @@
            file://0004-elf_reader.cc-include-sys-reg.h-to-get-__WORDSIZE-on.patch \
            file://mcontext.patch \
            file://0001-Remove-HAVE_GETCONTEXT-check-to-add-local-implementa.patch \
+           file://0001-exception_handler.cc-Match-the-types-for-SIGSTKSZ.patch \
            file://0001-lss-Match-syscalls-to-match-musl.patch;patchdir=src/third_party/lss \
            file://mips_asm_sgidefs.patch;patchdir=src/third_party/lss \
            file://0001-Do-not-add-stack-pointer-to-clobber-list.patch;patchdir=src/third_party/lss \
diff --git a/meta-openembedded/meta-oe/recipes-devtools/cloc/cloc_1.88.bb b/meta-openembedded/meta-oe/recipes-devtools/cloc/cloc_1.90.bb
similarity index 66%
rename from meta-openembedded/meta-oe/recipes-devtools/cloc/cloc_1.88.bb
rename to meta-openembedded/meta-oe/recipes-devtools/cloc/cloc_1.90.bb
index b6a4ae7..d34f8c9 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/cloc/cloc_1.88.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/cloc/cloc_1.90.bb
@@ -5,9 +5,9 @@
 LICENSE="GPL-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=2c1c00f9d3ed9e24fa69b932b7e7aff2"
 
-SRC_URI = "https://github.com/AlDanial/cloc/releases/download/${PV}/${BP}.tar.gz"
-SRC_URI[md5sum] = "9f12f29c824ef61c5eaba6cf2dd6e183"
-SRC_URI[sha256sum] = "e4e30f083bf4e4a5efbe29efa0f6cefa223ba4e841ad1337653ad1f52702dc6f"
+SRC_URI = "https://github.com/AlDanial/cloc/releases/download/v${PV}/${BP}.tar.gz"
+SRC_URI[md5sum] = "e2364c2c9c9eda1d20890c19911c51fb"
+SRC_URI[sha256sum] = "152502a61d4bae4a406a05a01bf52489b310ec03dbd8c645d0bb051fa4717ddb"
 
 UPSTREAM_CHECK_URI = "https://github.com/AlDanial/${BPN}/releases"
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.9.20210502.0.bb b/meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.9.20210502.0.bb
index aca0502..273d6e5 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.9.20210502.0.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.9.20210502.0.bb
@@ -14,12 +14,21 @@
 
 inherit autotools-brokensep pkgconfig manpages
 
-DEPENDS += "libxml2 jansson libyaml python3-docutils-native"
 SRCREV = "6df08b82d4845d1b9420d9268f24d5db16ee4480"
 SRC_URI = "git://github.com/universal-ctags/ctags"
 
 S = "${WORKDIR}/git"
 
-#do_install() {
-#    install -Dm 755 ${B}/ctags ${D}${bindir}/ctags
-#}
+PACKAGECONFIG ??= " \
+    readcmd \
+    xml \
+    json \
+    yaml \
+"
+PACKAGECONFIG[readcmd] = "--enable-readcmd,--disable-readcmd"
+PACKAGECONFIG[etags] = "--enable-etags,--disable-etags"
+PACKAGECONFIG[xml] = "--enable-xml,--disable-xml,libxml2"
+PACKAGECONFIG[json] = "--enable-json,--disable-json,jansson"
+PACKAGECONFIG[seccomp] = "--enable-seccomp,--disable-seccomp,libseccomp"
+PACKAGECONFIG[yaml] = "--enable-yaml,--disable-yaml,libyaml"
+PACKAGECONFIG[manpages] = ",,python3-docutils-native"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.12.0.bb b/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers_2.0.0.bb
similarity index 94%
rename from meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.12.0.bb
rename to meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers_2.0.0.bb
index bbc2a4a..f4f0801 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.12.0.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers_2.0.0.bb
@@ -13,9 +13,9 @@
 
 LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
 
-SRCREV = "6df40a2471737b27271bdd9b900ab5f3aec746c7"
-
+SRCREV = "a9a295fecf3fbd5a4f571f53b01f63202a3e2113"
 SRC_URI = "git://github.com/google/flatbuffers.git"
+S = "${WORKDIR}/git"
 
 CVE_CHECK_WHITELIST += "CVE-2020-35864"
 
@@ -31,8 +31,6 @@
 
 inherit cmake
 
-S = "${WORKDIR}/git"
-
 do_install_append() {
     install -d ${D}${PYTHON_SITEPACKAGES_DIR}
     cp -rf ${S}/python/flatbuffers ${D}${PYTHON_SITEPACKAGES_DIR}
diff --git a/meta-openembedded/meta-oe/recipes-devtools/giflib/files/CVE-2019-15133.patch b/meta-openembedded/meta-oe/recipes-devtools/giflib/files/CVE-2019-15133.patch
deleted file mode 100644
index 9957be8..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/giflib/files/CVE-2019-15133.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From 799eb6a3af8a3dd81e2429bf11a72a57e541f908 Mon Sep 17 00:00:00 2001
-From: "Eric S. Raymond" <esr@thyrsus.com>
-Date: Sun, 17 Mar 2019 12:37:21 -0400
-Subject: [PATCH] Address SF bug #119: MemorySanitizer: FPE on unknown address
-
----
- dgif_lib.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Upstream-status: Backport [https://sourceforge.net/p/giflib/code/ci/799eb6a3af8a3dd81e2429bf11a72a57e541f908/]
-CVE: CVE-2019-15133
-
---- a/lib/dgif_lib.c	2021-01-13 19:28:18.923493586 +0100
-+++ b/lib/dgif_lib.c	2021-01-13 19:28:55.245863085 +0100
-@@ -1099,7 +1099,7 @@ DGifSlurp(GifFileType *GifFile)
- 
-               sp = &GifFile->SavedImages[GifFile->ImageCount - 1];
-               /* Allocate memory for the image */
--              if (sp->ImageDesc.Width < 0 && sp->ImageDesc.Height < 0 &&
-+              if (sp->ImageDesc.Width <= 0 && sp->ImageDesc.Height <= 0 &&
-                       sp->ImageDesc.Width > (INT_MAX / sp->ImageDesc.Height)) {
-                   return GIF_ERROR;
-               }
diff --git a/meta-openembedded/meta-oe/recipes-devtools/giflib/giflib_5.1.4.bb b/meta-openembedded/meta-oe/recipes-devtools/giflib/giflib_5.1.4.bb
deleted file mode 100644
index 1871bab..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/giflib/giflib_5.1.4.bb
+++ /dev/null
@@ -1,24 +0,0 @@
-SUMMARY = "shared library for GIF images"
-SECTION = "libs"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=ae11c61b04b2917be39b11f78d71519a"
-
-SRC_URI = " \
-    ${SOURCEFORGE_MIRROR}/giflib/${BP}.tar.bz2 \
-    file://CVE-2019-15133.patch \
-"
-
-CVE_PRODUCT = "giflib_project:giflib"
-
-inherit autotools
-
-PACKAGES += "${PN}-utils"
-FILES_${PN} = "${libdir}/libgif.so.*"
-FILES_${PN}-utils = "${bindir}"
-
-BBCLASSEXTEND = "native"
-
-RDEPENDS_${PN}-utils = "perl"
-
-SRC_URI[md5sum] = "2c171ced93c0e83bb09e6ccad8e3ba2b"
-SRC_URI[sha256sum] = "df27ec3ff24671f80b29e6ab1c4971059c14ac3db95406884fc26574631ba8d5"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/giflib/giflib_5.2.1.bb b/meta-openembedded/meta-oe/recipes-devtools/giflib/giflib_5.2.1.bb
new file mode 100644
index 0000000..105c53e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/giflib/giflib_5.2.1.bb
@@ -0,0 +1,24 @@
+SUMMARY = "shared library for GIF images"
+SECTION = "libs"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=ae11c61b04b2917be39b11f78d71519a"
+
+CVE_PRODUCT = "giflib_project:giflib"
+
+DEPENDS = "xmlto-native"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/giflib/${BP}.tar.gz"
+SRC_URI[sha256sum] = "31da5562f44c5f15d63340a09a4fd62b48c45620cd302f77a6d9acf0077879bd"
+
+do_install() {
+    # using autotools's default will end up in /usr/local
+    oe_runmake DESTDIR=${D} PREFIX=${prefix} LIBDIR=${libdir} install
+}
+
+PACKAGES += "${PN}-utils"
+FILES_${PN} = "${libdir}/libgif.so.*"
+FILES_${PN}-utils = "${bindir}"
+
+BBCLASSEXTEND = "native"
+
+RDEPENDS_${PN}-utils = "perl"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc/0001-gsec-Fix-build-on-musl.patch b/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc/0001-gsec-Fix-build-on-musl.patch
new file mode 100644
index 0000000..faa18bb
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc/0001-gsec-Fix-build-on-musl.patch
@@ -0,0 +1,37 @@
+From 9af185be6068d279736c0d2b2162a4e768444d3d Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 29 May 2021 00:41:32 -0700
+Subject: [PATCH] gsec: Fix build on musl
+
+musl defines iovec struct in alltypes.h file which is included by many
+system include files, therefore check for appropriate define from musl
+before defining it again
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/core/tsi/alts/crypt/gsec.h | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/src/core/tsi/alts/crypt/gsec.h b/src/core/tsi/alts/crypt/gsec.h
+index 4d65caa944..3c367b2895 100644
+--- a/src/core/tsi/alts/crypt/gsec.h
++++ b/src/core/tsi/alts/crypt/gsec.h
+@@ -26,11 +26,14 @@
+ #include <stdlib.h>
+ 
+ #include <grpc/grpc.h>
++#include <sys/uio.h>
+ 
++#if !defined(__DEFINED_struct_iovec)
+ struct iovec {
+   void* iov_base;
+   size_t iov_len;
+ };
++#endif
+ 
+ /**
+  * A gsec interface for AEAD encryption schemes. The API is thread-compatible.
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.4.bb b/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.38.0.bb
similarity index 97%
rename from meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.4.bb
rename to meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.38.0.bb
index 03de499..2095d81 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.4.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.38.0.bb
@@ -16,8 +16,8 @@
 RDEPENDS_${PN}-dev += "${PN}-compiler"
 
 S = "${WORKDIR}/git"
-SRCREV_grpc = "3e53dbe8213137d2c731ecd4d88ebd2948941d75"
-BRANCH = "v1.36.x"
+SRCREV_grpc = "54dc182082db941aa67c7c3f93ad858c99a16d7d"
+BRANCH = "v1.38.x"
 SRC_URI = "git://github.com/grpc/grpc.git;protocol=https;name=grpc;branch=${BRANCH} \
            "
 # Fixes build with older compilers 4.8 especially on ubuntu 14.04
diff --git a/meta-openembedded/meta-oe/recipes-devtools/heaptrack/heaptrack/0001-track-Check-for-unw_set_caching_policy-before-using.patch b/meta-openembedded/meta-oe/recipes-devtools/heaptrack/heaptrack/0001-track-Check-for-unw_set_caching_policy-before-using.patch
new file mode 100644
index 0000000..a6547ed
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/heaptrack/heaptrack/0001-track-Check-for-unw_set_caching_policy-before-using.patch
@@ -0,0 +1,41 @@
+From bcfc4c8d7dc70bd81367c183a68cc9ee02ab4744 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 28 May 2021 17:52:57 -0700
+Subject: [PATCH] track: Check for unw_set_caching_policy before using
+
+llvm libunwind does not implement unw_cache_* functions yet
+Include inttypes.h got PRI* macros
+
+Upstream-Status: Submitted [https://github.com/KDE/heaptrack/pull/33]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/track/trace_libunwind.cpp | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/src/track/trace_libunwind.cpp b/src/track/trace_libunwind.cpp
+index c76337c..96b2176 100644
+--- a/src/track/trace_libunwind.cpp
++++ b/src/track/trace_libunwind.cpp
+@@ -26,6 +26,7 @@
+ 
+ #define UNW_LOCAL_ONLY
+ #include <libunwind.h>
++#include <inttypes.h>
+ 
+ #include <stdio.h>
+ 
+@@ -60,9 +61,11 @@ void Trace::print()
+ void Trace::setup()
+ {
+     // configure libunwind for better speed
++#if UNW_CACHE_PER_THREAD
+     if (unw_set_caching_policy(unw_local_addr_space, UNW_CACHE_PER_THREAD)) {
+         fprintf(stderr, "WARNING: Failed to enable per-thread libunwind caching.\n");
+     }
++#endif
+ #if LIBUNWIND_HAS_UNW_SET_CACHE_SIZE
+     if (unw_set_cache_size(unw_local_addr_space, 1024, 0)) {
+         fprintf(stderr, "WARNING: Failed to set libunwind cache size.\n");
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/heaptrack/heaptrack_1.2.0.bb b/meta-openembedded/meta-oe/recipes-devtools/heaptrack/heaptrack_1.2.0.bb
index f2235af..207c452 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/heaptrack/heaptrack_1.2.0.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/heaptrack/heaptrack_1.2.0.bb
@@ -14,6 +14,7 @@
            file://0002-heaptrack_inject-Include-dlfcn.h-for-dlopen-dlclose.patch \
            file://0003-heaptrack_preload-Make-noexcept-attribute-conditiona.patch \
            file://0004-backtrace-Always-include-stdint.h.patch \
+           file://0001-track-Check-for-unw_set_caching_policy-before-using.patch \
            "
 
 SRCREV = "bc9e3744bcc47de978673d1e382f4125a1ab5fa8"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/mpich/mpich_3.4.1.bb b/meta-openembedded/meta-oe/recipes-devtools/mpich/mpich_3.4.2.bb
similarity index 92%
rename from meta-openembedded/meta-oe/recipes-devtools/mpich/mpich_3.4.1.bb
rename to meta-openembedded/meta-oe/recipes-devtools/mpich/mpich_3.4.2.bb
index 77e080c..0ee02d6 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/mpich/mpich_3.4.1.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/mpich/mpich_3.4.2.bb
@@ -6,7 +6,7 @@
 LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=bd4d7ab13df98988b1ca2a4e01c8c163"
 
 SRC_URI = "http://www.mpich.org/static/downloads/${PV}/mpich-${PV}.tar.gz"
-SRC_URI[sha256sum] = "8836939804ef6d492bcee7d54abafd6477d2beca247157d92688654d13779727"
+SRC_URI[sha256sum] = "5c19bea8b84e8d74cca5f047e82b147ff3fba096144270e3911ad623d6c587bf"
 
 RDEPENDS_${PN} += "bash perl libxml2"
 
@@ -31,6 +31,8 @@
 "
 PACKAGECONFIG[x11] = "--with-x --x-includes=${STAGING_INCDIR} --x-libraries=${STAGING_LIBDIR},--without-x,virtual/libx11"
 
+LDFLAGS_append_x86-64 = " -lgcc"
+
 inherit autotools gettext pkgconfig
 
 do_configure() {
diff --git a/meta-openembedded/meta-oe/recipes-devtools/poke/poke/0001-build-do-not-check-for-Tcl-Tk-if-disable-gui-is-spec.patch b/meta-openembedded/meta-oe/recipes-devtools/poke/poke/0001-build-do-not-check-for-Tcl-Tk-if-disable-gui-is-spec.patch
new file mode 100644
index 0000000..3bd041a
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/poke/poke/0001-build-do-not-check-for-Tcl-Tk-if-disable-gui-is-spec.patch
@@ -0,0 +1,43 @@
+From cef3fc90f02ef4fc49515745194bac3d81a2265b Mon Sep 17 00:00:00 2001
+From: "Jose E. Marchesi" <jose.marchesi@oracle.com>
+Date: Fri, 30 Apr 2021 13:17:05 +0200
+Subject: [PATCH] build: do not check for Tcl/Tk if --disable-gui is specified
+
+2021-04-30  Jose E. Marchesi  <jemarch@gnu.org>
+
+	* configure.ac: Do not check for tcl/tk if --disable-gui is
+	specified at configure time.
+
+(cherry picked from commit 280a5e154287e43c0a40d9530a9cc658a7367a9c)
+[Romain: remove Changelog entry]
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+---
+ configure.ac | 9 ++++++---
+ 1 file changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index c7205513..c2f0760a 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -214,12 +214,15 @@ fi
+ dnl The GUI is optional, and depends on the availability of Tcl and
+ dnl Tk.
+ 
+-POKE_TCLTK
+-
+ AC_ARG_ENABLE([gui],
+               AS_HELP_STRING([--enable-gui],
+                              [Enable the GUI (default is YES)]),
+-              [gui_enabled=$enableval], [gui_enabled=$has_tcltk])
++              [gui_enabled=$enableval], [gui_enabled=yes])
++
++if test "x$gui_enabled" = "xyes"; then
++ POKE_TCLTK
++ gui_enabled=$has_tcltk
++fi
+ 
+ AM_CONDITIONAL([GUI], [test "x$gui_enabled" = "xyes"])
+ 
+-- 
+2.30.2
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/poke/poke/0002-jitter-jitter-config.in-avoit-host-poisoning-while-c.patch b/meta-openembedded/meta-oe/recipes-devtools/poke/poke/0002-jitter-jitter-config.in-avoit-host-poisoning-while-c.patch
new file mode 100644
index 0000000..fa55f81
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/poke/poke/0002-jitter-jitter-config.in-avoit-host-poisoning-while-c.patch
@@ -0,0 +1,45 @@
+From c37419e459bd5863534719fa50755174d0912e6d Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@gmail.com>
+Date: Fri, 30 Apr 2021 14:32:21 +0200
+Subject: [PATCH] jitter: jitter-config.in: avoit host poisoning while
+ cross-compiling
+
+When jitter is bundled into another project (poke), jitter-config --cppflags
+return an unsafe path "-I /usr/include".
+
+In the context of Buildroot, such configuration script woulf be "fixed"
+after installation. But jitter-config is not installed by poke since it's
+build as static library and liked to poke.
+
+For now, patch jitter-config.in instead of jitter-config.in.m4sh since
+there is an issue while converting the M4sh m4sh script ( .in.m4sh )
+into a portable shell script ( .in ) ready to be processed by aclocal
+for @-substitutions.
+
+[1] https://git.buildroot.net/buildroot/tree/package/pkg-generic.mk?h=2021.02.1#n291
+
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+---
+ jitter/bin/jitter-config.in | 6 +-----
+ 1 file changed, 1 insertion(+), 5 deletions(-)
+
+diff --git a/jitter/bin/jitter-config.in b/jitter/bin/jitter-config.in
+index 5e124f0..af0ac9d 100644
+--- a/jitter/bin/jitter-config.in
++++ b/jitter/bin/jitter-config.in
+@@ -998,11 +998,7 @@ while test "$#" != "0"; do
+             append_to_output cflags;;
+         --cppflags)
+             no_option_argument
+-            append_to_output cppflags
+-            # Append a -I argument.  This is defined separately from the rest,
+-            # as the installation prefix can be decided very late, at Jitter
+-            # installation time.
+-            output="$output -I $includedir";;
++            append_to_output cppflags;;
+         --ldadd)
+             no_option_argument
+             append_to_output ldadd;;
+-- 
+2.30.2
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/poke/poke/0003-configure.ac-HELP2MAN-replace-by-true-when-cross-com.patch b/meta-openembedded/meta-oe/recipes-devtools/poke/poke/0003-configure.ac-HELP2MAN-replace-by-true-when-cross-com.patch
new file mode 100644
index 0000000..f217c91
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/poke/poke/0003-configure.ac-HELP2MAN-replace-by-true-when-cross-com.patch
@@ -0,0 +1,34 @@
+From 8ba76a5a7ce311f67890199c5595bc1f626495ad Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@gmail.com>
+Date: Fri, 30 Apr 2021 15:43:59 +0200
+Subject: [PATCH] configure.ac: HELP2MAN replace ':' by 'true' when
+ cross-compiling
+
+Avoid:
+/usr/bin/make  ./../poke/poke
+../run \
+  : -p poke --name="The GNU extensible binary editor" \
+      ./../poke/poke -o ./poke.1
+../run: line 51: exec: :: not found
+
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index c2f0760a..93769ef9 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -74,7 +74,7 @@ gl_LIBTEXTSTYLE_OPTIONAL([0.20.5])
+ if test $cross_compiling = no; then
+   AM_MISSING_PROG(HELP2MAN, help2man)
+ else
+-  HELP2MAN=:
++  HELP2MAN=true
+ fi
+ 
+ dnl recfix is part of the GNU recutils suite, and is used in cfg.mk to
+-- 
+2.30.2
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/poke/poke_1.2.bb b/meta-openembedded/meta-oe/recipes-devtools/poke/poke_1.2.bb
new file mode 100644
index 0000000..dd118a0
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/poke/poke_1.2.bb
@@ -0,0 +1,32 @@
+SUMMARY = "GNU poke is an extensible editor for structured binary data"
+HOMEPAGE = "https://pokology.org"
+DESCRIPTION = "GNU poke is an interactive, extensible editor for binary data. Not limited to editing basic entities such as bits and bytes, it provides a full-fledged procedural, interactive programming language designed to describe data structures and to operate on them."
+SECTION = "console/utils"
+LICENSE = "GPL-3.0+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+SRC_URI = "${GNU_MIRROR}/poke/poke-${PV}.tar.gz \
+          file://0001-build-do-not-check-for-Tcl-Tk-if-disable-gui-is-spec.patch \
+          file://0002-jitter-jitter-config.in-avoit-host-poisoning-while-c.patch \
+          file://0003-configure.ac-HELP2MAN-replace-by-true-when-cross-com.patch \
+          "
+
+DEPENDS = "flex-native bison-native bdwgc readline"
+
+SRC_URI[sha256sum] = "f61cf8da5b64c01a1359373725aad1ca257f35c1c9269e4d50dd0664183ddf62"
+
+# poke does not support using out-of-tree builds
+inherit autotools-brokensep gettext pkgconfig
+
+# The automatic m4 path detection gets confused, so force the right value from
+# the poke bootstrap script.
+acpaths = "-I ./m4"
+
+EXTRA_OECONF = "--disable-gui \
+                --disable-libnbd \
+                --with-libreadline-prefix=${STAGING_INCDIR} \
+                "
+
+PACKAGECONFIG[mi] = "--enable-mi,--disable-mi,json-c"
+
+FILES_${PN} += "${datadir}/emacs/site-lisp"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.15.2.bb b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.17.0.bb
similarity index 97%
rename from meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.15.2.bb
rename to meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.17.0.bb
index 0392f93..81af2d5 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.15.2.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.17.0.bb
@@ -10,7 +10,7 @@
 DEPENDS = "zlib"
 DEPENDS_append_class-target = " protobuf-native"
 
-SRCREV = "d7e943b8d2bc444a8c770644e73d090b486f8b37"
+SRCREV = "652d99a8ee8aa6b801e11977951fbf444cfccc8f"
 
 SRC_URI = "git://github.com/protocolbuffers/protobuf.git \
            file://run-ptest \
diff --git a/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace/0001-Fix-error-on-aarch64-with-binutils2.35.1.patch b/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace/0001-Fix-error-on-aarch64-with-binutils2.35.1.patch
deleted file mode 100644
index ac17cf4..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace/0001-Fix-error-on-aarch64-with-binutils2.35.1.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 0bc502989822506af308a559ac1cd52af82cac03 Mon Sep 17 00:00:00 2001
-From: Lei Maohui <leimaohui@cn.fujitsu.com>
-Date: Wed, 14 Apr 2021 09:35:35 +0900
-Subject: [PATCH] Fix error on aarch64 with binutils2.35.1.
-
-WARN: child terminated by signal: 11: Segmentation fault
-
-Upstream-status: Pending
-
-Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com>
----
- arch/aarch64/mcount-arch.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/arch/aarch64/mcount-arch.h b/arch/aarch64/mcount-arch.h
-index 69efe521..60c2c1ba 100644
---- a/arch/aarch64/mcount-arch.h
-+++ b/arch/aarch64/mcount-arch.h
-@@ -31,7 +31,7 @@ struct mcount_arch_context {
- 	double d[ARCH_MAX_FLOAT_REGS];
- };
- 
--#define ARCH_PLT0_SIZE  32
-+#define ARCH_PLT0_SIZE  16
- #define ARCH_PLTHOOK_ADDR_OFFSET  0
- 
- struct mcount_disasm_engine;
diff --git a/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.4.bb b/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.10.bb
similarity index 89%
rename from meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.4.bb
rename to meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.10.bb
index 4b4fc83..828c21c 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.4.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.10.bb
@@ -11,9 +11,8 @@
 inherit autotools
 
 PV .= "+git${SRCPV}"
-SRCREV = "d648bbffedef529220896283fb59e35531c13804"
+SRCREV = "a5e5a51d32bdfe59af8b453ca08d78cbdf0b3c61"
 SRC_URI = "git://github.com/namhyung/${BPN} \
-           file://0001-Fix-error-on-aarch64-with-binutils2.35.1.patch \
            "
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20210319.bb b/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20210509.bb
similarity index 82%
rename from meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20210319.bb
rename to meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20210509.bb
index 5f16561..2bfa575 100644
--- a/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20210319.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20210509.bb
@@ -8,10 +8,8 @@
 LICENSE = "LGPL-2.1"
 LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343"
 
-SRC_URI = "ftp://ftp.invisible-island.net/${BPN}/${BP}.tgz \
-          "
-SRC_URI[md5sum] = "45a28836769d52c00c800fa3226c530d"
-SRC_URI[sha256sum] = "42c6c2b35dd6d1c6cf231238e3bd6d3b7af53fc279a1af547ab9890044d46652"
+SRC_URI = "ftp://ftp.invisible-island.net/${BPN}/${BP}.tgz"
+SRC_URI[sha256sum] = "ae478fe7d5fca82bcf4b51684641e07d2ee68489d319710fe1e81f41a197bd66"
 
 # hardcoded here for use in dialog-static recipe
 S = "${WORKDIR}/dialog-${PV}"
diff --git a/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot/0001-reduce-build-to-conversion-tools-for-native-build.patch b/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot/0001-reduce-build-to-conversion-tools-for-native-build.patch
index f8f1fd0..7a2ecdc 100644
--- a/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot/0001-reduce-build-to-conversion-tools-for-native-build.patch
+++ b/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot/0001-reduce-build-to-conversion-tools-for-native-build.patch
@@ -21,11 +21,8 @@
  ## Process this file with automake to produce Makefile.in -*-Makefile-*-
  AUTOMAKE_OPTIONS = foreign
  
--SUBDIRS = config m4 term src docs man demo tutorial share
+-SUBDIRS = config m4 term src docs man demo share
 +SUBDIRS = docs
  
- EXTRA_DIST = BUGS Copyright FAQ.pdf GNUmakefile INSTALL INSTALL.gnu \
- Makefile.maint PATCHLEVEL PGPKEYS README RELEASE_NOTES \
--- 
-2.14.3
-
+ EXTRA_DIST = BUGS Copyright FAQ.pdf INSTALL INSTALL.gnu \
+ PATCHLEVEL PGPKEYS README RELEASE_NOTES \
diff --git a/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot/0002-do-not-build-demos.patch b/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot/0002-do-not-build-demos.patch
index 8e0b4a2..5f96cdf 100644
--- a/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot/0002-do-not-build-demos.patch
+++ b/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot/0002-do-not-build-demos.patch
@@ -14,18 +14,18 @@
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/Makefile.am b/Makefile.am
-index 9241ce5..b24e291 100644
+index 7e2c400..a8dbf96 100644
 --- a/Makefile.am
 +++ b/Makefile.am
 @@ -1,7 +1,7 @@
  ## Process this file with automake to produce Makefile.in -*-Makefile-*-
  AUTOMAKE_OPTIONS = foreign
  
--SUBDIRS = config m4 term src docs man demo tutorial share
-+SUBDIRS = config m4 term src docs man tutorial share
+-SUBDIRS = config m4 term src docs man demo share
++SUBDIRS = config m4 term src docs man share
  
- EXTRA_DIST = BUGS Copyright FAQ.pdf GNUmakefile INSTALL INSTALL.gnu \
- Makefile.maint PATCHLEVEL PGPKEYS README RELEASE_NOTES \
+ EXTRA_DIST = BUGS Copyright FAQ.pdf INSTALL INSTALL.gnu \
+ PATCHLEVEL PGPKEYS README RELEASE_NOTES \
 -- 
-2.14.3
+2.31.1
 
diff --git a/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot/0003-Use-native-tools-to-build-docs.patch b/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot/0003-Use-native-tools-to-build-docs.patch
index a4039c3..c2d2f7f 100644
--- a/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot/0003-Use-native-tools-to-build-docs.patch
+++ b/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot/0003-Use-native-tools-to-build-docs.patch
@@ -6,16 +6,22 @@
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
 
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
 Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+
 ---
  docs/Makefile.am | 22 +++++++++++-----------
  1 file changed, 11 insertions(+), 11 deletions(-)
 
 diff --git a/docs/Makefile.am b/docs/Makefile.am
-index 3baf0c4..e82f87d 100644
+index b20918a..47406eb 100644
 --- a/docs/Makefile.am
 +++ b/docs/Makefile.am
-@@ -152,7 +152,7 @@ gnuplot-groff.ps: gnuplot.ms $(srcdir)/titlepag.ms
+@@ -156,7 +156,7 @@ gnuplot-groff.ps: gnuplot.ms $(srcdir)/titlepag.ms
  
  ### doc2xxx dependencies
  gnuplot.ms: doc2ms$(EXEEXT) $(srcdir)/gnuplot.doc
@@ -24,7 +30,7 @@
  
  doc2ms_SOURCES = doc2ms.c termdoc.c
  doc2ms_CPPFLAGS = -DALL_TERM_DOC $(AM_CPPFLAGS)
-@@ -173,10 +173,10 @@ pdf_figures: $(GNUPLOT_EXE) $(srcdir)/plotstyles.gnu
+@@ -177,10 +177,10 @@ pdf_figures: $(GNUPLOT_EXE) $(srcdir)/plotstyles.gnu
  	$(AM_V_GEN)touch $@
  
  figures.tex: allterm.h doc2tex$(EXEEXT) $(srcdir)/gnuplot.doc
@@ -37,7 +43,7 @@
  
  pdf: gnuplot.pdf
  pdf_nofig: nofigures.pdf
-@@ -256,7 +256,7 @@ gnuplot.ps: gnuplot.dvi
+@@ -260,7 +260,7 @@ gnuplot.ps: gnuplot.dvi
  hlp: gnuplot.hlp
  
  gnuplot.hlp: doc2hlp$(EXEEXT) $(srcdir)/gnuplot.doc
@@ -46,7 +52,7 @@
  
  doc2hlp_SOURCES = doc2hlp.c termdoc.c
  
-@@ -264,14 +264,14 @@ doc2hlp_SOURCES = doc2hlp.c termdoc.c
+@@ -268,14 +268,14 @@ doc2hlp_SOURCES = doc2hlp.c termdoc.c
  gih: gnuplot.gih
  
  gnuplot.gih: doc2gih$(EXEEXT) $(srcdir)/gnuplot.doc
@@ -63,16 +69,16 @@
  
  alldoc2gih_SOURCES = doc2gih.c termdoc.c
  alldoc2gih_CPPFLAGS = -DALL_TERM_DOC $(AM_CPPFLAGS)
-@@ -286,7 +286,7 @@ $(srcdir)/windows/wgnuplot.hhk
+@@ -290,7 +290,7 @@ $(srcdir)/windows/wgnuplot.hhk
  wxhelp/wgnuplot.hhc wxhelp/wgnuplot.hhk wxhelp/*.html windows/*.png
  
  wxhelp/wgnuplot.html: doc2wxhtml$(EXEEXT) $(srcdir)/gnuplot.doc 
 -	$(AM_V_GEN) ./doc2wxhtml$(EXEEXT) $(srcdir)/gnuplot.doc wxhelp/
 +	$(AM_V_GEN) doc2wxhtml$(EXEEXT) $(srcdir)/gnuplot.doc wxhelp/
  
- #doc2wxhtml_SOURCES = windows/doc2html.c termdoc.c xref.c allterm.h
- #doc2wxhtml_CPPFLAGS = -DALL_TERM_DOC -DWXHELP -I../src $(AM_CPPFLAGS)
-@@ -336,7 +336,7 @@ install-info: gnuplot.info
+ doc2wxhtml_SOURCES = windows/doc2html.c termdoc.c xref.c allterm.h
+ doc2wxhtml_CPPFLAGS = -DALL_TERM_DOC -DWXHELP -I../src $(AM_CPPFLAGS)
+@@ -340,7 +340,7 @@ install-info: gnuplot.info
  ipf: gnuplot.ipf
  
  gnuplot.ipf: doc2ipf$(EXEEXT) $(srcdir)/gnuplot.doc
@@ -81,7 +87,7 @@
  
  doc2ipf_SOURCES = doc2ipf.c termdoc.c xref.c
  
-@@ -344,7 +344,7 @@ doc2ipf_SOURCES = doc2ipf.c termdoc.c xref.c
+@@ -348,7 +348,7 @@ doc2ipf_SOURCES = doc2ipf.c termdoc.c xref.c
  rtf: gnuplot.rtf
  
  gnuplot.rtf: doc2rtf$(EXEEXT) $(srcdir)/gnuplot.doc
@@ -90,7 +96,7 @@
  
  doc2rtf_SOURCES = doc2rtf.c termdoc.c xref.c
  
-@@ -352,13 +352,13 @@ doc2rtf_SOURCES = doc2rtf.c termdoc.c xref.c
+@@ -356,13 +356,13 @@ doc2rtf_SOURCES = doc2rtf.c termdoc.c xref.c
  rnh: gnuplot.rnh
  
  gnuplot.rnh: doc2rnh$(EXEEXT) $(srcdir)/gnuplot.doc
diff --git a/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot_5.2.8.bb b/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot_5.4.1.bb
similarity index 84%
rename from meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot_5.2.8.bb
rename to meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot_5.4.1.bb
index b2c4175..3d75f06 100644
--- a/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot_5.2.8.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot_5.4.1.bb
@@ -11,7 +11,8 @@
 # depends on virtual/libx11
 REQUIRED_DISTRO_FEATURES = "x11"
 
-SRC_URI = "${SOURCEFORGE_MIRROR}/gnuplot/${BP}.tar.gz;name=archive \
+SRC_URI = " \
+    ${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}/${PV}/${BP}.tar.gz;name=archive \
     http://www.mneuroth.de/privat/zaurus/qtplot-0.2.tar.gz;name=qtplot \
     file://gnuplot.desktop \
     file://gnuplot.png \
@@ -22,9 +23,7 @@
     file://0004-Add-configure-option-to-find-qt5-native-tools.patch \
 "
 
-SRC_URI[archive.md5sum] = "2df8767c7399bee57a96296d46b4d5fb"
-SRC_URI[archive.sha256sum] = "60a6764ccf404a1668c140f11cc1f699290ab70daa1151bb58fed6139a28ac37"
-SRC_URI[qtplot.md5sum] = "0a481885a496092c77eb4017540b5cf6"
+SRC_URI[archive.sha256sum] = "6b690485567eaeb938c26936e5e0681cf70c856d273cc2c45fabf64d8bc6590e"
 SRC_URI[qtplot.sha256sum] = "6df317183ff62cc82f3dcf88207a267cd6478cb5147f55d7530c94f1ad5f4132"
 
 # for building docs (they deserve it) we need *doc2* tools native
@@ -45,9 +44,10 @@
 PACKAGECONFIG[lua] = "--with-lua,--without-lua,lua"
 PACKAGECONFIG[qt5] = "--with-qt --with-qt5nativesysroot=${STAGING_DIR_NATIVE},--without-qt,qtbase-native qtbase qtsvg qttools-native"
 
-EXTRA_OECONF = "--with-readline=${STAGING_LIBDIR}/.. \
-                --without-tutorial \
-                --disable-wxwidgets"
+EXTRA_OECONF = " \
+    --with-readline=${STAGING_LIBDIR}/.. \
+    -disable-wxwidgets \
+"
 
 do_compile_prepend() {
     install -m 0644 ${WORKDIR}/qtplot-0.2/qtopia.trm ${S}/term/
diff --git a/meta-openembedded/meta-oe/recipes-extended/icewm/icewm/0001-configure.ac-skip-running-test-program-when-cross-co.patch b/meta-openembedded/meta-oe/recipes-extended/icewm/icewm/0001-configure.ac-skip-running-test-program-when-cross-co.patch
index 7943948..c5e210a 100644
--- a/meta-openembedded/meta-oe/recipes-extended/icewm/icewm/0001-configure.ac-skip-running-test-program-when-cross-co.patch
+++ b/meta-openembedded/meta-oe/recipes-extended/icewm/icewm/0001-configure.ac-skip-running-test-program-when-cross-co.patch
@@ -10,11 +10,9 @@
  configure.ac | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
 
-diff --git a/configure.ac b/configure.ac
-index c5e3ca03..4b89396a 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -140,7 +140,7 @@ AC_CHECK_FUNC([getloadavg],[AC_DEFINE([HAVE_GETLOADAVG2], 1, [getloadavg() is av
+@@ -160,7 +160,7 @@ AC_CHECK_FUNCS([backtrace_symbols_fd mem
  AC_FUNC_SELECT_ARGTYPES
  
  AC_MSG_CHECKING([for strlcpy])
@@ -23,7 +21,7 @@
                 char a[2];
                 if (strlcpy(a, "yes", 2) != 3)
                     return 1;]])],
-@@ -156,7 +156,7 @@ AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include <string.h>]],[[
+@@ -176,7 +176,7 @@ AC_RUN_IFELSE([AC_LANG_PROGRAM([[#includ
                ])
  
  AC_MSG_CHECKING([for strlcat])
@@ -32,6 +30,25 @@
                 char a[4] = "no";
                 if (strlcat(a, "yes", 4) != 5)
                     return 1;]])],
--- 
-2.17.1
-
+@@ -191,21 +191,6 @@ AC_RUN_IFELSE([AC_LANG_PROGRAM([[#includ
+                            [Define to 1 if you have the strlcat function.])
+               ])
+ 
+-AC_MSG_CHECKING([for C++11 by default])
+-AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include <regex>]],[[
+-               if (__cplusplus < 201103L) return 1;]])],
+-              [AC_MSG_RESULT([yes])],
+-              [AC_MSG_RESULT([no])
+-               AC_MSG_CHECKING([for C++11 when forced])
+-               CXXFLAGS="$CXXFLAGS -std=c++11"
+-               AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include <regex>]],[[
+-                              if (__cplusplus < 201103L) return 1;]])],
+-                             [AC_MSG_RESULT([yes])],
+-                             [AC_MSG_RESULT([no])
+-                              AC_MSG_ERROR([Need C++11. Please set CXXFLAGS.])
+-                             ])
+-              ])
+-
+ PKG_CHECK_MODULES([CORE],[fontconfig xrender xcomposite xdamage xfixes xext x11])
+ AC_SUBST([CORE_CFLAGS])
+ AC_SUBST([CORE_LIBS])
diff --git a/meta-openembedded/meta-oe/recipes-extended/icewm/icewm_1.6.5.bb b/meta-openembedded/meta-oe/recipes-extended/icewm/icewm_2.3.3.bb
similarity index 89%
rename from meta-openembedded/meta-oe/recipes-extended/icewm/icewm_1.6.5.bb
rename to meta-openembedded/meta-oe/recipes-extended/icewm/icewm_2.3.3.bb
index 241a2b3..abc3e09 100644
--- a/meta-openembedded/meta-oe/recipes-extended/icewm/icewm_1.6.5.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/icewm/icewm_2.3.3.bb
@@ -5,7 +5,7 @@
 SRC_URI = "https://github.com/ice-wm/${BPN}/releases/download/${PV}/${BPN}-${PV}.tar.lz \
            file://0001-configure.ac-skip-running-test-program-when-cross-co.patch \
            "
-SRC_URI[sha256sum] = "d41e6abf842ff3f8705a81d352be7c5b181c587549c183de0641c3820234a7b2"
+SRC_URI[sha256sum] = "4162565cf7566d78d786e4ecf4b0639451b8464bcb24e761b1f08ef43e95e513"
 
 UPSTREAM_CHECK_URI = "https://github.com/ice-wm/${BPN}/releases"
 
@@ -19,7 +19,7 @@
                 --enable-xinerama \
                 --enable-shape"
 
-DEPENDS = "asciidoc-native fontconfig gdk-pixbuf libxft libxpm libxrandr \
+DEPENDS = "asciidoc-native fontconfig fribidi gdk-pixbuf imlib2	libxft libxpm libxrandr \
     libxinerama libice libsm libx11 libxext libxrender libxcomposite libxdamage \
     libxfixes"
 DEPENDS_append = " qemu-native"
diff --git a/meta-openembedded/meta-oe/recipes-extended/libdivecomputer/libdivecomputer_git.bb b/meta-openembedded/meta-oe/recipes-extended/libdivecomputer/libdivecomputer_git.bb
index b7c1958..116ecd8 100644
--- a/meta-openembedded/meta-oe/recipes-extended/libdivecomputer/libdivecomputer_git.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/libdivecomputer/libdivecomputer_git.bb
@@ -8,9 +8,9 @@
 
 inherit autotools pkgconfig
 
-PV = "0.6.0"
+PV = "0.7.0"
 
-SRCREV = "1195abc2f4acc7b10175d570ec73549d0938c83e"
+SRCREV = "47cbed5355ffda7b952193a770a9a9fa9f89b25b"
 SRC_URI = "git://github.com/libdivecomputer/libdivecomputer.git;protocol=https \
           "
 
diff --git a/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/0001-Fix-build-with-libc.patch b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/0001-Fix-build-with-libc.patch
new file mode 100644
index 0000000..c1c1181
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/0001-Fix-build-with-libc.patch
@@ -0,0 +1,36 @@
+From 72e0fe484444169007e481c9b33d8f78ebe03674 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 27 May 2021 15:44:10 -0700
+Subject: [PATCH] Fix build with libc++
+
+In libc++ on 32-bit platforms, int64_t is defined as alias of long long. On 64-bit platforms: long.
+
+On the other hand in definition of std::chrono::duration aliases, that you can find here long long is used
+
+Therefore create custom unit to avoid incompatibility between libstdc++
+and libc++
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ extensions/expression-language/Expression.cpp | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/extensions/expression-language/Expression.cpp b/extensions/expression-language/Expression.cpp
+index a25e1d3f..68d6320c 100644
+--- a/extensions/expression-language/Expression.cpp
++++ b/extensions/expression-language/Expression.cpp
+@@ -629,7 +629,8 @@ Value expr_toDate(const std::vector<Value> &args) {
+ #endif  // EXPRESSION_LANGUAGE_USE_DATE
+ 
+ Value expr_now(const std::vector<Value> &args) {
+-  return Value(std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono::system_clock::now().time_since_epoch()).count());
++  using Milliseconds = std::chrono::duration<std::int64_t, std::chrono::milliseconds::period>;
++  return Value(std::chrono::duration_cast<Milliseconds>(std::chrono::system_clock::now().time_since_epoch()).count());
+ }
+ 
+ Value expr_unescapeCsv(const std::vector<Value> &args) {
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/minifi-cpp_0.7.0.bb b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/minifi-cpp_0.7.0.bb
index 322b584..86c149b 100644
--- a/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/minifi-cpp_0.7.0.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/minifi-cpp_0.7.0.bb
@@ -29,6 +29,7 @@
             file://0003-cmake-BundledOSSPUUID.cmake-use-ossp-uuid-local-sour.patch \
             file://0001-civetweb-CMakeLists.txt-do-not-search-gcc-ar-and-gcc.patch \
             file://0001-cxxopts-Add-limits-header.patch \
+            file://0001-Fix-build-with-libc.patch \
             file://minifi.service \
             file://systemd-volatile.conf \
             file://sysvinit-volatile.conf \
diff --git a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2021.2.bb b/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2021.2.bb
index 62467b0..c3505ab 100644
--- a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2021.2.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2021.2.bb
@@ -22,7 +22,7 @@
 PREMIRRORS = ""
 
 SRC_URI = " \
-    gitsm://github.com/ostreedev/ostree \
+    gitsm://github.com/ostreedev/ostree;branch=main \
     file://run-ptest \
 "
 SRCREV = "6a72674ec621a2282043c3a083fe1e45cd6a8761"
diff --git a/meta-openembedded/meta-oe/recipes-extended/p7zip/files/0001-Fix-narrowing-errors-Wc-11-narrowing.patch b/meta-openembedded/meta-oe/recipes-extended/p7zip/files/0001-Fix-narrowing-errors-Wc-11-narrowing.patch
index ae27517..1f08d16 100644
--- a/meta-openembedded/meta-oe/recipes-extended/p7zip/files/0001-Fix-narrowing-errors-Wc-11-narrowing.patch
+++ b/meta-openembedded/meta-oe/recipes-extended/p7zip/files/0001-Fix-narrowing-errors-Wc-11-narrowing.patch
@@ -1,4 +1,4 @@
-From b6b1782af4aa7f9084d32e4144738dc2535c8d6f Mon Sep 17 00:00:00 2001
+From 653674e11872465dd5edf1c1e8413ea813d7e086 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Mon, 23 Apr 2018 23:07:21 -0700
 Subject: [PATCH] Fix narrowing errors -Wc++11-narrowing
@@ -17,6 +17,7 @@
 Upstream-Status: Pending
 
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
 ---
  CPP/Windows/ErrorMsg.cpp | 14 +++++++-------
  1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/meta-openembedded/meta-oe/recipes-extended/p7zip/files/CVE-2017-17969.patch b/meta-openembedded/meta-oe/recipes-extended/p7zip/files/CVE-2017-17969.patch
index 177d145..9ba1078 100644
--- a/meta-openembedded/meta-oe/recipes-extended/p7zip/files/CVE-2017-17969.patch
+++ b/meta-openembedded/meta-oe/recipes-extended/p7zip/files/CVE-2017-17969.patch
@@ -1,4 +1,7 @@
-p7zip: Fix CVE-2017-17969
+From 7f2da4f810b429ddb7afa0e252e3d02ced0eba87 Mon Sep 17 00:00:00 2001
+From: Radovan Scasny <radovan.scasny@siemens.com>
+Date: Tue, 20 Feb 2018 12:08:13 +0100
+Subject: [PATCH] p7zip: Fix CVE-2017-17969
 
 [No upstream tracking] -- https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=888297
 
@@ -8,12 +11,18 @@
 in the NCompress::NShrink::CDecoder::CodeReal method
 in 7-Zip before 18.00 and p7zip allows remote attackers
 to cause a denial of service (out-of-bounds write)
-or potentially execute arbitrary code via a crafted ZIP archive. 
+or potentially execute arbitrary code via a crafted ZIP archive.
 
 Upstream-Status: Backport [https://sourceforge.net/p/p7zip/bugs/_discuss/thread/0920f369/8316/attachment/CVE-2017-17969.patch]
 CVE: CVE-2017-17969
 Signed-off-by: Radovan Scasny <radovan.scasny@siemens.com>
 
+---
+ CPP/7zip/Compress/ShrinkDecoder.cpp | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/CPP/7zip/Compress/ShrinkDecoder.cpp b/CPP/7zip/Compress/ShrinkDecoder.cpp
+index 80b7e67..5bb0559 100644
 --- a/CPP/7zip/Compress/ShrinkDecoder.cpp
 +++ b/CPP/7zip/Compress/ShrinkDecoder.cpp
 @@ -121,7 +121,12 @@ HRESULT CDecoder::CodeReal(ISequentialInStream *inStream, ISequentialOutStream *
diff --git a/meta-openembedded/meta-oe/recipes-extended/p7zip/files/change_numMethods_from_bool_to_unsigned.patch b/meta-openembedded/meta-oe/recipes-extended/p7zip/files/change_numMethods_from_bool_to_unsigned.patch
new file mode 100644
index 0000000..93eb058
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/p7zip/files/change_numMethods_from_bool_to_unsigned.patch
@@ -0,0 +1,34 @@
+From 0820ef4b9238c1e39ae5bda32cc08cce3fd3ce89 Mon Sep 17 00:00:00 2001
+From: Nisha Parrakat <Nisha.Parrakat@kpit.com>
+Date: Wed, 26 May 2021 19:59:28 +0000
+Subject: [PATCH] fixes the below error
+
+| ../../../../CPP/7zip/Archive/Wim/WimHandler.cpp: In member function 'virtual LONG NArchive::NWim::CHandler::GetArchiveProperty(PROPID, PROPVARIANT*)':
+| ../../../../CPP/7zip/Archive/Wim/WimHandler.cpp:308:11: error: use of an operand of type 'bool' in 'operator++' is forbidden in C++17
+|   308 |           numMethods++;
+|       |           ^~~~~~~~~~
+| ../../../../CPP/7zip/Archive/Wim/WimHandler.cpp:318:9: error: use of an operand of type 'bool' in 'operator++' is forbidden in C++17
+|   318 |         numMethods++;
+
+use unsigned instead of bool
+Signed-off-by: Nisha Parrakat <Nisha.Parrakat@kpit.com>
+
+Upstream-Status: Pending
+
+---
+ CPP/7zip/Archive/Wim/WimHandler.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CPP/7zip/Archive/Wim/WimHandler.cpp b/CPP/7zip/Archive/Wim/WimHandler.cpp
+index 27d3298..4ff5cfe 100644
+--- a/CPP/7zip/Archive/Wim/WimHandler.cpp
++++ b/CPP/7zip/Archive/Wim/WimHandler.cpp
+@@ -298,7 +298,7 @@ STDMETHODIMP CHandler::GetArchiveProperty(PROPID propID, PROPVARIANT *value)
+ 
+       AString res;
+ 
+-      bool numMethods = 0;
++      unsigned numMethods = 0;
+       for (unsigned i = 0; i < ARRAY_SIZE(k_Methods); i++)
+       {
+         if (methodMask & ((UInt32)1 << i))
diff --git a/meta-openembedded/meta-oe/recipes-extended/p7zip/files/do_not_override_compiler_and_do_not_strip.patch b/meta-openembedded/meta-oe/recipes-extended/p7zip/files/do_not_override_compiler_and_do_not_strip.patch
index b0a560f..2636e7f 100644
--- a/meta-openembedded/meta-oe/recipes-extended/p7zip/files/do_not_override_compiler_and_do_not_strip.patch
+++ b/meta-openembedded/meta-oe/recipes-extended/p7zip/files/do_not_override_compiler_and_do_not_strip.patch
@@ -1,4 +1,7 @@
-do not override compiler and do not strip
+From b2aa209dfc5e59d6329b55b9764782334b63dbe8 Mon Sep 17 00:00:00 2001
+From: Raphael Freudiger <raphael.freudiger@siemens.com>
+Date: Wed, 11 Feb 2015 09:11:47 +0100
+Subject: [PATCH] do not override compiler and do not strip
 
 The default makefile sets the compiler to g++ or gcc. This leads to a wrong architecture when cross-compiling.
 Remove the hardcoded compiler and just append the flags to CXX and CC.
@@ -7,9 +10,14 @@
 Signed-off-by: Raphael Freudiger <raphael.freudiger@siemens.com>
 Reviewed-By: Pascal Bach <pascal.bach@siemens.com>
 
-diff -Nurp p7zip_15.14.1_orig/makefile.machine p7zip_15.14.1/makefile.machine
---- p7zip_15.14.1_orig/makefile.machine	2016-03-23 20:37:47.000000000 +0100
-+++ p7zip_15.14.1/makefile.machine	2016-06-17 15:33:39.720454477 +0200
+---
+ makefile.machine | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+diff --git a/makefile.machine b/makefile.machine
+index 9e34c34..e9244d9 100644
+--- a/makefile.machine
++++ b/makefile.machine
 @@ -2,7 +2,7 @@
  # makefile for Linux (x86, PPC, alpha ...)
  #
diff --git a/meta-openembedded/meta-oe/recipes-extended/p7zip/p7zip_16.02.bb b/meta-openembedded/meta-oe/recipes-extended/p7zip/p7zip_16.02.bb
index 13479a9..ada4911 100644
--- a/meta-openembedded/meta-oe/recipes-extended/p7zip/p7zip_16.02.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/p7zip/p7zip_16.02.bb
@@ -9,6 +9,7 @@
            file://do_not_override_compiler_and_do_not_strip.patch \
            file://CVE-2017-17969.patch \
            file://0001-Fix-narrowing-errors-Wc-11-narrowing.patch \
+           file://change_numMethods_from_bool_to_unsigned.patch \
            "
 
 SRC_URI[md5sum] = "a0128d661cfe7cc8c121e73519c54fbf"
@@ -16,10 +17,26 @@
 
 S = "${WORKDIR}/${BPN}_${PV}"
 
+do_compile_append() {
+    oe_runmake 7z
+}
+FILES_${PN} += "${libdir}/* ${bindir}/7z"
+
+FILES_SOLIBSDEV = ""
+INSANE_SKIP_${PN} += "dev-so"
+
 do_install() {
 	install -d ${D}${bindir}
-	install -m 0755 ${S}/bin/* ${D}${bindir}
+	install -d ${D}${bindir}/Codecs
+	install -d ${D}${libdir}
+	install -d ${D}${libdir}/Codecs
+	install -m 0755 ${S}/bin/7za ${D}${bindir}
 	ln -s 7za ${D}${bindir}/7z
+	install -m 0755 ${S}/bin/Codecs/* ${D}${libdir}/Codecs/
+	install -m 0755 ${S}/bin/7z.so ${D}${libdir}/lib7z.so
 }
 
-BBCLASSEXTEND = "native"
+RPROVIDES_${PN} += "lib7z.so()(64bit) 7z lib7z.so"
+RPROVIDES_${PN}-dev += "lib7z.so()(64bit) 7z lib7z.so"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-extended/redis/redis/0001-src-Do-not-reset-FINAL_LIBS.patch b/meta-openembedded/meta-oe/recipes-extended/redis/redis/0001-src-Do-not-reset-FINAL_LIBS.patch
index b5c4133..66ab0ee 100644
--- a/meta-openembedded/meta-oe/recipes-extended/redis/redis/0001-src-Do-not-reset-FINAL_LIBS.patch
+++ b/meta-openembedded/meta-oe/recipes-extended/redis/redis/0001-src-Do-not-reset-FINAL_LIBS.patch
@@ -10,15 +10,16 @@
 
 Upstream-Status: Pending
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
 ---
  src/Makefile | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/src/Makefile b/src/Makefile
-index 7f7c625..c71dd3b 100644
+index 5564351..83ccd76 100644
 --- a/src/Makefile
 +++ b/src/Makefile
-@@ -75,7 +75,7 @@ endif
+@@ -91,7 +91,7 @@ endif
  
  FINAL_CFLAGS=$(STD) $(WARN) $(OPT) $(DEBUG) $(CFLAGS) $(REDIS_CFLAGS)
  FINAL_LDFLAGS=$(LDFLAGS) $(REDIS_LDFLAGS) $(DEBUG)
@@ -26,7 +27,4 @@
 +FINAL_LIBS+=-lm
  DEBUG=-g -ggdb
  
- # Linux ARM needs -latomic at linking time
--- 
-2.23.0
-
+ # Linux ARM32 needs -latomic at linking time
diff --git a/meta-openembedded/meta-oe/recipes-extended/redis/redis_6.2.2.bb b/meta-openembedded/meta-oe/recipes-extended/redis/redis_6.2.3.bb
similarity index 95%
rename from meta-openembedded/meta-oe/recipes-extended/redis/redis_6.2.2.bb
rename to meta-openembedded/meta-oe/recipes-extended/redis/redis_6.2.3.bb
index 65b5257..67ac974 100644
--- a/meta-openembedded/meta-oe/recipes-extended/redis/redis_6.2.2.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/redis/redis_6.2.3.bb
@@ -17,7 +17,7 @@
            file://GNU_SOURCE.patch \
            file://0006-Define-correct-gregs-for-RISCV32.patch \
            "
-SRC_URI[sha256sum] = "7a260bb74860f1b88c3d5942bf8ba60ca59f121c6dce42d3017bed6add0b9535"
+SRC_URI[sha256sum] = "98ed7d532b5e9671f5df0825bb71f0f37483a16546364049384c63db8764512b"
 
 inherit autotools-brokensep update-rc.d systemd useradd
 
diff --git a/meta-openembedded/meta-oe/recipes-extended/snappy/snappy/0001-Add-inline-with-SNAPPY_ATTRIBUTE_ALWAYS_INLINE.patch b/meta-openembedded/meta-oe/recipes-extended/snappy/snappy/0001-Add-inline-with-SNAPPY_ATTRIBUTE_ALWAYS_INLINE.patch
new file mode 100644
index 0000000..27357d8
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/snappy/snappy/0001-Add-inline-with-SNAPPY_ATTRIBUTE_ALWAYS_INLINE.patch
@@ -0,0 +1,71 @@
+From 4728803cc8687431449c8c9fbfabb1da04943400 Mon Sep 17 00:00:00 2001
+From: "Georgi D. Sotirov" <gdsotirov@gmail.com>
+Date: Wed, 5 May 2021 14:16:46 +0300
+Subject: [PATCH] Add inline with SNAPPY_ATTRIBUTE_ALWAYS_INLINE
+
+Add inline with SNAPPY_ATTRIBUTE_ALWAYS_INLINE on AdvanceToNextTag to
+fix the following compilation errors and a warning with GCC:
+
+[  2%] Building CXX object CMakeFiles/snappy.dir/snappy.cc.o
+/usr/bin/c++   -DHAVE_CONFIG_H -Dsnappy_EXPORTS
+-I/tmp/snappy-1.1.9/build -I/tmp/snappy-1.1.9  -O3
+-march=i586 -mtune=i686 -Wall -Wextra -fno-exceptions -fno-rtti -O3
+-DNDEBUG -fPIC   -std=c++11 -o CMakeFiles/snappy.dir/snappy.cc.o -c
+/tmp/snappy-1.1.9/snappy.cc
+/tmp/snappy-1.1.9/snappy.cc:1017:8: warning: always_inline
+function might not be inlinable [-Wattributes]
+ size_t AdvanceToNextTag(const uint8_t** ip_p, size_t* tag) {
+        ^
+/tmp/snappy-1.1.9/snappy.cc: In function 'std::pair<const
+unsigned char*, int> snappy::DecompressBranchless(const uint8_t*, const
+uint8_t*, ptrdiff_t, T, ptrdiff_t) [with T = char*; uint8_t = unsigned
+char; ptrdiff_t = int]':
+/tmp/snappy-1.1.9/snappy.cc:1017:8: error: inlining failed in
+call to always_inline 'size_t snappy::AdvanceToNextTag(const uint8_t**,
+size_t*)': function body can be overwritten at link time
+/tmp/snappy-1.1.9/snappy.cc:1097:53: error: called from here
+         size_t tag_type = AdvanceToNextTag(&ip, &tag);
+                                                     ^
+/tmp/snappy-1.1.9/snappy.cc:1017:8: error: inlining failed in
+call to always_inline 'size_t snappy::AdvanceToNextTag(const uint8_t**,
+size_t*)': function body can be overwritten at link time
+ size_t AdvanceToNextTag(const uint8_t** ip_p, size_t* tag) {
+        ^
+/tmp/snappy-1.1.9/snappy.cc:1097:53: error: called from here
+         size_t tag_type = AdvanceToNextTag(&ip, &tag);
+                                                     ^
+/tmp/snappy-1.1.9/snappy.cc:1017:8: error: inlining failed in
+call to always_inline 'size_t snappy::AdvanceToNextTag(const uint8_t**,
+size_t*)': function body can be overwritten at link time
+ size_t AdvanceToNextTag(const uint8_t** ip_p, size_t* tag) {
+        ^
+/tmp/snappy-1.1.9/snappy.cc:1097:53: error: called from here
+         size_t tag_type = AdvanceToNextTag(&ip, &tag);
+                                                     ^
+CMakeFiles/snappy.dir/build.make:137: recipe for target
+'CMakeFiles/snappy.dir/snappy.cc.o' failed
+
+Just like with other functions using SNAPPY_ATTRIBUTE_ALWAYS_INLINE
+macro (i.e. __attribute__((always_inline)) ) it is necessary to use C++
+inline specifier.
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+
+Upstream-Status: Submitted [https://github.com/google/snappy/pull/128]
+---
+ snappy.cc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/snappy.cc b/snappy.cc
+index 79dc0e8..51157be 100644
+--- a/snappy.cc
++++ b/snappy.cc
+@@ -1014,7 +1014,7 @@ void MemMove(ptrdiff_t dst, const void* src, size_t size) {
+ }
+ 
+ SNAPPY_ATTRIBUTE_ALWAYS_INLINE
+-size_t AdvanceToNextTag(const uint8_t** ip_p, size_t* tag) {
++inline size_t AdvanceToNextTag(const uint8_t** ip_p, size_t* tag) {
+   const uint8_t*& ip = *ip_p;
+   // This section is crucial for the throughput of the decompression loop.
+   // The latency of an iteration is fundamentally constrained by the
diff --git a/meta-openembedded/meta-oe/recipes-extended/snappy/snappy_1.1.8.bb b/meta-openembedded/meta-oe/recipes-extended/snappy/snappy_1.1.8.bb
deleted file mode 100644
index d6d1e41..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/snappy/snappy_1.1.8.bb
+++ /dev/null
@@ -1,25 +0,0 @@
-#
-# Copyright (C) 2014 Wind River Systems, Inc.
-# Released under the BSD-3-Clause license (see COPYING.BSD-3 for the terms)
-#
-SUMMARY = "A compression/decompression library"
-DESCRIPTION = "Snappy is a fast data compression and decompression library \
-It was designed to be very fast and stable, but not to achieve a high \
-compression ratio."
-
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://COPYING;md5=f62f3080324a97b3159a7a7e61812d0c"
-
-SRC_URI = "https://src.fedoraproject.org/repo/pkgs/snappy/snappy-1.1.8.tar.gz/sha512/efe18ff1b3edda1b4b6cefcbc6da8119c05d63afdbf7a784f3490353c74dced76baed7b5f1aa34b99899729192b9d657c33c76de4b507a51553fa8001ae75c1c/snappy-1.1.8.tar.gz"
-
-SRC_URI[md5sum] = "70e48cba7fecf289153d009791c9977f"
-SRC_URI[sha256sum] = "16b677f07832a612b0836178db7f374e414f94657c138e6993cbfc5dcc58651f"
-
-inherit cmake pkgconfig
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[lzo] = "-DHAVE_LIBLZO2=1,-DHAVE_LIBLZO2=0,lzo,"
-TARGET_CFLAGS += "-fPIC"
-
-EXTRA_OECMAKE += '-DBUILD_SHARED_LIBS="ON" \
-                  '
diff --git a/meta-openembedded/meta-oe/recipes-extended/snappy/snappy_1.1.9.bb b/meta-openembedded/meta-oe/recipes-extended/snappy/snappy_1.1.9.bb
new file mode 100644
index 0000000..5c786d8
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/snappy/snappy_1.1.9.bb
@@ -0,0 +1,26 @@
+#
+# Copyright (C) 2014 Wind River Systems, Inc.
+# Released under the BSD-3-Clause license (see COPYING.BSD-3 for the terms)
+#
+SUMMARY = "A compression/decompression library"
+DESCRIPTION = "Snappy is a fast data compression and decompression library \
+It was designed to be very fast and stable, but not to achieve a high \
+compression ratio."
+
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://COPYING;md5=f62f3080324a97b3159a7a7e61812d0c"
+
+SRC_URI = "gitsm://github.com/google/snappy.git;protocol=https \
+    file://0001-Add-inline-with-SNAPPY_ATTRIBUTE_ALWAYS_INLINE.patch \
+"
+SRCREV = "2b63814b15a2aaae54b7943f0cd935892fae628f"
+S = "${WORKDIR}/git"
+
+
+inherit cmake pkgconfig
+
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[lzo] = "-DHAVE_LIBLZO2=1,-DHAVE_LIBLZO2=0,lzo,"
+TARGET_CFLAGS += "-fPIC"
+
+EXTRA_OECMAKE += '-DBUILD_SHARED_LIBS="ON" -DSNAPPY_BUILD_TESTS="OFF" -DSNAPPY_BUILD_BENCHMARKS="OFF"'
diff --git a/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig_git.bb b/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig_git.bb
index d9da190..f1b7707 100644
--- a/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig_git.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/sysdig/sysdig_git.bb
@@ -14,6 +14,7 @@
 JIT_mipsarchn64 = ""
 JIT_riscv64 = ""
 JIT_riscv32 = ""
+JIT_powerpc = ""
 
 DEPENDS += "libb64 lua${JIT} zlib c-ares grpc-native grpc curl ncurses jsoncpp tbb jq openssl elfutils protobuf protobuf-native jq-native"
 RDEPENDS_${PN} = "bash"
@@ -49,3 +50,4 @@
 COMPATIBLE_HOST_mips = "null"
 COMPATIBLE_HOST_riscv64 = "null"
 COMPATIBLE_HOST_riscv32 = "null"
+COMPATIBLE_HOST_powerpc = "null"
diff --git a/meta-openembedded/meta-oe/recipes-gnome/libjcat/libjcat_0.1.6.bb b/meta-openembedded/meta-oe/recipes-gnome/libjcat/libjcat_0.1.7.bb
similarity index 94%
rename from meta-openembedded/meta-oe/recipes-gnome/libjcat/libjcat_0.1.6.bb
rename to meta-openembedded/meta-oe/recipes-gnome/libjcat/libjcat_0.1.7.bb
index bbfba55..b857cc5 100644
--- a/meta-openembedded/meta-oe/recipes-gnome/libjcat/libjcat_0.1.6.bb
+++ b/meta-openembedded/meta-oe/recipes-gnome/libjcat/libjcat_0.1.7.bb
@@ -11,7 +11,7 @@
     git://github.com/hughsie/libjcat.git \
     file://run-ptest \
 "
-SRCREV = "c4f032468c56a5750e1e15b01fa31539b5c7ae51"
+SRCREV = "e5307885528cf07058be073d0621624749cc10df"
 S = "${WORKDIR}/git"
 
 inherit gobject-introspection gtk-doc meson ptest-gnome vala
diff --git a/meta-openembedded/meta-oe/recipes-gnome/libpeas/libpeas/0001-Do-not-build-tests-when-introspection-is-disabled-mi.patch b/meta-openembedded/meta-oe/recipes-gnome/libpeas/libpeas/0001-Do-not-build-tests-when-introspection-is-disabled-mi.patch
deleted file mode 100644
index 86586fe..0000000
--- a/meta-openembedded/meta-oe/recipes-gnome/libpeas/libpeas/0001-Do-not-build-tests-when-introspection-is-disabled-mi.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 53a4f19887d9ae4e77f32dd6d71c8a7b516b4d5d Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
-Date: Mon, 10 Aug 2020 21:53:33 +0200
-Subject: [PATCH] Do not build tests when introspection is disabled/missing
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Fixes:
-| ../libpeas-1.26.0/tests/libpeas/introspection/meson.build:47:0: ERROR: Unknown variable "libpeas_gir".
-
-Upstrem-Status: Submitted[https://gitlab.gnome.org/GNOME/libpeas/-/merge_requests/28]
-
-Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
----
- meson.build | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/meson.build b/meson.build
-index 8322fea..43fb062 100644
---- a/meson.build
-+++ b/meson.build
-@@ -254,7 +254,9 @@ subdir('loaders')
- if build_demos == true
-   subdir('peas-demo')
- endif
--subdir('tests')
-+if generate_gir == true
-+  subdir('tests')
-+endif
- 
- summary = [
-   '',
--- 
-2.26.2
-
diff --git a/meta-openembedded/meta-oe/recipes-gnome/libpeas/libpeas/add_missing_locale_include.patch b/meta-openembedded/meta-oe/recipes-gnome/libpeas/libpeas/add_missing_locale_include.patch
deleted file mode 100644
index 6646931..0000000
--- a/meta-openembedded/meta-oe/recipes-gnome/libpeas/libpeas/add_missing_locale_include.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-From 3cc69f1eaa86163c3816265fa64cb660f4def364 Mon Sep 17 00:00:00 2001
-From: Christian Hergert <chergert@redhat.com>
-Date: Fri, 13 Mar 2020 10:32:21 -0700
-Subject: [PATCH] demo: add missing locale.h include
-
-Fixes #39
-
-Upstream-Status: backport
-
-diff --git a/peas-demo/peas-demo.c b/peas-demo/peas-demo.c
-index 47ac005..466a392 100644
---- a/peas-demo/peas-demo.c
-+++ b/peas-demo/peas-demo.c
-@@ -26,6 +26,7 @@
- #include <girepository.h>
- #include <glib/gi18n.h>
- #include <gtk/gtk.h>
-+#include <locale.h>
- 
- #include <libpeas/peas.h>
- #include <libpeas-gtk/peas-gtk.h>
diff --git a/meta-openembedded/meta-oe/recipes-gnome/libpeas/libpeas_1.26.0.bb b/meta-openembedded/meta-oe/recipes-gnome/libpeas/libpeas_1.30.0.bb
similarity index 70%
rename from meta-openembedded/meta-oe/recipes-gnome/libpeas/libpeas_1.26.0.bb
rename to meta-openembedded/meta-oe/recipes-gnome/libpeas/libpeas_1.30.0.bb
index fd4ce7d..316a927 100644
--- a/meta-openembedded/meta-oe/recipes-gnome/libpeas/libpeas_1.26.0.bb
+++ b/meta-openembedded/meta-oe/recipes-gnome/libpeas/libpeas_1.30.0.bb
@@ -12,13 +12,7 @@
 
 ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
 
-SRC_URI += " \
-    file://add_missing_locale_include.patch \
-    file://0001-Do-not-build-tests-when-introspection-is-disabled-mi.patch \
-"
-
-SRC_URI[archive.md5sum] = "f7723bf8433b7984121157e1e9a629b5"
-SRC_URI[archive.sha256sum] = "a976d77e20496479a8e955e6a38fb0e5c5de89cf64d9f44e75c2213ee14f7376"
+SRC_URI[archive.sha256sum] = "0bf5562e9bfc0382a9dcb81f64340787542568762a3a367d9d90f6185898b9a3"
 
 PACKAGECONFIG[python3] = "-Dpython3=true,-Dpython3=false,python3-pygobject"
 
diff --git a/meta-openembedded/meta-oe/recipes-gnome/libxmlb/libxmlb_0.3.0.bb b/meta-openembedded/meta-oe/recipes-gnome/libxmlb/libxmlb_0.3.1.bb
similarity index 90%
rename from meta-openembedded/meta-oe/recipes-gnome/libxmlb/libxmlb_0.3.0.bb
rename to meta-openembedded/meta-oe/recipes-gnome/libxmlb/libxmlb_0.3.1.bb
index d677d24..72d3aba 100644
--- a/meta-openembedded/meta-oe/recipes-gnome/libxmlb/libxmlb_0.3.0.bb
+++ b/meta-openembedded/meta-oe/recipes-gnome/libxmlb/libxmlb_0.3.1.bb
@@ -6,7 +6,7 @@
     git://github.com/hughsie/libxmlb.git \
     file://run-ptest \
 "
-SRCREV = "8f2f28eda419dbe31cb1a9aa022f0ca9d30ecb6a"
+SRCREV = "98fc241305306de9468249301474820696acb4be"
 S = "${WORKDIR}/git"
 
 inherit gobject-introspection gtk-doc meson ptest-gnome
diff --git a/meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.108.bb b/meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.108.bb
deleted file mode 100644
index d9b6886..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.108.bb
+++ /dev/null
@@ -1,23 +0,0 @@
-SUMMARY = "VCD (Value Change Dump) file waveform viewer"
-DESCRIPTION = "gtkwave is a viewer for VCD (Value Change Dump) files which are usually created by digital circuit simulators. (These files have no connection to video CDs!) "
-HOMEPAGE = "http://gtkwave.sourceforge.net/"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=75859989545e37968a99b631ef42722e"
-
-SRC_URI = "http://gtkwave.sourceforge.net/${BP}.tar.gz"
-
-SRC_URI[md5sum] = "dd40f09f44d7aed937e63c29b63cd3af"
-SRC_URI[sha256sum] = "ece447340442e7ad029713789552e8392b75dd3808c882ac5193d42fce55eb3b"
-
-inherit pkgconfig autotools gettext texinfo mime mime-xdg
-DEPENDS += "tcl tk gperf-native bzip2 xz pango zlib gtk+ gdk-pixbuf glib-2.0"
-RDEPENDS_${PN} += "tk-lib"
-
-# depends on gtk+ which has this restriction
-inherit features_check
-ANY_OF_DISTRO_FEATURES = "${GTK2DISTROFEATURES}"
-
-EXTRA_OECONF = "--with-tcl=${STAGING_BINDIR_CROSS} --with-tk=${STAGING_BINDIR_CROSS} --with-tirpc --disable-mime-update"
-
-FILES_${PN} = "${bindir} ${datadir}"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.109.bb b/meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.109.bb
new file mode 100644
index 0000000..e1cb3d4
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.109.bb
@@ -0,0 +1,44 @@
+SUMMARY = "VCD (Value Change Dump) file waveform viewer"
+DESCRIPTION = "gtkwave is a viewer for VCD (Value Change Dump) files which are usually created by digital circuit simulators. (These files have no connection to video CDs!) "
+HOMEPAGE = "http://gtkwave.sourceforge.net/"
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=75859989545e37968a99b631ef42722e"
+
+SRC_URI = "http://gtkwave.sourceforge.net/gtkwave-gtk3-${PV}.tar.gz"
+SRC_URI[sha256sum] = "35461eccd9b8b4470caa78ab9a8f14ecacbcc9eff63033d8dce58093e786deb7"
+S = "${WORKDIR}/${BPN}-gtk3-${PV}"
+
+DEPENDS = " \
+    gperf-native \
+    gtk+3 \
+    gdk-pixbuf \
+    tcl \
+    tk \
+    bzip2 \
+    xz \
+    pango \
+    zlib \
+"
+
+inherit pkgconfig autotools gettext texinfo mime mime-xdg
+
+inherit features_check
+# depends on gtk+3 which has this restriction
+# ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+# but https://github.com/gtkwave/gtkwave/blob/f9d82a82aa3ddc30ca47984278371f62c9a3bd81/gtkwave3-gtk3/src/gtk23compat.h#L10
+# explicitly includes gdk/gdkwayland.h for gtk-3.22.26 and newer (oe-core currently has 3.24.29)
+# and it needs x11 as well for tk dependency (so it happends to be both GTK3DISTROFEATURES instead of either of them)
+REQUIRED_DISTRO_FEATURES = "wayland x11"
+
+EXTRA_OECONF = " \
+    --enable-gtk3 \
+    --with-tcl=${STAGING_BINDIR_CROSS} \
+    --with-tk=${STAGING_BINDIR_CROSS} \
+    --with-tirpc \
+    --disable-mime-update \
+"
+
+FILES_${PN} = "${bindir} ${datadir}"
+
+RDEPENDS_${PN} += "tk-lib"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-13616.patch b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-13616.patch
new file mode 100644
index 0000000..2db6796
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-13616.patch
@@ -0,0 +1,27 @@
+From 97fefd050976bbbfca9608499f6a7d9fb86e70db Mon Sep 17 00:00:00 2001
+From: Sam Lantinga <slouken@libsdl.org>
+Date: Tue, 30 Jul 2019 11:00:00 -0700
+Subject: [PATCH] Fixed bug 4538 - validate image size when loading BMP files
+---
+ src/video/SDL_bmp.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/src/video/SDL_bmp.c b/src/video/SDL_bmp.c
+index 8eadc5f..5b5e12c 100644
+--- a/src/video/SDL_bmp.c
++++ b/src/video/SDL_bmp.c
+@@ -143,6 +143,11 @@ SDL_Surface * SDL_LoadBMP_RW (SDL_RWops *src, int freesrc)
+ 	(void) biYPelsPerMeter;
+ 	(void) biClrImportant;
+ 
++        if (biWidth <= 0 || biHeight == 0) {
++            SDL_SetError("BMP file with bad dimensions (%dx%d)", biWidth, biHeight);
++            was_error = SDL_TRUE;
++            goto done;
++        }
+ 	if (biHeight < 0) {
+ 		topDown = SDL_TRUE;
+ 		biHeight = -biHeight;
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl_1.2.15.bb b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl_1.2.15.bb
index 7a01908..d91a185 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl_1.2.15.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl_1.2.15.bb
@@ -27,6 +27,7 @@
            file://CVE-2019-7637.patch \
            file://CVE-2019-7638.patch \
            file://CVE-2019-7576.patch \
+           file://CVE-2019-13616.patch \
           "
 
 UPSTREAM_CHECK_REGEX = "SDL-(?P<pver>\d+(\.\d+)+)\.tar"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/nyancat/nyancat_1.5.2.bb b/meta-openembedded/meta-oe/recipes-graphics/nyancat/nyancat_1.5.2.bb
new file mode 100644
index 0000000..7ba8f38
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/nyancat/nyancat_1.5.2.bb
@@ -0,0 +1,17 @@
+SUMMARY = "Render a loop of the Nyan Cat / Poptart Cat animation"
+HOMEPAGE = "https://nyancat.dakko.us/"
+SECTION = "graphics"
+
+LICENSE = "NCSA"
+LIC_FILES_CHKSUM = "file://src/nyancat.c;beginline=27;endline=49;md5=285f7ac87da4a631f348800687d845bd"
+
+S = "${WORKDIR}/git"
+
+SRCREV = "5ffb6c5c03d0e9156db8f360599d4f0449bb16b9"
+SRC_URI = " \
+	git://github.com/klange/nyancat;protocol=https;branch=master \
+"
+
+do_install_append() {
+	install -Dm 0755 ${S}/src/${BPN} ${D}${bindir}/${BPN}
+}
diff --git a/meta-openembedded/meta-oe/recipes-graphics/renderdoc/renderdoc/0001-Remove-glslang-pool_allocator-setAllocator.patch b/meta-openembedded/meta-oe/recipes-graphics/renderdoc/renderdoc/0001-Remove-glslang-pool_allocator-setAllocator.patch
deleted file mode 100644
index 6ba1e42..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/renderdoc/renderdoc/0001-Remove-glslang-pool_allocator-setAllocator.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 49dd914109fd1ee9e1e917890bf18f85dd95ff31 Mon Sep 17 00:00:00 2001
-From: Reid Kleckner <rnk@google.com>
-Date: Sun, 29 Dec 2019 23:17:16 -0800
-Subject: [PATCH] Remove glslang::pool_allocator::setAllocator
-
-TPoolAllocator is not copy assignable, so this setter could never have
-been used. After a recent change (878a24ee2), new versions of Clang
-reject this code outright.
-
-Upstream-Status: Backport [https://github.com/KhronosGroup/glslang/commit/0de87ee9a5bf5d094a3faa1a71fd9080e80b6be0]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- renderdoc/3rdparty/glslang/glslang/Include/PoolAlloc.h | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/renderdoc/3rdparty/glslang/glslang/Include/PoolAlloc.h b/renderdoc/3rdparty/glslang/glslang/Include/PoolAlloc.h
-index 0e237a6a2..b8eccb883 100644
---- a/renderdoc/3rdparty/glslang/glslang/Include/PoolAlloc.h
-+++ b/renderdoc/3rdparty/glslang/glslang/Include/PoolAlloc.h
-@@ -304,7 +304,6 @@ public:
-     size_type max_size() const { return static_cast<size_type>(-1) / sizeof(T); }
-     size_type max_size(int size) const { return static_cast<size_type>(-1) / size; }
- 
--    void setAllocator(TPoolAllocator* a) { allocator = *a; }
-     TPoolAllocator& getAllocator() const { return allocator; }
- 
- protected:
--- 
-2.24.1
-
diff --git a/meta-openembedded/meta-oe/recipes-graphics/renderdoc/renderdoc_1.7.bb b/meta-openembedded/meta-oe/recipes-graphics/renderdoc/renderdoc_1.13.bb
similarity index 72%
rename from meta-openembedded/meta-oe/recipes-graphics/renderdoc/renderdoc_1.7.bb
rename to meta-openembedded/meta-oe/recipes-graphics/renderdoc/renderdoc_1.13.bb
index 6ea632d..fa74fb3 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/renderdoc/renderdoc_1.7.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/renderdoc/renderdoc_1.13.bb
@@ -2,12 +2,12 @@
 DESCRIPTION = "RenderDoc is a frame-capture based graphics debugger"
 HOMEPAGE = "https://github.com/baldurk/renderdoc"
 LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE.md;md5=df7ea9e196efc7014c124747a0ef9772"
+LIC_FILES_CHKSUM = "file://LICENSE.md;md5=5486c0df458c74c85828e0cdbffd499e"
 
-SRCREV = "a56af589d94dc851809fd5344d0ae441da70c1f2"
-SRC_URI = "git://github.com/baldurk/${BPN}.git;protocol=http;branch=v1.x \
-	   file://0001-renderdoc-use-xxd-instead-of-cross-compiling-shim-bi.patch \
-	   file://0001-Remove-glslang-pool_allocator-setAllocator.patch \
+SRCREV = "cc05b288b6d1660ab04c6cf01173f1bb62e6f5dd"
+SRC_URI = " \
+    git://github.com/baldurk/${BPN}.git;protocol=http;branch=v1.x \
+    file://0001-renderdoc-use-xxd-instead-of-cross-compiling-shim-bi.patch \
 "
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/surf/surf/0001-config.mk-Fix-compiler-and-linker.patch b/meta-openembedded/meta-oe/recipes-graphics/surf/surf/0001-config.mk-Fix-compiler-and-linker.patch
index fb90432..93f1a9f 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/surf/surf/0001-config.mk-Fix-compiler-and-linker.patch
+++ b/meta-openembedded/meta-oe/recipes-graphics/surf/surf/0001-config.mk-Fix-compiler-and-linker.patch
@@ -1,41 +1,28 @@
-From e97bb73851f5bbd94260da553a222526485cdfb1 Mon Sep 17 00:00:00 2001
+From 9de4f5fa81891e14e205fe61e1408f1218369e55 Mon Sep 17 00:00:00 2001
 From: Leon Anavi <leon.anavi@konsulko.com>
-Date: Fri, 15 Nov 2019 18:24:42 +0000
+Date: Tue, 18 May 2021 15:03:22 +0000
 Subject: [PATCH] config.mk: Fix compiler and linker
 
-Do not set explicitly compiler and linker.
+Fix LIBS
 
 Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
 ---
- config.mk | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
+ config.mk | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/config.mk b/config.mk
-index df6e812..5deb991 100644
+index 2eb9fb0..032bf9f 100644
 --- a/config.mk
 +++ b/config.mk
-@@ -15,17 +15,17 @@ GTKINC = `pkg-config --cflags gtk+-3.0 webkit2gtk-4.0`
- GTKLIB = `pkg-config --libs gtk+-3.0 webkit2gtk-4.0`
+@@ -19,7 +19,7 @@ WEBEXTLIBS = `pkg-config --libs webkit2gtk-4.0 webkit2gtk-web-extension-4.0 gio-
  
  # includes and libs
--INCS = -I. -I/usr/include -I${X11INC} ${GTKINC}
--LIBS = -L/usr/lib -lc -L${X11LIB} -lX11 ${GTKLIB} -lgthread-2.0
-+INCS = ${GTKINC}
+ INCS = $(X11INC) $(GTKINC)
+-LIBS = $(X11LIB) $(GTKLIB) -lgthread-2.0
 +LIBS = -lc -lX11 ${GTKLIB} -lgthread-2.0
  
  # flags
- CPPFLAGS = -DVERSION=\"${VERSION}\" -DWEBEXTDIR=\"${LIBPREFIX}\" -D_DEFAULT_SOURCE
- CFLAGS = -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
--LDFLAGS = -s ${LIBS}
-+LDFLAGS = ${LIBS}
- 
- # Solaris
- #CFLAGS = -fast ${INCS} -DVERSION=\"${VERSION}\"
- #LDFLAGS = ${LIBS}
- 
- # compiler and linker
--CC = cc
-+CC ?= cc
+ CPPFLAGS = -DVERSION=\"$(VERSION)\" -DGCR_API_SUBJECT_TO_CHANGE \
 -- 
-2.7.4
+2.17.1
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/surf/surf_2.0.bb b/meta-openembedded/meta-oe/recipes-graphics/surf/surf_2.1.bb
similarity index 75%
rename from meta-openembedded/meta-oe/recipes-graphics/surf/surf_2.0.bb
rename to meta-openembedded/meta-oe/recipes-graphics/surf/surf_2.1.bb
index 9897301..307ee9b 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/surf/surf_2.0.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/surf/surf_2.1.bb
@@ -3,16 +3,16 @@
 HOMEPAGE = "https://surf.suckless.org/"
 SECTION = "x11/graphics"
 LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=b57e7f7720307a02d5a6598b00fe3afa"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=2a6f86d002ae9ae1eb1ccc466289f146"
 
-DEPENDS = "webkitgtk gtk+3 glib-2.0"
+DEPENDS = "webkitgtk gtk+3 glib-2.0 gcr"
 
 REQUIRED_DISTRO_FEATURES = "x11 opengl"
 
 SRC_URI = "git://git.suckless.org/surf;branch=surf-webkit2 \
            file://0001-config.mk-Fix-compiler-and-linker.patch \
 "
-SRCREV = "b814567e2bf8bda07cea8de1c7a062f4aa437b65"
+SRCREV = "bcd7d74e613fb8af11b40c351f0a6c1a771b2d2b"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-lohit_2.bb b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-lohit_2.92.1.bb
similarity index 91%
rename from meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-lohit_2.bb
rename to meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-lohit_2.92.1.bb
index 0af0e91..c9cb74c 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-lohit_2.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-lohit_2.92.1.bb
@@ -7,7 +7,7 @@
 LICENSE = "OFL-1.1"
 LIC_FILES_CHKSUM = "file://OFL.txt;md5=7dfa0a236dc535ad2d2548e6170c4402"
 
-SRCREV = "d678f1b1807ea5602586279e90b5db6d62ed475e"
+SRCREV = "a403c9b7f509dad5e58dde85ef63b1c36fde3a21"
 SRC_URI = "git://github.com/pravins/lohit.git;branch=master"
 
 DEPENDS = "fontforge-native"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/files/0001-vulkancts.patch b/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/files/0001-vulkancts.patch
new file mode 100644
index 0000000..2fd1d71
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/files/0001-vulkancts.patch
@@ -0,0 +1,40 @@
+From 273df2423d9226093310cbcaa8b924bb6b5d6586 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 31 May 2021 17:31:33 -0700
+Subject: [PATCH] vulkancts:
+
+O_TRUNC value in OperationId enum collides with the macro O_TRUNC
+defined in the POSIX header fnctl.h. To avoid the collision undefine
+O_TRUNC in this particular sourcefile before its is used in enums
+down below.
+
+This is fixed upstream differently
+https://github.com/KhronosGroup/VK-GL-CTS/commit/564c6062f72fe7ecd92b4aea1558c441e651c76b
+
+But until we get this module uprev'ed to that, lets use a simpler
+workaround
+
+Upstream-Status: Inappropriate [Fixed Differently]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ .../vulkan/spirv_assembly/vktSpvAsmFloatControlsTests.cpp     | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsmFloatControlsTests.cpp b/external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsmFloatControlsTests.cpp
+index 22e6c75fa..db7f4b54a 100644
+--- a/external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsmFloatControlsTests.cpp
++++ b/external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsmFloatControlsTests.cpp
+@@ -38,6 +38,10 @@
+ #include <limits>
+ #include <fenv.h>
+ 
++#ifdef O_TRUNC
++#undef O_TRUNC
++#endif
++
+ namespace vkt
+ {
+ namespace SpirVAssembly
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/khronos-cts.inc b/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/khronos-cts.inc
index d0f0e23..dc38bd1 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/khronos-cts.inc
+++ b/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/khronos-cts.inc
@@ -24,6 +24,7 @@
 
 SRC_URI += "file://0001-Workaround-for-GCC-11-uninit-variable-warnings-946.patch;patchdir=external/amber/src \
             file://0001-Include-limits-header-for-numeric_limits.patch;patchdir=external/vulkancts \
+            file://0001-vulkancts.patch \
 "
 
 SRC_URI_append_libc-musl = "\
diff --git a/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0001-makedumpfile-replace-hardcode-CFLAGS.patch b/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0001-makedumpfile-replace-hardcode-CFLAGS.patch
index 270cc35..2b108ab 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0001-makedumpfile-replace-hardcode-CFLAGS.patch
+++ b/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0001-makedumpfile-replace-hardcode-CFLAGS.patch
@@ -17,10 +17,8 @@
  Makefile | 45 +++++++++++++++++++++++----------------------
  1 file changed, 23 insertions(+), 22 deletions(-)
 
-Index: git/Makefile
-===================================================================
---- git.orig/Makefile
-+++ git/Makefile
+--- a/Makefile
++++ b/Makefile
 @@ -8,12 +8,6 @@ ifeq ($(strip $CC),)
  CC	= gcc
  endif
@@ -79,7 +77,7 @@
 +              -DRELEASE_DATE='"$(DATE)"'
 +
  SRC_BASE = makedumpfile.c makedumpfile.h diskdump_mod.h sadump_mod.h sadump_info.h
- SRC_PART = print_info.c dwarf_info.c elf_info.c erase_info.c sadump_info.c cache.c tools.c
+ SRC_PART = print_info.c dwarf_info.c elf_info.c erase_info.c sadump_info.c cache.c tools.c printk.c
  OBJ_PART=$(patsubst %.c,%.o,$(SRC_PART))
 @@ -52,12 +53,12 @@ OBJ_ARCH=$(patsubst %.c,%.o,$(SRC_ARCH))
  
@@ -104,7 +102,7 @@
 +CFLAGS_COMMON += -DUSESNAPPY
  endif
  
- LIBS := -lpthread $(LIBS)
+ LIBS := $(LIBS) -lpthread
 @@ -90,14 +91,14 @@ LIBS := $(LIBS) $(call try-run,\
  all: makedumpfile
  
diff --git a/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0002-mem_section-Support-only-46-bit-for-MAX_PHYSMEM_BITS.patch b/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0002-mem_section-Support-only-46-bit-for-MAX_PHYSMEM_BITS.patch
index 85d8833..f46fb31 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0002-mem_section-Support-only-46-bit-for-MAX_PHYSMEM_BITS.patch
+++ b/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0002-mem_section-Support-only-46-bit-for-MAX_PHYSMEM_BITS.patch
@@ -28,10 +28,8 @@
  arch/ppc64.c | 38 ++------------------------------------
  1 file changed, 2 insertions(+), 36 deletions(-)
 
-Index: git/arch/ppc64.c
-===================================================================
---- git.orig/arch/ppc64.c
-+++ git/arch/ppc64.c
+--- a/arch/ppc64.c
++++ b/arch/ppc64.c
 @@ -462,44 +462,6 @@ ppc64_vtop_level4(unsigned long vaddr)
  	return paddr;
  }
diff --git a/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.8.bb b/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.9.bb
similarity index 96%
rename from meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.8.bb
rename to meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.9.bb
index 4754651..79bad0a 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.8.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.9.bb
@@ -11,7 +11,7 @@
 LICENSE = "GPLv2.0"
 
 SRCBRANCH ?= "master"
-SRCREV = "18e0cdba48feeccea2429b3b0b2691f4314d1062"
+SRCREV = "a9ad811c15e769c8e6d8d915a05cebc32f2ea2f5"
 
 DEPENDS = "bzip2 zlib elfutils xz"
 RDEPENDS_${PN}-tools = "perl ${PN}"
diff --git a/meta-openembedded/meta-oe/recipes-kernel/minicoredumper/files/0001-minicoredumper-Initialize-pointer-to-config-struct-t.patch b/meta-openembedded/meta-oe/recipes-kernel/minicoredumper/files/0001-minicoredumper-Initialize-pointer-to-config-struct-t.patch
deleted file mode 100644
index ad255fa..0000000
--- a/meta-openembedded/meta-oe/recipes-kernel/minicoredumper/files/0001-minicoredumper-Initialize-pointer-to-config-struct-t.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 6181d9c3c407ee030b4c3a94045318b9e3a3cc89 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 25 Jul 2017 14:08:54 -0700
-Subject: [PATCH] minicoredumper: Initialize pointer to config struct to null
-
-Fixes
-corestripper.c:3632:13: error: variable 'cfg' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/minicoredumper/corestripper.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/minicoredumper/corestripper.c b/src/minicoredumper/corestripper.c
-index a764073..ddb0d25 100644
---- a/src/minicoredumper/corestripper.c
-+++ b/src/minicoredumper/corestripper.c
-@@ -3605,7 +3605,7 @@ out:
- 
- static int do_all_dumps(struct dump_info *di, int argc, char *argv[])
- {
--	struct config *cfg;
-+	struct config *cfg = 0;
- 	const char *recept;
- 	bool live_dumper;
- 	char *comm_base;
--- 
-2.13.3
-
diff --git a/meta-openembedded/meta-oe/recipes-kernel/minicoredumper/files/0001-replace-pthread_mutexattr_setrobust_np-with-pthread_.patch b/meta-openembedded/meta-oe/recipes-kernel/minicoredumper/files/0001-replace-pthread_mutexattr_setrobust_np-with-pthread_.patch
new file mode 100644
index 0000000..455e6f3
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/minicoredumper/files/0001-replace-pthread_mutexattr_setrobust_np-with-pthread_.patch
@@ -0,0 +1,33 @@
+From 5895caba6573e84f73f159d9e84cd1aa7e969f18 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 9 May 2021 14:37:00 -0700
+Subject: [PATCH] replace pthread_mutexattr_setrobust_np with
+ pthread_mutexattr_setrobust
+
+This is now part of standard POSIX function [1]
+
+Upstream-Status: Submitted [https://github.com/diamon/minicoredumper/pull/3]
+
+[1] https://man7.org/linux/man-pages/man3/pthread_mutexattr_setrobust_np.3.html
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/minicoredumper_regd/daemon.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/minicoredumper_regd/daemon.c b/src/minicoredumper_regd/daemon.c
+index 115ec92..b9ad1ea 100644
+--- a/src/minicoredumper_regd/daemon.c
++++ b/src/minicoredumper_regd/daemon.c
+@@ -224,7 +224,7 @@ static int setup_shm(void)
+ 
+ 	pthread_mutexattr_init(&attr);
+ 	pthread_mutexattr_setprotocol(&attr, PTHREAD_PRIO_INHERIT);
+-	pthread_mutexattr_setrobust_np(&attr, PTHREAD_MUTEX_ROBUST_NP);
++	pthread_mutexattr_setrobust(&attr, PTHREAD_MUTEX_ROBUST);
+ 	pthread_mutexattr_setpshared(&attr, PTHREAD_PROCESS_SHARED);
+ 	pthread_mutex_init(&sh->m, &attr);
+ 
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/minicoredumper/minicoredumper_2.0.1.bb b/meta-openembedded/meta-oe/recipes-kernel/minicoredumper/minicoredumper_2.0.1.bb
index d381c83..6a04e78 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/minicoredumper/minicoredumper_2.0.1.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/minicoredumper/minicoredumper_2.0.1.bb
@@ -14,6 +14,7 @@
 PR .= "+git${SRCPV}"
 
 SRC_URI = "git://github.com/diamon/minicoredumper;protocol=https \
+           file://0001-replace-pthread_mutexattr_setrobust_np-with-pthread_.patch \
            file://minicoredumper.service \
            file://minicoredumper.init \
            "
diff --git a/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph/0001-sleepgraph.py-parse-unfished-cpu-exec-line.patch b/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph/0001-sleepgraph.py-parse-unfished-cpu-exec-line.patch
new file mode 100644
index 0000000..3355727
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph/0001-sleepgraph.py-parse-unfished-cpu-exec-line.patch
@@ -0,0 +1,51 @@
+From 9bbc991a927722439cad38c892fc9f57207089d3 Mon Sep 17 00:00:00 2001
+From: Liwei Song <liwei.song@windriver.com>
+Date: Mon, 24 May 2021 08:27:28 +0000
+Subject: [PATCH] sleepgraph.py: parse unfished cpu exec line
+
+exist the below case in ftrace file:
+sleepgraph-6508    [003] .... 18197.824037: tracing_mark_write: ps - xxx..., lock_torture_wr-94 169,lock_torture_wr-95 143,lock_tort
+sleepgraph-6508    [003] .... 18197.824043: tracing_mark_write: ure_wr-96 189,lock_torture_wr-97 174,lock_torture_wr-98 160,lock_torture_st-99 1
+
+lock_torture_wr-96 was split to different line due to limited buffer
+size(1k) set in kernel, check this case and re-parse the unfinished
+line.
+
+Upstream-Status: [Submitted: https://github.com/intel/pm-graph/pull/20]
+
+Signed-off-by: Liwei Song <liwei.song@windriver.com>
+---
+ sleepgraph.py | 17 +++++++++++++++--
+ 1 file changed, 15 insertions(+), 2 deletions(-)
+
+diff --git a/sleepgraph.py b/sleepgraph.py
+index e340d5b3f03b..38b4439db8eb 100755
+--- a/sleepgraph.py
++++ b/sleepgraph.py
+@@ -3365,8 +3365,21 @@ def parseTraceLog(live=False):
+ 					val = ps.split()
+ 					if not val:
+ 						continue
+-					name = val[0].replace('--', '-')
+-					proclist[name] = int(val[1])
++					if not len(val) < 2:
++						name = val[0].replace('--', '-')
++						proclist[name] = int(val[1])
++					else:
++						proclist = dict()
++						nextline = next(tf)
++						mcont = re.match(tp.ftrace_line_fmt, nextline)
++						n = m.group('ps') + mcont.group('msg').split(': ')[1]
++						for pscont in n.split(','):
++							val = pscont.split()
++							if not val:
++								continue
++							if not len(val) < 2:
++								name = val[0].replace('--', '-')
++								proclist[name] = int(val[1])
+ 				data.pstl[t.time] = proclist
+ 				continue
+ 		# find the end of resume
+-- 
+2.29.2
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph_5.5.bb b/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph_5.5.bb
index 4526eee..4d7a1b2 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph_5.5.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph_5.5.bb
@@ -10,6 +10,7 @@
            file://0001-Makefile-fix-multilib-build-failure.patch \
            file://0001-sleepgraph.py-use-python3.patch \
            file://0001-sleepgraph-add-support-for-RT-kernel-ftrace-flags.patch \
+           file://0001-sleepgraph.py-parse-unfished-cpu-exec-line.patch \
 "
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-kernel/trace-cmd/trace-cmd_2.9.1.bb b/meta-openembedded/meta-oe/recipes-kernel/trace-cmd/trace-cmd_2.9.1.bb
index d39afff..906ca2c 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/trace-cmd/trace-cmd_2.9.1.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/trace-cmd/trace-cmd_2.9.1.bb
@@ -12,6 +12,8 @@
 
 do_install() {
        oe_runmake etcdir=${sysconfdir} DESTDIR=${D} install
+       mkdir -p ${D}${libdir}/traceevent/plugins/${BPN}
+       mv ${D}/${libdir}/traceevent/plugins/*.so ${D}${libdir}/traceevent/plugins/${BPN}/
 }
 
 FILES_${PN} += "${libdir}/traceevent/plugins"
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/cdrkit/cdrkit_1.1.11.bb b/meta-openembedded/meta-oe/recipes-multimedia/cdrkit/cdrkit_1.1.11.bb
index 3344821..54d3963 100644
--- a/meta-openembedded/meta-oe/recipes-multimedia/cdrkit/cdrkit_1.1.11.bb
+++ b/meta-openembedded/meta-oe/recipes-multimedia/cdrkit/cdrkit_1.1.11.bb
@@ -12,6 +12,9 @@
            file://0002-Do-not-use-rcmd-on-build-with-musl.patch \
            file://0001-genisoimage-Add-missing-extern-definition.patch \
            "
+SRC_URI_append_class-nativesdk = " \
+           file://0001-install-netscsid-to-bin-for-nativesdk.patch \
+"
 SRC_URI[md5sum] = "efe08e2f3ca478486037b053acd512e9"
 SRC_URI[sha256sum] = "d1c030756ecc182defee9fe885638c1785d35a2c2a297b4604c0e0dcc78e47da"
 
@@ -51,7 +54,7 @@
 "
 
 do_install_append() {
-    ln -sf ${bindir}/genisoimage ${D}${bindir}/mkisofs
+    ln -sf --relative ${D}${bindir}/genisoimage ${D}${bindir}/mkisofs
 }
 
-BBCLASSEXTEND = "native"
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/cdrkit/files/0001-install-netscsid-to-bin-for-nativesdk.patch b/meta-openembedded/meta-oe/recipes-multimedia/cdrkit/files/0001-install-netscsid-to-bin-for-nativesdk.patch
new file mode 100644
index 0000000..fdf1563
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-multimedia/cdrkit/files/0001-install-netscsid-to-bin-for-nativesdk.patch
@@ -0,0 +1,28 @@
+From 6b698b7c1045d279fe24818d45c67d9884d5fd81 Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Fri, 7 May 2021 15:10:04 +0800
+Subject: [PATCH] install netscsid to bin for nativesdk
+
+For Yocto, the nativesdk does not have sbin dir, use bin to relpace
+
+Upstream-Status: Inappropriate [oe specific]
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ netscsid/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/netscsid/CMakeLists.txt b/netscsid/CMakeLists.txt
+index f6bddf1..cf23312 100644
+--- a/netscsid/CMakeLists.txt
++++ b/netscsid/CMakeLists.txt
+@@ -9,5 +9,5 @@ ADD_EXECUTABLE (netscsid netscsid.c)
+ #SET_SOURCE_FILES_PROPERTIES(netscsid.c )
+ TARGET_LINK_LIBRARIES(netscsid ${EXTRA_LIBS} )
+ #SET_TARGET_PROPERTIES(netscsid PROPERTIES  SKIP_BUILD_RPATH TRUE)
+-INSTALL(TARGETS netscsid DESTINATION sbin)
++INSTALL(TARGETS netscsid DESTINATION bin)
+ 
+-- 
+2.27.0
+
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb b/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.33.1.bb
similarity index 89%
rename from meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb
rename to meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.33.1.bb
index 171eef7..1a91504 100644
--- a/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb
+++ b/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.33.1.bb
@@ -3,7 +3,13 @@
 SECTION = "multimedia"
 HOMEPAGE = "http://www.mpv.io/"
 
-DEPENDS = "zlib ffmpeg jpeg libv4l"
+DEPENDS = " \
+    zlib \
+    ffmpeg \
+    jpeg \
+    libv4l \
+    libass \
+"
 
 DEPENDS += " \
     ${@bb.utils.contains('DISTRO_FEATURES', 'x11', ' virtual/libx11 xsp libxv libxscrnsaver libxinerama', '', d)} \
@@ -12,9 +18,9 @@
 LICENSE = "GPLv2+"
 LIC_FILES_CHKSUM = "file://LICENSE.GPL;md5=91f1cb870c1cc2d31351a4d2595441cb"
 
-SRCREV_mpv = "70b991749df389bcc0a4e145b5687233a03b4ed7"
+SRCREV_mpv = "b5d3e43198b9d57af5620b63537885aaa41fa8cd"
 SRC_URI = " \
-    git://github.com/mpv-player/mpv;name=mpv \
+    git://github.com/mpv-player/mpv;name=mpv;branch=release/0.33;protocol=https \
     https://waf.io/waf-2.0.20;name=waf;subdir=git \
 "
 SRC_URI[waf.sha256sum] = "bf971e98edc2414968a262c6aa6b88541a26c3cd248689c89f4c57370955ee7f"
@@ -27,18 +33,16 @@
 
 LUA ?= "lua"
 LUA_mips64  = ""
-LUA_aarch64  = ""
 LUA_powerpc64  = ""
 LUA_powerpc64le  = ""
 LUA_riscv64  = ""
 LUA_riscv32  = ""
 LUA_powerpc  = ""
 
-# Note: both lua and libass are required to get on-screen-display (controls)
+# Note: lua is required to get on-screen-display (controls)
 PACKAGECONFIG ??= " \
     ${LUA} \
-    libass \
-    ${@bb.utils.filter('DISTRO_FEATURES', 'wayland', d)} \
+    ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland egl', '', d)} \
     ${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} \
     ${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)} \
 "
@@ -46,11 +50,10 @@
 PACKAGECONFIG[x11] = "--enable-x11,--disable-x11,virtual/libx11"
 PACKAGECONFIG[xv] = "--enable-xv,--disable-xv,libxv"
 PACKAGECONFIG[opengl] = "--enable-gl,--disable-gl,virtual/libgl"
-PACKAGECONFIG[egl] = "--enable-egl,--disable-egl,"
+PACKAGECONFIG[egl] = "--enable-egl,--disable-egl,virtual/egl"
 PACKAGECONFIG[drm] = "--enable-drm,--disable-drm,libdrm"
 PACKAGECONFIG[gbm] = "--enable-gbm,--disable-gbm,virtual/libgbm"
 PACKAGECONFIG[lua] = "--enable-lua,--disable-lua,lua luajit"
-PACKAGECONFIG[libass] = "--enable-libass,--disable-libass,libass"
 PACKAGECONFIG[libarchive] = "--enable-libarchive,--disable-libarchive,libarchive"
 PACKAGECONFIG[jack] = "--enable-jack, --disable-jack, jack"
 PACKAGECONFIG[vaapi] = "--enable-vaapi,--disable-vaapi,libva"
@@ -90,7 +93,6 @@
     --confdir=${sysconfdir} \
     --datadir=${datadir} \
     --disable-manpage-build \
-    --disable-libsmbclient \
     --disable-libbluray \
     --disable-dvdnav \
     --disable-cdda \
diff --git a/meta-openembedded/meta-oe/recipes-printing/qpdf/qpdf_10.2.0.bb b/meta-openembedded/meta-oe/recipes-printing/qpdf/qpdf_10.3.2.bb
similarity index 86%
rename from meta-openembedded/meta-oe/recipes-printing/qpdf/qpdf_10.2.0.bb
rename to meta-openembedded/meta-oe/recipes-printing/qpdf/qpdf_10.3.2.bb
index 4f21575..53ebf7b 100644
--- a/meta-openembedded/meta-oe/recipes-printing/qpdf/qpdf_10.2.0.bb
+++ b/meta-openembedded/meta-oe/recipes-printing/qpdf/qpdf_10.3.2.bb
@@ -7,8 +7,7 @@
 SRC_URI = "${SOURCEFORGE_MIRROR}/qpdf/qpdf-${PV}.tar.gz"
 
 LIC_FILES_CHKSUM = "file://Artistic-2.0;md5=7806296b9fae874361e6fb10072b7ee3"
-SRC_URI[md5sum] = "c8f4430823603ee3b430b3250015ede5"
-SRC_URI[sha256sum] = "43ef260f4e70672660e1882856d59b9319301c6f170673ab465430a71cffe44c"
+SRC_URI[sha256sum] = "062808c40ef8741ec8160ae00168638a712cfa1d4bf673e8e595ab5eba1da947"
 
 inherit autotools-brokensep gettext
 
diff --git a/meta-openembedded/meta-oe/recipes-security/audit/audit/Add-substitue-functions-for-strndupa-rawmemchr.patch b/meta-openembedded/meta-oe/recipes-security/audit/audit/Add-substitue-functions-for-strndupa-rawmemchr.patch
new file mode 100644
index 0000000..bb6c61e8
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-security/audit/audit/Add-substitue-functions-for-strndupa-rawmemchr.patch
@@ -0,0 +1,133 @@
+From bdcdc3dff4469aac88e718bd15958d5ed4b9392a Mon Sep 17 00:00:00 2001
+From: Steve Grubb <sgrubb@redhat.com>
+Date: Tue, 26 Feb 2019 18:33:33 -0500
+Subject: [PATCH] Add substitue functions for strndupa & rawmemchr
+
+Upstream-Status: Backport
+[https://github.com/linux-audit/audit-userspace/commit/d579a08bb1cde71f939c13ac6b2261052ae9f77e]
+---
+ auparse/auparse.c   | 12 +++++++++++-
+ auparse/interpret.c |  9 ++++++++-
+ configure.ac        | 14 +++++++++++++-
+ src/ausearch-lol.c  | 12 +++++++++++-
+ 4 files changed, 43 insertions(+), 4 deletions(-)
+
+diff --git a/auparse/auparse.c b/auparse/auparse.c
+index 650db02..2e1c737 100644
+--- a/auparse/auparse.c
++++ b/auparse/auparse.c
+@@ -1,5 +1,5 @@
+ /* auparse.c --
+- * Copyright 2006-08,2012-17 Red Hat Inc., Durham, North Carolina.
++ * Copyright 2006-08,2012-19 Red Hat Inc., Durham, North Carolina.
+  * All Rights Reserved.
+  *
+  * This library is free software; you can redistribute it and/or
+@@ -1118,6 +1118,16 @@ static int str2event(char *s, au_event_t *e)
+ 	return 0;
+ }
+ 
++#ifndef HAVE_STRNDUPA
++static inline char *strndupa(const char *old, size_t n)
++{
++	size_t len = strnlen(old, n);
++	char *tmp = alloca(len + 1);
++	tmp[len] = 0;
++	return memcpy(tmp, old, len);
++}
++#endif
++
+ /* Returns 0 on success and 1 on error */
+ static int extract_timestamp(const char *b, au_event_t *e)
+ {
+diff --git a/auparse/interpret.c b/auparse/interpret.c
+index 51c4a5e..67b7b77 100644
+--- a/auparse/interpret.c
++++ b/auparse/interpret.c
+@@ -853,6 +853,13 @@ err_out:
+ 		return print_escaped(id->val);
+ }
+ 
++// rawmemchr is faster. Let's use it if we have it.
++#ifdef HAVE_RAWMEMCHR
++#define STRCHR rawmemchr
++#else
++#define STRCHR strchr
++#endif
++
+ static const char *print_proctitle(const char *val)
+ {
+ 	char *out = (char *)print_escaped(val);
+@@ -863,7 +870,7 @@ static const char *print_proctitle(const char *val)
+ 		// Proctitle has arguments separated by NUL bytes
+ 		// We need to write over the NUL bytes with a space
+ 		// so that we can see the arguments
+-		while ((ptr  = rawmemchr(ptr, '\0'))) {
++		while ((ptr  = STRCHR(ptr, '\0'))) {
+ 			if (ptr >= end)
+ 				break;
+ 			*ptr = ' ';
+diff --git a/configure.ac b/configure.ac
+index 54bdbf1..aef07fb 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1,7 +1,7 @@
+ dnl
+ define([AC_INIT_NOTICE],
+ [### Generated automatically using autoconf version] AC_ACVERSION [
+-### Copyright 2005-18 Steve Grubb <sgrubb@redhat.com>
++### Copyright 2005-19 Steve Grubb <sgrubb@redhat.com>
+ ###
+ ### Permission is hereby granted, free of charge, to any person obtaining a
+ ### copy of this software and associated documentation files (the "Software"),
+@@ -72,6 +72,18 @@ dnl; posix_fallocate is used in audisp-remote
+ AC_CHECK_FUNCS([posix_fallocate])
+ dnl; signalfd is needed for libev
+ AC_CHECK_FUNC([signalfd], [], [ AC_MSG_ERROR([The signalfd system call is necessary for auditd]) ])
++dnl; check if rawmemchr is available
++AC_CHECK_FUNCS([rawmemchr])
++dnl; check if strndupa is available
++AC_LINK_IFELSE(
++  [AC_LANG_SOURCE(
++    [[
++      #define _GNU_SOURCE
++      #include <string.h>
++      int main() { (void) strndupa("test", 10); return 0; }]])],
++ [AC_DEFINE(HAVE_STRNDUPA, 1, [Let us know if we have it or not])],
++ []
++)
+ 
+ ALLWARNS=""
+ ALLDEBUG="-g"
+diff --git a/src/ausearch-lol.c b/src/ausearch-lol.c
+index 5d17a72..758c33e 100644
+--- a/src/ausearch-lol.c
++++ b/src/ausearch-lol.c
+@@ -1,6 +1,6 @@
+ /*
+ * ausearch-lol.c - linked list of linked lists library
+-* Copyright (c) 2008,2010,2014,2016 Red Hat Inc., Durham, North Carolina.
++* Copyright (c) 2008,2010,2014,2016,2019 Red Hat Inc., Durham, North Carolina.
+ * All Rights Reserved. 
+ *
+ * This software may be freely redistributed and/or modified under the
+@@ -152,6 +152,16 @@ static int compare_event_time(event *e1, event *e2)
+ 	return 0;
+ }
+ 
++#ifndef HAVE_STRNDUPA
++static inline char *strndupa(const char *old, size_t n)
++{
++	size_t len = strnlen(old, n);
++	char *tmp = alloca(len + 1);
++	tmp[len] = 0;
++	return memcpy(tmp, old, len);
++}
++#endif
++
+ /*
+  * This function will look at the line and pick out pieces of it.
+  */
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-oe/recipes-security/audit/audit/Fixed-swig-host-contamination-issue.patch b/meta-openembedded/meta-oe/recipes-security/audit/audit/Fixed-swig-host-contamination-issue.patch
new file mode 100644
index 0000000..740bcb5
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-security/audit/audit/Fixed-swig-host-contamination-issue.patch
@@ -0,0 +1,57 @@
+From 3d13f92c1bb293523670ba01aea7e655b00a6709 Mon Sep 17 00:00:00 2001
+From: Li xin <lixin.fnst@cn.fujitsu.com>
+Date: Sun, 19 Jul 2015 02:42:58 +0900
+Subject: [PATCH] audit: Fixed swig host contamination issue
+
+The audit build uses swig to generate a python wrapper.
+Unfortunately, the swig info file references host include
+directories.  Some of these were previously noticed and
+eliminated, but the one fixed here was not.
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Anders Hedlund <anders.hedlund@windriver.com>
+Signed-off-by: Joe Slater <jslater@windriver.com>
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ bindings/swig/python3/Makefile.am | 3 ++-
+ bindings/swig/src/auditswig.i     | 2 +-
+ 2 files changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/bindings/swig/python3/Makefile.am b/bindings/swig/python3/Makefile.am
+index dd9d934..61b486d 100644
+--- a/bindings/swig/python3/Makefile.am
++++ b/bindings/swig/python3/Makefile.am
+@@ -22,6 +22,7 @@
+ CONFIG_CLEAN_FILES = *.loT *.rej *.orig
+ AM_CFLAGS = -fPIC -DPIC -fno-strict-aliasing $(PYTHON3_CFLAGS)
+ AM_CPPFLAGS = -I. -I$(top_builddir) -I${top_srcdir}/lib $(PYTHON3_INCLUDES)
++STDINC ?= /usr/include
+ LIBS = $(top_builddir)/lib/libaudit.la
+ SWIG_FLAGS = -python -py3 -modern
+ SWIG_INCLUDES = -I. -I$(top_builddir) -I${top_srcdir}/lib $(PYTHON3_INCLUDES)
+@@ -36,7 +37,7 @@ _audit_la_DEPENDENCIES =${top_srcdir}/lib/libaudit.h ${top_builddir}/lib/libaudi
+ _audit_la_LIBADD = ${top_builddir}/lib/libaudit.la
+ nodist__audit_la_SOURCES  = audit_wrap.c
+ audit.py audit_wrap.c: ${srcdir}/../src/auditswig.i 
+-	swig -o audit_wrap.c ${SWIG_FLAGS} ${SWIG_INCLUDES} ${srcdir}/../src/auditswig.i 
++	swig -o audit_wrap.c ${SWIG_FLAGS} ${SWIG_INCLUDES} -I$(STDINC) ${srcdir}/../src/auditswig.i
+ 
+ CLEANFILES = audit.py* audit_wrap.c *~
+ 
+diff --git a/bindings/swig/src/auditswig.i b/bindings/swig/src/auditswig.i
+index 21aafca..dd0f62c 100644
+--- a/bindings/swig/src/auditswig.i
++++ b/bindings/swig/src/auditswig.i
+@@ -39,7 +39,7 @@ signed
+ #define __attribute(X) /*nothing*/
+ typedef unsigned __u32;
+ typedef unsigned uid_t;
+-%include "/usr/include/linux/audit.h"
++%include "linux/audit.h"
+ #define __extension__ /*nothing*/
+ %include <stdint.i>
+ %include "../lib/libaudit.h"
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-security/audit/audit/audit-volatile.conf b/meta-openembedded/meta-oe/recipes-security/audit/audit/audit-volatile.conf
new file mode 100644
index 0000000..9cbe154
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-security/audit/audit/audit-volatile.conf
@@ -0,0 +1 @@
+d  /var/log/audit 0750 root root -
diff --git a/meta-openembedded/meta-oe/recipes-security/audit/audit/auditd b/meta-openembedded/meta-oe/recipes-security/audit/audit/auditd
new file mode 100644
index 0000000..6aa7f94
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-security/audit/audit/auditd
@@ -0,0 +1,153 @@
+#! /bin/sh
+### BEGIN INIT INFO
+# Provides:          auditd
+# Required-Start:    $local_fs
+# Required-Stop:     $local_fs
+# Default-Start:     2 3 4 5
+# Default-Stop:      0 1 6
+# Short-Description: Audit Daemon
+# Description:       Collects audit information from Linux 2.6 Kernels.
+### END INIT INFO
+
+# Author: Philipp Matthias Hahn <pmhahn@debian.org>
+# Based on Debians /etc/init.d/skeleton and Auditds init.d/auditd.init
+
+# June, 2012: Adopted for yocto <amy.fong@windriver.com>
+
+# PATH should only include /usr/* if it runs after the mountnfs.sh script
+PATH=/sbin:/bin:/usr/sbin:/usr/bin
+DESC="audit daemon"
+NAME=auditd
+DAEMON=/sbin/auditd
+PIDFILE=/var/run/"$NAME".pid
+SCRIPTNAME=/etc/init.d/"$NAME"
+
+# Exit if the package is not installed
+[ -x "$DAEMON" ] || exit 0
+
+# Read configuration variable file if it is present
+[ -r /etc/default/"$NAME" ] && . /etc/default/"$NAME"
+
+. /etc/default/rcS
+
+. /etc/init.d/functions
+
+#
+# Function that starts the daemon/service
+#
+do_start()
+{
+	# Return
+	#   0 if daemon has been started
+	#   1 if daemon was already running
+	#   2 if daemon could not be started
+	start-stop-daemon -S --quiet --pidfile "$PIDFILE" --exec "$DAEMON" --test > /dev/null \
+		|| return 1
+	start-stop-daemon -S --quiet --pidfile "$PIDFILE" --exec "$DAEMON" -- \
+		$EXTRAOPTIONS \
+		|| return 2
+	if [ -f /etc/audit/audit.rules ]
+	then
+		/sbin/auditctl -R /etc/audit/audit.rules >/dev/null
+	fi
+}
+
+#
+# Function that stops the daemon/service
+#
+do_stop()
+{
+	# Return
+	#   0 if daemon has been stopped
+	#   1 if daemon was already stopped
+	#   2 if daemon could not be stopped
+	#   other if a failure occurred
+	start-stop-daemon -K --quiet --pidfile "$PIDFILE" --name "$NAME"
+	RETVAL="$?"
+	[ "$RETVAL" = 2 ] && return 2
+	# Many daemons don't delete their pidfiles when they exit.
+	rm -f "$PIDFILE"
+	rm -f /var/run/audit_events
+	# Remove watches so shutdown works cleanly
+	case "$AUDITD_CLEAN_STOP" in
+		no|NO) ;;
+		*) /sbin/auditctl -D >/dev/null ;;
+	esac
+	return "$RETVAL"
+}
+
+#
+# Function that sends a SIGHUP to the daemon/service
+#
+do_reload() {
+	start-stop-daemon -K --signal HUP --quiet --pidfile $PIDFILE --name $NAME
+	return 0
+}
+
+if [ ! -e /var/log/audit ]; then
+	mkdir -p /var/log/audit
+	[ -x /sbin/restorecon ] && /sbin/restorecon -F $(readlink -f /var/log/audit)
+fi
+
+case "$1" in
+  start)
+	[ "$VERBOSE" != no ] && echo "Starting $DESC" "$NAME"
+	do_start
+	case "$?" in
+		0|1) [ "$VERBOSE" != no ] && echo 0 ;;
+		2) [ "$VERBOSE" != no ] && echo 1 ;;
+	esac
+	;;
+  stop)
+	[ "$VERBOSE" != no ] && echo "Stopping $DESC" "$NAME"
+	do_stop
+	case "$?" in
+		0|1) [ "$VERBOSE" != no ] && echo 0 ;;
+		2) [ "$VERBOSE" != no ] && echo 1 ;;
+	esac
+	;;
+  reload|force-reload)
+	echo "Reloading $DESC" "$NAME"
+	do_reload
+	echo $?
+	;;
+  restart)
+	echo "Restarting $DESC" "$NAME"
+	do_stop
+	case "$?" in
+	  0|1)
+		do_start
+		case "$?" in
+			0) echo 0 ;;
+			1) echo 1 ;; # Old process is still running
+			*) echo 1 ;; # Failed to start
+		esac
+		;;
+	  *)
+		# Failed to stop
+		echo 1
+		;;
+	esac
+	;;
+  rotate)
+	echo "Rotating $DESC logs" "$NAME"
+	start-stop-daemon -K --signal USR1 --quiet --pidfile "$PIDFILE" --name "$NAME"
+	echo $?
+	;;
+  status)
+	pidofproc "$DAEMON" >/dev/null
+	status=$?
+	if [ $status -eq 0 ]; then
+		echo "$NAME is running."
+	else
+		echo "$NAME is not running."
+	fi
+	exit $status
+	;;
+  *)
+	echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload|rotate|status}" >&2
+	exit 3
+	;;
+esac
+
+:
diff --git a/meta-openembedded/meta-oe/recipes-security/audit/audit/auditd.service b/meta-openembedded/meta-oe/recipes-security/audit/audit/auditd.service
new file mode 100644
index 0000000..06c63f0
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-security/audit/audit/auditd.service
@@ -0,0 +1,28 @@
+[Unit]
+Description=Security Auditing Service
+DefaultDependencies=no
+After=local-fs.target systemd-tmpfiles-setup.service
+Before=sysinit.target shutdown.target
+Conflicts=shutdown.target
+ConditionKernelCommandLine=!audit=0
+
+[Service]
+Type=forking
+PIDFile=/run/auditd.pid
+ExecStart=/sbin/auditd
+## To use augenrules, uncomment the next line and comment/delete the auditctl line.
+## NOTE: augenrules expect any rules to be added to /etc/audit/rules.d/
+#ExecStartPost=-/sbin/augenrules --load
+ExecStartPost=-/sbin/auditctl -R /etc/audit/audit.rules
+# By default we don't clear the rules on exit.
+# To enable this, uncomment the next line.
+#ExecStopPost=/sbin/auditctl -R /etc/audit/audit-stop.rules
+
+### Security Settings ###
+MemoryDenyWriteExecute=true
+LockPersonality=true
+ProtectControlGroups=true
+ProtectKernelModules=true
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-openembedded/meta-oe/recipes-security/audit/audit_2.8.5.bb b/meta-openembedded/meta-oe/recipes-security/audit/audit_2.8.5.bb
new file mode 100644
index 0000000..ee3b3b5
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-security/audit/audit_2.8.5.bb
@@ -0,0 +1,105 @@
+SUMMARY = "User space tools for kernel auditing"
+DESCRIPTION = "The audit package contains the user space utilities for \
+storing and searching the audit records generated by the audit subsystem \
+in the Linux kernel."
+HOMEPAGE = "http://people.redhat.com/sgrubb/audit/"
+SECTION = "base"
+LICENSE = "GPLv2+ & LGPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
+
+SRC_URI = "git://github.com/linux-audit/${BPN}-userspace.git;branch=2.8_maintenance \
+           file://Add-substitue-functions-for-strndupa-rawmemchr.patch \
+           file://Fixed-swig-host-contamination-issue.patch \
+           file://auditd \
+           file://auditd.service \
+           file://audit-volatile.conf \
+"
+
+S = "${WORKDIR}/git"
+SRCREV = "5fae55c1ad15b3cefe6890eba7311af163e9133c"
+
+inherit autotools python3native update-rc.d systemd
+
+UPDATERCPN = "auditd"
+INITSCRIPT_NAME = "auditd"
+INITSCRIPT_PARAMS = "defaults"
+
+SYSTEMD_PACKAGES = "auditd"
+SYSTEMD_SERVICE_auditd = "auditd.service"
+
+DEPENDS += "python3 tcp-wrappers libcap-ng linux-libc-headers swig-native"
+
+EXTRA_OECONF += "--without-prelude \
+        --with-libwrap \
+        --enable-gssapi-krb5=no \
+        --with-libcap-ng=yes \
+        --with-python3=yes \
+        --libdir=${base_libdir} \
+        --sbindir=${base_sbindir} \
+        --without-python \
+        --without-golang \
+        --disable-zos-remote \
+        "
+EXTRA_OECONF_append_arm = " --with-arm=yes"
+EXTRA_OECONF_append_aarch64 = " --with-aarch64=yes"
+
+EXTRA_OEMAKE += "PYLIBVER='python${PYTHON_BASEVERSION}' \
+	PYINC='${STAGING_INCDIR}/$(PYLIBVER)' \
+	pyexecdir=${libdir}/python${PYTHON_BASEVERSION}/site-packages \
+	STDINC='${STAGING_INCDIR}' \
+	pkgconfigdir=${libdir}/pkgconfig \
+	"
+
+SUMMARY_audispd-plugins = "Plugins for the audit event dispatcher"
+DESCRIPTION_audispd-plugins = "The audispd-plugins package provides plugins for the real-time \
+interface to the audit system, audispd. These plugins can do things \
+like relay events to remote machines or analyze events for suspicious \
+behavior."
+
+PACKAGES =+ "audispd-plugins"
+PACKAGES += "auditd ${PN}-python"
+
+FILES_${PN} = "${sysconfdir}/libaudit.conf ${base_libdir}/libaudit.so.1* ${base_libdir}/libauparse.so.*"
+FILES_auditd += "${bindir}/* ${base_sbindir}/* ${sysconfdir}/*"
+FILES_audispd-plugins += "${sysconfdir}/audisp/audisp-remote.conf \
+	${sysconfdir}/audisp/plugins.d/au-remote.conf \
+	${sbindir}/audisp-remote ${localstatedir}/spool/audit \
+	"
+FILES_${PN}-dbg += "${libdir}/python${PYTHON_BASEVERSION}/*/.debug"
+FILES_${PN}-python = "${libdir}/python${PYTHON_BASEVERSION}"
+
+CONFFILES_auditd += "${sysconfdir}/audit/audit.rules"
+RDEPENDS_auditd += "bash"
+
+do_install_append() {
+	rm -f ${D}/${libdir}/python${PYTHON_BASEVERSION}/site-packages/*.a
+	rm -f ${D}/${libdir}/python${PYTHON_BASEVERSION}/site-packages/*.la
+
+	# reuse auditd config
+	[ ! -e ${D}/etc/default ] && mkdir ${D}/etc/default
+	mv ${D}/etc/sysconfig/auditd ${D}/etc/default
+	rmdir ${D}/etc/sysconfig/
+
+	# replace init.d
+	install -D -m 0755 ${WORKDIR}/auditd ${D}/etc/init.d/auditd
+	rm -rf ${D}/etc/rc.d
+
+	if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
+		install -d ${D}${sysconfdir}/tmpfiles.d/
+		install -m 0644 ${WORKDIR}/audit-volatile.conf ${D}${sysconfdir}/tmpfiles.d/
+	fi
+
+	# install systemd unit files
+	install -d ${D}${systemd_unitdir}/system
+	install -m 0644 ${WORKDIR}/auditd.service ${D}${systemd_unitdir}/system
+
+	# audit-2.5 doesn't install any rules by default, so we do that here
+	mkdir -p ${D}/etc/audit ${D}/etc/audit/rules.d
+	cp ${S}/rules/10-base-config.rules ${D}/etc/audit/rules.d/audit.rules
+
+	chmod 750 ${D}/etc/audit ${D}/etc/audit/rules.d
+	chmod 640 ${D}/etc/audit/auditd.conf ${D}/etc/audit/rules.d/audit.rules
+
+	# Based on the audit.spec "Copy default rules into place on new installation"
+	cp ${D}/etc/audit/rules.d/audit.rules ${D}/etc/audit/audit.rules
+}
diff --git a/meta-openembedded/meta-oe/recipes-security/audit/audit_3.0.1.bb b/meta-openembedded/meta-oe/recipes-security/audit/audit_3.0.1.bb
new file mode 100644
index 0000000..ba24d36
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-security/audit/audit_3.0.1.bb
@@ -0,0 +1,109 @@
+SUMMARY = "User space tools for kernel auditing"
+DESCRIPTION = "The audit package contains the user space utilities for \
+storing and searching the audit records generated by the audit subsystem \
+in the Linux kernel."
+HOMEPAGE = "http://people.redhat.com/sgrubb/audit/"
+SECTION = "base"
+LICENSE = "GPLv2+ & LGPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
+
+SRC_URI = "git://github.com/linux-audit/${BPN}-userspace.git;branch=master \
+           file://Fixed-swig-host-contamination-issue.patch \
+           file://auditd \
+           file://auditd.service \
+           file://audit-volatile.conf \
+"
+
+S = "${WORKDIR}/git"
+SRCREV = "46cb7d92443c9ec7b3af15fb0baa65f65f6415d3"
+
+inherit autotools python3native update-rc.d systemd
+
+UPDATERCPN = "auditd"
+INITSCRIPT_NAME = "auditd"
+INITSCRIPT_PARAMS = "defaults"
+
+SYSTEMD_PACKAGES = "auditd"
+SYSTEMD_SERVICE_auditd = "auditd.service"
+
+DEPENDS = "python3 tcp-wrappers libcap-ng linux-libc-headers swig-native"
+
+EXTRA_OECONF = " --with-libwrap \
+        --enable-gssapi-krb5=no \
+        --with-libcap-ng=yes \
+        --with-python3=yes \
+        --libdir=${base_libdir} \
+        --sbindir=${base_sbindir} \
+        --without-python \
+        --without-golang \
+        --disable-zos-remote \
+        --with-arm=yes \
+        --with-aarch64=yes \
+        "
+
+EXTRA_OEMAKE = "PYLIBVER='python${PYTHON_BASEVERSION}' \
+	PYINC='${STAGING_INCDIR}/$(PYLIBVER)' \
+	pyexecdir=${libdir}/python${PYTHON_BASEVERSION}/site-packages \
+	STDINC='${STAGING_INCDIR}' \
+	pkgconfigdir=${libdir}/pkgconfig \
+	"
+
+SUMMARY_audispd-plugins = "Plugins for the audit event dispatcher"
+DESCRIPTION_audispd-plugins = "The audispd-plugins package provides plugins for the real-time \
+interface to the audit system, audispd. These plugins can do things \
+like relay events to remote machines or analyze events for suspicious \
+behavior."
+
+PACKAGES =+ "audispd-plugins"
+PACKAGES += "auditd ${PN}-python"
+
+FILES_${PN} = "${sysconfdir}/libaudit.conf ${base_libdir}/libaudit.so.1* ${base_libdir}/libauparse.so.*"
+FILES_auditd = "${bindir}/* ${base_sbindir}/* ${sysconfdir}/* ${datadir}/audit/*"
+FILES_audispd-plugins = "${sysconfdir}/audit/audisp-remote.conf \
+	${sysconfdir}/audit/plugins.d/au-remote.conf \
+	${sysconfdir}/audit/plugins.d/syslog.conf \
+	${base_sbindir}/audisp-remote \
+	${base_sbindir}/audisp-syslog \
+	${localstatedir}/spool/audit \
+	"
+FILES_${PN}-dbg += "${libdir}/python${PYTHON_BASEVERSION}/*/.debug"
+FILES_${PN}-python = "${libdir}/python${PYTHON_BASEVERSION}"
+
+CONFFILES_auditd = "${sysconfdir}/audit/audit.rules"
+RDEPENDS_auditd = "bash"
+
+do_install_append() {
+	rm -f ${D}/${libdir}/python${PYTHON_BASEVERSION}/site-packages/*.a
+	rm -f ${D}/${libdir}/python${PYTHON_BASEVERSION}/site-packages/*.la
+
+	# reuse auditd config
+	[ ! -e ${D}/etc/default ] && mkdir ${D}/etc/default
+	mv ${D}/etc/sysconfig/auditd ${D}/etc/default
+	rmdir ${D}/etc/sysconfig/
+
+	# replace init.d
+	install -D -m 0755 ${WORKDIR}/auditd ${D}/etc/init.d/auditd
+	rm -rf ${D}/etc/rc.d
+
+	if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
+		# install systemd unit files
+		install -d ${D}${systemd_unitdir}/system
+		install -m 0644 ${WORKDIR}/auditd.service ${D}${systemd_unitdir}/system
+
+		install -d ${D}${sysconfdir}/tmpfiles.d/
+		install -m 0644 ${WORKDIR}/audit-volatile.conf ${D}${sysconfdir}/tmpfiles.d/
+	fi
+
+	# audit-2.5 doesn't install any rules by default, so we do that here
+	mkdir -p ${D}/etc/audit ${D}/etc/audit/rules.d
+	cp ${S}/rules/10-base-config.rules ${D}/etc/audit/rules.d/audit.rules
+
+	chmod 750 ${D}/etc/audit ${D}/etc/audit/rules.d
+	chmod 640 ${D}/etc/audit/auditd.conf ${D}/etc/audit/rules.d/audit.rules
+
+	# Based on the audit.spec "Copy default rules into place on new installation"
+	cp ${D}/etc/audit/rules.d/audit.rules ${D}/etc/audit/audit.rules
+
+	# Create /var/spool/audit directory for audisp-remote
+	install -m 0700 -d ${D}${localstatedir}/spool/audit
+}
diff --git a/meta-openembedded/meta-oe/recipes-security/nmap/nmap_7.80.bb b/meta-openembedded/meta-oe/recipes-security/nmap/nmap_7.80.bb
index c76d232..17bc409 100644
--- a/meta-openembedded/meta-oe/recipes-security/nmap/nmap_7.80.bb
+++ b/meta-openembedded/meta-oe/recipes-security/nmap/nmap_7.80.bb
@@ -50,9 +50,11 @@
 }
 
 do_install_append() {
-    if [ -f "${D}${bindir}/ndiff" ]; then
-       sed -i 's@^#!.*$@#!/usr/bin/env python3@g'   ${D}${bindir}/ndiff
-    fi
+    for f in ndiff uninstall_ndiff; do
+        if [ -f ${D}${bindir}/$f ]; then
+            sed -i 's@^#!.*$@#!/usr/bin/env python3@g' ${D}${bindir}/$f
+        fi
+    done
 }
 
 FILES_${PN} += "${PYTHON_SITEPACKAGES_DIR} ${datadir}/ncat"
diff --git a/meta-openembedded/meta-oe/recipes-shells/zsh/zsh_5.4.2.bb b/meta-openembedded/meta-oe/recipes-shells/zsh/zsh_5.8.bb
similarity index 69%
rename from meta-openembedded/meta-oe/recipes-shells/zsh/zsh_5.4.2.bb
rename to meta-openembedded/meta-oe/recipes-shells/zsh/zsh_5.8.bb
index aa372b7..f87231d 100644
--- a/meta-openembedded/meta-oe/recipes-shells/zsh/zsh_5.4.2.bb
+++ b/meta-openembedded/meta-oe/recipes-shells/zsh/zsh_5.8.bb
@@ -10,11 +10,10 @@
 
 DEPENDS = "ncurses bison-native libcap libpcre gdbm groff-native"
 
-SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.gz"
-SRC_URI[md5sum] = "dfe156fd69b0d8d1745ecf6d6e02e047"
-SRC_URI[sha256sum] = "957bcdb2c57f64c02f673693ea5a7518ef24b6557aeb3a4ce222cefa6d74acc9"
+SRC_URI = "${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}/5.8/${BP}.tar.xz"
+SRC_URI[sha256sum] = "dcc4b54cc5565670a65581760261c163d720991f0d06486da61f8d839b52de27"
 
-inherit autotools gettext update-alternatives
+inherit autotools-brokensep gettext update-alternatives manpages
 
 EXTRA_OECONF = " \
     --bindir=${base_bindir} \
@@ -47,19 +46,13 @@
     oe_runconf
 }
 
-do_install_append () {
-    rm -fr ${D}/usr/share
-    rmdir --ignore-fail-on-non-empty ${D}/usr
-}
-
 pkg_postinst_${PN} () {
     touch $D${sysconfdir}/shells
     grep -q "bin/zsh" $D${sysconfdir}/shells || echo /bin/zsh >> $D${sysconfdir}/shells
     grep -q "bin/sh" $D${sysconfdir}/shells || echo /bin/sh >> $D${sysconfdir}/shells
 }
 
-FILES_${PN}-dbg += "\
-    ${libdir}/${PN}/${PV}/${PN}/.debug/*.so \
-    ${libdir}/${PN}/${PV}/${PN}/db/.debug/*.so \
-    ${libdir}/${PN}/${PV}/${PN}/net/.debug/*.so \
-"
+# work around QA failures with usrmerge installing zsh in /usr/bin/zsh instead of /bin/zsh
+# ERROR: QA Issue: /usr/share/zsh/5.8/functions/zed contained in package zsh requires /bin/zsh, but no providers found in RDEPENDS_zsh? [file-rdeps]
+# like bash does since https://git.openembedded.org/openembedded-core/commit/?id=4759408677a4e60c5fa7131afcb5bc184cf2f90a
+RPROVIDES_${PN} += "${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', '/bin/zsh', '', d)}"
diff --git a/meta-openembedded/meta-oe/recipes-support/colord/colord-native/0001-Move-the-function-cd_icc_create_from_edid-to-avoid-u.patch b/meta-openembedded/meta-oe/recipes-support/colord/colord-native/0001-Move-the-function-cd_icc_create_from_edid-to-avoid-u.patch
index 278b90e..aae2be8 100644
--- a/meta-openembedded/meta-oe/recipes-support/colord/colord-native/0001-Move-the-function-cd_icc_create_from_edid-to-avoid-u.patch
+++ b/meta-openembedded/meta-oe/recipes-support/colord/colord-native/0001-Move-the-function-cd_icc_create_from_edid-to-avoid-u.patch
@@ -89,11 +89,11 @@
 +}
 +
 diff --git a/lib/colord/cd-icc.c b/lib/colord/cd-icc.c
-index f231814..2c8fe77 100644
+index 8beec43..398ff7a 100644
 --- a/lib/colord/cd-icc.c
 +++ b/lib/colord/cd-icc.c
-@@ -3094,68 +3094,6 @@ out:
- 	return ret;
+@@ -3114,68 +3114,6 @@ cd_icc_create_default (CdIcc *icc, GError **error)
+ 	return cd_icc_create_default_full (icc, CD_ICC_LOAD_FLAGS_NONE, error);
  }
  
 -/**
diff --git a/meta-openembedded/meta-oe/recipes-support/colord/colord.inc b/meta-openembedded/meta-oe/recipes-support/colord/colord.inc
index 7497fed..09e600c 100644
--- a/meta-openembedded/meta-oe/recipes-support/colord/colord.inc
+++ b/meta-openembedded/meta-oe/recipes-support/colord/colord.inc
@@ -6,8 +6,7 @@
     file://meson.build;beginline=3;endline=3;md5=f42198707d793be58b274d34fd5238c3 \
 "
 
-PV = "1.4.4"
+PV = "1.4.5"
 SRC_URI = "https://www.freedesktop.org/software/colord/releases/${BPN}-${PV}.tar.xz"
-SRC_URI[md5sum] = "32c2709a6002d9ee750483aaed6379c8"
-SRC_URI[sha256sum] = "9a0fe80160bf88efddb582a9fc0169f56065276dc3882c47dddb9eecd048c0a5"
+SRC_URI[sha256sum] = "b774ea443d239f4a2ee1853bd678426e669ddeda413dcb71cea1638c4d6c5e17"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/evemu-tools/evemu-tools_git.bb b/meta-openembedded/meta-oe/recipes-support/evemu-tools/evemu-tools_git.bb
new file mode 100644
index 0000000..c9a382a
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/evemu-tools/evemu-tools_git.bb
@@ -0,0 +1,21 @@
+SUMMARY = "Kernel evdev device emulation"
+DESCRIPTION = "The evemu library and tools are used to describe devices, record data, create devices and replay data from kernel evdev devices."
+HOMEPAGE = "https://www.freedesktop.org/wiki/Evemu"
+
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=e6a600fd5e1d9cbde2d983680233ad02"
+
+DEPENDS = "libevdev"
+
+SRCREV = "86a5627dbeac8d9d9bc34326a758d6a477e876e4"
+SRC_URI = "git://git@gitlab.freedesktop.org/libevdev/evemu.git;protocol=https;branch=master"
+
+S = "${WORKDIR}/git"
+PV = "gitr${SRCPV}"
+
+inherit autotools pkgconfig
+
+PACKAGES =+ "${PN}-python"
+FILES_${PN}-python = "${libdir}/python*/site-packages/*"
+RDEPENDS_${PN}-python = "python3"
+
diff --git a/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-29457.patch b/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-29457.patch
new file mode 100644
index 0000000..e5d0694
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-29457.patch
@@ -0,0 +1,26 @@
+From 13e5a3e02339b746abcaee6408893ca2fd8e289d Mon Sep 17 00:00:00 2001
+From: Pydera <pydera@mailbox.org>
+Date: Thu, 8 Apr 2021 17:36:16 +0200
+Subject: [PATCH] Fix out of buffer access in #1529
+
+---
+ src/jp2image.cpp | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/jp2image.cpp b/src/jp2image.cpp
+index 88ab9b2d6..12025f966 100644
+--- a/src/jp2image.cpp
++++ b/src/jp2image.cpp
+@@ -776,9 +776,10 @@ static void boxes_check(size_t b,size_t m)
+ #endif
+                 box.length = (uint32_t) (io_->size() - io_->tell() + 8);
+             }
+-            if (box.length == 1)
++            if (box.length < 8)
+             {
+-                // FIXME. Special case. the real box size is given in another place.
++                // box is broken, so there is nothing we can do here
++                throw Error(kerCorruptedMetadata);
+             }
+ 
+             // Read whole box : Box header + Box data (not fixed size - can be null).
diff --git a/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-29458.patch b/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-29458.patch
new file mode 100644
index 0000000..285f6fe
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-29458.patch
@@ -0,0 +1,37 @@
+From 9b7a19f957af53304655ed1efe32253a1b11a8d0 Mon Sep 17 00:00:00 2001
+From: Kevin Backhouse <kevinbackhouse@github.com>
+Date: Fri, 9 Apr 2021 13:37:48 +0100
+Subject: [PATCH] Fix integer overflow.
+---
+ src/crwimage_int.cpp | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/src/crwimage_int.cpp b/src/crwimage_int.cpp
+index aefaf22..2e3e507 100644
+--- a/src/crwimage_int.cpp
++++ b/src/crwimage_int.cpp
+@@ -559,7 +559,7 @@ namespace Exiv2 {
+     void CiffComponent::setValue(DataBuf buf)
+     {
+         if (isAllocated_) {
+-            delete pData_;
++            delete[] pData_;
+             pData_ = 0;
+             size_ = 0;
+         }
+@@ -1167,7 +1167,11 @@ namespace Exiv2 {
+                                                  pCrwMapping->crwDir_);
+         if (edX != edEnd || edY != edEnd || edO != edEnd) {
+             uint32_t size = 28;
+-            if (cc && cc->size() > size) size = cc->size();
++            if (cc) {
++              if (cc->size() < size)
++                throw Error(kerCorruptedMetadata);
++              size = cc->size();
++            }
+             DataBuf buf(size);
+             std::memset(buf.pData_, 0x0, buf.size_);
+             if (cc) std::memcpy(buf.pData_ + 8, cc->pData() + 8, cc->size() - 8);
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-29463.patch b/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-29463.patch
new file mode 100644
index 0000000..5ab64a7
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-29463.patch
@@ -0,0 +1,120 @@
+From 783b3a6ff15ed6f82a8f8e6c8a6f3b84a9b04d4b Mon Sep 17 00:00:00 2001
+From: Kevin Backhouse <kevinbackhouse@github.com>
+Date: Mon, 19 Apr 2021 18:06:00 +0100
+Subject: [PATCH] Improve bound checking in WebPImage::doWriteMetadata()
+
+---
+ src/webpimage.cpp | 41 ++++++++++++++++++++++++++++++-----------
+ 1 file changed, 30 insertions(+), 11 deletions(-)
+
+diff --git a/src/webpimage.cpp b/src/webpimage.cpp
+index 4ddec544c..fee110bca 100644
+--- a/src/webpimage.cpp
++++ b/src/webpimage.cpp
+@@ -145,7 +145,7 @@ namespace Exiv2 {
+         DataBuf chunkId(WEBP_TAG_SIZE+1);
+         chunkId.pData_ [WEBP_TAG_SIZE] = '\0';
+ 
+-        io_->read(data, WEBP_TAG_SIZE * 3);
++        readOrThrow(*io_, data, WEBP_TAG_SIZE * 3, Exiv2::kerCorruptedMetadata);
+         uint64_t filesize = Exiv2::getULong(data + WEBP_TAG_SIZE, littleEndian);
+ 
+         /* Set up header */
+@@ -185,13 +185,20 @@ namespace Exiv2 {
+          case we have any exif or xmp data, also check
+          for any chunks with alpha frame/layer set */
+         while ( !io_->eof() && (uint64_t) io_->tell() < filesize) {
+-            io_->read(chunkId.pData_, WEBP_TAG_SIZE);
+-            io_->read(size_buff, WEBP_TAG_SIZE);
+-            long size = Exiv2::getULong(size_buff, littleEndian);
++            readOrThrow(*io_, chunkId.pData_, WEBP_TAG_SIZE, Exiv2::kerCorruptedMetadata);
++            readOrThrow(*io_, size_buff, WEBP_TAG_SIZE, Exiv2::kerCorruptedMetadata);
++            const uint32_t size_u32 = Exiv2::getULong(size_buff, littleEndian);
++
++            // Check that `size_u32` is safe to cast to `long`.
++            enforce(size_u32 <= static_cast<size_t>(std::numeric_limits<unsigned int>::max()),
++                    Exiv2::kerCorruptedMetadata);
++            const long size = static_cast<long>(size_u32);
+             DataBuf payload(size);
+-            io_->read(payload.pData_, payload.size_);
+-            byte c;
+-            if ( payload.size_ % 2 ) io_->read(&c,1);
++            readOrThrow(*io_, payload.pData_, payload.size_, Exiv2::kerCorruptedMetadata);
++            if ( payload.size_ % 2 ) {
++              byte c;
++              readOrThrow(*io_, &c, 1, Exiv2::kerCorruptedMetadata);
++            }
+ 
+             /* Chunk with information about features
+              used in the file. */
+@@ -199,6 +206,7 @@ namespace Exiv2 {
+                 has_vp8x = true;
+             }
+             if (equalsWebPTag(chunkId, WEBP_CHUNK_HEADER_VP8X) && !has_size) {
++                enforce(size >= 10, Exiv2::kerCorruptedMetadata);
+                 has_size = true;
+                 byte size_buf[WEBP_TAG_SIZE];
+ 
+@@ -227,6 +235,7 @@ namespace Exiv2 {
+             }
+ #endif
+             if (equalsWebPTag(chunkId, WEBP_CHUNK_HEADER_VP8) && !has_size) {
++                enforce(size >= 10, Exiv2::kerCorruptedMetadata);
+                 has_size = true;
+                 byte size_buf[2];
+ 
+@@ -244,11 +253,13 @@ namespace Exiv2 {
+ 
+             /* Chunk with with lossless image data. */
+             if (equalsWebPTag(chunkId, WEBP_CHUNK_HEADER_VP8L) && !has_alpha) {
++                enforce(size >= 5, Exiv2::kerCorruptedMetadata);
+                 if ((payload.pData_[4] & WEBP_VP8X_ALPHA_BIT) == WEBP_VP8X_ALPHA_BIT) {
+                     has_alpha = true;
+                 }
+             }
+             if (equalsWebPTag(chunkId, WEBP_CHUNK_HEADER_VP8L) && !has_size) {
++                enforce(size >= 5, Exiv2::kerCorruptedMetadata);
+                 has_size = true;
+                 byte size_buf_w[2];
+                 byte size_buf_h[3];
+@@ -276,11 +287,13 @@ namespace Exiv2 {
+ 
+             /* Chunk with animation frame. */
+             if (equalsWebPTag(chunkId, WEBP_CHUNK_HEADER_ANMF) && !has_alpha) {
++                enforce(size >= 6, Exiv2::kerCorruptedMetadata);
+                 if ((payload.pData_[5] & 0x2) == 0x2) {
+                     has_alpha = true;
+                 }
+             }
+             if (equalsWebPTag(chunkId, WEBP_CHUNK_HEADER_ANMF) && !has_size) {
++                enforce(size >= 12, Exiv2::kerCorruptedMetadata);
+                 has_size = true;
+                 byte size_buf[WEBP_TAG_SIZE];
+ 
+@@ -309,16 +322,22 @@ namespace Exiv2 {
+ 
+         io_->seek(12, BasicIo::beg);
+         while ( !io_->eof() && (uint64_t) io_->tell() < filesize) {
+-            io_->read(chunkId.pData_, 4);
+-            io_->read(size_buff, 4);
++            readOrThrow(*io_, chunkId.pData_, 4, Exiv2::kerCorruptedMetadata);
++            readOrThrow(*io_, size_buff, 4, Exiv2::kerCorruptedMetadata);
++
++            const uint32_t size_u32 = Exiv2::getULong(size_buff, littleEndian);
+ 
+-            long size = Exiv2::getULong(size_buff, littleEndian);
++            // Check that `size_u32` is safe to cast to `long`.
++            enforce(size_u32 <= static_cast<size_t>(std::numeric_limits<unsigned int>::max()),
++                    Exiv2::kerCorruptedMetadata);
++            const long size = static_cast<long>(size_u32);
+ 
+             DataBuf payload(size);
+-            io_->read(payload.pData_, size);
++            readOrThrow(*io_, payload.pData_, size, Exiv2::kerCorruptedMetadata);
+             if ( io_->tell() % 2 ) io_->seek(+1,BasicIo::cur); // skip pad
+ 
+             if (equalsWebPTag(chunkId, WEBP_CHUNK_HEADER_VP8X)) {
++                enforce(size >= 1, Exiv2::kerCorruptedMetadata);
+                 if (has_icc){
+                     payload.pData_[0] |= WEBP_VP8X_ICC_BIT;
+                 } else {
diff --git a/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-29464.patch b/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-29464.patch
new file mode 100644
index 0000000..f0c4824
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-29464.patch
@@ -0,0 +1,72 @@
+From 61734d8842cb9cc59437463e3bac54d6231d9487 Mon Sep 17 00:00:00 2001
+From: Wang Mingyu <wangmy@fujitsu.com>
+Date: Tue, 18 May 2021 10:52:54 +0900
+Subject: [PATCH] modify
+
+Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
+---
+ src/jp2image.cpp | 14 +++++++++-----
+ 1 file changed, 9 insertions(+), 5 deletions(-)
+
+diff --git a/src/jp2image.cpp b/src/jp2image.cpp
+index 52723a4..0ac4f50 100644
+--- a/src/jp2image.cpp
++++ b/src/jp2image.cpp
+@@ -643,11 +643,11 @@ static void boxes_check(size_t b,size_t m)
+     void Jp2Image::encodeJp2Header(const DataBuf& boxBuf,DataBuf& outBuf)
+     {
+         DataBuf output(boxBuf.size_ + iccProfile_.size_ + 100); // allocate sufficient space
+-        int     outlen = sizeof(Jp2BoxHeader) ; // now many bytes have we written to output?
+-        int      inlen = sizeof(Jp2BoxHeader) ; // how many bytes have we read from boxBuf?
++        long    outlen = sizeof(Jp2BoxHeader) ; // now many bytes have we written to output?
++        long    inlen = sizeof(Jp2BoxHeader) ; // how many bytes have we read from boxBuf?
+         Jp2BoxHeader* pBox   = (Jp2BoxHeader*) boxBuf.pData_;
+-        int32_t       length = getLong((byte*)&pBox->length, bigEndian);
+-        int32_t       count  = sizeof (Jp2BoxHeader);
++        uint32_t      length = getLong((byte*)&pBox->length, bigEndian);
++        uint32_t      count  = sizeof (Jp2BoxHeader);
+         char*         p      = (char*) boxBuf.pData_;
+         bool          bWroteColor = false ;
+ 
+@@ -664,6 +664,7 @@ static void boxes_check(size_t b,size_t m)
+ #ifdef EXIV2_DEBUG_MESSAGES
+                 std::cout << "Jp2Image::encodeJp2Header subbox: "<< toAscii(subBox.type) << " length = " << subBox.length << std::endl;
+ #endif
++                enforce(subBox.length <= length - count, Exiv2::kerCorruptedMetadata);
+                 count        += subBox.length;
+                 newBox.type   = subBox.type;
+             } else {
+@@ -672,12 +673,13 @@ static void boxes_check(size_t b,size_t m)
+                 count = length;
+             }
+ 
+-            int32_t newlen = subBox.length;
++            uint32_t newlen = subBox.length;
+             if ( newBox.type == kJp2BoxTypeColorHeader ) {
+                 bWroteColor = true ;
+                 if ( ! iccProfileDefined() ) {
+                     const char* pad   = "\x01\x00\x00\x00\x00\x00\x10\x00\x00\x05\x1cuuid";
+                     uint32_t    psize = 15;
++                    enforce(newlen <= output.size_ - outlen, Exiv2::kerCorruptedMetadata);
+                     ul2Data((byte*)&newBox.length,psize      ,bigEndian);
+                     ul2Data((byte*)&newBox.type  ,newBox.type,bigEndian);
+                     ::memcpy(output.pData_+outlen                     ,&newBox            ,sizeof(newBox));
+@@ -686,6 +688,7 @@ static void boxes_check(size_t b,size_t m)
+                 } else {
+                     const char* pad   = "\0x02\x00\x00";
+                     uint32_t    psize = 3;
++                    enforce(newlen <= output.size_ - outlen, Exiv2::kerCorruptedMetadata);
+                     ul2Data((byte*)&newBox.length,psize+iccProfile_.size_,bigEndian);
+                     ul2Data((byte*)&newBox.type,newBox.type,bigEndian);
+                     ::memcpy(output.pData_+outlen                     ,&newBox            ,sizeof(newBox)  );
+@@ -694,6 +697,7 @@ static void boxes_check(size_t b,size_t m)
+                     newlen = psize + iccProfile_.size_;
+                 }
+             } else {
++                enforce(newlen <= output.size_ - outlen, Exiv2::kerCorruptedMetadata);
+                 ::memcpy(output.pData_+outlen,boxBuf.pData_+inlen,subBox.length);
+             }
+ 
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-29470.patch b/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-29470.patch
new file mode 100644
index 0000000..eedf9d7
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-29470.patch
@@ -0,0 +1,32 @@
+From 6628a69c036df2aa036290e6cd71767c159c79ed Mon Sep 17 00:00:00 2001
+From: Kevin Backhouse <kevinbackhouse@github.com>
+Date: Wed, 21 Apr 2021 12:06:04 +0100
+Subject: [PATCH] Add more bounds checks in Jp2Image::encodeJp2Header
+---
+ src/jp2image.cpp | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/src/jp2image.cpp b/src/jp2image.cpp
+index b424225..349a9f0 100644
+--- a/src/jp2image.cpp
++++ b/src/jp2image.cpp
+@@ -645,13 +645,16 @@ static void boxes_check(size_t b,size_t m)
+         DataBuf output(boxBuf.size_ + iccProfile_.size_ + 100); // allocate sufficient space
+         long    outlen = sizeof(Jp2BoxHeader) ; // now many bytes have we written to output?
+         long    inlen = sizeof(Jp2BoxHeader) ; // how many bytes have we read from boxBuf?
++        enforce(sizeof(Jp2BoxHeader) <= static_cast<size_t>(output.size_), Exiv2::kerCorruptedMetadata);
+         Jp2BoxHeader* pBox   = (Jp2BoxHeader*) boxBuf.pData_;
+         uint32_t      length = getLong((byte*)&pBox->length, bigEndian);
++        enforce(length <= static_cast<size_t>(output.size_), Exiv2::kerCorruptedMetadata);
+         uint32_t      count  = sizeof (Jp2BoxHeader);
+         char*         p      = (char*) boxBuf.pData_;
+         bool          bWroteColor = false ;
+ 
+         while ( count < length || !bWroteColor ) {
++            enforce(sizeof(Jp2BoxHeader) <= length - count, Exiv2::kerCorruptedMetadata);
+             Jp2BoxHeader* pSubBox = (Jp2BoxHeader*) (p+count) ;
+ 
+             // copy data.  pointer could be into a memory mapped file which we will decode!
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-29473.patch b/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-29473.patch
new file mode 100644
index 0000000..4afedf8
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-29473.patch
@@ -0,0 +1,21 @@
+From e6a0982f7cd9282052b6e3485a458d60629ffa0b Mon Sep 17 00:00:00 2001
+From: Kevin Backhouse <kevinbackhouse@github.com>
+Date: Fri, 23 Apr 2021 11:44:44 +0100
+Subject: [PATCH] Add bounds check in Jp2Image::doWriteMetadata().
+
+---
+ src/jp2image.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/jp2image.cpp b/src/jp2image.cpp
+index 1694fed27..ca8c9ddbb 100644
+--- a/src/jp2image.cpp
++++ b/src/jp2image.cpp
+@@ -908,6 +908,7 @@ static void boxes_check(size_t b,size_t m)
+ 
+                 case kJp2BoxTypeUuid:
+                 {
++                    enforce(boxBuf.size_ >= 24, Exiv2::kerCorruptedMetadata);
+                     if(memcmp(boxBuf.pData_ + 8, kJp2UuidExif, 16) == 0)
+                     {
+ #ifdef EXIV2_DEBUG_MESSAGES
diff --git a/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-3482.patch b/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-3482.patch
new file mode 100644
index 0000000..e7c5e1b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2/CVE-2021-3482.patch
@@ -0,0 +1,54 @@
+From 22ea582c6b74ada30bec3a6b15de3c3e52f2b4da Mon Sep 17 00:00:00 2001
+From: Robin Mills <robin@clanmills.com>
+Date: Mon, 5 Apr 2021 20:33:25 +0100
+Subject: [PATCH] fix_1522_jp2image_exif_asan
+
+---
+ src/jp2image.cpp | 9 ++++++---
+ 1 file changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/src/jp2image.cpp b/src/jp2image.cpp
+index eb31cea4a..88ab9b2d6 100644
+--- a/src/jp2image.cpp
++++ b/src/jp2image.cpp
+@@ -28,6 +28,7 @@
+ #include "image.hpp"
+ #include "image_int.hpp"
+ #include "basicio.hpp"
++#include "enforce.hpp"
+ #include "error.hpp"
+ #include "futils.hpp"
+ #include "types.hpp"
+@@ -353,7 +354,7 @@ static void boxes_check(size_t b,size_t m)
+                             if (io_->error()) throw Error(kerFailedToReadImageData);
+                             if (bufRead != rawData.size_) throw Error(kerInputDataReadFailed);
+ 
+-                            if (rawData.size_ > 0)
++                            if (rawData.size_ > 8) // "II*\0long"
+                             {
+                                 // Find the position of Exif header in bytes array.
+                                 long pos = (     (rawData.pData_[0]      == rawData.pData_[1])
+@@ -497,6 +498,7 @@ static void boxes_check(size_t b,size_t m)
+                 position   = io_->tell();
+                 box.length = getLong((byte*)&box.length, bigEndian);
+                 box.type = getLong((byte*)&box.type, bigEndian);
++                enforce(box.length <= io_->size()-io_->tell() , Exiv2::kerCorruptedMetadata);
+ 
+                 if (bPrint) {
+                     out << Internal::stringFormat("%8ld | %8ld | ", (size_t)(position - sizeof(box)),
+@@ -581,12 +583,13 @@ static void boxes_check(size_t b,size_t m)
+                                 throw Error(kerInputDataReadFailed);
+ 
+                             if (bPrint) {
+-                                out << Internal::binaryToString(makeSlice(rawData, 0, 40));
++                                out << Internal::binaryToString(
++                                        makeSlice(rawData, 0, rawData.size_>40?40:rawData.size_));
+                                 out.flush();
+                             }
+                             lf(out, bLF);
+ 
+-                            if (bIsExif && bRecursive && rawData.size_ > 0) {
++                            if (bIsExif && bRecursive && rawData.size_ > 8) { // "II*\0long"
+                                 if ((rawData.pData_[0] == rawData.pData_[1]) &&
+                                     (rawData.pData_[0] == 'I' || rawData.pData_[0] == 'M')) {
+                                     BasicIo::AutoPtr p = BasicIo::AutoPtr(new MemIo(rawData.pData_, rawData.size_));
diff --git a/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2_0.27.3.bb b/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2_0.27.3.bb
index ed1e8de..d5d9e62 100644
--- a/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2_0.27.3.bb
+++ b/meta-openembedded/meta-oe/recipes-support/exiv2/exiv2_0.27.3.bb
@@ -9,7 +9,14 @@
 
 # Once patch is obsolete (project should be aware due to PRs), dos2unix can be removed either
 inherit dos2unix
-SRC_URI += "file://0001-Use-compiler-fcf-protection-only-if-compiler-arch-su.patch"
+SRC_URI += "file://0001-Use-compiler-fcf-protection-only-if-compiler-arch-su.patch \
+            file://CVE-2021-29457.patch \
+            file://CVE-2021-29458.patch \
+            file://CVE-2021-29463.patch \
+            file://CVE-2021-29464.patch \
+            file://CVE-2021-29470.patch \
+            file://CVE-2021-29473.patch \
+            file://CVE-2021-3482.patch"
 
 S = "${WORKDIR}/${BPN}-${PV}-Source"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/fltk/fltk-native.bb b/meta-openembedded/meta-oe/recipes-support/fltk/fltk-native.bb
index 2636287..5d5a236 100644
--- a/meta-openembedded/meta-oe/recipes-support/fltk/fltk-native.bb
+++ b/meta-openembedded/meta-oe/recipes-support/fltk/fltk-native.bb
@@ -9,12 +9,15 @@
     -DOPTION_USE_THREADS=OFF \
     -DOPTION_USE_XDBE=OFF \
     -DOPTION_USE_XFT=OFF \
-    -DOPTION_BUILD_EXAMPLES=OFF \
+    -DFLTK_BUILD_TEST=OFF \
     -DOPTION_USE_XINERAMA=OFF \
     -DOPTION_USE_XFIXES=OFF \
     -DOPTION_USE_XCURSOR=OFF \
 "
 
+# lib/libfltk.a(Fl_Native_File_Chooser.cxx.o): undefined reference to symbol 'dlsym@@GLIBC_2.2.5'
+LDFLAGS += "-ldl"
+
 do_install_append() {
     # make sure native fltk-config is not used accidentaly
     rm -f ${D}${bindir}/fltk-config
diff --git a/meta-openembedded/meta-oe/recipes-support/fltk/fltk.bb b/meta-openembedded/meta-oe/recipes-support/fltk/fltk.bb
index 09344cf..51b4a0b 100644
--- a/meta-openembedded/meta-oe/recipes-support/fltk/fltk.bb
+++ b/meta-openembedded/meta-oe/recipes-support/fltk/fltk.bb
@@ -5,14 +5,10 @@
 inherit features_check binconfig lib_package gtk-icon-cache mime mime-xdg
 REQUIRED_DISTRO_FEATURES = "x11"
 
-SRC_URI += " \
-    file://0003-CMake-build-Force-shared-libs-with-unsuffixed-names.patch \
-    file://0004-Fix-build-error-when-enable-package-config-examples.patch \
-"
-
 EXTRA_OECMAKE = " \
     -DOPTION_BUILD_SHARED_LIBS=ON \
     -DOPTION_USE_THREADS=ON \
+    -DFLTK_BUILD_TEST=OFF \
     -DOPTION_USE_XDBE=ON \
     -DOPTION_USE_XFT=ON \
     -DFLTK_CONFIG_PATH=${libdir}/cmake \
@@ -20,7 +16,6 @@
 
 PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)}"
 
-PACKAGECONFIG[examples] = "-DOPTION_BUILD_EXAMPLES=ON,-DOPTION_BUILD_EXAMPLES=OFF,fltk-native"
 PACKAGECONFIG[cairo] = "-DOPTION_CAIRO=ON,-DOPTION_CAIRO=OFF,cairo"
 PACKAGECONFIG[opengl] = "-DOPTION_USE_GL=ON,-DOPTION_USE_GL=OFF,virtual/libgl"
 PACKAGECONFIG[xinerama] = "-DOPTION_USE_XINERAMA=ON,-DOPTION_USE_XINERAMA=OFF,libxinerama"
diff --git a/meta-openembedded/meta-oe/recipes-support/fltk/fltk.inc b/meta-openembedded/meta-oe/recipes-support/fltk/fltk.inc
index 97a1fbf..403cbdd 100644
--- a/meta-openembedded/meta-oe/recipes-support/fltk/fltk.inc
+++ b/meta-openembedded/meta-oe/recipes-support/fltk/fltk.inc
@@ -11,9 +11,8 @@
     file://0002-always-build-fluid-and-export-pointers.patch \
 "
 
-PV = "1.3.5"
-SRC_URI[md5sum] = "0de2b45a1896be2b4a8cafae89b84248"
-SRC_URI[sha256sum] = "2933c72400f9e7c0f4c3a81a1ce98bc9582b2a3edc44b8597ccd26e240e32c3c"
+PV = "1.3.6"
+SRC_URI[sha256sum] = "20d2627c97b4485ee3eab5522303985bc22b798a878ba80239e6d43dcfed067e"
 
 inherit cmake pkgconfig
 
diff --git a/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0002-always-build-fluid-and-export-pointers.patch b/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0002-always-build-fluid-and-export-pointers.patch
index cca977c..0d91aab 100644
--- a/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0002-always-build-fluid-and-export-pointers.patch
+++ b/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0002-always-build-fluid-and-export-pointers.patch
@@ -1,6 +1,6 @@
 From 16010cb1a69ea2326d8102b7f1e34b65aca4b278 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
-Date: Tue, 28 Feb 2017 01:20:42 +0100
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Sat, 22 May 2021 12:33:15 +0200
 Subject: [PATCH] always build fluid and export pointers
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
@@ -8,24 +8,24 @@
 
 Upstream-Status: Inappropriate [embedded specific]
 
-Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
 ---
  CMake/export.cmake | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/CMake/export.cmake b/CMake/export.cmake
-index 968186a..95e04eb 100644
+index 6e8bc5d..71b6f6c 100644
 --- a/CMake/export.cmake
 +++ b/CMake/export.cmake
-@@ -21,7 +21,7 @@
- # final config and export
+@@ -20,7 +20,7 @@
  #######################################################################
+ 
  # Set the fluid executable path
--if(CMAKE_CROSSCOMPILING)
-+if(FALSE)
-    find_file(FLUID_PATH
-       NAMES fluid fluid.exe
-       PATHS ENV PATH
+-if (CMAKE_CROSSCOMPILING)
++if (FALSE)
+   find_file(FLUID_PATH
+     NAMES fluid fluid.exe
+     PATHS ENV PATH
 -- 
-2.9.3
+2.31.1
 
diff --git a/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0003-CMake-build-Force-shared-libs-with-unsuffixed-names.patch b/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0003-CMake-build-Force-shared-libs-with-unsuffixed-names.patch
deleted file mode 100644
index 1f2f8ae..0000000
--- a/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0003-CMake-build-Force-shared-libs-with-unsuffixed-names.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From bc38fb41044503c9debf5710910c51dd29674b6a Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
-Date: Fri, 15 Dec 2017 22:14:01 +0100
-Subject: [PATCH] CMake build: Force shared libs with unsuffixed names
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-For windows build sake CMake complains when a project wants to build shared and
-static libraries with same name. This caused the authors of fltk to generate
-libraries with names suffixed by '_SHARED' when building fltk with cmake -
-autotools builds do not suffix.
-
-Reasons to build shared libs with correct names:
-
-* Shared libraries are the preferred choice for embedded devices
-* There are projects (e.g yoshimi) expecting shared libraries with unsuffixed
-  names - as created by autotools build. These projects link against static
-  libraries by accident causing unusable binaries.
-
-Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
----
- CMake/macros.cmake | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/CMake/macros.cmake b/CMake/macros.cmake
-index 4def62d..ab675f0 100644
---- a/CMake/macros.cmake
-+++ b/CMake/macros.cmake
-@@ -49,7 +49,7 @@ macro(FL_ADD_LIBRARY LIBNAME LIBTYPE LIBFILES)
- 	    PROPERTIES
- 	    VERSION ${FLTK_VERSION_FULL}
- 	    SOVERSION ${FLTK_VERSION_MAJOR}.${FLTK_VERSION_MINOR}
--	    PREFIX "lib"    # for MSVC static/shared coexistence
-+	    OUTPUT_NAME ${LIBNAME} CLEAN_DIRECT_OUTPUT 1
- 	    )
-     endif (${LIBTYPE} STREQUAL "SHARED")
- 
--- 
-2.9.5
-
diff --git a/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0004-Fix-build-error-when-enable-package-config-examples.patch b/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0004-Fix-build-error-when-enable-package-config-examples.patch
deleted file mode 100644
index 974c02f..0000000
--- a/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0004-Fix-build-error-when-enable-package-config-examples.patch
+++ /dev/null
@@ -1,182 +0,0 @@
-Fix build error when enable package config examples.
-
-Upstream-Status: Backport [https://github.com/fltk/fltk/commit/16774dd]
-
-Signed-off-by: Kai Kang <kai.kang@windriver.com>
-
-
-From 16774ddc4e000c89e560fde0ced8be9814ef041e Mon Sep 17 00:00:00 2001
-From: Albrecht Schlosser <albrechts.fltk@online.de>
-Date: Wed, 8 Feb 2017 02:06:52 +0000
-Subject: [PATCH] Rename test/help demo program to test/help_dialog.
-
-This change avoids a name conflict with CMake's auto-generated target 'help'
-for "Unix Makefiles", "Ninja", and supposedly other generators as well.
-
-
-git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12171 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
----
- CMake/macros.cmake                        |  5 -----
- documentation/src/examples.dox            |  8 +++----
- test/CMakeLists.txt                       | 27 +++++++++++++++++++----
- test/demo.menu                            |  2 +-
- test/{help.cxx => help_dialog.cxx}        |  6 ++---
- test/{help-test.html => help_dialog.html} |  0
- 6 files changed, 31 insertions(+), 17 deletions(-)
- rename test/{help.cxx => help_dialog.cxx} (88%)
- rename test/{help-test.html => help_dialog.html} (100%)
-
-diff --git a/CMake/macros.cmake b/CMake/macros.cmake
-index 5b0d0fa..7134fcb 100644
---- a/CMake/macros.cmake
-+++ b/CMake/macros.cmake
-@@ -90,11 +90,6 @@ function(CREATE_EXAMPLE NAME SOURCES LIBRARIES)
- 
-     set (tname ${NAME})		# target name
- 
--    # rename reserved target name "help" (CMake 2.8.12 and later)
--    if (${tname} MATCHES "^help$")
--        set (tname "test_help")
--    endif (${tname} MATCHES "^help$")
--
-     foreach(src ${SOURCES})
-         if ("${src}" MATCHES "\\.fl$")
-             list(APPEND flsrcs ${src})
-diff --git a/documentation/src/examples.dox b/documentation/src/examples.dox
-index 5105b7b..7961b02 100644
---- a/documentation/src/examples.dox
-+++ b/documentation/src/examples.dox
-@@ -60,7 +60,7 @@ you build FLTK, unlike those in the 'test' directory shown below.
- </tr>
- <tr>
- <td> \ref examples_hello           </td>
--<td> \ref examples_help            </td>
-+<td> \ref examples_help_dialog     </td>
- <td> \ref examples_iconize         </td>
- <td> \ref examples_image           </td>
- <td> \ref examples_inactive        </td>
-@@ -326,13 +326,13 @@ easily under FLTK.
- tiny demo shows how little is needed to get a functioning application
- running with FLTK. Quite impressive, I'd say.
- 
--\subsection examples_help help
-+\subsection examples_help_dialog help_dialog
- 
- \par
--\c help displays the built-in FLTK help browser. The 
-+\c help_dialog displays the built-in FLTK help browser. The
- Fl_Help_Dialog understands a subset of html and renders
- various image formats. This widget makes it easy to provide help
--pages to the user without depending on the operating system's 
-+pages to the user without depending on the operating system's
- html browser.
- 
- \subsection examples_iconize iconize
-diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
-index 22ec9ab..4caffa5 100644
---- a/test/CMakeLists.txt
-+++ b/test/CMakeLists.txt
-@@ -1,3 +1,22 @@
-+#
-+# "$Id$"
-+#
-+# CMakeLists.txt used to build test and demo apps by the CMake build system
-+#
-+# Copyright 2004-2017 by Bill Spitzak and others.
-+#
-+# This library is free software. Distribution and use rights are outlined in
-+# the file "COPYING" which should have been included with this file.  If this
-+# file is missing or damaged, see the license at:
-+#
-+#     http://www.fltk.org/COPYING.php
-+#
-+# Please report all bugs and problems on the following page:
-+#
-+#     http://www.fltk.org/str.php
-+#
-+#######################################################################
-+
- set(EXECUTABLE_OUTPUT_PATH ${FLTK_BINARY_DIR}/bin/examples)
- 
- #######################################################################
-@@ -64,7 +83,7 @@ CREATE_EXAMPLE(file_chooser file_chooser.cxx "fltk;fltk_images")
- CREATE_EXAMPLE(fonts fonts.cxx fltk)
- CREATE_EXAMPLE(forms forms.cxx "fltk;fltk_forms")
- CREATE_EXAMPLE(hello hello.cxx fltk)
--CREATE_EXAMPLE(help help.cxx "fltk;fltk_images")
-+CREATE_EXAMPLE(help_dialog help_dialog.cxx "fltk;fltk_images")
- CREATE_EXAMPLE(icon icon.cxx fltk)
- CREATE_EXAMPLE(iconize iconize.cxx fltk)
- CREATE_EXAMPLE(image image.cxx fltk)
-@@ -134,7 +153,7 @@ endif(FLTK_HAVE_CAIRO)
- # Note: this is incomplete as of 11 Feb 2015
- # Todo: currently all files are copied, but some of them need configuration:
- # - demo.menu: fluid can't be started (wrong path)
--# - demo.menu: help (help-test.html) can't find its images (not copied)
-+# - demo.menu: help_dialog (help_dialog.html) can't find its images (not copied)
- # - maybe more ...
- 
- # prepare for a "better" test file installation path
-@@ -149,11 +168,11 @@ configure_file(demo.menu ${TESTFILE_PATH}/demo.menu COPYONLY)
- 
- # use target directory only to avoid redundancy
- configure_file(rgb.txt ${TESTFILE_PATH} COPYONLY)
--configure_file(help-test.html ${TESTFILE_PATH} COPYONLY)
-+configure_file(help_dialog.html ${TESTFILE_PATH} COPYONLY)
- configure_file(browser.cxx ${TESTFILE_PATH} COPYONLY)
- configure_file(editor.cxx ${TESTFILE_PATH} COPYONLY)
- if(APPLE AND NOT OPTION_APPLE_X11)
-     configure_file(browser.cxx "${TESTFILE_PATH}/browser.app/Contents/Resources/browser.cxx" COPYONLY)
-     configure_file(rgb.txt ${TESTFILE_PATH}/colbrowser.app/Contents/Resources/rgb.txt COPYONLY)
--    configure_file(help-test.html ${TESTFILE_PATH}/help.app/Contents/Resources/help-test.html COPYONLY)
-+    configure_file(help_dialog.html ${TESTFILE_PATH}/help_dialog.app/Contents/Resources/help_dialog.html COPYONLY)
- endif(APPLE AND NOT OPTION_APPLE_X11)
-diff --git a/test/demo.menu b/test/demo.menu
-index 337a71c..97e522a 100644
---- a/test/demo.menu
-+++ b/test/demo.menu
-@@ -77,7 +77,7 @@
- 	@o:Font Tests...:@of
- 		@of:Fonts:fonts
- 		@of:UTF-8:utf8
--	@o:HelpDialog:help
-+	@o:HelpDialog:help_dialog
- 	@o:Input Choice:input_choice
- 	@o:Preferences:preferences
- 	@o:Threading:threads
-diff --git a/test/help.cxx b/test/help_dialog.cxx
-similarity index 88%
-rename from test/help.cxx
-rename to test/help_dialog.cxx
-index f5c51d6..7866641 100644
---- a/test/help.cxx
-+++ b/test/help_dialog.cxx
-@@ -3,7 +3,7 @@
- //
- // Fl_Help_Dialog test program.
- //
--// Copyright 1999-2010 by Easy Software Products.
-+// Copyright 2011-2017 by Bill Spitzak and others.
- //
- // This library is free software. Distribution and use rights are outlined in
- // the file "COPYING" which should have been included with this file.  If this
-@@ -46,13 +46,13 @@ main(int  argc,			// I - Number of command-line arguments
-     strcpy(buf, argv[0]);
-     char *slash = strrchr(buf, '/');
-     if (slash)
--      strcpy(slash, "/../Resources/help-test.html");
-+      strcpy(slash, "/../Resources/help_dialog.html");
-     help->load(buf);
-   
- #else
-   
-   if (argc <= 1)
--    help->load("help-test.html");
-+    help->load("help_dialog.html");
-   else
-     help->load(argv[1]);
-   
-diff --git a/test/help-test.html b/test/help_dialog.html
-similarity index 100%
-rename from test/help-test.html
-rename to test/help_dialog.html
diff --git a/meta-openembedded/meta-oe/recipes-support/hunspell/hunspell-dictionaries.bb b/meta-openembedded/meta-oe/recipes-support/hunspell/hunspell-dictionaries.bb
index 3da67d1..28c2d80 100644
--- a/meta-openembedded/meta-oe/recipes-support/hunspell/hunspell-dictionaries.bb
+++ b/meta-openembedded/meta-oe/recipes-support/hunspell/hunspell-dictionaries.bb
@@ -141,7 +141,7 @@
 
 do_install() {
     for LANGUAGE in `ls -d1 ${S}/dictionaries/*` ; do
-        LANGUAGE_DIR=`basename $LANGUAGE`
+        LANGUAGE_DIR=`basename $LANGUAGE | sed 's:-:_:'`
         install -D -m0644 $LANGUAGE/index.dic ${D}${datadir}/hunspell/$LANGUAGE_DIR.dic
         install -D -m0644 $LANGUAGE/index.aff ${D}${datadir}/hunspell/$LANGUAGE_DIR.aff
         install -D -m0644 $LANGUAGE/LICENSE   ${D}${datadir}/hunspell/LICENSE-$LANGUAGE_DIR 2>/dev/null || echo "No LICENSE for language $LANGUAGE"
diff --git a/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb b/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_0.347.bb
similarity index 87%
rename from meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb
rename to meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_0.347.bb
index 738c32d..43fb918 100644
--- a/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb
+++ b/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_0.347.bb
@@ -5,10 +5,8 @@
 LICENSE = "GPL-2.0+"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=1556547711e8246992b999edd9445a57"
 
-PV = "0.346"
-SRCREV = "a2bff16032a68b089eeb169f09dea08094891c9c"
+SRCREV = "ae89c73d89bb9f416b25ad9e850e9606e66a573e"
 SRC_URI = "git://github.com/vcrhonek/${BPN}.git"
-
 S = "${WORKDIR}/git"
 
 do_configure() {
diff --git a/meta-openembedded/meta-oe/recipes-support/libeigen/libeigen_3.3.7.bb b/meta-openembedded/meta-oe/recipes-support/libeigen/libeigen_3.3.9.bb
similarity index 77%
rename from meta-openembedded/meta-oe/recipes-support/libeigen/libeigen_3.3.7.bb
rename to meta-openembedded/meta-oe/recipes-support/libeigen/libeigen_3.3.9.bb
index 6ce318d..d6ef98f 100644
--- a/meta-openembedded/meta-oe/recipes-support/libeigen/libeigen_3.3.7.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libeigen/libeigen_3.3.9.bb
@@ -6,14 +6,13 @@
 
 SRC_URI = "git://gitlab.com/libeigen/eigen.git;protocol=http;nobranch=1"
 
-SRCREV = "21ae2afd4edaa1b69782c67a54182d34efe43f9c"
+SRCREV = "0fd6b4f71dd85b2009ee4d1aeb296e2c11fc9d68"
 
 S = "${WORKDIR}/git"
 
 inherit cmake
 
-FILES_${PN} = "${libdir}"
-FILES_${PN}-dev = "${includedir} ${datadir}/eigen3/cmake ${datadir}/cmake/Modules ${datadir}/pkgconfig"
+FILES_${PN}-dev += "${datadir}/eigen3/cmake"
 
 # ${PN} is empty so we need to tweak -dev and -dbg package dependencies
 RDEPENDS_${PN}-dev = ""
diff --git a/meta-openembedded/meta-oe/recipes-support/libgusb/libgusb_0.3.5.bb b/meta-openembedded/meta-oe/recipes-support/libgusb/libgusb_0.3.6.bb
similarity index 68%
rename from meta-openembedded/meta-oe/recipes-support/libgusb/libgusb_0.3.5.bb
rename to meta-openembedded/meta-oe/recipes-support/libgusb/libgusb_0.3.6.bb
index c4b0ff3..2f74013 100644
--- a/meta-openembedded/meta-oe/recipes-support/libgusb/libgusb_0.3.5.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libgusb/libgusb_0.3.6.bb
@@ -6,7 +6,6 @@
 
 inherit meson gobject-introspection gtk-doc gettext vala
 
-SRC_URI = "git://github.com/hughsie/libgusb.git \
-           "
-SRCREV = "1f712812327091c42c62b1ab1148d738d1a22b51"
+SRC_URI = "git://github.com/hughsie/libgusb.git"
+SRCREV = "b0464454048cac6779d4d51f12fe7f37ae4bbd57"
 S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb b/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb
index 00c016d..6f37d1e 100644
--- a/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb
@@ -27,10 +27,11 @@
     ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '-DWITH_SYSTEMD=ON -DSYSTEMD_UNIT_INSTALL_DIR=${systemd_system_unitdir}', '', d)} \
 "
 
-PACKAGECONFIG ??= "usb_backend network_backend"
+PACKAGECONFIG ??= "usb_backend network_backend serial_backend"
 
-PACKAGECONFIG[usb_backend] = "-DWITH_USB_BACKEND=ON,-DWITH_USB_BACKEND=OFF,libusb1,libxml2"
+PACKAGECONFIG[usb_backend] = "-DWITH_USB_BACKEND=ON,-DWITH_USB_BACKEND=OFF,libusb1 libxml2"
 PACKAGECONFIG[network_backend] = "-DWITH_NETWORK_BACKEND=ON,-DWITH_NETWORK_BACKEND=OFF,libxml2"
+PACKAGECONFIG[serial_backend] = "-DWITH_SERIAL_BACKEND=ON,-DWITH_SERIAL_BACKEND=off,libserialport libxml2"
 PACKAGECONFIG[libiio-python3] = "-DPYTHON_BINDINGS=ON,-DPYTHON_BINDINGS=OFF"
 
 PACKAGES =+ "${PN}-iiod ${PN}-tests ${PN}-${PYTHON_PN}"
diff --git a/meta-openembedded/meta-oe/recipes-support/libmxml/libmxml_3.1.bb b/meta-openembedded/meta-oe/recipes-support/libmxml/libmxml_3.2.bb
similarity index 88%
rename from meta-openembedded/meta-oe/recipes-support/libmxml/libmxml_3.1.bb
rename to meta-openembedded/meta-oe/recipes-support/libmxml/libmxml_3.2.bb
index 4e77d6c..c0ed72d 100644
--- a/meta-openembedded/meta-oe/recipes-support/libmxml/libmxml_3.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libmxml/libmxml_3.2.bb
@@ -4,8 +4,8 @@
 HOMEPAGE = "https://www.msweet.org/mxml/"
 BUGTRACKER = "https://github.com/michaelrsweet/mxml/issues"
 
-SRC_URI = "git://github.com/michaelrsweet/mxml.git"
-SRCREV = "e483e5fd8a33386fd46967681521bdd2da2b548f"
+SRC_URI = "git://github.com/michaelrsweet/mxml.git;nobranch=1"
+SRCREV = "38b044ed8ca2a611ed9ed3e26c4b46416335194e"
 S = "${WORKDIR}/git"
 
 inherit autotools
diff --git a/meta-openembedded/meta-oe/recipes-support/libraw/libraw_0.20.2.bb b/meta-openembedded/meta-oe/recipes-support/libraw/libraw_0.20.2.bb
new file mode 100644
index 0000000..0a7c534
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libraw/libraw_0.20.2.bb
@@ -0,0 +1,11 @@
+SUMMARY = "raw image decoder"
+LICENSE = "LGPL-2.1 | CDDL-1.0"
+LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=74c9dffdc42805f9c0de2f97df6031fc"
+
+SRC_URI = "git://github.com/LibRaw/LibRaw.git"
+SRCREV = "0209b6a2caec189e6d1a9b21c10e9e49f46e5a92"
+S = "${WORKDIR}/git"
+
+inherit autotools pkgconfig
+
+DEPENDS = "jpeg jasper lcms"
diff --git a/meta-openembedded/meta-oe/recipes-support/libtinyxml2/libtinyxml2_8.0.0.bb b/meta-openembedded/meta-oe/recipes-support/libtinyxml2/libtinyxml2_8.1.0.bb
similarity index 80%
rename from meta-openembedded/meta-oe/recipes-support/libtinyxml2/libtinyxml2_8.0.0.bb
rename to meta-openembedded/meta-oe/recipes-support/libtinyxml2/libtinyxml2_8.1.0.bb
index a2491cf..5245059 100644
--- a/meta-openembedded/meta-oe/recipes-support/libtinyxml2/libtinyxml2_8.0.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libtinyxml2/libtinyxml2_8.1.0.bb
@@ -6,10 +6,12 @@
 
 SRC_URI = "git://github.com/leethomason/tinyxml2.git"
 
-SRCREV = "bf15233ad88390461f6ab0dbcf046cce643c5fcb"
+SRCREV = "3291390336141573e51dfa991b4179c8bcd8f306"
 
 S = "${WORKDIR}/git"
 
 inherit cmake
 
 BBCLASSEXTEND = "native"
+
+EXTRA_OECMAKE += "-Dtinyxml2_SHARED_LIBS=YES"
diff --git a/meta-openembedded/meta-oe/recipes-support/liburing/liburing/0001-do-not-build-examples.patch b/meta-openembedded/meta-oe/recipes-support/liburing/liburing/0001-do-not-build-examples.patch
index 19bf147..03ab075 100644
--- a/meta-openembedded/meta-oe/recipes-support/liburing/liburing/0001-do-not-build-examples.patch
+++ b/meta-openembedded/meta-oe/recipes-support/liburing/liburing/0001-do-not-build-examples.patch
@@ -1,4 +1,4 @@
-From 3ee2f1e231bde18a99f86da747a9b8feca3c179d Mon Sep 17 00:00:00 2001
+From 653c39b0b30b2a329db5041e558cfc97c03d6bfb Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Wed, 17 Feb 2021 19:18:16 -0800
 Subject: [PATCH] do not build examples
@@ -14,7 +14,7 @@
  1 file changed, 1 deletion(-)
 
 diff --git a/Makefile b/Makefile
-index 948e004..8b63024 100644
+index 5d9c4dc..53e1615 100644
 --- a/Makefile
 +++ b/Makefile
 @@ -11,7 +11,6 @@ default: all
@@ -23,8 +23,8 @@
  	@$(MAKE) -C test
 -	@$(MAKE) -C examples
  
- partcheck: all
- 	@echo "make partcheck => TODO add tests with out kernel support"
+ .PHONY: all install default clean test
+ .PHONY: FORCE cscope
 -- 
-2.30.1
+2.31.1
 
diff --git a/meta-openembedded/meta-oe/recipes-support/liburing/liburing/0001-examples-ucontext-cp.c-Do-not-use-SIGSTKSZ.patch b/meta-openembedded/meta-oe/recipes-support/liburing/liburing/0001-examples-ucontext-cp.c-Do-not-use-SIGSTKSZ.patch
new file mode 100644
index 0000000..a2ba66c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/liburing/liburing/0001-examples-ucontext-cp.c-Do-not-use-SIGSTKSZ.patch
@@ -0,0 +1,37 @@
+From a30d62dfb9ea30af58ef331fae1e6f727d0558c0 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 4 May 2021 10:32:08 -0700
+Subject: [PATCH] examples/ucontext-cp.c: Do not use SIGSTKSZ
+
+glibc 2.34 has removed SIGSTKSZ therefore we replace it
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ examples/ucontext-cp.c | 6 +-----
+ 1 file changed, 1 insertion(+), 5 deletions(-)
+
+--- a/examples/ucontext-cp.c
++++ b/examples/ucontext-cp.c
+@@ -3,6 +3,7 @@
+  * gcc -Wall -O2 -D_GNU_SOURCE -o ucontext-cp ucontext-cp.c -luring
+  */
+ #define _POSIX_C_SOURCE 199309L
++#include <stddef.h>
+ #include <stdio.h>
+ #include <fcntl.h>
+ #include <string.h>
+@@ -22,13 +23,9 @@
+ #define QD	64
+ #define BS	1024
+ 
+-#ifndef SIGSTKSZ
+-#define SIGSTKSZ 8192
+-#endif
+-
+ typedef struct {
+ 	struct io_uring *ring;
+-	unsigned char stack_buf[SIGSTKSZ];
++	max_align_t stack_buf[(8 * 1024 + sizeof (max_align_t) - 1) / sizeof (max_align_t)];
+ 	ucontext_t ctx_main, ctx_fnew;
+ } async_context;
+ 
diff --git a/meta-openembedded/meta-oe/recipes-support/liburing/liburing/0001-test-Fix-build-on-32bit-architectures-with-6bit-time.patch b/meta-openembedded/meta-oe/recipes-support/liburing/liburing/0001-test-Fix-build-on-32bit-architectures-with-6bit-time.patch
deleted file mode 100644
index 01c5ccd..0000000
--- a/meta-openembedded/meta-oe/recipes-support/liburing/liburing/0001-test-Fix-build-on-32bit-architectures-with-6bit-time.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 0a9b12eda0f6e487398dad004121bdd1be792428 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 14 Nov 2020 16:18:44 -0800
-Subject: [PATCH] test: Fix build on 32bit architectures with 6bit time_t
-
-It uses SYS_futex, which it expects from system C library.
-in glibc (/usr/include/bits/syscall.h defines it in terms of of NR_futex)
-rv32 is using 64bit time_t from get go unlike other 32bit architectures
-in glibc, therefore it wont have NR_futex defined but just NR_futex_time64
-this aliases it to NR_futex so that SYS_futex is then defined for rv32
-
-Upstream-Status: Submitted [https://github.com/axboe/liburing/pull/237]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- test/35fa71a030ca-test.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/test/35fa71a030ca-test.c b/test/35fa71a030ca-test.c
-index 4ecf211..7f2124b 100644
---- a/test/35fa71a030ca-test.c
-+++ b/test/35fa71a030ca-test.c
-@@ -24,6 +24,10 @@
- 
- #include <linux/futex.h>
- 
-+#if !defined(SYS_futex) && defined(SYS_futex_time64)
-+# define SYS_futex SYS_futex_time64
-+#endif
-+
- static void sleep_ms(uint64_t ms)
- {
-   usleep(ms * 1000);
--- 
-2.29.2
-
diff --git a/meta-openembedded/meta-oe/recipes-support/liburing/liburing/0001-tests-fix-portability-issue-when-using-__NR_mmap-sys.patch b/meta-openembedded/meta-oe/recipes-support/liburing/liburing/0001-tests-fix-portability-issue-when-using-__NR_mmap-sys.patch
new file mode 100644
index 0000000..f2f03c1
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/liburing/liburing/0001-tests-fix-portability-issue-when-using-__NR_mmap-sys.patch
@@ -0,0 +1,53 @@
+From 2d3940163e14d183fddc4d8b24cc1d3865bba0b3 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 5 May 2021 09:36:36 -0700
+Subject: [PATCH] tests: fix portability issue when using __NR_mmap syscall
+
+On some architectures e.g. ARM and RISCV32, __NR_mmap does not exist and
+libc will then use NR_mmap2 to implement mmap() API, therefore use
+system C library mmap() API instead of calling the syscall directly
+
+Upstream-Status: Partial Backport [https://github.com/axboe/liburing/commit/808b6c72ab753bda0c300b5683cfd31750d1d49b]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ test/double-poll-crash.c   | 6 +++---
+ test/sqpoll-disable-exit.c | 6 +++---
+ 2 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/test/double-poll-crash.c b/test/double-poll-crash.c
+index 1a219c7..6e08285 100644
+--- a/test/double-poll-crash.c
++++ b/test/double-poll-crash.c
+@@ -150,9 +150,9 @@ int main(int argc, char *argv[])
+   if (argc > 1)
+     return 0;
+ 
+-  syscall(__NR_mmap, 0x1ffff000ul, 0x1000ul, 0ul, 0x32ul, -1, 0ul);
+-  syscall(__NR_mmap, 0x20000000ul, 0x1000000ul, 7ul, 0x32ul, -1, 0ul);
+-  syscall(__NR_mmap, 0x21000000ul, 0x1000ul, 0ul, 0x32ul, -1, 0ul);
++  mmap((void *) 0x1ffff000, (size_t) 0x1000, PROT_NONE, MAP_FIXED | MAP_ANONYMOUS, -1, 0);
++  mmap((void *) 0x20000000, (size_t) 0x1000000,  PROT_READ | PROT_WRITE | PROT_EXEC, MAP_FIXED | MAP_ANONYMOUS, -1, 0);
++  mmap((void *) 0x21000000, (size_t) 0x1000, PROT_NONE, MAP_FIXED | MAP_ANONYMOUS, -1, 0);
+   intptr_t res = 0;
+   *(uint32_t*)0x20000484 = 0;
+   *(uint32_t*)0x20000488 = 0;
+diff --git a/test/sqpoll-disable-exit.c b/test/sqpoll-disable-exit.c
+index d4e17f8..a0d00cc 100644
+--- a/test/sqpoll-disable-exit.c
++++ b/test/sqpoll-disable-exit.c
+@@ -223,9 +223,9 @@ void execute_one(void)
+ }
+ int main(void)
+ {
+-  syscall(__NR_mmap, 0x1ffff000ul, 0x1000ul, 0ul, 0x32ul, -1, 0ul);
+-  syscall(__NR_mmap, 0x20000000ul, 0x1000000ul, 7ul, 0x32ul, -1, 0ul);
+-  syscall(__NR_mmap, 0x21000000ul, 0x1000ul, 0ul, 0x32ul, -1, 0ul);
++  mmap((void *) 0x1ffff000, (size_t) 0x1000, PROT_NONE, MAP_FIXED | MAP_ANONYMOUS, -1, 0);
++  mmap((void *) 0x20000000, (size_t) 0x1000000,  PROT_READ | PROT_WRITE | PROT_EXEC, MAP_FIXED | MAP_ANONYMOUS, -1, 0);
++  mmap((void *) 0x21000000, (size_t) 0x1000, PROT_NONE, MAP_FIXED | MAP_ANONYMOUS, -1, 0);
+   loop();
+   return 0;
+ }
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/recipes-support/liburing/liburing_0.7.bb b/meta-openembedded/meta-oe/recipes-support/liburing/liburing_2.0.bb
similarity index 85%
rename from meta-openembedded/meta-oe/recipes-support/liburing/liburing_0.7.bb
rename to meta-openembedded/meta-oe/recipes-support/liburing/liburing_2.0.bb
index d79389a..9eddf2e 100644
--- a/meta-openembedded/meta-oe/recipes-support/liburing/liburing_0.7.bb
+++ b/meta-openembedded/meta-oe/recipes-support/liburing/liburing_2.0.bb
@@ -10,12 +10,13 @@
 LIC_FILES_CHKSUM = "file://README;beginline=41;endline=44;md5=d51b5805e2a675685e6a66ca50904cf9"
 
 SRC_URI = "git://github.com/axboe/liburing.git;branch=master;protocol=https \
-           file://0001-test-Fix-build-on-32bit-architectures-with-6bit-time.patch \
+           file://0001-examples-ucontext-cp.c-Do-not-use-SIGSTKSZ.patch \
+           file://0001-tests-fix-portability-issue-when-using-__NR_mmap-sys.patch \
            "
 SRC_URI_append_libc-musl_riscv64 = " file://0001-do-not-build-examples.patch "
 SRC_URI_append_libc-musl_riscv32 = " file://0001-do-not-build-examples.patch "
 
-SRCREV = "45f0735219a615ae848033c47c7e2d85d101d43e"
+SRCREV = "b013dfd5a5f65116373d5e0f0bdfb73db9d8816e"
 S = "${WORKDIR}/git"
 
 DEPENDS_append_libc-musl = " libucontext"
diff --git a/meta-openembedded/meta-oe/recipes-support/mime-support/mime-support_3.48.bb b/meta-openembedded/meta-oe/recipes-support/mime-support/mime-support_3.62.bb
similarity index 62%
rename from meta-openembedded/meta-oe/recipes-support/mime-support/mime-support_3.48.bb
rename to meta-openembedded/meta-oe/recipes-support/mime-support/mime-support_3.62.bb
index 1137f50..858521b 100644
--- a/meta-openembedded/meta-oe/recipes-support/mime-support/mime-support_3.48.bb
+++ b/meta-openembedded/meta-oe/recipes-support/mime-support/mime-support_3.62.bb
@@ -1,13 +1,17 @@
 SECTION = "base"
 SUMMARY = "MIME files 'mime.types' & 'mailcap', and support programs"
-LICENSE = "PD"
-LIC_FILES_CHKSUM = "file://debian/README;md5=36bbe2ace0a05c3fb684b73208fbf30b"
+LICENSE = "PD & Bellcore"
+LICENSE_${PN} = "PD"
+# mailcap.man's license is Bellcore
+LICENSE_${PN}-doc = "PD & Bellcore"
+LIC_FILES_CHKSUM = "file://debian/copyright;md5=53c851e31d27c3ea8a6217073a5ff01c"
 
 DEPENDS = "file"
 RDEPENDS_${PN} = "perl"
 RRECOMMENDS_${PN} = "file"
 
-SRC_URI = "${DEBIAN_MIRROR}/main/m/mime-support/mime-support_${PV}-1.tar.gz"
+SRC_URI = "${DEBIAN_MIRROR}/main/m/mime-support/mime-support_${PV}.tar.gz"
+SRC_URI[sha256sum] = "54e0a03e0cd63c7c9fe68a18ead0a2143fd3c327604215f989d85484d0409f4a"
 S = "${WORKDIR}/${BPN}"
 
 inherit update-alternatives
@@ -27,22 +31,22 @@
     install -d ${D}${mandir}/man8
     install -m 644 mime.types         ${D}${sysconfdir}/
     install -m 644 mailcap            ${D}${libdir}/mime/
-    install -m 644 mailcap.order           ${D}${sysconfdir}/
+    install -m 644 mailcap.order      ${D}${sysconfdir}/
     install -m 644 mailcap.man        ${D}${mandir}/man5/mailcap.5
-    install -m 644 mailcap.order.man    ${D}${mandir}/man5/mailcap.order.5
-#    install -m 755 install-mime        ${D}${sbindir}/
-#    install -m 644 install-mime.man        ${D}${mandir}/man8/install-mime.8
+    install -m 644 mailcap.order.man  ${D}${mandir}/man5/mailcap.order.5
+#    install -m 755 install-mime       ${D}${sbindir}/
+#    install -m 644 install-mime.man   ${D}${mandir}/man8/install-mime.8
     install -m 755 update-mime        ${D}${sbindir}/
-    install -m 644 update-mime.man        ${D}${mandir}/man8/update-mime.8
+    install -m 644 update-mime.man    ${D}${mandir}/man8/update-mime.8
     install -m 755 run-mailcap        ${D}${bindir}/
-    install -m 644 run-mailcap.man        ${D}${mandir}/man1/run-mailcap.1
-#    install -m 644 rfcs/*            ${D}${docdir}/
-    install -m 644 debian/changelog        ${D}${docdir}/changelog.Debian
-    install -m 644 debian/README        ${D}${docdir}/copyright
+    install -m 644 run-mailcap.man    ${D}${mandir}/man1/run-mailcap.1
+#    install -m 644 rfcs/*             ${D}${docdir}/
+    install -m 644 debian/changelog   ${D}${docdir}/changelog.Debian
+    install -m 644 debian/copyright   ${D}${docdir}/copyright
     install -m 755 debian-view        ${D}${libdir}/mime/
-    install -m 755 playaudio        ${D}${libdir}/mime/
+    install -m 755 playaudio          ${D}${libdir}/mime/
     install -m 755 playdsp            ${D}${libdir}/mime/
-    install -m 644 mailcap.entries        ${D}${libdir}/mime/packages/mime-support
+    install -m 644 mailcap.entries    ${D}${libdir}/mime/packages/mime-support
     cd ${D}${mandir}; gzip -9fv */*
     cd ${D}${docdir}; gzip -9v *
     cd ${D}${docdir}; gunzip copyright.gz
@@ -56,9 +60,6 @@
     cd ${D}${mandir}/man1; ln -s run-mailcap.1.gz print.1.gz
 }
 
-SRC_URI[md5sum] = "d6e5d715e331147352c50c158dbdec6d"
-SRC_URI[sha256sum] = "a529c7892cb786f514af71f4ca5a4c3ebc58b538a49ff959c0d97592d38f040a"
-
 ALTERNATIVE_PRIORITY = "90"
 ALTERNATIVE_${PN} = "mime.types"
 ALTERNATIVE_LINK_NAME[mime.types] = "${sysconfdir}/mime.types"
diff --git a/meta-openembedded/meta-oe/recipes-support/nano/nano_5.6.bb b/meta-openembedded/meta-oe/recipes-support/nano/nano_5.7.bb
similarity index 80%
rename from meta-openembedded/meta-oe/recipes-support/nano/nano_5.6.bb
rename to meta-openembedded/meta-oe/recipes-support/nano/nano_5.7.bb
index 1ce08dd..6a293c7 100644
--- a/meta-openembedded/meta-oe/recipes-support/nano/nano_5.6.bb
+++ b/meta-openembedded/meta-oe/recipes-support/nano/nano_5.7.bb
@@ -1,3 +1,4 @@
+SUMMARY = "Small and friendly console text editor"
 DESCRIPTION = "GNU nano (Nano's ANOther editor, or \
 Not ANOther editor) is an enhanced clone of the \
 Pico text editor."
@@ -12,7 +13,7 @@
 PV_MAJOR = "${@d.getVar('PV').split('.')[0]}"
 
 SRC_URI = "https://nano-editor.org/dist/v${PV_MAJOR}/nano-${PV}.tar.xz"
-SRC_URI[sha256sum] = "fce183e4a7034d07d219c79aa2f579005d1fd49f156db6e50f53543a87637a32"
+SRC_URI[sha256sum] = "d4b181cc2ec11def3711b4649e34f2be7a668e70ab506860514031d069cccafa"
 
 UPSTREAM_CHECK_URI = "https://ftp.gnu.org/gnu/nano"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/nss/nss_3.64.bb b/meta-openembedded/meta-oe/recipes-support/nss/nss_3.64.bb
index 1863db1..fce5a85 100644
--- a/meta-openembedded/meta-oe/recipes-support/nss/nss_3.64.bb
+++ b/meta-openembedded/meta-oe/recipes-support/nss/nss_3.64.bb
@@ -43,10 +43,6 @@
 TD = "${S}/tentative-dist"
 TDS = "${S}/tentative-dist-staging"
 
-# cortex-a55 is ARMv8.2-a based but libatomic explicitly asks for -march=armv8.1-a
-# which caused -march conflicts in gcc
-TUNE_CCARGS_remove = "-mcpu=cortex-a55+crc -mcpu=cortex-a55 -mcpu=cortex-a55+crc+crypto"
-
 TARGET_CC_ARCH += "${LDFLAGS}"
 
 do_configure_prepend_libc-musl () {
@@ -96,6 +92,7 @@
     export NS_USE_GCC=1
     export NSS_USE_SYSTEM_SQLITE=1
     export NSS_ENABLE_ECC=1
+    export NSS_ENABLE_WERROR=0
 
     ${@bb.utils.contains("TUNE_FEATURES", "crypto", "export NSS_USE_ARM_HW_CRYPTO=1", "", d)}
 
diff --git a/meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.2.bb b/meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.2.bb
index 311355b..31dcc3c 100644
--- a/meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.2.bb
+++ b/meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.5.2.bb
@@ -106,6 +106,12 @@
     ${@bb.utils.contains("DISTRO_FEATURES", "x11", "gtk", "", d)} \
     ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "libav", "", d)}"
 
+# TBB does not build for powerpc so disable that package config
+PACKAGECONFIG_remove_powerpc = "tbb"
+# tbb now needs getcontect/setcontext which is not there for all arches on musl
+PACKAGECONFIG_remove_libc-musl_riscv64 = "tbb"
+PACKAGECONFIG_remove_libc-musl_riscv32 = "tbb"
+
 PACKAGECONFIG[gapi] = "-DWITH_ADE=ON -Dade_DIR=${STAGING_LIBDIR},-DWITH_ADE=OFF,ade"
 PACKAGECONFIG[amdblas] = "-DWITH_OPENCLAMDBLAS=ON,-DWITH_OPENCLAMDBLAS=OFF,libclamdblas,"
 PACKAGECONFIG[amdfft] = "-DWITH_OPENCLAMDFFT=ON,-DWITH_OPENCLAMDFFT=OFF,libclamdfft,"
@@ -224,5 +230,3 @@
             -i ${D}${libdir}/cmake/opencv4/OpenCVModules.cmake
     fi
 }
-
-TOOLCHAIN = "gcc"
diff --git a/meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.04.0.bb b/meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.05.0.bb
similarity index 95%
rename from meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.04.0.bb
rename to meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.05.0.bb
index de5f380..4cfc5bd 100644
--- a/meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.04.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/poppler/poppler_21.05.0.bb
@@ -7,7 +7,7 @@
            file://0001-Do-not-overwrite-all-our-build-flags.patch \
            file://basename-include.patch \
            "
-SRC_URI[sha256sum] = "5e2219656c6bbd36154133fef2e12b7d0938464518827098b29a10b1697ea79c"
+SRC_URI[sha256sum] = "dafd537b680fad1215bc40fc53d1f38e8449d7c185bc60d5a89e1d26c90dbd8c"
 
 DEPENDS = "fontconfig zlib cairo lcms glib-2.0"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/portaudio/files/ldflags.patch b/meta-openembedded/meta-oe/recipes-support/portaudio/files/ldflags.patch
deleted file mode 100644
index aca93a5..0000000
--- a/meta-openembedded/meta-oe/recipes-support/portaudio/files/ldflags.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-Upstream forgot to pass LDFLAGS to everything apart from the main library.
-
-Upstream-Status: Pending
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-diff --git a/Makefile.in b/Makefile.in
-index 5e1a764..61ecdd1 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -171,20 +171,20 @@ lib/$(PALIB): lib-stamp $(LTOBJS) $(MAKEFILE) $(PAINC)
- 	@WITH_ASIO_TRUE@  $(LIBTOOL) --mode=link --tag=CXX $(CXX) $(PA_LDFLAGS) -o lib/$(PALIB) $(LTOBJS) $(DLL_LIBS)
- 
- $(ALL_TESTS): bin/%: lib/$(PALIB) $(MAKEFILE) $(PAINC) test/%.c
--	@WITH_ASIO_FALSE@ $(LIBTOOL) --mode=link $(CC) -o $@ $(CFLAGS) $(top_srcdir)/test/$*.c lib/$(PALIB) $(LIBS)
--	@WITH_ASIO_TRUE@  $(LIBTOOL) --mode=link --tag=CXX $(CXX) -o $@ $(CXXFLAGS) $(top_srcdir)/test/$*.c lib/$(PALIB) $(LIBS)
-+	@WITH_ASIO_FALSE@ $(LIBTOOL) --mode=link $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(top_srcdir)/test/$*.c lib/$(PALIB) $(LIBS)
-+	@WITH_ASIO_TRUE@  $(LIBTOOL) --mode=link --tag=CXX $(CXX) -o $@ $(CXXFLAGS) $(LDFLAGS) $(top_srcdir)/test/$*.c lib/$(PALIB) $(LIBS)
- 
- $(EXAMPLES): bin/%: lib/$(PALIB) $(MAKEFILE) $(PAINC) examples/%.c
--	@WITH_ASIO_FALSE@ $(LIBTOOL) --mode=link $(CC) -o $@ $(CFLAGS) $(top_srcdir)/examples/$*.c lib/$(PALIB) $(LIBS)
--	@WITH_ASIO_TRUE@  $(LIBTOOL) --mode=link --tag=CXX $(CXX) -o $@ $(CXXFLAGS) $(top_srcdir)/examples/$*.c lib/$(PALIB) $(LIBS)
-+	@WITH_ASIO_FALSE@ $(LIBTOOL) --mode=link $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(top_srcdir)/examples/$*.c lib/$(PALIB) $(LIBS)
-+	@WITH_ASIO_TRUE@  $(LIBTOOL) --mode=link --tag=CXX $(CXX) -o $@ $(CXXFLAGS) $(LDFLAGS) $(top_srcdir)/examples/$*.c lib/$(PALIB) $(LIBS)
- 
- $(SELFTESTS): bin/%: lib/$(PALIB) $(MAKEFILE) $(PAINC) qa/%.c
--	@WITH_ASIO_FALSE@ $(LIBTOOL) --mode=link $(CC) -o $@ $(CFLAGS) $(top_srcdir)/qa/$*.c lib/$(PALIB) $(LIBS)
--	@WITH_ASIO_TRUE@  $(LIBTOOL) --mode=link --tag=CXX $(CXX) -o $@ $(CXXFLAGS) $(top_srcdir)/qa/$*.c lib/$(PALIB) $(LIBS)
-+	@WITH_ASIO_FALSE@ $(LIBTOOL) --mode=link $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(top_srcdir)/qa/$*.c lib/$(PALIB) $(LIBS)
-+	@WITH_ASIO_TRUE@  $(LIBTOOL) --mode=link --tag=CXX $(CXX) -o $@ $(CXXFLAGS) $(LDFLAGS) $(top_srcdir)/qa/$*.c lib/$(PALIB) $(LIBS)
- 
- bin/paloopback: lib/$(PALIB) $(MAKEFILE) $(PAINC) $(LOOPBACK_OBJS)
--	@WITH_ASIO_FALSE@ $(LIBTOOL) --mode=link $(CC) -o $@ $(CFLAGS) $(LOOPBACK_OBJS) lib/$(PALIB) $(LIBS)
--	@WITH_ASIO_TRUE@ $(LIBTOOL) --mode=link --tag=CXX $(CXX) -o $@ $(CXXFLAGS)  $(LOOPBACK_OBJS) lib/$(PALIB) $(LIBS)
-+	@WITH_ASIO_FALSE@ $(LIBTOOL) --mode=link $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(LOOPBACK_OBJS) lib/$(PALIB) $(LIBS)
-+	@WITH_ASIO_TRUE@ $(LIBTOOL) --mode=link --tag=CXX $(CXX) -o $@ $(CXXFLAGS) $(LDFLAGS) $(LOOPBACK_OBJS) lib/$(PALIB) $(LIBS)
- 
- install: lib/$(PALIB) portaudio-2.0.pc
- 	$(INSTALL) -d $(DESTDIR)$(libdir)
-@@ -224,10 +224,10 @@ distclean: clean
- 	$(CC) -c $(CFLAGS) $< -o $@
- 
- %.lo: %.c $(MAKEFILE) $(PAINC)
--	$(LIBTOOL) --mode=compile $(CC) -c $(CFLAGS) $< -o $@
-+	$(LIBTOOL) --mode=compile $(CC) -c $(CFLAGS) $(LDFLAGS) $< -o $@
- 
- %.lo: %.cpp $(MAKEFILE) $(PAINC)
--	$(LIBTOOL) --mode=compile --tag=CXX $(CXX) -c $(CXXFLAGS) $< -o $@
-+	$(LIBTOOL) --mode=compile --tag=CXX $(CXX) -c $(CXXFLAGS) $(LDFLAGS) $< -o $@
- 
- %.o: %.cpp $(MAKEFILE) $(PAINC)
- 	$(CXX) -c $(CXXFLAGS) $< -o $@
diff --git a/meta-openembedded/meta-oe/recipes-support/portaudio/portaudio-v19/0001-Find-jack.patch b/meta-openembedded/meta-oe/recipes-support/portaudio/portaudio-v19/0001-Find-jack.patch
new file mode 100644
index 0000000..d6c6300
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/portaudio/portaudio-v19/0001-Find-jack.patch
@@ -0,0 +1,32 @@
+From 8ec1b100afda5b3e31f9d44af04b04b16dfff2e4 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Tue, 18 May 2021 00:15:46 +0200
+Subject: [PATCH] Find jack with pkgconfig
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Upstream-Status: Pending
+
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 122fe93..ab7d7f5 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -274,7 +274,8 @@ ELSE()
+ 
+   ELSEIF(UNIX)
+ 
+-    FIND_PACKAGE(Jack)
++    find_package(PkgConfig REQUIRED)
++    pkg_check_modules (JACK jack)
+     IF(JACK_FOUND)
+       OPTION(PA_USE_JACK "Enable support for Jack" ON)
+     ELSE()
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/recipes-support/portaudio/portaudio-v19_19.7.0.bb b/meta-openembedded/meta-oe/recipes-support/portaudio/portaudio-v19_19.7.0.bb
new file mode 100644
index 0000000..3a0f789
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/portaudio/portaudio-v19_19.7.0.bb
@@ -0,0 +1,32 @@
+SUMMARY = "A portable audio library"
+SECTION = "libs/multimedia"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=26107732c2ab637c5710446fcfaf02df"
+
+PV = "v190700"
+
+SRC_URI = " \
+    git://github.com/PortAudio/portaudio.git \
+    file://0001-Find-jack.patch \
+"
+SRCREV = "147dd722548358763a8b649b3e4b41dfffbcfbb6"
+S = "${WORKDIR}/git"
+
+inherit cmake
+
+PACKAGECONFIG ??= "alsa jack"
+PACKAGECONFIG[alsa] = ",,alsa-lib"
+PACKAGECONFIG[jack] = ",,jack"
+PACKAGECONFIG[examples] = "-DPA_BUILD_EXAMPLES=ON,-DPA_BUILD_EXAMPLES=OFF"
+
+do_install_append() {
+    if [ -d ${B}/examples ]; then
+        install -d ${D}${bindir}
+        for example in ${B}/examples/pa*; do
+            install -m755 $example ${D}${bindir}/
+        done
+    fi
+}
+
+FILES_SOLIBSDEV = ""
+FILES_${PN} += "${libdir}/libportaudio.so"
diff --git a/meta-openembedded/meta-oe/recipes-support/portaudio/portaudio-v19_20161030.bb b/meta-openembedded/meta-oe/recipes-support/portaudio/portaudio-v19_20161030.bb
deleted file mode 100644
index 489f8ad..0000000
--- a/meta-openembedded/meta-oe/recipes-support/portaudio/portaudio-v19_20161030.bb
+++ /dev/null
@@ -1,32 +0,0 @@
-SUMMARY = "A portable audio library"
-SECTION = "libs/multimedia"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=26107732c2ab637c5710446fcfaf02df"
-
-PV = "v190600"
-
-SRC_URI = "http://www.portaudio.com/archives/pa_stable_v190600_20161030.tgz \
-           file://ldflags.patch"
-SRC_URI[md5sum] = "4df8224e047529ca9ad42f0521bf81a8"
-SRC_URI[sha256sum] = "f5a21d7dcd6ee84397446fa1fa1a0675bb2e8a4a6dceb4305a8404698d8d1513"
-
-S = "${WORKDIR}/portaudio"
-
-inherit autotools pkgconfig
-
-PACKAGECONFIG ??= "alsa jack"
-PACKAGECONFIG[alsa] = "--with-alsa, --without-alsa, alsa-lib,"
-PACKAGECONFIG[jack] = "--with-jack, --without-jack, jack,"
-
-EXTRA_OECONF = "--without-oss --without-asihpi"
-
-do_install_append() {
-    mkdir --parents ${D}${bindir}
-    for b in ${B}/bin/pa*; do
-        # Bit nasty, should always work
-        ${B}/*-libtool --mode install install $b ${D}${bindir}
-    done
-}
-
-PACKAGES += "portaudio-examples"
-FILES_portaudio-examples = "${bindir}"
diff --git a/meta-openembedded/meta-oe/recipes-support/remmina/remmina_1.4.11.bb b/meta-openembedded/meta-oe/recipes-support/remmina/remmina_1.4.11.bb
deleted file mode 100644
index 215c04a..0000000
--- a/meta-openembedded/meta-oe/recipes-support/remmina/remmina_1.4.11.bb
+++ /dev/null
@@ -1,36 +0,0 @@
-DESCRIPTION = "A feature rich Remote Desktop Application written in GTK+"
-HOMEPAGE = "https://remmina.org"
-SECTION = "Support"
-LICENSE = "GPLv2 & openssl"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=dab7215512044d49037272ce1ac4ea8f file://LICENSE.OpenSSL;md5=c1eb3cee0a4dea27503c531267a69769"
-DEPENDS += "openssl freerdp gtk+3 gdk-pixbuf atk libgcrypt avahi libsodium libssh vte json-glib libsoup-2.4 libvncserver libsecret libxkbfile"
-
-
-DEPENDS_append_libc-musl = " libexecinfo"
-LDFLAGS_append_libc-musl = " -lexecinfo"
-
-SRCREV = "6a8737111adebf571c46f35599cc62e7f7b0bd65"
-SRC_URI = "git://gitlab.com/Remmina/Remmina;protocol=https;branch=rel/v1.4.11 \
-"
-
-PV .= "+git${SRCPV}"
-
-S = "${WORKDIR}/git"
-
-inherit cmake features_check mime-xdg
-REQUIRED_DISTRO_FEATURES = "x11"
-
-EXTRA_OECMAKE += "-DWITH_APPINDICATOR=OFF -DWITH_GETTEXT=OFF -DWITH_TRANSLATIONS=OFF"
-
-do_install_append(){
-    # We dont need the extra stuff form other desktop environments
-    rm -rf ${D}/${datadir}/xsessions
-    rm -rf ${D}/${datadir}/metainfo
-    rm -rf ${D}/${datadir}/gnome-session
-}
-
-PACKAGECONFIG[spice] = "-DWITH_SPICE=ON, -DWITH_SPICE=OFF, spice spice-protocol"
-
-RDEPENDS_${PN} = "bash"
-
-FILES_${PN}_append = " ${datadir}/icons/hicolor/*"
diff --git a/meta-openembedded/meta-oe/recipes-support/remmina/remmina_1.4.17.bb b/meta-openembedded/meta-oe/recipes-support/remmina/remmina_1.4.17.bb
new file mode 100644
index 0000000..ef78767
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/remmina/remmina_1.4.17.bb
@@ -0,0 +1,46 @@
+DESCRIPTION = "A feature rich Remote Desktop Application written in GTK+"
+HOMEPAGE = "https://remmina.org"
+SECTION = "Support"
+LICENSE = "GPLv2 & openssl"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=dab7215512044d49037272ce1ac4ea8f file://LICENSE.OpenSSL;md5=c1eb3cee0a4dea27503c531267a69769"
+
+DEPENDS = " \
+    glib-2.0-native \
+    openssl \
+    freerdp \
+    gtk+3 \
+    gdk-pixbuf \
+    atk \
+    libgcrypt \
+    libsodium \
+    libssh \
+    vte \
+    json-glib \
+    libsoup-2.4 \
+    libvncserver \
+    libsecret \
+    libxkbfile \
+"
+
+DEPENDS_append_libc-musl = " libexecinfo"
+LDFLAGS_append_libc-musl = " -lexecinfo"
+
+SRCREV = "0ef1621b3e16b3168213147a2bfca39da2c2668f"
+SRC_URI = "git://gitlab.com/Remmina/Remmina;protocol=https"
+S = "${WORKDIR}/git"
+
+inherit cmake features_check mime mime-xdg gtk-icon-cache
+REQUIRED_DISTRO_FEATURES = "x11"
+
+EXTRA_OECMAKE += "-DWITH_APPINDICATOR=OFF -DWITH_GETTEXT=OFF -DWITH_TRANSLATIONS=OFF"
+
+PACKAGECONFIG[spice] = "-DWITH_SPICE=ON, -DWITH_SPICE=OFF, spice spice-protocol"
+# Switch on gtk support in avahi recipe if you want to enable avahi support
+PACKAGECONFIG[avahi] = "-DWITH_AVAHI=ON, -DWITH_AVAHI=OFF, avahi"
+
+RDEPENDS_${PN} = "bash"
+
+FILES_${PN}+= " \
+    ${datadir}/metainfo \
+    ${datadir}/mime \
+"
diff --git a/meta-openembedded/meta-oe/recipes-support/span-lite/span-lite_0.8.1.bb b/meta-openembedded/meta-oe/recipes-support/span-lite/span-lite_0.9.2.bb
similarity index 86%
rename from meta-openembedded/meta-oe/recipes-support/span-lite/span-lite_0.8.1.bb
rename to meta-openembedded/meta-oe/recipes-support/span-lite/span-lite_0.9.2.bb
index 6956f5f..16b7c3e 100644
--- a/meta-openembedded/meta-oe/recipes-support/span-lite/span-lite_0.8.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/span-lite/span-lite_0.9.2.bb
@@ -4,7 +4,7 @@
 LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=e4224ccaecb14d942c71d31bef20d78c"
 
 SRC_URI += "git://github.com/martinmoene/span-lite"
-SRCREV = "937262f25fb702592cbc5c772111a73a5e3c1e07"
+SRCREV = "126453198fe2236b31ddfa7353e95d3a06c478ab"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-set_my_tls_end_of_input-Use-an-arbitrary-but-valid-p.patch b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-set_my_tls_end_of_input-Use-an-arbitrary-but-valid-p.patch
new file mode 100644
index 0000000..caa68e6
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-set_my_tls_end_of_input-Use-an-arbitrary-but-valid-p.patch
@@ -0,0 +1,37 @@
+From a996fd451bbd7be93cff5f466bff7282ae972fe1 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 11 May 2021 10:52:51 -0700
+Subject: [PATCH] set_my_tls_end_of_input: Use an arbitrary but valid pointer
+ as value
+
+Pass a valid pointer to pthread_setspecific to avoid GCC 11 warning.
+Fixes
+
+src/tbb/tls.h:44:46: error: 'int pthread_setspecific(pthread_key_t, const void*)' expecting 1 byte in a region of size 0 [-Werror=stringop-overread]
+|    44 |     void set( T value ) { pthread_setspecific(my_key, (void*)value); }
+|       |                           ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
+| compilation terminated due to -Wfatal-errors.
+
+Upstream-Status: Submitted [https://github.com/oneapi-src/oneTBB/pull/394]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/tbb/parallel_pipeline.cpp | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/tbb/parallel_pipeline.cpp b/src/tbb/parallel_pipeline.cpp
+index b7655c6b..ca518b5b 100644
+--- a/src/tbb/parallel_pipeline.cpp
++++ b/src/tbb/parallel_pipeline.cpp
+@@ -243,7 +243,8 @@ public:
+         return end_of_input_tls.get() != 0;
+     }
+     void set_my_tls_end_of_input() {
+-        end_of_input_tls.set(1);
++	// Use an arbitrary but valid pointer as value.
++        end_of_input_tls.set(array_size);
+     }
+ };
+ 
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb_2021.2.0.bb b/meta-openembedded/meta-oe/recipes-support/tbb/tbb_2021.2.0.bb
index 771ddd4..f4c52da 100644
--- a/meta-openembedded/meta-oe/recipes-support/tbb/tbb_2021.2.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/tbb/tbb_2021.2.0.bb
@@ -18,6 +18,7 @@
             file://GLIBC-PREREQ-is-not-defined-on-musl.patch \
             file://0001-CMakeLists.txt-exclude-riscv64-riscv32.patch \
             file://0001-Disable-use-of-_tpause-instruction.patch \
+            file://0001-set_my_tls_end_of_input-Use-an-arbitrary-but-valid-p.patch \
 "
 
 S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.20.bb b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.22.bb
similarity index 94%
rename from meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.20.bb
rename to meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.22.bb
index 9df2e39..a074d0a 100644
--- a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.20.bb
+++ b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.22.bb
@@ -15,8 +15,8 @@
     file://Makefile.utils \
     file://add__divmoddi4.patch \
 "
-SRC_URI[md5sum] = "f2fe05e72c37d40afb36b9fb3aa38b78"
-SRC_URI[sha256sum] = "e690c91974a2e7a5aca2c0939ad514382f9a2136797a5e0b96aab778e42bc8a7"
+SRC_URI[md5sum] = "abb1a20021e5915fe38c666e8c11cf80"
+SRC_URI[sha256sum] = "99816d2a15205d49362a31e8ffeb8262d2fa0678c751dfd0a7c43b2faca8be49"
 
 S ?= "${WORKDIR}/vbox_module"
 S_task-patch = "${WORKDIR}/${VBOX_NAME}"
diff --git a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch b/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch
index c06aa7b..ea3eb11 100644
--- a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch
+++ b/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp/0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch
@@ -9,14 +9,19 @@
  common/arch.h | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
+diff --git a/common/arch.h b/common/arch.h
+index 617feb5e..6edb39db 100644
 --- a/common/arch.h
 +++ b/common/arch.h
-@@ -84,7 +84,7 @@ typedef int bool_t;
+@@ -85,7 +85,7 @@ typedef int bool_t;
  #define NEED_ALIGN
  #elif defined(__x86__) || defined(__x86_64__) || \
        defined(__AMD64__) || defined(_M_IX86) || defined (_M_AMD64) || \
 -      defined(__i386__) || defined(__aarch64__) || \
 +      defined(__i386__) || defined(__aarch64__) || defined(__powerpc64__) || \
+       defined(__PPC__) || defined(__LITTLE_ENDIAN__) || \
+       defined(__s390__) || defined (__s390x__) || \
        defined(__riscv)
- #define NO_NEED_ALIGN
- #else
+-- 
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp_0.9.15.bb b/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp_0.9.16.bb
similarity index 98%
rename from meta-openembedded/meta-oe/recipes-support/xrdp/xrdp_0.9.15.bb
rename to meta-openembedded/meta-oe/recipes-support/xrdp/xrdp_0.9.16.bb
index 039ba1a..d7a371b 100644
--- a/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp_0.9.15.bb
+++ b/meta-openembedded/meta-oe/recipes-support/xrdp/xrdp_0.9.16.bb
@@ -16,7 +16,7 @@
            file://0001-Fix-the-compile-error.patch \
            file://0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch \
            "
-SRCREV = "f24b7b7988140b18202908654db3289659303772"
+SRCREV = "a4c7ee077c049202d73f82f518b2de958d722890"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-test/catch2/catch2_2.13.4.bb b/meta-openembedded/meta-oe/recipes-test/catch2/catch2_2.13.6.bb
similarity index 92%
rename from meta-openembedded/meta-oe/recipes-test/catch2/catch2_2.13.4.bb
rename to meta-openembedded/meta-oe/recipes-test/catch2/catch2_2.13.6.bb
index 2100472..fd677a3 100644
--- a/meta-openembedded/meta-oe/recipes-test/catch2/catch2_2.13.4.bb
+++ b/meta-openembedded/meta-oe/recipes-test/catch2/catch2_2.13.6.bb
@@ -6,7 +6,7 @@
 LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=e4224ccaecb14d942c71d31bef20d78c"
 
 SRC_URI = "git://github.com/catchorg/Catch2.git;branch=v2.x"
-SRCREV = "de6fe184a9ac1a06895cdd1c9b437f0a0bdf14ad"
+SRCREV = "5c88067bd339465513af4aec606bd2292f1b594a"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-test/googletest/googletest_git.bb b/meta-openembedded/meta-oe/recipes-test/googletest/googletest_git.bb
index 354e7de..2e0fecf 100644
--- a/meta-openembedded/meta-oe/recipes-test/googletest/googletest_git.bb
+++ b/meta-openembedded/meta-oe/recipes-test/googletest/googletest_git.bb
@@ -2,15 +2,14 @@
 HOMEPAGE = "https://github.com/google/googletest"
 SECTION = "libs"
 LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://googlemock/LICENSE;md5=cbbd27594afd089daa160d3a16dd515a \
-                    file://googletest/LICENSE;md5=cbbd27594afd089daa160d3a16dd515a"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=cbbd27594afd089daa160d3a16dd515a"
 
-PV = "1.10.0"
+PV = "1.10.0+git${SRCPV}"
 
 PROVIDES += "gmock gtest"
 
 S = "${WORKDIR}/git"
-SRCREV = "703bd9caab50b139428cea1aaff9974ebee5742e"
+SRCREV = "662fe38e44900c007eccb65a5d2ea19df7bd520e"
 SRC_URI = "git://github.com/google/googletest.git"
 
 inherit cmake