meta-openembedded: subtree update:76b83194b3..ae39f2e711

Adrian Bunk (3):
      libpeas: gobject-introspection is mandatory and cannot be configured
      gnome-settings-daemon: smartcard support is optional, and needs nss
      gnome-settings-daemon: Remove duplicate outdated SRC_URI hashes

Alex Kiernan (1):
      ostree: upgrade 2020.4 -> 2020.5

Andreas Müller (29):
      xfce4-whiskermenu-plugin: upgrade 2.4.5 -> 2.4.6
      xfwm4: upgrade 4.14.2 -> 4.14.3
      xfce4-timer-plugin: upgrade 1.7.0 -> 1.7.1
      gnome-desktop3: upgrade 3.36.3.1 -> 3.36.4
      evolution-data-server: upgrade 3.36.3 -> 3.36.4
      gnome-control-center: upgrade 3.36.3 -> 3.36.4
      gtksourceview4: upgrade 4.6.0 -> 4.6.1
      libnma: upgrade 1.8.28 -> 1.8.30
      libgweather: upgrade 3.36.0 -> 3.36.1
      evince: upgrade 3.36.5 -> 3.36.7
      exiv2: upgrade 0.27.1 -> 0.27.3
      poppler: upgrade 0.89.0 -> 0.90.1
      live555: merge recipe with inc
      live555: upgrade 20190828 -> 20200721
      tumbler: upgrade 0.2.8 -> 0.2.9
      xfwm4: upgrade 4.14.3 -> 4.14.4
      geoclue: upgrade 2.5.3 -> 2.5.6
      gnome-help.bbclass: remove double FILES_${PN}-help entry
      gnome-calendar: initial add 3.36.2
      imagemagick: upgrade 7.0.9_13 -> 7.0.10_25
      libpeas: disable tests when introspection is not enabled/available
      udisks2: upgrade 2.8.4+ -> 2.9.1
      xfwm4: upgrade 4.14.4 -> 4.14.5
      gnome-desktop3: upgrade 3.36.4 -> 3.36.5
      file-roller: upgrade 3.36.2 -> 3.36.3
      evolution-data-server: upgrade 3.36.4 -> 3.36.5
      gnome-disk-utility: re-add 3.36.3
      gdm: upgrade 3.36.2 -> 3.36.3
      poppler: upgrade 0.90.1 -> 20.08.0

Andrey Konovalov (1):
      libcamera: fix packaging and installation

Aníbal Limón (1):
      meta-oe: opengl-es-cts install deqp test runners

Armin Kuster (2):
      jsoncpp: add PE do to dunfell reverts
      libpeas: this depends on gtk3+ add FEATURE CHECK

Arthur She (1):
      xmlrpc-c: Upgrade 1.51.03 -> 1.54.02

Changqing Li (1):
      mozjs: fix multilib conflict

Colin McAllister (6):
      python3-paramiko: Added recipe
      python3-lorem: Added recipe
      python3-textparser: Added recipe
      python3-jdatetime: Added recipe
      python3-pynacl: Added recipe
      autossh: Created recipe

Daniel Dragomir (1):
      rasdaemon: update to 0.6.6 and fix SRC_URI broken link

Gianfranco (4):
      dlt-daemon: update to 2.18.5
      dlt-daemon: add new dlt-filetransfer PACKAGECONFIG option
      dlt-daemon: fix build failure when dlt-dbus is enabled, due to missing service file.
      dlt-daemon: enable some configurations by default in PACKAGECONFIG

Gianfranco Costamagna (2):
      vboxguestdrivers: upgrade 6.1.6 -> 6.1.12
      dlt-daemon: fix build with upstream-proposed patch for MUSL libc

Hongxu Jia (1):
      vboxguestdrivers: fix failed to compile with kernel 5.8.0

Jack Mitchell (1):
      python3-pybind11: install both python wheel and cmake build

Jacob Kroon (1):
      abseil-cpp: Use SkipRecipe exception

James Feist (1):
      boost-url: Add recipe

Jens Rehsack (1):
      bearssl: add new recipe

Johan Jeppsson (1):
      nngpp: Add recipe

Jyothi-k (1):
      fmt: 7.0.1 -> 7.0.3

Kai Kang (2):
      xfce4-eyes-plugin: 4.5.0 -> 4.5.1
      rdist: fix parallel build

Khem Raj (82):
      flashrom: Fix build failure with glibc 2.32
      spdlog: Upgrade to 1.7.0
      gerbera: Upgrade to 1.6.0
      libqmi:  Delete --enable-more-warnings configure option
      gnome-settings-daemon: Drop using autotools specific option
      gnome-settings-daemon: Add introspection to UNKNOWN_CONFIGURE_WHITELIST
      iwd: Module load dir should be relative to root_dir
      libcamera: Fix License names to match SPDX convention
      satyr: Upgrade to 0.30
      gpm: Upgrade to latest master
      gensio: Upgrade to 2.1.4
      freeglut: Use -fcommon always
      xfsprogs: Upgrade to 5.7.0
      freerdp: Upgrade to 2.2.0
      htop: Fix build with -fno-common
      dialog: Turn X11 support into a packageconfig option
      x11vnc: Update to latest on master
      vblade: Upgrade to version 24
      netperf: Fix build with -fno-common
      netplan: Update to latest to fix build with -fno-common
      ncftp: Fix build with -fno-common
      iscsi-initiator-utils: Upgrade to _2.1.2
      tftp-hpa: Fix build with -fno-common
      fwknop: Fix build with gcc10
      dibbler: Update to latest
      quagga: Use -fcommon to compile
      drbd: Upgrade to 9.0.24-1
      drbd-utils: Uphgrade to 9.13.1
      snort: Upgrade to 2.9.16.1
      daq: Upgrade to 2.0.7
      openlldp: Update to latest master
      iftop: Fix build with -fno-common
      xfce4-sensors-plugin: Fix build with -fno-common
      xfce4-cpufreq-plugin: Fix build with -fno-common
      imsettings: Upgrade to 1.8.2
      lcdproc: Fix compilation with GCC >= 10.x
      openal-soft: Update to 1.20.1
      mimic: Upgrade to 1.3.0.1
      minidlna: Fix build with -fno-common
      tvheadend: Update to latest tip
      monkey: Upgrade to 1.6.9
      klibc: Compile with -fcommon
      kexecboot: Use -fcommon to compile
      python3-matplotlib: Use lld for linking when using clang
      python3-pandas: Add workaround to fix build with clang
      memtester: Fix build with -fno-common
      read-edid: Fix build with gcc-10+
      owfs: Fix build with -fno-common
      sharutils: Fix build with -fno-common
      lprng: Fix build with -fno-common
      fluentbit: Use -fcommon to compile
      fbida: Upgrade to 2.14
      ipmitool: Fix build with -fno-common
      smstools3: Fix build with -fno-common
      sblim-sfcb: Fix build with -fno-common
      cdrkit: Fix build with -fno-common
      openocd: Fix build with gcc10/-fno-common
      liblbxutil: Fix build with gcc10/-fno-common
      mg: Upgrade to 20200723 tag
      libforms: Fix build with -fno-common
      wifi-test-suite: Update to latest tip
      xf86-video-ati: Fix link failure with gcc 10
      ifplugd: Fix build with gcc10/-fno-common
      tcsh: Fix build with -fno-common
      makedumpfile: Fix build with -fno-common
      nodejs: Upgrade to 12.18.3
      opencl-headers: Upgrade to v2020.06.16
      ocl-icd: Upgrade to latest
      opencl-icd-loader: Update beyond 2020.06.16
      fwts: Upgrade to 20.07.00
      pegtl: Disable type-limits warning
      opensaf: Fix build with -fno-common
      crash: Fix arm64 build with -fno-common
      minifi-cpp: Fix build with lto/clang
      libyui-ncurses: Disable werror with clang
      sedutils: Fix build with clang11
      directfb: Disable dtor-typedef warning with clang11
      gerbera: Disable PIE on rv64
      opengl-es-cts: Use SECURITY_NOPIE_CFLAGS
      opencv: Upgrade to 4.4.0
      minifi-cpp: Fix linking with libxml2
      sdbus-c++: Fix ptest packaging

