meta-openembedded: subtree update:98175fd0cc..da393545a2

Aditya.Tayade (1):
      neon: Add ptest

Andreas Müller (9):
      udisks2: upgrade 2.9.1 -> 2.9.2 / replace '_git' by version in recipe-name
      poppler: upgrade 21.02.0 -> 21.03.0
      xfce4-panel: upgrade 4.16.1 -> 4.16.2
      xfce4-cpugraph-plugin: upgrade 1.2.1 -> 1.2.3
      xfce4-time-out-plugin: upgrade 1.1.1 -> 1.1.2
      mousepad: upgrade 0.5.2 -> 0.5.3
      xfce4-panel-profiles: 1.0.12 -> 1.0.13
      thunar: upgrade 4.16.2 -> 4.16.4
      xfce4-taskmanager: upgrade 1.4.0 -> 1.4.2

Andrei Gherzan (6):
      python3-pep8: Fix HOMEPAGE
      python3-mccabe: Fix HOMEPAGE
      python3-ifaddr: Integrate a dependency of pysonos
      python3-pysonos: Integrate the SONOS control HomeAssistant module
      python3-aiohue: Integrate the hue control python module
      packagegroup-meta-python: Add new modules (aiohue, ifaddr, pysonos)

Andrej Valek (1):
      jsoncpp: Upgrade to 1.9.4

Bartosz Golaszewski (11):
      pystemd: satisfy runtime dependencies
      python3-pythonping: new package
      python3-wpa-supplicant: new package
      python3-txdbus: new package
      python3-wpa-supplicant: add runtime dependencies
      python3-wpa-supplicant: fix importing the cli submodule
      python3-wpa-supplicant: replace DESCRIPTION with SUMMARY
      libgpiod: update v1.6.2 -> v1.6.3
      python3-txdbus: add missing runtime dependencies
      python3-jmespath: new package
      python3-docutils: new package

Ben Gampe (1):
      python3-h11: new package

Carlos Rafael Giani (1):
      pipewire: Upgrade to 0.3.24

Changqing Li (2):
      php: allow php as empty
      openldap: upgrade 2.4.57 -> 2.4.58

Clément Péron (2):
      grpc: move grpc plugins to a new grpc-compiler package
      nodejs: 12.20.2 -> 12.21.0

Colin McAllister (1):
      python3-gpsd-py3: Added recipe

Daniel Wagenknecht (1):
      gnome-keyring: set file capabilities in pkg_postinst

Denys Dmytriyenko (1):
      glmark2: also depend on wayland-protocols when wayland distro feature is on

Devon Pringle (1):
      python3-pastedeploy: Add recipe

Fabio Berton (1):
      python3-requests: Support idna version 3.1

INC@Cisco) (2):
      bpftool: remove recipe from blacklist
      bpftool: improve reproducibility

Jan Kaisrlik (1):
      abseil-cpp: reorder content of packages

Joshua Watt (1):
      classes: Add Android sparse image class

Kai Kang (8):
      python3-pillow: 8.1.0 -> 8.1.2
      xfce4-cpufreq-plugin: 1.2.2 -> 1.2.5
      exo: 4.16.0 -> 4.16.1
      xfce4-netload-plugin: 1.3.2 -> 1.4.0
      xfce4-genmon-plugin: 4.1.0 -> 4.1.1
      xfce4-weather-plugin: 0.10.2 -> 0.11.0
      xfce4-systemload-plugin: 1.2.4 -> 1.3.0
      xfce4-taskmanager: 1.4.2 -> 1.5.2

Khem Raj (63):
      nss: Disable Werror
      open-vm-tools: Do not use volatile qualifier
      dconf-editor: Fix build with vala 0.50.4
      libbacktrace: Add recipe
      libleak: Add recipe
      packagegroup-meta-oe: Add libleak to packagegroup-meta-oe-extended
      mongodb: Upgrade to 4.4.4
      packagegroup-meta-python: Add python3-semantic-version
      python3-grpcio: Upgrade to 1.36.1
      python3-grpcio: Fix build on mips and musl
      mpv: Link libatomic on riscv64
      glog: Link with libexecinfo on musl
      musl-nscd: Make lex syntax posix'y
      libbpf: Depend on virtual/kernel:do_shared_workdir
      waf-cross-answers: Add powerpc64le version
      python3-grpcio,python3-grpcio-tools: Disable for ppc64le
      openh264: Disable building for ppc64le
      ufs-utils: Upgrade to 1.9
      libhugetlbfs: Fix ARCH setting for ppc64 LE
      nodejs: Set correct nodejs arch for ppc64le
      libnma: Disbale vapi
      xrdp: Upgrade to 0.9.15
      ply: upgrade to latest
      ply: Disable on ppc64
      ltrace: Fix build on ppc64le/musl
      oprofile: Fix build on musl
      gperftools: Update SRCREV to point to 2.9.1 release
      mongodb: Fix cross build on ppc64le
      abseil-cpp: Fix build on musl and ppc64
      mariadb: Fix build on musl/ppc
      mongodb: Fix build on ppc64le
      breakpad: Upgrade to latest
      ssiapi: Disable for ppc64
      kexec-tools-klibc: Use SITEINFO_BITS to construct includepath
      breakpad: Exclude for ppc64
      python3-grpcio,python3-grpcio-tools: Enable build on ppc64/glibc
      breakpad: Do not fallback to android implementation for getcontext/setcontext on musl
      oprofile: Upgrade to 1.4.0 release
      vboxguestdrivers: Add __divmoddi4 builtin support
      links-x11,links: Upgrade to 2.22
      layers: Drop gatesgarth from LAYERSERIES_COMPAT
      xxhash: Remove recipe
      gsound: Use () instead of {} for makefile variable in gsound_play_VALAFLAGS
      pipewire: Package systemd unit file for pipewire-media-session
      packagegroup-meta-python: Add new package python3-pythonping
      python3-spidev: Remove recipe for 3.2
      python3-werkzeug: Clarify BSD license type
      python3-werkzeug: Delete recipe for 1.0.0
      python3-hexdump: Move cleanup_hexfile into install_append
      cryptsetup: DEPEND on renamed util-linux-libuuid
      tracker-miners: Check for commercial license to enable ffmpeg
      gnome-settings-daemon: Do not generate meson.native
      libb64: Add recipe
      sysdig: Upgrade to 0.27.1
      sysdig: Depend on system libb64
      gimp: Disable vector iconn on rv32/musl
      libcamera: Update the patch to upstreamed one
      flashrom: Add remaining RISCV support
      mpd: Check for commercial in LICENSE_FLAGS_WHITELIST
      mpv: Exclude from world if commercial is not in inclusion list
      sox: Exclude from world if commercial is not in inclusion list
      vlc: Exclude from world if commercial is not in inclusion list
      sox: Remove LICENSE_FLAGS = "commercial"

