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-kernel/bpftool/bpftool.bb b/meta-openembedded/meta-oe/recipes-kernel/bpftool/bpftool.bb
index 1758430..f0696db 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/bpftool/bpftool.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/bpftool/bpftool.bb
@@ -9,12 +9,22 @@
 
 do_populate_lic[depends] += "virtual/kernel:do_patch"
 
-EXTRA_OEMAKE = "V=1 -C ${S}/tools/bpf/bpftool O=${B} CROSS=${TARGET_PREFIX} CC="${CC}" LD="${LD}" AR=${AR} ARCH=${ARCH}"
+EXTRA_OEMAKE = "\
+    V=1 \
+    -C ${S}/tools/bpf/bpftool \
+    O=${B} \
+    CROSS=${TARGET_PREFIX} \
+    CC="${CC} ${DEBUG_PREFIX_MAP} -fdebug-prefix-map=${STAGING_KERNEL_DIR}=${KERNEL_SRC_PATH}" \
+    LD="${LD}" \
+    AR=${AR} \
+    ARCH=${ARCH} \
+"
 
 SECURITY_CFLAGS = ""
 
 do_configure[depends] += "virtual/kernel:do_shared_workdir"
 
+COMPATIBLE_HOST = "(x86_64).*-linux"
 COMPATIBLE_HOST_libc-musl = 'null'
 
 do_compile() {
@@ -32,4 +42,3 @@
 }
 
 B = "${WORKDIR}/${BPN}-${PV}"
-PNBLACKLIST[bpftool] ?= "Needs forward porting to kernel 5.2+"
diff --git a/meta-openembedded/meta-oe/recipes-kernel/libbpf/libbpf_0.3.bb b/meta-openembedded/meta-oe/recipes-kernel/libbpf/libbpf_0.3.bb
index 5714ddb..57e8376 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/libbpf/libbpf_0.3.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/libbpf/libbpf_0.3.bb
@@ -10,6 +10,8 @@
 
 DEPENDS = "zlib elfutils"
 
+do_compile[depends] += "virtual/kernel:do_shared_workdir"
+
 SRC_URI = "git://github.com/libbpf/libbpf.git;protocol=https"
 SRCREV = "051a4009f94d5633a8f734ca4235f0a78ee90469"
 
@@ -23,6 +25,8 @@
 
 EXTRA_OEMAKE += "DESTDIR=${D} LIBDIR=${libdir}"
 
+inherit pkgconfig
+
 do_compile() {
 	if grep -q "CONFIG_BPF_SYSCALL=y" ${STAGING_KERNEL_BUILDDIR}/.config
 	then
@@ -40,5 +44,3 @@
 		bbnote "no files to install"
 	fi
 }