Leon Anavi (80):
      python3-pytest-metadata: Upgrade 1.9.0 -> 1.10.0
      python3-cmd2: Upgrade 1.1.0 -> 1.2.1
      python3-aenum: Upgrade 2.2.3 -> 2.2.4
      python3-bitarray: Upgrade 1.4.1 -> 1.4.2
      python3-colorlog: Upgrade 4.1.0 -> 4.2.1
      python3-matplotlib: Upgrade 3.2.2 -> 3.3.0
      python3-urllib3: Upgrade 1.25.9 -> 1.25.10
      python3-pywbem: Upgrade 0.17.3 -> 0.17.4
      python3-lxml: Upgrade 4.5.1 -> 4.5.2
      python3-gmqtt: Upgarde 0.6.5 -> 0.6.7
      python3-pyroute2: Upgrade 0.5.12 -> 0.5.13
      python3-pymongo: Upgrade 3.10.1 -> 3.11.0
      python3-pid: Upgrade 3.0.3 -> 3.0.4
      python3-pychromecast: Upgrade 7.1.2 -> 7.2.0
      python3-dynamic-dispatch: Upgrade 1.0.2 -> 1.0.3
      python3-cbor2: Upgrade 5.1.1 -> 5.1.2
      python3-xlsxwriter: Consolidate in a single file
      python3-xlsxwriter: Upgrade 1.2.9 -> 1.3.0
      python3-cffi: Upgrade 1.14.0 -> 1.14.1
      python3-pandas: Upgrade 1.0.5 -> 1.1.0
      python3-luma-core: Upgrade 1.14.0 -> 1.14.1
      python3-tqdm: Upgrade 4.47.0 -> 4.48.0
      python3-asn1crypto: Upgrade 1.3.0 -> 1.4.0
      python3-pyalsaaudio: Consolidate in a single file
      python3-pyalsaaudio: Upgrade 0.8.4 -> 0.9.0
      python3-autobahn: Upgrade 20.6.2 -> 20.7.1
      python3-isort: Upgrade 5.1.4 -> 5.2.2
      python3-ujson: Upgrade 3.0.0 -> 3.1.0
      python3-yarl: Upgrade 1.4.2 -> 1.5.1
      python3-openpyxl: Upgrade 3.0.3 -> 3.0.4
      python3-cryptography: Upgrade 2.8 -> 3.0
      python3-dnspython: Upgrade 1.16.0 -> 2.0.0
      python3-regex: Upgrade 2020.6.8 -> 2020.7.14
      python3-lazy-object-proxy: Upgrade 1.5.0 -> 1.5.1
      python3-xxhash: Upgrade 1.4.4 -> 2.0.0
      xxhash: Upgrade 0.7.4 -> 0.8.0
      python3-parso: Upgrade 0.7.1 -> 0.8.0
      python3-argexec: Upgrade 1.0.2 -> 1.0.3
      python3-xlsxwriter: Upgrade 1.3.0 -> 1.3.2
      python3-cantools: Upgrade 35.1.0 -> 35.3.0
      python3-wtforms: Upgrade 2.3.1 -> 2.3.3
      python3-prompt-toolkit: Upgrade 3.0.5 -> 3.0.6
      python3-cmd2: Upgrade 1.2.1 -> 1.3.1
      python3-luma-core: Upgrade 1.14.1 -> 1.15.0
      python3-hyperlink: Upgrade 19.0.0 -> 20.0.1
      python3-bitarray: Upgrade 1.4.2 -> 1.5.1
      python3-isort: Upgrade 5.2.2 -> 5.3.2
      python3-gast: Upgrade 0.3.3 -> 0.4.0
      python3-tqdm: Upgrade 4.48.0 -> 4.48.2
      python3-sympy: Upgrade 1.6.1 -> 1.6.2
      python3-parse: Upgrade 1.15.0 -> 1.16.0
      python3-flask-login: Consolidate in a single file
      python3-flask-login: Upgrade 0.4.1 -> 0.5.0
      python3-graphviz: Upgrade 0.14 -> 0.14.1
      python3-huey: Upgrade 2.2.0 -> 2.3.0
      python3-rsa: Upgrade 3.4.2 -> 4.6
      python3-cmd2: Upgrade 1.3.1 -> 1.3.2
      python3-u-msgpack-python: Upgrade 2.6.0 -> 2.7.0
      python3-pytest-timeout: Upgrade 1.4.1 -> 1.4.2
      python3-javaobj-py3: Upgrade 0.4.0.1 -> 0.4.1
      python3-sentry-sdk: Upgrade 0.16.0 -> 0.16.3
      python3-coverage: Upgrade 5.2 -> 5.2.1
      python3-redis: Upgrade 2.10.6 -> 3.5.3
      mosquitto: Upgrade 1.6.10 -> 1.6.11
      python3-matplotlib: Upgrade 3.3.0 -> 3.3.1
      python3-humanize: Upgrade 2.5.0 -> 2.6.0
      python3-bcrypt: Upgrade 3.1.7 -> 3.2.0
      python3-isort: Upgrade 5.3.2 -> 5.4.2
      python3-cffi: Upgrade 1.14.1 -> 1.14.2
      python3-wheel: Upgrade 0.34.2 -> 0.35.1
      python3-cmd2: Upgrade 1.3.2 -> 1.3.3
      python3-google-api-python-client: Upgrade 1.9.3 -> 1.10.0
      python3-bitarray: Upgrade 1.5.1 -> 1.5.2
      python3-xlsxwriter: Upgrade 1.3.2 -> 1.3.3
      python3-sqlalchemy: Upgrade 1.3.18 -> 1.3.19
      python3-sentry-sdk: Upgrade 0.16.3 -> 0.16.5
      python3-python-vlc: Upgrade 3.0.10114 -> 3.0.11115
      python3-pytest-asyncio: Upgrade 0.12.0 -> 0.14.0
      python3-djangorestframework: Consolidate in a single file
      python3-djangorestframework: Upgrade 3.9.0 -> 3.11.1