Leon Anavi (74):
      python3-elementpath: Upgrade 2.1.4 -> 2.2.0
      python3-twisted: Upgrade 20.3.0 -> 21.2.0
      python3-ipython: Upgrade 7.20.0 -> 7.21.0
      python3-yamlloader: Upgrade 0.5.5 -> 1.0.0
      python3-astroid: Upgrade 2.5 -> 2.5.1
      python3-portion: Upgrade 2.1.4 -> 2.1.5
      python3-pandas: Upgrade 1.2.2 -> 1.2.3
      python3-ruamel-yaml: Upgrade 0.16.12 -> 0.16.13
      python3-prettytable: Upgrade 2.0.0 -> 2.1.0
      python3-huey: Upgrade 2.3.0 -> 2.3.1
      python3-pychromecast: Upgrade 8.1.0 -> 9.1.1
      python3-incremental: Upgrade 17.5.0 -> 21.3.0
      python3-waitress: Upgrade 1.4.4 -> 2.0.0
      python3-pako: Upgrade 0.3.0 -> 0.3.1
      python3-pyscaffold: Upgrade 3.3.1 -> 4.0
      python3-croniter: Upgrade 1.0.6 -> 1.0.8
      python3-prompt-toolkit: Upgrade 3.0.16 -> 3.0.17
      python3-pymisp: Upgrade 2.4.138 -> 2.4.140
      python3-jsonpatch: Upgrade 1.31 -> 1.32
      python3-jsonpointer: Upgrade 2.0 -> 2.1
      python3-configargparse: Upgrade 1.3 -> 1.4
      python3-luma-core: Upgrade 2.2.0 -> 2.3.1
      python3-pycodestyle: Upgrade 2.6.0 -> 2.7.0
      python3-bitarray: Upgrade 1.7.0 -> 1.7.1
      python3-alembic: Upgrade 1.5.5 -> 1.5.7
      python3-pyflakes: Upgrade 2.2.0 -> 2.3.0
      python3-autobahn: Upgrade 21.2.2 -> 21.3.1
      python3-pulsectl: Upgrade 21.2.0 -> 21.3.4
      python3-configparser: Upgrade 5.0.1 -> 5.0.2
      python3-defusedxml: Upgrade 0.6.0 -> 0.7.1
      python3-twine: Upgrade 3.3.0 -> 3.4.0
      python3-socketio: Upgrade 5.0.4 -> 5.1.0
      python3-soupsieve: Upgrade 2.2 -> 2.2.1
      python3-cassandra-driver: Upgrade 3.24.0 -> 3.25.0
      python3-urllib3: Upgrade 1.26.3 -> 1.26.4
      python3-bitarray: Upgrade 1.7.1 -> 1.8.0
      python3-pyscaffold: Upgrade 4.0 -> 4.0.1
      python3-flask-migrate: Upgrade 2.6.0 -> 2.7.0
      python3-grpcio-tools: Upgrade 1.35.0 -> 1.36.1
      python3-humanize: Upgrade 3.2.0 -> 3.3.0
      python3-regex: Upgrade 2020.11.13 -> 2021.3.17
      python3-twine: Upgrade 3.4.0 -> 3.4.1
      python3-isort: Upgrade 5.7.0 -> 5.8.0
      python3-sqlalchemy: Upgrade 1.3.23 -> 1.4.2
      python3-scrypt: Upgrade 0.8.6 -> 0.8.17
      python3-colorlog: Upgrade 4.7.2 -> 4.8.0
      python3-croniter: Upgrade 1.0.8 -> 1.0.9
      python3-pyperf: Upgrade 2.1.0 -> 2.2.0
      python3-lazy-object-proxy: Upgrade 1.5.2 -> 1.6.0
      python3-prompt-toolkit: Upgrade 3.0.17 -> 3.0.18
      python3-configshell-fb: Upgrade 1.1.28 -> 1.1.29
      python3-backports-functools-lru-cache: Upgrade 1.6.1 -> 1.6.3
      python3-pytest-helpers-namespace: Upgrade 2019.1.8 -> 2021.3.24
      python3-elementpath: Upgrade 2.2.0 -> 2.2.1
      python3-alembic: Upgrade 1.5.7 -> 1.5.8
      python3-rfc3339-validator: Upgrade 0.1.2 -> 0.1.3
      python3-pyflakes: Upgrade 2.3.0 -> 2.3.1
      python3-pint: Upgrade 0.16.1 -> 0.17
      python3-flask-sqlalchemy: Upgrade 2.4.4 -> 2.5.1
      python3-django: Upgrade 3.1.1 -> 3.1.7
      python3-djangorestframework: Upgrade 3.12.2 -> 3.12.3
      python3-ruamel-yaml: Upgrade 0.16.13 -> 0.17.0
      python3-bitarray: Upgrade 1.8.0 -> 1.8.1
      python3-sqlalchemy: Upgrade 1.4.2 -> 1.4.3
      python3-xmlschema: Upgrade 1.5.1 -> 1.5.3
      python3-croniter: Upgrade 1.0.9 -> 1.0.10
      python3-astroid: Upgrade 2.5.1 -> 2.5.2
      python3-pyroute2: Upgrade 0.5.14 -> 0.5.15
      python3-coverage: Upgrade 5.4 -> 5.5
      python3-gunicorn: Upgrade 20.0.4 -> 20.1.0
      python3-djangorestframework: Upgrade 3.12.3 -> 3.12.4
      python3-ipython: Upgrade 7.21.0 -> 7.22.0
      python3-openpyxl: Upgrade 3.0.6 -> 3.0.7
      python3-ruamel-yaml: Upgrade 0.17.0 -> 0.17.2

Luca Boccassi (3):
      cryptsetup: depend on new util-linux-uuid to break cycle
      dbus-broker: upgrade 26 -> 27
      dbus-broker: upgrade 27 -> 28

Marius Kriegerowski (1):
      tmate: add recipe version 2.4.0

Martin Jansa (11):
      glog: fix searching for Libunwind
      ceres-solver: prevent fetching git hook during do_configure
      packagegroup-meta-oe: include abseil-cpp for all architectures
      packagegroup-meta-oe: include nodejs without meta-python2 conditional
      packagegroup-meta-oe: move the packages depending on meta-python2 to separate packages
      mysql-python, lio-utils, openlmi-tools: add conditional PNBLACKLIST like meta-python2 does
      conf/layer.conf: include .bbappend files in BBFILES_DYNAMIC
      open-vm-tools: move to meta-networking
      packagegroup-meta-{oe,multimedia}: move pipewire to the right packagegroup
      packagegroup-meta-multimedia: include projucer only with x11 in DISTRO_FEATURES
      packagegroup-meta-multimedia: include vlc only with x11 in DISTRO_FEATURES

Matteo Croce (1):
      libbpf: use pkg-config

Michael Vetter (1):
      jasper: upgrade 2.0.25 -> 2.0.26

Ming Liu (1):
      atftp: move atftpd.init from files to atftp subdirectory

Mingli Yu (6):
      geoip: Switch to use the main branch
      geoip-perl: Switch to use the main branch
      bridge-utils: Switch to use the main branch
      netkit-telnet: Update SRC_URI
      quagga: Update SRC_URI
      hostapd: fix CVE-2019-5061

Nisha Parrakat (1):
      neon: use pkg-config instead of xml2-config to configure

Oleksandr Kravchuk (10):
      ipset: update to 7.11
      libnice: update to 0.1.18
      nbdkit: update to 1.25.3
      python3-bitarray: update to 1.7.0
      python3-google-api-python-client: update to 2.0.2
      python3-jsonpatch: update to 1.31
      python3-websocket-client: update to 0.58.0
      python3-robotframework: update to 4.0
      python3-sentry-sdk: update to 1.0.0
      aom: update to 3.0.0

Peace Lee (2):
      guider: Upgrade 3.9.7 -> 3.9.8
      guider: Upgrade 3.9.7 -> 3.9.8

Persian Prince (1):
      tinymembench: Correct PV

Philip Balister (1):
      fftw: Add support for ptest.

Randy MacLeod (6):
      gperftools: upgrade 2.8.1 -> 2.9.1
      zabbix: upgrade 4.4.6 -> 5.2.5
      nss: upgrade 3.60.1 -> 3.62
      xterm: upgrade 362 -> 366
      zstd: remove the recipe since it moved to oe-core
      tclap: upgrade 1.2.2 -> 1.4.0

Ross Burton (3):
      libxmlb: upgrade to 0.3.0
      flashrom: recipe cleanup
      openjpeg: add native/nativesdk class extension

Sakib Sajal (1):
      grpc: upgrade 1.36.1 -> 1.36.2

Sam Van Den Berge (1):
      libiio: fix build when python bindings are enabled

