reset upstream subtrees to HEAD

Reset the following subtrees on HEAD:
  poky: 8217b477a1(master)
  meta-xilinx: 64aa3d35ae(master)
  meta-openembedded: 0435c9e193(master)
  meta-raspberrypi: 490a4441ac(master)
  meta-security: cb6d1c85ee(master)

Squashed patches:
  meta-phosphor: drop systemd 239 patches
  meta-phosphor: mrw-api: use correct install path

Change-Id: I268e2646d9174ad305630c6bbd3fbc1a6105f43d
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools/core/adb_libssl_11.diff b/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools/core/adb_libssl_11.diff
new file mode 100644
index 0000000..3ead649
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools/core/adb_libssl_11.diff
@@ -0,0 +1,39 @@
+Description: adb: Make compatible with openssl 1.1
+ OpenSSL version 1.1 brought some API changes which broke the build here,
+ fix that by accessing rsa->n (and e) directly, using RSA_get0_key instead.
+Author: Chirayu Desai <chirayudesai1@gmail.com
+Last-Update: 2016-11-10
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+---
+ system/core/adb/adb_auth_host.c |    5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+--- a/adb/adb_auth_host.c
++++ b/adb/adb_auth_host.c
+@@ -75,6 +75,7 @@ static int RSA_to_RSAPublicKey(RSA *rsa,
+     BIGNUM* rem = BN_new();
+     BIGNUM* n = BN_new();
+     BIGNUM* n0inv = BN_new();
++    BIGNUM* e = BN_new();
+ 
+     if (RSA_size(rsa) != RSANUMBYTES) {
+         ret = 0;
+@@ -82,7 +83,7 @@ static int RSA_to_RSAPublicKey(RSA *rsa,
+     }
+ 
+     BN_set_bit(r32, 32);
+-    BN_copy(n, rsa->n);
++    RSA_get0_key(rsa, &n, &e, NULL);
+     BN_set_bit(r, RSANUMWORDS * 32);
+     BN_mod_sqr(rr, r, n, ctx);
+     BN_div(NULL, rem, n, r32, ctx);
+@@ -96,7 +97,7 @@ static int RSA_to_RSAPublicKey(RSA *rsa,
+         BN_div(n, rem, n, r32, ctx);
+         pkey->n[i] = BN_get_word(rem);
+     }
+-    pkey->exponent = BN_get_word(rsa->e);
++    pkey->exponent = BN_get_word(e);
+ 
+ out:
+     BN_free(n0inv);
diff --git a/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb b/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb
index 2604f65..e09cd82 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb
@@ -8,7 +8,7 @@
     file://${COMMON_LICENSE_DIR}/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9 \
 "
 DEPENDS = "libbsd libpcre zlib libcap"
-DEPENDS_append_class-target = " openssl10"
+DEPENDS_append_class-target = " openssl"
 
 ANDROID_MIRROR = "android.googlesource.com"
 
@@ -37,6 +37,7 @@
     file://core/0010-Use-linux-capability.h-on-linux-systems-too.patch;patchdir=system/core \
     file://core/0011-Remove-bionic-specific-calls.patch;patchdir=system/core \
     file://core/0012-Fix-implicit-declaration-of-stlcat-strlcopy-function.patch;patchdir=system/core \
+    file://core/adb_libssl_11.diff;patchdir=system/core \
     file://extras/0001-ext4_utils-remove-selinux-extensions.patch;patchdir=system/extras \
     file://extras/0002-ext4_utils-add-o-argument-to-preserve-ownership.patch;patchdir=system/extras \
     file://libselinux/0001-Remove-bionic-specific-calls.patch;patchdir=external/libselinux \
@@ -57,6 +58,9 @@
 ARM_INSTRUCTION_SET_armv4 = "arm"
 ARM_INSTRUCTION_SET_armv5 = "arm"
 
+COMPATIBLE_HOST_powerpc = "(null)"
+COMPATIBLE_HOST_powerpc64 = "(null)"
+
 inherit systemd
 
 SYSTEMD_SERVICE_${PN} = "android-tools-adbd.service"
@@ -91,6 +95,9 @@
       mips|mipsel)
         export android_arch=linux-mips
       ;;
+      mips64|mips64el)
+        export android_arch=linux-mips64
+      ;;
       powerpc|powerpc64)
         export android_arch=linux-ppc
       ;;
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Replace-use-of-struct-ucontext-with-ucontext_t.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Replace-use-of-struct-ucontext-with-ucontext_t.patch
deleted file mode 100644
index 07cb8a3..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0001-Replace-use-of-struct-ucontext-with-ucontext_t.patch
+++ /dev/null
@@ -1,242 +0,0 @@
-From b90c8f3b60bfe5dbed2823620242e9d30b9eb28f Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 28 Jun 2017 19:01:18 -0700
-Subject: [PATCH] Replace use of struct ucontext with ucontext_t
-
-glibc 2.26 would not expose struct ucontext anymore
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Pending
-
- .../linux/dump_writer_common/ucontext_reader.cc    | 32 +++++++++++-----------
- .../linux/dump_writer_common/ucontext_reader.h     | 14 +++++-----
- src/client/linux/handler/exception_handler.cc      | 10 +++----
- src/client/linux/handler/exception_handler.h       |  4 +--
- .../linux/microdump_writer/microdump_writer.cc     |  2 +-
- .../linux/minidump_writer/minidump_writer.cc       |  2 +-
- 6 files changed, 32 insertions(+), 32 deletions(-)
-
-diff --git a/src/client/linux/dump_writer_common/ucontext_reader.cc b/src/client/linux/dump_writer_common/ucontext_reader.cc
-index c80724dd..052ce37c 100644
---- a/src/client/linux/dump_writer_common/ucontext_reader.cc
-+++ b/src/client/linux/dump_writer_common/ucontext_reader.cc
-@@ -36,19 +36,19 @@ namespace google_breakpad {
- 
- // Minidump defines register structures which are different from the raw
- // structures which we get from the kernel. These are platform specific
--// functions to juggle the ucontext and user structures into minidump format.
-+// functions to juggle the ucontext_t and user structures into minidump format.
- 
- #if defined(__i386__)
- 
--uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
-+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
-   return uc->uc_mcontext.gregs[REG_ESP];
- }
- 
--uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
-+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
-   return uc->uc_mcontext.gregs[REG_EIP];
- }
- 
--void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
-+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
-                                     const struct _libc_fpstate* fp) {
-   const greg_t* regs = uc->uc_mcontext.gregs;
- 
-@@ -88,15 +88,15 @@ void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
- 
- #elif defined(__x86_64)
- 
--uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
-+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
-   return uc->uc_mcontext.gregs[REG_RSP];
- }
- 
--uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
-+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
-   return uc->uc_mcontext.gregs[REG_RIP];
- }
- 
--void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
-+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
-                                     const struct _libc_fpstate* fpregs) {
-   const greg_t* regs = uc->uc_mcontext.gregs;
- 
-@@ -145,15 +145,15 @@ void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
- 
- #elif defined(__ARM_EABI__)
- 
--uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
-+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
-   return uc->uc_mcontext.arm_sp;
- }
- 
--uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
-+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
-   return uc->uc_mcontext.arm_pc;
- }
- 
--void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) {
-+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) {
-   out->context_flags = MD_CONTEXT_ARM_FULL;
- 
-   out->iregs[0] = uc->uc_mcontext.arm_r0;
-@@ -184,15 +184,15 @@ void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) {
- 
- #elif defined(__aarch64__)
- 
--uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
-+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
-   return uc->uc_mcontext.sp;
- }
- 
--uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
-+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
-   return uc->uc_mcontext.pc;
- }
- 
--void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
-+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
-                                     const struct fpsimd_context* fpregs) {
-   out->context_flags = MD_CONTEXT_ARM64_FULL;
- 
-@@ -210,15 +210,15 @@ void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
- 
- #elif defined(__mips__)
- 
--uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
-+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
-   return uc->uc_mcontext.gregs[MD_CONTEXT_MIPS_REG_SP];
- }
- 
--uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
-+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
-   return uc->uc_mcontext.pc;
- }
- 
--void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) {
-+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) {
- #if _MIPS_SIM == _ABI64
-   out->context_flags = MD_CONTEXT_MIPS64_FULL;
- #elif _MIPS_SIM == _ABIO32
-diff --git a/src/client/linux/dump_writer_common/ucontext_reader.h b/src/client/linux/dump_writer_common/ucontext_reader.h
-index b6e77b4b..2de80b70 100644
---- a/src/client/linux/dump_writer_common/ucontext_reader.h
-+++ b/src/client/linux/dump_writer_common/ucontext_reader.h
-@@ -39,23 +39,23 @@
- 
- namespace google_breakpad {
- 
--// Wraps platform-dependent implementations of accessors to ucontext structs.
-+// Wraps platform-dependent implementations of accessors to ucontext_t structs.
- struct UContextReader {
--  static uintptr_t GetStackPointer(const struct ucontext* uc);
-+  static uintptr_t GetStackPointer(const ucontext_t* uc);
- 
--  static uintptr_t GetInstructionPointer(const struct ucontext* uc);
-+  static uintptr_t GetInstructionPointer(const ucontext_t* uc);
- 
--  // Juggle a arch-specific ucontext into a minidump format
-+  // Juggle a arch-specific ucontext_t into a minidump format
-   //   out: the minidump structure
-   //   info: the collection of register structures.
- #if defined(__i386__) || defined(__x86_64)
--  static void FillCPUContext(RawContextCPU *out, const ucontext *uc,
-+  static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
-                              const struct _libc_fpstate* fp);
- #elif defined(__aarch64__)
--  static void FillCPUContext(RawContextCPU *out, const ucontext *uc,
-+  static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
-                              const struct fpsimd_context* fpregs);
- #else
--  static void FillCPUContext(RawContextCPU *out, const ucontext *uc);
-+  static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc);
- #endif
- };
- 
-diff --git a/src/client/linux/handler/exception_handler.cc b/src/client/linux/handler/exception_handler.cc
-index 586d84e9..05936d28 100644
---- a/src/client/linux/handler/exception_handler.cc
-+++ b/src/client/linux/handler/exception_handler.cc
-@@ -457,9 +457,9 @@ bool ExceptionHandler::HandleSignal(int /*sig*/, siginfo_t* info, void* uc) {
-   // Fill in all the holes in the struct to make Valgrind happy.
-   memset(&g_crash_context_, 0, sizeof(g_crash_context_));
-   memcpy(&g_crash_context_.siginfo, info, sizeof(siginfo_t));
--  memcpy(&g_crash_context_.context, uc, sizeof(struct ucontext));
-+  memcpy(&g_crash_context_.context, uc, sizeof(ucontext_t));
- #if defined(__aarch64__)
--  struct ucontext* uc_ptr = (struct ucontext*)uc;
-+  ucontext_t* uc_ptr = (ucontext_t*)uc;
-   struct fpsimd_context* fp_ptr =
-       (struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved;
-   if (fp_ptr->head.magic == FPSIMD_MAGIC) {
-@@ -468,9 +468,9 @@ bool ExceptionHandler::HandleSignal(int /*sig*/, siginfo_t* info, void* uc) {
-   }
- #elif !defined(__ARM_EABI__) && !defined(__mips__)
-   // FP state is not part of user ABI on ARM Linux.
--  // In case of MIPS Linux FP state is already part of struct ucontext
-+  // In case of MIPS Linux FP state is already part of ucontext_t
-   // and 'float_state' is not a member of CrashContext.
--  struct ucontext* uc_ptr = (struct ucontext*)uc;
-+  ucontext_t* uc_ptr = (ucontext_t*)uc;
-   if (uc_ptr->uc_mcontext.fpregs) {
-     memcpy(&g_crash_context_.float_state, uc_ptr->uc_mcontext.fpregs,
-            sizeof(g_crash_context_.float_state));
-@@ -494,7 +494,7 @@ bool ExceptionHandler::SimulateSignalDelivery(int sig) {
-   // ExceptionHandler::HandleSignal().
-   siginfo.si_code = SI_USER;
-   siginfo.si_pid = getpid();
--  struct ucontext context;
-+  ucontext_t context;
-   getcontext(&context);
-   return HandleSignal(sig, &siginfo, &context);
- }
-diff --git a/src/client/linux/handler/exception_handler.h b/src/client/linux/handler/exception_handler.h
-index daba57e0..25598a29 100644
---- a/src/client/linux/handler/exception_handler.h
-+++ b/src/client/linux/handler/exception_handler.h
-@@ -191,11 +191,11 @@ class ExceptionHandler {
-   struct CrashContext {
-     siginfo_t siginfo;
-     pid_t tid;  // the crashing thread.
--    struct ucontext context;
-+    ucontext_t context;
- #if !defined(__ARM_EABI__) && !defined(__mips__)
-     // #ifdef this out because FP state is not part of user ABI for Linux ARM.
-     // In case of MIPS Linux FP state is already part of struct
--    // ucontext so 'float_state' is not required.
-+    // ucontext_t so 'float_state' is not required.
-     fpstate_t float_state;
- #endif
-   };
-diff --git a/src/client/linux/microdump_writer/microdump_writer.cc b/src/client/linux/microdump_writer/microdump_writer.cc
-index 3764eec2..80ad5c46 100644
---- a/src/client/linux/microdump_writer/microdump_writer.cc
-+++ b/src/client/linux/microdump_writer/microdump_writer.cc
-@@ -593,7 +593,7 @@ class MicrodumpWriter {
- 
-   void* Alloc(unsigned bytes) { return dumper_->allocator()->Alloc(bytes); }
- 
--  const struct ucontext* const ucontext_;
-+  const ucontext_t* const ucontext_;
- #if !defined(__ARM_EABI__) && !defined(__mips__)
-   const google_breakpad::fpstate_t* const float_state_;
- #endif
-diff --git a/src/client/linux/minidump_writer/minidump_writer.cc b/src/client/linux/minidump_writer/minidump_writer.cc
-index d11ba6e5..c7161434 100644
---- a/src/client/linux/minidump_writer/minidump_writer.cc
-+++ b/src/client/linux/minidump_writer/minidump_writer.cc
-@@ -1323,7 +1323,7 @@ class MinidumpWriter {
-   const int fd_;  // File descriptor where the minidum should be written.
-   const char* path_;  // Path to the file where the minidum should be written.
- 
--  const struct ucontext* const ucontext_;  // also from the signal handler
-+  const ucontext_t* const ucontext_;  // also from the signal handler
- #if !defined(__ARM_EABI__) && !defined(__mips__)
-   const google_breakpad::fpstate_t* const float_state_;  // ditto
- #endif
--- 
-2.13.2
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-Avoid-using-basename.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-Avoid-using-basename.patch
deleted file mode 100644
index bc62829..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0002-Avoid-using-basename.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 806964f852773e427fea82a7716d44ce3be4498c Mon Sep 17 00:00:00 2001
-From: Felix Janda <felix.janda@posteo.de>
-Date: Sun, 1 Feb 2015 14:27:32 +0100
-Subject: [PATCH 2/3] Avoid using basename
-
----
- src/common/linux/dump_symbols.cc | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/src/common/linux/dump_symbols.cc b/src/common/linux/dump_symbols.cc
-index d029ca14..6ac4a17b 100644
---- a/src/common/linux/dump_symbols.cc
-+++ b/src/common/linux/dump_symbols.cc
-@@ -881,9 +881,9 @@ const char* ElfArchitecture(const typename ElfClass::Ehdr* elf_header) {
- // last slash, or the whole filename if there are no slashes.
- string BaseFileName(const string &filename) {
-   // Lots of copies!  basename's behavior is less than ideal.
--  char* c_filename = strdup(filename.c_str());
--  string base = basename(c_filename);
--  free(c_filename);
-+  const char *c_filename = filename.c_str();
-+  const char *p = strrchr(c_filename, '/');
-+  string base = p ? p+1 : c_filename;
-   return base;
- }
- 
--- 
-2.14.1
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0005-md2core-Replace-basename.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0005-md2core-Replace-basename.patch
deleted file mode 100644
index 852c1ed..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/0005-md2core-Replace-basename.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From bbf2b5ed5d93b227df8aea5726727b48e29f6790 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 14 Sep 2017 23:35:40 -0700
-Subject: [PATCH 5/5] md2core: Replace basename()
-
-musl does not provide it
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/tools/linux/md2core/minidump-2-core.cc | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/src/tools/linux/md2core/minidump-2-core.cc b/src/tools/linux/md2core/minidump-2-core.cc
-index 6a9e28eb..52b81c22 100644
---- a/src/tools/linux/md2core/minidump-2-core.cc
-+++ b/src/tools/linux/md2core/minidump-2-core.cc
-@@ -107,6 +107,9 @@ struct Options {
- 
- static void
- Usage(int argc, const char* argv[]) {
-+  const char *c_filename = argv[0];;
-+  const char *p = strrchr(c_filename, '/');
-+  const char *base = p ? p+1 : c_filename;
-   fprintf(stderr,
-           "Usage: %s [options] <minidump file>\n"
-           "\n"
-@@ -133,7 +136,7 @@ Usage(int argc, const char* argv[]) {
-           "             lookups to be done in this directory rather than the filesystem\n"
-           "             layout as it exists in the crashing image.  This path should end\n"
-           "             with a slash if it's a directory.  e.g. /var/lib/breakpad/\n"
--          "", basename(argv[0]));
-+          "", base);
- }
- 
- static void
--- 
-2.14.1
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/dont-clobber-rsp.patch b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/dont-clobber-rsp.patch
new file mode 100644
index 0000000..b1c37fc
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad/dont-clobber-rsp.patch
@@ -0,0 +1,30 @@
+Do not add stack pointer to clobber list
+
+it was being ignored until gcc 9.0 became capable
+of flagging this silent ignoring via [1]
+
+[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52813<Paste>
+
+Upstream-Status: Submitted [https://chromium-review.googlesource.com/c/linux-syscall-support/+/1390160]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+--- a/src/third_party/lss/linux_syscall_support.h
++++ b/src/third_party/lss/linux_syscall_support.h
+@@ -1966,7 +1966,7 @@ struct kernel_statfs {
+         __asm__ volatile(LSS_ENTRYPOINT                                       \
+                          : "=a" (__res)                                       \
+                          : "0" (__NR_##name)                                  \
+-                         : "esp", "memory");                                  \
++                         : "memory");                                         \
+         LSS_RETURN(type,__res);                                               \
+       }
+     #undef  _syscall1
+@@ -2407,7 +2407,7 @@ struct kernel_statfs {
+                                "d"(LSS_SYSCALL_ARG(parent_tidptr)),
+                                "r"(LSS_SYSCALL_ARG(newtls)),
+                                "r"(LSS_SYSCALL_ARG(child_tidptr))
+-                             : "rsp", "memory", "r8", "r10", "r11", "rcx");
++                             : "memory", "r8", "r10", "r11", "rcx");
+       }
+       LSS_RETURN(int, __res);
+     }
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 d9773c9..5f9a72e 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
@@ -13,16 +13,17 @@
 
 BBCLASSEXTEND = "native"
 
-PE = "1"
+PE = "2"
 
-PV = "1.0+git${SRCPV}"
+PV = "1.0"
 
 SRCREV_FORMAT = "breakpad_gtest_protobuf_lss_gyp"
 
-SRCREV_breakpad = "dea867e76f24e4a68395684b9d1cf24bcef82f20"
+SRCREV_breakpad = "5467393a3d1e7ab929fd01d79971701bf4e2c2c6"
+#v1.8.0
 SRCREV_gtest = "ec44c6c1675c25b9827aacd08c02433cccde7780"
 SRCREV_protobuf = "cb6dd4ef5f82e41e06179dcd57d3b1d9246ad6ac"
-SRCREV_lss = "a91633d172407f6c83dd69af11510b37afebb7f9"
+SRCREV_lss = "a89bf7903f3169e6bc7b8efc10a73a7571de21cf"
 SRCREV_gyp = "324dd166b7c0b39d513026fa52d6280ac6d56770"
 
 SRC_URI = "git://github.com/google/breakpad;name=breakpad \
@@ -30,26 +31,24 @@
            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://chromium.googlesource.com/external/gyp;protocol=https;destsuffix=git/src/tools/gyp;name=gyp \
-           file://0001-Replace-use-of-struct-ucontext-with-ucontext_t.patch \
            file://0001-include-sys-reg.h-to-get-__WORDSIZE-on-musl-libc.patch \
-           file://0002-Avoid-using-basename.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://0005-md2core-Replace-basename.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-lss-Match-syscalls-to-match-musl.patch;patchdir=src/third_party/lss \
            file://mips_asm_sgidefs.patch;patchdir=src/third_party/lss \
+           file://dont-clobber-rsp.patch \
 "
 S = "${WORKDIR}/git"
 
 CXXFLAGS += "-D_GNU_SOURCE"
 
-COMPATIBLE_MACHINE_powerpc = "(!.*ppc).*"
+COMPATIBLE_HOST_powerpc = "null"
 
 do_install_append() {
         install -d ${D}${includedir}
@@ -72,7 +71,7 @@
         install -m 0644 ${S}/src/client/linux/minidump_writer/minidump_writer.h ${D}${includedir}/breakpad/client/linux/minidump_writer/minidump_writer.h
 
         install -d ${D}${includedir}/breakpad/common
-        install -m 0644 ${S}/src/common/memory.h ${D}${includedir}/breakpad/common/memory.h
+        install -m 0644 ${S}/src/common/memory_allocator.h ${D}${includedir}/breakpad/common/memory_allocator.h
         install -m 0644 ${S}/src/common/scoped_ptr.h ${D}${includedir}/breakpad/common/scoped_ptr.h
         install -m 0644 ${S}/src/common/using_std_string.h ${D}${includedir}/breakpad/common/using_std_string.h
 
@@ -120,4 +119,5 @@
 #| {standard input}:2184: Error: Thumb does not support this addressing mode -- `str r6,[r1,#-4]!'
 #| {standard input}:2191: Error: lo register required -- `ldr pc,[sp]'
 #| make: *** [src/client/linux/handler/exception_handler.o] Error 1
-ARM_INSTRUCTION_SET = "arm"
+ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET_armv4 = "arm"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/0001-build-don-t-look-for-Iconv.patch b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/0001-build-don-t-look-for-Iconv.patch
new file mode 100644
index 0000000..c86dc16
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/0001-build-don-t-look-for-Iconv.patch
@@ -0,0 +1,36 @@
+From 24650b0c7db6b213a2eaa5061b75b9f1b43f1ce9 Mon Sep 17 00:00:00 2001
+From: Bartosz Golaszewski <brgl@bgdev.pl>
+Date: Fri, 23 Nov 2018 11:44:56 +0100
+Subject: [PATCH] build: don't look for Iconv
+
+Drop the find_package() for Iconv. CMake is unable to find iconv.h in
+native build but all modern systems supply it as part of the standard
+C library. We don't need this check in meta-openembedded.
+
+Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
+
+Upstream-status: Inappropriate
+- upstream doxygen must build on many architectures, this change is
+  too intrusive for upstream
+---
+ CMakeLists.txt | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 45c2f2c1..22cf0144 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -92,10 +92,6 @@ if (sqlite3)
+   endif()
+ endif()
+ 
+-find_package(Iconv REQUIRED)
+-include_directories(${ICONV_INCLUDE_DIR})
+-
+-
+ #set(DOXYDOCS ${CMAKE_SOURCE_DIR}/doc CACHE INTERNAL "Path to doxygen docs")
+ set(DOXYDOCS ${PROJECT_BINARY_DIR}/doc)
+ set(ENV{DOXYGEN_DOCDIR} ${DOXYDOCS})
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.15.bb b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.15.bb
new file mode 100644
index 0000000..7846846
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.15.bb
@@ -0,0 +1,16 @@
+DESCRIPTION = "Doxygen is the de facto standard tool for generating documentation from annotated C++ sources."
+HOMEPAGE = "http://www.doxygen.org/"
+
+LICENSE = "GPL-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+inherit cmake python3native
+
+DEPENDS = "flex-native bison-native"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.src.tar.gz \
+           file://0001-build-don-t-look-for-Iconv.patch"
+SRC_URI[md5sum] = "2c98c73eba392d334f5bbaf15e09bae3"
+SRC_URI[sha256sum] = "bd9c0ec462b6a9b5b41ede97bede5458e0d7bb40d4cfa27f6f622eb33c59245d"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/files/0001-correct-version-for-so-lib.patch b/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/files/0001-correct-version-for-so-lib.patch
deleted file mode 100644
index a7a42f9..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/files/0001-correct-version-for-so-lib.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 8b44dc65d98d50b462843ac9dab6fe3fc25abe36 Mon Sep 17 00:00:00 2001
-From: Pascal Bach <pascal.bach@siemens.com>
-Date: Fri, 12 May 2017 13:54:49 +0200
-Subject: [PATCH] correct version for so lib
-
-Upstream-Status: Pending
-
----
- CMakeLists.txt | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 3670afe..f4fcd2c 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -172,6 +172,7 @@ endif()
- if(FLATBUFFERS_BUILD_SHAREDLIB)
-   add_library(flatbuffers_shared SHARED ${FlatBuffers_Library_SRCS})
-   set_target_properties(flatbuffers_shared PROPERTIES OUTPUT_NAME flatbuffers)
-+  set_target_properties(flatbuffers_shared PROPERTIES VERSION "${PV}")
- endif()
- 
- function(compile_flatbuffers_schema_to_cpp SRC_FBS)
--- 
-2.1.4
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/files/0001-flatbuffers-Move-EndianSwap-template-to-flatbuffers-.patch b/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/files/0001-flatbuffers-Move-EndianSwap-template-to-flatbuffers-.patch
deleted file mode 100644
index d736f01..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/files/0001-flatbuffers-Move-EndianSwap-template-to-flatbuffers-.patch
+++ /dev/null
@@ -1,113 +0,0 @@
-From a614d8e20fa9e4fd16b699d581ddac2956c120f5 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 19 Sep 2017 10:04:02 -0700
-Subject: [PATCH 1/2] flatbuffers: Move EndianSwap template to
- flatbuffers/base.h
-
-Clang complains
-call to function 'EndianSwap' that is neither visible in the template definition nor found by argument-dependent lookup
-     return EndianSwap(t);
-
-This seems to be due to limitation of two-phase lookup of dependent names in template definitions
-
-Its not being found using associated namespaces therefore
-it has to be made visible at the template definition site as well
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Submitted
-
- include/flatbuffers/base.h        | 33 +++++++++++++++++++++++++++++++++
- include/flatbuffers/flatbuffers.h | 32 --------------------------------
- 2 files changed, 33 insertions(+), 32 deletions(-)
-
-diff --git a/include/flatbuffers/base.h b/include/flatbuffers/base.h
-index f051755..c73fb2d 100644
---- a/include/flatbuffers/base.h
-+++ b/include/flatbuffers/base.h
-@@ -150,6 +150,39 @@ typedef uintmax_t largest_scalar_t;
- // We support aligning the contents of buffers up to this size.
- #define FLATBUFFERS_MAX_ALIGNMENT 16
- 
-+template<typename T> T EndianSwap(T t) {
-+  #if defined(_MSC_VER)
-+    #define FLATBUFFERS_BYTESWAP16 _byteswap_ushort
-+    #define FLATBUFFERS_BYTESWAP32 _byteswap_ulong
-+    #define FLATBUFFERS_BYTESWAP64 _byteswap_uint64
-+  #else
-+    #if defined(__GNUC__) && __GNUC__ * 100 + __GNUC_MINOR__ < 408
-+      // __builtin_bswap16 was missing prior to GCC 4.8.
-+      #define FLATBUFFERS_BYTESWAP16(x) \
-+        static_cast<uint16_t>(__builtin_bswap32(static_cast<uint32_t>(x) << 16))
-+    #else
-+      #define FLATBUFFERS_BYTESWAP16 __builtin_bswap16
-+    #endif
-+    #define FLATBUFFERS_BYTESWAP32 __builtin_bswap32
-+    #define FLATBUFFERS_BYTESWAP64 __builtin_bswap64
-+  #endif
-+  if (sizeof(T) == 1) {   // Compile-time if-then's.
-+    return t;
-+  } else if (sizeof(T) == 2) {
-+    auto r = FLATBUFFERS_BYTESWAP16(*reinterpret_cast<uint16_t *>(&t));
-+    return *reinterpret_cast<T *>(&r);
-+  } else if (sizeof(T) == 4) {
-+    auto r = FLATBUFFERS_BYTESWAP32(*reinterpret_cast<uint32_t *>(&t));
-+    return *reinterpret_cast<T *>(&r);
-+  } else if (sizeof(T) == 8) {
-+    auto r = FLATBUFFERS_BYTESWAP64(*reinterpret_cast<uint64_t *>(&t));
-+    return *reinterpret_cast<T *>(&r);
-+  } else {
-+    assert(0);
-+  }
-+}
-+
-+
- template<typename T> T EndianScalar(T t) {
-   #if FLATBUFFERS_LITTLEENDIAN
-     return t;
-diff --git a/include/flatbuffers/flatbuffers.h b/include/flatbuffers/flatbuffers.h
-index 9216cf4..f749dcb 100644
---- a/include/flatbuffers/flatbuffers.h
-+++ b/include/flatbuffers/flatbuffers.h
-@@ -37,38 +37,6 @@ inline void EndianCheck() {
-   (void)endiantest;
- }
- 
--template<typename T> T EndianSwap(T t) {
--  #if defined(_MSC_VER)
--    #define FLATBUFFERS_BYTESWAP16 _byteswap_ushort
--    #define FLATBUFFERS_BYTESWAP32 _byteswap_ulong
--    #define FLATBUFFERS_BYTESWAP64 _byteswap_uint64
--  #else
--    #if defined(__GNUC__) && __GNUC__ * 100 + __GNUC_MINOR__ < 408
--      // __builtin_bswap16 was missing prior to GCC 4.8.
--      #define FLATBUFFERS_BYTESWAP16(x) \
--        static_cast<uint16_t>(__builtin_bswap32(static_cast<uint32_t>(x) << 16))
--    #else
--      #define FLATBUFFERS_BYTESWAP16 __builtin_bswap16
--    #endif
--    #define FLATBUFFERS_BYTESWAP32 __builtin_bswap32
--    #define FLATBUFFERS_BYTESWAP64 __builtin_bswap64
--  #endif
--  if (sizeof(T) == 1) {   // Compile-time if-then's.
--    return t;
--  } else if (sizeof(T) == 2) {
--    auto r = FLATBUFFERS_BYTESWAP16(*reinterpret_cast<uint16_t *>(&t));
--    return *reinterpret_cast<T *>(&r);
--  } else if (sizeof(T) == 4) {
--    auto r = FLATBUFFERS_BYTESWAP32(*reinterpret_cast<uint32_t *>(&t));
--    return *reinterpret_cast<T *>(&r);
--  } else if (sizeof(T) == 8) {
--    auto r = FLATBUFFERS_BYTESWAP64(*reinterpret_cast<uint64_t *>(&t));
--    return *reinterpret_cast<T *>(&r);
--  } else {
--    assert(0);
--  }
--}
--
- template<typename T> FLATBUFFERS_CONSTEXPR size_t AlignOf() {
-   #ifdef _MSC_VER
-     return __alignof(T);
--- 
-2.14.1
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/files/0002-use-__builtin_bswap16-when-building-with-clang.patch b/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/files/0002-use-__builtin_bswap16-when-building-with-clang.patch
deleted file mode 100644
index 460159f..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/files/0002-use-__builtin_bswap16-when-building-with-clang.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 626fe5e043de25e970ebdf061b88c646fa689113 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 19 Sep 2017 10:09:31 -0700
-Subject: [PATCH 2/2] use __builtin_bswap16 when building with clang
-
-clang pretends to be gcc 4.2.0 and therefore the code does
-not use __builtin_bswap16 but tries to synthesize it
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Submitted
- include/flatbuffers/base.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/include/flatbuffers/base.h b/include/flatbuffers/base.h
-index c73fb2d..13e8fac 100644
---- a/include/flatbuffers/base.h
-+++ b/include/flatbuffers/base.h
-@@ -156,7 +156,7 @@ template<typename T> T EndianSwap(T t) {
-     #define FLATBUFFERS_BYTESWAP32 _byteswap_ulong
-     #define FLATBUFFERS_BYTESWAP64 _byteswap_uint64
-   #else
--    #if defined(__GNUC__) && __GNUC__ * 100 + __GNUC_MINOR__ < 408
-+    #if defined(__GNUC__) && __GNUC__ * 100 + __GNUC_MINOR__ < 408 && !defined(__clang__)
-       // __builtin_bswap16 was missing prior to GCC 4.8.
-       #define FLATBUFFERS_BYTESWAP16(x) \
-         static_cast<uint16_t>(__builtin_bswap32(static_cast<uint32_t>(x) << 16))
--- 
-2.14.1
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.9.0.bb b/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.10.0.bb
similarity index 61%
rename from meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.9.0.bb
rename to meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.10.0.bb
index a8df444..452e1e6 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.9.0.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers_1.10.0.bb
@@ -10,22 +10,19 @@
 
 LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=a873c5645c184d51e0f9b34e1d7cf559"
 
-SRCREV = "25a15950f5a24d7217689739ed8f6dac64912d62"
+SRCREV = "c0698cc33f1e534bb59c455909b88cc2726089af"
 
-SRC_URI = "git://github.com/google/flatbuffers.git \
-           file://0001-correct-version-for-so-lib.patch \
-           file://0001-flatbuffers-Move-EndianSwap-template-to-flatbuffers-.patch \
-           file://0002-use-__builtin_bswap16-when-building-with-clang.patch \
-           "
+SRC_URI = "git://github.com/google/flatbuffers.git"
 
 # Make sure C++11 is used, required for example for GCC 4.9
 CXXFLAGS += "-std=c++11"
 BUILD_CXXFLAGS += "-std=c++11"
 
+# BUILD_TYPE=Release is required, otherwise flatc is not installed
 EXTRA_OECMAKE += "\
-    -DFLATBUFFERS_BUILD_TESTS=OFF \
+    -DCMAKE_BUILD_TYPE=Release \
+    -DFLATBUFFERS_BUILD_TESTS=OFF \    
     -DFLATBUFFERS_BUILD_SHAREDLIB=ON \
-    -DPV=${PV} \
 "
 
 inherit cmake
diff --git a/meta-openembedded/meta-oe/recipes-devtools/geany/geany-plugins/0001-Use-pkg-config-to-find-gpgme.patch b/meta-openembedded/meta-oe/recipes-devtools/geany/geany-plugins/0001-Use-pkg-config-to-find-gpgme.patch
new file mode 100644
index 0000000..9030f36
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/geany/geany-plugins/0001-Use-pkg-config-to-find-gpgme.patch
@@ -0,0 +1,31 @@
+From 0c24f99ca4d4f64ea8584347ca6ae0d638d625a8 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Mon, 18 Feb 2019 16:13:17 +0100
+Subject: [PATCH] Use pkg-config to find gpgme
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+---
+ build/bundled/gpgme.m4 | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/build/bundled/gpgme.m4 b/build/bundled/gpgme.m4
+index 44bf43c..c9a8ae6 100644
+--- a/build/bundled/gpgme.m4
++++ b/build/bundled/gpgme.m4
+@@ -18,7 +18,7 @@ AC_DEFUN([_AM_PATH_GPGME_CONFIG],
+   if test "x$gpgme_config_prefix" != x ; then
+       GPGME_CONFIG="$gpgme_config_prefix/bin/gpgme-config"
+   fi
+-  AC_PATH_PROG(GPGME_CONFIG, gpgme-config, no)
++  GPGME_CONFIG="pkg-config gpgme"
+ 
+   if test "$GPGME_CONFIG" != "no" ; then
+     gpgme_version=`$GPGME_CONFIG --version`
+-- 
+2.20.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/geany/geany-plugins_1.31.bb b/meta-openembedded/meta-oe/recipes-devtools/geany/geany-plugins_1.34.bb
similarity index 74%
rename from meta-openembedded/meta-oe/recipes-devtools/geany/geany-plugins_1.31.bb
rename to meta-openembedded/meta-oe/recipes-devtools/geany/geany-plugins_1.34.bb
index d8f2f89..6c1c153 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/geany/geany-plugins_1.31.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/geany/geany-plugins_1.34.bb
@@ -11,6 +11,7 @@
 }
 
 DEPENDS = " \
+    vala-native \
     fribidi \
     geany \
     libxml2 \
@@ -19,7 +20,7 @@
     intltool-native \
     libassuan \
     gpgme \
-    vte9 \
+    vte \
     libgit2 \
 "
 
@@ -27,9 +28,12 @@
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
-SRC_URI = "http://plugins.geany.org/${PN}/${PN}-${PV}.tar.bz2"
-SRC_URI[md5sum] = "808f9048b77fd9704569ed2ba12a56e9"
-SRC_URI[sha256sum] = "76bd9e803db5a626b86669f08330cf95b8cc35057a1cdf65759bc00aef120e25"
+SRC_URI = " \
+    http://plugins.geany.org/${PN}/${PN}-${PV}.tar.bz2 \
+    file://0001-Use-pkg-config-to-find-gpgme.patch \
+"
+SRC_URI[md5sum] = "bf5fdd50727ad8bbbfe00027ccf2dac5"
+SRC_URI[sha256sum] = "244417c681636e82a63cf6f9901b5b7f3889168f7d9b5ba9b45601767a589c3b"
 
 do_configure_prepend() {
     rm -f ${S}/build/cache/glib-gettext.m4
@@ -41,38 +45,33 @@
 PLUGINS += "${PN}-addons"
 LIC_FILES_CHKSUM += "file://addons/COPYING;md5=4325afd396febcb659c36b49533135d4"
 FILES_${PN}-addons = "${libdir}/geany/addons.so"
-RDEPENDS_${PN}-addons = "${PN}"
 
 PLUGINS += "${PN}-autoclose"
 LIC_FILES_CHKSUM += "file://autoclose/COPYING;md5=751419260aa954499f7abaabaa882bbe"
 FILES_${PN}-autoclose = "${libdir}/geany/autoclose.so"
-RDEPENDS_${PN}-autoclose = "${PN}"
 
 PLUGINS += "${PN}-automark"
 LIC_FILES_CHKSUM += "file://automark/COPYING;md5=751419260aa954499f7abaabaa882bbe"
 FILES_${PN}-automark = "${libdir}/geany/automark.so"
-RDEPENDS_${PN}-automark = "${PN}"
 
 PLUGINS += "${PN}-codenav"
 LIC_FILES_CHKSUM += "file://codenav/COPYING;md5=751419260aa954499f7abaabaa882bbe"
 FILES_${PN}-codenav = "${libdir}/geany/codenav.so"
-RDEPENDS_${PN}-codenav = "${PN}"
 
 PLUGINS += "${PN}-commander"
 LIC_FILES_CHKSUM += "file://commander/COPYING;md5=d32239bcb673463ab874e80d47fae504"
 LICENSE_${PN}-commander = "GPLv3"
 FILES_${PN}-commander = "${libdir}/geany/commander.so"
-RDEPENDS_${PN}-commander = "${PN}"
 
-PLUGINS += "${PN}-debugger"
-LIC_FILES_CHKSUM += "file://debugger/COPYING;md5=4325afd396febcb659c36b49533135d4"
-FILES_${PN}-debugger = "${libdir}/geany/debugger.so ${datadir}/${PN}/debugger"
-RDEPENDS_${PN}-debugger = "${PN}"
+# | checking whether the GTK version in use is compatible with plugin Debugger... no
+EXTRA_OECONF += "--disable-debugger"
+#PLUGINS += "${PN}-debugger"
+#LIC_FILES_CHKSUM += "file://debugger/COPYING;md5=4325afd396febcb659c36b49533135d4"
+#FILES_${PN}-debugger = "${libdir}/geany/debugger.so ${datadir}/${PN}/debugger"
 
 PLUGINS += "${PN}-defineformat"
 LIC_FILES_CHKSUM += "file://defineformat/COPYING;md5=751419260aa954499f7abaabaa882bbe"
 FILES_${PN}-defineformat = "${libdir}/geany/defineformat.so"
-RDEPENDS_${PN}-defineformat = "${PN}"
 
 # no gnome devhelp in some common layer
 EXTRA_OECONF += "--disable-devhelp"
@@ -80,178 +79,149 @@
 #LIC_FILES_CHKSUM += "file://devhelp/COPYING;md5=d32239bcb673463ab874e80d47fae504"
 #LICENSE_${PN}-devhelp = "GPLv3"
 #FILES_${PN}-devhelp = "${libdir}/geany/devhelp.so"
-#RDEPENDS_${PN}-devhelp = "${PN}"
 
 PLUGINS += "${PN}-geanyctags"
 LIC_FILES_CHKSUM += "file://geanyctags/COPYING;md5=c107cf754550e65755c42985a5d4e9c9"
 FILES_${PN}-geanyctags = "${libdir}/geany/geanyctags.so"
-RDEPENDS_${PN}-geanyctags = "${PN}"
 
 PLUGINS += "${PN}-geanydoc"
 LIC_FILES_CHKSUM += "file://geanydoc/COPYING;md5=d32239bcb673463ab874e80d47fae504"
 LICENSE_${PN}-geanydoc = "GPLv3"
 FILES_${PN}-geanydoc = "${libdir}/geany/geanydoc.so"
-RDEPENDS_${PN}-geanydoc = "${PN}"
 
 PLUGINS += "${PN}-geanyextrasel"
 LIC_FILES_CHKSUM += "file://geanyextrasel/COPYING;md5=c107cf754550e65755c42985a5d4e9c9"
 FILES_${PN}-geanyextrasel = "${libdir}/geany/geanyextrasel.so"
-RDEPENDS_${PN}-geanyextrasel = "${PN}"
 
 PLUGINS += "${PN}-geanyinsertnum"
 LIC_FILES_CHKSUM += "file://geanyinsertnum/COPYING;md5=c107cf754550e65755c42985a5d4e9c9"
 FILES_${PN}-geanyinsertnum = "${libdir}/geany/geanyinsertnum.so"
-RDEPENDS_${PN}-geanyinsertnum = "${PN}"
-
-PLUGINS += "${PN}-geanylatex"
-LIC_FILES_CHKSUM += "file://geanylatex/COPYING;md5=c107cf754550e65755c42985a5d4e9c9"
-FILES_${PN}-geanylatex = "${libdir}/geany/geanylatex.so"
-RDEPENDS_${PN}-geanylatex = "${PN}"
-
-PLUGINS += "${PN}-geanylipsum"
-LIC_FILES_CHKSUM += "file://lipsum/COPYING;md5=4325afd396febcb659c36b49533135d4"
-FILES_${PN}-geanylipsum = "${libdir}/geany/lipsum.so"
-RDEPENDS_${PN}-geanylipsum = "${PN}"
 
 # no lua: max supported version is 5.2
 EXTRA_OECONF += "--disable-geanylua"
 #PLUGINS += "${PN}-geanylua"
 #LIC_FILES_CHKSUM += "file://geanylua/COPYING;md5=4325afd396febcb659c36b49533135d4"
 #FILES_${PN}-geanylua = "${libdir}/geany/geanylua.so ${libdir}/${PN}/geanylua/*.so"
-#RDEPENDS_${PN}-geanylua = "${PN}"
 
 PLUGINS += "${PN}-geanymacro"
 LIC_FILES_CHKSUM += "file://geanymacro/COPYING;md5=c107cf754550e65755c42985a5d4e9c9"
 FILES_${PN}-geanymacro = "${libdir}/geany/geanymacro.so"
-RDEPENDS_${PN}-geanymacro = "${PN}"
 
 PLUGINS += "${PN}-geanyminiscript"
 LIC_FILES_CHKSUM += "file://geanyminiscript/COPYING;md5=4325afd396febcb659c36b49533135d4"
 FILES_${PN}-geanyminiscript = "${libdir}/geany/geanyminiscript.so"
-RDEPENDS_${PN}-geanyminiscript = "${PN}"
 
 PLUGINS += "${PN}-geanynumberedbookmarks"
 LIC_FILES_CHKSUM += "file://geanynumberedbookmarks/COPYING;md5=c107cf754550e65755c42985a5d4e9c9"
 FILES_${PN}-geanynumberedbookmarks = "${libdir}/geany/geanynumberedbookmarks.so"
-RDEPENDS_${PN}-geanynumberedbookmarks = "${PN}"
 
 PLUGINS += "${PN}-geanypg"
 LIC_FILES_CHKSUM += "file://geanypg/COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
 FILES_${PN}-geanypg = "${libdir}/geany/geanypg.so"
-RDEPENDS_${PN}-geanypg = "${PN}"
 
 PLUGINS += "${PN}-geanyprj"
 LIC_FILES_CHKSUM += "file://geanyprj/COPYING;md5=d32239bcb673463ab874e80d47fae504"
 LICENSE_${PN}-geanyprj = "GPLv3"
 FILES_${PN}-geanyprj = "${libdir}/geany/geanyprj.so"
-RDEPENDS_${PN}-geanyprj = "${PN}"
 
-# no gnome pygtk
-EXTRA_OECONF += "--disable-geanypy"
 #PLUGINS += "${PN}-geanypy"
 #LIC_FILES_CHKSUM += "file://geanypy/COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
 #FILES_${PN}-geanypy = "${libdir}/geany/geanypy.so"
-#RDEPENDS_${PN}-geanypy = "${PN}"
 
 PLUGINS += "${PN}-geanyvc"
 LIC_FILES_CHKSUM += "file://geanyvc/COPYING;md5=c107cf754550e65755c42985a5d4e9c9"
 FILES_${PN}-geanyvc = "${libdir}/geany/geanyvc.so"
-RDEPENDS_${PN}-geanyvc = "${PN}"
 
 PLUGINS += "${PN}-geniuspaste"
 LIC_FILES_CHKSUM += "file://geniuspaste/COPYING;md5=bfc203269f8862ebfc1198cdc809a95a"
 FILES_${PN}-geniuspaste = "${libdir}/geany/geniuspaste.so ${datadir}/${PN}/geniuspaste"
-RDEPENDS_${PN}-geniuspaste = "${PN}"
 
 PLUGINS += "${PN}-git-changebar"
 LIC_FILES_CHKSUM += "file://git-changebar/COPYING;md5=d32239bcb673463ab874e80d47fae504"
 LICENSE_${PN}-git-changebar = "GPLv3"
-FILES_${PN}-git-changebar = "${libdir}/geany/git-changebar.so"
-RDEPENDS_${PN}-git-changebar = "${PN}"
+FILES_${PN}-git-changebar = "${datadir}/${BPN}/git-changebar ${libdir}/geany/git-changebar.so"
 
 PLUGINS += "${PN}-keyrecord"
 LIC_FILES_CHKSUM += "file://keyrecord/COPYING;md5=751419260aa954499f7abaabaa882bbe"
 FILES_${PN}-keyrecord = "${libdir}/geany/keyrecord.so"
-RDEPENDS_${PN}-keyrecord = "${PN}"
+
+PLUGINS += "${PN}-latex"
+LIC_FILES_CHKSUM += "file://latex/COPYING;md5=c107cf754550e65755c42985a5d4e9c9"
+FILES_${PN}-latex = "${libdir}/geany/latex.so"
 
 PLUGINS += "${PN}-lineoperations"
 LIC_FILES_CHKSUM += "file://lineoperations/COPYING;md5=c107cf754550e65755c42985a5d4e9c9"
 FILES_${PN}-lineoperations = "${libdir}/geany/lineoperations.so"
-RDEPENDS_${PN}-lineoperations = "${PN}"
+
+PLUGINS += "${PN}-lipsum"
+LIC_FILES_CHKSUM += "file://lipsum/COPYING;md5=4325afd396febcb659c36b49533135d4"
+FILES_${PN}-lipsum = "${libdir}/geany/lipsum.so"
 
 # no markdown - avoid floating dependencies
-EXTRA_OECONF += " --disable-peg-markdown"
+EXTRA_OECONF += "--disable-peg-markdown"
 #PLUGINS += "${PN}-markdown"
 #LIC_FILES_CHKSUM += "file://markdown/COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
 #FILES_${PN}-markdown = "${libdir}/geany/markdown.so"
-#RDEPENDS_${PN}-markdown = "${PN}"
 
-PLUGINS += "${PN}-multiterm"
-LIC_FILES_CHKSUM += "file://multiterm/COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-FILES_${PN}-multiterm = "${libdir}/geany/multiterm.so"
-RDEPENDS_${PN}-multiterm = "${PN}"
+# | checking whether the GTK version in use is compatible with plugin multiterm... no
+EXTRA_OECONF += "--disable-multiterm"
+#PLUGINS += "${PN}-multiterm"
+#LIC_FILES_CHKSUM += "file://multiterm/COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+#FILES_${PN}-multiterm = "${libdir}/geany/multiterm.so"
 
 PLUGINS += "${PN}-overview"
 LIC_FILES_CHKSUM += "file://overview/overview/overviewplugin.c;beginline=4;endline=20;md5=1aa33522916cdeb46cccac0c629da0d0"
 FILES_${PN}-overview = "${libdir}/geany/overview.so ${datadir}/${PN}/overview"
-RDEPENDS_${PN}-overview = "${PN}"
 
 PLUGINS += "${PN}-pairtaghighlighter"
 LICENSE_${PN}-pairtaghighlighter = "BSD-2-Clause"
 LIC_FILES_CHKSUM += "file://pairtaghighlighter/COPYING;md5=d6d927525a612b3a8dbebc4b2e9b47c1"
 FILES_${PN}-pairtaghighlighter = "${libdir}/geany/pairtaghighlighter.so"
-RDEPENDS_${PN}-pairtaghighlighter = "${PN}"
 
 PLUGINS += "${PN}-pohelper"
 LICENSE_${PN}-pohelper = "GPLv3"
 LIC_FILES_CHKSUM += "file://pohelper/COPYING;md5=d32239bcb673463ab874e80d47fae504"
-FILES_${PN}-pohelper = "${libdir}/geany/pohelper.so"
-RDEPENDS_${PN}-pohelper = "${PN}"
+FILES_${PN}-pohelper = "${datadir}/${BPN}/pohelper ${libdir}/geany/pohelper.so"
 
 PLUGINS += "${PN}-pretty-printer"
 LIC_FILES_CHKSUM += "file://pretty-printer/src/PrettyPrinter.c;beginline=1;endline=17;md5=1665115c2fadb17c1b53cdb4e43b2440"
 FILES_${PN}-pretty-printer = "${libdir}/geany/pretty-printer.so"
-RDEPENDS_${PN}-pretty-printer = "${PN}"
 
 PLUGINS += "${PN}-projectorganizer"
 LIC_FILES_CHKSUM += "file://projectorganizer/COPYING;md5=c107cf754550e65755c42985a5d4e9c9"
 FILES_${PN}-projectorganizer = "${libdir}/geany/projectorganizer.so"
-RDEPENDS_${PN}-projectorganizer = "${PN}"
 
 PLUGINS += "${PN}-scope"
 LIC_FILES_CHKSUM += "file://scope/COPYING;md5=c107cf754550e65755c42985a5d4e9c9"
-FILES_${PN}-scope = "${libdir}/geany/scope.so"
-RDEPENDS_${PN}-scope = "${PN}"
+FILES_${PN}-scope = "${datadir}/${BPN}/scope ${libdir}/geany/scope.so"
 
 PLUGINS += "${PN}-sendmail"
 LIC_FILES_CHKSUM += "file://sendmail/COPYING;md5=c107cf754550e65755c42985a5d4e9c9"
 FILES_${PN}-sendmail = "${libdir}/geany/sendmail.so"
-RDEPENDS_${PN}-sendmail = "${PN}"
 
 PLUGINS += "${PN}-shiftcolumn"
 LIC_FILES_CHKSUM += "file://shiftcolumn/COPYING;md5=751419260aa954499f7abaabaa882bbe"
 FILES_${PN}-shiftcolumn = "${libdir}/geany/shiftcolumn.so"
-RDEPENDS_${PN}-shiftcolumn = "${PN}"
 
 PLUGINS += "${PN}-spellcheck"
 LIC_FILES_CHKSUM += "file://spellcheck/COPYING;md5=4325afd396febcb659c36b49533135d4"
 FILES_${PN}-spellcheck = "${libdir}/geany/spellcheck.so"
-RDEPENDS_${PN}-spellcheck = "${PN}"
 
 PLUGINS += "${PN}-tableconvert"
 LIC_FILES_CHKSUM += "file://tableconvert/COPYING;md5=6753686878d090a1f3f9445661d3dfbc"
 FILES_${PN}-tableconvert = "${libdir}/geany/tableconvert.so"
-RDEPENDS_${PN}-tableconvert = "${PN}"
 
 PLUGINS += "${PN}-treebrowser"
-LIC_FILES_CHKSUM += "file://treebrowser/README;beginline=67;endline=67;md5=52f90857fd1a9672111e472dd056a0d8"
+LIC_FILES_CHKSUM += "file://treebrowser/README;beginline=67;endline=67;md5=1f17f0f2abb88e0fa0f1b342112d871c"
 FILES_${PN}-treebrowser = "${libdir}/geany/treebrowser.so"
-RDEPENDS_${PN}-treebrowser = "${PN}"
 
 PLUGINS += "${PN}-updatechecker"
 LIC_FILES_CHKSUM += "file://updatechecker/COPYING;md5=4325afd396febcb659c36b49533135d4"
 FILES_${PN}-updatechecker = "${libdir}/geany/updatechecker.so"
-RDEPENDS_${PN}-updatechecker = "${PN}"
+
+PLUGINS += "${PN}-vimode"
+LIC_FILES_CHKSUM += "file://vimode/COPYING;md5=c107cf754550e65755c42985a5d4e9c9"
+FILES_${PN}-vimode = "${libdir}/geany/vimode.so"
 
 # no webkit - lasts ages and is not properly detected
 EXTRA_OECONF += " --disable-webhelper"
@@ -259,13 +229,18 @@
 #LIC_FILES_CHKSUM += "file://webhelper/COPYING;md5=d32239bcb673463ab874e80d47fae504"
 #LICENSE_${PN}-webhelper = "GPLv3"
 #FILES_${PN}-webhelper = "${libdir}/geany/webhelper.so"
-#RDEPENDS_${PN}-webhelper = "${PN}"
+
+PLUGINS += "${PN}-workbench"
+LIC_FILES_CHKSUM += "file://workbench/COPYING;md5=c107cf754550e65755c42985a5d4e9c9"
+FILES_${PN}-workbench = "${libdir}/geany/workbench.so"
 
 PLUGINS += "${PN}-xmlsnippets"
 LIC_FILES_CHKSUM += "file://xmlsnippets/COPYING;md5=4325afd396febcb659c36b49533135d4"
 FILES_${PN}-xmlsnippets = "${libdir}/geany/xmlsnippets.so"
-RDEPENDS_${PN}-xmlsnippets = "${PN}"
 
-PACKAGES =+ "${PLUGINS}"
+PACKAGES =+ "${PN}-common ${PLUGINS}"
+FILES_${PN}-common = "${libdir}/libgeanypluginutils${SOLIBS}"
+
+# geany-plugins is meta package for all plugins
 RDEPENDS_${PN} = "${PLUGINS}"
 ALLOW_EMPTY_${PN} = "1"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/geany/geany_1.31.bb b/meta-openembedded/meta-oe/recipes-devtools/geany/geany_1.34.1.bb
similarity index 64%
rename from meta-openembedded/meta-oe/recipes-devtools/geany/geany_1.31.bb
rename to meta-openembedded/meta-oe/recipes-devtools/geany/geany_1.34.1.bb
index bb9d8bc..aab535d 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/geany/geany_1.31.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/geany/geany_1.34.1.bb
@@ -3,15 +3,15 @@
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=bd7b2c994af21d318bd2cd3b3f80c2d5"
 
-DEPENDS = "gtk+ libxml-parser-perl-native python3-docutils-native intltool-native"
+DEPENDS = "gtk+3 libxml-parser-perl-native python3-docutils-native intltool-native"
 
 inherit distro_features_check autotools pkgconfig perlnative pythonnative gettext
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
 SRC_URI = "http://download.geany.org/${BP}.tar.bz2"
-SRC_URI[md5sum] = "386000be6b26972c6a699939c37cda34"
-SRC_URI[sha256sum] = "30fdb906bb76c4251a8bcf83ee267db28c26ef6ab867668a782cec1164a3aba5"
+SRC_URI[md5sum] = "87220f4a0e03623ab9d86820f6be7b5d"
+SRC_URI[sha256sum] = "e765efd89e759defe3fd797d8a2052afbb4b23522efbcc72e3a72b7f1093ec11"
 
 FILES_${PN} += "${datadir}/icons"
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.4.bb b/meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.4.bb
new file mode 100644
index 0000000..1a41345
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/guider/guider_3.9.4.bb
@@ -0,0 +1,35 @@
+SUMMARY = "runtime performance analyzer"
+HOMEPAGE = "https://github.com/iipeace/guider"
+BUGTRACKER = "https://github.com/iipeace/guider/issues"
+AUTHOR = "Peace Lee <ipeace5@gmail.com>"
+
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=2c1c00f9d3ed9e24fa69b932b7e7aff2"
+
+PV = "3.9.4+git${SRCPV}"
+PR = "r0"
+
+SRC_URI = "git://github.com/iipeace/${BPN}"
+#SRCREV = "${AUTOREV}"
+SRCREV = "b433f3805674ef4588c1a161986c74eeac6a48e7"
+
+S = "${WORKDIR}/git"
+R = "${RECIPE_SYSROOT}"
+
+inherit distutils
+
+GUIDER_OBJ = "guider.pyc"
+GUIDER_SCRIPT = "guider"
+
+do_install() {
+    python ${S}/setup.py install
+
+    install -d ${D}${bindir}
+    install -v -m 0755 ${STAGING_BINDIR_NATIVE}/${GUIDER_SCRIPT} ${D}${bindir}/${GUIDER_SCRIPT}
+
+    install -d ${D}${datadir}/${BPN}
+    install -v -m 0755 ${STAGING_LIBDIR_NATIVE}/python${PYTHON_BASEVERSION}/site-packages/${BPN}/${GUIDER_OBJ} ${D}${datadir}/${BPN}/${GUIDER_OBJ}
+}
+
+RDEPENDS_${PN} = "python-ctypes python-shell \
+                  python-json python-subprocess"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/jq/jq/Support-without-oniguruma.patch b/meta-openembedded/meta-oe/recipes-devtools/jq/jq/Support-without-oniguruma.patch
deleted file mode 100644
index 1dfd955..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/jq/jq/Support-without-oniguruma.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-From 18b4b18b41f5ed396d73449ce8d6ec408d95d6b2 Mon Sep 17 00:00:00 2001
-From: David Tolnay <dtolnay@gmail.com>
-Date: Sat, 21 Nov 2015 10:05:37 -0800
-Subject: [PATCH] Support --without-oniguruma
-
-Upstream-Status: Backport
-
-Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
-
----
- configure.ac | 41 ++++++++++++++++++++---------------------
- 1 file changed, 20 insertions(+), 21 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 9e2c8cf..7f6be34 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -52,27 +52,26 @@ fi
- AC_ARG_WITH([oniguruma],
-     [AS_HELP_STRING([--with-oniguruma=prefix],
-         [try this for a non-standard install prefix of the oniguruma library])],
--    [ONIGURUMAPATHSET=1],
--    [ONIGURUMAPATHSET=0])
--
--if test $ONIGURUMAPATHSET = 1; then
--  CFLAGS="$CFLAGS -I${with_oniguruma}/include"
--  LDFLAGS="$LDFLAGS -L${with_oniguruma}/lib"
--fi
--
--# check for ONIGURUMA library
--HAVE_ONIGURUMA=0
--AC_CHECK_HEADER("oniguruma.h",
--    AC_CHECK_LIB([onig],[onig_version],[LIBS="$LIBS -lonig"; HAVE_ONIGURUMA=1;]))
--
--# handle check results
--if test $HAVE_ONIGURUMA != 1; then
--    AC_MSG_NOTICE([Oniguruma was not found.])
--    AC_MSG_NOTICE([ Try setting the location using '--with-oniguruma=PREFIX' ])
--else
--    AC_DEFINE([HAVE_ONIGURUMA],1,[Define to 1 if Oniguruma is installed])
--fi
--
-+    [],
-+    [with_oniguruma=yes])
-+
-+AS_IF([test "x$with_oniguruma" != xno], [
-+    AS_IF([test "x$with_oniguruma" != xyes], [
-+        CFLAGS="$CFLAGS -I${with_oniguruma}/include"
-+        LDFLAGS="$LDFLAGS -L${with_oniguruma}/lib"
-+    ])
-+    # check for ONIGURUMA library
-+    have_oniguruma=0
-+    AC_CHECK_HEADER("oniguruma.h",
-+        AC_CHECK_LIB([onig],[onig_version],[LIBS="$LIBS -lonig"; have_oniguruma=1;]))
-+    # handle check results
-+    AS_IF([test $have_oniguruma = 1], [
-+        AC_DEFINE([HAVE_ONIGURUMA], 1, [Define to 1 if Oniguruma is installed])
-+    ], [
-+        AC_MSG_NOTICE([Oniguruma was not found.])
-+        AC_MSG_NOTICE([Try setting the location using '--with-oniguruma=PREFIX'])
-+    ])
-+])
- 
- dnl Check for valgrind
- AC_CHECK_PROGS(valgrind_cmd, valgrind)
--- 
-1.9.1
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/jq/jq_1.5.bb b/meta-openembedded/meta-oe/recipes-devtools/jq/jq_1.6.bb
similarity index 75%
rename from meta-openembedded/meta-oe/recipes-devtools/jq/jq_1.5.bb
rename to meta-openembedded/meta-oe/recipes-devtools/jq/jq_1.6.bb
index 0f40815..0086eae 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/jq/jq_1.5.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/jq/jq_1.6.bb
@@ -6,16 +6,15 @@
 BUGTRACKER = "https://github.com/stedolan/jq/issues"
 SECTION = "utils"
 LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=29dd0c35d7e391bb8d515eacf7592e00"
+LIC_FILES_CHKSUM = "file://COPYING;md5=15d03e360fa7399f76d5a4359fc72cbf"
 
 SRC_URI = "https://github.com/stedolan/${BPN}/releases/download/${BP}/${BP}.tar.gz \
-           file://Support-without-oniguruma.patch \
 "
 
-SRC_URI[md5sum] = "0933532b086bd8b6a41c1b162b1731f9"
-SRC_URI[sha256sum] = "c4d2bfec6436341113419debf479d833692cc5cdab7eb0326b5a4d4fbe9f493c"
+SRC_URI[md5sum] = "e68fbd6a992e36f1ac48c99bbf825d6b"
+SRC_URI[sha256sum] = "5de8c8e29aaa3fb9cc6b47bb27299f271354ebb72514e3accadc7d38b5bbaa72"
 
-inherit autotools
+inherit autotools-brokensep
 
 PACKAGECONFIG ?= "oniguruma"
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-cmake-replace-hardcoded-lib-CMAKE_LIBRARY_PATH-with-.patch b/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-cmake-replace-hardcoded-lib-CMAKE_LIBRARY_PATH-with-.patch
deleted file mode 100644
index 748e4da..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-cmake-replace-hardcoded-lib-CMAKE_LIBRARY_PATH-with-.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-From ac61124df17ab76527508bbb9a3115d4d6cc1af6 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 21 Nov 2016 11:26:26 -0800
-Subject: [PATCH] cmake: replace hardcoded lib/${CMAKE_LIBRARY_PATH} with
- {CMAKE_INSTALL_LIBDIR}
-
-Fixes
-| CMake Error at src/jsonrpccpp/CMakeLists.txt:207 (install):
-|   install TARGETS given unknown argument "/lib".
-
-and
-
-Wrong install paths during cross compile
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/jsonrpccpp/CMakeLists.txt    | 8 ++++----
- src/stubgenerator/CMakeLists.txt | 6 +++---
- 2 files changed, 7 insertions(+), 7 deletions(-)
-
-diff --git a/src/jsonrpccpp/CMakeLists.txt b/src/jsonrpccpp/CMakeLists.txt
-index e4a1eb5..13f9056 100644
---- a/src/jsonrpccpp/CMakeLists.txt
-+++ b/src/jsonrpccpp/CMakeLists.txt
-@@ -205,15 +205,15 @@ if (WIN32)
- endif()
- 
- install(TARGETS ${ALL_LIBS}
--	LIBRARY DESTINATION lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}
--	ARCHIVE DESTINATION lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}
-+	LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
-+	ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
- 	RUNTIME DESTINATION bin
- )
- 
- #set pkg-config
- get_filename_component(FULL_PATH_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} ABSOLUTE)
- set(FULL_PATH_INCLUDEDIR "${FULL_PATH_INSTALL_PREFIX}/include")
--set(FULL_PATH_LIBDIR "${FULL_PATH_INSTALL_PREFIX}/lib/${CMAKE_LIBRARY_PATH}")
-+set(FULL_PATH_LIBDIR "${FULL_PATH_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}")
- 
- CONFIGURE_FILE(${PROJECT_SOURCE_DIR}/cmake/libjsonrpccpp-client.pc.cmake ${CMAKE_BINARY_DIR}/libjsonrpccpp-client.pc)
- CONFIGURE_FILE(${PROJECT_SOURCE_DIR}/cmake/libjsonrpccpp-server.pc.cmake ${CMAKE_BINARY_DIR}/libjsonrpccpp-server.pc)
-@@ -223,6 +223,6 @@ INSTALL(FILES
-     "${CMAKE_BINARY_DIR}/libjsonrpccpp-server.pc"
-     "${CMAKE_BINARY_DIR}/libjsonrpccpp-client.pc"
-     "${CMAKE_BINARY_DIR}/libjsonrpccpp-common.pc"
--    DESTINATION "lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}/pkgconfig")
-+    DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
- 
- 
-diff --git a/src/stubgenerator/CMakeLists.txt b/src/stubgenerator/CMakeLists.txt
-index f9dbe4c..b57b0fe 100644
---- a/src/stubgenerator/CMakeLists.txt
-+++ b/src/stubgenerator/CMakeLists.txt
-@@ -58,15 +58,15 @@ CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/cmake/libjsonrpccpp-stub.pc.cmake ${CMAKE_BIN
- 
- INSTALL(FILES
-     "${CMAKE_BINARY_DIR}/libjsonrpccpp-stub.pc"
--    DESTINATION "lib/${CMAKE_LIBRARY_PATH}/pkgconfig")
-+    DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
- 
- install(DIRECTORY ${CMAKE_SOURCE_DIR}/src/stubgenerator/
-         DESTINATION include/jsonrpccpp/stubgen
-         FILES_MATCHING PATTERN "*.h")
- 
- install(TARGETS ${ALL_LIBS} jsonrpcstub
--        LIBRARY DESTINATION lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}
--        ARCHIVE DESTINATION lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}
-+        LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
-+        ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
-         RUNTIME DESTINATION bin
- )
- 
--- 
-2.10.2
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorclient-Typecast-min-arguments-correctl.patch b/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorclient-Typecast-min-arguments-correctl.patch
deleted file mode 100644
index d21e979..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorclient-Typecast-min-arguments-correctl.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 9500f12f5d827840634311d6ca972d9551211e4d Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 21 Nov 2016 01:00:51 -0800
-Subject: [PATCH] filedescriptorclient: Typecast min() arguments correctly
-
-Fixes
-
-| /mnt/a/build/tmp-glibc/work/cortexa7hf-neon-vfpv4-oe-linux-gnueabi/jsonrpc/0.7.0-r0/git/src/jsonrpccp
-p/client/connectors/filedescriptorclient.cpp:47:92: note:   deduced conflicting types for parameter 'co
-nst _Tp' ('unsigned int' and 'long unsigned int')
-|      ssize_t byteWritten = write(outputfd, toSend.c_str(), min(toSend.size(), MAX_WRITE_SIZE));
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/jsonrpccpp/client/connectors/filedescriptorclient.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/jsonrpccpp/client/connectors/filedescriptorclient.cpp b/src/jsonrpccpp/client/connectors/filedescriptorclient.cpp
-index 77aac7e..6325b5c 100644
---- a/src/jsonrpccpp/client/connectors/filedescriptorclient.cpp
-+++ b/src/jsonrpccpp/client/connectors/filedescriptorclient.cpp
-@@ -43,7 +43,7 @@ void FileDescriptorClient::SendRPCMessage(const std::string& message,
-   string toSend = message;
-   do
-   {
--    ssize_t byteWritten = write(outputfd, toSend.c_str(), min(toSend.size(), MAX_WRITE_SIZE));
-+    ssize_t byteWritten = write(outputfd, toSend.c_str(), min((long unsigned int)toSend.size(), MAX_WRITE_SIZE));
-     if (byteWritten < 1)
-       throw JsonRpcException(Errors::ERROR_CLIENT_CONNECTOR,
-         "Unknown error occured while writing to the output file descriptor");
--- 
-2.10.2
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorserver-Include-sys-select.h-before-oth.patch b/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorserver-Include-sys-select.h-before-oth.patch
deleted file mode 100644
index 3b9068a..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorserver-Include-sys-select.h-before-oth.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From c7aad10628949e126f50e3264b5bc7eb417347c6 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 21 Nov 2016 01:25:10 -0800
-Subject: [PATCH] filedescriptorserver: Include sys/select.h before other
- headers
-
-Fixes errors e.g.
-| /mnt/a/build/tmp-glibc/work/cortexa7hf-neon-vfpv4-oe-linux-gnueabi/jsonrpc/0.7.0-r0/git/src/jsonrpccp
-p/server/connectors/filedescriptorserver.h:63:7: error: unknown type name 'fd_set'
-|       fd_set read_fds;
-|       ^
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/jsonrpccpp/server/connectors/filedescriptorserver.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp b/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp
-index 9d74223..8e019ca 100644
---- a/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp
-+++ b/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp
-@@ -7,8 +7,8 @@
-  * @license See attached LICENSE.txt
-  ************************************************************************/
- 
--#include "filedescriptorserver.h"
- #include <sys/select.h>
-+#include "filedescriptorserver.h"
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <unistd.h>
--- 
-2.10.2
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-memset-and-family-needs-to-include-string.h.patch b/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-memset-and-family-needs-to-include-string.h.patch
deleted file mode 100644
index 21ef98b..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-memset-and-family-needs-to-include-string.h.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From f5416f1c2b2989f94163a2ae4b91c9b9fa13c620 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 31 Mar 2017 13:32:31 -0700
-Subject: [PATCH 1/2] memset() and family needs to include string.h
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/jsonrpccpp/server/connectors/unixdomainsocketserver.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/jsonrpccpp/server/connectors/unixdomainsocketserver.cpp b/src/jsonrpccpp/server/connectors/unixdomainsocketserver.cpp
-index 9fca57b..e63c49e 100644
---- a/src/jsonrpccpp/server/connectors/unixdomainsocketserver.cpp
-+++ b/src/jsonrpccpp/server/connectors/unixdomainsocketserver.cpp
-@@ -16,7 +16,7 @@
- #include <cstdio>
- #include <fcntl.h>
- #include <unistd.h>
--#include <string>
-+#include <cstring>
- 
- using namespace jsonrpc;
- using namespace std;
--- 
-2.12.1
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0002-Fix-build-problem-on-Mac.patch b/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0002-Fix-build-problem-on-Mac.patch
deleted file mode 100644
index aece45b..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0002-Fix-build-problem-on-Mac.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 79050ef9607f242e0d509969b19e9390220c3411 Mon Sep 17 00:00:00 2001
-From: Yongwei Wu <wuyongwei@gmail.com>
-Date: Sat, 31 Dec 2016 11:57:11 +0800
-Subject: [PATCH 2/2] Fix build problem on Mac.
-
-__suseconds_t is not defined on Mac/BSD; use the POSIX-conformant
-suseconds_t.
----
- src/jsonrpccpp/server/connectors/filedescriptorserver.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp b/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp
-index 8e019ca..68107f2 100644
---- a/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp
-+++ b/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp
-@@ -122,7 +122,7 @@ int FileDescriptorServer::WaitForRead() {
-   FD_ZERO(&except_fds);
-   FD_SET(inputfd, &read_fds);
-   timeout.tv_sec = 0;
--  timeout.tv_usec = (__suseconds_t) (READ_TIMEOUT * 1000000);
-+  timeout.tv_usec = (suseconds_t) (READ_TIMEOUT * 1000000);
-   // Wait for something to read
-   return select(inputfd + 1, &read_fds, &write_fds, &except_fds, &timeout);
- }
--- 
-2.12.1
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc_0.7.0.bb b/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc_0.7.0.bb
deleted file mode 100644
index eb1ff65..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc_0.7.0.bb
+++ /dev/null
@@ -1,32 +0,0 @@
-SUMMARY = "C++ framework for json-rpc 1.0 and 2.0"
-DESCRIPTION = "JsonRpc-Cpp is an OpenSource implementation of JSON-RPC \
-               protocol in C++. JSON-RPC is a lightweight remote procedure \
-               call protocol similar to XML-RPC."
-HOMEPAGE = "https://github.com/cinemast/libjson-rpc-cpp"
-
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=ee72d601854d5d2a065cf642883c489b"
-
-PV = "0.7.0+git${SRCPV}"
-
-SRC_URI = "git://github.com/cinemast/libjson-rpc-cpp \
-           file://0001-cmake-replace-hardcoded-lib-CMAKE_LIBRARY_PATH-with-.patch \
-           file://0001-filedescriptorclient-Typecast-min-arguments-correctl.patch \
-           file://0001-filedescriptorserver-Include-sys-select.h-before-oth.patch \
-           file://0001-memset-and-family-needs-to-include-string.h.patch \
-           file://0002-Fix-build-problem-on-Mac.patch \
-           "
-SRCREV = "ccbdb41388bdd929828941652da816bf52a0580e"
-
-SECTION = "libs"
-
-DEPENDS = "curl jsoncpp libmicrohttpd"
-
-S = "${WORKDIR}/git"
-
-inherit cmake
-
-EXTRA_OECMAKE += "-DCOMPILE_TESTS=NO -DCOMPILE_STUBGEN=NO -DCOMPILE_EXAMPLES=NO \
-                  -DBUILD_SHARED_LIBS=YES -DBUILD_STATIC_LIBS=YES \
-                  -DCMAKE_LIBRARY_PATH=${libdir} \
-"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc_git.bb b/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc_git.bb
new file mode 100644
index 0000000..aea11b0
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc_git.bb
@@ -0,0 +1,28 @@
+SUMMARY = "C++ framework for json-rpc 1.0 and 2.0"
+DESCRIPTION = "JsonRpc-Cpp is an OpenSource implementation of JSON-RPC \
+               protocol in C++. JSON-RPC is a lightweight remote procedure \
+               call protocol similar to XML-RPC."
+HOMEPAGE = "https://github.com/cinemast/libjson-rpc-cpp"
+
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=4e728c5b36018f6c383b4b9efd9c8840"
+SECTION = "libs"
+DEPENDS = "curl jsoncpp libmicrohttpd hiredis"
+
+PV = "1.1.1+git${SRCPV}"
+# v1.1.1
+SRCREV = "319783c635cf8cabcc1a980495c99a88f9ebbd97"
+
+SRC_URI = "git://github.com/cinemast/libjson-rpc-cpp \
+           "
+
+S = "${WORKDIR}/git"
+
+inherit cmake
+
+EXTRA_OECMAKE += "-DCOMPILE_TESTS=NO -DCOMPILE_STUBGEN=NO -DCOMPILE_EXAMPLES=NO \
+                  -DBUILD_SHARED_LIBS=YES -DBUILD_STATIC_LIBS=YES \
+                  -DCMAKE_LIBRARY_PATH=${libdir} \
+"
+
+FILES_${PN}-dev += "${libdir}/libjson-rpc-cpp/cmake"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit_20180525-3.1.bb b/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit_20181209-3.1.bb
similarity index 76%
rename from meta-openembedded/meta-oe/recipes-devtools/libedit/libedit_20180525-3.1.bb
rename to meta-openembedded/meta-oe/recipes-devtools/libedit/libedit_20181209-3.1.bb
index 8cc0e95..c0a3d21 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit_20180525-3.1.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit_20181209-3.1.bb
@@ -15,7 +15,9 @@
 SRC_URI = "http://www.thrysoee.dk/editline/${BPN}-${PV}.tar.gz \
            file://stdc-predef.patch \
           "
-SRC_URI[md5sum] = "97679319742f45d6cdcd6075511b14ac"
-SRC_URI[sha256sum] = "c41bea8fd140fb57ba67a98ec1d8ae0b8ffa82f4aba9c35a87e5a9499e653116"
+SRC_URI[md5sum] = "22e945a0476e388e6f78bfc8d6e1192c"
+SRC_URI[sha256sum] = "2811d70c0b000f2ca91b7cb1a37203134441743c4fcc9c37b0b687f328611064"
 
 S = "${WORKDIR}/${BPN}-${PV}"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.18.0.bb b/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.1.bb
similarity index 83%
rename from meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.18.0.bb
rename to meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.1.bb
index 6386f1f..190e5dd 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.18.0.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.20.1.bb
@@ -20,5 +20,5 @@
 
 SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}"
 SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/libgee/${SHRT_VER}/${BP}.tar.xz"
-SRC_URI[md5sum] = "29ea6125e653d7e60b49a9a9544abc96"
-SRC_URI[sha256sum] = "4ad99ef937d071b4883c061df40bfe233f7649d50c354cf81235f180b4244399"
+SRC_URI[md5sum] = "d224dca55bb909f6730f40cc267337be"
+SRC_URI[sha256sum] = "bb2802d29a518e8c6d2992884691f06ccfcc25792a5686178575c7111fea4630"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus_2.0.2.bb b/meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus_2.0.3.bb
similarity index 80%
rename from meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus_2.0.2.bb
rename to meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus_2.0.3.bb
index d17d15c..56c62f1 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus_2.0.2.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus_2.0.3.bb
@@ -7,8 +7,8 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=41e8e060c26822886b592ab4765c756b"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}-stable/${PV}/${BP}.tar.gz"
-SRC_URI[md5sum] = "b3bbeb2dc3e170768430cf87583016f8"
-SRC_URI[sha256sum] = "10539f2315271d370c7bc6a2b4808cbe369279837f4539ce5c789e456489fc62"
+SRC_URI[md5sum] = "20a87090cd8ec34ea11b3e59954234cb"
+SRC_URI[sha256sum] = "2d8f627aa6417e6c6a100bc09dc407684ca4605c929defc1690ee7d6a575ce6a"
 
 UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/log4cplus/files/log4cplus-stable/"
 UPSTREAM_CHECK_REGEX = "log4cplus-stable/(?P<pver>\d+(\.\d+)+)/"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/lshw/lshw_02.18.bb b/meta-openembedded/meta-oe/recipes-devtools/lshw/lshw_02.18.bb
index b344fbf..d1a7334 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/lshw/lshw_02.18.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/lshw/lshw_02.18.bb
@@ -30,3 +30,5 @@
 do_install() {
     oe_runmake install DESTDIR=${D}
 }
+
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-hook-Do-not-append-int-to-std-string.patch b/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-hook-Do-not-append-int-to-std-string.patch
new file mode 100644
index 0000000..8f1c4b9
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-hook-Do-not-append-int-to-std-string.patch
@@ -0,0 +1,33 @@
+From 8321f8b3befbaa355cfed988fdd8494133989676 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 4 Feb 2019 00:38:16 -0800
+Subject: [PATCH] hook: Do not append int to std::string
+
+Clang find this error
+
+| ../../../git/sysdeps/linux-gnu/hooks.c:205:51: error: adding 'int' to a string does not append to the string [-Werror,-Wstring-plus
+-int]
+|                     || sprintf(syspath, "%s/%s", sysconfdir, FN + 1) < 0)
+|                                                              ~~~^~~
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ sysdeps/linux-gnu/hooks.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/sysdeps/linux-gnu/hooks.c
++++ b/sysdeps/linux-gnu/hooks.c
+@@ -200,9 +200,10 @@ os_get_ltrace_conf_filenames(struct vect
+ 	const char *sysconfdir = SYSCONFDIR;
+ 	if (sysconfdir != NULL && *sysconfdir != '\0') {
+ 		/* No +1, we skip the initial period.  */
+-		syspath = malloc(strlen(sysconfdir) + sizeof FN);
++		syspath = malloc(strlen(sysconfdir) + sizeof FN + 1);
++		syspath[strlen(sysconfdir) + sizeof FN + 1] = '\0';
+ 		if (syspath == NULL
+-		    || sprintf(syspath, "%s/%s", sysconfdir, FN + 1) < 0)
++		    || sprintf(syspath, "%s/%s", sysconfdir, FN) < 0)
+ 			goto fail;
+ 	}
+ 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-move-fprintf-into-same-block-where-modname-and-symna.patch b/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-move-fprintf-into-same-block-where-modname-and-symna.patch
new file mode 100644
index 0000000..54acaac
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-move-fprintf-into-same-block-where-modname-and-symna.patch
@@ -0,0 +1,37 @@
+From 0cad025f80cf090dc16a5b70e21477f5b08a67fd Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 20 Dec 2018 11:27:45 -0800
+Subject: [PATCH] move fprintf into same block where modname and symname are
+ computed
+
+In its current state if mod turns out to be NULL then modname and
+symname will also turn out to be NULL and fprinting them as strings will
+be problematic
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ output.c | 7 +++----
+ 1 file changed, 3 insertions(+), 4 deletions(-)
+
+diff --git a/output.c b/output.c
+index b63befe..5aada7b 100644
+--- a/output.c
++++ b/output.c
+@@ -654,12 +654,11 @@ frame_callback (Dwfl_Frame *state, void *arg)
+ 					   NULL, NULL, NULL);
+ 		symname = dwfl_module_addrinfo(mod, pc, &off, &sym,
+ 					       NULL, NULL, NULL);
++		/* This mimics the output produced by libunwind below.  */
++		fprintf(options.output, " > %s(%s+0x%" PRIx64 ") [%" PRIx64 "]\n",
++			modname, symname, off, pc);
+ 	}
+ 
+-	/* This mimics the output produced by libunwind below.  */
+-	fprintf(options.output, " > %s(%s+0x%" PRIx64 ") [%" PRIx64 "]\n",
+-		modname, symname, off, pc);
+-
+ 	/* See if we can extract the source line too and print it on
+ 	   the next line if we can find it.  */
+ 	if (mod != NULL) {
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 f4033f7..3dc269c 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
@@ -25,6 +25,8 @@
            file://0001-Add-support-for-mips64-n32-n64.patch \
            file://0001-configure-Recognise-linux-musl-as-a-host-OS.patch \
            file://0001-mips-plt.c-Delete-include-error.h.patch \
+           file://0001-move-fprintf-into-same-block-where-modname-and-symna.patch \
+           file://0001-hook-Do-not-append-int-to-std-string.patch \
            "
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/luajit/luajit_2.0.5.bb b/meta-openembedded/meta-oe/recipes-devtools/luajit/luajit_2.0.5.bb
index f3a0f70..c2d2180 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/luajit/luajit_2.0.5.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/luajit/luajit_2.0.5.bb
@@ -22,7 +22,7 @@
 # you need to install the multilib development package (e.g.
 # libc6-dev-i386 on Debian/Ubuntu) and build a 32 bit host part
 # (HOST_CC="gcc -m32").
-BUILD_CC_ARCH_append = " ${@['-m32',''][d.getVar('SITEINFO_BITS', True) != '32']}"
+BUILD_CC_ARCH_append = " ${@['-m32',''][d.getVar('SITEINFO_BITS') != '32']}"
 
 # The lua makefiles expect the TARGET_SYS to be from uname -s
 # Values: Windows, Linux, Darwin, iOS, SunOS, PS3, GNU/kFreeBSD
diff --git a/meta-openembedded/meta-oe/recipes-devtools/msgpack/msgpack-c/0001-Fix-Werror-class-memaccess.patch b/meta-openembedded/meta-oe/recipes-devtools/msgpack/msgpack-c/0001-Fix-Werror-class-memaccess.patch
deleted file mode 100644
index b0d772d..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/msgpack/msgpack-c/0001-Fix-Werror-class-memaccess.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From a05d92ae85024d0648f69f95307a1d3e8e51109c Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 1 Apr 2018 19:55:38 -0700
-Subject: [PATCH] Fix -Werror=class-memaccess
-
-Casting to void* make gcc happy since its upset about
-object types and rightly so
-
-Fixes
-
-'void* memcpy(void*, const void*, size_t)' copying an object of non-trivial type 'struct msgpack::v2::object' from an array of 'const msgpack_object' {aka 'const struct msgpack_object'} [-Werror=class-memaccess]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Submitted [https://github.com/msgpack/msgpack-c/pull/659]
-
- include/msgpack/v1/object.hpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/include/msgpack/v1/object.hpp b/include/msgpack/v1/object.hpp
-index 64da8c53..9721f705 100644
---- a/include/msgpack/v1/object.hpp
-+++ b/include/msgpack/v1/object.hpp
-@@ -661,7 +661,7 @@ inline object::object(const msgpack_object& o)
- inline void operator<< (msgpack::object& o, const msgpack_object& v)
- {
-     // FIXME beter way?
--    std::memcpy(&o, &v, sizeof(v));
-+    std::memcpy(static_cast<void*>(&o), &v, sizeof(v));
- }
- 
- inline object::operator msgpack_object() const
--- 
-2.16.3
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/msgpack/msgpack-c_2.1.5.bb b/meta-openembedded/meta-oe/recipes-devtools/msgpack/msgpack-c_3.1.1.bb
similarity index 84%
rename from meta-openembedded/meta-oe/recipes-devtools/msgpack/msgpack-c_2.1.5.bb
rename to meta-openembedded/meta-oe/recipes-devtools/msgpack/msgpack-c_3.1.1.bb
index 690a7f4..90fd44e 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/msgpack/msgpack-c_2.1.5.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/msgpack/msgpack-c_3.1.1.bb
@@ -10,9 +10,9 @@
 PV .= "+git${SRCPV}"
 
 SRC_URI = "git://github.com/msgpack/msgpack-c \
-           file://0001-Fix-Werror-class-memaccess.patch \
            "
-SRCREV = "208595b2620cf6260ce3d6d4cf8543f13b206449"
+# cpp-3.1.1
+SRCREV = "83a82e3eb512b18d4149cabb7eb43c7e8bc081af"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0001-Disable-running-gyp-files-for-bundled-deps.patch b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0001-Disable-running-gyp-files-for-bundled-deps.patch
index 324a468..5d0dc03 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0001-Disable-running-gyp-files-for-bundled-deps.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0001-Disable-running-gyp-files-for-bundled-deps.patch
@@ -4,26 +4,23 @@
 Subject: [PATCH] Disable running gyp on shared deps
 
 ---
- Makefile | 7 +++----
- 1 file changed, 3 insertions(+), 4 deletions(-)
+ Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/Makefile b/Makefile
-index 0a217bd893..e1229ad07f 100644
+index a98772f..f5663e2 100644
 --- a/Makefile
 +++ b/Makefile
-@@ -79,10 +79,9 @@ $(NODE_G_EXE): config.gypi out/Makefile
- 	$(MAKE) -C out BUILDTYPE=Debug V=$(V)
- 	if [ ! -r $@ -o ! -L $@ ]; then ln -fs out/Debug/$(NODE_EXE) $@; fi
+@@ -123,8 +123,8 @@ with-code-cache:
+ test-code-cache: with-code-cache
+ 	$(PYTHON) tools/test.py $(PARALLEL_ARGS) --mode=$(BUILDTYPE_LOWER) code-cache
  
 -out/Makefile: common.gypi deps/uv/uv.gyp deps/http_parser/http_parser.gyp \
 -              deps/zlib/zlib.gyp deps/v8/gypfiles/toolchain.gypi \
--              deps/v8/gypfiles/features.gypi deps/v8/src/v8.gyp node.gyp \
--              config.gypi
 +out/Makefile: common.gypi deps/http_parser/http_parser.gyp \
-+              deps/v8/gypfiles/toolchain.gypi deps/v8/gypfiles/features.gypi \
-+			  deps/v8/src/v8.gyp node.gyp config.gypi
++              deps/v8/gypfiles/toolchain.gypi \
+               deps/v8/gypfiles/features.gypi deps/v8/gypfiles/v8.gyp node.gyp \
+               config.gypi
  	$(PYTHON) tools/gyp_node.py -f make
- 
- config.gypi: configure
 -- 
-2.12.2
+2.19.2
diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0002-Using-native-torque.patch b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0002-Using-native-torque.patch
new file mode 100644
index 0000000..e9035f9
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0002-Using-native-torque.patch
@@ -0,0 +1,36 @@
+From 4bbee5e3d58bc4911999f3ec2cc5aab8ded6717b Mon Sep 17 00:00:00 2001
+From: "Winker Matthias (TT-CA/ENG1)" <Matthias.Winker@de.bosch.com>
+Date: Tue, 11 Dec 2018 10:44:29 +0100
+Subject: [PATCH] Using native torque
+
+---
+ deps/v8/gypfiles/v8.gyp | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/deps/v8/gypfiles/v8.gyp b/deps/v8/gypfiles/v8.gyp
+index 8c78f02255..434168844e 100644
+--- a/deps/v8/gypfiles/v8.gyp
++++ b/deps/v8/gypfiles/v8.gyp
+@@ -2831,7 +2831,6 @@
+         {
+           'action_name': 'run_torque',
+           'inputs': [  # Order matters.
+-            '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)torque<(EXECUTABLE_SUFFIX)',
+             '../src/builtins/base.tq',
+             '../src/builtins/array.tq',
+             '../src/builtins/typed-array.tq',
+@@ -2845,7 +2844,10 @@
+             '<(SHARED_INTERMEDIATE_DIR)/torque-generated/builtins-typed-array-from-dsl-gen.cc',
+             '<(SHARED_INTERMEDIATE_DIR)/torque-generated/builtins-typed-array-from-dsl-gen.h',
+           ],
+-          'action': ['<@(_inputs)', '-o', '<(SHARED_INTERMEDIATE_DIR)/torque-generated'],
++          'action': [
++            'torque',
++            '<@(_inputs)',
++            '-o', '<(SHARED_INTERMEDIATE_DIR)/torque-generated'],
+         },
+       ],
+     }, # torque
+-- 
+2.19.2
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0003-Crypto-reduce-memory-usage-of-SignFinal.patch b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0003-Crypto-reduce-memory-usage-of-SignFinal.patch
new file mode 100644
index 0000000..ed3bac3
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0003-Crypto-reduce-memory-usage-of-SignFinal.patch
@@ -0,0 +1,122 @@
+From 20282b1cb0389553421c4c5b14de198c5dfff50b Mon Sep 17 00:00:00 2001
+From: Anna Henningsen <anna@addaleax.net>
+Date: Sat, 20 Oct 2018 05:24:54 +0200
+Subject: [PATCH] src: use more explicit return type in Sign::SignFinal()
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Using the non-indexed variant of `std::get<>` broke Travis CI.
+Also, this allows us to be a bit more concise when returning
+from `SignFinal()` due to some error condition.
+
+Refs: https://github.com/nodejs/node/pull/23427
+
+PR-URL: https://github.com/nodejs/node/pull/23779
+Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
+Reviewed-By: Tobias Nießen <tniessen@tnie.de>
+Reviewed-By: Refael Ackermann <refack@gmail.com>
+Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
+---
+ src/node_crypto.cc | 23 +++++++++++------------
+ src/node_crypto.h  | 12 +++++++++++-
+ 2 files changed, 22 insertions(+), 13 deletions(-)
+
+diff --git a/src/node_crypto.cc b/src/node_crypto.cc
+index bd8d9e032554..ec7d4f2bb5be 100644
+--- a/src/node_crypto.cc
++++ b/src/node_crypto.cc
+@@ -3562,22 +3562,20 @@ static MallocedBuffer<unsigned char> Node_SignFinal(EVPMDPointer&& mdctx,
+   return MallocedBuffer<unsigned char>();
+ }
+ 
+-std::pair<SignBase::Error, MallocedBuffer<unsigned char>> Sign::SignFinal(
++Sign::SignResult Sign::SignFinal(
+     const char* key_pem,
+     int key_pem_len,
+     const char* passphrase,
+     int padding,
+     int salt_len) {
+-  MallocedBuffer<unsigned char> buffer;
+-
+   if (!mdctx_)
+-    return std::make_pair(kSignNotInitialised, std::move(buffer));
++    return SignResult(kSignNotInitialised);
+ 
+   EVPMDPointer mdctx = std::move(mdctx_);
+ 
+   BIOPointer bp(BIO_new_mem_buf(const_cast<char*>(key_pem), key_pem_len));
+   if (!bp)
+-    return std::make_pair(kSignPrivateKey, std::move(buffer));
++    return SignResult(kSignPrivateKey);
+ 
+   EVPKeyPointer pkey(PEM_read_bio_PrivateKey(bp.get(),
+                                              nullptr,
+@@ -3588,7 +3586,7 @@ std::pair<SignBase::Error, MallocedBuffer<unsigned char>> Sign::SignFinal(
+   // without `pkey` being set to nullptr;
+   // cf. the test of `test_bad_rsa_privkey.pem` for an example.
+   if (!pkey || 0 != ERR_peek_error())
+-    return std::make_pair(kSignPrivateKey, std::move(buffer));
++    return SignResult(kSignPrivateKey);
+ 
+ #ifdef NODE_FIPS_MODE
+   /* Validate DSA2 parameters from FIPS 186-4 */
+@@ -3612,9 +3610,10 @@ std::pair<SignBase::Error, MallocedBuffer<unsigned char>> Sign::SignFinal(
+   }
+ #endif  // NODE_FIPS_MODE
+ 
+-  buffer = Node_SignFinal(std::move(mdctx), pkey, padding, salt_len);
++  MallocedBuffer<unsigned char> buffer =
++      Node_SignFinal(std::move(mdctx), pkey, padding, salt_len);
+   Error error = buffer.is_empty() ? kSignPrivateKey : kSignOk;
+-  return std::make_pair(error, std::move(buffer));
++  return SignResult(error, std::move(buffer));
+ }
+ 
+ 
+@@ -3639,18 +3638,18 @@ void Sign::SignFinal(const FunctionCallbackInfo<Value>& args) {
+ 
+   ClearErrorOnReturn clear_error_on_return;
+ 
+-  std::pair<Error, MallocedBuffer<unsigned char>> ret = sign->SignFinal(
++  SignResult ret = sign->SignFinal(
+       buf,
+       buf_len,
+       len >= 2 && !args[1]->IsNull() ? *passphrase : nullptr,
+       padding,
+       salt_len);
+ 
+-  if (std::get<Error>(ret) != kSignOk)
+-    return sign->CheckThrow(std::get<Error>(ret));
++  if (ret.error != kSignOk)
++    return sign->CheckThrow(ret.error);
+ 
+   MallocedBuffer<unsigned char> sig =
+-      std::move(std::get<MallocedBuffer<unsigned char>>(ret));
++      std::move(ret.signature);
+ 
+   Local<Object> rc =
+       Buffer::New(env, reinterpret_cast<char*>(sig.release()), sig.size)
+diff --git a/src/node_crypto.h b/src/node_crypto.h
+index 6fcf737f6c43..0c26c1f6ff1d 100644
+--- a/src/node_crypto.h
++++ b/src/node_crypto.h
+@@ -518,7 +518,17 @@ class Sign : public SignBase {
+  public:
+   static void Initialize(Environment* env, v8::Local<v8::Object> target);
+ 
+-  std::pair<Error, MallocedBuffer<unsigned char>> SignFinal(
++  struct SignResult {
++    Error error;
++    MallocedBuffer<unsigned char> signature;
++
++    explicit SignResult(
++        Error err,
++        MallocedBuffer<unsigned char>&& sig = MallocedBuffer<unsigned char>())
++      : error(err), signature(std::move(sig)) {}
++  };
++
++  SignResult SignFinal(
+       const char* key_pem,
+       int key_pem_len,
+       const char* passphrase,
diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0004-Make-compatibility-with-gcc-4.8.patch b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0004-Make-compatibility-with-gcc-4.8.patch
new file mode 100644
index 0000000..925c085
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0004-Make-compatibility-with-gcc-4.8.patch
@@ -0,0 +1,69 @@
+Implement function as wrapper for std::make_unique
+method to be compatible with gcc < 4.9 .
+"error::make_unique is not a member of 'std'"
+
+Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
+Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
+
+diff -Naur node-v10.15.1/src/cares_wrap.cc node-v10.15.1/src/cares_wrap.cc
+--- node-v10.15.1/src/cares_wrap.cc	2019-01-29 08:20:50.000000000 +0100
++++ node-v10.15.1/src/cares_wrap.cc	2019-02-21 16:22:25.489131665 +0100
+@@ -52,6 +52,16 @@
+ # define AI_V4MAPPED 0
+ #endif
+ 
++#ifndef __cpp_lib_make_unique
++namespace std {
++  /// make_unique implementation
++  template<typename T, typename... Args>
++  std::unique_ptr<T> make_unique(Args&&... args) {
++    return std::unique_ptr<T>(new T(std::forward<Args>(args)...));
++  }
++}
++#endif
++
+ namespace node {
+ namespace cares_wrap {
+ 
+diff -Naur node-v10.15.1/src/inspector_agent.cc node-v10.15.1/src/inspector_agent.cc
+--- node-v10.15.1/src/inspector_agent.cc	2019-01-29 08:20:50.000000000 +0100
++++ node-v10.15.1/src/inspector_agent.cc	2019-02-21 16:22:09.000185992 +0100
+@@ -24,6 +24,16 @@
+ #include <pthread.h>
+ #endif  // __POSIX__
+ 
++#ifndef __cpp_lib_make_unique
++namespace std {
++  /// make_unique implementation
++  template<typename T, typename... Args>
++  std::unique_ptr<T> make_unique(Args&&... args) {
++    return std::unique_ptr<T>(new T(std::forward<Args>(args)...));
++  }
++}
++#endif
++
+ namespace node {
+ namespace inspector {
+ namespace {
+
+diff --git a/src/inspector/main_thread_interface.cc b/src/inspector/main_thread_interface.cc
+index e374c0fd70..05d7d8c60f 100644
+--- a/src/inspector/main_thread_interface.cc
++++ b/src/inspector/main_thread_interface.cc
+@@ -6,6 +6,16 @@
+ #include <functional>
+ #include <unicode/unistr.h>
+
++#ifndef __cpp_lib_make_unique
++namespace std {
++  /// make_unique implementation
++  template<typename T, typename... Args>
++  std::unique_ptr<T> make_unique(Args&&... args) {
++    return std::unique_ptr<T>(new T(std::forward<Args>(args)...));
++  }
++}
++#endif
++
+ namespace node {
+ namespace inspector {
+ namespace {
diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0005-Link-atomic-library.patch b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0005-Link-atomic-library.patch
new file mode 100644
index 0000000..66ff18b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0005-Link-atomic-library.patch
@@ -0,0 +1,20 @@
+Link atomic library to fix missing undefined referrences
+like "undefined reference to `__atomic_fetch_add_8'"
+
+Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
+
+diff -Naur node-v10.15.1/deps/v8/gypfiles/v8.gyp node-v10.15.1/deps/v8/gypfiles/v8.gyp
+--- node-v10.15.1/deps/v8/gypfiles/v8.gyp	2019-02-13 09:02:21.000000000 +0100
++++ node-v10.15.1/deps/v8/gypfiles/v8.gyp	2019-02-15 21:27:11.755679660 +0100
+@@ -452,6 +452,11 @@
+         '<(DEPTH)',
+         '<(SHARED_INTERMEDIATE_DIR)'
+       ],
++      'link_settings': {
++        'libraries': [
++          '-latomic'
++        ],
++      },
+       'sources': [
+         '<@(inspector_all_sources)',
+         '../include//v8-inspector-protocol.h',
diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0006-Use-target-ldflags.patch b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0006-Use-target-ldflags.patch
new file mode 100644
index 0000000..f6569cd
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0006-Use-target-ldflags.patch
@@ -0,0 +1,24 @@
+The target LDFLAGS have been ignored. Tools like torque
+have been loaded from system libraries, even if a native
+one was the target.
+|$ ldd torque 
+|    libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1
+|    libcrypto.so.1.1 => /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1
+|    libssl.so.1.1 => /usr/lib/x86_64-linux-gnu/libssl.so.1.1
+|    libicui18n.so.63 => not found
+|    libicuuc.so.63 => not found
+...
+
+Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
+
+diff -Naur node-v10.15.1/deps/v8/gypfiles/toolchain.gypi node-v10.15.1/deps/v8/gypfiles/toolchain.gypi
+--- node-v10.15.1/deps/v8/gypfiles/toolchain.gypi	2019-03-18 15:01:39.000000000 +0100
++++ node-v10.15.1/deps/v8/gypfiles/toolchain.gypi	2019-03-18 15:04:08.628361308 +0100
+@@ -1106,6 +1106,7 @@
+             'cflags': [ '-fno-strict-aliasing' ],
+           }],
+         ],  # conditions
++        'ldflags+': [ '$(LDFLAGS)' ],
+       }],
+       ['OS=="solaris"', {
+         'defines': [ '__C99FEATURES__=1' ],  # isinf() etc.
diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_8.12.0.bb b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.15.3.bb
similarity index 82%
rename from meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_8.12.0.bb
rename to meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.15.3.bb
index 8c33978..d2e77ea 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_8.12.0.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.15.3.bb
@@ -1,9 +1,10 @@
 DESCRIPTION = "nodeJS Evented I/O for V8 JavaScript"
 HOMEPAGE = "http://nodejs.org"
 LICENSE = "MIT & BSD & Artistic-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=fde91d5c5bbd1e0389623e1ac018d9e8"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=9ceeba79eb2ea1067b7b3ed16fff8bab"
 
 DEPENDS = "openssl zlib icu"
+DEPENDS_append_class-target = " nodejs-native"
 
 inherit pkgconfig
 
@@ -13,9 +14,17 @@
 
 SRC_URI = "http://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz \
            file://0001-Disable-running-gyp-files-for-bundled-deps.patch \
-"
-SRC_URI[md5sum] = "8b3abd033dae96b6fadcb6a872a44d3c"
-SRC_URI[sha256sum] = "5a9dff58016c18fb4bf902d963b124ff058a550ebcd9840c677757387bce419a"
+           file://0003-Crypto-reduce-memory-usage-of-SignFinal.patch \
+           file://0004-Make-compatibility-with-gcc-4.8.patch \
+           file://0005-Link-atomic-library.patch \
+           file://0006-Use-target-ldflags.patch \
+           "
+SRC_URI_append_class-target = " \
+           file://0002-Using-native-torque.patch \
+           "
+
+SRC_URI[md5sum] = "d76210a6ae1ea73d10254947684836fb"
+SRC_URI[sha256sum] = "4e22d926f054150002055474e452ed6cbb85860aa7dc5422213a2002ed9791d5"
 
 S = "${WORKDIR}/node-v${PV}"
 
@@ -74,6 +83,10 @@
     # use sed on npm-cli.js because otherwise symlink is replaced with normal file and
     # npm-cli.js continues to use old shebang
     sed "1s^.*^#\!/usr/bin/env node^g" -i ${D}${exec_prefix}/lib/node_modules/npm/bin/npm-cli.js
+
+    # Install the native torque to provide it within sysroot for the target compilation
+    install -d ${D}${bindir}
+    install -m 0755 ${S}/out/Release/torque ${D}${bindir}/torque
 }
 
 do_install_append_class-target() {
diff --git a/meta-openembedded/meta-oe/recipes-devtools/octave/files/fix-blas-library-integer-size.patch b/meta-openembedded/meta-oe/recipes-devtools/octave/files/fix-blas-library-integer-size.patch
new file mode 100644
index 0000000..e89d7d3
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/octave/files/fix-blas-library-integer-size.patch
@@ -0,0 +1,16 @@
+diff -Naur octave-4.4.1.orig/configure.ac octave-4.4.1/configure.ac
+--- octave-4.4.1.orig/configure.ac	2019-02-23 10:46:24.287240571 +0000
++++ octave-4.4.1/configure.ac	2019-02-23 10:46:42.255249333 +0000
+@@ -762,6 +762,12 @@
+   AC_MSG_ERROR([BLAS and LAPACK libraries are required])
+ fi
+ 
++if ac_fn_f77_try_run "$LINENO"; then :
++  ax_blas_integer_size=8
++else
++  ax_blas_integer_size=4
++fi
++
+ case $ax_blas_integer_size in
+   4)
+     HAVE_64_BIT_BLAS=no
diff --git a/meta-openembedded/meta-oe/recipes-devtools/octave/octave_4.4.1.bb b/meta-openembedded/meta-oe/recipes-devtools/octave/octave_4.4.1.bb
new file mode 100644
index 0000000..1ec32ce
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/octave/octave_4.4.1.bb
@@ -0,0 +1,40 @@
+DESCRIPTION = "High-level language, primarily intended for numerical computations"
+HOMEPAGE = "http://www.gnu.org/software/octave/"
+SECTION = "math"
+
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464"
+
+DEPENDS = "gperf-native texinfo lapack pcre readline"
+
+inherit autotools pkgconfig texinfo gettext
+
+EXTRA_OECONF = "--disable-java --disable-docs"
+
+SRC_URI = "https://ftp.gnu.org/gnu/octave/${PN}-${PV}.tar.gz \
+           file://fix-blas-library-integer-size.patch \
+"
+
+SRC_URI[md5sum] = "b43bd5f4309a0c048c91af10cf8e8674"
+SRC_URI[sha256sum] = "09fbd0f212f4ef21e53f1d9c41cf30ce3d7f9450fb44911601e21ed64c67ae97"
+
+do_compile_prepend() {
+	for folder in "liboctave/operators liboctave/numeric liboctave/array liboctave/util"; do
+		mkdir -p ${B}/${folder}
+	done
+}
+
+PACKAGES =+ " octave-common liboctave liboctave-dev liboctave-dbg"
+
+FILES_${PN} = "${bindir}/* ${sbindir}/* ${libexecdir}/* ${datadir}/${PN} \
+            ${libdir}/${PN}/${PV}/oct ${libdir}/${PN}/${PV}/site  \
+            ${libdir}/${PN}/site ${datadir}/applications ${datadir}/metainfo"
+FILES_${PN}-common = "${datadir}/icons"
+
+FILES_liboctave = "${libdir}/${PN}/${PV}/lib*${SOLIBS}"
+FILES_liboctave-dev = "${libdir}/${PN}/${PV}/lib*${SOLIBSDEV}"
+FILES_liboctave-dbg = "${libdir}/${PN}/${PV}/.debug"
+
+FILES_${PN}-dbg = "${bindir}/.debug ${libdir}/${PN}/${PV}/oct/${TARGET_SYS}/.debug"
+
+EXCLUDE_FROM_WORLD = "1"
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 21a86de..4377e88 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/openocd/openocd_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/openocd/openocd_git.bb
@@ -29,6 +29,8 @@
 
 do_configure() {
     ./bootstrap nosubmodule
+    install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}/jimtcl/autosetup
+    install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}/jimtcl/autosetup
     oe_runconf ${EXTRA_OECONF}
 }
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl/0001-Use-API-function-for-reconnect.patch b/meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl/0001-Use-API-function-for-reconnect.patch
new file mode 100644
index 0000000..60d88c3
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl/0001-Use-API-function-for-reconnect.patch
@@ -0,0 +1,53 @@
+From edb6b202b7e233864aa5dd84532646c50097b0b8 Mon Sep 17 00:00:00 2001
+From: Mingli Yu <mingli.yu@windriver.com>
+Date: Mon, 4 Mar 2019 00:49:17 -0800
+Subject: [PATCH] Use API function for reconnect
+
+For configuring reconnect functionality use standard API function
+MYSQL_OPT_RECONNECT instead of direct modification of internal structures
+which does not work for MariaDB. Fixes compilation with MariaDB 10.2.6+.
+
+Upstream-Status: Backport [https://github.com/perl5-dbi/DBD-mysql/commit/0b1884f4153d3de0a91bae4d3b3cc1771ffdf4f3]
+
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ dbdimp.c | 16 ++++++++++------
+ 1 file changed, 10 insertions(+), 6 deletions(-)
+
+diff --git a/dbdimp.c b/dbdimp.c
+index 9b8b313..3bed213 100644
+--- a/dbdimp.c
++++ b/dbdimp.c
+@@ -1979,6 +1979,16 @@ MYSQL *mysql_dr_connect(
+ 
+     if (result)
+     {
++      /*
++        we turn off Mysql's auto reconnect and handle re-connecting ourselves
++        so that we can keep track of when this happens.
++      */
++#if MYSQL_VERSION_ID >= 50013
++      my_bool reconnect = FALSE;
++      mysql_options(result, MYSQL_OPT_RECONNECT, &reconnect);
++#else
++      result->reconnect = 0;
++#endif
+ #if MYSQL_VERSION_ID >=SERVER_PREPARE_VERSION
+       /* connection succeeded. */
+       /* imp_dbh == NULL when mysql_dr_connect() is called from mysql.xs
+@@ -1992,12 +2002,6 @@ MYSQL *mysql_dr_connect(
+           imp_dbh->async_query_in_flight = NULL;
+       }
+ #endif
+-
+-      /*
+-        we turn off Mysql's auto reconnect and handle re-connecting ourselves
+-        so that we can keep track of when this happens.
+-      */
+-      result->reconnect=0;
+     }
+     else {
+       /* 
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl_4.043.bb b/meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl_4.043.bb
index bd8ba78..e185f48 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl_4.043.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl_4.043.bb
@@ -15,6 +15,7 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=d0a06964340e5c0cde88b7af611f755c"
 
 SRC_URI = "http://search.cpan.org/CPAN/authors/id/M/MI/MICHIELB/DBD-mysql-${PV}.tar.gz \
+           file://0001-Use-API-function-for-reconnect.patch \
 "
 
 SRC_URI[md5sum] = "4a00dd7f1c057931147c65dfc4901c36"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/perl/libdbi-perl_1.641.bb b/meta-openembedded/meta-oe/recipes-devtools/perl/libdbi-perl_1.642.bb
similarity index 88%
rename from meta-openembedded/meta-oe/recipes-devtools/perl/libdbi-perl_1.641.bb
rename to meta-openembedded/meta-oe/recipes-devtools/perl/libdbi-perl_1.642.bb
index 24a1245..3c03164 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/perl/libdbi-perl_1.641.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/perl/libdbi-perl_1.642.bb
@@ -16,8 +16,8 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=10982c7148e0a012c0fd80534522f5c5"
 
 SRC_URI = "http://search.cpan.org/CPAN/authors/id/T/TI/TIMB/DBI-${PV}.tar.gz"
-SRC_URI[md5sum] = "e77fd37fcf77fc88fde029c1b75ded54"
-SRC_URI[sha256sum] = "5509e532cdd0e3d91eda550578deaac29e2f008a12b64576e8c261bb92e8c2c1"
+SRC_URI[md5sum] = "f2ba18b5cea1c8cb322a62be0a847f3d"
+SRC_URI[sha256sum] = "3f2025023a56286cebd15cb495e36ccd9b456c3cc229bf2ce1f69e9ebfc27f5d"
 
 S = "${WORKDIR}/DBI-${PV}"
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php.inc b/meta-openembedded/meta-oe/recipes-devtools/php/php.inc
index bfd0ddf..6f893ad 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php.inc
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php.inc
@@ -8,7 +8,7 @@
 DEPENDS = "zlib bzip2 libxml2 virtual/libiconv php-native lemon-native"
 DEPENDS_class-native = "zlib-native libxml2-native"
 
-PHP_MAJOR_VERSION = "${@d.getVar('PV', True).split('.')[0]}"
+PHP_MAJOR_VERSION = "${@d.getVar('PV').split('.')[0]}"
 
 SRC_URI = "http://php.net/distributions/php-${PV}.tar.bz2 \
            file://0001-php-don-t-use-broken-wrapper-for-mkdir.patch \
@@ -20,7 +20,6 @@
             file://php_exec_native.patch \
             file://php-fpm.conf \
             file://php-fpm-apache.conf \
-            file://0001-acinclude.m4-don-t-unset-cache-variables.patch \
             file://70_mod_php${PHP_MAJOR_VERSION}.conf \
             file://php-fpm.service \
           "
@@ -46,10 +45,9 @@
 EXTRA_OECONF = "--enable-mbstring \
                 --enable-wddx \
                 --enable-fpm \
-                --enable-zip \
                 --with-libdir=${baselib} \
                 --with-gettext=${STAGING_LIBDIR}/.. \
-                --with-zlib=${STAGING_LIBDIR}/.. \
+                --with-libzip=${STAGING_LIBDIR}/.. \
                 --with-iconv=${STAGING_LIBDIR}/.. \
                 --with-bz2=${STAGING_DIR_TARGET}${exec_prefix} \
                 --with-config-file-path=${sysconfdir}/php/apache2-php${PHP_MAJOR_VERSION} \
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-Use-pkg-config-for-libxml2-detection.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-Use-pkg-config-for-libxml2-detection.patch
new file mode 100644
index 0000000..ccc6d4e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-Use-pkg-config-for-libxml2-detection.patch
@@ -0,0 +1,23 @@
+Use pkg-config for libxml2 detection.
+
+xml2-config does not work. Use pkgconfig to set CPPFLAGS and LIBS.
+
+Upstream-Status: Inappropriate [configuration]
+
+Signed-off-by:  Khem Raj <raj.khem@gmail.com>
+---
+ configure.in | 15 ++-------------
+ 1 file changed, 2 insertions(+), 13 deletions(-)
+--- a/acinclude.m4
++++ b/acinclude.m4
+@@ -2481,8 +2481,8 @@ AC_DEFUN([PHP_SETUP_LIBXML], [
+     LIBXML_VERSION=`expr [$]1 \* 1000000 + [$]2 \* 1000 + [$]3`
+     if test "$LIBXML_VERSION" -ge "2006011"; then
+       found_libxml=yes
+-      LIBXML_LIBS=`$XML2_CONFIG --libs`
+-      LIBXML_INCS=`$XML2_CONFIG --cflags`
++      LIBXML_LIBS=`pkg-config --libs libxml-2.0`
++      LIBXML_INCS=`pkg-config --cflags libxml-2.0`
+     else
+       AC_MSG_ERROR([libxml2 version 2.6.11 or greater required.])
+     fi
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-acinclude.m4-don-t-unset-cache-variables.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-acinclude.m4-don-t-unset-cache-variables.patch
index a250cac..51dbe26 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-acinclude.m4-don-t-unset-cache-variables.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-acinclude.m4-don-t-unset-cache-variables.patch
@@ -1,6 +1,6 @@
-From dfebe81f946a83fe2499fc84d4f3dbdc5612276c Mon Sep 17 00:00:00 2001
-From: Anuj Mittal <anuj.mittal@intel.com>
-Date: Tue, 3 Apr 2018 11:35:03 +0800
+From d2679c89c0b15b90e5360b4863258a7955e5f4e5 Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Tue, 12 Feb 2019 15:59:19 +0800
 Subject: [PATCH] acinclude.m4: don't unset cache variables
 
 Unsetting prevents cache variable from being passed to configure.
@@ -8,15 +8,18 @@
 Upstream-Status: Inappropriate [OE-specific]
 
 Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+
+update patch to version 7.3.2
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
 ---
  acinclude.m4 | 4 ----
  1 file changed, 4 deletions(-)
 
 diff --git a/acinclude.m4 b/acinclude.m4
-index f6a55ec..d3346df 100644
+index 25f900d..2641969 100644
 --- a/acinclude.m4
 +++ b/acinclude.m4
-@@ -1890,8 +1890,6 @@ define([phpshift],[ifelse(index([$@],[,]),-1,,[substr([$@],incr(index([$@],[,]))
+@@ -1921,8 +1921,6 @@ define([phpshift],[ifelse(index([$@],[,]),-1,,[substr([$@],incr(index([$@],[,]))
  dnl
  AC_DEFUN([PHP_CHECK_FUNC_LIB],[
    ifelse($2,,:,[
@@ -25,14 +28,14 @@
    unset found
    AC_CHECK_LIB($2, $1, [found=yes], [
      AC_CHECK_LIB($2, __$1, [found=yes], [found=no])
-@@ -1923,8 +1921,6 @@ dnl in the default libraries and as a fall back in the specified library.
+@@ -1954,8 +1952,6 @@ dnl in the default libraries and as a fall back in the specified library.
  dnl Defines HAVE_func and HAVE_library if found and adds the library to LIBS.
  dnl
  AC_DEFUN([PHP_CHECK_FUNC],[
 -  unset ac_cv_func_$1
 -  unset ac_cv_func___$1
    unset found
-   
+ 
    AC_CHECK_FUNC($1, [found=yes],[ AC_CHECK_FUNC(__$1,[found=yes],[found=no]) ])
 -- 
 2.7.4
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-fix-error-caused-by-a-new-variable-is-declared-after.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-fix-error-caused-by-a-new-variable-is-declared-after.patch
deleted file mode 100644
index 6ab101b..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-fix-error-caused-by-a-new-variable-is-declared-after.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 0d88d735887c6f2fa00a743c27124c7a52006a41 Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Sun, 15 Apr 2018 19:17:27 -0700
-Subject: [PATCH] fix error caused by a new variable is declared after the
- label
-
-There is a build failure on mips:
-...
-|sljitNativeMIPS_common.c: In function 'sljit_has_cpu_feature':
-|sljitNativeMIPS_common.c:506:3: error: a label can only be part
-of a statement and a declaration is not a statement
-|   sljit_sw fir;
-|   ^~~~~~~~
-...
-
-Upstream-Status: Pending
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- ext/pcre/pcrelib/sljit/sljitNativeMIPS_common.c | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/ext/pcre/pcrelib/sljit/sljitNativeMIPS_common.c b/ext/pcre/pcrelib/sljit/sljitNativeMIPS_common.c
-index ee207fe..adfd342 100644
---- a/ext/pcre/pcrelib/sljit/sljitNativeMIPS_common.c
-+++ b/ext/pcre/pcrelib/sljit/sljitNativeMIPS_common.c
-@@ -498,12 +498,14 @@ SLJIT_API_FUNC_ATTRIBUTE void* sljit_generate_code(struct sljit_compiler *compil
- 
- SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_has_cpu_feature(sljit_s32 feature_type)
- {
-+#if defined(__GNUC__)
-+	sljit_sw fir;
-+#endif
- 	switch (feature_type) {
- 	case SLJIT_HAS_FPU:
- #ifdef SLJIT_IS_FPU_AVAILABLE
- 		return SLJIT_IS_FPU_AVAILABLE;
- #elif defined(__GNUC__)
--		sljit_sw fir;
- 		asm ("cfc1 %0, $0" : "=r"(fir));
- 		return (fir >> 22) & 0x1;
- #else
--- 
-2.10.2
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-opcache-config.m4-enable-opcache.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-opcache-config.m4-enable-opcache.patch
index 0d24d34..9ffd0e4 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-opcache-config.m4-enable-opcache.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-opcache-config.m4-enable-opcache.patch
@@ -1,6 +1,6 @@
-From b2fb725dc404d471371731b663234e87cb0fca84 Mon Sep 17 00:00:00 2001
-From: Anuj Mittal <anuj.mittal@intel.com>
-Date: Mon, 2 Apr 2018 17:54:52 +0800
+From fb139d9707dabe1684b472a08a6eb5761ede4a3a Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Tue, 12 Feb 2019 14:56:16 +0800
 Subject: [PATCH] opcache/config.m4: enable opcache
 
 We can't use AC_TRY_RUN to run programs in a cross compile environment. Set
@@ -10,42 +10,41 @@
 Upstream-Status: Inappropriate [Configuration]
 
 Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+
+update patch to version 7.3.2
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
 ---
- ext/opcache/config.m4 | 349 ++------------------------------------------------
- 1 file changed, 8 insertions(+), 341 deletions(-)
+ ext/opcache/config.m4 | 357 +-------------------------------------------------
+ 1 file changed, 6 insertions(+), 351 deletions(-)
 
 diff --git a/ext/opcache/config.m4 b/ext/opcache/config.m4
-index 7b500f0..10bb99a 100644
+index 392f4c6..6617693 100644
 --- a/ext/opcache/config.m4
 +++ b/ext/opcache/config.m4
-@@ -28,353 +28,20 @@ if test "$PHP_OPCACHE" != "no"; then
- 
+@@ -27,374 +27,29 @@ if test "$PHP_OPCACHE" != "no"; then
    AC_CHECK_HEADERS([unistd.h sys/uio.h])
  
--  AC_MSG_CHECKING(for sysvipc shared memory support)
--  AC_TRY_RUN([
+   AC_MSG_CHECKING(for sysvipc shared memory support)
+-  AC_RUN_IFELSE([AC_LANG_SOURCE([[
 -#include <sys/types.h>
 -#include <sys/wait.h>
 -#include <sys/ipc.h>
 -#include <sys/shm.h>
 -#include <unistd.h>
 -#include <string.h>
-+  AC_DEFINE(HAVE_SHM_IPC, 1, [Define if you have SysV IPC SHM support])
- 
+-
 -int main() {
 -  pid_t pid;
 -  int status;
 -  int ipc_id;
 -  char *shm;
 -  struct shmid_ds shmbuf;
-+  AC_DEFINE(HAVE_SHM_MMAP_ANON, 1, [Define if you have mmap(MAP_ANON) SHM support])
- 
+-
 -  ipc_id = shmget(IPC_PRIVATE, 4096, (IPC_CREAT | SHM_R | SHM_W));
 -  if (ipc_id == -1) {
 -    return 1;
 -  }
-+  AC_DEFINE(HAVE_SHM_MMAP_ZERO, 1, [Define if you have mmap("/dev/zero") SHM support])
- 
+-
 -  shm = shmat(ipc_id, NULL, 0);
 -  if (shm == (void *)-1) {
 -    shmctl(ipc_id, IPC_RMID, NULL);
@@ -90,13 +89,14 @@
 -  }
 -  return 0;
 -}
--],dnl
+-]])],[dnl
 -    AC_DEFINE(HAVE_SHM_IPC, 1, [Define if you have SysV IPC SHM support])
--    msg=yes,msg=no,msg=no)
+-    msg=yes],[msg=no],[msg=no])
 -  AC_MSG_RESULT([$msg])
--
--  AC_MSG_CHECKING(for mmap() using MAP_ANON shared memory support)
--  AC_TRY_RUN([
++  AC_DEFINE(HAVE_SHM_IPC, 1, [Define if you have SysV IPC SHM support])
+ 
+   AC_MSG_CHECKING(for mmap() using MAP_ANON shared memory support)
+-  AC_RUN_IFELSE([AC_LANG_SOURCE([[
 -#include <sys/types.h>
 -#include <sys/wait.h>
 -#include <sys/mman.h>
@@ -142,13 +142,14 @@
 -  }
 -  return 0;
 -}
--],dnl
+-]])],[dnl
 -    AC_DEFINE(HAVE_SHM_MMAP_ANON, 1, [Define if you have mmap(MAP_ANON) SHM support])
--    msg=yes,msg=no,msg=no)
+-    msg=yes],[msg=no],[msg=no])
 -  AC_MSG_RESULT([$msg])
--
--  AC_MSG_CHECKING(for mmap() using /dev/zero shared memory support)
--  AC_TRY_RUN([
++  AC_DEFINE(HAVE_SHM_MMAP_ANON, 1, [Define if you have mmap(MAP_ANON) SHM support])
+ 
+   AC_MSG_CHECKING(for mmap() using /dev/zero shared memory support)
+-  AC_RUN_IFELSE([AC_LANG_SOURCE([[
 -#include <sys/types.h>
 -#include <sys/wait.h>
 -#include <sys/mman.h>
@@ -197,13 +198,14 @@
 -  }
 -  return 0;
 -}
--],dnl
+-]])],[dnl
 -    AC_DEFINE(HAVE_SHM_MMAP_ZERO, 1, [Define if you have mmap("/dev/zero") SHM support])
--    msg=yes,msg=no,msg=no)
+-    msg=yes],[msg=no],[msg=no])
 -  AC_MSG_RESULT([$msg])
--
--  AC_MSG_CHECKING(for mmap() using shm_open() shared memory support)
--  AC_TRY_RUN([
++  AC_DEFINE(HAVE_SHM_MMAP_ZERO, 1, [Define if you have mmap("/dev/zero") SHM support])
+ 
+   AC_MSG_CHECKING(for mmap() using shm_open() shared memory support)
+-  AC_RUN_IFELSE([AC_LANG_SOURCE([[
 -#include <sys/types.h>
 -#include <sys/wait.h>
 -#include <sys/mman.h>
@@ -266,14 +268,14 @@
 -  }
 -  return 0;
 -}
--],dnl
+-]])],[dnl
 -    AC_DEFINE(HAVE_SHM_MMAP_POSIX, 1, [Define if you have POSIX mmap() SHM support])
--    msg=yes,msg=no,msg=no)
+-    msg=yes],[msg=no],[msg=no])
 -  AC_MSG_RESULT([$msg])
 +  AC_DEFINE(HAVE_SHM_MMAP_POSIX, 1, [Define if you have POSIX mmap() SHM support])
  
    AC_MSG_CHECKING(for mmap() using regular file shared memory support)
--  AC_TRY_RUN([
+-  AC_RUN_IFELSE([AC_LANG_SOURCE([[
 -#include <sys/types.h>
 -#include <sys/wait.h>
 -#include <sys/mman.h>
@@ -336,50 +338,70 @@
 -  }
 -  return 0;
 -}
--],dnl
+-]])],[dnl
 -    AC_DEFINE(HAVE_SHM_MMAP_FILE, 1, [Define if you have mmap() SHM support])
--    msg=yes,msg=no,msg=no)
+-    msg=yes],[msg=no],[msg=no])
 -  AC_MSG_RESULT([$msg])
++  AC_DEFINE(HAVE_SHM_MMAP_FILE, 1, [Define if you have mmap() SHM support])
+ 
+ flock_type=unknown
+ AC_MSG_CHECKING(for struct flock layout)
+ 
+ if test "$flock_type" = "unknown"; then
+-AC_RUN_IFELSE([AC_LANG_SOURCE([[
+-  #include <fcntl.h>
+-  struct flock lock = { 1, 2, 3, 4, 5, 6, 7 };
+-  int main() {
+-    if(lock.l_type == 1 && lock.l_whence == 2 && lock.l_start == 6 && lock.l_len== 7) {
+-		return 0;
+-    }
+-    return 1;
+-  }
+-]])], [
+-    flock_type=aix64
+-    AC_DEFINE([HAVE_FLOCK_AIX64], [], [Struct flock is 64-bit AIX-type])
+-], [])
+-fi
 -
--flock_type=unknown
--AC_MSG_CHECKING("whether flock struct is linux ordered")
--AC_TRY_RUN([
+-if test "$flock_type" = "unknown"; then
+-AC_RUN_IFELSE([AC_LANG_SOURCE([[
 -  #include <fcntl.h>
 -  struct flock lock = { 1, 2, 3, 4, 5 };
--  int main() { 
+-  int main() {
 -    if(lock.l_type == 1 && lock.l_whence == 2 && lock.l_start == 3 && lock.l_len == 4) {
 -		return 0;
 -    }
 -    return 1;
--  } 
--], [
+-  }
+-]])], [
 -	flock_type=linux
--    AC_DEFINE([HAVE_FLOCK_LINUX], [], [Struct flock is Linux-type])
--    AC_MSG_RESULT("yes")
--], AC_MSG_RESULT("no") )
-+  
-+  AC_DEFINE(HAVE_SHM_MMAP_FILE, 1, [Define if you have mmap() SHM support])
++    flock_type=linux
+     AC_DEFINE([HAVE_FLOCK_LINUX], [], [Struct flock is Linux-type])
+-], [])
+ fi
  
--AC_MSG_CHECKING("whether flock struct is BSD ordered")
--AC_TRY_RUN([
+ if test "$flock_type" = "unknown"; then
+-AC_RUN_IFELSE([AC_LANG_SOURCE([[
 -  #include <fcntl.h>
 -  struct flock lock = { 1, 2, 3, 4, 5 };
--  int main() { 
+-  int main() {
 -    if(lock.l_start == 1 && lock.l_len == 2 && lock.l_type == 4 && lock.l_whence == 5) {
 -		return 0;
 -    }
 -    return 1;
--  } 
--], [
+-  }
+-]])], [
 -	flock_type=bsd
--    AC_DEFINE([HAVE_FLOCK_BSD], [], [Struct flock is BSD-type]) 
--    AC_MSG_RESULT("yes")
--], AC_MSG_RESULT("no") )
-+  flock_type=linux
-+  AC_DEFINE([HAVE_FLOCK_LINUX], [], [Struct flock is Linux-type])
- 
- if test "$flock_type" = "unknown"; then
+-    AC_DEFINE([HAVE_FLOCK_BSD], [], [Struct flock is BSD-type])
+-], [])
+-fi
+-
+-AC_MSG_RESULT([$flock_type])
+-
+-if test "$flock_type" = "unknown"; then
  	AC_MSG_ERROR([Don't know how to define struct flock on this system[,] set --enable-opcache=no])
+ fi
+ 
 -- 
 2.7.4
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/0048-Use-pkg-config-for-FreeType2-detection.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/0048-Use-pkg-config-for-FreeType2-detection.patch
new file mode 100644
index 0000000..f36ddac
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php/0048-Use-pkg-config-for-FreeType2-detection.patch
@@ -0,0 +1,53 @@
+From: =?utf-8?b?T25kxZllaiBTdXLDvQ==?= <ondrej@sury.org>
+Date: Mon, 22 Oct 2018 06:54:31 +0000
+Subject: Use pkg-config for FreeType2 detection
+
+---
+ ext/gd/config.m4 | 30 +++++++++++++++++++-----------
+ 1 file changed, 19 insertions(+), 11 deletions(-)
+
+diff --git a/ext/gd/config.m4 b/ext/gd/config.m4
+index 498d870..d28c6ae 100644
+--- a/ext/gd/config.m4
++++ b/ext/gd/config.m4
+@@ -184,21 +184,29 @@ AC_DEFUN([PHP_GD_XPM],[
+ AC_DEFUN([PHP_GD_FREETYPE2],[
+   if test "$PHP_FREETYPE_DIR" != "no"; then
+ 
+-    for i in $PHP_FREETYPE_DIR /usr/local /usr; do
+-      if test -f "$i/bin/freetype-config"; then
+-        FREETYPE2_DIR=$i
+-        FREETYPE2_CONFIG="$i/bin/freetype-config"
+-        break
++    if test -z "$PKG_CONFIG"; then
++      AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
++    fi
++    if test -x "$PKG_CONFIG" && $PKG_CONFIG --exists freetype2 ; then
++      FREETYPE2_CFLAGS=`$PKG_CONFIG --cflags freetype2`
++      FREETYPE2_LIBS=`$PKG_CONFIG --libs freetype2`
++    else
++      for i in $PHP_FREETYPE_DIR /usr/local /usr; do
++        if test -f "$i/bin/freetype-config"; then
++          FREETYPE2_DIR=$i
++          FREETYPE2_CONFIG="$i/bin/freetype-config"
++          break
++        fi
++      done
++
++      if test -z "$FREETYPE2_DIR"; then
++        AC_MSG_ERROR([freetype-config not found.])
+       fi
+-    done
+ 
+-    if test -z "$FREETYPE2_DIR"; then
+-      AC_MSG_ERROR([freetype-config not found.])
++      FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags`
++      FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs`
+     fi
+ 
+-    FREETYPE2_CFLAGS=`$FREETYPE2_CONFIG --cflags`
+-    FREETYPE2_LIBS=`$FREETYPE2_CONFIG --libs`
+-
+     PHP_EVAL_INCLINE($FREETYPE2_CFLAGS)
+     PHP_EVAL_LIBLINE($FREETYPE2_LIBS, GD_SHARED_LIBADD)
+     AC_DEFINE(HAVE_LIBFREETYPE,1,[ ])
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/0049-ext-intl-Use-pkg-config-to-detect-icu.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/0049-ext-intl-Use-pkg-config-to-detect-icu.patch
new file mode 100644
index 0000000..deada1f
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php/0049-ext-intl-Use-pkg-config-to-detect-icu.patch
@@ -0,0 +1,111 @@
+From: Hugh McMaster <hugh.mcmaster@outlook.com>
+Date: Wed, 5 Dec 2018 23:27:30 +1100
+Subject: ext/intl: Use pkg-config to detect icu
+
+The developers of icu recommend using pkg-config to detect icu,
+because icu-config is deprecated.
+---
+ acinclude.m4       | 56 +++++++-----------------------------------------------
+ ext/intl/config.m4 | 16 ++++++----------
+ 2 files changed, 13 insertions(+), 59 deletions(-)
+
+--- php7.3.orig/acinclude.m4
++++ php7.3/acinclude.m4
+@@ -2168,58 +2168,16 @@ dnl
+ dnl Common setup macro for ICU
+ dnl
+ AC_DEFUN([PHP_SETUP_ICU],[
+-  PHP_ARG_WITH(icu-dir,,
+-  [  --with-icu-dir=DIR      Specify where ICU libraries and headers can be found], DEFAULT, no)
++  PKG_CHECK_MODULES([ICU], [icu-io >= 50.1])
+ 
+-  if test "$PHP_ICU_DIR" = "no"; then
+-    PHP_ICU_DIR=DEFAULT
+-  fi
+-
+-  if test "$PHP_ICU_DIR" = "DEFAULT"; then
+-    dnl Try to find icu-config
+-    AC_PATH_PROG(ICU_CONFIG, icu-config, no, [$PATH:/usr/local/bin])
+-  else
+-    ICU_CONFIG="$PHP_ICU_DIR/bin/icu-config"
+-  fi
+-
+-  AC_MSG_CHECKING([for location of ICU headers and libraries])
+-
+-  dnl Trust icu-config to know better what the install prefix is..
+-  icu_install_prefix=`$ICU_CONFIG --prefix 2> /dev/null`
+-  if test "$?" != "0" || test -z "$icu_install_prefix"; then
+-    AC_MSG_RESULT([not found])
+-    AC_MSG_ERROR([Unable to detect ICU prefix or $ICU_CONFIG failed. Please verify ICU install prefix and make sure icu-config works.])
+-  else
+-    AC_MSG_RESULT([$icu_install_prefix])
+-
+-    dnl Check ICU version
+-    AC_MSG_CHECKING([for ICU 4.0 or greater])
+-    icu_version_full=`$ICU_CONFIG --version`
+-    ac_IFS=$IFS
+-    IFS="."
+-    set $icu_version_full
+-    IFS=$ac_IFS
+-    icu_version=`expr [$]1 \* 1000 + [$]2`
+-    AC_MSG_RESULT([found $icu_version_full])
+-
+-    if test "$icu_version" -lt "4000"; then
+-      AC_MSG_ERROR([ICU version 4.0 or later is required])
+-    fi
++  PHP_EVAL_INCLINE($ICU_CFLAGS)
++  PHP_EVAL_LIBLINE($ICU_LIBS, $1)
+ 
+-    ICU_VERSION=$icu_version
+-    ICU_INCS=`$ICU_CONFIG --cppflags-searchpath`
+-    ICU_LIBS=`$ICU_CONFIG --ldflags --ldflags-icuio`
+-    PHP_EVAL_INCLINE($ICU_INCS)
+-    PHP_EVAL_LIBLINE($ICU_LIBS, $1)
++  ICU_CFLAGS="$ICU_CFLAGS -DU_NO_DEFAULT_INCLUDE_UTF_HEADERS=1"
++  ICU_CXXFLAGS="$ICU_CXXFLAGS -DUNISTR_FROM_CHAR_EXPLICIT=explicit -DUNISTR_FROM_STRING_EXPLICIT=explicit"
+ 
+-    ICU_CXXFLAGS=`$ICU_CONFIG --cxxflags`
+-    if test "$icu_version" -ge "49000"; then
+-      ICU_CXXFLAGS="$ICU_CXXFLAGS -DUNISTR_FROM_CHAR_EXPLICIT=explicit -DUNISTR_FROM_STRING_EXPLICIT=explicit"
+-      ICU_CFLAGS="-DU_NO_DEFAULT_INCLUDE_UTF_HEADERS=1"
+-    fi
+-    if test "$icu_version" -ge "60000"; then
+-      ICU_CFLAGS="$ICU_CFLAGS -DU_HIDE_OBSOLETE_UTF_OLD_H=1"
+-    fi
++  if $PKG_CONFIG icu-io --atleast-version=60; then
++    ICU_CFLAGS="$ICU_CFLAGS -DU_HIDE_OBSOLETE_UTF_OLD_H=1"
+   fi
+ ])
+ 
+--- php7.3.orig/ext/intl/config.m4
++++ php7.3/ext/intl/config.m4
+@@ -9,15 +9,7 @@ if test "$PHP_INTL" != "no"; then
+   PHP_SETUP_ICU(INTL_SHARED_LIBADD)
+   PHP_SUBST(INTL_SHARED_LIBADD)
+   PHP_REQUIRE_CXX()
+-  INTL_COMMON_FLAGS="$ICU_INCS $ICU_CFLAGS -Wno-write-strings -D__STDC_LIMIT_MACROS -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1"
+-  if test "$icu_version" -ge "4002"; then
+-    icu_spoof_src=" spoofchecker/spoofchecker_class.c \
+-    spoofchecker/spoofchecker.c\
+-    spoofchecker/spoofchecker_create.c\
+-    spoofchecker/spoofchecker_main.c"
+-  else
+-    icu_spoof_src=""
+-  fi
++  INTL_COMMON_FLAGS="$ICU_CFLAGS -Wno-write-strings -D__STDC_LIMIT_MACROS -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1"
+   PHP_NEW_EXTENSION(intl, php_intl.c \
+     intl_error.c \
+     intl_convert.c \
+@@ -68,7 +60,11 @@ if test "$PHP_INTL" != "no"; then
+     transliterator/transliterator_methods.c \
+     uchar/uchar.c \
+     idn/idn.c \
+-    $icu_spoof_src, $ext_shared,,$INTL_COMMON_FLAGS,cxx)
++    spoofchecker/spoofchecker_class.c \
++    spoofchecker/spoofchecker.c\
++    spoofchecker/spoofchecker_create.c\
++    spoofchecker/spoofchecker_main.c \
++    , $ext_shared,,$INTL_COMMON_FLAGS,cxx)
+ 
+   PHP_INTL_CXX_SOURCES="intl_convertcpp.cpp \
+     common/common_enum.cpp \
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/CVE-2017-9120.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/CVE-2017-9120.patch
deleted file mode 100644
index 728f25b..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php/CVE-2017-9120.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-php: patch for CVE-2017-9120
-
-Upstream-Status: Backport [https://bugs.php.net/bug.php?id=74544]
-
-CVE: CVE-2017-9120
-
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
-
-diff --git a/ext/mysqli/mysqli_api.c b/ext/mysqli/mysqli_api.c
-index 03a39d7..7b88731 100644
---- a/ext/mysqli/mysqli_api.c
-+++ b/ext/mysqli/mysqli_api.c
-@@ -1965,7 +1965,7 @@ PHP_FUNCTION(mysqli_real_escape_string) {
- 	}
- 	MYSQLI_FETCH_RESOURCE_CONN(mysql, mysql_link, MYSQLI_STATUS_VALID);
- 
--	newstr = zend_string_alloc(2 * escapestr_len, 0);
-+	newstr = zend_string_safe_alloc(2, escapestr_len, 0, 0);
- 	ZSTR_LEN(newstr) = mysql_real_escape_string(mysql->mysql, ZSTR_VAL(newstr), escapestr, escapestr_len);
- 	newstr = zend_string_truncate(newstr, ZSTR_LEN(newstr), 0);
- 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/change-AC_TRY_RUN-to-AC_TRY_LINK.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/change-AC_TRY_RUN-to-AC_TRY_LINK.patch
deleted file mode 100644
index 3e90184..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php/change-AC_TRY_RUN-to-AC_TRY_LINK.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From 3bfcc7fdd22261eaed10949714de0a90d31e10ab Mon Sep 17 00:00:00 2001
-From: Roy Li <rongqing.li@windriver.com>
-Date: Thu, 20 Aug 2015 16:29:35 +0800
-Subject: [PATCH] [PATCH] config.m4: change AC_TRY_RUN to AC_TRY_LINK
-
-Upstream-Status: Pending
-
-AC_TRY_RUN is not suitable for cross-compile
-
-Signed-off-by: Roy Li <rongqing.li@windriver.com>
-
-%% original patch: change-AC_TRY_RUN-to-AC_TRY_LINK.patch
----
- ext/fileinfo/config.m4 | 31 ++++++-------------------------
- 1 file changed, 6 insertions(+), 25 deletions(-)
-
-diff --git a/ext/fileinfo/config.m4 b/ext/fileinfo/config.m4
-index 523b4fd..0aaa4c8 100644
---- a/ext/fileinfo/config.m4
-+++ b/ext/fileinfo/config.m4
-@@ -14,31 +14,12 @@ if test "$PHP_FILEINFO" != "no"; then
-     libmagic/readcdf.c libmagic/softmagic.c libmagic/der.c"
- 
-   AC_MSG_CHECKING([for strcasestr])
--  AC_TRY_RUN([
--#include <string.h>
--#include <strings.h>
--#include <stdlib.h>
--
--int main(void)
--{
--        char *s0, *s1, *ret;
--
--        s0 = (char *) malloc(42);
--        s1 = (char *) malloc(8);
--
--        memset(s0, 'X', 42);
--        s0[24] = 'Y';
--        s0[26] = 'Z';
--        s0[41] = '\0';
--        memset(s1, 'x', 8);
--        s1[0] = 'y';
--        s1[2] = 'Z';
--        s1[7] = '\0';
--
--        ret = strcasestr(s0, s1);
--
--        return !(NULL != ret);
--}
-+  AC_TRY_COMPILE([
-+     #include <string.h>
-+     #include <strings.h>
-+     #include <stdlib.h>
-+  ],[
-+     strcasestr(NULL, NULL);
-   ],[
-     dnl using the platform implementation
-     AC_MSG_RESULT(yes)
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/php5-0001-acinclude.m4-don-t-unset-cache-variables.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/php5-0001-acinclude.m4-don-t-unset-cache-variables.patch
new file mode 100644
index 0000000..72ad554
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php/php5-0001-acinclude.m4-don-t-unset-cache-variables.patch
@@ -0,0 +1,42 @@
+From 1fb5a3b3e6c9cf0002ff76988de72f011b642005 Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Tue, 12 Feb 2019 16:25:37 +0800
+Subject: [PATCH] acinclude.m4: don't unset cache variables
+
+Unsetting prevents cache variable from being passed to configure.
+
+Upstream-Status: Inappropriate [OE-specific]
+
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+
+update patch to version 5.6.40
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ acinclude.m4 | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/acinclude.m4 b/acinclude.m4
+index b188eee..ed32fc5 100644
+--- a/acinclude.m4
++++ b/acinclude.m4
+@@ -1897,8 +1897,6 @@ define([phpshift],[ifelse(index([$@],[,]),-1,,[substr([$@],incr(index([$@],[,]))
+ dnl
+ AC_DEFUN([PHP_CHECK_FUNC_LIB],[
+   ifelse($2,,:,[
+-  unset ac_cv_lib_$2[]_$1
+-  unset ac_cv_lib_$2[]___$1
+   unset found
+   AC_CHECK_LIB($2, $1, [found=yes], [
+     AC_CHECK_LIB($2, __$1, [found=yes], [found=no])
+@@ -1930,8 +1928,6 @@ dnl in the default libraries and as a fall back in the specified library.
+ dnl Defines HAVE_func and HAVE_library if found and adds the library to LIBS.
+ dnl
+ AC_DEFUN([PHP_CHECK_FUNC],[
+-  unset ac_cv_func_$1
+-  unset ac_cv_func___$1
+   unset found
+   
+   AC_CHECK_FUNC($1, [found=yes],[ AC_CHECK_FUNC(__$1,[found=yes],[found=no]) ])
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php_5.6.38.bb b/meta-openembedded/meta-oe/recipes-devtools/php/php_5.6.40.bb
similarity index 79%
rename from meta-openembedded/meta-oe/recipes-devtools/php/php_5.6.38.bb
rename to meta-openembedded/meta-oe/recipes-devtools/php/php_5.6.40.bb
index d6f5145..9f5bac7 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php_5.6.38.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php_5.6.40.bb
@@ -8,6 +8,7 @@
             file://acinclude-xml2-config.patch \
             file://0001-acinclude-use-pkgconfig-for-libxml2-config.patch \
             file://0001-PHP-5.6-LibSSL-1.1-compatibility.patch \
+            file://php5-0001-acinclude.m4-don-t-unset-cache-variables.patch \
             "
 
 SRC_URI_append_class-target = " \
@@ -16,8 +17,8 @@
                                 file://php5-0001-opcache-config.m4-enable-opcache.patch \
                                 "
 
-SRC_URI[md5sum] = "5b98aa066567eca8e5738b8ef4a3545c"
-SRC_URI[sha256sum] = "d65b231bbdd63be4439ef5ced965cfd63e62983429dbd4dfcfb49981593ebc03"
+SRC_URI[md5sum] = "44633604d2fece1f53f508bc16751b74"
+SRC_URI[sha256sum] = "ffd025d34623553ab2f7fd8fb21d0c9e6f9fa30dc565ca03a1d7b763023fba00"
 
 DEPENDS += "libmcrypt"
 EXTRA_OECONF += "--with-mcrypt=${STAGING_DIR_TARGET}${exec_prefix} \
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php_7.2.10.bb b/meta-openembedded/meta-oe/recipes-devtools/php/php_7.2.10.bb
deleted file mode 100644
index 8dc64bb..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php_7.2.10.bb
+++ /dev/null
@@ -1,25 +0,0 @@
-require php.inc
-
-LIC_FILES_CHKSUM = "file://LICENSE;md5=67e369bc8d1f2e641236b8002039a6a2"
-
-SRC_URI += "file://change-AC_TRY_RUN-to-AC_TRY_LINK.patch \
-            file://0001-acinclude.m4-skip-binconfig-check-for-libxml.patch \
-            file://0001-fix-error-caused-by-a-new-variable-is-declared-after.patch \
-            file://CVE-2017-9120.patch \
-           "
-SRC_URI_append_class-target = " \
-                                file://pear-makefile.patch \
-                                file://phar-makefile.patch \
-                                file://0001-opcache-config.m4-enable-opcache.patch \
-                                "
-
-SRC_URI[md5sum] = "0ce8ff615bfb9de7a89bab8d742c11c0"
-SRC_URI[sha256sum] = "01b6129a0921a1636b07da9bc598a876669e45a462cef4b5844fc26862dbda9d"
-
-PACKAGECONFIG[mysql] = "--with-mysqli=${STAGING_BINDIR_CROSS}/mysql_config \
-                        --with-pdo-mysql=${STAGING_BINDIR_CROSS}/mysql_config \
-                        ,--without-mysqli --without-pdo-mysql \
-                        ,mysql5"
-PACKAGECONFIG[valgrind] = "--with-valgrind=${STAGING_DIR_TARGET}/usr,--with-valgrind=no,valgrind"
-
-FILES_${PN}-fpm += "${sysconfdir}/php-fpm.d/www.conf.default"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.2.bb b/meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.2.bb
new file mode 100644
index 0000000..634facd
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.2.bb
@@ -0,0 +1,25 @@
+require php.inc
+
+LIC_FILES_CHKSUM = "file://LICENSE;md5=fb07bfc51f6d5e0c30b65d9701233b2e"
+
+SRC_URI += "file://0001-acinclude.m4-don-t-unset-cache-variables.patch \
+            file://0048-Use-pkg-config-for-FreeType2-detection.patch \
+            file://0049-ext-intl-Use-pkg-config-to-detect-icu.patch \
+            file://0001-Use-pkg-config-for-libxml2-detection.patch \
+           "
+SRC_URI_append_class-target = " \
+                                file://pear-makefile.patch \
+                                file://phar-makefile.patch \
+                                file://0001-opcache-config.m4-enable-opcache.patch \
+                                "
+
+SRC_URI[md5sum] = "c893ff828945c274d90e026528142439"
+SRC_URI[sha256sum] = "946f50dacbd2f61e643bb737021cbe8b1816e780ee7ad3e0cd999a1892ab0add"
+
+PACKAGECONFIG[mysql] = "--with-mysqli=mysqlnd \
+                        --with-pdo-mysql=mysqlnd \
+                        ,--without-mysqli --without-pdo-mysql \
+                        ,mysql5"
+PACKAGECONFIG[valgrind] = "--with-valgrind=${STAGING_DIR_TARGET}/usr,--with-valgrind=no,valgrind"
+
+FILES_${PN}-fpm += "${sysconfdir}/php-fpm.d/www.conf.default"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf/run-ptest b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf/run-ptest
index 7c3a8d1..b3b2278 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf/run-ptest
+++ b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf/run-ptest
@@ -8,7 +8,7 @@
 	if [ -x "${write_exe_full_path}" ]; then
 		write_exe=`basename ${write_exe_full_path}`
 		echo "Generating new test file using ${write_exe}..."
-		${write_exe_full_path} "${TEST_FILE}"
+    printf "1234\nname\nname@example.com\n" | ${write_exe_full_path} "${TEST_FILE}"
 		RETVAL=$?
 		[ $RETVAL -eq 0 ] || exit $RETVAL
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/rapidjson/rapidjson/0001-CMake-remove-hardcoded-CMAKECONFIG_INSTALL_DIR-path.patch b/meta-openembedded/meta-oe/recipes-devtools/rapidjson/rapidjson/0001-CMake-remove-hardcoded-CMAKECONFIG_INSTALL_DIR-path.patch
new file mode 100644
index 0000000..745f5d0
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/rapidjson/rapidjson/0001-CMake-remove-hardcoded-CMAKECONFIG_INSTALL_DIR-path.patch
@@ -0,0 +1,36 @@
+From 8d272e53a4d1dc405e08ce2dd50159c58f4451e9 Mon Sep 17 00:00:00 2001
+From: Ruslan Bilovol <rbilovol@cisco.com>
+Date: Thu, 24 Jan 2019 18:11:39 +0200
+Subject: [PATCH] CMake: remove hardcoded CMAKECONFIG_INSTALL_DIR path
+
+Currently this path is hardcoded to lib/cmake.
+Some distributions have different library path (like lib64).
+So reuse LIB_INSTALL_DIR for that to make CMAKECONFIG_INSTALL_DIR
+configurable and usable in such distros.
+
+Upstream-Status: Backport [https://github.com/Tencent/rapidjson/commit/8d272e53a4d1dc405e08ce2dd50159c58f4451e9]
+
+Signed-off-by: Ruslan Bilovol <rbilovol@cisco.com>
+---
+ CMakeLists.txt | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 7c60407..0275672 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -199,9 +199,9 @@ CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}ConfigVersion.cmake.in
+     ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake @ONLY)
+ 
+ # ... for the install tree
+-SET( CMAKECONFIG_INSTALL_DIR lib/cmake/${PROJECT_NAME} )
++SET( CMAKECONFIG_INSTALL_DIR ${LIB_INSTALL_DIR}/cmake/${PROJECT_NAME} )
+ FILE( RELATIVE_PATH REL_INCLUDE_DIR
+-    "${CMAKE_INSTALL_PREFIX}/${CMAKECONFIG_INSTALL_DIR}"
++    "${CMAKECONFIG_INSTALL_DIR}"
+     "${CMAKE_INSTALL_PREFIX}/include" )
+ 
+ SET( ${PROJECT_NAME}_INCLUDE_DIR "\${${PROJECT_NAME}_CMAKE_DIR}/${REL_INCLUDE_DIR}" )
+-- 
+1.9.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/rapidjson/rapidjson_git.bb b/meta-openembedded/meta-oe/recipes-devtools/rapidjson/rapidjson_git.bb
index c90eab0..e3ed9c6 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/rapidjson/rapidjson_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/rapidjson/rapidjson_git.bb
@@ -4,7 +4,8 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://license.txt;md5=ba04aa8f65de1396a7e59d1d746c2125"
 
-SRC_URI = "git://github.com/miloyip/rapidjson.git;nobranch=1"
+SRC_URI = "git://github.com/miloyip/rapidjson.git;nobranch=1 \
+           file://0001-CMake-remove-hardcoded-CMAKECONFIG_INSTALL_DIR-path.patch"
 
 SRCREV = "6a905f9311f82d306da77bd963ec5aa5da07da9c"
 
@@ -14,7 +15,7 @@
 
 inherit cmake
 
-EXTRA_OECMAKE += "-DRAPIDJSON_BUILD_DOC=OFF -DRAPIDJSON_BUILD_TESTS=OFF -DRAPIDJSON_BUILD_EXAMPLES=OFF"
+EXTRA_OECMAKE += "-DRAPIDJSON_BUILD_DOC=OFF -DRAPIDJSON_BUILD_TESTS=OFF -DRAPIDJSON_BUILD_EXAMPLES=OFF -DLIB_INSTALL_DIR:STRING=${libdir}"
 
 # RapidJSON is a header-only C++ library, so the main package will be empty.
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk/confsearch.diff b/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk/confsearch.diff
index 4dbd9a4..8cc07bc 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk/confsearch.diff
+++ b/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk/confsearch.diff
@@ -1,35 +1,46 @@
+From 5539442e5f5442606071afc5cf02642314ad13bb Mon Sep 17 00:00:00 2001
+From: Koen Kooi <koen@dominion.thruhere.net>
+Date: Wed, 17 Aug 2011 22:52:35 +0200
+Subject: [PATCH] tk 8.5.8: import from OE rev
+
 Patch by Sergei Golovan allows to find tclConfig.sh in /usr/share/tcltk/tcl8.5
 and tkConfig.sh in /usr/share/tcltk/tk8.5 where they are located in Debian
 installation.
 
---- tk8.5-8.5.8.orig/unix/configure
-+++ tk8.5-8.5.8/unix/configure
-@@ -1431,7 +1431,8 @@
- 			`ls -d /usr/contrib/lib 2>/dev/null` \
+---
+ unix/configure | 1 +
+ unix/tcl.m4    | 2 ++
+ 2 files changed, 3 insertions(+)
+
+Index: a/unix/configure
+===================================================================
+--- a/unix/configure.orig
++++ b/unix/configure
+@@ -1432,6 +1432,7 @@ echo "$as_me: error: ${with_tclconfig} d
  			`ls -d /usr/local/lib 2>/dev/null` \
+ 			`ls -d /usr/contrib/lib 2>/dev/null` \
  			`ls -d /usr/pkg/lib 2>/dev/null` \
-+			`ls -d /usr/share/tcltk/tcl8.5 2>/dev/null` \
++			`ls -d /usr/share/tcltk/tcl8.6 2>/dev/null` \
  			`ls -d /usr/lib 2>/dev/null` \
  			`ls -d /usr/lib64 2>/dev/null` \
- 			; do
- 		    if test -f "$i/tclConfig.sh" ; then
---- tk8.5-8.5.8.orig/unix/tcl.m4
-+++ tk8.5-8.5.8/unix/tcl.m4
-@@ -93,7 +93,8 @@
- 			`ls -d /usr/contrib/lib 2>/dev/null` \
+ 			`ls -d /usr/local/lib/tcl8.6 2>/dev/null` \
+Index: a/unix/tcl.m4
+===================================================================
+--- a/unix/tcl.m4.orig
++++ b/unix/tcl.m4
+@@ -94,6 +94,7 @@ AC_DEFUN([SC_PATH_TCLCONFIG], [
  			`ls -d /usr/local/lib 2>/dev/null` \
+ 			`ls -d /usr/contrib/lib 2>/dev/null` \
  			`ls -d /usr/pkg/lib 2>/dev/null` \
-+			`ls -d /usr/share/tcltk/tcl8.5 2>/dev/null` \
++			`ls -d /usr/share/tcltk/tcl8.6 2>/dev/null` \
  			`ls -d /usr/lib 2>/dev/null` \
  			`ls -d /usr/lib64 2>/dev/null` \
- 			; do
- 		    if test -f "$i/tclConfig.sh" ; then
-@@ -223,7 +224,8 @@
- 			`ls -d ${prefix}/lib 2>/dev/null` \
+ 			`ls -d /usr/local/lib/tcl8.6 2>/dev/null` \
+@@ -227,6 +228,7 @@ AC_DEFUN([SC_PATH_TKCONFIG], [
  			`ls -d /usr/local/lib 2>/dev/null` \
  			`ls -d /usr/contrib/lib 2>/dev/null` \
-+			`ls -d /usr/share/tcltk/tk8.5 2>/dev/null` \
+ 			`ls -d /usr/pkg/lib 2>/dev/null` \
++			`ls -d /usr/share/tcltk/tk8.6 2>/dev/null` \
  			`ls -d /usr/lib 2>/dev/null` \
  			`ls -d /usr/lib64 2>/dev/null` \
- 			; do
- 		    if test -f "$i/tkConfig.sh" ; then
+ 			`ls -d /usr/local/lib/tk8.6 2>/dev/null` \
diff --git a/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk_8.6.8.bb b/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk_8.6.8.bb
deleted file mode 100644
index 4e38525..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk_8.6.8.bb
+++ /dev/null
@@ -1,71 +0,0 @@
-SUMMARY = "Tool Command Language ToolKit Extension"
-HOMEPAGE = "http://tcl.sourceforge.net"
-SECTION = "devel/tcltk"
-
-# http://www.tcl.tk/software/tcltk/license.html
-LICENSE = "tcl"
-LIC_FILES_CHKSUM = "file://../license.terms;md5=c88f99decec11afa967ad33d314f87fe \
-    file://../compat/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
-    file://../doc/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
-    file://../library/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
-    file://../macosx/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
-    file://../tests/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
-    file://../unix/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
-    file://../win/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
-    file://../xlib/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
-"
-
-DEPENDS = "tcl virtual/libx11 libxt"
-
-SRC_URI = "\
-    ${SOURCEFORGE_MIRROR}/tcl/${BPN}${PV}-src.tar.gz \
-    file://confsearch.diff;striplevel=2 \
-    file://non-linux.diff;striplevel=2 \
-    file://tklibrary.diff;striplevel=2 \
-    file://tkprivate.diff;striplevel=2 \
-    file://fix-xft.diff \
-    file://configure.use.fontconfig.with.xft.patch \
-"
-SRC_URI[md5sum] = "5e0faecba458ee1386078fb228d008ba"
-SRC_URI[sha256sum] = "49e7bca08dde95195a27f594f7c850b088be357a7c7096e44e1158c7a5fd7b33"
-
-S = "${WORKDIR}/${BPN}${PV}/unix"
-
-# Short version format: "8.6"
-VER = "${@os.path.splitext(d.getVar('PV'))[0]}"
-
-LDFLAGS += "-Wl,-rpath,${libdir}/tcltk/${PV}/lib"
-inherit autotools distro_features_check
-# depends on virtual/libx11
-REQUIRED_DISTRO_FEATURES = "x11"
-
-EXTRA_OECONF = "\
-    --enable-threads \
-    --with-x \
-    --with-tcl=${STAGING_BINDIR}/crossscripts \
-    --libdir=${libdir} \
-"
-export TK_LIBRARY='${libdir}/tk${VER}'
-do_install_append() {
-    ln -sf libtk${VER}.so ${D}${libdir}/libtk${VER}.so.0
-    oe_libinstall -so libtk${VER} ${D}${libdir}
-    ln -sf wish${VER} ${D}${bindir}/wish
-}
-
-PACKAGECONFIG ??= "xft"
-PACKAGECONFIG[xft] = "--enable-xft,--disable-xft,xft"
-PACKAGECONFIG[xss] = "--enable-xss,--disable-xss,libxscrnsaver libxext"
-
-PACKAGES =+ "${PN}-lib"
-
-FILES_${PN}-lib = "${libdir}/libtk${VER}.so*"
-FILES_${PN} += "${libdir}/tk*"
-
-# isn't getting picked up by shlibs code
-RDEPENDS_${PN} += "tk-lib"
-RDEPENDS_${PN}_class-native = ""
-
-BBCLASSEXTEND = "native nativesdk"
-
-# Fix the path in sstate
-SSTATE_SCAN_FILES += "*Config.sh"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk_8.6.9.bb b/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk_8.6.9.bb
new file mode 100644
index 0000000..459ae82
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk_8.6.9.bb
@@ -0,0 +1,96 @@
+SUMMARY = "Tool Command Language ToolKit Extension"
+HOMEPAGE = "http://tcl.sourceforge.net"
+SECTION = "devel/tcltk"
+
+# http://www.tcl.tk/software/tcltk/license.html
+LICENSE = "tcl"
+LIC_FILES_CHKSUM = "file://${S}/../license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://${S}/../compat/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://${S}/../doc/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://${S}/../library/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://${S}/../macosx/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://${S}/../tests/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://${S}/../unix/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://${S}/../win/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+    file://${S}/../xlib/license.terms;md5=c88f99decec11afa967ad33d314f87fe \
+"
+
+DEPENDS = "tcl virtual/libx11 libxt"
+
+SRC_URI = "\
+    ${SOURCEFORGE_MIRROR}/tcl/${BPN}${PV}-src.tar.gz \
+    file://confsearch.diff;striplevel=2 \
+    file://non-linux.diff;striplevel=2 \
+    file://tklibrary.diff;striplevel=2 \
+    file://tkprivate.diff;striplevel=2 \
+    file://fix-xft.diff \
+    file://configure.use.fontconfig.with.xft.patch \
+"
+SRC_URI[md5sum] = "e3cf6290999ee30651d75864eccfec63"
+SRC_URI[sha256sum] = "d3f9161e8ba0f107fe8d4df1f6d3a14c30cc3512dfc12a795daa367a27660dac"
+
+S = "${WORKDIR}/${BPN}${PV}/unix"
+
+# Short version format: "8.6"
+VER = "${@os.path.splitext(d.getVar('PV'))[0]}"
+
+LDFLAGS += "-Wl,-rpath,${libdir}/tcltk/${PV}/lib"
+inherit autotools distro_features_check
+# depends on virtual/libx11
+REQUIRED_DISTRO_FEATURES = "x11"
+
+EXTRA_OECONF = "\
+    --enable-threads \
+    --with-x \
+    --with-tcl=${STAGING_BINDIR}/crossscripts \
+    --libdir=${libdir} \
+"
+export TK_LIBRARY='${libdir}/tk${VER}'
+do_install_append() {
+    ln -sf libtk${VER}.so ${D}${libdir}/libtk${VER}.so.0
+    oe_libinstall -so libtk${VER} ${D}${libdir}
+    ln -sf wish${VER} ${D}${bindir}/wish
+
+    sed -i "s;-L${B};-L${STAGING_LIBDIR};g" tkConfig.sh
+    sed -i "s;'${WORKDIR};'${STAGING_INCDIR};g" tkConfig.sh
+    install -d ${D}${bindir_crossscripts}
+    install -m 0755 tkConfig.sh ${D}${bindir_crossscripts}
+}
+
+PACKAGECONFIG ??= "xft"
+PACKAGECONFIG[xft] = "--enable-xft,--disable-xft,xft"
+PACKAGECONFIG[xss] = "--enable-xss,--disable-xss,libxscrnsaver libxext"
+
+PACKAGES =+ "${PN}-lib"
+
+FILES_${PN}-lib = "${libdir}/libtk${VER}.so*"
+FILES_${PN} += "${libdir}/tk*"
+
+# isn't getting picked up by shlibs code
+RDEPENDS_${PN} += "tk-lib"
+RDEPENDS_${PN}_class-native = ""
+
+BBCLASSEXTEND = "native nativesdk"
+
+# Fix the path in sstate
+SSTATE_SCAN_FILES += "*Config.sh"
+
+inherit binconfig
+
+SYSROOT_DIRS += "${bindir_crossscripts}"
+
+# Fix some paths that might be used by Tcl extensions
+BINCONFIG_GLOB = "*Config.sh"
+
+# Cleanup host path from ${libdir}/tclConfig.sh and remove the
+# ${bindir_crossscripts}/tclConfig.sh from target
+PACKAGE_PREPROCESS_FUNCS += "tcl_package_preprocess"
+tcl_package_preprocess() {
+        sed -i -e "s;${DEBUG_PREFIX_MAP};;g" \
+               -e "s;-L${STAGING_LIBDIR};-L${libdir};g" \
+               -e "s;${STAGING_INCDIR};${includedir};g" \
+               -e "s;--sysroot=${RECIPE_SYSROOT};;g" \
+               ${PKGD}${libdir}/tkConfig.sh
+
+        rm -f ${PKGD}${bindir_crossscripts}/tkConfig.sh
+}
diff --git a/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace/0001-include-dlfcn.h-for-RTLD_DEFAULT.patch b/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace/0001-include-dlfcn.h-for-RTLD_DEFAULT.patch
deleted file mode 100644
index fe7aac9..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace/0001-include-dlfcn.h-for-RTLD_DEFAULT.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From cdf7f2e394fcfb93a61f509ae3388f29540a6b35 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 8 Sep 2018 11:56:13 -0700
-Subject: [PATCH] include dlfcn.h for RTLD_DEFAULT
-
-Fixes
-plthook.c:128:41: error: use of undeclared identifier 'RTLD_DEFAULT'
-
-Upstream-Status: Submitted [https://github.com/namhyung/uftrace/pull/487]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- libmcount/plthook.c | 1 +
- utils/debug.c       | 1 +
- 2 files changed, 2 insertions(+)
-
-diff --git a/libmcount/plthook.c b/libmcount/plthook.c
-index d9d84f0..d54f5e8 100644
---- a/libmcount/plthook.c
-+++ b/libmcount/plthook.c
-@@ -6,6 +6,7 @@
- #include <sys/mman.h>
- #include <pthread.h>
- #include <assert.h>
-+#include <dlfcn.h>
- 
- /* This should be defined before #include "utils.h" */
- #define PR_FMT     "mcount"
-diff --git a/utils/debug.c b/utils/debug.c
-index 2134b09..5460def 100644
---- a/utils/debug.c
-+++ b/utils/debug.c
-@@ -13,6 +13,7 @@
- #include <assert.h>
- #include <limits.h>
- #include <inttypes.h>
-+#include <dlfcn.h>
- 
- #include "utils/utils.h"
- 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.8.3.bb b/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.2.bb
similarity index 85%
rename from meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.8.3.bb
rename to meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.2.bb
index ca38e6a..4f40168 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.8.3.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.2.bb
@@ -10,10 +10,9 @@
 
 inherit autotools
 
-# v0.8.3
-SRCREV = "8b723a6fae2ef30495cd6279774fba9c95cd9c88"
+# v0.9.2
+SRCREV = "66fc1fb973f4a44aecd216541405ffe05196f11e"
 SRC_URI = "git://github.com/namhyung/${BPN} \
-           file://0001-include-dlfcn.h-for-RTLD_DEFAULT.patch \
            "
 S = "${WORKDIR}/git"
 
@@ -21,9 +20,11 @@
 
 def set_target_arch(d):
     import re
-    arch = d.getVar('TARGET_ARCH', True)
+    arch = d.getVar('TARGET_ARCH')
     if re.match(r'i.86', arch, re.I):
         return 'i386'
+    elif re.match('armeb', arch, re.I):
+        return 'arm'
     else:
         return arch
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/xmlrpc-c/xmlrpc-c/0001-fix-compile-failure-against-musl-C-library.patch b/meta-openembedded/meta-oe/recipes-devtools/xmlrpc-c/xmlrpc-c/0001-fix-compile-failure-against-musl-C-library.patch
deleted file mode 100644
index 234d696..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/xmlrpc-c/xmlrpc-c/0001-fix-compile-failure-against-musl-C-library.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From 950b27f8320b841490cafcb3e6e3b818c7174c0d Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Thu, 20 Jul 2017 22:32:50 -0400
-Subject: [PATCH] fix compile failure against musl C library
-
-Upstream-Status: Pending
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- test/cpp/server_abyss.cpp               |  2 +-
- tools/xmlrpc_pstream/xmlrpc_pstream.cpp | 10 +++++++---
- 2 files changed, 8 insertions(+), 4 deletions(-)
-
-diff --git a/test/cpp/server_abyss.cpp b/test/cpp/server_abyss.cpp
-index 2458a8f..82f91da 100644
---- a/test/cpp/server_abyss.cpp
-+++ b/test/cpp/server_abyss.cpp
-@@ -18,7 +18,7 @@
- #ifdef WIN32
-   #include <winsock2.h>
- #else
--  #include <sys/unistd.h>
-+  #include <unistd.h>
-   #include <sys/socket.h>
-   #include <arpa/inet.h>
-   #include <netinet/in.h>
-diff --git a/tools/xmlrpc_pstream/xmlrpc_pstream.cpp b/tools/xmlrpc_pstream/xmlrpc_pstream.cpp
-index d39e105..1fd8900 100644
---- a/tools/xmlrpc_pstream/xmlrpc_pstream.cpp
-+++ b/tools/xmlrpc_pstream/xmlrpc_pstream.cpp
-@@ -15,11 +15,15 @@
- #include "xmlrpc-c/girerr.hpp"
- using girerr::throwf;
- 
--#include <features.h>  // for __BEGIN_DECLS
-+#ifdef __cplusplus
-+extern "C" {
-+#endif
- 
--__BEGIN_DECLS
- #include "dumpvalue.h"  /* An internal Xmlrpc-c header file ! */
--__END_DECLS
-+
-+#ifdef __cplusplus
-+}
-+#endif
- 
- 
- #include <xmlrpc-c/base.hpp>
--- 
-2.8.1
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/xmlrpc-c/xmlrpc-c/0001-test-cpp-server_abyss-Fix-build-with-clang-libc.patch b/meta-openembedded/meta-oe/recipes-devtools/xmlrpc-c/xmlrpc-c/0001-test-cpp-server_abyss-Fix-build-with-clang-libc.patch
new file mode 100644
index 0000000..be83b01
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/xmlrpc-c/xmlrpc-c/0001-test-cpp-server_abyss-Fix-build-with-clang-libc.patch
@@ -0,0 +1,27 @@
+From dba3c5bf34ed530fd41ed50968825af2158f142e Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 29 Jan 2019 13:31:39 -0800
+Subject: [PATCH] test/cpp/server_abyss: Fix build with clang/libc++
+
+/mnt/a/yoe/workspace/sources/xmlrpc-c/test/cpp/server_abyss.cpp:87:14: error: assigning to 'int' from incompatible type '__bind<int
+&, sockaddr *, unsigned int>'
+        rc = bind(this->fd, (struct sockaddr *)&sockAddr, sizeof(sockAddr));
+             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ test/cpp/server_abyss.cpp | 56 +++++++++++++++++++--------------------
+ 1 file changed, 28 insertions(+), 28 deletions(-)
+
+--- a/test/cpp/server_abyss.cpp
++++ b/test/cpp/server_abyss.cpp
+@@ -85,7 +85,7 @@ public:
+         sockAddr.sin_port   = htons(portNumber);
+         sockAddr.sin_addr.s_addr = 0;
+ 
+-        rc = bind(this->fd, (struct sockaddr *)&sockAddr, sizeof(sockAddr));
++        rc = ::bind(this->fd, (struct sockaddr *)&sockAddr, sizeof(sockAddr));
+         
+         if (rc != 0) {
+             closesock(this->fd);
diff --git a/meta-openembedded/meta-oe/recipes-devtools/xmlrpc-c/xmlrpc-c_1.31.0.bb b/meta-openembedded/meta-oe/recipes-devtools/xmlrpc-c/xmlrpc-c_1.31.0.bb
deleted file mode 100644
index efa58f1..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/xmlrpc-c/xmlrpc-c_1.31.0.bb
+++ /dev/null
@@ -1,24 +0,0 @@
-DESCRIPTION = "XML-RPC for C/C++ is programming libraries and related tools to help you \
-write an XML-RPC server or client in C or C++."
-
-HOMEPAGE = "http://xmlrpc-c.sourceforge.net/"
-LICENSE = "BSD & MIT"
-LIC_FILES_CHKSUM = "file://doc/COPYING;md5=aefbf81ba0750f02176b6f86752ea951"
-
-SRC_URI = "git://github.com/ensc/xmlrpc-c.git;branch=master \
-           file://0001-fix-compile-failure-against-musl-C-library.patch \
-           file://0002-fix-formatting-issues.patch \
-"
-SRCREV = "81443a9dc234cc275449dbc17867ad77ae189124"
-S = "${WORKDIR}/git"
-
-DEPENDS = "curl libxml2"
-RDEPENDS_${PN} = "curl perl"
-
-inherit cmake
-
-EXTRA_OECMAKE = "-D_lib:STRING=${baselib}"
-
-BBCLASSEXTEND = "native"
-
-TARGET_CFLAGS += "-Wno-narrowing"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/xmlrpc-c/xmlrpc-c_1.51.03.bb b/meta-openembedded/meta-oe/recipes-devtools/xmlrpc-c/xmlrpc-c_1.51.03.bb
new file mode 100644
index 0000000..5242637
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/xmlrpc-c/xmlrpc-c_1.51.03.bb
@@ -0,0 +1,49 @@
+DESCRIPTION = "XML-RPC for C/C++ is programming libraries and related tools to help you \
+write an XML-RPC server or client in C or C++."
+
+HOMEPAGE = "http://xmlrpc-c.sourceforge.net/"
+LICENSE = "BSD & MIT"
+LIC_FILES_CHKSUM = "file://doc/COPYING;md5=aefbf81ba0750f02176b6f86752ea951"
+
+SRC_URI = "git://github.com/mirror/xmlrpc-c.git \
+           file://0001-test-cpp-server_abyss-Fix-build-with-clang-libc.patch \
+           file://0002-fix-formatting-issues.patch \
+           "
+#Release 1.51.03
+SRCREV = "343a3b98e54999d67edb644bcd395aa9784fb16e"
+
+S = "${WORKDIR}/git/stable"
+
+DEPENDS = "libxml2"
+RDEPENDS_${PN} = "perl"
+
+inherit autotools-brokensep binconfig pkgconfig
+
+TARGET_CFLAGS += "-Wno-narrowing"
+
+EXTRA_OEMAKE += "CC_FOR_BUILD='${BUILD_CC}' \
+                 LD_FOR_BUILD='${BUILD_LD}' \
+                 CFLAGS_FOR_BUILD='${BUILD_CFLAGS}' \
+                 LDFLAGS_FOR_BUILD='${BUILD_LDFLAGS}' \
+                 "
+
+EXTRA_OECONF += "--disable-libwww-client --disable-wininet-client"
+
+PACKAGECONFIG ??= "curl cplusplus"
+
+PACKAGECONFIG[abyss] = "--enable-abyss-server --enable-abyss-threads --enable-abyss-openssl,--disable-abyss-server --disable-abyss-threads --disable-abyss-openssl,openssl,"
+PACKAGECONFIG[cplusplus] = "--enable-cplusplus,--disable-cplusplus,,"
+PACKAGECONFIG[curl] = "--enable-curl-client,--disable-curl-client,curl,curl"
+
+do_configure() {
+        install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}
+        install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}
+        autoconf
+        oe_runconf
+        # license is incompatible with lib/util/getoptx.*
+        rm -fv ${S}/tools/turbocharger/mod_gzip.c
+}
+
+BBCLASSEXTEND = "native"
+
+CLEANBROKEN = "1"