Martin Jansa (2):
      khronos-cts: add opengl to REQUIRED_DISTRO_FEATURES
      lcov: fix lcov-native build

Mingli Yu (4):
      mariadb: upgrade to 10.5.4
      mariadb: not use the bundled libpcre2
      freeradius: fix the occasional verification failure
      fio: upgrade to 3.21

Oleksandr Kravchuk (49):
      iwd: update to 1.8
      nvme-cli: update to 1.12
      dialog: update to 1.3-20200327
      libqmi: update to 1.26.0
      libmbim: update to 1.24.2
      libwebsockets: update to 4.0.20
      libkcapi: update to 1.2.0
      libbytesize: update to 2.3
      libvdpau: update to 1.4
      libcec: update to 6.0.2
      dctl: update v69
      pmdk: update to 1.9
      libzip: update to 1.7.3
      tmux: update to 3.1b
      libjcat: update to 0.1.3
      leptonica: update to 1.79.0
      libvncserver: update to 0.9.13
      libopusenc: add recipe 0.2.1
      broadcom-bt-firmware: update to 12.0.1.1105_p2
      lsscsi: update to 0.31
      opusfile: update to 0.12
      libmpdclient: update to 2.19
      crossguid: update to 0.2.2
      libmediaart: update to 2.0_1.9.4
      kronosnet: update to 1.18
      keepalived: update to 2.1.5
      valijson: update to 0.3
      ostree: update to 2020.4
      terminus-font: update to 4.48
      libteam: update to 1.31
      libimobiledevice: update to 1.3.0
      libusbmuxd: update to 2.0.2
      libplist: update to 2.2.0
      usbmuxd: update to 1.1.1
      ifuse: update to 1.1.4
      libyui: update to 3.10.0
      libyui-ncurses: update to 2.55.0
      mpc: update to 0.33
      ncmpc: update to 0.38
      dhcpcd: update to 9.1.4
      firewalld: update to 0.8.3
      openconnect: update to 8.10
      relayd: bump to latest revision
      fping: update to 4.4
      nano: update to 5.0
      broadcom-bt-firmware: add PE back
      libpeas: update to 1.26.0
      ifenslave: update to 2.11
      libupnp: update to 1.14.0

Shlomi Vaknin (11):
      monit: Set monit files in temporary locations
      python3-ipython: add recipe
      python3-traitlets: add recipe
      python3-ipython-genutils: add recipe
      python3-jedi: add recipe
      python3-pickleshare: add recipe
      python3-backcall: add recipe
      python3-parso: add recipe
      prompt-toolkit: fix recipe
      json-schema-validator: Add recipe
      python3-pybind11-json: Add recipe

Slater, Joseph (4):
      lvm2: allow for reproducible binary builds
      python3-cryptography: fix two tests
      mozjs: specify TMPDIR
      aoetool: make builds reproducible

Vijay Khemka (1):
      Adding recipe for exprtk

William A. Kennington III (3):
      fmt: 6.2.0 -> 7.0.1
      cli11: 1.9.0 -> 1.9.1
      function2: 4.0.0 -> 4.1.0

Yi Zhao (2):
      libldb: upgrade 1.5.7 -> 1.5.8
      samba: upgrade 4.10.15 -> 4.10.17

Yue Tao (1):
      lua: Security Advisory - lua - CVE-2020-15888

Zang Ruochen (25):
      fping: upgrade 4.2 -> 4.3
      capnproto: upgrade 0.7.0 -> 0.8.0
      c-ares: upgrade 1.16.0 -> 1.16.1
      iozone3: upgrade 489 -> 490
      ser2net: upgrade 4.1.8 -> 4.2.0
      apache-websocket: upgrade 0.1.1 -> 0.1.2
      hiawatha: upgrade 10.10 -> 10.11
      nostromo: upgrade 1.9.7 -> 1.9.9
      purple-skypeweb: upgrade 1.5 -> 1.6
      dnsmasq: upgrade 2.81 -> 2.82
      linuxptp: upgrade 2.0 -> 3.0
      nlohmann-json: upgrade 3.7.3 -> 3.9.0
      paho-mqtt-c: upgrade 1.3.2 -> 1.3.4
      zlog: upgrade 1.2.14 -> 1.2.15
      jasper: upgrade 2.0.16 -> 2.0.19
      dash: upgrade 0.5.11 -> 0.5.11.1
      libbytesize: upgrade 2.3 -> 2.4
      jsonrpc: Fix build with libmicrohttpd 0.9.71
      libmicrohttpd: upgrade 0.9.70 -> 0.9.71
      rdma-core: upgrade 28.0 -> 30.0
      ipc-run: upgrade 20180523.0 -> 20200505.0
      uhubctl: upgrade 2.1.0 -> 2.2.0
      gsoap: upgrade 2.8.103 -> 2.8.105
      libcgi-perl: upgrade 4.48 -> 4.50
      redis: upgrade 6.0.5 -> 6.0.6