Sana Kazi (1):
      mdns: Whitelisted CVE-2007-0613 for mdns

Stefan Schmidt (2):
      musl-rpmatch_git.bb: add new recipe to provide rpmatch() for musl libc builds
      plymouth_0.9.5.bb: allow building with musl libc

Valentin Longchamp (1):
      libssh: add gcrypt to PACKAGECONFIG

Wang Mingyu (3):
      czmq: Conflict resolution for sha1.h
      python3-lxml: upgrade 4.6.2 -> 4.6.3
      python3-zopeinterface: upgrade 5.2.0 -> 5.3.0

Yann Dirson (1):
      mpv: remove explicit LICENSE_FLAGS

Yi Fan Yu (2):
      librelp: update 1.6.0 -> 1.10.0
      rsyslog: Fix rsyslog systemd service not starting

Yi Zhao (2):
      quagga: do not set PIDFile in service files
      tclap: add pkg-config file

Zang Ruochen (1):
      gtkwave: upgrade 3.3.104 -> 3.3.108

zangrc (15):
      dovecot: upgrade 2.3.13 -> 2.3.14
      fetchmail: upgrade 6.4.16 -> 6.4.17
      dialog: upgrade 1.3-20210117 -> 1.3-20210306
      fio: upgrade 3.25 -> 3.26
      xorriso: upgrade 1.5.3 -> 1.5.5
      iscsi-initiator-utils: upgrade 2.1.3 -> 2.1.4
      mosquitto: upgrade 2.0.8 -> 2.0.9
      nbdkit: upgrade 1.25.3 -> 1.25.4
      wireguard-tools: upgrade 1.0.20210223 -> 1.0.20210315
      wireshark: upgrade 3.4.3 -> 3.4.4
      live555: upgrade 20210129 -> 20210322
      mg: upgrade 20200723 -> 20210314
      nanopb: upgrade 0.4.4 -> 0.4.5
      nss: upgrade 3.62 -> 3.63
      uriparser: upgrade 0.9.4 -> 0.9.5

zhengruoqin (12):
      phpmyadmin: upgrade 5.0.4 -> 5.1.0
      uthash: upgrade 2.2.0 -> 2.3.0
      gd: upgrade 2.3.1 -> 2.3.2
      openocd: upgrade 0.10 -> 0.11
      satyr: upgrade 0.36 -> 0.37
      libcrypt-openssl-guess-perl: upgrade 0.11 -> 0.12
      cryptsetup: upgrade 2.3.4 -> 2.3.5
      glmark2: upgrade 20201114 -> 2021.02
      grpc: upgrade 1.36.2 -> 1.36.3
      dialog: upgrade 1.3-20210306 -> 1.3-20210319
      grpc: upgrade 1.36.3 -> 1.36.4
      libgee: upgrade 0.20.3 -> 0.20.4

Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: I0b18d7c12586e6038d002f02ed87f38e25bc5080
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
new file mode 100644
index 0000000..ee0c254
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/abseil-ppc-fixes.patch
@@ -0,0 +1,94 @@
+An all-in-one patch that fixes several issues:
+
+1) UnscaledCycleClock not fully implemented for ppc*-musl (disabled on musl)
+2) powerpc stacktrace implementation only works on glibc (disabled on musl)
+3) powerpc stacktrace implementation has ppc64 assumptions (fixed)
+4) examine_stack.cpp makes glibc assumptions on powerpc (fixed)
+
+Sourced from void linux
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+--- a/absl/base/internal/unscaledcycleclock.cc
++++ b/absl/base/internal/unscaledcycleclock.cc
+@@ -20,7 +20,7 @@
+ #include <intrin.h>
+ #endif
+ 
+-#if defined(__powerpc__) || defined(__ppc__)
++#if (defined(__powerpc__) || defined(__ppc__)) && defined(__GLIBC__)
+ #ifdef __GLIBC__
+ #include <sys/platform/ppc.h>
+ #elif defined(__FreeBSD__)
+@@ -59,7 +59,7 @@ double UnscaledCycleClock::Frequency() {
+   return base_internal::NominalCPUFrequency();
+ }
+ 
+-#elif defined(__powerpc__) || defined(__ppc__)
++#elif (defined(__powerpc__) || defined(__ppc__)) && defined(__GLIBC__)
+ 
+ int64_t UnscaledCycleClock::Now() {
+ #ifdef __GLIBC__
+--- a/absl/base/internal/unscaledcycleclock.h
++++ b/absl/base/internal/unscaledcycleclock.h
+@@ -46,7 +46,7 @@
+ 
+ // The following platforms have an implementation of a hardware counter.
+ #if defined(__i386__) || defined(__x86_64__) || defined(__aarch64__) || \
+-  defined(__powerpc__) || defined(__ppc__) || \
++  ((defined(__powerpc__) || defined(__ppc__)) && defined(__GLIBC__)) || \
+   defined(_M_IX86) || defined(_M_X64)
+ #define ABSL_HAVE_UNSCALED_CYCLECLOCK_IMPLEMENTATION 1
+ #else
+--- a/absl/debugging/internal/examine_stack.cc
++++ b/absl/debugging/internal/examine_stack.cc
+@@ -27,6 +27,10 @@
+ #include <csignal>
+ #include <cstdio>
+ 
++#if defined(__powerpc__)
++#include <asm/ptrace.h>
++#endif
++
+ #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) {
+     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);
++#elif defined(__powerpc__)
++    return reinterpret_cast<void*>(((struct pt_regs *)context->uc_regs)->nip);
+ #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 @@
+ #elif defined(__i386__) || defined(__x86_64__)
+ #define ABSL_STACKTRACE_INL_HEADER \
+   "absl/debugging/internal/stacktrace_x86-inl.inc"
+-#elif defined(__ppc__) || defined(__PPC__)
++#elif (defined(__ppc__) || defined(__PPC__)) && defined(__GLIBC__)
+ #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 9557c93..903b7b4 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
@@ -13,6 +13,7 @@
 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 \
           "
 
 S = "${WORKDIR}/git"
@@ -28,7 +29,6 @@
                 "
 
 BBCLASSEXTEND = "native nativesdk"
-ALLOW_EMPTY_${PN} = "1"
 