-
-BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Fix-build-with-musl.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Fix-build-with-musl.patch
new file mode 100644
index 0000000..6119122
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Fix-build-with-musl.patch
@@ -0,0 +1,55 @@
+From 5ed9bda8baf7465172a99ff86ed7f46397b06c7f Mon Sep 17 00:00:00 2001
+From: Andrew Savchenko <bircoph@gmail.com>
+Date: Sat, 5 Sep 2020 14:41:30 +0300
+Subject: [PATCH 01/10] Fix build with musl
+
+--Signature=_Sat__5_Sep_2020_14_41_30_+0300_B.qpPPwu83bbA.32
+Content-Type: text/plain; charset=US-ASCII
+Content-Disposition: inline
+Content-Transfer-Encoding: quoted-printable
+
+When musl is used instead of glibc, oprofile build fails because it
+uses glibc-specific FTW extension: FTW_ACTIONRETVAL for custom
+__delete_old_previous_sample_data return codes and FTW_STOP,
+FTW_CONTINUE for such return codes. Musl supports only POSIX ftw, so
+build fails.
+
+However, this extension is not really needed by oprofile, because
+FTW_SKIP_* are not used and {FTW_STOP,FTW_CONTINUE} can be handled
+by standard return codes {1,0} (more precisely standard defines
+{!0,0}, but in glibc FTW_STOP = 1, so I keep this value).
+
+Upstream-Status: Backport [https://sourceforge.net/p/oprofile/oprofile/ci/5ed9bda8baf7465172a99ff86ed7f46397b06c7f/]
+Signed-off-by: Andrew Savchenko <bircoph@gmail.com>
+---
+ pe_profiling/operf.cpp | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/pe_profiling/operf.cpp b/pe_profiling/operf.cpp
+index 06a0ea3c..00834409 100644
+--- a/pe_profiling/operf.cpp
++++ b/pe_profiling/operf.cpp
+@@ -860,9 +860,9 @@ static int __delete_old_previous_sample_data(const char *fpath,
+ {
+ 	if (remove(fpath)) {
+ 		perror("sample data removal error");
+-		return FTW_STOP;
++		return 1;
+ 	} else {
+-		return FTW_CONTINUE;
++		return 0;
+ 	}
+ }
+ 
+@@ -897,7 +897,7 @@ static void convert_sample_data(void)
+ 		return;
+ 
+ 	if (!operf_options::append) {
+-                int flags = FTW_DEPTH | FTW_ACTIONRETVAL;
++		int flags = FTW_DEPTH;
+ 		errno = 0;
+ 		if (nftw(previous_sampledir.c_str(), __delete_old_previous_sample_data, 32, flags) !=0 &&
+ 				errno != ENOENT) {
+-- 
+2.31.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Use-new-bfd-APIs-from-2.34.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Use-new-bfd-APIs-from-2.34.patch
deleted file mode 100644
index faf56d1..0000000
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Use-new-bfd-APIs-from-2.34.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-From 34745fb066a266ae6bbb15d08466d4d2cb6a2110 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 20 Feb 2020 08:11:04 -0800
-Subject: [PATCH] Use new bfd APIs from 2.34+
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- libutil++/bfd_support.cpp | 10 +++++-----
- opjitconv/create_bfd.c    |  6 +++---
- 2 files changed, 8 insertions(+), 8 deletions(-)
-
-diff --git a/libutil++/bfd_support.cpp b/libutil++/bfd_support.cpp
-index fa904839..e53a1530 100644
---- a/libutil++/bfd_support.cpp
-+++ b/libutil++/bfd_support.cpp
-@@ -137,7 +137,7 @@ static bool get_build_id(bfd * ibfd, unsigned char * build_id)
- 		}
- 	}
- 
--	bfd_size_type buildid_sect_size = bfd_section_size(ibfd, sect);
-+	bfd_size_type buildid_sect_size = bfd_section_size(sect);
- 	char * contents = (char *) xmalloc(buildid_sect_size);
- 	errno = 0;
- 	if (!bfd_get_section_contents(ibfd, sect,
-@@ -188,7 +188,7 @@ bool get_debug_link_info(bfd * ibfd, string & filename, unsigned long & crc32)
- 	if (sect == NULL)
- 		return false;
- 	
--	bfd_size_type debuglink_size = bfd_section_size(ibfd, sect);  
-+	bfd_size_type debuglink_size = bfd_section_size(sect);  
- 	char * contents = (char *) xmalloc(debuglink_size);
- 	cverb << vbfd
- 	      << ".gnu_debuglink section has size " << debuglink_size << endl;
-@@ -346,7 +346,7 @@ void fixup_linenr(bfd * abfd, asection * section, asymbol ** syms,
- 	// first restrict the search on a sensible range of vma, 16 is
- 	// an intuitive value based on epilog code look
- 	size_t max_search = 16;
--	size_t section_size = bfd_section_size(abfd, section);
-+	size_t section_size = bfd_section_size(section);
- 	if (pc + max_search > section_size)
- 		max_search = section_size - pc;
- 
-@@ -819,10 +819,10 @@ find_nearest_line(bfd_info const & b, op_bfd_symbol const & sym,
- 	else
- 		pc = (sym.value() + offset) - sym.filepos();
- 
--	if ((bfd_get_section_flags(abfd, section) & SEC_ALLOC) == 0)
-+	if ((bfd_section_flags(section) & SEC_ALLOC) == 0)
- 		goto fail;
- 
--	if (pc >= bfd_section_size(abfd, section))
-+	if (pc >= bfd_section_size(section))
- 		goto fail;
- 
- 	ret = bfd_find_nearest_line(abfd, section, syms, pc, &cfilename,
-diff --git a/opjitconv/create_bfd.c b/opjitconv/create_bfd.c
-index 48db143b..5c0e9152 100644
---- a/opjitconv/create_bfd.c
-+++ b/opjitconv/create_bfd.c
-@@ -86,12 +86,12 @@ asection * create_section(bfd * abfd, char const * section_name,
- 		bfd_perror("bfd_make_section");
- 		goto error;
- 	}
--	bfd_set_section_vma(abfd, section, vma);
--	if (bfd_set_section_size(abfd, section, size) == FALSE) {
-+	bfd_set_section_vma(section, vma);
-+	if (bfd_set_section_size(section, size) == FALSE) {
- 		bfd_perror("bfd_set_section_size");
- 		goto error;
- 	}
--	if (bfd_set_section_flags(abfd, section, flags) == FALSE) {
-+	if (bfd_set_section_flags(section, flags) == FALSE) {
- 		bfd_perror("bfd_set_section_flags");
- 		goto error;
- 	}
--- 
-2.25.1
-
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0002-Fix-configure-when-bin-sh-is-not-bash.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0002-Fix-configure-when-bin-sh-is-not-bash.patch
new file mode 100644
index 0000000..2ffdc8a
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0002-Fix-configure-when-bin-sh-is-not-bash.patch
@@ -0,0 +1,40 @@
+From 91bedd280b8a3fb4665db627559abba960be4212 Mon Sep 17 00:00:00 2001
+From: Andrew Savchenko <bircoph@gmail.com>
+Date: Sat, 5 Sep 2020 14:40:07 +0300
+Subject: [PATCH 02/10] Fix configure when /bin/sh is not bash
+
+--Signature=_Sat__5_Sep_2020_14_40_08_+0300_w+XY/NnD8_G.Kd1s
+Content-Type: text/plain; charset=US-ASCII
+Content-Disposition: inline
+Content-Transfer-Encoding: quoted-printable
+
+When /bin/sh used by autoconf is not bash, e.g. dash, configure
+fails because it uses bash-specific equality operator "==".
+
+Fix this problem by replacing "==" with POSIX "=" which is
+sufficient for test where it is being used.
+
+Upstream-Status: Backport [https://sourceforge.net/p/oprofile/oprofile/ci/91bedd280b8a3fb4665db627559abba960be4212/]
+Signed-off-by: Andrew Savchenko <bircoph@gmail.com>
+---
+ configure.ac | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 05609f6e..f5fcd17d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -466,8 +466,8 @@ AX_COPY_IF_CHANGE(doc/xsl/catalog-1.xml, doc/xsl/catalog.xml)
+ 
+ if ! test "x$enable_account_check" = "xyes"; then
+ 	:
+-elif test "`getent passwd oprofile 2>/dev/null`" == "" || \
+-     test "`getent group oprofile 2>/dev/null`" == ""; then
++elif test "`getent passwd oprofile 2>/dev/null`" = "" || \
++     test "`getent group oprofile 2>/dev/null`" = ""; then
+ 	if test `id -u` != "0"; then
+ 		echo "Warning: The user account 'oprofile:oprofile' does not exist on the system."
+ 		echo "         To profile JITed code, this special user account must exist."
+-- 
+2.31.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0003-Define-the-C-preprocessor-variable-to-improve-reprod.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0003-Define-the-C-preprocessor-variable-to-improve-reprod.patch
new file mode 100644
index 0000000..923c39a
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0003-Define-the-C-preprocessor-variable-to-improve-reprod.patch
@@ -0,0 +1,30 @@
+From 864e02eab12cdc523b2dcd3f7b87a27abc16eefc Mon Sep 17 00:00:00 2001
+From: Viktor Kleinik <vkleinik@cisco.com>
+Date: Sun, 7 Mar 2021 17:07:44 +0000
+Subject: [PATCH 03/10] Define the C preprocessor variable to improve reproducibility
+
+Define the C preprocessor variable BUILD_DATE, which can be used
+as source for reproducible build date in case when
+SOURCE_DATE_EPOCH environment variable is set.
+
+Upstream-Status: Backport [https://sourceforge.net/p/oprofile/oprofile/ci/864e02eab12cdc523b2dcd3f7b87a27abc16eefc/]
+Signed-off-by: Viktor Kleinik <vkleinik@cisco.com>
+---
+ configure.ac | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/configure.ac b/configure.ac
+index f5fcd17d..dc447f89 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -31,6 +31,7 @@ if test -n "$SOURCE_DATE_EPOCH" ; then
+ fi
+ dnl for the man page
+ DATE="`date $dateopt '+%a %d %B %Y'`"
++AC_DEFINE_UNQUOTED([BUILD_DATE], ["$DATE"], [Use reproducible build date])
+ AC_SUBST(DATE)
+ 
+ # Since we should not permanently alter user environment variables, we'll
+-- 
+2.31.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0004-Use-BUILD_DATE-to-improve-reproducibility.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0004-Use-BUILD_DATE-to-improve-reproducibility.patch
new file mode 100644
index 0000000..0fcca2b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0004-Use-BUILD_DATE-to-improve-reproducibility.patch
@@ -0,0 +1,63 @@
+From 7bef5b905abe36adfd4e4cc16bc830376f50e8f6 Mon Sep 17 00:00:00 2001
+From: Viktor Kleinik <vkleinik@cisco.com>
+Date: Sun, 7 Mar 2021 17:22:26 +0000
+Subject: [PATCH 04/10] Use BUILD_DATE to improve reproducibility
+
+The C preprocessor variable BUILD_DATE contains the actual
+build date or some reproducible value. It depends on whether
+SOURCE_DATE_EPOCH environment variable was set previously or not.
+In this way, reproducibility can be improved when needed.
+
+Upstream-Status: Backport [https://sourceforge.net/p/oprofile/oprofile/ci/864e02eab12cdc523b2dcd3f7b87a27abc16eefc/]
+Signed-off-by: Viktor Kleinik <vkleinik@cisco.com>
+---
+ libutil/op_version.c   | 2 +-
+ pe_counting/ocount.cpp | 4 ++--
+ pe_profiling/operf.cpp | 4 ++--
+ 3 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/libutil/op_version.c b/libutil/op_version.c
+index 99a844e4..a257e9c4 100644
+--- a/libutil/op_version.c
++++ b/libutil/op_version.c
+@@ -19,6 +19,6 @@ void show_version(char const * app_name)
+ {
+ 	/* Do not change the version format: it is documented in html doc */
+ 	printf("%s: " PACKAGE " " VERSION " compiled on "
+-	       __DATE__ " " __TIME__ "\n", app_name);
++	       BUILD_DATE "\n", app_name);
+ 	exit(EXIT_SUCCESS);
+ }
+diff --git a/pe_counting/ocount.cpp b/pe_counting/ocount.cpp
+index 2470745d..ae89fe61 100644
+--- a/pe_counting/ocount.cpp
++++ b/pe_counting/ocount.cpp
+@@ -660,8 +660,8 @@ static int _process_ocount_and_app_args(int argc, char * const argv[])
+ 			__print_usage_and_exit(NULL);
+ 			break;
+ 		case 'v':
+-			cout << argv[0] << ": " << PACKAGE << " " << VERSION << " compiled on " << __DATE__
+-			     << " " << __TIME__ << endl;
++			cout << argv[0] << ": " << PACKAGE << " " << VERSION << " compiled on "
++			     << BUILD_DATE << endl;
+ 			exit(EXIT_SUCCESS);
+ 			break;
+ 		default:
+diff --git a/pe_profiling/operf.cpp b/pe_profiling/operf.cpp
+index 00834409..f0f9c209 100644
+--- a/pe_profiling/operf.cpp
++++ b/pe_profiling/operf.cpp
+@@ -1342,8 +1342,8 @@ static int _process_operf_and_app_args(int argc, char * const argv[])
+ 			__print_usage_and_exit(NULL);
+ 			break;
+ 		case 'v':
+-			cout << argv[0] << ": " << PACKAGE << " " << VERSION << " compiled on " << __DATE__
+-			     << " " << __TIME__ << endl;
++			cout << argv[0] << ": " << PACKAGE << " " << VERSION << " compiled on "
++			     << BUILD_DATE << endl;
+ 			exit(EXIT_SUCCESS);
+ 			break;
+ 		default:
+-- 
+2.31.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-NIOS2-architecture.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0005-Add-rmb-definition-for-NIOS2-architecture.patch
similarity index 72%
rename from meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-NIOS2-architecture.patch
rename to meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0005-Add-rmb-definition-for-NIOS2-architecture.patch
index ae8562a..0fd850f 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-Add-rmb-definition-for-NIOS2-architecture.patch
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0005-Add-rmb-definition-for-NIOS2-architecture.patch
@@ -1,19 +1,20 @@
-From 34b0d9b1a32fb404a30327a7ae8931c7c75583bf Mon Sep 17 00:00:00 2001
+From 3539d2ab392d3a3eecffeddac989016063b23713 Mon Sep 17 00:00:00 2001
 From: Marek Vasut <marex@denx.de>
 Date: Tue, 9 Feb 2016 02:00:29 +0100
-Subject: [PATCH] Add rmb() definition for NIOS2 architecture
+Subject: [PATCH 05/10] Add rmb() definition for NIOS2 architecture
 
 Signed-off-by: Marek Vasut <marex@denx.de>
 Upstream-Status: Submitted [ http://marc.info/?l=oprofile-list&m=145501915931874&w=2 ]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
 ---
  libperf_events/operf_utils.h | 5 +++++
  1 file changed, 5 insertions(+)
 
 diff --git a/libperf_events/operf_utils.h b/libperf_events/operf_utils.h
-index 32954cc..8270e53 100644
+index 8afdbc22..8e17213e 100644
 --- a/libperf_events/operf_utils.h
 +++ b/libperf_events/operf_utils.h
-@@ -178,6 +178,11 @@ void op_release_resources(void);
+@@ -173,6 +173,11 @@ void op_release_resources(void);
  #define cpu_relax()	asm volatile("" ::: "memory")
  #endif
  
@@ -26,5 +27,5 @@
  #include <asm/unistd.h>
  #define rmb()		__insn_mf()
 -- 
-2.7.0
+2.31.0
 
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-replace-sym_iterator-0-with-sym_iterator.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0006-replace-sym_iterator-0-with-sym_iterator.patch
similarity index 96%
rename from meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-replace-sym_iterator-0-with-sym_iterator.patch
rename to meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0006-replace-sym_iterator-0-with-sym_iterator.patch
index 5fd23f8..a8371f0 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0001-replace-sym_iterator-0-with-sym_iterator.patch
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0006-replace-sym_iterator-0-with-sym_iterator.patch
@@ -1,7 +1,7 @@
-From b7c1a2e2b0f4657fe291324ca409224f3321c9ff Mon Sep 17 00:00:00 2001
+From b126134f68f4a5bd826141be68337ac15a7c2c04 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Tue, 12 Feb 2019 11:58:34 -0800
-Subject: [PATCH] replace (sym_iterator)0 with sym_iterator()
+Subject: [PATCH 06/10] replace (sym_iterator)0 with sym_iterator()
 
 clang/libc++ find this error
 
@@ -20,7 +20,7 @@
  1 file changed, 13 insertions(+), 13 deletions(-)
 
 diff --git a/libpp/xml_utils.cpp b/libpp/xml_utils.cpp
-index 3de41e5..f45d3ae 100644
+index 3de41e58..f45d3ae2 100644
 --- a/libpp/xml_utils.cpp
 +++ b/libpp/xml_utils.cpp
 @@ -73,7 +73,7 @@ void dump_symbol(string const & prefix, sym_iterator it, bool want_nl = true)
@@ -127,5 +127,5 @@
  		string module = get_image_name((*it)->image_name,
  			image_name_storage::int_filename, extra_found_images);
 -- 
-2.20.1
+2.31.0
 
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0007-oprofile-doesn-t-want-GNU-levels-of-automake-strictn.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0007-oprofile-doesn-t-want-GNU-levels-of-automake-strictn.patch
new file mode 100644
index 0000000..5f9ff1b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0007-oprofile-doesn-t-want-GNU-levels-of-automake-strictn.patch
@@ -0,0 +1,23 @@
+From fd35c343e67ca47f76d0769fce2881d5f7a027a9 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 18 Mar 2021 00:48:34 -0700
+Subject: [PATCH 07/10] oprofile doesn't want GNU-levels of automake strictness
+ so tell it to be "foreign".
+
+Upstream-Status: Pending
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -13,7 +13,7 @@ AC_PREREQ(2.13)
+ 
+ AC_INIT([OProfile], [1.4.0])
+ AC_CONFIG_SRCDIR([libop/op_config.h])
+-AM_INIT_AUTOMAKE
++AM_INIT_AUTOMAKE([foreign])
+ AC_CONFIG_HEADERS(config.h)
+ 
+ AC_CHECK_DECLS([basename], [], [], [[#include <libgen.h>]])
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0008-include-linux-limits.h-for-MAX_INPUT.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0008-include-linux-limits.h-for-MAX_INPUT.patch
new file mode 100644
index 0000000..32e79a0
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0008-include-linux-limits.h-for-MAX_INPUT.patch
@@ -0,0 +1,30 @@
+From 33e945f31fee2d74a392eb79025c9477e12b590d Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 18 Mar 2021 00:49:48 -0700
+Subject: [PATCH 08/10] include linux/limits.h for MAX_INPUT
+
+Fixes
+op_pe_utils.cpp:533:19: error: 'MAX_INPUT' was not declared in this scope
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ libpe_utils/op_pe_utils.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/libpe_utils/op_pe_utils.cpp b/libpe_utils/op_pe_utils.cpp
+index 1ca4ce3a..c5d16a56 100644
+--- a/libpe_utils/op_pe_utils.cpp
++++ b/libpe_utils/op_pe_utils.cpp
+@@ -11,6 +11,7 @@
+  *
+  */
+ 
++#include <linux/limits.h>
+ #include <linux/perf_event.h>
+ #include <dirent.h>
+ #include <stdio.h>
+-- 
+2.31.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/oprofile-cross-compile-tests.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0009-Prevent-running-check-tests-on-host-if-cross-compili.patch
similarity index 79%
rename from meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/oprofile-cross-compile-tests.patch
rename to meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0009-Prevent-running-check-tests-on-host-if-cross-compili.patch
index aefa954..e47882c 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/oprofile-cross-compile-tests.patch
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0009-Prevent-running-check-tests-on-host-if-cross-compili.patch
@@ -1,4 +1,7 @@
-Prevent running check tests on host if cross compiling
+From 3a942cfd7d2e92667313e189930f7d1733cf40d4 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 18 Mar 2021 00:59:20 -0700
+Subject: [PATCH 09/10] Prevent running check tests on host if cross compiling
 
 This patch enables running the 'make check' tests on the target
 in a cross-compiled environment. If not cross-compiling, then 'make
@@ -18,12 +21,21 @@
 Upstream-Status: Pending
 
 Signed-off-by: Dave Lerner <dave.lerner@windriver.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac                | 1 +
+ libdb/tests/Makefile.am     | 2 ++
+ libop/tests/Makefile.am     | 2 ++
+ libregex/tests/Makefile.am  | 2 ++
+ libutil++/tests/Makefile.am | 4 ++++
+ libutil/tests/Makefile.am   | 2 ++
+ 6 files changed, 13 insertions(+)
 
 diff --git a/configure.ac b/configure.ac
-index 41ece64..ce5a16f 100644
+index 520b18ed..108a84e4 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -392,6 +392,7 @@ AC_ARG_ENABLE(account-check,
+@@ -386,6 +386,7 @@ AC_ARG_ENABLE(account-check,
  	enable_account_check=$enableval, enable_account_check=yes)
  
  AM_CONDITIONAL(CHECK_ACCOUNT, test "x$enable_account_check" = "xyes")
@@ -32,7 +44,7 @@
  AC_SUBST(OP_CFLAGS)
  AC_SUBST(OP_CXXFLAGS)
 diff --git a/libdb/tests/Makefile.am b/libdb/tests/Makefile.am
-index 8a69003..d820090 100644
+index 8a69003f..c933baf6 100644
 --- a/libdb/tests/Makefile.am
 +++ b/libdb/tests/Makefile.am
 @@ -13,4 +13,6 @@ check_PROGRAMS = db_test
@@ -43,7 +55,7 @@
  TESTS = ${check_PROGRAMS}
 +endif
 diff --git a/libop/tests/Makefile.am b/libop/tests/Makefile.am
-index 8a79eb5..6d417c4 100644
+index 8a79eb5d..6b90e997 100644
 --- a/libop/tests/Makefile.am
 +++ b/libop/tests/Makefile.am
 @@ -33,4 +33,6 @@ load_events_files_tests_LDADD = ${COMMON_LIBS}
@@ -54,7 +66,7 @@
  TESTS = ${check_PROGRAMS} utf8_checker.sh
 +endif
 diff --git a/libregex/tests/Makefile.am b/libregex/tests/Makefile.am
-index 6f19838..1d176f9 100644
+index 6f19838f..43e84946 100644
 --- a/libregex/tests/Makefile.am
 +++ b/libregex/tests/Makefile.am
 @@ -18,4 +18,6 @@ java_test_LDADD = \
@@ -65,7 +77,7 @@
  TESTS = ${check_PROGRAMS}
 +endif
 diff --git a/libutil++/tests/Makefile.am b/libutil++/tests/Makefile.am
-index 51af031..a01ea2d 100644
+index 51af0313..dd63fbe2 100644
 --- a/libutil++/tests/Makefile.am
 +++ b/libutil++/tests/Makefile.am
 @@ -1,7 +1,9 @@
@@ -86,7 +98,7 @@
  TESTS = ${check_PROGRAMS}
 +endif
 diff --git a/libutil/tests/Makefile.am b/libutil/tests/Makefile.am
-index dfcd6ec..e8831b5 100644
+index dfcd6eca..d8b51892 100644
 --- a/libutil/tests/Makefile.am
 +++ b/libutil/tests/Makefile.am
 @@ -12,4 +12,6 @@ file_tests_LDADD = ../libutil.a
@@ -96,3 +108,6 @@
 +if ! CROSS_COMPILE
  TESTS = ${check_PROGRAMS}
 +endif
+-- 
+2.31.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/root-home-dir.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0010-oprofile-Determine-the-root-home-directory-dynamical.patch
similarity index 76%
rename from meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/root-home-dir.patch
rename to meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0010-oprofile-Determine-the-root-home-directory-dynamical.patch
index 3eaf6a7..03ee515 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/root-home-dir.patch
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/0010-oprofile-Determine-the-root-home-directory-dynamical.patch
@@ -1,4 +1,7 @@
-oprofile: Determine the root home directory dynamically
+From 60fb7579bac738809b1776dbcd95ccacf7413c57 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 18 Mar 2021 01:02:49 -0700
+Subject: [PATCH 10/10] oprofile: Determine the root home directory dynamically
 
 This commit detects the root home directory dynamically with changes to
 the oprofile gui app source.
@@ -11,27 +14,13 @@
 Upstream-Status: Inappropriate [OE specific]
 
 Signed-off-by: Dave Lerner <dave.lerner@windriver.com>
+---
+ doc/oprofile.xml | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
 
-Index: oprofile-1.0.0/doc/oprofile.html
-===================================================================
---- oprofile-1.0.0.orig/doc/oprofile.html	2014-11-03 17:55:31.511034857 +0000
-+++ oprofile-1.0.0/doc/oprofile.html	2014-11-03 17:57:26.415037988 +0000
-@@ -1563,8 +1563,8 @@
- 		<span class="emphasis"><em>must</em></span> stop it in a controlled manner in order to process
- 		the profile data it has collected.  Use <code class="code">kill -SIGINT &lt;operf-PID&gt;</code>
- 		for this purpose. It is recommended that when running <span class="command"><strong>operf</strong></span>
--		with this option, your current working directory should be <code class="filename">/root</code> or a subdirectory
--		of <code class="filename">/root</code> to avoid storing sample data files in locations accessible by regular users.
-+		with this option, your current working directory should be <code class="filename">~root</code> or a subdirectory
-+		of <code class="filename">~root</code> to avoid storing sample data files in locations accessible by regular users.
- 		</p>
-               </dd>
-               <dt>
-Index: oprofile-1.0.0/doc/oprofile.xml
-===================================================================
---- oprofile-1.0.0.orig/doc/oprofile.xml	2014-11-03 17:55:31.515034857 +0000
-+++ oprofile-1.0.0/doc/oprofile.xml	2014-11-03 17:58:03.719039005 +0000
-@@ -654,8 +654,8 @@
+--- a/doc/oprofile.xml
++++ b/doc/oprofile.xml
+@@ -647,8 +647,8 @@ Following is a description of the <comma
  		<emphasis>must</emphasis> stop it in a controlled manner in order to process
  		the profile data it has collected.  Use <code>kill -SIGINT &lt;operf-PID&gt;</code>
  		for this purpose. It is recommended that when running <command>operf</command>
@@ -42,3 +31,16 @@
  		</para></listitem>
  	</varlistentry>
  	<varlistentry>
+--- a/doc/oprofile.html
++++ b/doc/oprofile.html
+@@ -1552,8 +1552,8 @@ Following is a description of the <span
+ 		<span class="emphasis"><em>must</em></span> stop it in a controlled manner in order to process
+ 		the profile data it has collected.  Use <code class="code">kill -SIGINT &lt;operf-PID&gt;</code>
+ 		for this purpose. It is recommended that when running <span class="command"><strong>operf</strong></span>
+-		with this option, your current working directory should be <code class="filename">/root</code> or a subdirectory
+-		of <code class="filename">/root</code> to avoid storing sample data files in locations accessible by regular users.
++		with this option, your current working directory should be <code class="filename">~root</code> or a subdirectory
++		of <code class="filename">~root</code> to avoid storing sample data files in locations accessible by regular users.
+ 		</p>
+               </dd>
+               <dt>
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/automake-foreign.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/automake-foreign.patch
deleted file mode 100644
index b9bb6c5..0000000
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/automake-foreign.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-oprofile doesn't want GNU-levels of automake strictness so tell it to be "foreign".
-
-Upstream-Status: Pending
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-diff --git a/configure.ac b/configure.ac
-index 5740585..cf6c316 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -16 +16 @@ AC_CONFIG_SRCDIR([libop/op_config.h])
--AM_INIT_AUTOMAKE
-+AM_INIT_AUTOMAKE([foreign])
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/musl.patch b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/musl.patch
deleted file mode 100644
index 51db408..0000000
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile/musl.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-Fix glibc-isms so that oprofile builds with musl.
-
-Patch taken from openwrt (https://github.com/openwrt-mirror/openwrt/blob/master/package/devel/oprofile/patches/100-musl.patch)
-
-Upstream-Status: Pending
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
---- a/pe_profiling/operf.cpp
-+++ b/pe_profiling/operf.cpp
-@@ -857,11 +857,14 @@ static int __delete_old_previous_sample_
-                                 int tflag  __attribute__((unused)),
-                                 struct FTW *ftwbuf __attribute__((unused)))
- {
-+	int err;
-+
- 	if (remove(fpath)) {
-+		err = errno;
- 		perror("sample data removal error");
--		return FTW_STOP;
-+		return err;
- 	} else {
--		return FTW_CONTINUE;
-+		return 0;
- 	}
- }
- 
-@@ -896,7 +899,7 @@ static void convert_sample_data(void)
- 		return;
- 
- 	if (!operf_options::append) {
--                int flags = FTW_DEPTH | FTW_ACTIONRETVAL;
-+                int flags = FTW_DEPTH;
- 		errno = 0;
- 		if (nftw(previous_sampledir.c_str(), __delete_old_previous_sample_data, 32, flags) !=0 &&
- 				errno != ENOENT) {
---- a/libop/op_events.c
-+++ b/libop/op_events.c
-@@ -83,7 +83,7 @@ static int parse_hex(char const * str)
- static u64 parse_long_hex(char const * str)
- {
- 	u64 value;
--	if (sscanf(str, "%Lx", &value) != 1)
-+	if (sscanf(str, "0x%llx", &value) != 1)
- 		parse_error("expected long hexadecimal value");
- 
- 	fflush(stderr);
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile_1.3.0.bb b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile_1.3.0.bb
deleted file mode 100644
index 8242a83..0000000
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile_1.3.0.bb
+++ /dev/null
@@ -1,13 +0,0 @@
-require oprofile.inc
-
-COMPATIBLE_HOST_riscv64 = "null"
-COMPATIBLE_HOST_riscv32 = "null"
-
-DEPENDS_append_powerpc64 = " libpfm4"
-DEPENDS_append_powerpc64le = " libpfm4"
-
-SRC_URI[md5sum] = "bd998df5521ebedae31e71cd3fb6200b"
-SRC_URI[sha256sum] = "95ded8bde1ec39922f0af015981a67aec63e025a501e4dc04cd65d38f73647e6"
-
-S = "${WORKDIR}/oprofile-${PV}"
-
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile.inc b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile_1.4.0.bb
similarity index 67%
rename from meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile.inc
rename to meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile_1.4.0.bb
index 0e1e2ed..7a18446 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile.inc
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile_1.4.0.bb
@@ -11,28 +11,31 @@
 SECTION = "devel"
 
 DEPENDS = "popt binutils"
-RDEPENDS_${PN} = "binutils-symlinks"
+DEPENDS_append_powerpc64 = " libpfm4"
+DEPENDS_append_powerpc64le = " libpfm4"
 
-FILES_${PN} = "${bindir} ${libdir}/${BPN}/lib*${SOLIBS} ${datadir}/${BPN}"
-FILES_${PN}-dev += "${libdir}/${BPN}/lib*${SOLIBSDEV} ${libdir}/${BPN}/lib*.la"
-FILES_${PN}-staticdev += "${libdir}/${BPN}/lib*.a"
+COMPATIBLE_HOST_riscv64 = "null"
+COMPATIBLE_HOST_riscv32 = "null"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz \
            file://acinclude.m4 \
-           file://automake-foreign.patch \
-           file://oprofile-cross-compile-tests.patch \
            file://run-ptest \
-           file://root-home-dir.patch \
-           file://0001-Add-rmb-definition-for-NIOS2-architecture.patch \
-           file://0001-replace-sym_iterator-0-with-sym_iterator.patch \
-           file://0001-Use-new-bfd-APIs-from-2.34.patch \
+           file://0001-Fix-build-with-musl.patch \
+           file://0002-Fix-configure-when-bin-sh-is-not-bash.patch \
+           file://0003-Define-the-C-preprocessor-variable-to-improve-reprod.patch \
+           file://0004-Use-BUILD_DATE-to-improve-reproducibility.patch \
+           file://0005-Add-rmb-definition-for-NIOS2-architecture.patch \
+           file://0006-replace-sym_iterator-0-with-sym_iterator.patch \
+           file://0007-oprofile-doesn-t-want-GNU-levels-of-automake-strictn.patch \
+           file://0008-include-linux-limits.h-for-MAX_INPUT.patch \
+           file://0009-Prevent-running-check-tests-on-host-if-cross-compili.patch \
+           file://0010-oprofile-Determine-the-root-home-directory-dynamical.patch \
 "
+SRC_URI[sha256sum] = "7ba06f99d7c188389d20d1d5e53ee690c7733f87aa9af62bd664fa0ca235a412"
+
 UPSTREAM_CHECK_REGEX = "oprofile-(?P<pver>\d+(\.\d+)+)/"
 UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/oprofile/files/oprofile/"
 
-SRC_URI_append_libc-musl = " file://musl.patch \
-"
-
 inherit autotools pkgconfig ptest
 
 EXTRA_OECONF = "--with-kernel=${STAGING_DIR_HOST}${prefix} --without-x ac_cv_prog_XSLTPROC="
@@ -64,3 +67,9 @@
 	cp ${S}/libutil++/tests/file_manip_tests.cpp \
 		libutil++/tests/file_manip_tests.o ${D}${PTEST_PATH}/libutil++/tests
 }
+
+RDEPENDS_${PN} = "binutils-symlinks"
+
+FILES_${PN} = "${bindir} ${libdir}/${BPN}/lib*${SOLIBS} ${datadir}/${BPN}"
+FILES_${PN}-dev += "${libdir}/${BPN}/lib*${SOLIBSDEV} ${libdir}/${BPN}/lib*.la"
+FILES_${PN}-staticdev += "${libdir}/${BPN}/lib*.a"