wonjong.lee (1):
      minifi: Add recipe for c++ version

Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: I003021e0f4c267f79eedf704c43fbb6fdcdaf8b8
diff --git a/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/0001-Add-lxml2-to-linker-cmdline-of-xml-is-found.patch b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/0001-Add-lxml2-to-linker-cmdline-of-xml-is-found.patch
new file mode 100644
index 0000000..d813b37
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/0001-Add-lxml2-to-linker-cmdline-of-xml-is-found.patch
@@ -0,0 +1,39 @@
+From 609e1745d26d6f42d426018a4dd8d2342d6fc170 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 18 Aug 2020 08:37:57 -0700
+Subject: [PATCH] Add -lxml2 to linker cmdline of xml is found
+
+When cross compiling for systems where static libs
+for libxml are not available cmake's detection mechanism
+resort to linking with libxml.so but doesnt use -lxml2
+liblldbHost.a however requires libxml on linker
+cmdline _after_ itself so its use of symbols from libxml2
+can be resolved. Here check for libxml2 being detected and
+add it if its found.
+
+Fixes
+minifi-cpp/0.7.0-r0/recipe-sysroot-native/usr/lib/libxml2.so is incompatible with elf32-i386
+| clang-11: error: linker command failed with exit code 1 (use -v to see invocation)
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ thirdparty/libarchive-3.3.2/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/thirdparty/libarchive-3.3.2/CMakeLists.txt b/thirdparty/libarchive-3.3.2/CMakeLists.txt
+index 0c1ea6f7..cde0cc51 100644
+--- a/thirdparty/libarchive-3.3.2/CMakeLists.txt
++++ b/thirdparty/libarchive-3.3.2/CMakeLists.txt
+@@ -1031,7 +1031,7 @@ ENDIF()
+ IF(LIBXML2_FOUND)
+   CMAKE_PUSH_CHECK_STATE()	# Save the state of the variables
+   INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR})
+-  LIST(APPEND ADDITIONAL_LIBS ${LIBXML2_LIBRARIES})
++  LIST(APPEND ADDITIONAL_LIBS xml2)
+   SET(HAVE_LIBXML2 1)
+   # libxml2's include files use iconv.h
+   SET(CMAKE_REQUIRED_INCLUDES ${ICONV_INCLUDE_DIR} ${LIBXML2_INCLUDE_DIR})
+-- 
+2.28.0
+
diff --git a/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-libressl-avoid-BSWAP-assembly-for-ARM-v6.patch b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-libressl-avoid-BSWAP-assembly-for-ARM-v6.patch
new file mode 100644
index 0000000..d0febfd
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-libressl-avoid-BSWAP-assembly-for-ARM-v6.patch
@@ -0,0 +1,34 @@
+diff -urN -x .git orig/thirdparty/libressl/avoid-BSWAP-assembly-for-ARM-v6.patch patched/thirdparty/libressl/avoid-BSWAP-assembly-for-ARM-v6.patch
+--- orig/thirdparty/libressl/avoid-BSWAP-assembly-for-ARM-v6.patch	1970-01-01 09:00:00.000000000 +0900
++++ patched/thirdparty/libressl/avoid-BSWAP-assembly-for-ARM-v6.patch	2020-08-07 23:14:46.196764271 +0900
+@@ -0,0 +1,30 @@
++This patch was imported from the libressl potable.
++https://github.com/libressl-portable/portable/commit/a9332ccecfce63bf54924e70c11f420edd3ae312
++
++From a9332ccecfce63bf54924e70c11f420edd3ae312 Mon Sep 17 00:00:00 2001
++From: Brent Cook <bcook@openbsd.org>
++Date: Sun, 17 Jul 2016 18:12:23 -0500
++Subject: [PATCH] avoid BSWAP assembly for ARM <= v6
++
++diff -urN orig/crypto/modes/modes_lcl.h patched/crypto/modes/modes_lcl.h
++--- orig/crypto/modes/modes_lcl.h	2018-11-18 21:27:10.000000000 +0900
+++++ patched/crypto/modes/modes_lcl.h	2020-08-07 23:11:01.960764745 +0900
++@@ -45,14 +45,16 @@
++ 			asm ("bswapl %0"		\
++ 			: "+r"(ret));	ret;		})
++ # elif (defined(__arm__) || defined(__arm)) && !defined(__STRICT_ALIGNMENT)
++-#  define BSWAP8(x) ({	u32 lo=(u64)(x)>>32,hi=(x);	\
+++#  if (__ARM_ARCH >= 6)
+++#   define BSWAP8(x) ({	u32 lo=(u64)(x)>>32,hi=(x);	\
++ 			asm ("rev %0,%0; rev %1,%1"	\
++ 			: "+r"(hi),"+r"(lo));		\
++ 			(u64)hi<<32|lo;			})
++-#  define BSWAP4(x) ({	u32 ret;			\
+++#   define BSWAP4(x) ({	u32 ret;			\
++ 			asm ("rev %0,%1"		\
++ 			: "=r"(ret) : "r"((u32)(x)));	\
++ 			ret;				})
+++#  endif
++ # endif
++ #endif
++ #endif
diff --git a/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-libressl-compile.patch b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-libressl-compile.patch
new file mode 100644
index 0000000..84b8c8c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-libressl-compile.patch
@@ -0,0 +1,43 @@
+diff -urN -x .git orig/cmake/LibreSSL.cmake patched/cmake/LibreSSL.cmake
+--- orig/cmake/LibreSSL.cmake	2020-08-07 21:58:34.660773928 +0900
++++ patched/cmake/LibreSSL.cmake	2020-08-07 22:51:18.620767245 +0900
+@@ -18,6 +18,9 @@
+ function(use_libre_ssl SOURCE_DIR BINARY_DIR)
+ 	message("Using bundled LibreSSL from release")
+ 	
++	find_package(Patch REQUIRED)
++	set(PATCH "${Patch_EXECUTABLE}" -p1 -i "${SOURCE_DIR}/thirdparty/libressl/avoid-BSWAP-assembly-for-ARM-v6.patch")
++
+ 	set(BYPRODUCT_PREFIX "lib" CACHE STRING "" FORCE)
+ 	set(BYPRODUCT_SUFFIX ".a" CACHE STRING "" FORCE)
+ 	
+@@ -27,16 +30,29 @@
+ 		set(BYPRODUCT_PREFIX "" CACHE STRING "" FORCE)
+ 	set(BUILD_ARGS " -GVisual Studio 15 2017")
+ 	endif(WIN32)
++
++	set(BYPRODUCTS
++		"lib/${BYPRODUCT_PREFIX}crypto${BYPRODUCT_SUFFIX}"
++		"lib/${BYPRODUCT_PREFIX}ssl${BYPRODUCT_SUFFIX}"
++		"lib/${BYPRODUCT_PREFIX}tls${BYPRODUCT_SUFFIX}"
++	)
++	set(LIBRESSL_INSTALL_DIR "${BINARY_DIR}/thirdparty/libressl-install" CACHE STRING "" FORCE)
++	FOREACH(BYPRODUCT ${BYPRODUCTS})
++		LIST(APPEND LIBRESSL_LIBRARIES_LIST "${LIBRESSL_INSTALL_DIR}/${BYPRODUCT}")
++	ENDFOREACH(BYPRODUCT)
++
+ 	ExternalProject_Add(
+ 	libressl-portable
+ 	URL https://cdn.openbsd.org/pub/OpenBSD/LibreSSL/libressl-2.8.3.tar.gz https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-2.8.3.tar.gz https://gentoo.osuosl.org/distfiles/libressl-2.8.3.tar.gz
+ 	URL_HASH "SHA256=9b640b13047182761a99ce3e4f000be9687566e0828b4a72709e9e6a3ef98477"
+ 	SOURCE_DIR "${BINARY_DIR}/thirdparty/libressl-src"
++	PATCH_COMMAND ${PATCH}
+ 	CMAKE_ARGS ${PASSTHROUGH_CMAKE_ARGS}
+ 				"-DCMAKE_INSTALL_PREFIX=${BINARY_DIR}/thirdparty/libressl-install"
+ 				"-DLIBRESSL_APPS=OFF"
+ 				"-DLIBRESSL_TESTS=OFF"
+ 				"${BUILD_ARGS}"
++	BUILD_BYPRODUCTS ${LIBRESSL_LIBRARIES_LIST}
+ 	)
+ 
+ 	add_library(crypto STATIC IMPORTED)
diff --git a/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-minifi-compile.patch b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-minifi-compile.patch
new file mode 100644
index 0000000..9653ba3
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-minifi-compile.patch
@@ -0,0 +1,60 @@
+diff -urN -x .git orig/CMakeLists.txt patched/CMakeLists.txt
+--- orig/CMakeLists.txt	2020-08-07 21:58:34.656773928 +0900
++++ patched/CMakeLists.txt	2020-08-10 15:08:31.800278357 +0900
+@@ -119,13 +119,28 @@
+ 	endif()
+ endif()
+ 
++include(CheckCXXSourceCompiles)
++CHECK_CXX_SOURCE_COMPILES("
++    #include <atomic>
++    int main(int argc, char **argv) {
++        uint8_t m;
++        __atomic_load_8(&m, 0);
++        __atomic_fetch_add_1(&m , 0, 0);
++        return 0;
++    }"
++    HAVE_ATOMIC
++)
++if(NOT HAVE_ATOMIC)
++    set(LIB_ATOMIC atomic)
++endif()
++
+ # Use ccache if present
+-find_program(CCACHE_FOUND ccache)
+-if(CCACHE_FOUND)
+-    set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ccache)
+-    set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK ccache)
+-    message("-- Found ccache: ${CCACHE_FOUND}")
+-endif(CCACHE_FOUND)
++#find_program(CCACHE_FOUND ccache)
++#if(CCACHE_FOUND)
++#    set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ccache)
++#    set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK ccache)
++#    message("-- Found ccache: ${CCACHE_FOUND}")
++#endif(CCACHE_FOUND)
+ 
+ if (UNIX AND USE_GOLD_LINKER AND NOT APPLE )
+   execute_process(COMMAND ${CMAKE_C_COMPILER} -fuse-ld=gold -Wl,--version ERROR_QUIET OUTPUT_VARIABLE ld_version)
+@@ -303,8 +318,10 @@
+     GIT_TAG "f3294d9d86e6a7915a967efff2842089b8b0d071"  # Version 7.64.0
+     SOURCE_DIR "${CMAKE_CURRENT_BINARY_DIR}/thirdparty/curl-src"
+     LIST_SEPARATOR % # This is needed for passing semicolon-separated lists
++    TLS_VERIFY OFF
+     CMAKE_ARGS ${PASSTHROUGH_CMAKE_ARGS}
+                "-DCMAKE_INSTALL_PREFIX=${CMAKE_CURRENT_BINARY_DIR}/thirdparty/curl-install"
++               "-DCMAKE_INSTALL_LIBDIR=lib${LIBSUFFIX}"
+                 -DCMAKE_POSITION_INDEPENDENT_CODE=ON
+                 -DBUILD_CURL_EXE=OFF
+                 -DBUILD_TESTING=OFF
+diff -urN -x .git orig/libminifi/CMakeLists.txt patched/libminifi/CMakeLists.txt
+--- orig/libminifi/CMakeLists.txt	2020-08-07 21:58:34.676773928 +0900
++++ patched/libminifi/CMakeLists.txt	2020-08-10 15:06:17.124278642 +0900
+@@ -108,6 +108,7 @@
+ add_library(spdlog STATIC ${SPD_SOURCES})
+ add_library(core-minifi STATIC ${SOURCES})
+ target_link_libraries(core-minifi ${CMAKE_DL_LIBS} yaml-cpp)
++target_link_libraries(core-minifi ${LIB_ATOMIC})
+ 
+ #target_link_libraries(core-minifi  PRIVATE bsdiff )
+ 
diff --git a/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-osspuuid-compile.patch b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-osspuuid-compile.patch
new file mode 100644
index 0000000..42e1e58
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-osspuuid-compile.patch
@@ -0,0 +1,36 @@
+diff -urN -x .git orig/cmake/BundledOSSPUUID.cmake patched/cmake/BundledOSSPUUID.cmake
+--- orig/cmake/BundledOSSPUUID.cmake	2020-08-07 21:58:34.660773928 +0900
++++ patched/cmake/BundledOSSPUUID.cmake	2020-08-07 22:05:57.404772993 +0900
+@@ -22,7 +22,9 @@
+ 
+     # Define patch step
+     find_package(Patch REQUIRED)
+-    set(PC "${Patch_EXECUTABLE}" -p1 -i "${SOURCE_DIR}/thirdparty/ossp-uuid/ossp-uuid-mac-fix.patch")
++    set(PATCH1 "${Patch_EXECUTABLE}" -p1 -i "${SOURCE_DIR}/thirdparty/ossp-uuid/ossp-uuid-mac-fix.patch")
++    set(PATCH2 "${Patch_EXECUTABLE}" -p1 -i "${SOURCE_DIR}/thirdparty/ossp-uuid/ossp-uuid-cross-compile-fix.patch")
++    set(PATCH3 "${Patch_EXECUTABLE}" -p1 -i "${SOURCE_DIR}/thirdparty/ossp-uuid/ossp-uuid-musl-compile-fix.patch")
+ 
+     # Define byproducts
+     set(BYPRODUCTS "lib/libuuid.a"
+@@ -35,7 +37,9 @@
+     ENDFOREACH(BYPRODUCT)
+ 
+     # Build project
+-    set(CONFIGURE_COMMAND ./configure "CFLAGS=-fPIC" "CXXFLAGS=-fPIC" --with-cxx --without-perl --without-php --without-pgsql "--prefix=${BINARY_DIR}/thirdparty/ossp-uuid-install")
++    set(CONFIGURE_COMMAND ac_cv_va_copy=C99 ./configure CFLAGS=-fPIC CXXFLAGS=-fPIC --host=${HOST_SYS}
++        --with-cxx --without-perl --without-php --without-pgsql
++        --prefix=${BINARY_DIR}/thirdparty/ossp-uuid-install)
+     string(TOLOWER "${CMAKE_BUILD_TYPE}" build_type)
+     if(NOT build_type MATCHES debug)
+         list(APPEND CONFIGURE_COMMAND --enable-debug=yes)
+@@ -52,8 +56,8 @@
+             UPDATE_COMMAND ""
+             INSTALL_COMMAND make install
+             BUILD_BYPRODUCTS ${OSSPUUID_LIBRARIES_LIST}
+-            CONFIGURE_COMMAND ""
+-            PATCH_COMMAND ${PC} && ${CONFIGURE_COMMAND}
++            CONFIGURE_COMMAND ${CONFIGURE_COMMAND}
++            PATCH_COMMAND ${PATCH1} && ${PATCH2} && ${PATCH3}
+             STEP_TARGETS build
+             EXCLUDE_FROM_ALL TRUE
+     )
diff --git a/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-osspuuid-cross-compile.patch b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-osspuuid-cross-compile.patch
new file mode 100644
index 0000000..dc354d9
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-osspuuid-cross-compile.patch
@@ -0,0 +1,37 @@
+diff -urN -x .git orig/thirdparty/ossp-uuid/ossp-uuid-cross-compile-fix.patch patched/thirdparty/ossp-uuid/ossp-uuid-cross-compile-fix.patch
+--- orig/thirdparty/ossp-uuid/ossp-uuid-cross-compile-fix.patch	1970-01-01 09:00:00.000000000 +0900
++++ patched/thirdparty/ossp-uuid/ossp-uuid-cross-compile-fix.patch	2020-08-07 22:28:04.396770190 +0900
+@@ -0,0 +1,33 @@
++diff -urN orig/config.sub patched/config.sub
++--- orig/config.sub	2008-07-05 06:43:08.000000000 +0900
+++++ patched/config.sub	2020-08-07 22:23:48.412770731 +0900
++@@ -238,6 +238,8 @@
++ 	# Some are omitted here because they have special meanings below.
++ 	1750a | 580 \
++ 	| a29k \
+++	| aarch64 | aarch64_be \
+++	| riscv32 | riscv64 \
++ 	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
++ 	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
++ 	| am33_2.0 \
++@@ -314,6 +316,8 @@
++ 	# Recognize the basic CPU types with company name.
++ 	580-* \
++ 	| a29k-* \
+++	| aarch64-* | aarch64_be-* \
+++	| riscv32-* | riscv64-* \
++ 	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
++ 	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
++ 	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
++diff -urN orig/shtool patched/shtool
++--- orig/shtool	2008-07-05 06:43:08.000000000 +0900
+++++ patched/shtool	2020-08-07 22:21:23.192771037 +0900
++@@ -1400,7 +1400,7 @@
++             if [ ".$opt_t" = .yes ]; then
++                 echo "strip $dsttmp" 1>&2
++             fi
++-            strip $dsttmp || shtool_exit $?
+++            $STRIP $dsttmp || shtool_exit $?
++         fi
++         if [ ".$opt_o" != . ]; then
++             if [ ".$opt_t" = .yes ]; then
diff --git a/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-osspuuid-musl-compile.patch b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-osspuuid-musl-compile.patch
new file mode 100644
index 0000000..7caf848
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-osspuuid-musl-compile.patch
@@ -0,0 +1,25 @@
+diff -urN -x .git orig/thirdparty/ossp-uuid/ossp-uuid-musl-compile-fix.patch patched/thirdparty/ossp-uuid/ossp-uuid-musl-compile-fix.patch
+--- orig/thirdparty/ossp-uuid/ossp-uuid-musl-compile-fix.patch	1970-01-01 09:00:00.000000000 +0900
++++ patched/thirdparty/ossp-uuid/ossp-uuid-musl-compile-fix.patch	2020-08-07 11:22:49.344854508 +0900
+@@ -0,0 +1,21 @@
++diff -urN orig/config.sub patched/config.sub
++--- orig/config.sub	2008-07-05 06:43:08.000000000 +0900
+++++ patched/config.sub	2020-08-07 11:19:25.948854937 +0900
++@@ -120,7 +120,7 @@
++ # Here we must recognize all the valid KERNEL-OS combinations.
++ maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
++ case $maybe_os in
++-  nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
+++  nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | linux-musl* | \
++   uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
++   storm-chaos* | os2-emx* | rtmk-nova*)
++     os=-$maybe_os
++@@ -1250,7 +1250,7 @@
++ 	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
++ 	      | -chorusos* | -chorusrdb* \
++ 	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
++-	      | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
+++	      | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* | -linux-musl* \
++ 	      | -uxpv* | -beos* | -mpeix* | -udk* \
++ 	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
++ 	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
diff --git a/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-rocksdb-cross-compile.patch b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-rocksdb-cross-compile.patch
new file mode 100644
index 0000000..8c5db7c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/fix-rocksdb-cross-compile.patch
@@ -0,0 +1,12 @@
+diff -urN orig/thirdparty/rocksdb/CMakeLists.txt patched/thirdparty/rocksdb/CMakeLists.txt
+--- orig/thirdparty/rocksdb/CMakeLists.txt	2020-07-28 11:39:40.254677515 +0900
++++ patched/thirdparty/rocksdb/CMakeLists.txt	2020-07-28 11:51:11.898676054 +0900
+@@ -618,6 +618,7 @@
+ add_library(${ROCKSDB_STATIC_LIB} STATIC ${SOURCES})
+ target_link_libraries(${ROCKSDB_STATIC_LIB}
+   ${THIRDPARTY_LIBS} ${SYSTEM_LIBS})
++target_link_libraries(${ROCKSDB_STATIC_LIB} ${LIB_ATOMIC})
+ 
+ if(WIN32)
+ #  add_library(${ROCKSDB_IMPORT_LIB} SHARED ${SOURCES})
+
diff --git a/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/minifi.service b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/minifi.service
new file mode 100644
index 0000000..5802a7b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/minifi.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=MiNiFi Service
+After=network.target
+RequiresMountsFor=/var
+
+[Service]
+Type=simple
+WorkingDirectory=@LOCALSTATEDIR@/run/minifi
+Environment=MINIFI_HOME=@SYSCONFDIR@/minifi
+ExecStart=@BINDIR@/minifi
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/remove_const_due_to_std_lock_guard.patch b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/remove_const_due_to_std_lock_guard.patch
new file mode 100644
index 0000000..2d66576
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/remove_const_due_to_std_lock_guard.patch
@@ -0,0 +1,38 @@
+From bfce136fa9ff1e955928539484ba4dd55f98f05b Mon Sep 17 00:00:00 2001
+From: Willem Jan Withagen <wjw@digiware.nl>
+Date: Sun, 16 Aug 2020 23:38:55 +0200
+Subject: [PATCH] Update channel.h
+
+Compiling this on FreeBSD with CLang fails due to:
+```In file included from /usr/ports/net/ceph15/work/ceph-15.2.4/src/rocksdb/utilities/backupable/backupable_db.cc:16:
+/usr/ports/net/ceph15/work/ceph-15.2.4/src/rocksdb/util/channel.h:35:33: error: no matching constructor for initialization of 'std::lock_guard<std::mutex>'
+    std::lock_guard<std::mutex> lk(lock_);
+                                ^  ~~~~~
+/usr/include/c++/v1/__mutex_base:90:14: note: candidate constructor not viable: 1st argument ('const std::mutex') would lose const qualifier
+    explicit lock_guard(mutex_type& __m) _LIBCPP_THREAD_SAFETY_ANNOTATION(acquire_capability(__m))
+             ^
+/usr/include/c++/v1/__mutex_base:100:5: note: candidate constructor not viable: no known conversion from 'const std::mutex' to 'const std::__1::lock_guard<std::__1::mutex>' for 1st argument
+    lock_guard(lock_guard const&) _LIBCPP_EQUAL_DELETE;
+    ^
+/usr/include/c++/v1/__mutex_base:94:5: note: candidate constructor not viable: requires 2 arguments, but 1 was provided
+    lock_guard(mutex_type& __m, adopt_lock_t) _LIBCPP_THREAD_SAFETY_ANNOTATION(requires_capability(__m))
+    ^
+1 error generated.
+```
+---
+ thirdparty/rocksdb/util/channel.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/thirdparty/rocksdb/util/channel.h b/thirdparty/rocksdb/util/channel.h
+index 705fa2d28f..993bef5bc0 100644
+--- a/thirdparty/rocksdb/util/channel.h
++++ b/thirdparty/rocksdb/util/channel.h
+@@ -31,7 +31,7 @@ class channel {
+     return buffer_.empty() && eof_;
+   }
+ 
+-  size_t size() const {
++  size_t size() {
+     std::lock_guard<std::mutex> lk(lock_);
+     return buffer_.size();
+   }
diff --git a/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/systemd-volatile.conf b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/systemd-volatile.conf
new file mode 100644
index 0000000..c828b49
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/systemd-volatile.conf
@@ -0,0 +1,2 @@
+d @MINIFI_RUN@ 0755 root root -
+d @MINIFI_LOG@ 0755 root root -
diff --git a/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/sysvinit-volatile.conf b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/sysvinit-volatile.conf
new file mode 100644
index 0000000..2ad14e6
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/sysvinit-volatile.conf
@@ -0,0 +1,2 @@
+d root root 0755 @MINIFI_RUN@ none
+d root root 0755 @MINIFI_LOG@ none
diff --git a/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/minifi-cpp_0.7.0.bb b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/minifi-cpp_0.7.0.bb
new file mode 100644
index 0000000..37036eb
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/minifi-cpp/minifi-cpp_0.7.0.bb
@@ -0,0 +1,120 @@
+SUMMARY = "A subproject of Apache NiFi to collect data where it originates."
+DESCRIPTION = "MiNiFi--a subproject of Apache NiFi--is a complementary \
+data collection approach that supplements the core tenets of NiFi in dataflow \
+management, focusing on the collection of data at the source of its creation."
+HOMEPAGE = "https://nifi.apache.org/minifi/index.html"
+SECTION = "console/network"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=f9534eb5f4ab800b573a37bffc62f3a7"
+
+DEPENDS = "virtual/crypt expat flex python3 bison-native libxml2"
+RDEPENDS_${PN} = "python3-core"
+
+SRCREV = "aa42957a2e227df41510047cece3cd606dc1cb6a"
+SRC_URI = "git://github.com/apache/nifi-minifi-cpp.git \
+            file://fix-minifi-compile.patch \
+            file://fix-libressl-compile.patch \
+            file://fix-libressl-avoid-BSWAP-assembly-for-ARM-v6.patch \
+            file://fix-osspuuid-compile.patch \
+            file://fix-osspuuid-cross-compile.patch \
+            file://fix-osspuuid-musl-compile.patch \
+            file://fix-rocksdb-cross-compile.patch \
+            file://remove_const_due_to_std_lock_guard.patch \
+            file://0001-Add-lxml2-to-linker-cmdline-of-xml-is-found.patch \
+            file://minifi.service \
+            file://systemd-volatile.conf \
+            file://sysvinit-volatile.conf \
+            "
+S = "${WORKDIR}/git"
+
+inherit pkgconfig cmake systemd
+
+SYSTEMD_PACKAGES = "minifi-cpp"
+SYSTEMD_SERVICE_${PN} = "minifi.service"
+SYSTEMD_AUTO_ENABLE = "disable"
+
+OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM = "BOTH"
+
+EXTRA_OECMAKE += " \
+    -DHOST_SYS=${HOST_SYS} -DBUILD_SYS=${BUILD_SYS} \
+    -DSKIP_TESTS=ON \
+    "
+EXTRA_OECMAKE_append_toolchain-clang = " -DCMAKE_RANLIB=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-ranlib"
+LDFLAGS_append_toolchain-clang = " -fuse-ld=lld"
+
+# There are endian issues when communicating with the x86 nifi on the the mips and the ppc machines.
+COMPATIBLE_MACHINE_mips = "(!.*mips).*"
+COMPATIBLE_MACHINE_mips64 = "(!.*mips64).*"
+COMPATIBLE_MACHINE_powerpc = "(!.*ppc).*"
+
+TARGET_CFLAGS_append_riscv32 += "-fpic"
+TARGET_CXXFLAGS_append_riscv32 += "-fpic"
+TARGET_CFLAGS_append_riscv64 += "-fpic"
+TARGET_CXXFLAGS_append_riscv64 += "-fpic"
+
+
+do_install() {
+    DESTDIR='${B}/minifi-install' cmake_runcmake_build --target ${OECMAKE_TARGET_INSTALL}
+
+    MINIFI_BIN=${base_prefix}${bindir}
+    MINIFI_HOME=${base_prefix}${sysconfdir}/minifi
+    MINIFI_RUN=${base_prefix}${localstatedir}/run/minifi
+    MINIFI_LOG=${base_prefix}${localstatedir}/log/minifi
+
+    install -d ${D}${MINIFI_BIN}
+    install -d ${D}${MINIFI_HOME}/conf
+    cp -a ${B}/minifi-install/usr/bin/*   ${D}${MINIFI_BIN}/
+    cp -a ${B}/minifi-install/usr/conf/*  ${D}${MINIFI_HOME}/conf/
+
+    sed -i 's|#appender.rolling.directory=.*|appender.rolling.directory='${MINIFI_LOG}'|g' \
+        ${D}${MINIFI_HOME}/conf/minifi-log.properties
+    sed -i 's|nifi.provenance.repository.directory.default=.*|nifi.provenance.repository.directory.default='${MINIFI_RUN}'/provenance_repository|g' \
+        ${D}${MINIFI_HOME}/conf/minifi.properties
+    sed -i 's|nifi.flowfile.repository.directory.default=.*|nifi.flowfile.repository.directory.default='${MINIFI_RUN}'/flowfile_repository|g' \
+        ${D}${MINIFI_HOME}/conf/minifi.properties
+    sed -i 's|nifi.database.content.repository.directory.default=.*|nifi.database.content.repository.directory.default='${MINIFI_RUN}'/content_repository|g' \
+        ${D}${MINIFI_HOME}/conf/minifi.properties
+    sed -i 's|nifi.flow.configuration.file=.*|nifi.flow.configuration.file='${MINIFI_HOME}'/conf/config.yml|g' \
+        ${D}${MINIFI_HOME}/conf/minifi.properties
+
+    sed -i 's|export MINIFI_HOME=.*|export MINIFI_HOME='${MINIFI_HOME}'|g' ${D}${MINIFI_BIN}/minifi.sh
+    sed -i 's|bin_dir=${MINIFI_HOME}/bin|bin_dir='${MINIFI_BIN}'|g' ${D}${MINIFI_BIN}/minifi.sh
+    sed -i 's|pid_file=${bin_dir}|pid_file='${MINIFI_RUN}'|g' ${D}${MINIFI_BIN}/minifi.sh
+
+    if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+        install -d ${D}${sysconfdir}/tmpfiles.d/
+        install -m 0644 ${WORKDIR}/systemd-volatile.conf ${D}${sysconfdir}/tmpfiles.d/
+        install -m 0755 -d ${D}${systemd_unitdir}/system
+        install -m 0644 ${WORKDIR}/minifi.service ${D}${systemd_unitdir}/system/
+
+        sed -i 's|@LOCALSTATEDIR@|${localstatedir}|g' ${D}${systemd_unitdir}/system/minifi.service
+        sed -i 's|@SYSCONFDIR@|${sysconfdir}|g' ${D}${systemd_unitdir}/system/minifi.service
+        sed -i 's|@BINDIR@|${bindir}|g' ${D}${systemd_unitdir}/system/minifi.service
+
+        sed -i 's|@MINIFI_RUN@|'${MINIFI_RUN}'|g' ${D}${sysconfdir}/tmpfiles.d/systemd-volatile.conf
+        sed -i 's|@MINIFI_LOG@|'${MINIFI_LOG}'|g' ${D}${sysconfdir}/tmpfiles.d/systemd-volatile.conf
+
+    elif ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
+        install -d ${D}${sysconfdir}/default/volatiles
+        install -m 0644 ${WORKDIR}/sysvinit-volatile.conf ${D}${sysconfdir}/default/volatiles/99_minifi
+
+        sed -i 's|@MINIFI_RUN@|'${MINIFI_RUN}'|g' ${D}${sysconfdir}/default/volatiles/99_minifi
+        sed -i 's|@MINIFI_LOG@|'${MINIFI_LOG}'|g' ${D}${sysconfdir}/default/volatiles/99_minifi
+    fi
+}
+
+pkg_postinst_${PN}() {
+    if [ -z "$D" ]; then
+        if type systemd-tmpfiles >/dev/null; then
+            systemd-tmpfiles --create
+        elif [ -e ${sysconfdir}/init.d/populate-volatile.sh ]; then
+            ${sysconfdir}/init.d/populate-volatile.sh update
+        fi
+    fi
+}
+
+FILES_${PN} = " \
+        ${bindir} \
+        ${sysconfdir} \
+        ${systemd_unitdir} \
+        "