-FILES_${PN} = "${libdir}/libabsl_*.so ${libdir}/cmake"
-FILES_${PN}-dev = "${includedir}"
+FILES_${PN} = "${libdir}/libabsl_*.so"
+FILES_${PN}-dev = "${includedir} ${libdir}/cmake"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Remove-HAVE_GETCONTEXT-check-to-add-local-implementa.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Remove-HAVE_GETCONTEXT-check-to-add-local-implementa.patch
new file mode 100644
index 0000000..d7a5c06
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Remove-HAVE_GETCONTEXT-check-to-add-local-implementa.patch
@@ -0,0 +1,54 @@
+From 70441611d4e8200d9d16dfed493873b8c1bb57c5 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 15 Mar 2021 11:33:38 -0700
+Subject: [PATCH] Remove HAVE_GETCONTEXT check to add local implementation
+
+On musl getcontext/setcontext APIs are implemented in libucontext which
+can be used
+
+Upstream-Status: Inappropriate [Musl Specific]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile.am | 12 ------------
+ 1 file changed, 12 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index ee7454e4..69700192 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -187,10 +187,6 @@ src_client_linux_libbreakpad_client_a_SOURCES = \
+ 	src/common/linux/linux_libc_support.cc \
+ 	src/common/linux/memory_mapped_file.cc \
+ 	src/common/linux/safe_readlink.cc
+-if !HAVE_GETCONTEXT
+-src_client_linux_libbreakpad_client_a_SOURCES += \
+-	src/common/linux/breakpad_getcontext.S
+-endif
+ endif LINUX_HOST
+ 
+ if !DISABLE_PROCESSOR
+@@ -508,10 +504,6 @@ src_client_linux_linux_client_unittest_shlib_SOURCES = \
+ 	src/processor/minidump.cc \
+ 	src/processor/pathname_stripper.cc \
+ 	src/processor/proc_maps_linux.cc
+-if !HAVE_GETCONTEXT
+-src_client_linux_linux_client_unittest_shlib_SOURCES += \
+-	src/common/linux/breakpad_getcontext.S
+-endif
+ 
+ src_client_linux_linux_client_unittest_shlib_CPPFLAGS = \
+ 	$(AM_CPPFLAGS) $(TEST_CFLAGS)
+@@ -541,10 +533,6 @@ src_client_linux_linux_client_unittest_shlib_LDADD = \
+ 	src/common/string_conversion.o \
+ 	$(TEST_LIBS) \
+ 	$(PTHREAD_CFLAGS) $(PTHREAD_LIBS)
+-if !HAVE_GETCONTEXT
+-src_client_linux_linux_client_unittest_shlib_SOURCES += \
+-	src/common/linux/breakpad_getcontext_unittest.cc
+-endif
+ if ANDROID_HOST
+ src_client_linux_linux_client_unittest_shlib_LDFLAGS += \
+ 	-llog -lm
+-- 
+2.30.2
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Turn-off-sign-compare-for-musl-libc.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Turn-off-sign-compare-for-musl-libc.patch
index 33bae1a..6b8d011 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Turn-off-sign-compare-for-musl-libc.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Turn-off-sign-compare-for-musl-libc.patch
@@ -13,11 +13,9 @@
  src/client/linux/crash_generation/crash_generation_server.cc | 10 ++++++++++
  1 file changed, 10 insertions(+)
 
-diff --git a/src/client/linux/crash_generation/crash_generation_server.cc b/src/client/linux/crash_generation/crash_generation_server.cc
-index 2596afde..2faeb9e5 100644
 --- a/src/client/linux/crash_generation/crash_generation_server.cc
 +++ b/src/client/linux/crash_generation/crash_generation_server.cc
-@@ -230,8 +230,18 @@ CrashGenerationServer::ClientEvent(short revents)
+@@ -230,8 +230,18 @@ CrashGenerationServer::ClientEvent(short
    // Walk the control payload and extract the file descriptor and validated pid.
    pid_t crashing_pid = -1;
    int signal_fd = -1;
@@ -28,7 +26,7 @@
 +  #pragma clang diagnostic push
 +  #pragma clang diagnostic ignored "-Wsign-compare"
 +#endif
-   for (struct cmsghdr *hdr = CMSG_FIRSTHDR(&msg); hdr;
+   for (struct cmsghdr* hdr = CMSG_FIRSTHDR(&msg); hdr;
         hdr = CMSG_NXTHDR(&msg, hdr)) {
 +#ifndef __GLIBC__
 +  #pragma clang diagnostic pop
@@ -36,6 +34,3 @@
      if (hdr->cmsg_level != SOL_SOCKET)
        continue;
      if (hdr->cmsg_type == SCM_RIGHTS) {
--- 
-2.14.1
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-disable-calls-to-getcontext-with-musl.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-disable-calls-to-getcontext-with-musl.patch
deleted file mode 100644
index 466abe5..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-disable-calls-to-getcontext-with-musl.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 57ecf7205feedd23f901e1bb9d193787e559e433 Mon Sep 17 00:00:00 2001
-From: Andre McCurdy <armccurdy@gmail.com>
-Date: Tue, 23 Jan 2018 15:13:26 -0800
-Subject: [PATCH] disable calls to getcontext() with musl
-
-Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
----
- src/client/linux/handler/exception_handler.cc | 17 +++++++++++++++++
- 1 file changed, 17 insertions(+)
-
---- a/src/client/linux/handler/exception_handler.cc
-+++ b/src/client/linux/handler/exception_handler.cc
-@@ -490,7 +490,19 @@ bool ExceptionHandler::SimulateSignalDel
-   siginfo.si_code = SI_USER;
-   siginfo.si_pid = getpid();
-   ucontext_t context;
-+#if defined(__GLIBC__)
-   getcontext(&context);
-+#else
-+  // Extreme hack: Allow musl builds to compile - but don't expect them to work.
-+  // Although musl provides a definition for getcontext() in ucontext.h (which
-+  // enough to build libbreakpad_client) musl does not provide a corresponding
-+  // getcontext() function, so builds will fail when attempting to link anything
-+  // with libbreakpad_client. Disabling calls to getcontext() is a temporary
-+  // hack. The real fix is probably to enable Breakpad's own implementation of
-+  // getcontext() when building for musl (it's currently only enabled when
-+  // building for Android).
-+  memset (&context, 0, sizeof(context));
-+#endif
-   return HandleSignal(sig, &siginfo, &context);
- }
- 
-@@ -675,9 +687,14 @@ bool ExceptionHandler::WriteMinidump() {
-   sys_prctl(PR_SET_DUMPABLE, 1, 0, 0, 0);
- 
-   CrashContext context;
-+#if defined(__GLIBC__)
-   int getcontext_result = getcontext(&context.context);
-   if (getcontext_result)
-     return false;
-+#else
-+  // Extreme hack - see comments above.
-+  memset (&context.context, 0, sizeof(context.context));
-+#endif
- 
- #if defined(__i386__)
-   // In CPUFillFromUContext in minidumpwriter.cc the stack pointer is retrieved
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-include-sys-reg.h-to-get-__WORDSIZE-on-musl-libc.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-include-sys-reg.h-to-get-__WORDSIZE-on-musl-libc.patch
index 4583d60..3dc55cf 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-include-sys-reg.h-to-get-__WORDSIZE-on-musl-libc.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-include-sys-reg.h-to-get-__WORDSIZE-on-musl-libc.patch
@@ -7,22 +7,20 @@
  src/common/linux/elf_core_dump.h | 1 +
  1 file changed, 1 insertion(+)
 
-Index: git/src/common/linux/elf_core_dump.h
-===================================================================
---- git.orig/src/common/linux/elf_core_dump.h
-+++ git/src/common/linux/elf_core_dump.h
-@@ -33,10 +33,13 @@
+--- a/src/common/linux/elf_core_dump.h
++++ b/src/common/linux/elf_core_dump.h
+@@ -33,10 +33,14 @@
  #ifndef COMMON_LINUX_ELF_CORE_DUMP_H_
  #define COMMON_LINUX_ELF_CORE_DUMP_H_
  
 +#include <config.h>
  #include <elf.h>
+ #include <limits.h>
  #include <link.h>
  #include <stddef.h>
--
 +#ifdef HAVE_SYS_REG_H
 +#include <sys/reg.h>
 +#endif
+ 
  #include "common/memory_range.h"
  
- namespace google_breakpad {
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-Use-_fpstate-instead-of-_libc_fpstate-on-linux.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-Use-_fpstate-instead-of-_libc_fpstate-on-linux.patch
deleted file mode 100644
index 6c097cd..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-Use-_fpstate-instead-of-_libc_fpstate-on-linux.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From 0ba1b3e35e7c743b670bedc3e90001dfb868df10 Mon Sep 17 00:00:00 2001
-From: Felix Janda <felix.janda@posteo.de>
-Date: Sun, 1 Feb 2015 13:45:51 +0100
-Subject: [PATCH 2/6] Use _fpstate instead of _libc_fpstate on linux
-
-glibc defines both. musl libc only the former.
----
- src/client/linux/dump_writer_common/ucontext_reader.cc | 4 ++--
- src/client/linux/dump_writer_common/ucontext_reader.h  | 2 +-
- src/client/linux/minidump_writer/minidump_writer.h     | 2 +-
- 3 files changed, 4 insertions(+), 4 deletions(-)
-
-Index: git/src/client/linux/dump_writer_common/ucontext_reader.cc
-===================================================================
---- git.orig/src/client/linux/dump_writer_common/ucontext_reader.cc
-+++ git/src/client/linux/dump_writer_common/ucontext_reader.cc
-@@ -49,7 +49,7 @@ uintptr_t UContextReader::GetInstruction
- }
- 
- void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
--                                    const struct _libc_fpstate* fp) {
-+                                    const struct _fpstate* fp) {
-   const greg_t* regs = uc->uc_mcontext.gregs;
- 
-   out->context_flags = MD_CONTEXT_X86_FULL |
-@@ -97,7 +97,7 @@ uintptr_t UContextReader::GetInstruction
- }
- 
- void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
--                                    const struct _libc_fpstate* fpregs) {
-+                                    const struct _fpstate* fpregs) {
-   const greg_t* regs = uc->uc_mcontext.gregs;
- 
-   out->context_flags = MD_CONTEXT_AMD64_FULL;
-Index: git/src/client/linux/dump_writer_common/ucontext_reader.h
-===================================================================
---- git.orig/src/client/linux/dump_writer_common/ucontext_reader.h
-+++ git/src/client/linux/dump_writer_common/ucontext_reader.h
-@@ -50,7 +50,7 @@ struct UContextReader {
-   //   info: the collection of register structures.
- #if defined(__i386__) || defined(__x86_64)
-   static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
--                             const struct _libc_fpstate* fp);
-+                             const struct _fpstate* fp);
- #elif defined(__aarch64__)
-   static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
-                              const struct fpsimd_context* fpregs);
-Index: git/src/client/linux/minidump_writer/minidump_writer.h
-===================================================================
---- git.orig/src/client/linux/minidump_writer/minidump_writer.h
-+++ git/src/client/linux/minidump_writer/minidump_writer.h
-@@ -48,7 +48,7 @@ class ExceptionHandler;
- #if defined(__aarch64__)
- typedef struct fpsimd_context fpstate_t;
- #elif !defined(__ARM_EABI__) && !defined(__mips__)
--typedef struct _libc_fpstate fpstate_t;
-+typedef struct _fpstate fpstate_t;
- #endif
- 
- // These entries store a list of memory regions that the client wants included
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-sys-signal.h-is-a-nonportable-alias-for-signal.h.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-sys-signal.h-is-a-nonportable-alias-for-signal.h.patch
deleted file mode 100644
index cfd9a9b..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-sys-signal.h-is-a-nonportable-alias-for-signal.h.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 15582e19c2545d5ffe8ff07f957d0ed602aeca74 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 14 Sep 2017 23:15:09 -0700
-Subject: [PATCH 2/5] <sys/signal.h> is a nonportable alias for <signal.h>
-
-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 05936d28..cca023fd 100644
---- a/src/client/linux/handler/exception_handler.cc
-+++ b/src/client/linux/handler/exception_handler.cc
-@@ -78,7 +78,7 @@
- #include <sys/wait.h>
- #include <unistd.h>
- 
--#include <sys/signal.h>
-+#include <signal.h>
- #include <sys/ucontext.h>
- #include <sys/user.h>
- #include <ucontext.h>
--- 
-2.14.1
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0003-Dont-include-stab.h.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0003-Dont-include-stab.h.patch
index 2593ea9..76b2088 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0003-Dont-include-stab.h.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0003-Dont-include-stab.h.patch
@@ -10,10 +10,8 @@
  src/common/stabs_reader_unittest.cc |  1 -
  3 files changed, 11 insertions(+), 3 deletions(-)
 
-Index: git/src/common/stabs_reader.cc
-===================================================================
---- git.orig/src/common/stabs_reader.cc
-+++ git/src/common/stabs_reader.cc
+--- a/src/common/stabs_reader.cc
++++ b/src/common/stabs_reader.cc
 @@ -34,7 +34,9 @@
  #include "common/stabs_reader.h"
  
@@ -24,10 +22,8 @@
  #include <string.h>
  
  #include <string>
-Index: git/src/common/stabs_reader.h
-===================================================================
---- git.orig/src/common/stabs_reader.h
-+++ git/src/common/stabs_reader.h
+--- a/src/common/stabs_reader.h
++++ b/src/common/stabs_reader.h
 @@ -58,6 +58,30 @@
  #elif defined(HAVE_A_OUT_H)
  #include <a.out.h>
@@ -59,10 +55,8 @@
  
  #include <string>
  #include <vector>
-Index: git/src/common/stabs_reader_unittest.cc
-===================================================================
---- git.orig/src/common/stabs_reader_unittest.cc
-+++ git/src/common/stabs_reader_unittest.cc
+--- a/src/common/stabs_reader_unittest.cc
++++ b/src/common/stabs_reader_unittest.cc
 @@ -33,7 +33,9 @@
  
  #include <assert.h>
@@ -73,16 +67,14 @@
  #include <stdarg.h>
  #include <stdlib.h>
  #include <string.h>
-Index: git/configure.ac
-===================================================================
---- git.orig/configure.ac
-+++ git/configure.ac
+--- a/configure.ac
++++ b/configure.ac
 @@ -72,7 +72,7 @@ AC_ARG_ENABLE(m32,
  AC_HEADER_STDC
  AC_SYS_LARGEFILE
  AX_PTHREAD
--AC_CHECK_HEADERS([a.out.h sys/random.h])
-+AC_CHECK_HEADERS([a.out.h stab.h sys/random.h])
- AC_CHECK_FUNCS([arc4random getrandom])
- 
- AX_CXX_COMPILE_STDCXX(11, noext, mandatory)
+-AC_CHECK_HEADERS([a.out.h sys/mman.h sys/random.h])
++AC_CHECK_HEADERS([a.out.h stab.h sys/mman.h sys/random.h])
+ AC_CHECK_FUNCS([arc4random getcontext getrandom memfd_create])
+ AM_CONDITIONAL([HAVE_GETCONTEXT], [test "x$ac_cv_func_getcontext" = xyes])
+ AM_CONDITIONAL([HAVE_MEMFD_CREATE], [test "x$ac_cv_func_memfd_create" = xyes])
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0004-elf_reader.cc-include-sys-reg.h-to-get-__WORDSIZE-on.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0004-elf_reader.cc-include-sys-reg.h-to-get-__WORDSIZE-on.patch
index 525a155..5892cfa 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0004-elf_reader.cc-include-sys-reg.h-to-get-__WORDSIZE-on.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0004-elf_reader.cc-include-sys-reg.h-to-get-__WORDSIZE-on.patch
@@ -9,35 +9,33 @@
  src/common/dwarf/elf_reader.cc | 1 +
  1 file changed, 1 insertion(+)
 
-Index: git/src/common/dwarf/elf_reader.cc
-===================================================================
---- git.orig/src/common/dwarf/elf_reader.cc
-+++ git/src/common/dwarf/elf_reader.cc
-@@ -29,10 +29,13 @@
- #ifndef _GNU_SOURCE
+--- a/src/common/dwarf/elf_reader.cc
++++ b/src/common/dwarf/elf_reader.cc
+@@ -30,12 +30,16 @@
  #define _GNU_SOURCE  // needed for pread()
  #endif
--
+ 
 +#include <config.h>
- #include <sys/types.h>
- #include <sys/stat.h>
+ #include <fcntl.h>
+ #include <limits.h>
+ #include <string.h>
  #include <sys/mman.h>
+ #include <sys/stat.h>
+ #include <sys/types.h>
 +#ifdef HAVE_SYS_REG_H
 +#include <sys/reg.h>
 +#endif
  #include <unistd.h>
- #include <fcntl.h>
- #include <string.h>
-Index: git/configure.ac
-===================================================================
---- git.orig/configure.ac
-+++ git/configure.ac
+ 
+ #include <algorithm>
+--- a/configure.ac
++++ b/configure.ac
 @@ -72,7 +72,7 @@ AC_ARG_ENABLE(m32,
  AC_HEADER_STDC
  AC_SYS_LARGEFILE
  AX_PTHREAD
--AC_CHECK_HEADERS([a.out.h stab.h sys/random.h])
-+AC_CHECK_HEADERS([a.out.h stab.h sys/random.h sys/reg.h])
- AC_CHECK_FUNCS([arc4random getrandom])
- 
- AX_CXX_COMPILE_STDCXX(11, noext, mandatory)
+-AC_CHECK_HEADERS([a.out.h stab.h sys/mman.h sys/random.h])
++AC_CHECK_HEADERS([a.out.h stab.h sys/mman.h sys/random.h sys/reg.h])
+ AC_CHECK_FUNCS([arc4random getcontext getrandom memfd_create])
+ AM_CONDITIONAL([HAVE_GETCONTEXT], [test "x$ac_cv_func_getcontext" = xyes])
+ AM_CONDITIONAL([HAVE_MEMFD_CREATE], [test "x$ac_cv_func_memfd_create" = xyes])
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/mips_asm_sgidefs.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/mips_asm_sgidefs.patch
index 19bb560..96f5f48 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/mips_asm_sgidefs.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/mips_asm_sgidefs.patch
@@ -1,12 +1,9 @@
-Index: lss/linux_syscall_support.h
-===================================================================
---- lss.orig/linux_syscall_support.h
-+++ lss/linux_syscall_support.h
-@@ -118,21 +118,13 @@ extern "C" {
- #include <endian.h>
+--- a/linux_syscall_support.h
++++ b/linux_syscall_support.h
+@@ -119,14 +119,7 @@ extern "C" {
  
  #ifdef __mips__
--/* Include definitions of the ABI currently in use.                          */
+ /* Include definitions of the ABI currently in use.                          */
 -#ifdef __ANDROID__
 -/* Android doesn't have sgidefs.h, but does have asm/sgidefs.h,
 - * which has the definitions we need.
@@ -18,10 +15,3 @@
  #endif
  #endif
  
- /* The Android NDK's <sys/stat.h> #defines these macros as aliases
-  * to their non-64 counterparts. To avoid naming conflict, remove them. */
--#ifdef __ANDROID__
-+#if defined(__ANDROID__) || (defined(__linux__) && !defined(__glibc__))
-   /* These are restored by the corresponding #pragma pop_macro near
-    * the end of this file. */
- # pragma push_macro("stat64")
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 daf262e..81955f4 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
@@ -6,11 +6,13 @@
 DESCRIPTION = "Breakpad is a library and tool suite that allows you to distribute an application to users with compiler-provided debugging information removed, record crashes in compact \"minidump\" files, send them back to your server, and produce C and C++ stack traces from these minidumps. "
 HOMEPAGE = "https://code.google.com/p/google-breakpad/"
 LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=56c24a43c81c3af6fcf590851931489e"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=8bb274ebd1901085fd71a8d8afe8831b"
 SECTION = "libs"
 
 inherit autotools
 
+DEPENDS_append_libc-musl = " libucontext"
+
 BBCLASSEXTEND = "native"
 
 PE = "2"
@@ -19,27 +21,25 @@
 
 SRCREV_FORMAT = "breakpad_gtest_protobuf_lss_gyp"
 
-SRCREV_breakpad = "0c0e24f709288a129d665ec27d6f089189318385"
+SRCREV_breakpad = "8b22babdf894e5aa98b2dbbe103f7e3856a71944"
 #v1.10.0
-SRCREV_gtest = "5ec7f0c4a113e2f18ac2c6cc7df51ad6afc24081"
+SRCREV_gtest = "4fe018038f87675c083d0cfb6a6b57c274fb1753"
 SRCREV_protobuf = "cb6dd4ef5f82e41e06179dcd57d3b1d9246ad6ac"
-SRCREV_lss = "8048ece6c16c91acfe0d36d1d3cc0890ab6e945c"
+SRCREV_lss = "fd00dbbd0c06a309c657d89e9430143b179ff6db"
 SRCREV_gyp = "324dd166b7c0b39d513026fa52d6280ac6d56770"
 
-SRC_URI = "git://github.com/google/breakpad;name=breakpad \
+SRC_URI = "git://github.com/google/breakpad;name=breakpad;branch=main \
            git://github.com/google/googletest.git;destsuffix=git/src/testing/gtest;name=gtest \
-           git://github.com/google/protobuf.git;destsuffix=git/src/third_party/protobuf/protobuf;name=protobuf \
-           git://chromium.googlesource.com/linux-syscall-support;protocol=https;destsuffix=git/src/third_party/lss;name=lss \
+           git://github.com/protocolbuffers/protobuf.git;destsuffix=git/src/third_party/protobuf/protobuf;name=protobuf \
+           git://chromium.googlesource.com/linux-syscall-support;protocol=https;branch=main;destsuffix=git/src/third_party/lss;name=lss \
            git://chromium.googlesource.com/external/gyp;protocol=https;destsuffix=git/src/tools/gyp;name=gyp \
            file://0001-include-sys-reg.h-to-get-__WORDSIZE-on-musl-libc.patch \
            file://0003-Fix-conflict-between-musl-libc-dirent.h-and-lss.patch \
            file://0001-Turn-off-sign-compare-for-musl-libc.patch \
-           file://0002-sys-signal.h-is-a-nonportable-alias-for-signal.h.patch \
            file://0003-Dont-include-stab.h.patch \
            file://0004-elf_reader.cc-include-sys-reg.h-to-get-__WORDSIZE-on.patch \
-           file://0002-Use-_fpstate-instead-of-_libc_fpstate-on-linux.patch \
            file://mcontext.patch \
-           file://0001-disable-calls-to-getcontext-with-musl.patch \
+           file://0001-Remove-HAVE_GETCONTEXT-check-to-add-local-implementa.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 \
@@ -47,8 +47,11 @@
 S = "${WORKDIR}/git"
 
 CXXFLAGS += "-D_GNU_SOURCE"
+LDFLAGS_append_libc-musl = " -lucontext"
 
 COMPATIBLE_HOST_powerpc = "null"
+COMPATIBLE_HOST_powerpc64 = "null"
+COMPATIBLE_HOST_powerpc64le = "null"
 COMPATIBLE_HOST_riscv64 = "null"
 COMPATIBLE_HOST_riscv32 = "null"
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.1.bb b/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.4.bb
similarity index 93%
rename from meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.1.bb
rename to meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.4.bb
index 358ec80..03de499 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.1.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.36.4.bb
@@ -10,8 +10,13 @@
 DEPENDS_append_class-target = " googletest grpc-native "
 DEPENDS_append_class-nativesdk = " grpc-native "
 
+PACKAGE_BEFORE_PN = "${PN}-compiler"
+
+RDEPENDS_${PN}-compiler = "${PN}"
+RDEPENDS_${PN}-dev += "${PN}-compiler"
+
 S = "${WORKDIR}/git"
-SRCREV_grpc = "3b7f86e3516746c5f0db1947e0d65e94159bcb12"
+SRCREV_grpc = "3e53dbe8213137d2c731ecd4d88ebd2948941d75"
 BRANCH = "v1.36.x"
 SRC_URI = "git://github.com/grpc/grpc.git;protocol=https;name=grpc;branch=${BRANCH} \
            "
@@ -72,4 +77,4 @@
 
 SYSROOT_DIRS_BLACKLIST_append_class-target = " ${baselib}/cmake/grpc"
 
-FILES_${PN}-dev += "${bindir}"
+FILES_${PN}-compiler += "${bindir}"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.7.bb b/meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.8.bb
similarity index 77%
rename from meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.7.bb
rename to meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.8.bb
index 88fad93..6277c41 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.7.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.8.bb
@@ -1,4 +1,4 @@
-SUMMARY = "runtime performance analyzer"
+SUMMARY = "performance analyzer"
 HOMEPAGE = "https://github.com/iipeace/guider"
 BUGTRACKER = "https://github.com/iipeace/guider/issues"
 AUTHOR = "Peace Lee <ipeace5@gmail.com>"
@@ -6,10 +6,10 @@
 LICENSE = "GPLv2+"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=2c1c00f9d3ed9e24fa69b932b7e7aff2"
 
-PV = "3.9.7+git${SRCPV}"
+PV = "3.9.8+git${SRCPV}"
 
 SRC_URI = "git://github.com/iipeace/${BPN}"
-SRCREV = "459b5189a46023fc98e19888b196bdc2674022fd"
+SRCREV = "a502cd93b13235b7539557a91328de00b7c51bc3"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.9.3.bb b/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.9.4.bb
similarity index 82%
rename from meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.9.3.bb
rename to meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.9.4.bb
index e41907d..a02ff4a 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.9.3.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.9.4.bb
@@ -13,13 +13,13 @@
 
 PE = "1"
 
-SRCREV = "6aba23f4a8628d599a9ef7fa4811c4ff6e4070e2"
+SRCREV = "9059f5cad030ba11d37818847443a53918c327b1"
 SRC_URI = "git://github.com/open-source-parsers/jsoncpp"
 
 S = "${WORKDIR}/git"
 
 inherit cmake
 
-EXTRA_OECMAKE += "-DBUILD_SHARED_LIBS=ON -DJSONCPP_WITH_TESTS=OFF"
+EXTRA_OECMAKE += "-DBUILD_SHARED_LIBS=ON -DBUILD_OBJECT_LIBS=OFF -DJSONCPP_WITH_TESTS=OFF"
 
 BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.3.bb b/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.4.bb
similarity index 77%
rename from meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.3.bb
rename to meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.4.bb
index 576eff6..832254a 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.3.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.4.bb
@@ -18,5 +18,5 @@
     done
 }
 
-SRC_URI[archive.md5sum] = "e574b3952b93d219b5ec7c74c5892c33"
-SRC_URI[archive.sha256sum] = "d0b5edefc88cbca5f1709d19fa62aef490922c6577a14ac4e7b085507911a5de"
+SRC_URI[archive.md5sum] = "4d7d6f1f8054f1b3466c752ac2e50946"
+SRC_URI[archive.sha256sum] = "524c1bf390f9cdda4fbd9a47b269980dc64ab5280f0801b53bc69d782c72de0e"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/add_ppc64le.patch b/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/add_ppc64le.patch
new file mode 100644
index 0000000..dff61b1
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/add_ppc64le.patch
@@ -0,0 +1,39 @@
+--- a/sysdeps/linux-gnu/ppc/ptrace.h
++++ b/sysdeps/linux-gnu/ppc/ptrace.h
+@@ -18,4 +18,5 @@
+  * 02110-1301 USA
+  */
+ 
++#include <asm/ptrace.h>
+ #include <sys/ptrace.h>
+--- a/sysdeps/linux-gnu/ppc/regs.c
++++ b/sysdeps/linux-gnu/ppc/regs.c
+@@ -23,11 +23,14 @@
+ 
+ #include "config.h"
+ 
++#include <string.h>
+ #include <sys/types.h>
+ #include <sys/ptrace.h>
+ #include <asm/ptrace.h>
+ #include <errno.h>
++#ifdef HAVE_ERROR_H
+ #include <error.h>
++#endif
+ 
+ #include "proc.h"
+ #include "common.h"
+@@ -49,8 +52,11 @@ get_instruction_pointer(struct process *
+ void
+ set_instruction_pointer(struct process *proc, void *addr)
+ {
+-	if (ptrace(PTRACE_POKEUSER, proc->pid, sizeof(long)*PT_NIP, addr) != 0)
+-		error(0, errno, "set_instruction_pointer");
++	if (ptrace(PTRACE_POKEUSER, proc->pid, sizeof(long)*PT_NIP, addr) != 0){
++		report_global_error("%s: set_instruction_pointer",
++			strerror(errno));
++		exit(1);
++	}
+ }
+ 
+ void *
diff --git a/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb b/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
index 5710943..17264ce 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
@@ -30,6 +30,8 @@
            file://0001-Bug-fix-for-data-type-length-judgment.patch \
            file://0001-ensure-the-struct-pointers-are-null-initilized.patch \
            "
+SRC_URI_append_libc-musl = " file://add_ppc64le.patch"
+
 S = "${WORKDIR}/git"
 
 inherit autotools
diff --git a/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd/0001-nsswitch.y-Replace-empty-bison-extension.patch b/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd/0001-nsswitch.y-Replace-empty-bison-extension.patch
new file mode 100644
index 0000000..67c8b1b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd/0001-nsswitch.y-Replace-empty-bison-extension.patch
@@ -0,0 +1,50 @@
+From 82e51fb8ba2640b318826ef4e17b0f5c09c8dded Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 8 Mar 2021 20:10:18 -0800
+Subject: [PATCH] nsswitch.y: Replace %empty bison extension
+
+POSIX compliant yacc do not understand %empty therefore replace it with
+/* empty */
+
+https://github.com/pikhq/musl-nscd/issues/13
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/nsswitch.y | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/nsswitch.y b/src/nsswitch.y
+index 107073b..0b7c71e 100644
+--- a/src/nsswitch.y
++++ b/src/nsswitch.y
+@@ -38,7 +38,7 @@ top:
+ 	;
+ 
+ file:
+-	%empty {
++	/* empty */ {
+ 		list_init(&$$);
+ 	}
+ 	| file line {
+@@ -88,7 +88,7 @@ modifier:
+ 	;
+ 
+ modifiers:
+-	%empty {
++	/* empty */ {
+ 		memcpy($$, default_actions, sizeof($$));
+ 	}
+ 	| modifiers modifier {
+@@ -112,7 +112,7 @@ item:
+ 	;
+ 
+ list:
+-	%empty {
++	/* empty */ {
+ 		list_init(&$$);
+ 	}
+ 	| list item {
+-- 
+2.30.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd_git.bb b/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd_git.bb
index 83125a1..6af7ab9 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/musl/musl-nscd_git.bb
@@ -15,6 +15,7 @@
 SRC_URI = "git://github.com/pikhq/musl-nscd \
            file://0001-Fix-build-under-GCC-fno-common.patch \
            file://0001-configure-Check-for-flex-if-lex-is-not-found.patch \
+           file://0001-nsswitch.y-Replace-empty-bison-extension.patch \
           "
 
 UPSTREAM_CHECK_COMMITS = "1"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.20.2.bb b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.21.0.bb
similarity index 97%
rename from meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.20.2.bb
rename to meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.21.0.bb
index 6acc36b..3a2822c 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.20.2.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_12.21.0.bb
@@ -26,7 +26,7 @@
 SRC_URI_append_class-target = " \
            file://0002-Using-native-binaries.patch \
            "
-SRC_URI[sha256sum] = "961ad600f0706c396390ebc7767fb01d5e3792a5022dc2e7774796756eec6d3c"
+SRC_URI[sha256sum] = "052f37ace6f569b513b5a1154b2a45d3c4d8b07d7d7c807b79f1566db61e979d"
 
 S = "${WORKDIR}/node-v${PV}"
 
@@ -39,7 +39,7 @@
     if   re.match('i.86$', a): return 'ia32'
     elif re.match('x86_64$', a): return 'x64'
     elif re.match('aarch64$', a): return 'arm64'
-    elif re.match('(powerpc64|ppc64le)$', a): return 'ppc64'
+    elif re.match('(powerpc64|powerpc64le)$', a): return 'ppc64'
     elif re.match('powerpc$', a): return 'ppc'
     return a
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/openocd/openocd_git.bb b/meta-openembedded/meta-oe/recipes-devtools/openocd/openocd_git.bb
index 05e06a2..85add50 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/openocd/openocd_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/openocd/openocd_git.bb
@@ -12,12 +12,12 @@
 "
 
 SRCREV_FORMAT = "openocd"
-SRCREV_openocd = "d46f28c2ea2611f5fbbc679a5eed253d3dcd2fe3"
+SRCREV_openocd = "f342aac0845a69d591ad39a025d74e9c765f6420"
 SRCREV_git2cl = "8373c9f74993e218a08819cbcdbab3f3564bbeba"
 SRCREV_jimtcl = "0aa0fb4e3a38d38a49de9eb585d93d63a370dcf6"
 SRCREV_libjaylink = "9aa7a5957c07bb6e862fc1a6d3153d109c7407e4"
 
-PV = "0.10+gitr${SRCPV}"
+PV = "0.11+gitr${SRCPV}"
 S = "${WORKDIR}/git"
 
 inherit pkgconfig autotools-brokensep gettext
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php_7.4.9.bb b/meta-openembedded/meta-oe/recipes-devtools/php/php_7.4.9.bb
index f8a8755..e19d5dd 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php_7.4.9.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php_7.4.9.bb
@@ -214,6 +214,8 @@
 RDEPENDS_${PN}-modphp = "${PN} apache2"
 RDEPENDS_${PN}-opcache = "${PN}"
 
+ALLOW_EMPTY_${PN} = "1"
+
 INITSCRIPT_PACKAGES = "${PN}-fpm"
 inherit update-rc.d
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/ply/ply_git.bb b/meta-openembedded/meta-oe/recipes-devtools/ply/ply_git.bb
index 7d693b3..b1327ef 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/ply/ply_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/ply/ply_git.bb
@@ -5,11 +5,13 @@
 
 DEPENDS += "bison-native"
 
+PV = "2.1.1+git${SRCPV}"
+
 SRC_URI = "git://github.com/iovisor/ply"
-SRCREV = "aa5b9ac31307ec1acece818be334ef801c802a12"
+SRCREV = "e25c9134b856cc7ffe9f562ff95caf9487d16b59"
 
 S = "${WORKDIR}/git"
 
 inherit autotools-brokensep
 
-COMPATIBLE_HOST = "(x86_64.*|aarch64.*|arm.*|powerpc.*)-linux"
+COMPATIBLE_HOST = "(x86_64.*|aarch64.*|arm.*|powerpc)-linux"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/tclap/files/0001-tclap-add-pkg-config-file.patch b/meta-openembedded/meta-oe/recipes-devtools/tclap/files/0001-tclap-add-pkg-config-file.patch
new file mode 100644
index 0000000..58c9aec
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/tclap/files/0001-tclap-add-pkg-config-file.patch
@@ -0,0 +1,50 @@
+From 9d47d2fd45c455339759dbfe9a0d6fd24b0a0fa1 Mon Sep 17 00:00:00 2001
+From: Yi Zhao <yi.zhao@windriver.com>
+Date: Wed, 24 Mar 2021 15:39:36 +0800
+Subject: [PATCH] tclap: add pkg-config file
+
+The tclap switched from autotools to CMake in 1.4.0 and drop the
+pkg-config file tclap.pc. Some projects (e.g. ima-inspect) still require
+it. So add it back.
+
+Upstream-Status: Pending
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ CMakeLists.txt | 5 +++++
+ tclap.pc.in    | 7 +++++++
+ 2 files changed, 12 insertions(+)
+ create mode 100644 tclap.pc.in
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c2c9a26..b56eac7 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -25,6 +25,11 @@ install(FILES "${PROJECT_BINARY_DIR}/tclap/TCLAPConfig.h"
+   DESTINATION include/tclap
+   )
+ 
++configure_file(${CMAKE_CURRENT_SOURCE_DIR}/tclap.pc.in
++  ${CMAKE_CURRENT_BINARY_DIR}/tclap.pc @ONLY)
++install(FILES ${CMAKE_CURRENT_BINARY_DIR}/tclap.pc
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
++
+ add_subdirectory(docs)
+ add_subdirectory(examples)
+ add_subdirectory(tests)
+diff --git a/tclap.pc.in b/tclap.pc.in
+new file mode 100644
+index 0000000..ef51c94
+--- /dev/null
++++ b/tclap.pc.in
+@@ -0,0 +1,7 @@
++prefix=@CMAKE_INSTALL_PREFIX@
++includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
++
++Name: tclap
++Description: Templatized C++ Command Line Parser
++Version: @PROJECT_VERSION@
++Cflags: -I${includedir}
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap/Makefile.am-disable-docs.patch b/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap/Makefile.am-disable-docs.patch
deleted file mode 100644
index 358cbef..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap/Makefile.am-disable-docs.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From c209ed0e7ffca32fe3714bad9cc54bdb00c286bb Mon Sep 17 00:00:00 2001
-From: Ting Liu <b28495@freescale.com>
-Date: Mon, 15 Apr 2013 16:28:37 +0800
-Subject: [PATCH] Makefile.am: disable docs
-
-Upstream-Status: Inappropriate [OE specific]
-
-docs need some generating tool (for example, doxygen) from host which may
-be not available. Disable it to avoid build issue.
-
-Signed-off-by: Ting Liu <b28495@freescale.com>
----
- Makefile.am |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index 0a6ebc9..6b42f41 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -1,7 +1,7 @@
- 
- ACLOCAL_AMFLAGS = -I config
- 
--SUBDIRS = include examples docs tests msc config
-+SUBDIRS = include examples tests msc config
- 
- pkgconfigdir = $(libdir)/pkgconfig
- pkgconfig_DATA = $(PACKAGE).pc
--- 
-1.7.5
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.2.2.bb b/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.2.2.bb
deleted file mode 100644
index bba8d5c..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.2.2.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-SUMMARY = "Templatized C++ Command Line Parser"
-HOMEPAGE = "http://tclap.sourceforge.net/"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=0ca8b9c5c5445cfa7af7e78fd27e60ed"
-
-SRCREV = "ec3ddcfe41b0544a4551a57439b6b3682fe31479"
-SRC_URI = "git://git.code.sf.net/p/tclap/code;branch=1.2 \
-    file://Makefile.am-disable-docs.patch \
-"
-
-S = "${WORKDIR}/git"
-inherit autotools
-
-ALLOW_EMPTY_${PN} = "1"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.4.0.bb b/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.4.0.bb
new file mode 100644
index 0000000..7c8224b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/tclap/tclap_1.4.0.bb
@@ -0,0 +1,23 @@
+SUMMARY = "Templatized C++ Command Line Parser"
+HOMEPAGE = "http://tclap.sourceforge.net/"
+DESCRIPTION = "TCLAP is a small, flexible library that provides a simple interface \
+for defining and accessing command line arguments. It was intially inspired by the \
+user friendly CLAP libary. The difference is that this library is templatized, so \
+the argument class is type independent. Type independence avoids identical-except-for-type \
+objects, such as IntArg, FloatArg, and StringArg. While the library is not strictly \
+compliant with the GNU or POSIX standards, it is close. \
+"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5c64b2e8cc50917b2744a90950faa7cd"
+
+SRCREV = "799a8b1f99818e39fee19d0601030770af1221e1"
+SRC_URI = "git://git.code.sf.net/p/tclap/code;branch=1.4 \
+           file://0001-tclap-add-pkg-config-file.patch \
+"
+
+S = "${WORKDIR}/git"
+inherit cmake
+
+ALLOW_EMPTY_${PN} = "1"
+
+BBCLASSEXTEND = "native nativesdk"