subtree updates

meta-openembedded: 64974b8779..c95842cdca:
  Adrian Bunk (46):
        modemmanager: Remove the obsolete dependency on dbus-glib
        gpsd: Remove the obsolete dependency on dbus-glib
        eggdbus: Remove this obsolete package
        sanity-meta-gnome: Remove obsolete class
        gssdp: Merge inc
        vlc: notify switched to GTK+3 some time ago
        tremor: Upgrade 20150107 -> 20180319
        vlc: Remove the obsolete dependency on dbus-glib
        blueman: Enable thunar support by default but don't rdepend on it
        gnome-bluetooth: Drop bluez4 support
        networkmanager: Drop bluez4 support
        packagegroup-meta-networking-connectivity: Correct a DISTRO_FEATURES check
        packagegroup-tools-bluetooth: Remove bluez4 support
        cpprest: Fix build failure with gcc 8
        packagegroup-basic: Remove bluez4 support
        packagegroup-meta-oe: Remove bogus bluez4 DISTRO_FEATURES checks
        esound: Remove this obsolete package
        gpsd: Remove obsolete musl patch
        gpsd: Don't build without optimization
        zeromq: Upgrade 4.3.1 -> 4.3.2
        obex-data-server: Drop bluez4 support
        openobex: Drop bluez4 support
        gpsd: Drop bluez4 support
        libao: Remove the non-default esound PACKAGECONFIG
        gpsd: Disable manpage building by config option instead of patching
        gpsd: Upgrade 3.18.1 -> 3.19
        gnome-desktop3: Fix REQUIRED_DISTRO_FEATURES
        meta-gnome: Remove GNOME_COMPRESS_TYPE = "xz" in recipes
        jasper: Use the new upstream GitHub location instead of the defunct tarball URL
        fluidsynth: Add PACKAGECONFIG for readline
        meta-multimedia: Remove GNOME_COMPRESS_TYPE = "xz" in recipes
        udisks: Remove this obsolete version
        gpsd: Switch from python-scons-native to python3-scons-native
        meta-gnome: Inherit gnomebase instead of gnome
        meta-oe: Inherit gnomebase instead of gnome
        libgsf: Drop the obsolete inherit gconf
        gnome-system-monitor: Add DEPENDS on polkit
        meta-oe: Change some ftp:// URIs to http(s)://
        meta-oe: Use GNU_MIRROR in more recipes
        wireshark: Use an upstream URL that stays valid longer
        modemmanager: Use a simpler workaround for the clang build
        network-manager-applet: Remove obsolete do_configure_append
        network-manager-applet: Remove the obsolete DEPENDS on gconf
        wv: Remove, abiword was the only user
        gtkmathview: Remove, abiword was the last user
        t1lib: Remove, gtkmathview was the last user

  Alex Kiernan (6):
        keyutils: Fix build with usrmerge
        iwd: update to 0.18
        libzip: Upgrade 1.5.1 -> 1.5.2
        zstd: New recipe
        zstd: Update 1.4.0 -> 1.4.2
        iwd: Upgrade 0.18 -> 0.19

  Alexander Kanavin (3):
        python-matplotlib: remove the python 2.x version of the recipe
        python-oauthlib: remove the 2.x version of the recipe
        python-pandas: remove the python 2.x version of the recipe

  Alistair Francis (3):
        gpsd: Upgrade from 3.17 to 3.18.1
        gpsd: Fix the systemd service run paths
        python: pypi: Add python3-term

  Anatol Belski (1):
        gperftools: separate off libtcmalloc-minimal

  Andreas Müller (2):
        meta-xfce: Make Kai Kang layer maintainer
        abiword: remove

  Andrej Valek (2):
        nodejs: 10.15.3 -> 10.16.0
        nodejs: 10.16.0 -> 10.16.2

  André Draszik (1):
        layer.conf: ignore wireless-regdb->crda dep for siggen purposes

  Ankit Navik (1):
        safec: Remove aarch64 from COMPATIBLE_HOST

  Anuj Mittal (2):
        xterm: upgrade 330 -> 347
        libsdl: import from OE-Core

  Armin Kuster (5):
        keyutils: update to 1.6
        keyutils: improve ptests
        keyutils: fix QA WARNING
        keyutils: fix pulling in glibc when musl enabled
        keyutils: fix library install path

  Arturo Buzarra (1):
        lvm2: Fix RDEPEND on lvm2 to lvm2-udevrules

  Ayoub Zaki (1):
        pegtl: Initial recipe

  Bartosz Golaszewski (2):
        bats: new package
        libgpiod: bump version to v1.4.1

  Beniamin Sandu (1):
        unbound: create recipe for version 1.9.2

  Callaghan, Dan (1):
        unixodbc: mysql5 is not required but readline is

  Changqing Li (15):
        python-pygobject: fix install dir for python2
        dlm: upgrade 4.0.7 -> 4.0.9
        uthash: remove uthash-ptest dependencies
        waf-samba: switch to python3
        libtevent: upgrade 0.9.37 -> 0.10.0
        libtdb: upgrade 1.3.17 -> 1.4.0
        libtalloc: upgrade 2.1.14 -> 2.2.0
        samba: upgrade 4.8.12 -> 4.10.5
        libldb: upgrade 1.4.1 -> 1.5.4
        volume-key: fix "Nothing RPROVIDES" when multilib enabled
        isomd5sum: fix "Nothing RPROVIDES" when multilib enabled
        satyr: fix "Nothing RPROVIDES" when multilib enabled
        libtevent: fix do_package_qa issue
        libtdb: fix do_package_qa issue
        fio: Delete redundant tag

  Chin Huat Ang (1):
        opencv: 3.4.5 -> 4.1.0

  Denys Dmytriyenko (1):
        ufs-tool: add tool to access UFS (Universal Flash Storage) devices

  Douglas Royds (2):
        grpc: DEPENDS on googletest
        packagegroup-meta-oe: RDEPENDS on googletest

  Drew Moseley (1):
        networkmanager: Use ALTERNATIVES for resolv-conf handling.

  Erik Botö (1):
        paho-mqtt-c: enable SSL

  Fabian Klemp (1):
        openvpn: respect pid file in init.d service start

  Gianfranco Costamagna (3):
        iniparser: add initial recipe
        cpprest: update to 2.10.14
        cpprest: Do not export Werror from build system instead of adding -Wno-error to the same build command

  He Zhe (1):
        drbd-utils: Fix netlink failure with nested attributes for kernel v5.2

  Hongxu Jia (24):
        packagegroup-xfce-extended: conditional runtime recommends on xfce-polkit
        xfce-polkit: add required distro feature check to polkit
        xfce4-session: optional support polkit
        upower: remove polkit dependency
        gvfs: add meson option admin and udisks2 to PACKAGECONFIG
        mongodb: add to PNBLACKLIST
        itstool: use libxml2 to instead of python3-lxml
        meta-multimedia: add layer depends on meta-python
        itstool: use libxml2 to instead of python3-lxml
        python-six: remove duplicated recipe
        libauthen-radius-perl: ptest requires meta-networking to be present
        xfce4-panel: use lxdm to replace dm-tool
        drop lxdm_%.bbappend
        python3-pykickstart: 3.18 -> 3.20
        python3-blivet: 3.1.2 -> 3.1.4
        python-pyparted/python3-pyparted: 3.11.1 -> 3.11.2
        libbytesize: 1.4 -> 2.0
        libblockdev: 2.20 -> 2.22
        network-manager-applet: 1.8.20 -> 1.8.22
        thin-provisioning-tools: 0.7.6 -> 0.8.5
        libreport: 2.9.7 -> 2.10.0
        python3-blivetgui: fix blivet-gui broken
        php: remove 5.6.40
        lmsensors: support package lmsensors

  Jackie Huang (1):
        keyutils: add new recipe

  Jason Wessel (1):
        libbytesize: Add depends for gettext-native

  Joshua Lock (3):
        python-cffi: add missing RDEPENDS on pycparser
        python-attrs: add native BBCLASSEXTEND
        python-dateutil: add native BBCLASSEXTEND

  Kai Kang (39):
        mozjs: fix configure failure on CentOS 7.6
        libvncserver: update to latest commit 1354f7f
        libxfce4util: 4.13.3 -> 4.13.4
        libxfce4ui: 4.13.5 -> 4.13.6
        exo: 0.12.5 -> 0.12.6
        xfconf: 4.13.7 -> 4.13.8
        thunar: 1.8.6 -> 1.8.7
        xfce4-session: 4.13.2 -> 4.13.3
        xfwm4: 4.13.2 -> 4.13.3
        xfdesktop: 4.13.4 -> 4.13.5
        xfce4-power-manager: 1.6.2 -> 1.6.3
        xfce4-panel: 4.13.5 -> 4.13.6
        xfce4-dev-tools: 4.12.0 -> 4.13.0
        thunar-volman: 0.9.2 -> 0.9.3
        garcon: 0.6.2 -> 0.6.3
        xfce4-settings: 4.12.4 -> 4.13.7
        xfce4-pulseaudio-plugin: add dependency dbus-glib
        xfce4-verve-plugin: 1.1.0 -> 2.0.0
        net-snmp: update SRC_URI
        xfwm4: fix assertion error
        poppler: toggle gobject-introspection support
        xfce4-settings: rrecommends xfce4-datetime-setter
        xfce4-datetime-setter: add recipe
        libxfce4util: 4.13.4 -> 4.14.0
        xfconf: 4.13.8 -> 4.14.1
        libxfce4ui: 4.13.6 -> 4.14.1
        exo: 0.12.6 -> 0.12.8
        garcon: 0.6.3 -> 0.6.4
        thunar: 1.8.7 -> 1.8.9
        thunar-volman: 0.9.3 -> 0.9.5
        tumbler: 0.2.0 -> 0.2.7
        xfce4-appfinder: 4.13.3 -> 4.14.0
        xfce4-dev-tools: 4.13.0 -> 4.14.0
        xfce4-panel: 4.13.6 -> 4.14.0
        xfce4-power-manager: 1.6.3 -> 1.6.5
        xfce4-session: 4.13.3 -> 4.14.0
        xfce4-settings: 4.13.7 -> 4.14.0
        xfdesktop: 4.13.5 -> 4.14.1
        xfwm4: 4.13.3 -> 4.14.0

  Khem Raj (44):
        wvdial: Fix build with musl
        librelp: Pass Wno-error to compiler
        recipes: Use BPN instead of PN in SRC_URIs
        cli11: Refresh patch to fix fuzz
        sthttpd: Use git SRC_URI instead of github archive
        arno-iptables-firewall: Switch to git fetcher
        firewalld: Update to 0.6.3->0.6.4
        python-matplotlib: Use git src_uri
        mpv: Switch to using git fetcher
        x11vnc: Switch to git fetcher
        dumb-init: Switch to git fetcher
        pam-plugin-ldapdb: Use git fetcher
        libuv: Switch to using git fetcher
        usbctl: Switch to git fetcher
        pmdk: Fix libdir which is multi-lib aware
        kexec-tools-klibc: Refresh patch with no code change
        log4cplus: Fix build with gold linker
        orage: Fix build with libical3
        pegtl: Fix build with clang/libc++
        postfix: Fix build failures with glibc 2.30
        snort: Fix build with glibc 2.30
        opensaf: Add configure time check to detect gettid API in libc
        ypbind-mt: Fix build with glibc 2.30
        openocd: Fix build with glibc 2.30
        netkit-rusers: Add dep on rpcsvc-proto for rpc headers
        collectd: Fix build with glibc 2.30
        alsa-oss: Drop now not needed patch
        klcc-cross: Recognise --unwindlib clang option
        libsub-exporter-progressive-perl: Remove unneeded DEPENDS_PN
        libedit: Delete
        sjf2410-linux-native: Do not include sys/io.h
        gradm: Upgrade to 3.1-201903191516 release
        pmdk: Fix packaging errors when building on non-x86 host
        klibc: Pass -fno-builtin-bcmp with musl/clang combo
        graphviz: Fix build error that surfaced with latest pango
        graphviz: Do not build tcl support for target
        python-grpcio: Use gettid API from glibc 2.30+
        grpc: Update to 1.22.0
        android-tools: Fix build with glibc 2.30
        iperf2: Upgrade to 2.0.13
        netkit-rusers: Depend on rpcsvc-proto-native for rpcgen tool
        kpatch: Pass ARCH from environment
        python3-pillow: Provide python3-imaging
        netkit-rusers: Fix cross-build after glibc dropped rpc

  Laszlo Toth (1):
        networkmanager: fix typo in nonarch_base_libdir

  Liwei Song (2):
        pm-graph: fix time format parse error
        fio: fix first direct IO errored when ioengine is splice

  Luca Boccassi (2):
        python-pygobject: move python-setuptools from RDEPENDS to DEPENDS
        python-pygobject: remove build-dependency on setuptools and add dependency on pkgutil

  Luca Ceresoli (4):
        fuse-exfat: moved to github
        exfat-utils: moved to github
        fuse-exfat: update 1.2.3 -> 1.3.0
        exfat-utils: update 1.2.3 -> 1.3.0

  Luca Palano (1):
        Netdata upgrade: 1.8.0 -> 1.16.0

  Maciej Pijanowski (8):
        python3-websockets: upgrade to 8.0.2
        python3-multidict: upgrade to 4.5.2
        python-engineio: upgrade to 3.9.3
        python-socketio: upgrade to 4.3.1
        python-aiohttp.inc: add missing RDEPENDS
        python-async-timeout: add asyncio to RDEPENDS
        python-socketio.inc: add missing RDEPENDS
        python3-aiofiles: add recipe

  Mariano Lopez (1):
        nftables: 0.9.0 > 0.9.1

  Martin Jansa (8):
        protobuf: fix build with gold
        SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS add lsb and util-linux for phoronix-test-suite
        oprofile: drop kernel-vmlinux from RRECOMMENDS
        libdbi-perl: prevent native libdbi-perl depending on target perl
        redis: backport a fix for stack trace generation on aarch64
        ntop: fix missing return from non-void function
        python3-twofish: Fix missing return statements in module stubs
        kernel-selftest: skip -Werror=format-security and fortify

  Max Krummenacher (1):
        joe: update to 4.6

  Mikko Rapeli (2):
        protobuf: fix ptest compilation with hardening flags
        stress-ng: delete recipe

  Mingli Yu (7):
        fio: Upgrade to 3.15
        crash: Upgrade to 7.2.6
        makedumpfile: Upgrade to 1.6.6
        hwloc: Upgrade to 1.11.13
        iperf3: Upgrade to 3.7
        log4cplus: Upgrade to 2.0.4
        log4cplus: remove gold linker setting

  Oleksandr Kravchuk (22):
        nghttp2: update to 1.39.1
        drbd-utils: update to 9.10.0
        drbd: update to 9.0.18-1
        keepalived: update to 2.0.16
        nano: update to 4.3
        nuttcp: add systemd unit file
        mbedtls: update to 2.16.2
        dhcpcd: update to 7.2.2
        freediameter: update to 1.2.1
        sethdlc: set PV in filename
        miniupnpd: update to 2.1.20190210
        ipvsadm: update to 1.30
        uftp: update to 4.9.11
        libnftnl: update to 1.1.3
        dhcpcd: update to 7.2.3
        blueman: update to 2.1.1
        uftp: update to 4.10
        htpdate: update to 1.2.1
        dhcpcd: update to 8.0.1
        chrony: update to 3.5
        wolfssl: update to 4.1.0
        dhcpcd: update to 8.0.2

  Ovidiu Panait (2):
        python3-pillow: 5.4.1 -> 6.1
        python3-pillow: Add python3-misc/logging/numbers to RDEPENDS

  Paolo Valente (1):
        s-suite: push SRCREV to version 3.5

  Parthiban Nallathambi (1):
        python3-matplotlib: add version 3.1.1

  Pascal Bach (1):
        protobuf: 1.3.1 -> 1.3.2

  Paul Eggleton (3):
        mraa: update to 2.0.0
        upm: update to 2.0.0
        picocom: update to 3.1

  Pierre-Jean Texier (2):
        stunnel: bump to version 5.55
        cppzmq: bump to version 4.4.1

  Piotr Tworek (1):
        itstool: Don't use hardcoded, absolute path to python3 binary.

  Qi.Chen@windriver.com (3):
        turbostat: set PACKAGE_ARCH as MACHINE_ARCH
        esmtp: use alternatives to manage /usr/lib/sendmail
        postfix: use alternatives to manage /usr/lib/sendmail

  Radovan Scasny (2):
        dhcpcd: enable udev by default
        dhcpcd: fix building with pkgconfig

  Randy MacLeod (2):
        poppler: update from 0.75.0 to 0.79.0
        rsyslog: update from 8.1903.0 to 8.1907.0

  Ricardo Ribalda Delgado (1):
        fwts: Update to 19.06.00

  Robert Joslyn (1):
        cryptsetup: Don't enable udev for native build

  Roman Stratiienko (1):
        glmark2: Upgrade SRCREV to latest

  Ross Burton (2):
        gtk+: add (from oe-core)
        gnome-themes-standard: add recipe for GTK+ 2 Adwaita

  Ruslan Bilovol (2):
        libnss-nisplus: Add recipe
        kpatch: fix QA build errors for nativesdk

  Saravanan Sekar (1):
        liblightmodbus: Add version 2.0.2

  Scott Ellis (1):
        wireguard: Upgrade 20190406 to 20190702

  Slater, Joseph (3):
        drbd-utils: enable reproducible_build awareness
        php: remove host specific info from header file
        mozjs: do not expose intl api for mips64

  Tim Orling (9):
        libencode-perl: upgrade 2.94 -> 3.01; enable ptest
        libdbi-perl: fix dependencies
        libtest-nowarnings-perl: add recipe for 1.04
        libdbd-sqlite-perl: upgrade 1.54 -> 1.62; enable ptest
        libsub-uplevel-perl: add recipe for 0.36
        libtest-warn-perl: add recipe for 0.36
        libcgi-perl: upgrade 4.43 -> 4.44
        libnet-ldap-perl: upgrade 0.65 -> 0.66; enable ptest
        libunicode-linebreak-perl: upgrade 2017.004 -> 2019.001; enable ptest

  Trevor Gamblin (2):
        metacity; upgrade from 3.30.1 to 3.32.0
        gvfs: upgrade from 1.40.0 to 1.40.2

  Vincent Prince (1):
        mongodb: add mongo shell as a PACKAGECONF option

  William A. Kennington III via Openembedded-devel (5):
        gtest: Googletest project is back under github.com/google/googletest
        googletest: The gtest and gmock projects were combined under googletest in 2015
        libtar: Enable libtar-native build
        fmt: Init at 5.3.0
        cli11: 1.7.1 -> 1.8.0

  Windel Bouwman (3):
        python-humanfriendly: Add recipe for the humanfriendly package.
        Fix python-humanfriendly recipe for python2.
        Add recipe for the coloredlogs python package.

  Yi Zhao (7):
        strongswan: upgrade 5.7.1 -> 5.8.0
        snort: fix compile-host-path QA issue
        cryptsetup: set the default luks format to LUKS1
        libldb: upgrade 1.5.4 -> 1.5.5
        samba: upgrade 4.10.5 -> 4.10.6
        snort: upgrade 2.9.13 -> 2.9.14
        snort: upgrade 2.9.14 -> 2.9.14.1

  Yong, Jonathan (1):
        icewm: add recipe

  Yongxin Liu (3):
        keyutils: move recipe and patches from meta-security to meta-oe
        ndctl: v63 -> v65
        pmdk: update from 1.4.2 to 1.6

  Yuan Chao (9):
        python-pycodestyle: upgrade 2.4.0 -> 2.5.0
        python-lxml: upgrade 4.3.4 -> 4.4.0
        python-configparser: upgrade 3.5.0 -> 3.7.4
        protobuf: upgrade 3.9.0 -> 3.9.1
        python-markupsafe: upgrade 1.0 -> 1.1.1
        hostapd: upgrade 2.8 -> 2.9
        python-configparser: upgrade 3.7.4 -> 3.8.1
        python-lxml: upgrade 4.4.0 -> 4.4.1
        python-pip: upgrade 19.2.1 -> 19.2.2

  Zang Ruochen (47):
        postgresql: upgrade 11.3 -> 11.4
        wireshark: upgrade 3.0.1 -> 3.0.2
        python-pygobject: upgrade 3.32.1 -> 3.32.2
        python-alembic: upgrade 1.0.10 -> 1.0.11
        logwatch: upgrade 7.4.3 -> 7.5.1
        tcsh: upgrade 6.20.00 -> 6.21.00
        python-cython: upgrade 0.29.10 -> 0.29.11
        dialog: upgrade 1.3-20180621 -> 1.3-20190211
        php: upgrade 7.3.6 -> 7.3.7
        sessreg: upgrade 1.1.1 -> 1.1.2
        python-typing: upgrade 3.6.6 -> 3.7.4
        python-mako: upgrade 1.0.12 -> 1.0.13
        python-pbr: upgrade 5.2.1 -> 5.4.0
        python-cython: upgrade 0.29.11 -> 0.29.12
        adcli: added new recipe.
        python-pyflakes: upgrade 1.6.0 -> 2.1.1
        python-protobuf: upgrade 3.8.0 -> 3.9.0
        protobuf: upgrade 3.8.0 -> 3.9.0
        setxkbmap: upgrade 1.3.1 -> 1.3.2
        uftrace: upgrade 0.9.2 -> 0.9.3
        wireshark: upgrade 3.0.2 -> 3.0.3
        python-pbr: upgrade 5.4.0 -> 5.4.1
        dstat: upgrade 0.7.3 -> 0.7.4
        python-mako: upgrade 1.0.13 -> 1.0.14
        xfsprogs: upgrade 5.0.0 -> 5.1.0
        python-beautifulsoup4: upgrade 4.7.1 -> 4.8.0
        xterm: upgrade 347 -> 348
        python-pip: upgrade 19.1.1 -> 19.2.1
        python-paste: upgrade 3.0.8 -> 3.1.0
        syslog-ng: append syslog-ng.service
        dialog: upgrade 1.3-20190211 -> 1.3-20190728
        openldap: upgrade 2.4.47 -> 2.4.48
        python-cython: upgrade 0.29.12 -> 0.29.13
        libsodium: upgrade 1.0.17 -> 1.0.18
        hwdata: upgrade 0.322 -> 0.326
        python-jsonpatch: upgrade 1.23 -> 1.24
        python-pyasn1: upgrade 0.4.5 -> 0.4.6
        python-pyasn1-modules: upgrade 0.2.2 -> 0.2.6
        python-pyparsing: upgrade 2.4.0 -> 2.4.2
        python-pytest-runner: upgrade 4.2 -> 5.1
        python-pytz: upgrade 2019.1 -> 2019.2
        itstool: upgrade 2.0.5 -> 2.0.6
        opensaf: upgrade 5.19.03 -> 5.19.07
        libkcapi: upgrade 1.1.4 -> 1.1.5
        mcelog: upgrade 162 -> 164
        php: upgrade 7.3.7 -> 7.3.8
        kpatch: upgrade 0.61 -> 0.71

  Zheng Ruoqin (3):
        python-mako: upgrade 1.0.14 -> 1.1.0
        python-pbr: upgrade 5.4.1 -> 5.4.2
        dnf-plugin-tui: new recipe

  wouterlucas (1):
        python-jsonref: add recipe

meta-phosphor: fbd01b6e08..fe8cee7488:
  Brad Bishop (1):
        meta-phosphor: sdk: react to upstream gtest rename

meta-xilinx: 64aa3d35ae..f3c8b1c9a8:
  Alejandro Enedino Hernandez Samaniego (7):
        opencl-clhpp: Allow empty packages to be built
        opencl-headers: Allow empty packages to be built
        gcc-8: rebase microblaze patches for gcc 8.2.0
        gcc8: update microblaze patches
        gcc: update microblaze patches
        update gcc-8 patches
        gcc: Remove xilinx.ld requirement

  Jaewon Lee (6):
        zc1254-zynqmp.conf: Add support for zc1254 evaluation board
        zc1275-zynqmp.conf: Add support for zc1275 evaluation board
        zcu102-zynqmp.conf: Changing qemu boot mode
        Adding FPGA_MNGR_RECONFIG_ENABLE to control enabling fpga manager
        gcc: Removing already upstreamed patch
        Rebasing binutils patches from 2.31 to 2.32

  Madhurkiran Harikrishnan (2):
        kernel-module-mali: Fix errors associated with kernel upgrade to 4.19
        xf86-video-armsoc: Remove the recipe for xf86-video-armsoc

  Manjukumar Matha (10):
        libmali-xlnx_git.bb: Fix the package arch for libmali
        zcu111-zynqmp.conf: Add support for ZCU111 evaluation board
        qemu-system-aarch64-multiarch: Enable plm argument in runqemu
        arm-trusted-firmware.inc: Add support to build ATF for versal devices
        linux-xlnx.inc: Add support to build kernel for versal devices
        linux-xlnx.inc: Use KBUILD_DEFCONFIG in externalsrc mode if defined
        kernel-simpleimage.bbclass: Use dts for simpleImage generation for Microblaze
        kernel-simpleimage.bbclass: Deploy simpleImage unstrip file
        kernel-simpleimage.bbclass: Deploy simpleImage strip
        binutils%.bbappend: Update Microblaze binutils patches to v2.31

  Min Ma (4):
        ocl-icd_git.bb: Add recipe for OpenCL ICD loaders
        opencl-clhpp_git.bb: Recipe for OpenCL Host API C++ bindings
        zocl: Recipe for Xilinx runtime driver module
        xrt: Xilinx Runtime User Space Libraries and headers

  Sai Hari Chandana Kalluri (1):
        xilinx-testimage.bbclass: Include IMAGE_AUTOLOGIN and IMAGE_FSTYPES values for runqemu

  Sreeja Vadakattu (1):
        machine-xilinx-default.inc: Make u-boot.elf as UBOOT_ELF for zynq

  Vineeth Chowdary Karumanchi (1):
        tune-zynq.inc: Build zImage in addition to uImage

meta-security: c28b72e91d..ecb526ffab:
  Armin Kuster (34):
        linux-bbappends: simplify
        layers: set warrior only
        security-test-image: add a testing image
        runtime: clamav test cleanup
        packagegroup-core-security: cleanup and remove ptest
        test-image: add packagegroup-core-security-ptest
        test-image: add a few more packages to image
        ima-evm-utils: update to tip
        runtime: tpm2 fix names in packagecheck
        tpm2 images: create tpm2 image and fix packagegroup
        tpm image: split out tpm2
        tpm2-pkcs11/tpm2-pkcs11: update to tip
        tpm2-tcti-uefi: update to tip
        tpm2-tools: update to 3.2.0
        tpm2-tss: update to 2.2.3
        tpm2-totp: update to offical release v0.1.1
        tpm2-tss-engine: update to 1.0.0
        libmspack: update SRC_URI and package
        clamav: minor recipe cleanup
        lynis: update to 2.7.5
        meta-security-compliance: update README
        openscap_git: update to 1.3.0
        openscap: add 1.3.1 recipes for upstream source
        scap-security-guide: update to 0.1.44
        meta-security-compliance: add meta-python
        libldb: remove recipe
        waf-cross-answers: remove files
        samhain: update to 4.3.3
        keyutils: remove from meta-security
        linux-%: remove kernel fragments now in cache
        meta-integrity: remove kernel fragments now in cache
        linux-stable/5.2: add stable bbappend
        linux-yocto: use 4.19 kernel cache now
        linux-yocto-dev: update to use kernel cache

  Dmitry Eremin-Solenikov (11):
        packagegroup-security-tpm2: stop including tpm2-tcti-uefi
        tpm2-tss: fix compilation when using updated AX_CODE_COVERAGE macro
        tpm2-tcti-uefi: add autoconf-archive-native dependency
        tpm2-tcti-uefi: fix configure arguments
        tpm2-tcti-uefi: stop inserting host directories into build path
        tpm2-tcti-uefi: build and install examples
        meta-integrity: rename IMA_EVM_BASE to INTEGRITY_BASE
        ima-evm-utils: bump to release 1.2.1
        kernel-modsign.bbclass: add support for kernel modules signing
        linux: add support for kernel modules signing
        layer.conf: switch to keyutils from meta-oe

  He Zhe (1):
        kernel: Add conditional inclusion of fragments for linux-yocto-dev

  Mark Asselstine (1):
        openscap/scap-security-guide: use _git instead of versioned filenames

  Yi Zhao (5):
        openscap: update recipe
        scap-security-guide: update recipe
        openscap: cleanup DEPENDS
        scap-security-guide: fix typo
        xmlsec1: upgrade 1.2.27 -> 1.2.28

  lumag (3):
        layer.conf: add dependency on meta-security
        ima-evm-utils: bump version
        ima-evm-utils: refresh xattr patch

meta-raspberrypi: 8636b63752..b112816e95:
  Andrei Gherzan (46):
        rpi-base.inc: Include rpi4 dtb
        raspberrypi3.conf: Clarify machine mode
        linux-raspberrypi: Include configuration for RaspberryPi3 defconfig
        linux-raspberrypi: Update 4.19 kernel to 4.19.56
        rpi-base: Rename the rpi0w dtb
        firmware: Update to 20190620
        raspberrypi4.conf: Add initial machine 32 bit configuration
        linux-firmware-rpidistro: Fix WiFi on RaspberryPi 4
        rpi-base.inc: Include the "fake" KMS dtbo
        raspberrypi4: Use vc4-fkms-v3d
        linux-raspberrypi: Bump 4.19 revision to fix RPi 4 arm64 builds
        raspberrypi4-64.conf: Introduce RPi arm64 machine
        firmware: Rename firmware inc file to raspberrypi-firmware.inc
        armstubs: Add support for compiling ARM stubs
        rpi-config: Handle ARMSTUB
        sdcard_image-rpi.bbclass: Include in the SD card image the armstub file
        raspberrypi4-64.conf: Initial machine configuration
        raspberrypi-tools: Update to remove Makefile patch
        linux-raspberrypi: Fix defconfig for RPi4-64
        linux-raspberrypi.inc: Explicitly set defconfig for raspberrypi4-64
        sdcard_image-rpi.bbclass: Fix typo
        linux-raspberrypi: Bump 4.19 revision to have proper coherent_pool set
        raspberrypi4-64.conf: Define a machine feature for armstubs
        sdcard_image-rpi.bbclass: Use armstub machine feature
        linux-raspberrypi: Bump 4.19.57 revision
        raspberrypi4.conf: Define uboot defconfig
        raspberrypi4-64.conf: Uboot configuration and drop armstub
        u-boot: Use a temporary fork for RPi4 support
        raspberrypi-firmware: Update to 20190709
        raspberrypi4.conf: The firmware uses kernel7l.img when LPAE is supported
        linux-raspberrypi: Bump 4.19 to 4.19.58
        linux-raspberrypi: Build dtbs with dtbs make target for all 64bit targets
        linux-raspberrypi: Bump 4.19 revision
        raspberrypi4-64.conf: Remove memory limitation
        u-boot: Replace custom fork by patches
        u-boot: Update patches for RPi4
        rpi-config: Check for armstub based on machine feature
        sdcard_image-rpi: Check for armstub based on machine feature
        armstubs: Error out when ARMSTUBS is not defined
        raspberrypi*: Define ARMSTUB for all machines
        raspberrypi4-64.conf: Limit RAM to 3G
        README.md: Use matrix  chat room
        raspberrypi-firmware.inc: Update to 20190718
        linux-raspberrypi: Update 4.19 recipe to 4.19.66
        mesa: Add v3d and kmsro driver as well
        raspberrypi4-64: Remove the 3G RAM limitation

  Carton (2):
        bluez5: Fixed typo (RC_URI -> SRC_URI)
        rpi-config: Check some config values against "1"

  Francesco Giancane (1):
        linux-raspberrypi: update to 4.14.114

  Khem Raj (8):
        linux-raspberrypi: Upgrade to 4.19.57
        userland: Upgrade to latest
        webkitgtk: Remove -DUSE_GSTREAMER_GL=OFF for vc4graphics
        layer.conf: Add meta-networking to dynamic layers
        drbd: Disable for rpi machines
        packagegroup-rpi-test: Depend on wireless-regdb instead of crda
        xorg-xserver: Adapt bbappend to latest OE-core
        python-rtimu,python-sense-hat: Convert to py3 modules

  Kirill Goncharov (1):
        omxplayer: Bump revision

  Martin Jansa (1):
        sdcard_image-rpi.bbclass: use -v for all mcopy calls and add bbfatal in case mcopy fails

  Riyaz (1):
        rpi-base.inc: Enabling open-source vc4graphics driver for all RPI platforms

Change-Id: I9e37b5952a2e2e30745275fc89e4dd7c47b851e2
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/meta-openembedded/meta-filesystems/recipes-filesystems/fuse-exfat/fuse-exfat_1.2.3.bb b/meta-openembedded/meta-filesystems/recipes-filesystems/fuse-exfat/fuse-exfat_1.3.0.bb
similarity index 65%
rename from meta-openembedded/meta-filesystems/recipes-filesystems/fuse-exfat/fuse-exfat_1.2.3.bb
rename to meta-openembedded/meta-filesystems/recipes-filesystems/fuse-exfat/fuse-exfat_1.3.0.bb
index 18fc9cd..5720430 100644
--- a/meta-openembedded/meta-filesystems/recipes-filesystems/fuse-exfat/fuse-exfat_1.2.3.bb
+++ b/meta-openembedded/meta-filesystems/recipes-filesystems/fuse-exfat/fuse-exfat_1.3.0.bb
@@ -3,18 +3,18 @@
 extended file allocation table as a filesystem in userspace. A mounthelper \
 is provided under the name mount.exfat-fuse. \
 "
-HOMEPAGE = "http://code.google.com/p/exfat/"
+HOMEPAGE = "https://github.com/relan/exfat"
 SECTION = "universe/otherosfs"
 LICENSE = "GPLv2+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-SRC_URI = "${DEBIAN_MIRROR}/main/f/fuse-exfat/fuse-exfat_${PV}.orig.tar.gz \
-"
+SRC_URI = "https://github.com/relan/exfat/releases/download/v${PV}/${BP}.tar.gz"
+
 DEPENDS = "fuse virtual/libc"
 RRECOMMENDS_${PN} = "util-linux-mount"
 
 inherit autotools pkgconfig
 
-SRC_URI[md5sum] = "fca71e6598f79d037a3c7c969cb5710c"
-SRC_URI[sha256sum] = "f2e06eba5a21c621aac1d6da21b12a5a324fdd1e20f9c8acd357dd463c2355d9"
+SRC_URI[md5sum] = "846b8c36bfa4684719f9e08e9d3a6bff"
+SRC_URI[sha256sum] = "07652136064da5e4d32df5555f88c138ffa4835a23b88a5bae2015f21006e0d3"
 
 EXTRA_OECONF += "sbindir=${base_sbindir}"
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/exfat-utils/exfat-utils_1.2.3.bb b/meta-openembedded/meta-filesystems/recipes-utils/exfat-utils/exfat-utils_1.3.0.bb
similarity index 79%
rename from meta-openembedded/meta-filesystems/recipes-utils/exfat-utils/exfat-utils_1.2.3.bb
rename to meta-openembedded/meta-filesystems/recipes-utils/exfat-utils/exfat-utils_1.3.0.bb
index 440f336..1f2bfa6 100644
--- a/meta-openembedded/meta-filesystems/recipes-utils/exfat-utils/exfat-utils_1.2.3.bb
+++ b/meta-openembedded/meta-filesystems/recipes-utils/exfat-utils/exfat-utils_1.3.0.bb
@@ -7,7 +7,7 @@
  - exfatlabel to label a exFAT filesystem \
  - mkexfatfs / mkfs.exfat to create a exFAT filesystem. \
 "
-HOMEPAGE = "http://code.google.com/p/exfat/"
+HOMEPAGE = "https://github.com/relan/exfat"
 SECTION = "universe/otherosfs"
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
@@ -18,5 +18,5 @@
 
 inherit pkgconfig autotools
 
-SRC_URI[md5sum] = "f4e564450aa8159e26dde2869563d242"
-SRC_URI[sha256sum] = "80d3b3f21242d60d36a38a4ddb05cb7cc3a7d4eef5793e8314814937b938fcea"
+SRC_URI[md5sum] = "f8928571b152455e828ca0bd42af8b73"
+SRC_URI[sha256sum] = "dfebd07a7b907e2d603d3a9626e6440bd43ec6c4e8c07ccfc57ce9502b724835"
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/ufs-tool/ufs-tool_git.bb b/meta-openembedded/meta-filesystems/recipes-utils/ufs-tool/ufs-tool_git.bb
new file mode 100644
index 0000000..e074b51
--- /dev/null
+++ b/meta-openembedded/meta-filesystems/recipes-utils/ufs-tool/ufs-tool_git.bb
@@ -0,0 +1,20 @@
+SUMMARY = "Tool to access UFS (Universal Flash Storage) devices"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
+
+PV = "1.3+git${SRCPV}"
+
+BRANCH ?= "dev"
+
+SRCREV = "8b00e33003b57d7071943f63863fcf8cc48d5be9"
+
+SRC_URI = "git://github.com/westerndigitalcorporation/ufs-tool.git;protocol=git;branch=${BRANCH}"
+
+S = "${WORKDIR}/git"
+
+EXTRA_OEMAKE = "CROSS_COMPILE=${TARGET_PREFIX} CC="${CC}""
+
+do_install() {
+	install -d ${D}${bindir}/
+	install -c -m 755 ${S}/ufs-tool ${D}${bindir}/
+}
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_5.0.0.bb b/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_5.1.0.bb
similarity index 94%
rename from meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_5.0.0.bb
rename to meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_5.1.0.bb
index 188c566..0130fd2 100644
--- a/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_5.0.0.bb
+++ b/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_5.1.0.bb
@@ -12,8 +12,8 @@
            file://0001-Check-for-MAP_SYNC-in-sys-mman.h.patch \
            file://0002-include-include-xfs-linux.h-after-sys-mman.h.patch \
            "
-SRC_URI[md5sum] = "b6acc4aa93a952595fc8f2e7447be6f2"
-SRC_URI[sha256sum] = "fcc2e6478aed55408a341567c0459f514e575296d8827d9004cae8aa0367dc4a"
+SRC_URI[md5sum] = "7199b7aaf088d82fc8a1660ffeb63626"
+SRC_URI[sha256sum] = "ca8b4e73dfc5b6227bb6d4e73d019035a1975b83ea41e218cdff15058a9f6c45"
 
 inherit autotools-brokensep
 
diff --git a/meta-openembedded/meta-gnome/README b/meta-openembedded/meta-gnome/README
index 2a682e7..3c5b4c5 100644
--- a/meta-openembedded/meta-gnome/README
+++ b/meta-openembedded/meta-gnome/README
@@ -1,23 +1,3 @@
-meta-gnome
-===========
-
-The recipe in this layer needs to have 'x11' in DISTRO_FEATURES 
-to have effect. To enable them, add in configuration file the following line.
-
-  DISTRO_FEATURES_append = " x11"
-
-If meta-gnome is included, but x11 is not enabled as a
-distro feature a warning is printed at parse time:
-
-    You have included the meta-gnome layer, but
-    'x11' has not been enabled in your DISTRO_FEATURES.
-
-If you know what you are doing, this warning can be disabled by setting the following
-variable in your configuration:
-
-  SKIP_META_GNOME_SANITY_CHECK = 1
-
-
 Dependencies
 ------------
 This layer depends on:
diff --git a/meta-openembedded/meta-gnome/classes/sanity-meta-gnome.bbclass b/meta-openembedded/meta-gnome/classes/sanity-meta-gnome.bbclass
deleted file mode 100644
index 331ea19..0000000
--- a/meta-openembedded/meta-gnome/classes/sanity-meta-gnome.bbclass
+++ /dev/null
@@ -1,10 +0,0 @@
-addhandler gnome_bbappend_distrocheck
-gnome_bbappend_distrocheck[eventmask] = "bb.event.SanityCheck"
-python gnome_bbappend_distrocheck() {
-    skip_check = e.data.getVar('SKIP_META_GNOME_SANITY_CHECK') == "1"
-    if 'x11' not in e.data.getVar('DISTRO_FEATURES').split() and not skip_check:
-        bb.warn("You have included the meta-gnome layer, but \
-'x11' has not been enabled in your DISTRO_FEATURES. Some bbappend files \
-may not take effect. See the meta-gnome README for details on enabling \
-meta-gnome support.")
-}
diff --git a/meta-openembedded/meta-gnome/conf/layer.conf b/meta-openembedded/meta-gnome/conf/layer.conf
index 0b68232..9ed1421 100644
--- a/meta-openembedded/meta-gnome/conf/layer.conf
+++ b/meta-openembedded/meta-gnome/conf/layer.conf
@@ -15,7 +15,3 @@
 LAYERDEPENDS_gnome-layer = "core openembedded-layer networking-layer"
 
 LAYERSERIES_COMPAT_gnome-layer = "thud warrior"
-
-# Sanity check for meta-gnome layer.
-# Setting SKIP_META_GNOME_SANITY_CHECK to "1" would skip the bbappend files check.
-INHERIT += "sanity-meta-gnome"
diff --git a/meta-openembedded/meta-gnome/recipes-connectivity/network-manager-applet/network-manager-applet_1.8.20.bb b/meta-openembedded/meta-gnome/recipes-connectivity/network-manager-applet/network-manager-applet_1.8.22.bb
similarity index 71%
rename from meta-openembedded/meta-gnome/recipes-connectivity/network-manager-applet/network-manager-applet_1.8.20.bb
rename to meta-openembedded/meta-gnome/recipes-connectivity/network-manager-applet/network-manager-applet_1.8.22.bb
index 80aafc8..37f512a 100644
--- a/meta-openembedded/meta-gnome/recipes-connectivity/network-manager-applet/network-manager-applet_1.8.20.bb
+++ b/meta-openembedded/meta-gnome/recipes-connectivity/network-manager-applet/network-manager-applet_1.8.22.bb
@@ -3,17 +3,17 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
 
 DEPENDS = "gtk+3 libnotify libsecret networkmanager \
-           gconf libgnome-keyring iso-codes nss \
+           libgnome-keyring iso-codes nss \
            intltool-native \
 "
 
 GNOMEBASEBUILDCLASS = "autotools-brokensep"
-inherit distro_features_check gnomebase gsettings gtk-icon-cache gobject-introspection
+inherit distro_features_check gnomebase gsettings gtk-icon-cache gobject-introspection gettext
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
-SRC_URI[archive.md5sum] = "06aafa851762146034351aa72ebb23d4"
-SRC_URI[archive.sha256sum] = "050dbb155566c715239dc0378844d8beed10954e64e71014ecef8ca912df34ec"
+SRC_URI[archive.md5sum] = "e0373f4c0d0637716e6e385799a9080f"
+SRC_URI[archive.sha256sum] = "ebef1c1050ff6d94cad060e8d259f2a88ae159cf83ca75cb71d9f76867877eed"
 
 PACKAGECONFIG[modemmanager] = "--with-wwan,--without-wwan,modemmanager"
 PACKAGECONFIG[mobile-provider-info] = "--enable-mobile-broadband-provider-info,--disable-mobile-broadband-provider-info,mobile-broadband-provider-info,mobile-broadband-provider-info"
@@ -23,13 +23,6 @@
     --without-selinux \
 "
 
-do_configure_append() {
-    # Sigh... --enable-compile-warnings=no doesn't actually turn off -Werror
-    for i in $(find ${B} -name "Makefile") ; do
-        sed -i -e s%-Werror[^[:space:]]*%%g $i
-    done
-}
-
 # gobject-introspection related
 GI_DATA_ENABLED_libc-musl = "False"
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/abiword/abiword/0001-Bug-13770-Require-C-11-from-now-on.patch b/meta-openembedded/meta-gnome/recipes-gnome/abiword/abiword/0001-Bug-13770-Require-C-11-from-now-on.patch
deleted file mode 100644
index 3731a23..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/abiword/abiword/0001-Bug-13770-Require-C-11-from-now-on.patch
+++ /dev/null
@@ -1,180 +0,0 @@
-From f6d0dc338fe867c1b064682ae7f15bffe019b306 Mon Sep 17 00:00:00 2001
-From: Hubert Figuiere <hub@figuiere.net>
-Date: Tue, 12 Apr 2016 02:55:47 +0000
-Subject: [PATCH] Bug 13770 - Require C++11 from now on.
-
-git-svn-id: svn+ssh://svn.abisource.com/svnroot/abiword/trunk@35197 bcba8976-2d24-0410-9c9c-aab3bd5fdfd6
-
-Upstream-Status: Backport
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- ax_cxx_compile_stdcxx_11.m4  | 133 +++++++++++++++++++++++++++++++++++
- configure.ac                 |   1 +
- src/wp/ap/gtk/ap_UnixApp.cpp |   2 +-
- 3 files changed, 135 insertions(+), 1 deletion(-)
- create mode 100644 ax_cxx_compile_stdcxx_11.m4
-
-diff --git a/ax_cxx_compile_stdcxx_11.m4 b/ax_cxx_compile_stdcxx_11.m4
-new file mode 100644
-index 0000000..af37acd
---- /dev/null
-+++ b/ax_cxx_compile_stdcxx_11.m4
-@@ -0,0 +1,133 @@
-+# ============================================================================
-+#  http://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx_11.html
-+# ============================================================================
-+#
-+# SYNOPSIS
-+#
-+#   AX_CXX_COMPILE_STDCXX_11([ext|noext],[mandatory|optional])
-+#
-+# DESCRIPTION
-+#
-+#   Check for baseline language coverage in the compiler for the C++11
-+#   standard; if necessary, add switches to CXXFLAGS to enable support.
-+#
-+#   The first argument, if specified, indicates whether you insist on an
-+#   extended mode (e.g. -std=gnu++11) or a strict conformance mode (e.g.
-+#   -std=c++11).  If neither is specified, you get whatever works, with
-+#   preference for an extended mode.
-+#
-+#   The second argument, if specified 'mandatory' or if left unspecified,
-+#   indicates that baseline C++11 support is required and that the macro
-+#   should error out if no mode with that support is found.  If specified
-+#   'optional', then configuration proceeds regardless, after defining
-+#   HAVE_CXX11 if and only if a supporting mode is found.
-+#
-+# LICENSE
-+#
-+#   Copyright (c) 2008 Benjamin Kosnik <bkoz@redhat.com>
-+#   Copyright (c) 2012 Zack Weinberg <zackw@panix.com>
-+#   Copyright (c) 2013 Roy Stogner <roystgnr@ices.utexas.edu>
-+#
-+#   Copying and distribution of this file, with or without modification, are
-+#   permitted in any medium without royalty provided the copyright notice
-+#   and this notice are preserved. This file is offered as-is, without any
-+#   warranty.
-+
-+#serial 3
-+
-+m4_define([_AX_CXX_COMPILE_STDCXX_11_testbody], [
-+  template <typename T>
-+    struct check
-+    {
-+      static_assert(sizeof(int) <= sizeof(T), "not big enough");
-+    };
-+
-+    typedef check<check<bool>> right_angle_brackets;
-+
-+    int a;
-+    decltype(a) b;
-+
-+    typedef check<int> check_type;
-+    check_type c;
-+    check_type&& cr = static_cast<check_type&&>(c);
-+
-+    auto d = a;
-+])
-+
-+AC_DEFUN([AX_CXX_COMPILE_STDCXX_11], [dnl
-+  m4_if([$1], [], [],
-+        [$1], [ext], [],
-+        [$1], [noext], [],
-+        [m4_fatal([invalid argument `$1' to AX_CXX_COMPILE_STDCXX_11])])dnl
-+  m4_if([$2], [], [ax_cxx_compile_cxx11_required=true],
-+        [$2], [mandatory], [ax_cxx_compile_cxx11_required=true],
-+        [$2], [optional], [ax_cxx_compile_cxx11_required=false],
-+        [m4_fatal([invalid second argument `$2' to AX_CXX_COMPILE_STDCXX_11])])dnl
-+  AC_LANG_PUSH([C++])dnl
-+  ac_success=no
-+  AC_CACHE_CHECK(whether $CXX supports C++11 features by default,
-+  ax_cv_cxx_compile_cxx11,
-+  [AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_11_testbody])],
-+    [ax_cv_cxx_compile_cxx11=yes],
-+    [ax_cv_cxx_compile_cxx11=no])])
-+  if test x$ax_cv_cxx_compile_cxx11 = xyes; then
-+    ac_success=yes
-+  fi
-+
-+  m4_if([$1], [noext], [], [dnl
-+  if test x$ac_success = xno; then
-+    for switch in -std=gnu++11 -std=gnu++0x; do
-+      cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx11_$switch])
-+      AC_CACHE_CHECK(whether $CXX supports C++11 features with $switch,
-+                     $cachevar,
-+        [ac_save_CXXFLAGS="$CXXFLAGS"
-+         CXXFLAGS="$CXXFLAGS $switch"
-+         AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_11_testbody])],
-+          [eval $cachevar=yes],
-+          [eval $cachevar=no])
-+         CXXFLAGS="$ac_save_CXXFLAGS"])
-+      if eval test x\$$cachevar = xyes; then
-+        CXXFLAGS="$CXXFLAGS $switch"
-+        ac_success=yes
-+        break
-+      fi
-+    done
-+  fi])
-+
-+  m4_if([$1], [ext], [], [dnl
-+  if test x$ac_success = xno; then
-+    for switch in -std=c++11 -std=c++0x; do
-+      cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx11_$switch])
-+      AC_CACHE_CHECK(whether $CXX supports C++11 features with $switch,
-+                     $cachevar,
-+        [ac_save_CXXFLAGS="$CXXFLAGS"
-+         CXXFLAGS="$CXXFLAGS $switch"
-+         AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_11_testbody])],
-+          [eval $cachevar=yes],
-+          [eval $cachevar=no])
-+         CXXFLAGS="$ac_save_CXXFLAGS"])
-+      if eval test x\$$cachevar = xyes; then
-+        CXXFLAGS="$CXXFLAGS $switch"
-+        ac_success=yes
-+        break
-+      fi
-+    done
-+  fi])
-+  AC_LANG_POP([C++])
-+  if test x$ax_cxx_compile_cxx11_required = xtrue; then
-+    if test x$ac_success = xno; then
-+      AC_MSG_ERROR([*** A compiler with support for C++11 language features is required.])
-+    fi
-+  else
-+    if test x$ac_success = xno; then
-+      HAVE_CXX11=0
-+      AC_MSG_NOTICE([No compiler with C++11 support was found])
-+    else
-+      HAVE_CXX11=1
-+      AC_DEFINE(HAVE_CXX11,1,
-+                [define if the compiler supports basic C++11 syntax])
-+    fi
-+
-+    AC_SUBST(HAVE_CXX11)
-+  fi
-+])
-diff --git a/configure.ac b/configure.ac
-index 48228be..f7be7de 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -131,6 +131,7 @@ win_pkgs="$enchant_req"
- 
- AC_PROG_CC
- AC_PROG_CXX
-+AX_CXX_COMPILE_STDCXX_11(noext,mandatory)
- #AC_PROG_OBJC
- AC_PROG_INSTALL
- # For libtool 1.5.x compatability (AC_PROG_LIBTOOL is deprecated version of LT_INIT)
-diff --git a/src/wp/ap/gtk/ap_UnixApp.cpp b/src/wp/ap/gtk/ap_UnixApp.cpp
-index 061a304..260f8e5 100644
---- a/src/wp/ap/gtk/ap_UnixApp.cpp
-+++ b/src/wp/ap/gtk/ap_UnixApp.cpp
-@@ -863,7 +863,7 @@ static bool is_so (const char *file) {
- 	if (len < (strlen(G_MODULE_SUFFIX) + 2)) // this is ".so" and at least one char for the filename
- 		return false;
- 	const char *suffix = file+(len-3);
--	if(0 == strcmp (suffix, "."G_MODULE_SUFFIX))
-+	if(0 == strcmp (suffix, "." G_MODULE_SUFFIX))
- 		return true;
- 	return false;
- }
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/abiword/abiword/0001-plugins-aiksaurus-Makefile.am-remove-uncomplete-opti.patch b/meta-openembedded/meta-gnome/recipes-gnome/abiword/abiword/0001-plugins-aiksaurus-Makefile.am-remove-uncomplete-opti.patch
deleted file mode 100644
index 0dff141..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/abiword/abiword/0001-plugins-aiksaurus-Makefile.am-remove-uncomplete-opti.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From c646159ce817506131b58fdab1cdc1cd6364df7a Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
-Date: Sun, 7 Feb 2016 21:45:20 +0100
-Subject: [PATCH] plugins/aiksaurus/Makefile.am: remove uncomplete options
- WITH_BUILTIN_AIKSAURUS_GTK
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-* with gtk2 we won't use it
-* it is missing in configure.ac causing
-
-| plugins/aiksaurus/Makefile.am:5: error: WITH_BUILTIN_AIKSAURUS_GTK does not appear in AM_CONDITIONAL
-
-Upstream-Status: Pending
-
-Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
----
- plugins/aiksaurus/Makefile.am | 4 ----
- 1 file changed, 4 deletions(-)
-
-diff --git a/plugins/aiksaurus/Makefile.am b/plugins/aiksaurus/Makefile.am
-index d402c58..1034e2a 100644
---- a/plugins/aiksaurus/Makefile.am
-+++ b/plugins/aiksaurus/Makefile.am
-@@ -2,10 +2,6 @@ SUBDIRS =
- 
- if TOOLKIT_GTK
- 
--if WITH_BUILTIN_AIKSAURUS_GTK
--SUBDIRS += aiksaurusgtk3
--platform_lib = aiksaurusgtk3/libAiksaurusGtk3.la
--endif
- 
- endif
- 
--- 
-2.5.0
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/abiword/abiword_3.0.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/abiword/abiword_3.0.2.bb
deleted file mode 100644
index 36b056f..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/abiword/abiword_3.0.2.bb
+++ /dev/null
@@ -1,142 +0,0 @@
-SUMMARY = "AbiWord is free word processing program similar to Microsoft(r) Word"
-HOMEPAGE = "http://www.abiword.org"
-SECTION = "x11/office"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=ecd3ac329fca77e2d0e412bec38e1c20"
-DEPENDS  = " \
-    perl-native \
-    gtk+ \
-    gtkmathview \
-    wv \
-    fribidi \
-    jpeg \
-    libpng \
-    librsvg \
-    libwmf-native \
-    asio \
-    evolution-data-server \
-    libxslt \
-    ${@bb.utils.contains('BBFILE_COLLECTIONS', 'office-layer', 'redland rasqal', '', d)} \
-"
-RDEPENDS_${PN}_append_libc-glibc = " \
-    glibc-gconv-ibm850 glibc-gconv-cp1252 \
-    glibc-gconv-iso8859-15 glibc-gconv-iso8859-1 \
-"
-RCONFLICTS_${PN} = "${PN}-embedded"
-
-SRC_URI = "http://www.abisource.com/downloads/${BPN}/${PV}/source/${BP}.tar.gz \
-           file://0001-plugins-aiksaurus-Makefile.am-remove-uncomplete-opti.patch \
-           file://0001-Bug-13770-Require-C-11-from-now-on.patch \
-           "
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=c5edcc3ccd864b19004d14e9c1c9a26a"
-
-SRC_URI[md5sum] = "cda6dd58c747c133b421cc7eb18f5796"
-SRC_URI[sha256sum] = "afbfd458fd02989d8b0c6362ba8a4c14686d89666f54cfdb5501bd2090cf3522"
-
-#want 3.x from 3.x.y for the installation directory
-SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}"
-
-inherit distro_features_check autotools-brokensep pkgconfig
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-PACKAGECONFIG ??= " \
-    collab-backend-xmpp collab-backend-tcp \
-    ${@bb.utils.contains('BBFILE_COLLECTIONS', 'office-layer', 'libical', '', d)} \
-"
-PACKAGECONFIG[libical] = "--with-libical,--without-libical,libical raptor2"
-PACKAGECONFIG[spell] = "--enable-spell,--disable-spell,enchant"
-PACKAGECONFIG[collab-backend-xmpp] = "--enable-collab-backend-xmpp,--disable-collab-backend-xmpp,libgsf libxml2 loudmouth"
-PACKAGECONFIG[collab-backend-tcp] = "--enable-collab-backend-tcp,--disable-collab-backend-tcp,libgsf libxml2"
-PACKAGECONFIG[collab-backend-service] = "--enable-collab-backend-service,--disable-collab-backend-service,libgsf libxml2 libsoup-2.4 gnutls"
-PACKAGECONFIG[collab-backend-telepathy] = "--enable-collab-backend-telepathy,--disable-collab-backend-telepathy,libgsf libxml2 telepathy-glib telepathy-mission-control"
-PACKAGECONFIG[collab-backend-sugar] = "--enable-collab-backend-sugar,--disable-collab-backend-sugar,libgsf libxml2 dbus-glib"
-
-EXTRA_OECONF = " --disable-static  \
-                 --enable-plugins \
-                 --enable-clipart \
-                 --enable-templates \
-                 --without-gnomevfs \
-                 --with-gtk2 \
-                 --with-libwmf-config=${STAGING_DIR} \
-"
-
-LDFLAGS += "-lgmodule-2.0"
-
-do_compile() {
-    cd goffice-bits2
-    make goffice-paths.h
-    make libgoffice.la
-    cd ${B}
-    oe_runmake
-}
-
-PACKAGES += " ${PN}-clipart ${PN}-strings ${PN}-systemprofiles ${PN}-templates "
-
-FILES_${PN} += " \
-                ${libdir}/lib${PN}-*.so \
-                ${datadir}/mime-info \
-                ${datadir}/icons/* \
-                ${datadir}/${PN}-${SHRT_VER}/glade \
-                ${datadir}/${PN}-${SHRT_VER}/scripts \
-                ${datadir}/${PN}-${SHRT_VER}/system.profile-en \
-                ${datadir}/${PN}-${SHRT_VER}/system.profile-en_GB \
-                ${datadir}/${PN}-${SHRT_VER}/templates/normal.awt \
-                ${datadir}/${PN}-${SHRT_VER}/templates/normal.awt-en_GB \
-                ${datadir}/${PN}-${SHRT_VER}/templates/Employee-Directory.awt \
-                ${datadir}/${PN}-${SHRT_VER}/templates/Business-Report.awt \
-                ${datadir}/${PN}-${SHRT_VER}/templates/Fax-Coversheet.awt \
-                ${datadir}/${PN}-${SHRT_VER}/templates/Resume.awt \
-                ${datadir}/${PN}-${SHRT_VER}/templates/Two-Columns.awt \
-                ${datadir}/${PN}-${SHRT_VER}/templates/Memo.awt \
-                ${datadir}/${PN}-${SHRT_VER}/templates/Press-Release.awt \
-                ${datadir}/${PN}-${SHRT_VER}/certs \
-                ${datadir}/${PN}-${SHRT_VER}/ui \
-                ${datadir}/${PN}-${SHRT_VER}/xsl* \
-                ${datadir}/${PN}-${SHRT_VER}/mime-info \
-                ${datadir}/${PN}-${SHRT_VER}/Pr*.xml \
-"
-
-# don't steal /usr/lib/libabiword-3.0.so from ${PN}
-# in this case it's needed in ${PN}
-FILES_${PN}-dev = " \
-                  ${includedir} \
-                  ${libdir}/pkgconfig \
-                  ${libdir}/${PN}*.la \
-                  ${libdir}/lib${PN}*.la \
-                  ${libdir}/${PN}-${SHRT_VER}/plugins/*.la \
-"
-FILES_${PN}-dbg += "${libdir}/${PN}-${SHRT_VER}/plugins/.debug"
-FILES_${PN}-doc += "${datadir}/${PN}-*/readme*"
-
-FILES_${PN}-strings        += "${datadir}/${PN}-${SHRT_VER}/strings"
-FILES_${PN}-systemprofiles += "${datadir}/${PN}-${SHRT_VER}/system.profile*"
-FILES_${PN}-clipart        += "${datadir}/${PN}-${SHRT_VER}/clipart"
-FILES_${PN}-strings        += "${datadir}/${PN}-${SHRT_VER}/AbiWord/strings"
-FILES_${PN}-systemprofiles += "${datadir}/${PN}-${SHRT_VER}/AbiWord/system.profile*"
-FILES_${PN}-templates      += "${datadir}/${PN}-${SHRT_VER}/templates"
-
-PACKAGES_DYNAMIC += "^${PN}-meta.* ^${PN}-plugin-.*"
-
-python populate_packages_prepend () {
-    abiword_libdir    = d.expand('${libdir}/${PN}-${SHRT_VER}/plugins')
-    do_split_packages(d, abiword_libdir, '(.*)\.so$', 'abiword-plugin-%s', 'Abiword plugin for %s', extra_depends='')
-
-    metapkg = "abiword-meta"
-    d.setVar('ALLOW_EMPTY_' + metapkg, "1")
-    d.setVar('FILES_' + metapkg, "")
-    blacklist = [ 'abiword-plugins-dbg', 'abiword-plugins', 'abiword-plugins-doc', 'abiword-plugins-dev', 'abiword-plugins-locale' ]
-    metapkg_rdepends = []
-    packages = d.getVar('PACKAGES').split()
-    for pkg in packages[1:]:
-        if not pkg in blacklist and not pkg in metapkg_rdepends and not pkg.count("-dev") and not pkg.count("-dbg") and not pkg.count("static") and not pkg.count("locale") and not pkg.count("abiword-doc"):
-            print("Modifying %s" % pkg)
-            metapkg_rdepends.append(pkg)
-    d.setVar('RDEPENDS_' + metapkg, ' '.join(metapkg_rdepends))
-    d.setVar('DESCRIPTION_' + metapkg, 'abiword-plugin meta package')
-    packages.append(metapkg)
-    d.setVar('PACKAGES', ' '.join(packages))
-}
-
-FILES_${PN}-plugin-openxml += "${datadir}/${PN}-${SHRT_VER}/omml_xslt"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_3.28.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_3.28.2.bb
index d288590..f45180e 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_3.28.2.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_3.28.2.bb
@@ -4,7 +4,7 @@
 SECTION = "x11/office"
 DEPENDS = "gtk+3 libsecret ${@bb.utils.contains('DISTRO_FEATURES','x11','gnome-desktop3','',d)} poppler gstreamer1.0-plugins-base orc adwaita-icon-theme intltool-native gnome-common-native"
 
-inherit gnome pkgconfig gtk-icon-cache gsettings gobject-introspection distro_features_check systemd
+inherit gnomebase pkgconfig gtk-icon-cache gsettings gobject-introspection distro_features_check systemd
 
 SRC_URI = " \
     ${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive \
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gedit/gedit_2.30.4.bb b/meta-openembedded/meta-gnome/recipes-gnome/gedit/gedit_2.30.4.bb
index ea6439d..6e07208 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gedit/gedit_2.30.4.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gedit/gedit_2.30.4.bb
@@ -3,13 +3,13 @@
 LICENSE = "GPLv2+"
 PR = "r2"
 
-DEPENDS = "gvfs enchant gconf gnome-doc-utils glib-2.0 gtk+ \
+DEPENDS = "gvfs enchant gconf gnome-doc-utils glib-2.0 glib-2.0-native gtk+ \
            gtksourceview2 iso-codes intltool-native gnome-common-native \
            libice python3-six-native"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
 
-inherit distro_features_check gnome gettext python3native
+inherit distro_features_check gnomebase gconf gettext python3native
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth_3.18.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth_3.18.2.bb
index 8cfd65a..d0eebda 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth_3.18.2.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-bluetooth/gnome-bluetooth_3.18.2.bb
@@ -7,7 +7,7 @@
 SECTION = "x11/gnome"
 
 DEPENDS = "udev gtk+3 libnotify libcanberra intltool-native gnome-common-native \
-    ${@bb.utils.contains('DISTRO_FEATURES','bluez5','bluez5','bluez4',d)} \
+    bluez5 \
 "
 
 inherit gnomebase gtk-icon-cache gobject-introspection distro_features_check
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop3_3.32.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop3_3.32.0.bb
index 0acbb21..85ee5e6 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop3_3.32.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop3_3.32.0.bb
@@ -8,7 +8,7 @@
 
 GNOMEBASEBUILDCLASS = "meson"
 
-inherit gnome pkgconfig upstream-version-is-even gobject-introspection distro_features_check
+inherit gnomebase pkgconfig upstream-version-is-even gobject-introspection distro_features_check
 
 # gobject-introspection is mandatory and cannot be configured
 REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
@@ -25,7 +25,7 @@
 DEPENDS += "itstool-native gsettings-desktop-schemas virtual/libx11 gtk+3 startup-notification xkeyboard-config iso-codes udev"
 
 inherit distro_features_check gtk-doc
-REQUIRED_DISTRO_FEATURES = "x11"
+REQUIRED_DISTRO_FEATURES += "x11"
 
 GTKDOC_MESON_OPTION = "gtk_doc"
 EXTRA_OEMESON = "-Ddesktop_docs=false"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_3.32.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_3.32.0.bb
index c2432a3..8930e12 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_3.32.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_3.32.0.bb
@@ -10,13 +10,14 @@
     gtkmm3 \
     libgtop \
     librsvg \
+    polkit \
 "
 
 GNOMEBASEBUILDCLASS = "meson"
 
-inherit gnomebase gtk-icon-cache distro_features_check gettext
+inherit gnomebase gconf gtk-icon-cache distro_features_check gettext
 
-REQUIRED_DISTRO_FEATURES = "x11"
+REQUIRED_DISTRO_FEATURES = "x11 polkit"
 
 SRC_URI[archive.md5sum] = "6c2c5c5bf8f15d3e6985faacbd3055dd"
 SRC_URI[archive.sha256sum] = "af00c4a42dd1db17d9abe88edb11c7751b20982db1a8a2a467bab206fd8a77e3"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gvfs/gvfs_1.40.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gvfs/gvfs_1.40.2.bb
similarity index 69%
rename from meta-openembedded/meta-gnome/recipes-gnome/gvfs/gvfs_1.40.0.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gvfs/gvfs_1.40.2.bb
index 7caee27..4fca107 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gvfs/gvfs_1.40.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gvfs/gvfs_1.40.2.bb
@@ -3,14 +3,14 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=05df38dd77c35ec8431f212410a3329e"
 
 GNOMEBASEBUILDCLASS = "meson"
-inherit gnome bash-completion gettext upstream-version-is-even
+inherit gnomebase bash-completion gettext upstream-version-is-even
 
-DEPENDS += "libsecret glib-2.0 gconf libgudev udisks2 polkit shadow-native"
+DEPENDS += "libsecret glib-2.0 glib-2.0-native gconf libgudev shadow-native"
 
 SRC_URI = "https://download.gnome.org/sources/${BPN}/${@gnome_verdir("${PV}")}/${BPN}-${PV}.tar.xz;name=archive"
 
-SRC_URI[archive.md5sum] = "96ef53ed613e4d223e0db3a7acea44f0"
-SRC_URI[archive.sha256sum] = "3739d64b79c95a9f0f9faf2c5f9e5298b4b2ebdd6431435ce656ecd19b31e2f2"
+SRC_URI[archive.md5sum] = "47db9bec616e089513b7f1386e5c7d5f"
+SRC_URI[archive.sha256sum] = "bdefe8fec6a1097f0c126fa2a4533667c98a86e237ac640518000e16b363971e"
 
 
 EXTRA_OEMESON = " \
@@ -18,7 +18,6 @@
     -Dgoa=false \
     -Dgoogle=false \
     -Dnfs=false \
-    -Dudisks2=true \
 "
 
 PACKAGES =+ "gvfsd-ftp gvfsd-sftp gvfsd-trash"
@@ -31,7 +30,6 @@
     ${libdir}/tmpfiles.d \
     ${systemd_user_unitdir} \
 "
-RDEPENDS_${PN} = "udisks2"
 
 FILES_${PN}-dbg += "${libdir}/gio/modules/.debug/*"
 FILES_${PN}-dev += "${libdir}/gio/modules/*.la"
@@ -42,8 +40,14 @@
 
 RRECOMMENDS_gvfsd-ftp += "openssh-sftp openssh-ssh"
 
-PACKAGECONFIG ?= "libgphoto2 ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
+PACKAGECONFIG ?= "libgphoto2 \
+                  ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
+                  ${@bb.utils.contains('DISTRO_FEATURES','polkit','udisks2','',d)} \
+                  ${@bb.utils.contains('DISTRO_FEATURES','polkit','admin','',d)} \
+                 "
 
+PACKAGECONFIG[udisks2] = "-Dudisks2=true, -Dudisks2=false, udisks2, udisks2"
+PACKAGECONFIG[admin] = "-Dadmin=true, -Dadmin=false, libcap polkit"
 PACKAGECONFIG[afc] = "-Dafc=true, -Dafc=false, libimobiledevice libplist"
 PACKAGECONFIG[archive] = "-Darchive=true, -Darchive=false, libarchive"
 PACKAGECONFIG[dnssd] = "-Ddnssd=true, -Ddnssd=false, avahi"
@@ -62,9 +66,11 @@
 PACKAGECONFIG[cdda] = "-Dcdda=true, -Dcdda=false, libcdio-paranoia"
 
 do_install_append() {
-    # Fix up permissions on polkit rules.d to work with rpm4 constraints
-    chmod 700 ${D}/${datadir}/polkit-1/rules.d
-    chown polkitd:root ${D}/${datadir}/polkit-1/rules.d
+    if ${@bb.utils.contains('DISTRO_FEATURES', 'polkit', 'true', 'false', d)}; then
+        # Fix up permissions on polkit rules.d to work with rpm4 constraints
+        chmod 700 ${D}/${datadir}/polkit-1/rules.d
+        chown polkitd:root ${D}/${datadir}/polkit-1/rules.d
+    fi
 
     # After rebuilds (not from scracth) it can happen that the executables in
     # libexec ar missing executable permission flag. Not sure but it came up
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/libgnome/libgnomekbd_3.26.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/libgnome/libgnomekbd_3.26.1.bb
index 3a7379f..d9f6431 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/libgnome/libgnomekbd_3.26.1.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/libgnome/libgnomekbd_3.26.1.bb
@@ -6,12 +6,10 @@
 
 DEPENDS = "gconf glib-2.0 libxklavier gtk+3 intltool-native"
 
-inherit distro_features_check gnome gobject-introspection gettext
+inherit distro_features_check gnomebase gobject-introspection gettext
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
-GNOME_COMPRESS_TYPE = "xz"
-
 SRC_URI[archive.md5sum] = "98040022484406e7ebe25f82cef93344"
 SRC_URI[archive.sha256sum] = "f7ca02631576e9b88aee1b1bae37ac1488b80ee7975f20a97f29e761a7172679"
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/libgsf/libgsf_1.14.45.bb b/meta-openembedded/meta-gnome/recipes-gnome/libgsf/libgsf_1.14.45.bb
index e63e26e..ac36ceb 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/libgsf/libgsf_1.14.45.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/libgsf/libgsf_1.14.45.bb
@@ -7,15 +7,13 @@
 
 DEPENDS= "libxml2 bzip2 glib-2.0 zlib intltool-native gnome-common-native"
 
-inherit autotools pkgconfig gnome gconf gobject-introspection
+inherit autotools pkgconfig gnomebase gobject-introspection
 
 SRC_URI += "file://0001-configure.ac-drop-a-copy-paste-of-introspection.m4-m.patch"
 
 SRC_URI[archive.md5sum] = "e45cc8aa9c49516d540b7d7307f755f1"
 SRC_URI[archive.sha256sum] = "5cbc2c0f1dc44d202fa0c6e3a51e9f17b0c2deb8711ba650432bfde3180b69fa"
 
-GNOME_COMPRESS_TYPE = "xz"
-
 PACKAGECONFIG ??= ""
 PACKAGECONFIG[gdk-pixbuf] = "--with-gdk-pixbuf,--without-gdk-pixbuf,gdk-pixbuf"
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/libwnck/libwnck_2.31.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/libwnck/libwnck_2.31.0.bb
index ea4c8df..f50b9ce 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/libwnck/libwnck_2.31.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/libwnck/libwnck_2.31.0.bb
@@ -11,7 +11,6 @@
 inherit gnomebase gobject-introspection distro_features_check
 REQUIRED_DISTRO_FEATURES = "x11"
 
-GNOME_COMPRESS_TYPE = "xz"
 SRC_URI[archive.md5sum] = "f03e1139296e2a3a92e3b65a3080cd32"
 SRC_URI[archive.sha256sum] = "83f732d20781fc88b22cdc6aaf2d4f388db6d3d4ff28d1a8fd45be9fb7743a9e"
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/metacity/metacity_3.30.1.bb b/meta-openembedded/meta-gnome/recipes-gnome/metacity/metacity_3.32.0.bb
similarity index 95%
rename from meta-openembedded/meta-gnome/recipes-gnome/metacity/metacity_3.30.1.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/metacity/metacity_3.32.0.bb
index 253f7ef..ef6ea79 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/metacity/metacity_3.30.1.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/metacity/metacity_3.32.0.bb
@@ -19,7 +19,7 @@
 "
 
 S = "${WORKDIR}/git"
-SRCREV = "d69fba052cdd0aa8348dc1bbbbb1ecbadfbebbd8"
+SRCREV = "bf1bfbadf47eff97703df17e95b15168e2034222"
 
 EXTRA_OECONF += "--disable-xinerama"
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/wv/wv/0001-configure-use-foreign-mode-to-avoid-errors-with-miss.patch b/meta-openembedded/meta-gnome/recipes-gnome/wv/wv/0001-configure-use-foreign-mode-to-avoid-errors-with-miss.patch
deleted file mode 100644
index a8c5bc7..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/wv/wv/0001-configure-use-foreign-mode-to-avoid-errors-with-miss.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From eebe1f27f4b27b05eb4b9b55f9df1124acf4d092 Mon Sep 17 00:00:00 2001
-From: Koen Kooi <koen@dominion.thruhere.net>
-Date: Fri, 1 Aug 2014 12:25:24 +0200
-Subject: [PATCH] configure: use 'foreign' mode to avoid errors with missing
- NEWS/AUTHORS/etc
-
-Upstream-status: Pending
-
-Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 3d7eef6..1784bdd 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -41,7 +41,7 @@ VERSION=$WV_VERSION
- PACKAGE=wv
- 
- dnl Initialize automake stuff
--AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
-+AM_INIT_AUTOMAKE([foreign])
- 
- # Specify a configuration file
- AM_CONFIG_HEADER(config.h)
--- 
-1.9.0
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/wv/wv/0001-wvRTF.c-Specify-print-format-in-rtf_output.patch b/meta-openembedded/meta-gnome/recipes-gnome/wv/wv/0001-wvRTF.c-Specify-print-format-in-rtf_output.patch
deleted file mode 100644
index 2fc3f36..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/wv/wv/0001-wvRTF.c-Specify-print-format-in-rtf_output.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 079529b8d5e339e2211fa2f8c15543a738a627bc Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 27 Jun 2017 14:50:51 -0700
-Subject: [PATCH] wvRTF.c: Specify print format in rtf_output()
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- wvRTF.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/wvRTF.c b/wvRTF.c
-index 361d258..4f24b30 100644
---- a/wvRTF.c
-+++ b/wvRTF.c
-@@ -192,7 +192,7 @@ output_rtfUserData (rtfUserData * ud)
-     rtf_output_char ('{');
- 
-     /* font color */
--    rtf_output (rtfColors[ud->cCol]);
-+    rtf_output ("%s", rtfColors[ud->cCol]);
- 
-     /* font face */
-     rtf_output ("\\f%d", ud->cFont);
--- 
-2.13.2
-
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/wv/wv_1.2.9.bb b/meta-openembedded/meta-gnome/recipes-gnome/wv/wv_1.2.9.bb
deleted file mode 100644
index 72b8508..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/wv/wv_1.2.9.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-SUMMARY = "Programs for accessing Microsoft Word documents"
-HOMEPAGE = "http://wvware.sourceforge.net/"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=6cbca01f1c9178aca280e8ff64d85b2f"
-
-DEPENDS = "libgsf glib-2.0 libpng"
-
-SRC_URI = "https://www.abisource.com/downloads/wv/${PV}/${BP}.tar.gz \
-           file://0001-configure-use-foreign-mode-to-avoid-errors-with-miss.patch \
-           file://0001-wvRTF.c-Specify-print-format-in-rtf_output.patch \
-           "
-
-SRC_URI[md5sum] = "dbccf2e9f747e50c913b7e3d126b73f7"
-SRC_URI[sha256sum] = "4c730d3b325c0785450dd3a043eeb53e1518598c4f41f155558385dd2635c19d"
-
-inherit autotools pkgconfig
-
-EXTRA_OECONF = ""
diff --git a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/klcc-cross-accept-clang-options.patch b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/klcc-cross-accept-clang-options.patch
index 07703aa..3b7031e 100644
--- a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/klcc-cross-accept-clang-options.patch
+++ b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/klcc-cross-accept-clang-options.patch
@@ -3,17 +3,18 @@
 Upstream-Status: Pending
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
 
-Index: git/klcc/klcc.in
-===================================================================
---- git.orig/klcc/klcc.in
-+++ git/klcc/klcc.in
-@@ -207,6 +207,9 @@ while ( defined($a = shift(@ARGV)) ) {
+--- a/klcc/klcc.in
++++ b/klcc/klcc.in
+@@ -207,6 +207,12 @@ while ( defined($a = shift(@ARGV)) ) {
      } elsif ( $a =~ /^--([sysroot=])(.*)$/ ) {
  	# Override gcc encoded sysroot
  	push(@ccopt, $a);
 +    } elsif ( $a eq '-no-integrated-as' ) {
 +	# Allow clang options
 +	push(@ccopt, $a);
++    } elsif ( $a =~ '--unwindlib=.*' ) {
++	# Allow clang options
++	push(@ccopt, $a);
      } else {
  	die "$0: unknown option: $a\n";
      }
diff --git a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/klibc.inc b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/klibc.inc
index 5805448..7faf0ca 100644
--- a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/klibc.inc
+++ b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/klibc.inc
@@ -33,6 +33,9 @@
 
 S = "${WORKDIR}/git"
 
+OPTFLAGS = "${TUNE_CCARGS} -Os"
+OPTFLAGS_append_libc-musl_toolchain-clang = " -fno-builtin-bcmp"
+
 PARALLEL_MAKE = ""
 EXTRA_OEMAKE = "'KLIBCARCH=${KLIBC_ARCH}' \
                 'CROSS_COMPILE=${TARGET_PREFIX}' \
@@ -43,7 +46,7 @@
                 'INSTALLDIR=${libdir}/klibc' \
                 'SHLIBDIR=${libdir}' \
                 '${KLIBCTHUMB}' \
-                'KLIBCOPTFLAGS=${TUNE_CCARGS} -Os' \
+                'KLIBCOPTFLAGS=${OPTFLAGS}' \
                  V=1 \
                 "
 
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0001-force-static-build.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0001-force-static-build.patch
index 4744e7a..34826ba 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0001-force-static-build.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0001-force-static-build.patch
@@ -1,4 +1,4 @@
-From d6af515cfcc8185f423860f80ff28719975b701f Mon Sep 17 00:00:00 2001
+From 2a62d7623e3d4c0eaa44434ab678274fe3a9edb1 Mon Sep 17 00:00:00 2001
 From: OpenEmbedded <oe.patch@oe>
 Date: Wed, 11 Apr 2018 22:51:00 +0200
 Subject: [PATCH] force static build
@@ -11,7 +11,7 @@
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/Makefile.in b/Makefile.in
-index 54c206f..79188d8 100644
+index fb01134..dbf1fb6 100644
 --- a/Makefile.in
 +++ b/Makefile.in
 @@ -47,7 +47,7 @@ TARGET_CFLAGS	= @TARGET_CFLAGS@
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0002-Adjust-the-order-of-headers-to-fix-build-for-musl.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0002-Adjust-the-order-of-headers-to-fix-build-for-musl.patch
index 1d96a2b..ec456f3 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0002-Adjust-the-order-of-headers-to-fix-build-for-musl.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0002-Adjust-the-order-of-headers-to-fix-build-for-musl.patch
@@ -1,4 +1,4 @@
-From 0976d2d5be1ed44c2324b609c7d16c1e93181c4b Mon Sep 17 00:00:00 2001
+From 6843cefb1d1d0017a714a2752bb008efd844f3e4 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Thu, 13 Jul 2017 16:20:08 -0700
 Subject: [PATCH] Adjust the order of headers to fix build for musl
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0003-kexec-elf-rel-use-our-elf.h.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0003-kexec-elf-rel-use-our-elf.h.patch
index ae9e7bb..32035ca 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0003-kexec-elf-rel-use-our-elf.h.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0003-kexec-elf-rel-use-our-elf.h.patch
@@ -1,4 +1,4 @@
-From 7f91875d65778154709e4fa0ccb23f3b2a98b0dc Mon Sep 17 00:00:00 2001
+From 7e202ea55e8dd803278d9d1eac7ffd355344d6be Mon Sep 17 00:00:00 2001
 From: OpenEmbedded <oe.patch@oe>
 Date: Wed, 11 Apr 2018 22:51:00 +0200
 Subject: [PATCH] kexec-elf-rel: use our elf.h
@@ -56,7 +56,7 @@
  #include "../../kexec-elf.h"
  
 diff --git a/kexec/arch/ppc64/kexec-elf-rel-ppc64.c b/kexec/arch/ppc64/kexec-elf-rel-ppc64.c
-index 5f8e3f2..765bf6e 100644
+index 51b1354..c85f421 100644
 --- a/kexec/arch/ppc64/kexec-elf-rel-ppc64.c
 +++ b/kexec/arch/ppc64/kexec-elf-rel-ppc64.c
 @@ -1,5 +1,5 @@
@@ -67,7 +67,7 @@
  #include "../../kexec.h"
  #include "../../kexec-elf.h"
 diff --git a/kexec/arch/x86_64/kexec-elf-rel-x86_64.c b/kexec/arch/x86_64/kexec-elf-rel-x86_64.c
-index 7fdde73..cd5d729 100644
+index db85b44..761a4ed 100644
 --- a/kexec/arch/x86_64/kexec-elf-rel-x86_64.c
 +++ b/kexec/arch/x86_64/kexec-elf-rel-x86_64.c
 @@ -1,5 +1,5 @@
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0004-kexec-elf-exec.c-replace-with-our-err.h.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0004-kexec-elf-exec.c-replace-with-our-err.h.patch
index 1080e8b..27a1cc7 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0004-kexec-elf-exec.c-replace-with-our-err.h.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0004-kexec-elf-exec.c-replace-with-our-err.h.patch
@@ -1,4 +1,4 @@
-From 8b9da93ac9a4ea79ae953f80f6fe6e4f080341f2 Mon Sep 17 00:00:00 2001
+From 720e24029fca7dcd8e1cd0b556f37aa1dc2b8fe8 Mon Sep 17 00:00:00 2001
 From: Andrea Adami <andrea.adami@gmail.com>
 Date: Tue, 17 Apr 2018 10:57:23 +0200
 Subject: [PATCH] kexec-elf-exec.c: replace with our elf.h
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0005-crashdump-elf.c-work-around-for-sysconf-_SC_NPROCESS.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0005-crashdump-elf.c-work-around-for-sysconf-_SC_NPROCESS.patch
index 4f7506d..4604c2a 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0005-crashdump-elf.c-work-around-for-sysconf-_SC_NPROCESS.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0005-crashdump-elf.c-work-around-for-sysconf-_SC_NPROCESS.patch
@@ -1,4 +1,4 @@
-From 1cfee75d9662c3382bb7cb8f1c952333837598ae Mon Sep 17 00:00:00 2001
+From 43fb9cec1749b337bfa252fc2c1b0288847e8fa7 Mon Sep 17 00:00:00 2001
 From: Andrea Adami <andrea.adami@gmail.com>
 Date: Wed, 18 Apr 2018 02:21:30 +0200
 Subject: [PATCH] crashdump-elf.c: work around for _SC_NPROCESSORS_CONF
@@ -18,7 +18,7 @@
 Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
 
 ---
- kexec/crashdump-elf.c | 92 +++++++++++++++++++++++++++++++++++++++++++++++++++
+ kexec/crashdump-elf.c | 92 +++++++++++++++++++++++++++++++++++++++++++
  1 file changed, 92 insertions(+)
 
 diff --git a/kexec/crashdump-elf.c b/kexec/crashdump-elf.c
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0006-kexec-syscall.h-work-around-missing-syscall-wrapper.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0006-kexec-syscall.h-work-around-missing-syscall-wrapper.patch
index 3020f76..a607ce7 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0006-kexec-syscall.h-work-around-missing-syscall-wrapper.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0006-kexec-syscall.h-work-around-missing-syscall-wrapper.patch
@@ -1,4 +1,4 @@
-From 45a80fe7d247898d83edfeabe32b9de80a50a6be Mon Sep 17 00:00:00 2001
+From ab24f236cbc0aa8a3eadde5d71d9d7ea1d979a51 Mon Sep 17 00:00:00 2001
 From: Andrea Adami <andrea.adami@gmail.com>
 Date: Fri, 31 Aug 2018 11:33:51 +0200
 Subject: [PATCH] kexec-syscall.h: work around missing syscall() wrapper
@@ -16,10 +16,10 @@
  1 file changed, 21 insertions(+)
 
 diff --git a/kexec/kexec-syscall.h b/kexec/kexec-syscall.h
-index 33638c2..204007d 100644
+index b96e02a..2a3794d 100644
 --- a/kexec/kexec-syscall.h
 +++ b/kexec/kexec-syscall.h
-@@ -74,11 +74,16 @@
+@@ -77,11 +77,16 @@
  
  struct kexec_segment;
  
@@ -36,7 +36,7 @@
  
  static inline int is_kexec_file_load_implemented(void) {
  	if (__NR_kexec_file_load != 0xffffffff)
-@@ -86,6 +91,21 @@ static inline int is_kexec_file_load_implemented(void) {
+@@ -89,6 +94,21 @@ static inline int is_kexec_file_load_implemented(void) {
  	return 0;
  }
  
@@ -58,7 +58,7 @@
  static inline long kexec_file_load(int kernel_fd, int initrd_fd,
  			unsigned long cmdline_len, const char *cmdline_ptr,
  			unsigned long flags)
-@@ -93,6 +113,7 @@ static inline long kexec_file_load(int kernel_fd, int initrd_fd,
+@@ -96,6 +116,7 @@ static inline long kexec_file_load(int kernel_fd, int initrd_fd,
  	return (long) syscall(__NR_kexec_file_load, kernel_fd, initrd_fd,
  				cmdline_len, cmdline_ptr, flags);
  }
@@ -66,6 +66,3 @@
  
  #define KEXEC_ON_CRASH		0x00000001
  #define KEXEC_PRESERVE_CONTEXT	0x00000002
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0007-kexec.c-add-guard-around-ENOTSUP.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0007-kexec.c-add-guard-around-ENOTSUP.patch
index 3d44683..0ae9001 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0007-kexec.c-add-guard-around-ENOTSUP.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0007-kexec.c-add-guard-around-ENOTSUP.patch
@@ -1,4 +1,4 @@
-From e6bd7a1bcfbd3e54efc81fbd7d60d915f9af0632 Mon Sep 17 00:00:00 2001
+From 17e9da8d3c3c69f84e11c0457bd9fb8c4ee4274b Mon Sep 17 00:00:00 2001
 From: Andrea Adami <andrea.adami@gmail.com>
 Date: Tue, 17 Apr 2018 11:35:14 +0200
 Subject: [PATCH] kexec.c: add guard around ENOTSUP
@@ -16,10 +16,10 @@
  1 file changed, 2 insertions(+)
 
 diff --git a/kexec/kexec.c b/kexec/kexec.c
-index 313d9fe..b5a8a1e 100644
+index 32ae56c..0764e85 100644
 --- a/kexec/kexec.c
 +++ b/kexec/kexec.c
-@@ -1501,6 +1501,7 @@ int main(int argc, char *argv[])
+@@ -1517,6 +1517,7 @@ int main(int argc, char *argv[])
  					 */
  				case -EINVAL:
  				case -ENOEXEC:
@@ -27,7 +27,7 @@
  					 /*
  					  * ENOTSUP can be unsupported image
  					  * type or unsupported PE signature
-@@ -1513,6 +1514,7 @@ int main(int argc, char *argv[])
+@@ -1529,6 +1530,7 @@ int main(int argc, char *argv[])
  					  * kernel bug
  					  */
  				case -ENOTSUP:
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0008-kexec.c-replace-mising-BLKGETSIZE64.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0008-kexec.c-replace-mising-BLKGETSIZE64.patch
index cfc51cf..0ab7a1d 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0008-kexec.c-replace-mising-BLKGETSIZE64.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0008-kexec.c-replace-mising-BLKGETSIZE64.patch
@@ -1,4 +1,4 @@
-From 12c7b09c3152f2b3475d081691a26bd1a5633256 Mon Sep 17 00:00:00 2001
+From 30b61da180286643bea68b09b092744346011801 Mon Sep 17 00:00:00 2001
 From: Andrea Adami <andrea.adami@gmail.com>
 Date: Tue, 17 Apr 2018 11:38:42 +0200
 Subject: [PATCH] kexec.c: replace missing BLKGETSIZE64
@@ -16,10 +16,10 @@
  1 file changed, 4 insertions(+)
 
 diff --git a/kexec/kexec.c b/kexec/kexec.c
-index b5a8a1e..7842f8b 100644
+index 0764e85..157c577 100644
 --- a/kexec/kexec.c
 +++ b/kexec/kexec.c
-@@ -54,6 +54,10 @@
+@@ -55,6 +55,10 @@
  #define KEXEC_LOADED_PATH "/sys/kernel/kexec_loaded"
  #define KEXEC_CRASH_LOADED_PATH "/sys/kernel/kexec_crash_loaded"
  
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0009-vmcore-dmesg.c-work-around-missing-imaxdiv.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0009-vmcore-dmesg.c-work-around-missing-imaxdiv.patch
index df980b1..8bc473c 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0009-vmcore-dmesg.c-work-around-missing-imaxdiv.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0009-vmcore-dmesg.c-work-around-missing-imaxdiv.patch
@@ -1,4 +1,4 @@
-From ad598a71ffff6f86462211f252ac0c7b5de53869 Mon Sep 17 00:00:00 2001
+From 20e2c61fc04a291250acee649c2523d2546cedea Mon Sep 17 00:00:00 2001
 From: Andrea Adami <andrea.adami@gmail.com>
 Date: Tue, 17 Apr 2018 13:14:12 +0200
 Subject: [PATCH] vmcore-dmesg.c: work around missing imaxdiv()
@@ -18,7 +18,7 @@
  1 file changed, 12 insertions(+), 1 deletion(-)
 
 diff --git a/vmcore-dmesg/vmcore-dmesg.c b/vmcore-dmesg/vmcore-dmesg.c
-index e340ef4..1b27b71 100644
+index 7972788..c63ac4f 100644
 --- a/vmcore-dmesg/vmcore-dmesg.c
 +++ b/vmcore-dmesg/vmcore-dmesg.c
 @@ -575,8 +575,11 @@ static void dump_dmesg_structured(int fd)
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0010-fs2dt.c-work-around-missing-getline.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0010-fs2dt.c-work-around-missing-getline.patch
index cff1485..4652f10 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0010-fs2dt.c-work-around-missing-getline.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0010-fs2dt.c-work-around-missing-getline.patch
@@ -1,4 +1,4 @@
-From edefda702d906d472ee7a675f6b506d5cfca7ac8 Mon Sep 17 00:00:00 2001
+From 14d4dbd293c75bc81a0dde6e678f9bbefb40b6f1 Mon Sep 17 00:00:00 2001
 From: Andrea Adami <andrea.adami@gmail.com>
 Date: Tue, 17 Apr 2018 13:48:25 +0200
 Subject: [PATCH] fs2dt.c: work around missing getline()
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0011-purgatory-Makefile-adapt-to-klcc.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0011-purgatory-Makefile-adapt-to-klcc.patch
index 636151b..5bbb178 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0011-purgatory-Makefile-adapt-to-klcc.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0011-purgatory-Makefile-adapt-to-klcc.patch
@@ -1,16 +1,17 @@
-From 9b6866b106eb3ad11115bd591a23e65a68dd847d Mon Sep 17 00:00:00 2001
+From b6ebe05dc389b9457e3707401411fd075230b10e Mon Sep 17 00:00:00 2001
 From: Andrea Adami <andrea.adami@gmail.com>
 Date: Tue, 21 Aug 2018 16:31:44 +0200
-Subject: [PATCH 11/11] purgatory Makefile: adapt to klcc
+Subject: [PATCH] purgatory Makefile: adapt to klcc
 
 Upstream-Status: Inappropriate [klibc specific]
 Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
+
 ---
  purgatory/Makefile | 6 +++---
  1 file changed, 3 insertions(+), 3 deletions(-)
 
 diff --git a/purgatory/Makefile b/purgatory/Makefile
-index 49ce80a..72eefaa 100644
+index 49ce80a..1542b3a 100644
 --- a/purgatory/Makefile
 +++ b/purgatory/Makefile
 @@ -47,7 +47,7 @@ purgatory/sha256.o: $(srcdir)/util_lib/sha256.c
@@ -33,6 +34,3 @@
  			-Wl,-Map=$(PURGATORY_MAP)
  
  $(PURGATORY): $(PURGATORY_OBJS)
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0012-purgatory-string.c-avoid-inclusion-of-string.h.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0012-purgatory-string.c-avoid-inclusion-of-string.h.patch
index 20934da..db0d763 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0012-purgatory-string.c-avoid-inclusion-of-string.h.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0012-purgatory-string.c-avoid-inclusion-of-string.h.patch
@@ -1,4 +1,4 @@
-From 2d2ad16f9328a7cbb3f5b8479ae93eb923a0727f Mon Sep 17 00:00:00 2001
+From 9bb386018257e1e18ffe0e925201946515b31080 Mon Sep 17 00:00:00 2001
 From: Andrea Adami <andrea.adami@gmail.com>
 Date: Thu, 19 Apr 2018 00:28:14 +0200
 Subject: [PATCH] purgatory/string.c: avoid inclusion of string.h
@@ -26,6 +26,3 @@
  
  size_t strnlen(const char *s, size_t max)
  {
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0013-sha256.h-avoid-inclusion-of-sys-types.h.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0013-sha256.h-avoid-inclusion-of-sys-types.h.patch
index 5d1664f..777cbcf 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0013-sha256.h-avoid-inclusion-of-sys-types.h.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0013-sha256.h-avoid-inclusion-of-sys-types.h.patch
@@ -1,4 +1,4 @@
-From ec6000b9f287e62cb0746e26cfa4372c7ea528f4 Mon Sep 17 00:00:00 2001
+From 60098810e1c04be677794bff6a3935011af98934 Mon Sep 17 00:00:00 2001
 From: Andrea Adami <andrea.adami@gmail.com>
 Date: Thu, 19 Apr 2018 23:26:43 +0200
 Subject: [PATCH] sha256.h: avoid inclusion of sys/types.h
@@ -31,6 +31,3 @@
  #include <stdint.h>
  
  typedef struct
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0014-add-if_nameindex-from-musl.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0014-add-if_nameindex-from-musl.patch
index ad21266..f4d0d5d 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0014-add-if_nameindex-from-musl.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0014-add-if_nameindex-from-musl.patch
@@ -1,7 +1,7 @@
-From b15e9610b4ab52c381e712241d50dea96d50d873 Mon Sep 17 00:00:00 2001
+From 04eec97b390621f2b3794b0d774b77429eb88cfd Mon Sep 17 00:00:00 2001
 From: Andrea Adami <andrea.adami@gmail.com>
 Date: Wed, 2 May 2018 23:14:19 +0200
-Subject: [PATCH 14/14] add if_nameindex from musl
+Subject: [PATCH] add if_nameindex from musl
 
 Taken from musl, minimal changes.
 klibc lacks struct and func
@@ -20,10 +20,11 @@
  #define __bitwise __bitwise__
 
 Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
+
 ---
  kexec/Makefile       |  2 +-
- kexec/if_nameindex.c | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++
- kexec/if_nameindex.h | 15 ++++++++++++
+ kexec/if_nameindex.c | 64 ++++++++++++++++++++++++++++++++++++++++++++
+ kexec/if_nameindex.h | 15 +++++++++++
  kexec/ifdown.c       |  3 +++
  4 files changed, 83 insertions(+), 1 deletion(-)
  create mode 100644 kexec/if_nameindex.c
@@ -114,7 +115,7 @@
 +}
 diff --git a/kexec/if_nameindex.h b/kexec/if_nameindex.h
 new file mode 100644
-index 0000000..1725fbd
+index 0000000..cf1c061
 --- /dev/null
 +++ b/kexec/if_nameindex.h
 @@ -0,0 +1,15 @@
@@ -147,6 +148,3 @@
  
  /*
   *  First, we find all shaper devices and down them. Then we
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0015-vmcore-dmesg-fix-warning.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0015-vmcore-dmesg-fix-warning.patch
index 0b88b94..9b8107a 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0015-vmcore-dmesg-fix-warning.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0015-vmcore-dmesg-fix-warning.patch
@@ -1,17 +1,18 @@
-From 3294266c6a875c5009065c1ae5d0b86200c4147c Mon Sep 17 00:00:00 2001
+From a2679731a56748de58a4cf0a46b7a15d75543a88 Mon Sep 17 00:00:00 2001
 From: Andrea Adami <andrea.adami@gmail.com>
 Date: Sun, 29 Apr 2018 00:52:31 +0200
-Subject: [PATCH 6/6] vmcore-dmesg: fix warning
+Subject: [PATCH] vmcore-dmesg: fix warning
 
  # define __bitwise
 
 Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
+
 ---
  vmcore-dmesg/vmcore-dmesg.c | 3 +++
  1 file changed, 3 insertions(+)
 
 diff --git a/vmcore-dmesg/vmcore-dmesg.c b/vmcore-dmesg/vmcore-dmesg.c
-index e340ef4..91e4789 100644
+index c63ac4f..a4e3014 100644
 --- a/vmcore-dmesg/vmcore-dmesg.c
 +++ b/vmcore-dmesg/vmcore-dmesg.c
 @@ -2,6 +2,9 @@
@@ -24,6 +25,3 @@
  #include <endian.h>
  #include <byteswap.h>
  #include <stdio.h>
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/140-mips_disable_devicetree_support.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/140-mips_disable_devicetree_support.patch
index b3ef3c8..bd728cc 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/140-mips_disable_devicetree_support.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/140-mips_disable_devicetree_support.patch
@@ -1,4 +1,4 @@
-From 5ea7cd78cd252ffd3a9f3fbc8dc795d6e1596084 Mon Sep 17 00:00:00 2001
+From 7bd94a64cd5424e74ad49dbda65a15e83670268f Mon Sep 17 00:00:00 2001
 From: Andrea Adami <andrea.adami@gmail.com>
 Date: Mon, 17 Dec 2018 11:25:20 +0100
 Subject: [PATCH] kexec-tools: fix non-device tree devices on mips
@@ -14,6 +14,7 @@
 
 Signed-off-by: Konstantin Kuzov <master.nosferatu@gmail.com>
 Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
+
 ---
  kexec/arch/mips/include/arch/options.h |  4 +-
  kexec/arch/mips/kexec-elf-mips.c       | 58 ++++++++++++++------------
@@ -158,6 +159,3 @@
  };
  
  extern struct memory_ranges usablemem_rgns;
--- 
-2.17.1
-
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm64-crashdump-arm64.c-fix-warning.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm64-crashdump-arm64.c-fix-warning.patch
index 24be4dd..c2418d8 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm64-crashdump-arm64.c-fix-warning.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm64-crashdump-arm64.c-fix-warning.patch
@@ -1,7 +1,7 @@
-From 6f69f489a442b3a192e4c08748ee8c4d31c75dae Mon Sep 17 00:00:00 2001
+From 3fd4db2ce1710f45eb297ae6b2c10726b33204f3 Mon Sep 17 00:00:00 2001
 From: Andrea Adami <andrea.adami@gmail.com>
 Date: Sun, 29 Apr 2018 00:46:16 +0200
-Subject: [PATCH 5/6] arm64: crashdump-arm64.c: fix warning
+Subject: [PATCH] arm64: crashdump-arm64.c: fix warning
 
                  from ../git/kexec/kexec.h:6,
                  from ../git/kexec/arch/arm64/crashdump-arm64.c:18:
@@ -11,6 +11,7 @@
  # define __bitwise
 
 Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
+
 ---
  kexec/arch/arm64/crashdump-arm64.c | 3 +++
  1 file changed, 3 insertions(+)
@@ -29,6 +30,3 @@
  #include <linux/elf.h>
  
  #include "kexec.h"
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm64_kexec-arm64.c-workaround-for-getrandom-syscall.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm64_kexec-arm64.c-workaround-for-getrandom-syscall.patch
index b22ac3a..df7b0a7 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm64_kexec-arm64.c-workaround-for-getrandom-syscall.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm64_kexec-arm64.c-workaround-for-getrandom-syscall.patch
@@ -1,4 +1,4 @@
-From 10afeecd10499fbd64b2c68d3b076c6906df441f Mon Sep 17 00:00:00 2001
+From a99fc685214452aedabf9ac105bb99357006aa26 Mon Sep 17 00:00:00 2001
 From: Andrea Adami <andrea.adami@gmail.com>
 Date: Wed, 5 Sep 2018 17:07:48 +0200
 Subject: [PATCH] kexec-arm64.c: workaround for getrandom() syscall
@@ -15,15 +15,15 @@
 | ../git/kexec/arch/arm64/kexec-arm64.c:499:12: warning: implicit declaration of function 'getrandom'; did you mean 'srandom'? [-Wimplicit-function-declaration]
 |    result = getrandom(&fdt_val64,
 
-
 Upstream-Status: Inappropriate [klibc specific]
 Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
+
 ---
  kexec/arch/arm64/kexec-arm64.c | 12 +++++++++++-
  1 file changed, 11 insertions(+), 1 deletion(-)
 
 diff --git a/kexec/arch/arm64/kexec-arm64.c b/kexec/arch/arm64/kexec-arm64.c
-index 7a12479..8a7f5c5 100644
+index b143e86..88d4168 100644
 --- a/kexec/arch/arm64/kexec-arm64.c
 +++ b/kexec/arch/arm64/kexec-arm64.c
 @@ -16,7 +16,11 @@
@@ -54,8 +54,5 @@
 +				GRND_NONBLOCK);
 +#endif
  		if(result == -1) {
- 			dbgprintf("%s: Reading random bytes failed.\n",
+ 			fprintf(stderr, "%s: Reading random bytes failed.\n",
  					__func__);
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm64_kexec-image-header.h-add-missing-le64toh.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm64_kexec-image-header.h-add-missing-le64toh.patch
index 7decbac..cdcecdf 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm64_kexec-image-header.h-add-missing-le64toh.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm64_kexec-image-header.h-add-missing-le64toh.patch
@@ -1,7 +1,7 @@
-From af7d06a753a4c377b7ffe587da67a6ba56048bea Mon Sep 17 00:00:00 2001
+From c5e7928217ee73640d25c6471c4619601cb1ba19 Mon Sep 17 00:00:00 2001
 From: Andrea Adami <andrea.adami@gmail.com>
 Date: Thu, 19 Apr 2018 10:47:17 +0200
-Subject: [PATCH 2/2] kexec/arm64: image-header.h: add macro for le64toh
+Subject: [PATCH] kexec/arm64: image-header.h: add macro for le64toh
 
 Fix
 
@@ -35,6 +35,3 @@
  /**
   * struct arm64_image_header - arm64 kernel image header.
   *
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm_crashdump-fix-buffer-align.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm_crashdump-fix-buffer-align.patch
index c6afdfa..5323a81 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm_crashdump-fix-buffer-align.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm_crashdump-fix-buffer-align.patch
@@ -1,15 +1,16 @@
-From 06b0d43c20f7c6200902d4c6db3d33416877f71c Mon Sep 17 00:00:00 2001
+From edf186f45d543e318400195cc25175387ff3f5c4 Mon Sep 17 00:00:00 2001
 From: Andrea Adami <andrea.adami@gmail.com>
 Date: Sun, 26 Aug 2018 21:40:06 +0200
-Subject: [PATCH 1/1] arm- backport from oe-core
+Subject: [PATCH] arm- backport from oe-core
 
 Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
+
 ---
  kexec/arch/arm/crashdump-arm.c | 5 ++++-
  1 file changed, 4 insertions(+), 1 deletion(-)
 
 diff --git a/kexec/arch/arm/crashdump-arm.c b/kexec/arch/arm/crashdump-arm.c
-index 2530b29..af2600d 100644
+index daa4788..3f72b38 100644
 --- a/kexec/arch/arm/crashdump-arm.c
 +++ b/kexec/arch/arm/crashdump-arm.c
 @@ -240,6 +240,7 @@ int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline)
@@ -39,6 +40,3 @@
  					  crash_kernel_mem.start,
  					  crash_kernel_mem.end, -1, 0);
  
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm_crashdump.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm_crashdump.patch
index 9596263..2d1d64d 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm_crashdump.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/arm_crashdump.patch
@@ -1,4 +1,4 @@
-From 6dae4752a53973c152b3e91e8a4ca74a486dae8b Mon Sep 17 00:00:00 2001
+From 8ee92bc915d650e188caaa3df0a798ac2002f64e Mon Sep 17 00:00:00 2001
 From: OpenEmbedded <oe.patch@oe>
 Date: Wed, 11 Apr 2018 22:51:00 +0200
 Subject: [PATCH] use our elf.h header
@@ -17,7 +17,7 @@
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/kexec/arch/arm/crashdump-arm.c b/kexec/arch/arm/crashdump-arm.c
-index daa4788..2530b29 100644
+index 3f72b38..af2600d 100644
 --- a/kexec/arch/arm/crashdump-arm.c
 +++ b/kexec/arch/arm/crashdump-arm.c
 @@ -21,7 +21,7 @@
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/kexec-x32.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/kexec-x32.patch
index 26d18eb..3c2594a 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/kexec-x32.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/kexec-x32.patch
@@ -1,4 +1,10 @@
-x86_64: Add support to build kexec-tools with x32 ABI
+From fd40eee42273220fb0050fe10744b10067adc0a7 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= <anibal.limon@linux.intel.com>
+Date: Fri, 31 Aug 2018 17:31:50 +0200
+Subject: [PATCH] x86_64: Add support to build kexec-tools with x32 ABI
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
 
 Summary of changes,
 
@@ -21,11 +27,11 @@
  purgatory/arch/x86_64/Makefile           | 4 +++-
  4 files changed, 20 insertions(+), 1 deletion(-)
 
-Index: kexec-tools-2.0.10/configure.ac
-===================================================================
---- kexec-tools-2.0.10.orig/configure.ac
-+++ kexec-tools-2.0.10/configure.ac
-@@ -56,6 +56,15 @@ case $target_cpu in
+diff --git a/configure.ac b/configure.ac
+index e05d601..c428146 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -54,6 +54,15 @@ case $target_cpu in
  		;;
  	ia64|x86_64|alpha|m68k )
  		ARCH="$target_cpu"
@@ -41,11 +47,11 @@
  		;;
  	* )
  		AC_MSG_ERROR([unsupported architecture $target_cpu])
-Index: kexec-tools-2.0.10/kexec/arch/x86_64/kexec-elf-rel-x86_64.c
-===================================================================
---- kexec-tools-2.0.10.orig/kexec/arch/x86_64/kexec-elf-rel-x86_64.c
-+++ kexec-tools-2.0.10/kexec/arch/x86_64/kexec-elf-rel-x86_64.c
-@@ -8,7 +8,11 @@ int machine_verify_elf_rel(struct mem_eh
+diff --git a/kexec/arch/x86_64/kexec-elf-rel-x86_64.c b/kexec/arch/x86_64/kexec-elf-rel-x86_64.c
+index 761a4ed..1c0e3f8 100644
+--- a/kexec/arch/x86_64/kexec-elf-rel-x86_64.c
++++ b/kexec/arch/x86_64/kexec-elf-rel-x86_64.c
+@@ -8,7 +8,11 @@ int machine_verify_elf_rel(struct mem_ehdr *ehdr)
  	if (ehdr->ei_data != ELFDATA2LSB) {
  		return 0;
  	}
@@ -57,10 +63,10 @@
  		return 0;
  	}
  	if (ehdr->e_machine != EM_X86_64) {
-Index: kexec-tools-2.0.10/kexec/kexec-syscall.h
-===================================================================
---- kexec-tools-2.0.10.orig/kexec/kexec-syscall.h
-+++ kexec-tools-2.0.10/kexec/kexec-syscall.h
+diff --git a/kexec/kexec-syscall.h b/kexec/kexec-syscall.h
+index 2a3794d..3e67078 100644
+--- a/kexec/kexec-syscall.h
++++ b/kexec/kexec-syscall.h
 @@ -31,8 +31,12 @@
  #define __NR_kexec_load		268
  #endif
@@ -74,11 +80,11 @@
  #ifdef __s390x__
  #define __NR_kexec_load		277
  #endif
-Index: kexec-tools-2.0.10/purgatory/arch/x86_64/Makefile
-===================================================================
---- kexec-tools-2.0.10.orig/purgatory/arch/x86_64/Makefile
-+++ kexec-tools-2.0.10/purgatory/arch/x86_64/Makefile
-@@ -23,4 +23,6 @@ x86_64_PURGATORY_SRCS += purgatory/arch/
+diff --git a/purgatory/arch/x86_64/Makefile b/purgatory/arch/x86_64/Makefile
+index 7300937..4af11e4 100644
+--- a/purgatory/arch/x86_64/Makefile
++++ b/purgatory/arch/x86_64/Makefile
+@@ -23,4 +23,6 @@ x86_64_PURGATORY_SRCS += purgatory/arch/i386/console-x86.c
  x86_64_PURGATORY_SRCS += purgatory/arch/i386/vga.c
  x86_64_PURGATORY_SRCS += purgatory/arch/i386/pic.c
  
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/klibc-reboot.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/klibc-reboot.patch
index be1301d..6497fb4 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/klibc-reboot.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/klibc-reboot.patch
@@ -1,3 +1,13 @@
+From 9c99b0748dd0ea1aaf3836378ee75fa5af099a19 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 15 Mar 2019 00:22:40 -0700
+
+---
+ kexec/kexec.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/kexec/kexec.c b/kexec/kexec.c
+index 157c577..5da0d67 100644
 --- a/kexec/kexec.c
 +++ b/kexec/kexec.c
 @@ -901,7 +901,7 @@ static int my_exec(void)
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/powerpc-purgatory-Makefile-remove-unknown-flags.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/powerpc-purgatory-Makefile-remove-unknown-flags.patch
index c3b2071..8fb9f44 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/powerpc-purgatory-Makefile-remove-unknown-flags.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/powerpc-purgatory-Makefile-remove-unknown-flags.patch
@@ -1,8 +1,7 @@
-From 709dfe457c07aa0275f3da14634cbce5cf1029dc Mon Sep 17 00:00:00 2001
+From 3683b3f3e318fa711f6018f154d950c51d5b597a Mon Sep 17 00:00:00 2001
 From: Andrea Adami <andrea.adami@gmail.com>
 Date: Thu, 19 Apr 2018 19:26:53 +0200
-Subject: [PATCH 3/3] powerpc/purgatory: Makefile: remove unknown flags for
- powerpc
+Subject: [PATCH] powerpc/purgatory: Makefile: remove unknown flags for powerpc
 
 Fix
 
@@ -12,6 +11,7 @@
 
 Upstream-Status: Inappropriate [klibc specific]
 Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
+
 ---
  purgatory/arch/ppc/Makefile | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
@@ -29,6 +29,3 @@
  
  dist += purgatory/arch/ppc/Makefile $(ppc_PURGATORY_SRCS)		\
  	purgatory/arch/ppc/purgatory-ppc.h purgatory/arch/ppc/ppc_asm.h
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/powerpc_change-the-memory-size-limit.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/powerpc_change-the-memory-size-limit.patch
index dc97d93..67a3cac 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/powerpc_change-the-memory-size-limit.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/powerpc_change-the-memory-size-limit.patch
@@ -1,4 +1,4 @@
-From b19b68eab567aa534cf8dec79fe18e3dc0e14043 Mon Sep 17 00:00:00 2001
+From 6fec72bd7264478c214169b0f30f649304bd39ea Mon Sep 17 00:00:00 2001
 From: Quanyang Wang <quanyang.wang@windriver.com>
 Date: Tue, 16 Jun 2015 12:59:57 +0800
 Subject: [PATCH] powerpc: change the memory size limit
@@ -16,15 +16,16 @@
 Upstream-Status: Pending
 
 Signed-off-by: Quanyang Wang <quanyang.wang@windriver.com>
+
 ---
  kexec/arch/ppc/kexec-ppc.h | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
-Index: kexec-tools-2.0.10/kexec/arch/ppc/kexec-ppc.h
-===================================================================
---- kexec-tools-2.0.10.orig/kexec/arch/ppc/kexec-ppc.h
-+++ kexec-tools-2.0.10/kexec/arch/ppc/kexec-ppc.h
-@@ -42,7 +42,7 @@ void dol_ppc_usage(void);
+diff --git a/kexec/arch/ppc/kexec-ppc.h b/kexec/arch/ppc/kexec-ppc.h
+index 04e728e..6bae9ec 100644
+--- a/kexec/arch/ppc/kexec-ppc.h
++++ b/kexec/arch/ppc/kexec-ppc.h
+@@ -44,7 +44,7 @@ void dol_ppc_usage(void);
   * During inital setup the kernel does not map the whole memory but a part of
   * it. On Book-E that is 64MiB, 601 24MiB or 256MiB (if possible).
   */
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/x86_basename.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/x86_basename.patch
index 0d0ed23..568f197 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/x86_basename.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/x86_basename.patch
@@ -1,4 +1,4 @@
-From 5f47c30759684cea9a7a409646686c1a358b78ac Mon Sep 17 00:00:00 2001
+From 7823956149c78e1996c567d1965803456df090f8 Mon Sep 17 00:00:00 2001
 From: OpenEmbedded <oe.patch@oe>
 Date: Wed, 11 Apr 2018 22:51:05 +0200
 Subject: [PATCH] replace basename() with sscanf()
@@ -13,7 +13,7 @@
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/kexec/arch/i386/x86-linux-setup.c b/kexec/arch/i386/x86-linux-setup.c
-index 6c7d260..7850083 100644
+index 6cda12c..5514c1c 100644
 --- a/kexec/arch/i386/x86-linux-setup.c
 +++ b/kexec/arch/i386/x86-linux-setup.c
 @@ -304,9 +304,9 @@ static int add_edd_entry(struct x86_linux_param_header *real_mode,
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/x86_kexec_test.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/x86_kexec_test.patch
index 1c471f5..ecb0d85 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/x86_kexec_test.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/x86_kexec_test.patch
@@ -1,4 +1,4 @@
-From 9de68ec5af8db2eff352f12da28145fe5e96244d Mon Sep 17 00:00:00 2001
+From e26fe77b0ac9acc2c8086586d267aa7160969d2d Mon Sep 17 00:00:00 2001
 From: OpenEmbedded <oe.patch@oe>
 Date: Wed, 11 Apr 2018 22:51:05 +0200
 Subject: [PATCH] do not build test
@@ -14,7 +14,7 @@
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/Makefile.in b/Makefile.in
-index fb01134..440730d 100644
+index dbf1fb6..440730d 100644
 --- a/Makefile.in
 +++ b/Makefile.in
 @@ -173,8 +173,8 @@ PSRCS:=$(foreach s, $(SRCS), $(PACKAGE_NAME)-$(PACKAGE_VERSION)/$(s))
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/x86_sys_io.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/x86_sys_io.patch
index 493f298..ef9a411 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/x86_sys_io.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/x86_sys_io.patch
@@ -1,4 +1,4 @@
-From a992ee014efacdc98d5658be9930dcab0eaadfd7 Mon Sep 17 00:00:00 2001
+From 444160260a11022ecd84cd605fe8c22b316e6546 Mon Sep 17 00:00:00 2001
 From: OpenEmbedded <oe.patch@oe>
 Date: Wed, 11 Apr 2018 22:51:04 +0200
 Subject: [PATCH] i386: replace with our io.h
diff --git a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/x86_vfscanf.patch b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/x86_vfscanf.patch
index 2f0ad2e..af8467a 100644
--- a/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/x86_vfscanf.patch
+++ b/meta-openembedded/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/x86_vfscanf.patch
@@ -1,4 +1,4 @@
-From 423c3f6f41fe04f4512e2a97a130f072d53dd4cf Mon Sep 17 00:00:00 2001
+From c6934455ec2337e6da7ea9fbc3486ce9beeb5d82 Mon Sep 17 00:00:00 2001
 From: OpenEmbedded <oe.patch@oe>
 Date: Wed, 11 Apr 2018 22:51:05 +0200
 Subject: [PATCH] x86-linux-setup.c: replace vfscanf() with vsscanf()
@@ -13,7 +13,7 @@
  1 file changed, 10 insertions(+), 1 deletion(-)
 
 diff --git a/kexec/arch/i386/x86-linux-setup.c b/kexec/arch/i386/x86-linux-setup.c
-index 7850083..e190356 100644
+index 5514c1c..bdb28c6 100644
 --- a/kexec/arch/i386/x86-linux-setup.c
 +++ b/kexec/arch/i386/x86-linux-setup.c
 @@ -200,6 +200,8 @@ static int file_scanf(const char *dir, const char *file, const char *scanf_line,
diff --git a/meta-openembedded/meta-multimedia/conf/layer.conf b/meta-openembedded/meta-multimedia/conf/layer.conf
index e05a652..38aab8d 100644
--- a/meta-openembedded/meta-multimedia/conf/layer.conf
+++ b/meta-openembedded/meta-multimedia/conf/layer.conf
@@ -29,6 +29,6 @@
 # cause compatibility issues with other layers
 LAYERVERSION_multimedia-layer = "1"
 
-LAYERDEPENDS_multimedia-layer = "core"
+LAYERDEPENDS_multimedia-layer = "core meta-python"
 
 LAYERSERIES_COMPAT_multimedia-layer = "thud warrior"
diff --git a/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gssdp.inc b/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gssdp.inc
deleted file mode 100644
index 23f17ed..0000000
--- a/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gssdp.inc
+++ /dev/null
@@ -1,20 +0,0 @@
-SUMMARY = "Resource discovery and announcement over SSDP"
-DESCRIPTION = "GSSDP implements resource discovery and announcement over SSDP (Simpe Service Discovery Protocol)."
-LICENSE = "LGPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7"
-DEPENDS = "glib-2.0 libsoup-2.4"
-
-inherit autotools pkgconfig gobject-introspection vala
-
-# Copy vapigen.m4 so that it doesn't get removed by vala class
-# (normally this would be the right thing to do, but in gssdp the vapigen.m4 has only a custom macro)
-do_configure_prepend() {
-        cp -f ${S}/m4/vapigen.m4 ${S}/m4/vapigen-custom.m4 || true
-}
-
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk', '', d)}"
-PACKAGECONFIG[gtk] = "--with-gtk,--without-gtk,gtk+"
-
-PACKAGES =+ "gssdp-tools"
-
-FILES_gssdp-tools = "${bindir}/gssdp* ${datadir}/gssdp/*.glade"
diff --git a/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gssdp_1.0.2.bb b/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gssdp_1.0.2.bb
index b60d1ea..6088ef1 100644
--- a/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gssdp_1.0.2.bb
+++ b/meta-openembedded/meta-multimedia/recipes-connectivity/gupnp/gssdp_1.0.2.bb
@@ -1,9 +1,24 @@
-require gssdp.inc
-
-inherit gtk-doc
-
-PACKAGECONFIG[gtk] = "--with-gtk,--without-gtk,gtk+3"
+SUMMARY = "Resource discovery and announcement over SSDP"
+DESCRIPTION = "GSSDP implements resource discovery and announcement over SSDP (Simpe Service Discovery Protocol)."
+LICENSE = "LGPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7"
+DEPENDS = "glib-2.0 libsoup-2.4"
 
 SRC_URI = "${GNOME_MIRROR}/${BPN}/1.0/${BPN}-${PV}.tar.xz"
 SRC_URI[md5sum] = "b30c9a406853c6a3a012d151d6e7ad2c"
 SRC_URI[sha256sum] = "a1e17c09c7e1a185b0bd84fd6ff3794045a3cd729b707c23e422ff66471535dc"
+
+inherit autotools pkgconfig gobject-introspection vala gtk-doc
+
+# Copy vapigen.m4 so that it doesn't get removed by vala class
+# (normally this would be the right thing to do, but in gssdp the vapigen.m4 has only a custom macro)
+do_configure_prepend() {
+        cp -f ${S}/m4/vapigen.m4 ${S}/m4/vapigen-custom.m4 || true
+}
+
+PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk', '', d)}"
+PACKAGECONFIG[gtk] = "--with-gtk,--without-gtk,gtk+3"
+
+PACKAGES =+ "gssdp-tools"
+
+FILES_gssdp-tools = "${bindir}/gssdp* ${datadir}/gssdp/*.glade"
diff --git a/meta-openembedded/meta-multimedia/recipes-connectivity/rygel/rygel_0.37.0.bb b/meta-openembedded/meta-multimedia/recipes-connectivity/rygel/rygel_0.37.0.bb
index 4869d86..0adc721 100644
--- a/meta-openembedded/meta-multimedia/recipes-connectivity/rygel/rygel_0.37.0.bb
+++ b/meta-openembedded/meta-multimedia/recipes-connectivity/rygel/rygel_0.37.0.bb
@@ -12,7 +12,6 @@
 RDEPENDS_${PN} = "gstreamer1.0-plugins-base-playback shared-mime-info"
 RRECOMMENDS_${PN} = "rygel-plugin-media-export"
 
-GNOME_COMPRESS_TYPE = "xz"
 SRC_URI[archive.md5sum] = "f897167ad82e2e741582f2c393a76843"
 SRC_URI[archive.sha256sum] = "dfd3d885da3ac383ba0cfbf119995f4a0c2bca2cc8f8cfcd3df10cfec8f35cd7"
 
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth_git.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth_git.bb
index 4f600a2..ba1ef6b 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth_git.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth_git.bb
@@ -20,3 +20,4 @@
 PACKAGECONFIG[pulseaudio] = "-Denable-pulseaudio=ON,-Denable-pulseaudio=OFF,pulseaudio"
 PACKAGECONFIG[portaudio] = "-Denable-portaudio=ON,-Denable-portaudio=OFF,portaudio-v19"
 PACKAGECONFIG[profiling] = "-Denable-profiling=ON,-Denable-profiling=OFF"
+PACKAGECONFIG[readline] = "-Denable-readline=ON,-Denable-readline=OFF,readline"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/libao/libao_1.2.0.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/libao/libao_1.2.0.bb
index 4c0976e..0513461 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/libao/libao_1.2.0.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/libao/libao_1.2.0.bb
@@ -28,7 +28,6 @@
 }
 
 PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'alsa pulseaudio', d)}"
-PACKAGECONFIG[esound] = "--enable-esd,--disable-esd,esound"
 PACKAGECONFIG[alsa] = "--enable-alsa,--disable-alsa,alsa-lib"
 PACKAGECONFIG[pulseaudio] = "--enable-pulse,--disable-pulse,pulseaudio"
 FILES_${BPN}-ckport = "${libdir}/ckport"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/tremor/tremor_20150107.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/tremor/tremor_20180319.bb
similarity index 64%
rename from meta-openembedded/meta-multimedia/recipes-multimedia/tremor/tremor_20150107.bb
rename to meta-openembedded/meta-multimedia/recipes-multimedia/tremor/tremor_20180319.bb
index 937894a..beeb23a 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/tremor/tremor_20150107.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/tremor/tremor_20180319.bb
@@ -5,20 +5,14 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=db1b7a668b2a6f47b2af88fb008ad555 \
                     file://os.h;beginline=3;endline=14;md5=5c0af5e1bedef3ce8178c89f48cd6f1f"
 DEPENDS = "libogg"
-SRCDATE = "${PV}"
-PR = "r1"
 
-# SVN support for upstream version check isn't implemented yet
-RECIPE_UPSTREAM_VERSION = "20150107"
-RECIPE_UPSTREAM_DATE = "Jan 07, 2015"
-CHECK_DATE = "Aug 12, 2015"
-
-SRC_URI = "svn://svn.xiph.org/trunk;module=Tremor;rev=19427;protocol=http \
+SRC_URI = "git://git.xiph.org/tremor.git;protocol=https \
            file://obsolete_automake_macros.patch;striplevel=0 \
            file://tremor-arm-thumb2.patch \
 "
+SRCREV = "7c30a66346199f3f09017a09567c6c8a3a0eedc8"
 
-S = "${WORKDIR}/Tremor"
+S = "${WORKDIR}/git"
 
 inherit autotools pkgconfig
 
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc.inc b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc.inc
index 9bbc668..5c38be3 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc.inc
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc.inc
@@ -6,7 +6,7 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
 
 DEPENDS = "coreutils-native fribidi libtool libgcrypt libgcrypt-native \
-   dbus dbus-glib libxml2 gnutls \
+   dbus libxml2 gnutls \
    tremor faad2 ffmpeg flac fluidsynth alsa-lib \
    lua-native lua libidn \
    avahi jpeg xz libmodplug mpeg2dec \
@@ -72,7 +72,7 @@
 PACKAGECONFIG[dv1394] = "--enable-dv1394,--disable-dv1394,libraw1394 libavc1394"
 PACKAGECONFIG[svg] = "--enable-svg,--disable-svg,librsvg"
 PACKAGECONFIG[svgdec] = "--enable-svgdec,--disable-svgdec,librsvg cairo"
-PACKAGECONFIG[notify] = "--enable-notify,--disable-notify, libnotify gtk+"
+PACKAGECONFIG[notify] = "--enable-notify,--disable-notify, libnotify gtk+3"
 PACKAGECONFIG[fontconfig] = "--enable-fontconfig,--disable-fontconfig, fontconfig"
 PACKAGECONFIG[freetype] = "--enable-freetype,--disable-freetype, freetype"
 PACKAGECONFIG[dvdread] = "--enable-dvdread,--disable-dvdread, libdvdread libdvdcss"
diff --git a/meta-openembedded/meta-multimedia/recipes-support/libmediaart/libmediaart.inc b/meta-openembedded/meta-multimedia/recipes-support/libmediaart/libmediaart.inc
index 57dca9c..c7b368d 100644
--- a/meta-openembedded/meta-multimedia/recipes-support/libmediaart/libmediaart.inc
+++ b/meta-openembedded/meta-multimedia/recipes-support/libmediaart/libmediaart.inc
@@ -7,8 +7,6 @@
 
 DEPENDS = "glib-2.0 gdk-pixbuf"
 
-GNOME_COMPRESS_TYPE = "xz"
-
 inherit gnomebase gtk-doc gobject-introspection
 
 EXTRA_OECONF = "--disable-qt --enable-gdkpixbuf"
diff --git a/meta-openembedded/meta-networking/classes/waf-samba.bbclass b/meta-openembedded/meta-networking/classes/waf-samba.bbclass
index 1632c3c..9c32952 100644
--- a/meta-openembedded/meta-networking/classes/waf-samba.bbclass
+++ b/meta-openembedded/meta-networking/classes/waf-samba.bbclass
@@ -1,9 +1,9 @@
 # waf is a build system which is used by samba related project.
 # Obtain details from https://wiki.samba.org/index.php/Waf
 #
-inherit qemu pythonnative
+inherit qemu python3native
 
-DEPENDS += "qemu-native libxslt-native docbook-xsl-stylesheets-native python"
+DEPENDS += "qemu-native libxslt-native docbook-xsl-stylesheets-native python3"
 
 CONFIGUREOPTS = " --prefix=${prefix} \
                   --bindir=${bindir} \
@@ -111,7 +111,7 @@
 
 do_compile[progress] = "outof:^\[\s*(\d+)/\s*(\d+)\]\s+"
 do_compile () {
-    python ./buildtools/bin/waf ${@oe.utils.parallel_make_argument(d, '-j%d', limit=64)}
+    python3 ./buildtools/bin/waf ${@oe.utils.parallel_make_argument(d, '-j%d', limit=64)}
 }
 
 do_install() {
diff --git a/meta-openembedded/meta-networking/conf/layer.conf b/meta-openembedded/meta-networking/conf/layer.conf
index 67f58bc..6f0046c 100644
--- a/meta-openembedded/meta-networking/conf/layer.conf
+++ b/meta-openembedded/meta-networking/conf/layer.conf
@@ -23,4 +23,5 @@
 
 SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \
   wireguard-tools->wireguard-module \
+  wireless-regdb->crda \
 "
diff --git a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-aarch64.txt b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-aarch64.txt
index 1023f6a..fc0400d 100644
--- a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-aarch64.txt
+++ b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-aarch64.txt
@@ -37,3 +37,4 @@
 Checking whether blkcnt_t is 32 bit: NO
 Checking whether blkcnt_t is 64 bit: OK
 Checking whether fcntl lock supports open file description locks: OK
+Checking for a 64-bit host to support lmdb: OK
diff --git a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-aarch64_be.txt b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-aarch64_be.txt
index 1023f6a..fc0400d 100644
--- a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-aarch64_be.txt
+++ b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-aarch64_be.txt
@@ -37,3 +37,4 @@
 Checking whether blkcnt_t is 32 bit: NO
 Checking whether blkcnt_t is 64 bit: OK
 Checking whether fcntl lock supports open file description locks: OK
+Checking for a 64-bit host to support lmdb: OK
diff --git a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-arm.txt b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-arm.txt
index a5cd998..759afe8 100644
--- a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-arm.txt
+++ b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-arm.txt
@@ -38,3 +38,4 @@
 Checking whether blkcnt_t is 32 bit: NO
 Checking whether blkcnt_t is 64 bit: OK
 Checking whether fcntl lock supports open file description locks: OK
+Checking for a 64-bit host to support lmdb: NO
diff --git a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-armeb.txt b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-armeb.txt
index a5cd998..759afe8 100644
--- a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-armeb.txt
+++ b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-armeb.txt
@@ -38,3 +38,4 @@
 Checking whether blkcnt_t is 32 bit: NO
 Checking whether blkcnt_t is 64 bit: OK
 Checking whether fcntl lock supports open file description locks: OK
+Checking for a 64-bit host to support lmdb: NO
diff --git a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-i586.txt b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-i586.txt
index a5cd998..759afe8 100644
--- a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-i586.txt
+++ b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-i586.txt
@@ -38,3 +38,4 @@
 Checking whether blkcnt_t is 32 bit: NO
 Checking whether blkcnt_t is 64 bit: OK
 Checking whether fcntl lock supports open file description locks: OK
+Checking for a 64-bit host to support lmdb: NO
diff --git a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-i686.txt b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-i686.txt
index a5cd998..759afe8 100644
--- a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-i686.txt
+++ b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-i686.txt
@@ -38,3 +38,4 @@
 Checking whether blkcnt_t is 32 bit: NO
 Checking whether blkcnt_t is 64 bit: OK
 Checking whether fcntl lock supports open file description locks: OK
+Checking for a 64-bit host to support lmdb: NO
diff --git a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-mips.txt b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-mips.txt
index 3e239e7..c989f27 100644
--- a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-mips.txt
+++ b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-mips.txt
@@ -38,3 +38,4 @@
 Checking whether blkcnt_t is 32 bit: NO
 Checking whether blkcnt_t is 64 bit: OK
 Checking whether fcntl lock supports open file description locks: OK
+Checking for a 64-bit host to support lmdb: NO
diff --git a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-mips64.txt b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-mips64.txt
index 82e694f..215f574 100644
--- a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-mips64.txt
+++ b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-mips64.txt
@@ -37,3 +37,4 @@
 Checking whether blkcnt_t is 32 bit: NO
 Checking whether blkcnt_t is 64 bit: OK
 Checking whether fcntl lock supports open file description locks: OK
+Checking for a 64-bit host to support lmdb: OK
diff --git a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-mips64el.txt b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-mips64el.txt
index 82e694f..215f574 100644
--- a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-mips64el.txt
+++ b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-mips64el.txt
@@ -37,3 +37,4 @@
 Checking whether blkcnt_t is 32 bit: NO
 Checking whether blkcnt_t is 64 bit: OK
 Checking whether fcntl lock supports open file description locks: OK
+Checking for a 64-bit host to support lmdb: OK
diff --git a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-mipsel.txt b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-mipsel.txt
index 3e239e7..c989f27 100644
--- a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-mipsel.txt
+++ b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-mipsel.txt
@@ -38,3 +38,4 @@
 Checking whether blkcnt_t is 32 bit: NO
 Checking whether blkcnt_t is 64 bit: OK
 Checking whether fcntl lock supports open file description locks: OK
+Checking for a 64-bit host to support lmdb: NO
diff --git a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-powerpc.txt b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-powerpc.txt
index 27b9378..f107974 100644
--- a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-powerpc.txt
+++ b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-powerpc.txt
@@ -38,3 +38,4 @@
 Checking whether blkcnt_t is 32 bit: NO
 Checking whether blkcnt_t is 64 bit: OK
 Checking whether fcntl lock supports open file description locks: OK
+Checking for a 64-bit host to support lmdb: NO
diff --git a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-powerpc64.txt b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-powerpc64.txt
index 7fd3092..7a443cc 100644
--- a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-powerpc64.txt
+++ b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-powerpc64.txt
@@ -38,3 +38,4 @@
 Checking whether blkcnt_t is 32 bit: NO
 Checking whether blkcnt_t is 64 bit: OK
 Checking whether fcntl lock supports open file description locks: OK
+Checking for a 64-bit host to support lmdb: OK
diff --git a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-riscv64.txt b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-riscv64.txt
index 1023f6a..fc0400d 100644
--- a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-riscv64.txt
+++ b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-riscv64.txt
@@ -37,3 +37,4 @@
 Checking whether blkcnt_t is 32 bit: NO
 Checking whether blkcnt_t is 64 bit: OK
 Checking whether fcntl lock supports open file description locks: OK
+Checking for a 64-bit host to support lmdb: OK
diff --git a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-x86_64.txt b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-x86_64.txt
index 1023f6a..fc0400d 100644
--- a/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-x86_64.txt
+++ b/meta-openembedded/meta-networking/files/waf-cross-answers/cross-answers-x86_64.txt
@@ -37,3 +37,4 @@
 Checking whether blkcnt_t is 32 bit: NO
 Checking whether blkcnt_t is 64 bit: OK
 Checking whether fcntl lock supports open file description locks: OK
+Checking for a 64-bit host to support lmdb: OK
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/adcli/adcli_0.8.2.bb b/meta-openembedded/meta-networking/recipes-connectivity/adcli/adcli_0.8.2.bb
new file mode 100644
index 0000000..75f3030
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/adcli/adcli_0.8.2.bb
@@ -0,0 +1,27 @@
+SUMMARY = "Active Directory enrollment"
+DESCRIPTION = "A helper library and tools for Active Directory client operations."
+
+HOMEPAGE = "http://cgit.freedesktop.org/realmd/adcli"
+SECTION = "net"
+
+SRCREV = "cc3ef52884a48863a81acbfc741735fe09cd85f7"
+
+SRC_URI = "git://gitlab.freedesktop.org/realmd/adcli;branch=master \
+           file://Fixed-build-error-on-musl.patch \
+	   "
+
+S = "${WORKDIR}/git"
+
+LICENSE = "LGPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=23c2a5e0106b99d75238986559bb5fc6"
+
+inherit autotools xmlcatalog 
+
+DEPENDS += "virtual/crypt krb5 openldap gettext libxslt xmlto libxml2-native \
+            cyrus-sasl libxslt-native xmlto-native coreutils-native\
+           "
+
+EXTRA_OECONF += "--disable-static \
+                 --disable-silent-rules \
+                 --disable-doc \
+                "
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/adcli/files/Fixed-build-error-on-musl.patch b/meta-openembedded/meta-networking/recipes-connectivity/adcli/files/Fixed-build-error-on-musl.patch
new file mode 100644
index 0000000..87bcdfe
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/adcli/files/Fixed-build-error-on-musl.patch
@@ -0,0 +1,26 @@
+From 0e64782a45cba9753d1210ee7d7c9dbd42f74ceb Mon Sep 17 00:00:00 2001
+From: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
+Date: Fri, 12 Jul 2019 12:46:54 +0800
+Subject: [PATCH] Fixed build error on musl.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
+---
+ library/adutil.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/library/adutil.c b/library/adutil.c
+index 9b0c47f..b673edd 100644
+--- a/library/adutil.c
++++ b/library/adutil.c
+@@ -30,6 +30,7 @@
+ #include <assert.h>
+ #include <ctype.h>
+ #include <errno.h>
++#include <endian.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
+-- 
+2.20.1
+
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/blueman/blueman_2.1.1.bb b/meta-openembedded/meta-networking/recipes-connectivity/blueman/blueman_2.1.1.bb
new file mode 100644
index 0000000..36de2af
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/blueman/blueman_2.1.1.bb
@@ -0,0 +1,58 @@
+DESCRIPTION = "Blueman is a GTK+ Bluetooth Manager"
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+DEPENDS = "bluez5 python3-pygobject python3-cython-native python3-setuptools-native intltool-native"
+
+inherit autotools systemd gsettings python3native gtk-icon-cache
+
+SRC_URI = " \
+    https://github.com/blueman-project/blueman/releases/download/${PV}/blueman-${PV}.tar.xz \
+    file://0001-Search-for-cython3.patch \
+"
+SRC_URI[md5sum] = "9de89abb31be45bdbf11f7884764a2dc"
+SRC_URI[sha256sum] = "f1eab2334e5a1587defa80900901048d14c2e8ffa8c0cff7240bc9937a61dbc3"
+
+EXTRA_OECONF = " \
+    --disable-runtime-deps-check \
+    --disable-schemas-compile \
+"
+
+SYSTEMD_SERVICE_${PN} = "${BPN}-mechanism.service"
+SYSTEMD_AUTO_ENABLE_${PN} = "disable"
+
+RRECOMENDS_${PN} += "adwaita-icon-theme"
+RDEPENDS_${PN} += " \
+    python3-core \
+    python3-dbus \
+    packagegroup-tools-bluetooth \
+"
+
+PACKAGECONFIG ??= "thunar"
+PACKAGECONFIG[thunar] = "--enable-thunar-sendto,--disable-thunar-sendto"
+
+FILES_${PN} += " \
+    ${datadir}/dbus-1 \
+    ${datadir}/Thunar \
+    ${systemd_user_unitdir} \
+    ${exec_prefix}${systemd_system_unitdir} \
+    ${PYTHON_SITEPACKAGES_DIR} \
+"
+
+FILES_${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/_blueman.a"
+
+# In code, path to python is a variable that is replaced with path to native version of it
+# during the configure stage, e.g ../recipe-sysroot-native/usr/bin/python3-native/python3.
+# Replace it with #!/usr/bin/env python3
+do_install_append() {
+    sed -i "1s/.*/#!\/usr\/bin\/env python3/" ${D}${prefix}/libexec/blueman-rfcomm-watcher \
+                                              ${D}${prefix}/libexec/blueman-mechanism \
+                                              ${D}${bindir}/blueman-tray \
+                                              ${D}${bindir}/blueman-services \
+                                              ${D}${bindir}/blueman-sendto \
+                                              ${D}${bindir}/blueman-report \
+                                              ${D}${bindir}/blueman-manager \
+                                              ${D}${bindir}/blueman-assistant \
+                                              ${D}${bindir}/blueman-applet \
+                                              ${D}${bindir}/blueman-adapters
+}
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/blueman/blueman_git.bb b/meta-openembedded/meta-networking/recipes-connectivity/blueman/blueman_git.bb
deleted file mode 100644
index 947db78..0000000
--- a/meta-openembedded/meta-networking/recipes-connectivity/blueman/blueman_git.bb
+++ /dev/null
@@ -1,41 +0,0 @@
-DESCRIPTION = "Blueman is a GTK+ Bluetooth Manager"
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-
-DEPENDS = "bluez5 python3-pygobject python3-cython-native python3-setuptools-native intltool-native"
-
-inherit autotools systemd gsettings python3native gtk-icon-cache
-
-SRC_URI = " \
-    git://github.com/blueman-project/blueman.git \
-    file://0001-Search-for-cython3.patch \
-"
-SRCREV = "c4a03417e81e21543d4568e8e7f7de307582eb50"
-PV = "2.0.5+git${SRCPV}"
-S = "${WORKDIR}/git"
-
-EXTRA_OECONF = " \
-    --disable-runtime-deps-check \
-    --disable-schemas-compile \
-"
-
-SYSTEMD_SERVICE_${PN} = "${BPN}-mechanism.service"
-SYSTEMD_AUTO_ENABLE_${PN} = "disable"
-
-RRECOMENDS_${PN} += "adwaita-icon-theme"
-RDEPENDS_${PN} += " \
-    python3-dbus \
-    packagegroup-tools-bluetooth \
-"
-
-PACKAGECONFIG[thunar] = "--enable-thunar-sendto,--disable-thunar-sendto,,thunar"
-
-FILES_${PN} += " \
-    ${datadir}/dbus-1 \
-    ${datadir}/Thunar \
-    ${systemd_user_unitdir} \
-    ${exec_prefix}${systemd_system_unitdir} \
-    ${PYTHON_SITEPACKAGES_DIR} \
-"
-
-FILES_${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/_blueman.a"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/dhcpcd/dhcpcd_7.0.8.bb b/meta-openembedded/meta-networking/recipes-connectivity/dhcpcd/dhcpcd_8.0.2.bb
similarity index 61%
rename from meta-openembedded/meta-networking/recipes-connectivity/dhcpcd/dhcpcd_7.0.8.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/dhcpcd/dhcpcd_8.0.2.bb
index 84c3db7..79d1dad 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/dhcpcd/dhcpcd_7.0.8.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/dhcpcd/dhcpcd_8.0.2.bb
@@ -5,16 +5,16 @@
 HOMEPAGE = "http://roy.marples.name/projects/dhcpcd/"
 
 LICENSE = "BSD-2-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=1e8f17e4edcccc38152ccf60374e0f89"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=0531457992a97ecebc6975914a874a9d"
 
-SRC_URI = "http://roy.marples.name/downloads/${BPN}/${BPN}-${PV}.tar.xz"
+UPSTREAM_CHECK_URI = "https://roy.marples.name/downloads/dhcpcd/"
 
-SRC_URI[md5sum] = "77bbb1d73b6f30d6ddcc8b0fd3eae266"
-SRC_URI[sha256sum] = "96968e883369ab4afd11eba9dfd9bb109f5dfff65b2814ce6c432f36362dc9b5"
+SRC_URI = "http://roy.marples.name/downloads/${BPN}/${BPN}-${PV}.tar.xz \
+           file://0001-remove-INCLUDEDIR-to-prevent-build-issues.patch"
+SRC_URI[md5sum] = "c0375a1f725f1c191b43af60e4f7175b"
+SRC_URI[sha256sum] = "33a26ad561546cd2cfe1e6de6352a85df72b41c37def8c7eb00e90e57c627a5c"
 
-SRC_URI += "file://0001-remove-INCLUDEDIR-to-prevent-build-issues.patch"
-
-inherit autotools-brokensep
+inherit pkgconfig autotools-brokensep
 
 PACKAGECONFIG ?= "udev ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}"
 
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/firewalld/files/0001-fix-building-in-a-separate-directory-outside-the-sou.patch b/meta-openembedded/meta-networking/recipes-connectivity/firewalld/files/0001-fix-building-in-a-separate-directory-outside-the-sou.patch
index 3f34ff2..28d5902 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/firewalld/files/0001-fix-building-in-a-separate-directory-outside-the-sou.patch
+++ b/meta-openembedded/meta-networking/recipes-connectivity/firewalld/files/0001-fix-building-in-a-separate-directory-outside-the-sou.patch
@@ -1,10 +1,8 @@
 firewalld: fix building in a separate directory outside the source tree
 
-Upstream-Status: Submitted [https://github.com/firewalld/firewalld/pull/456]
+Upstream-Status: Accepted [https://github.com/firewalld/firewalld/pull/456]
 Signed-off-by: Dan Callaghan <dan.callaghan@opengear.com>
 
-diff --git a/config/Makefile.am b/config/Makefile.am
-index 7048d2ee..5270d408 100644
 --- a/config/Makefile.am
 +++ b/config/Makefile.am
 @@ -377,11 +377,11 @@ install-config:
@@ -24,8 +22,6 @@
  
  uninstall-config:
  	rmdir $(DESTDIR)$(sconfdir)/icmptypes
-diff --git a/doc/xml/Makefile.am b/doc/xml/Makefile.am
-index 8c93ab9c..d0313e3e 100644
 --- a/doc/xml/Makefile.am
 +++ b/doc/xml/Makefile.am
 @@ -69,7 +69,8 @@ edit = sed \
@@ -38,25 +34,23 @@
  
  transform-man.xsl: transform-man.xsl.in
  	$(edit) $< >$@
-diff --git a/doc/xml/firewall-cmd.xml.in b/doc/xml/firewall-cmd.xml.in
-index c2606553..24d77858 100644
 --- a/doc/xml/firewall-cmd.xml.in
 +++ b/doc/xml/firewall-cmd.xml.in
-@@ -1,9 +1,9 @@
+@@ -1,10 +1,10 @@
  <?xml version="1.0" encoding="utf-8"?>
  <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
  [
 -<!ENTITY authors SYSTEM "authors.xml">
 -<!ENTITY seealso SYSTEM "seealso.xml">
 -<!ENTITY notes SYSTEM "notes.xml">
+-<!ENTITY errorcodes SYSTEM "errorcodes.xml">
 +<!ENTITY authors SYSTEM "@SRCDIR@/authors.xml">
 +<!ENTITY seealso SYSTEM "@SRCDIR@/seealso.xml">
 +<!ENTITY notes SYSTEM "@SRCDIR@/notes.xml">
- <!ENTITY errorcodes SYSTEM "errorcodes.xml">
++<!ENTITY errorcodes SYSTEM "@SRCDIR@/errorcodes.xml">
  ]>
  
-diff --git a/doc/xml/firewalld.xml.in b/doc/xml/firewalld.xml.in
-index de802059..3d319b04 100644
+ <!--
 --- a/doc/xml/firewalld.xml.in
 +++ b/doc/xml/firewalld.xml.in
 @@ -1,9 +1,9 @@
@@ -72,6 +66,3 @@
  ]>
  
  <!--
--- 
-2.20.1
-
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/firewalld/firewalld_0.6.3.bb b/meta-openembedded/meta-networking/recipes-connectivity/firewalld/firewalld_0.6.4.bb
similarity index 93%
rename from meta-openembedded/meta-networking/recipes-connectivity/firewalld/firewalld_0.6.3.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/firewalld/firewalld_0.6.4.bb
index e999fa7..5955072 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/firewalld/firewalld_0.6.3.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/firewalld/firewalld_0.6.4.bb
@@ -4,12 +4,12 @@
 LICENSE = "GPLv2+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
 
-SRC_URI = "https://github.com/firewalld/firewalld/archive/v${PV}.tar.gz \
-           file://firewalld.init \
+SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/v${PV}/${BP}.tar.gz \
            file://0001-fix-building-in-a-separate-directory-outside-the-sou.patch \
+           file://firewalld.init \
 "
-SRC_URI[md5sum] = "5ef954d9b6b244ffeabcd226be1867a0"
-SRC_URI[sha256sum] = "039ad56ea6d6553aadf33243ea5b39802d73519e46a89c80c648b2bd1ec78aeb"
+SRC_URI[md5sum] = "e63bdd65a4d2f6338f60b31e91bb5525"
+SRC_URI[sha256sum] = "5a82a72fd9ad4cbbfb805bae615faa9b91a27855245de0fef3bcb06439394852"
 
 # glib-2.0-native is needed for GSETTINGS_RULES autoconf macro from gsettings.m4
 # xmlto-native is needed to populate /etc/xml/catalog.xml in the sysroot so that xsltproc finds the docbook xslt
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/mbedtls/mbedtls_2.16.0.bb b/meta-openembedded/meta-networking/recipes-connectivity/mbedtls/mbedtls_2.16.2.bb
similarity index 91%
rename from meta-openembedded/meta-networking/recipes-connectivity/mbedtls/mbedtls_2.16.0.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/mbedtls/mbedtls_2.16.2.bb
index 2e9d01e..b0bd942 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/mbedtls/mbedtls_2.16.0.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/mbedtls/mbedtls_2.16.2.bb
@@ -23,8 +23,8 @@
 SECTION = "libs"
 
 SRC_URI = "https://tls.mbed.org/download/mbedtls-${PV}-apache.tgz"
-SRC_URI[md5sum] = "eae9cf16114f4491dbbc0fe36bb7e6c3"
-SRC_URI[sha256sum] = "e3dab56e9093c790b7d5e0f7eb19451010fe680649d25cf1dcca9d5441669ae2"
+SRC_URI[md5sum] = "37cdec398ae9ebdd4640df74af893c95"
+SRC_URI[sha256sum] = "a6834fcd7b7e64b83dfaaa6ee695198cb5019a929b2806cb0162e049f98206a4"
 
 inherit cmake
 
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/miniupnpd/miniupnpd_2.1.20190210.bb b/meta-openembedded/meta-networking/recipes-connectivity/miniupnpd/miniupnpd_2.1.20190630.bb
similarity index 88%
rename from meta-openembedded/meta-networking/recipes-connectivity/miniupnpd/miniupnpd_2.1.20190210.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/miniupnpd/miniupnpd_2.1.20190630.bb
index d4093e5..6b8fdca 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/miniupnpd/miniupnpd_2.1.20190210.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/miniupnpd/miniupnpd_2.1.20190630.bb
@@ -5,7 +5,7 @@
 
 SECTION = "networking"
 LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=91ac00c6b9f5c106e89291e196fe0234"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=a1ed15843ce66639bcf9f109cf247870"
 
 inherit autotools gettext pkgconfig systemd
 
@@ -15,8 +15,8 @@
            file://miniupnpd.service \
            file://0001-Add-OpenEmbedded-cross-compile-case.patch \
            "
-SRC_URI[md5sum] = "03b00c27106835e728a3b858ecf83390"
-SRC_URI[sha256sum] = "1aaecd25cf152d99557dfe80c7508af9cb06e97ecad4786ce5dafb4c958d196b"
+SRC_URI[md5sum] = "394e676f555d8047be69730d9c4d23a5"
+SRC_URI[sha256sum] = "29f49fe6868597d041ee29f511fa7b65781b9e4e85ef2569a2381c2079e1743e"
 
 IPV6 = "${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', '--ipv6', '', d)}"
 
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.18.0.bb b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.18.0.bb
index 9215a86..58968df 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.18.0.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.18.0.bb
@@ -20,7 +20,7 @@
     curl \
 "
 
-inherit gnomebase gettext systemd bluetooth bash-completion vala gobject-introspection gtk-doc
+inherit gnomebase gettext systemd bash-completion vala gobject-introspection gtk-doc update-alternatives
 
 SRC_URI = " \
     ${GNOME_MIRROR}/NetworkManager/${@gnome_verdir("${PV}")}/NetworkManager-${PV}.tar.xz \
@@ -70,7 +70,7 @@
 
 PACKAGECONFIG ??= "nss ifupdown dhclient dnsmasq \
     ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', bb.utils.contains('DISTRO_FEATURES', 'x11', 'consolekit', '', d), d)} \
-    ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', '${BLUEZ}', '', d)} \
+    ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez5', '', d)} \
     ${@bb.utils.filter('DISTRO_FEATURES', 'wifi polkit', d)} \
 "
 PACKAGECONFIG[systemd] = " \
@@ -111,7 +111,7 @@
     ${nonarch_libdir}/NetworkManager/conf.d \
     ${datadir}/polkit-1 \
     ${datadir}/dbus-1 \
-    ${noarch_base_libdir}/udev/* \
+    ${nonarch_base_libdir}/udev/* \
     ${systemd_unitdir}/system \
     ${libdir}/pppd \
 "
@@ -141,6 +141,16 @@
 
 SYSTEMD_SERVICE_${PN} = "${@bb.utils.contains('PACKAGECONFIG', 'systemd', 'NetworkManager.service NetworkManager-dispatcher.service', '', d)}"
 
+ALTERNATIVE_PRIORITY = "100"
+ALTERNATIVE_${PN} = "${@bb.utils.contains('DISTRO_FEATURES','systemd','resolv-conf','',d)}"
+ALTERNATIVE_TARGET[resolv-conf] = "${@bb.utils.contains('DISTRO_FEATURES','systemd','${sysconfdir}/resolv-conf.NetworkManager','',d)}"
+ALTERNATIVE_LINK_NAME[resolv-conf] = "${@bb.utils.contains('DISTRO_FEATURES','systemd','${sysconfdir}/resolv.conf','',d)}"
+
 do_install_append() {
     rm -rf ${D}/run ${D}${localstatedir}/run
+
+    # For read-only filesystem, do not create links during bootup
+    if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+        ln -sf ../run/NetworkManager/resolv.conf ${D}${sysconfdir}/resolv-conf.NetworkManager
+    fi
 }
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-samba-fix-musl-lib-without-innetgr.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-samba-fix-musl-lib-without-innetgr.patch
new file mode 100644
index 0000000..fb12a10
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-samba-fix-musl-lib-without-innetgr.patch
@@ -0,0 +1,42 @@
+From fcb8ecd530b2d151e373974741601483326f7528 Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Thu, 27 Jun 2019 11:09:47 +0800
+Subject: [PATCH] samba: fix musl lib without innetgr
+
+Upstream-Status: Pending
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ lib/util/access.c | 2 +-
+ source3/auth/user_util.c | 2 +-
+ 2 file changed, 2 insertion(+), 2 deletion(-)
+
+diff --git a/lib/util/access.c b/lib/util/access.c
+index 7da0573..b94949e 100644
+--- a/lib/util/access.c
++++ b/lib/util/access.c
+@@ -112,7 +112,7 @@ static bool string_match(const char *tok,const char *s)
+ 			return true;
+ 		}
+ 	} else if (tok[0] == '@') { /* netgroup: look it up */
+-#ifdef	HAVE_NETGROUP
++#if defined(HAVE_NETGROUP) && defined(HAVE_INNETGR)
+ 		DATA_BLOB tmp;
+ 		char *mydomain = NULL;
+ 		char *hostname = NULL;
+diff --git a/source3/auth/user_util.c b/source3/auth/user_util.c
+index a76b5d4..30f523d 100644
+--- a/source3/auth/user_util.c
++++ b/source3/auth/user_util.c
+@@ -148,7 +148,7 @@ static void store_map_in_gencache(TALLOC_CTX *ctx, const char *from, const char
+ 
+ bool user_in_netgroup(TALLOC_CTX *ctx, const char *user, const char *ngname)
+ {
+-#ifdef HAVE_NETGROUP
++#if defined(HAVE_NETGROUP) && defined(HAVE_INNETGR)
+ 	static char *my_yp_domain = NULL;
+ 	char *lowercase_user = NULL;
+ 
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-waf-add-support-of-cross_compile.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-waf-add-support-of-cross_compile.patch
new file mode 100644
index 0000000..23b35a8
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-waf-add-support-of-cross_compile.patch
@@ -0,0 +1,62 @@
+From 4b8463ff43f8983a706b181c5292491f9f954be1 Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Fri, 25 Jan 2019 15:00:59 +0800
+Subject: [PATCH] waf: add support of cross_compile
+
+After upgrade, waf also upgraded 
+
+on 1.5.19, for cross_compile, subprocess.Popen is set to be
+samba_cross.cross_Popen, which will not execute testprog on
+host, but only read result from cross-answers.txt which is
+passed by option --cross-answer
+
+part of old code:
+    args = Utils.to_list(kw.get('exec_args', []))
+    proc = Utils.pproc.Popen([lastprog] + args, stdout=Utils.pproc.PIPE, stderr=Utils.pproc.PIPE)
+
+but on new version, exec_args is not used and cause do_configure
+failed with Exec format error
+
+fixed by append cross anser related args to cmd
+
+Upstream-Status: Submitted [https://gitlab.com/samba-team/samba/merge_requests/211]
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ third_party/waf/waflib/Tools/c_config.py | 11 ++++++-----
+ 1 file changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/third_party/waf/waflib/Tools/c_config.py b/third_party/waf/waflib/Tools/c_config.py
+index 7608215..767cf33 100644
+--- a/third_party/waf/waflib/Tools/c_config.py
++++ b/third_party/waf/waflib/Tools/c_config.py
+@@ -660,20 +660,21 @@ class test_exec(Task.Task):
+ 	"""
+ 	color = 'PINK'
+ 	def run(self):
++		args = self.generator.bld.kw.get('exec_args', [])
+ 		if getattr(self.generator, 'rpath', None):
+ 			if getattr(self.generator, 'define_ret', False):
+-				self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()])
+-			else:
+-				self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()])
++				self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()] + args)
++			else: 
++				self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()] + args)
+ 		else:
+ 			env = self.env.env or {}
+ 			env.update(dict(os.environ))
+ 			for var in ('LD_LIBRARY_PATH', 'DYLD_LIBRARY_PATH', 'PATH'):
+ 				env[var] = self.inputs[0].parent.abspath() + os.path.pathsep + env.get(var, '')
+ 			if getattr(self.generator, 'define_ret', False):
+-				self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()], env=env)
++				self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()] + args, env=env)
+ 			else:
+-				self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()], env=env)
++				self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()] + args, env=env)
+ 
+ @feature('test_exec')
+ @after_method('apply_link')
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/20-do-not-import-target-module-while-cross-compile.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/20-do-not-import-target-module-while-cross-compile.patch
index e112b3b..3f2921e 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/20-do-not-import-target-module-while-cross-compile.patch
+++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/20-do-not-import-target-module-while-cross-compile.patch
@@ -1,21 +1,32 @@
-Some modules such as dynamic library maybe cann't be imported while cross compile, 
-we just check whether does the module exist.
+From cc0576405803bcae45ee353c4333c449cead9207 Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Tue, 25 Jun 2019 14:25:08 +0800
+Subject: [PATCH] do not import target module while cross compile
+
+Some modules such as dynamic library maybe cann't be imported
+while cross compile, we just check whether does the module exist.
 
 Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
 
-Index: samba-4.4.2/buildtools/wafsamba/samba_bundled.py
-===================================================================
---- samba-4.4.2.orig/buildtools/wafsamba/samba_bundled.py
-+++ samba-4.4.2/buildtools/wafsamba/samba_bundled.py
-@@ -2,6 +2,7 @@
+update to version 4.10.5, and switch to python3
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ buildtools/wafsamba/samba_bundled.py | 27 +++++++++++++++++++--------
+ 1 file changed, 18 insertions(+), 8 deletions(-)
+
+diff --git a/buildtools/wafsamba/samba_bundled.py b/buildtools/wafsamba/samba_bundled.py
+index 60ce7da..5468a36 100644
+--- a/buildtools/wafsamba/samba_bundled.py
++++ b/buildtools/wafsamba/samba_bundled.py
+@@ -4,6 +4,7 @@ import sys
+ from waflib import Build, Options, Logs
+ from waflib.Configure import conf
+ from wafsamba import samba_utils
++import importlib.util, os
  
- import sys
- import Build, Options, Logs
-+import imp, os
- from Configure import conf
- from samba_utils import TO_LIST
- 
-@@ -230,17 +231,32 @@ def CHECK_BUNDLED_SYSTEM_PYTHON(conf, li
+ def PRIVATE_NAME(bld, name, private_extension, private_library):
+     '''possibly rename a library to include a bundled extension'''
+@@ -249,17 +250,27 @@ def CHECK_BUNDLED_SYSTEM_PYTHON(conf, libname, modulename, minversion='0.0.0'):
      # versions
      minversion = minimum_library_version(conf, libname, minversion)
  
@@ -25,34 +36,32 @@
 -        found = False
 -    else:
 +    # Find module in PYTHONPATH
-+    stuff = imp.find_module(modulename, [os.environ["PYTHONPATH"]])
-+    if stuff:
++    spec = importlib.util._find_spec_from_path(modulename, [os.environ["PYTHONPATH"]])
++    if spec:
          try:
 -            version = m.__version__
 -        except AttributeError:
-+            m = imp.load_module(modulename, stuff[0], stuff[1], stuff[2])
++            module = importlib.util.module_from_spec(spec)
++            spec.loader.load_module(module)
 +        except ImportError:
              found = False
 +
 +            if conf.env.CROSS_COMPILE:
 +                # Some modules such as dynamic library maybe cann't be imported
 +                # while cross compile, we just check whether the module exist
-+                Logs.warn('Cross module[%s] has been found, but can not be loaded.' % (stuff[1]))
++                Logs.warn('Cross module[%s] has been found, but can not be loaded.' % (spec.name))
 +                found = True
          else:
 -            found = tuplize_version(version) >= tuplize_version(minversion)
 +            try:
-+                version = m.__version__
++                version = module.__version__
 +            except AttributeError:
 +                found = False
 +            else:
 +                found = tuplize_version(version) >= tuplize_version(minversion)
-+        finally:
-+            if stuff[0]:
-+                stuff[0].close()
-+    else:
-+        found = False
-+
      if not found and not conf.LIB_MAY_BE_BUNDLED(libname):
          Logs.error('ERROR: Python module %s of version %s not found, and bundling disabled' % (libname, minversion))
          sys.exit(1)
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/21-add-config-option-without-valgrind.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/21-add-config-option-without-valgrind.patch
index 6a7f8fa..46a6f06 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/21-add-config-option-without-valgrind.patch
+++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/21-add-config-option-without-valgrind.patch
@@ -1,54 +1,40 @@
-From 9a2d6315ff206b2a47100dfd85afe3af56576995 Mon Sep 17 00:00:00 2001
-From: Wenzong Fan <wenzong.fan@windriver.com>
-Date: Thu, 10 Dec 2015 04:20:51 -0500
+From 87bc8e7eafc7d12a1d3a143ebb9e43cf5fbafb72 Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Thu, 20 Jun 2019 14:11:16 +0800
 Subject: [PATCH] Add config option without-valgrind
 
 Upstream-Status: Pending
 
 Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
 
+Update patch to version 4.10.5
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
 ---
- lib/replace/wscript | 4 +++-
- source3/wscript     | 5 ++++-
+ lib/replace/wscript | 5 +++--
  wscript             | 4 ++++
- 3 files changed, 11 insertions(+), 2 deletions(-)
+ 2 files changed, 7 insertions(+), 2 deletions(-)
 
 diff --git a/lib/replace/wscript b/lib/replace/wscript
-index f0040b1..aca73af 100644
+index a7fd25d..a19ae68 100644
 --- a/lib/replace/wscript
 +++ b/lib/replace/wscript
-@@ -101,7 +101,9 @@ def configure(conf):
+@@ -110,8 +110,9 @@ def configure(conf):
      conf.CHECK_HEADERS('sys/fileio.h sys/filesys.h sys/dustat.h sys/sysmacros.h')
      conf.CHECK_HEADERS('xfs/libxfs.h netgroup.h')
  
--    conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
+-    conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h')
+-    conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h')
 +    if not Options.options.disable_valgrind:
-+        conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
-+
++        conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h')
++        conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h')
      conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h')
      conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h')
      conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h')
-diff --git a/source3/wscript b/source3/wscript
-index bac3dd5..a5c51ea 100644
---- a/source3/wscript
-+++ b/source3/wscript
-@@ -1070,7 +1070,10 @@ syscall(SYS_setgroups32, 0, NULL);
-             Logs.warn("--with-dnsupdate=yes but gssapi support not sufficient")
-         else:
-             conf.DEFINE('WITH_DNS_UPDATES', 1)
--    conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
-+
-+    if not Options.options.disable_valgrind:
-+        conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
-+
-     if Options.options.developer:
-         if conf.CONFIG_SET('HAVE_VALGRIND_H') or conf.CONFIG_SET('HAVE_VALGRIND_VALGRIND_H'):
-             conf.DEFINE('VALGRIND', '1')
 diff --git a/wscript b/wscript
-index 542a60c..22e6116 100644
+index e38a8e9..38b7230 100644
 --- a/wscript
 +++ b/wscript
-@@ -86,6 +86,10 @@ def set_options(opt):
+@@ -105,6 +105,10 @@ def options(opt):
                    help=("Disable RELRO builds"),
                    action="store_false", dest='enable_relro')
  
@@ -58,7 +44,7 @@
 +
      gr = opt.option_group('developer options')
  
-     opt.tool_options('python') # options for disabling pyc or pyo compilation
+     opt.load('python') # options for disabling pyc or pyo compilation
 -- 
-1.9.1
+2.7.4
 
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/glibc_only.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/glibc_only.patch
index 894bc8b..d07ec0d 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/glibc_only.patch
+++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/glibc_only.patch
@@ -1,15 +1,28 @@
-Index: samba-4.6.2/ctdb/tests/src/test_mutex_raw.c
-===================================================================
---- samba-4.6.2.orig/ctdb/tests/src/test_mutex_raw.c
-+++ samba-4.6.2/ctdb/tests/src/test_mutex_raw.c
-@@ -166,8 +166,10 @@ int main(int argc, const char **argv)
- 			if (ret == 0) {
- 				pthread_mutex_unlock(mutex);
+From 062cf74b498c1d12fd76f9d9bca926ac806e0b99 Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Thu, 20 Jun 2019 14:15:18 +0800
+Subject: [PATCH] glibc only fix
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ ctdb/tests/src/test_mutex_raw.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/ctdb/tests/src/test_mutex_raw.c b/ctdb/tests/src/test_mutex_raw.c
+index 926a525..814343f 100644
+--- a/ctdb/tests/src/test_mutex_raw.c
++++ b/ctdb/tests/src/test_mutex_raw.c
+@@ -291,8 +291,10 @@ int main(int argc, const char **argv)
+ 					"failed\n");
+ 				exit (EXIT_FAILURE);
  			}
 +#ifdef __GLIBC__
  		} else if (ret == EBUSY) {
- 			printf("pid=%u\n", mutex->__data.__owner);
+ 			printf("INFO: pid=%u\n", mutex->__data.__owner);
 +#endif
  		} else if (ret == 0) {
  			pthread_mutex_unlock(mutex);
  		}
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.8.12.bb b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.10.6.bb
similarity index 89%
rename from meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.8.12.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.10.6.bb
index 762a5bc..7c77a16 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.8.12.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.10.6.bb
@@ -23,26 +23,25 @@
            file://dnsserver-4.7.0.patch \
            file://smb_conf-4.7.0.patch \
            file://volatiles.03_samba \
+           file://0001-waf-add-support-of-cross_compile.patch \
            "
 SRC_URI_append_libc-musl = " \
            file://samba-pam.patch \
            file://samba-4.3.9-remove-getpwent_r.patch \
            file://cmocka-uintptr_t.patch \
+           file://0001-samba-fix-musl-lib-without-innetgr.patch \
           "
 
-SRC_URI[md5sum] = "25de700c8f1148fd13973a49a51c059e"
-SRC_URI[sha256sum] = "c162d519101e15d1a1d76df063bfefe8d1656f57fb74e1ef19fe05d341a65d8f"
+SRC_URI[md5sum] = "9782cac8ef06049942be5f5c93b954be"
+SRC_URI[sha256sum] = "9efbeb52db1203dc779b118f1c48c161e569f7a6af5101e745497ee6296eef42"
 
-UPSTREAM_CHECK_REGEX = "samba\-(?P<pver>4\.8(\.\d+)+).tar.gz"
+UPSTREAM_CHECK_REGEX = "samba\-(?P<pver>4\.10(\.\d+)+).tar.gz"
 
 inherit systemd waf-samba cpan-base perlnative update-rc.d
 # remove default added RDEPENDS on perl
 RDEPENDS_${PN}_remove = "perl"
 
-DEPENDS += "readline virtual/libiconv zlib popt libtalloc libtdb libtevent libbsd libaio libpam"
-
-RCONFLICTS_${PN} = "libldb"
-RCONFLICTS_${PN}-python = "pyldb"
+DEPENDS += "readline virtual/libiconv zlib popt libtalloc libtdb libtevent libldb libbsd libaio libpam libtasn1 jansson"
 
 inherit distro_features_check
 REQUIRED_DISTRO_FEATURES = "pam"
@@ -64,10 +63,14 @@
 # https://wiki.samba.org/index.php/Setting_up_Samba_as_an_Active_Directory_Domain_Controller
 SYSTEMD_AUTO_ENABLE_${PN}-ad-dc = "disable"
 
+#cross_compile cannot use preforked process, since fork process earlier than point subproces.popen
+#to cross Popen
+export WAF_NO_PREFORK="yes"
+
 # Use krb5.  Build active domain controller.
 #
 PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd zeroconf', d)} \
-                   acl ad-dc cups gnutls ldap mitkrb5 \
+                   acl cups ad-dc gnutls ldap mitkrb5 \
 "
 
 RDEPENDS_${PN}-ctdb-tests += "bash util-linux-getopt"
@@ -84,6 +87,8 @@
 PACKAGECONFIG[lttng] = "--with-lttng, --without-lttng,lttng-ust"
 PACKAGECONFIG[archive] = "--with-libarchive, --without-libarchive, libarchive"
 PACKAGECONFIG[libunwind] = ", , libunwind"
+PACKAGECONFIG[gpgme] = ",--without-gpgme,,"
+PACKAGECONFIG[lmdb] = ",--without-ldb-lmdb,lmdb,"
 
 # Building the AD (Active Directory) DC (Domain Controller) requires GnuTLS,
 # And ad-dc doesn't work with mitkrb5 for versions prior to 4.7.0 according to:
@@ -108,17 +113,7 @@
 # .so files so there will not be a conflict.  This is not done consistantly, so be very careful
 # when adding to this list.
 #
-SAMBA4_LIBS="heimdal,cmocka,ldb,pyldb-util,NONE"
-
-# interim packages: As long as ldb/pyldb-util are in SAMBA4_LIBS we need to pack
-# bundled libraries in seperate packages. Otherwise they are auto-packed in
-# package 'samba' which RDEPENDS on lots of packages not wanted e.g autostarting
-# nmbd/smbd daemons
-# Once 'ldb,pyldb-util' are removed from SAMBA4_LIBS the bundled packages can
-# be removed again.
-PACKAGES =+ "${PN}-bundled-ldb ${PN}-bundled-pyldb-util"
-FILES_${PN}-bundled-ldb = "${libdir}/samba/libldb${SOLIBS}"
-FILES_${PN}-bundled-pyldb-util = "${libdir}/samba/libpyldb-util${SOLIBS}"
+SAMBA4_LIBS="heimdal,cmocka,NONE"
 
 EXTRA_OECONF += "--enable-fhs \
                  --with-piddir=/run \
@@ -179,8 +174,6 @@
     install -d ${D}${sysconfdir}/default
     install -m644 packaging/systemd/samba.sysconfig ${D}${sysconfdir}/default/samba
 
-    # install ctdb config file and test cases
-    install -D -m 0644 ${S}/ctdb/tests/onnode/nodes ${D}${sysconfdir}/ctdb/nodes
     # the items are from ctdb/tests/run_tests.sh
     for d in onnode takeover tool eventscripts cunit simple complex; do
         testdir=${D}${datadir}/ctdb-tests/$d
@@ -196,9 +189,17 @@
 
     chmod 0750 ${D}${sysconfdir}/sudoers.d
     rm -rf ${D}/run ${D}${localstatedir}/run ${D}${localstatedir}/log
+    
+    sed -i -e 's,${PYTHON},/usr/bin/env python3/,g' ${D}${sbindir}/samba-gpupdate
+    sed -i -e 's,${PYTHON},/usr/bin/env python3/,g' ${D}${sbindir}/samba_upgradedns 
+    sed -i -e 's,${PYTHON},/usr/bin/env python3/,g' ${D}${sbindir}/samba_spnupdate
+    sed -i -e 's,${PYTHON},/usr/bin/env python3/,g' ${D}${sbindir}/samba_kcc
+    sed -i -e 's,${PYTHON},/usr/bin/env python3/,g' ${D}${sbindir}/samba_dnsupdate
+    sed -i -e 's,${PYTHON},/usr/bin/env python3/,g' ${D}${bindir}/samba-tool
+    
 }
 
-PACKAGES =+ "${PN}-python ${PN}-pidl \
+PACKAGES =+ "${PN}-python3 ${PN}-pidl \
              ${PN}-dsdb-modules ${PN}-testsuite registry-tools \
              winbind \
              ${PN}-common ${PN}-base ${PN}-ad-dc ${PN}-ctdb-tests \
@@ -227,8 +228,8 @@
 PACKAGESPLITFUNCS_prepend = "samba_populate_packages "
 PACKAGES_DYNAMIC = "samba-auth-.* samba-pdb-.*"
 
-RDEPENDS_${PN} += "${PN}-base ${PN}-python ${PN}-dsdb-modules"
-RDEPENDS_${PN}-python += "pytalloc python-tdb"
+RDEPENDS_${PN} += "${PN}-base ${PN}-python3 ${PN}-dsdb-modules python3"
+RDEPENDS_${PN}-python3 += "pytalloc python3-tdb"
 
 FILES_${PN}-base = "${sbindir}/nmbd \
                     ${sbindir}/smbd \
@@ -261,6 +262,7 @@
                 ${libdir}/charset/*.so \
                 ${libdir}/*.dat \
                 ${libdir}/auth/*.so \
+                ${datadir}/ctdb/events/* \
 "
 
 FILES_${PN}-dsdb-modules = "${libdir}/samba/ldb"
@@ -286,7 +288,7 @@
                  ${sysconfdir}/init.d/winbind \
                  ${systemd_system_unitdir}/winbind.service"
 
-FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}"
+FILES_${PN}-python3 = "${PYTHON_SITEPACKAGES_DIR}"
 
 FILES_smbclient = "${bindir}/cifsdd \
                    ${bindir}/rpcclient \
@@ -307,7 +309,7 @@
     winbind \
     registry-tools \
     ${PN}-pidl \
-    " 
+    "
 
 ALLOW_EMPTY_${PN}-client = "1"
 
@@ -315,7 +317,7 @@
     ${PN} \
     winbind \
     registry-tools \
-    " 
+    "
 
 ALLOW_EMPTY_${PN}-server = "1"
 
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/sethdlc/sethdlc.bb b/meta-openembedded/meta-networking/recipes-connectivity/sethdlc/sethdlc_1.18.bb
similarity index 87%
rename from meta-openembedded/meta-networking/recipes-connectivity/sethdlc/sethdlc.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/sethdlc/sethdlc_1.18.bb
index fc304fa..5c7180b 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/sethdlc/sethdlc.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/sethdlc/sethdlc_1.18.bb
@@ -5,15 +5,13 @@
 LIC_FILES_CHKSUM = "file://sethdlc.c;endline=10;md5=90f936879e9f8b755a138aeb348782eb"
 
 
-SRC_URI = "https://www.kernel.org/pub/linux/utils/net/hdlc/${BPN}-1.18.tar.gz \
+SRC_URI = "https://www.kernel.org/pub/linux/utils/net/hdlc/${BP}.tar.gz \
            file://sethdlc-fix-host-contamination.patch \
 "
 SRC_URI[md5sum] = "9016878156a5eadb06c0bae71cc5c9ab"
 SRC_URI[sha256sum] = "21b1e2e1cb0e288b0ec8fcfd9fed449914e0f8e6fc273706bd5b3d4f6ab6b04e"
 
 
-S = "${WORKDIR}/${BPN}-1.18"
-
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 DEPENDS = "virtual/kernel"
 
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/snort/snort/0001-chdeck-for-gettid-API-during-configure.patch b/meta-openembedded/meta-networking/recipes-connectivity/snort/snort/0001-chdeck-for-gettid-API-during-configure.patch
new file mode 100644
index 0000000..eff610d
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/snort/snort/0001-chdeck-for-gettid-API-during-configure.patch
@@ -0,0 +1,48 @@
+From c45ab69f9428e4d2fc1146301a4546bb2b42c9ae Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Jul 2019 00:25:58 -0700
+Subject: [PATCH] chdeck for gettid API during configure
+
+glibc 2.30 added gettid syscall wrapper
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.in | 2 +-
+ src/util.h   | 2 ++
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/configure.in b/configure.in
+index 000bb91..d79e6d0 100644
+--- a/configure.in
++++ b/configure.in
+@@ -256,7 +256,7 @@ SN_CHECK_DECLS(printf fprintf syslog puts fputs fputc fopen  \
+            strcasecmp strncasecmp strerror perror socket sendto   \
+            vsnprintf snprintf strtoul)
+ 
+-AC_CHECK_FUNCS([sigaction strlcpy strlcat strerror vswprintf wprintf memrchr inet_ntop])
++AC_CHECK_FUNCS([sigaction strlcpy strlcat strerror vswprintf wprintf memrchr inet_ntop gettid])
+ 
+ AC_CHECK_FUNC([snprintf],[have_snprintf="yes"],[have_snprintf="no"])
+ AM_CONDITIONAL(BUILD_SNPRINTF, test "x$have_snprintf" != "xyes")
+diff --git a/src/util.h b/src/util.h
+index 6880906..c310b83 100644
+--- a/src/util.h
++++ b/src/util.h
+@@ -374,6 +374,7 @@ static inline int IsEmptyStr(const char *str)
+     return 0;
+ }
+ 
++#if !HAVE_GETTID
+ static inline pid_t gettid(void)
+ {
+ #if defined(LINUX) && defined(SYS_gettid)
+@@ -382,5 +383,6 @@ static inline pid_t gettid(void)
+     return getpid();
+ #endif
+ }
++#endif
+ 
+ #endif /*__UTIL_H__*/
+-- 
+2.22.0
+
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/snort/snort/configure.in-disable-tirpc-checking-for-fedora.patch b/meta-openembedded/meta-networking/recipes-connectivity/snort/snort/configure.in-disable-tirpc-checking-for-fedora.patch
new file mode 100644
index 0000000..87fd05b
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/snort/snort/configure.in-disable-tirpc-checking-for-fedora.patch
@@ -0,0 +1,60 @@
+From 65463a7c5cb2514b1523a81911810effffb75a79 Mon Sep 17 00:00:00 2001
+From: Yi Zhao <yi.zhao@windriver.com>
+Date: Fri, 28 Jun 2019 15:05:31 +0800
+Subject: [PATCH] configure.in: disable tirpc checking for fedora
+
+The Fedora 28+ does not have inbuilt SunRPC support in glibc and is
+separately availble in tirpc package. So it enables tirpc checking for
+fedora in configure.
+
+Drop this piece of code since we had specify '-ltirpc' in LDFLAGS
+explicitly. Otherwise it will cause a compile-host-path QA issue if the
+host is Fedora 28+:
+cc1: warning: include location "/usr/include/tirpc" is unsafe for
+cross-compilation [-Wpoison-system-directories]
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ configure.in | 24 ------------------------
+ 1 file changed, 24 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index 8662cdd..0ff7e27 100644
+--- a/configure.in
++++ b/configure.in
+@@ -895,30 +895,6 @@ if test "x$enable_dlclose" = "xno"; then
+     AC_DEFINE([DISABLE_DLCLOSE_FOR_VALGRIND_TESTING],[1],[Don't close opened shared objects for valgrind leak testing of dynamic libraries])
+ fi
+ 
+-##################################################
+-# Fedora 28+ does not have inbuilt SunRPC support#
+-# in glibc and is separately availble in tirpc   #
+-# package. Make sure we've got the library and   #
+-# link it                                        #
+-##################################################
+-
+-if test -f /etc/fedora-release ; then
+-    DISTRO_VERSION=$(awk '{ print $3 }' /etc/fedora-release)
+-    if test $DISTRO_VERSION -ge 28 ; then
+-        TIRPC=""
+-        AC_CHECK_LIB(tirpc,bindresvport,, TIRPC="no")
+-        echo "$TIRPC"
+-        if test "x$TIRPC" = "xno"; then
+-            echo
+-            echo " ERROR! tirpc not found, get it by running "
+-            echo " yum install libtirpc-devel "
+-            exit
+-        fi
+-        LIBS="${LIBS} -ltirpc"
+-        extra_incl="-I/usr/include/tirpc"
+-    fi
+-fi
+-
+ Z_LIB=""
+ AC_CHECK_HEADERS(zlib.h,, Z_LIB="no")
+ if test "x$Z_LIB" = "xno"; then
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/snort/snort/volatiles.99_snort b/meta-openembedded/meta-networking/recipes-connectivity/snort/snort/volatiles.99_snort
new file mode 100644
index 0000000..acf5f61
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/snort/snort/volatiles.99_snort
@@ -0,0 +1,2 @@
+# <type> <owner> <group> <mode> <path> <linksource>
+d root root 0755 /var/log/snort none
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/snort/snort_2.9.13.bb b/meta-openembedded/meta-networking/recipes-connectivity/snort/snort_2.9.14.1.bb
similarity index 85%
rename from meta-openembedded/meta-networking/recipes-connectivity/snort/snort_2.9.13.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/snort/snort_2.9.14.1.bb
index 1b10dbd..892fe4d 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/snort/snort_2.9.13.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/snort/snort_2.9.14.1.bb
@@ -8,13 +8,16 @@
 
 SRC_URI = "https://www.snort.org/downloads/archive/snort/${BP}.tar.gz \
     file://snort.init \
+    file://volatiles.99_snort \
     file://0001-libpcap-search-sysroot-for-headers.patch \
     file://fix-host-contamination-when-enable-static-daq.patch \
     file://disable-run-test-program-while-cross-compiling.patch \
+    file://configure.in-disable-tirpc-checking-for-fedora.patch \
+    file://0001-chdeck-for-gettid-API-during-configure.patch \
 "
 
-SRC_URI[md5sum] = "b61ae846af022018b05511076baad60c"
-SRC_URI[sha256sum] = "31447393d15286b848810dd78ab2cb3ad231fcd1f1663f959587690eeea75413"
+SRC_URI[md5sum] = "009254a9797ec93321c5936b99dcd6c8"
+SRC_URI[sha256sum] = "2472989da3aace000d1ea5931ece68f8e5cc0c511e272d65182113a2481e822d"
 
 UPSTREAM_CHECK_URI = "https://www.snort.org/downloads"
 UPSTREAM_CHECK_REGEX = "snort-(?P<pver>\d+(\.\d+)+)\.tar"
@@ -70,12 +73,19 @@
 
     cp ${S}/preproc_rules/*.rules ${D}${sysconfdir}/snort/preproc_rules/
     install -m 755 ${WORKDIR}/snort.init ${D}${sysconfdir}/init.d/snort
-    mkdir -p ${D}${localstatedir}/log/snort
-    install -d ${D}/var/log/snort
+
+    install -d ${D}${sysconfdir}/default/volatiles
+    install -m 0644 ${WORKDIR}/volatiles.99_snort ${D}${sysconfdir}/default/volatiles/99_snort
 
     sed -i -e 's|-fdebug-prefix-map[^ ]*||g; s|-fmacro-prefix-map[^ ]*||g; s|${STAGING_DIR_TARGET}||g' ${D}${libdir}/pkgconfig/*.pc
 }
 
+pkg_postinst_${PN}() {
+    if [ -z "$D" ] && [ -e ${sysconfdir}/init.d/populate-volatile.sh ]; then
+        ${sysconfdir}/init.d/populate-volatile.sh update
+    fi
+}
+
 FILES_${PN} += " \
     ${libdir}/snort_dynamicengine/*.so.* \
     ${libdir}/snort_dynamicpreprocessor/*.so.* \
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_4.0.0.bb b/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_4.1.0.bb
similarity index 93%
rename from meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_4.0.0.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_4.1.0.bb
index d8883a7..ae37938 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_4.0.0.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_4.1.0.bb
@@ -13,7 +13,7 @@
 RPROVIDES_${PN} = "cyassl"
 
 SRC_URI = "git://github.com/wolfSSL/wolfssl.git;protocol=https"
-SRCREV = "21f2beca9f320199fcea4a96df3e19967804144b"
+SRCREV = "50fbdb961fd8c2d8123064e567ae8ec44167732d"
 S = "${WORKDIR}/git"
 
 inherit autotools
diff --git a/meta-openembedded/meta-networking/recipes-core/packagegroups/packagegroup-meta-networking.bb b/meta-openembedded/meta-networking/recipes-core/packagegroups/packagegroup-meta-networking.bb
index bbc5e12..29ce51b 100644
--- a/meta-openembedded/meta-networking/recipes-core/packagegroups/packagegroup-meta-networking.bb
+++ b/meta-openembedded/meta-networking/recipes-core/packagegroups/packagegroup-meta-networking.bb
@@ -37,7 +37,7 @@
     mbedtls relayd snort dhcpcd rdate vlan vpnc \
     inetutils wolfssl lftp miniupnpd networkmanager \
     networkmanager-openvpn rdist nanomsg python-networkmanager \
-    ${@bb.utils.contains("DISTRO_FEATURES", "bluez5 x11", "blueman", "", d)} \
+    ${@bb.utils.contains("DISTRO_FEATURES", "bluetooth x11", "blueman", "", d)} \
     ${@bb.utils.contains("DISTRO_FEATURES", "pam", "samba", "", d)} \
     ${@bb.utils.contains("DISTRO_FEATURES", "pam", "samba", "", d)} \
     "
diff --git a/meta-openembedded/meta-networking/recipes-daemons/keepalived/keepalived_2.0.15.bb b/meta-openembedded/meta-networking/recipes-daemons/keepalived/keepalived_2.0.16.bb
similarity index 91%
rename from meta-openembedded/meta-networking/recipes-daemons/keepalived/keepalived_2.0.15.bb
rename to meta-openembedded/meta-networking/recipes-daemons/keepalived/keepalived_2.0.16.bb
index 9a20e02..5257c5c 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/keepalived/keepalived_2.0.15.bb
+++ b/meta-openembedded/meta-networking/recipes-daemons/keepalived/keepalived_2.0.16.bb
@@ -11,8 +11,8 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
 
 SRC_URI = "http://www.keepalived.org/software/${BP}.tar.gz"
-SRC_URI[md5sum] = "68413d76fc23191ddd66246d498e19b5"
-SRC_URI[sha256sum] = "933ee01bc6346aa573453b998f87510d3cce4aba4537c9642b24e6dbfba5c6f4"
+SRC_URI[md5sum] = "03f202eace2ad392c61ced15bb710e24"
+SRC_URI[sha256sum] = "f0c7dc86147a286913c1c2c918f557735016285d25779d4d2fce5732fcb888df"
 
 DEPENDS = "libnfnetlink openssl"
 
diff --git a/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf/0001-Add-configure-time-check-for-gettid-API.patch b/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf/0001-Add-configure-time-check-for-gettid-API.patch
new file mode 100644
index 0000000..2b03b18
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf/0001-Add-configure-time-check-for-gettid-API.patch
@@ -0,0 +1,67 @@
+From 91c7362834ccd88d1432b3e6c5c51748b72b10ad Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Jul 2019 07:21:16 -0700
+Subject: [PATCH] Add configure time check for gettid API
+
+glibc 2.30 has added syscalls wrapper for gettid
+it should now be checked during configure if C library provides
+this API then do not define local function
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac         | 4 ++++
+ src/base/logtrace.cc | 3 +++
+ src/osaf/config.h.in | 3 +++
+ 3 files changed, 10 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index 22ab936..90f3da4 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -480,6 +480,10 @@ fi
+ 
+ AC_SUBST([localstatedir])
+ 
++#############################################
++# Checks for functions.
++#############################################
++AC_CHECK_FUNCS([ gettid ])
+ 
+ #############################################
+ # Checks for programs.
+diff --git a/src/base/logtrace.cc b/src/base/logtrace.cc
+index 8908c1f..fe87e8d 100644
+--- a/src/base/logtrace.cc
++++ b/src/base/logtrace.cc
+@@ -31,6 +31,7 @@
+ #include "base/logtrace_client.h"
+ #include "base/logtrace_buffer.h"
+ #include "base/ncsgl_defs.h"
++#include "osaf/config.h"
+ 
+ namespace global {
+ 
+@@ -58,7 +59,9 @@ std::once_flag init_flag;
+ thread_local LogTraceBuffer gl_thread_buffer{gl_local_thread_trace,
+   global::thread_trace_buffer_size};
+ 
++#ifndef HAVE_GETTID
+ static pid_t gettid() { return syscall(SYS_gettid); }
++#endif
+ 
+ /**
+  * USR2 signal handler to enable/disable trace (toggle)
+diff --git a/src/osaf/config.h.in b/src/osaf/config.h.in
+index d1f6d1a..0a3f27d 100644
+--- a/src/osaf/config.h.in
++++ b/src/osaf/config.h.in
+@@ -18,6 +18,9 @@
+ /* Define if experimental code is enabled */
+ #undef HAVE_EXPERIMENTAL
+ 
++/* Define to 1 if you have the `gettid' function. */
++#undef HAVE_GETTID
++
+ /* SAHPI_INTERFACE_VERSION == A01 */
+ #undef HAVE_HPI_A01
+ 
diff --git a/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf_5.19.03.bb b/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf_5.19.07.bb
similarity index 93%
rename from meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf_5.19.03.bb
rename to meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf_5.19.07.bb
index 0cccebd..e466cc2 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf_5.19.03.bb
+++ b/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf_5.19.07.bb
@@ -24,9 +24,10 @@
            file://0001-configure-Disable-format-overflow-if-supported-by-gc.patch \
            file://0001-src-Add-missing-header-limits.h-for-_POSIX_HOST_NAME.patch \
            file://0001-immpbe_dump.cc-Use-sys-wait.h-instead-of-wait.h.patch \
+           file://0001-Add-configure-time-check-for-gettid-API.patch \
            "
-SRC_URI[md5sum] = "4dd1497ccd82d275735853bf0db5c510"
-SRC_URI[sha256sum] = "de42c8dd850990716ca494ca598165cc7a23b5b7f2bc21af5d71a3d971ddd595"
+SRC_URI[md5sum] = "e9ae9de803a99b7ab33757a49858542f"
+SRC_URI[sha256sum] = "caed672d03ab1fe3f27d333429c7ca03022714e7c6350500208b7bd7349f03ce"
 
 inherit autotools useradd systemd pkgconfig
 
diff --git a/meta-openembedded/meta-networking/recipes-daemons/postfix/files/0001-Fixed-build-failure-with-glibc-2.30-due-to-dropped-R.patch b/meta-openembedded/meta-networking/recipes-daemons/postfix/files/0001-Fixed-build-failure-with-glibc-2.30-due-to-dropped-R.patch
new file mode 100644
index 0000000..22adaff
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-daemons/postfix/files/0001-Fixed-build-failure-with-glibc-2.30-due-to-dropped-R.patch
@@ -0,0 +1,37 @@
+From 8b3792830f4930fee7fbb00c854d9766f2b74dca Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Jul 2019 11:35:38 -0700
+Subject: [PATCH] Fixed build failure with glibc 2.30 due to dropped
+ RES_INSECURE1/2 macros
+
+see [1]
+
+[1] https://sourceware.org/git/?p=glibc.git;a=commit;h=333221862ecbebde60dd16e7ca17d26444e62f50
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/dns/dns_str_resflags.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/dns/dns_str_resflags.c b/src/dns/dns_str_resflags.c
+index 5f2cce5..df32345 100644
+--- a/src/dns/dns_str_resflags.c
++++ b/src/dns/dns_str_resflags.c
+@@ -60,10 +60,16 @@ static const LONG_NAME_MASK resflag_table[] = {
+     "RES_DEFNAMES", RES_DEFNAMES,
+     "RES_STAYOPEN", RES_STAYOPEN,
+     "RES_DNSRCH", RES_DNSRCH,
++#ifdef RES_INSECURE1
+     "RES_INSECURE1", RES_INSECURE1,
++#endif
++#ifdef RES_INSECURE2
+     "RES_INSECURE2", RES_INSECURE2,
++#endif
+     "RES_NOALIASES", RES_NOALIASES,
++#ifdef RES_USE_INET6
+     "RES_USE_INET6", RES_USE_INET6,
++#endif
+ #ifdef RES_ROTATE
+     "RES_ROTATE", RES_ROTATE,
+ #endif
diff --git a/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix.inc b/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix.inc
index 3d4f1df..7781005 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix.inc
+++ b/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix.inc
@@ -14,17 +14,6 @@
 LICENSE = "IPL-1.0 | EPL-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=b181651ad99a7dc4cc8c4ce2f491ed1a"
 
-SRC_URI = "ftp://ftp.porcupine.org/mirrors/postfix-release/official/postfix-${PV}.tar.gz \
-    file://makedefs.patch \
-    file://install.patch \
-    file://main.cf \
-    file://postfix \
-    file://internal_recipient \
-    file://postfix.service \
-    file://aliasesdb \
-    file://check_hostname.sh \
-"
-
 S = "${WORKDIR}/postfix-${PV}"
 
 CLEANBROKEN = "1"
@@ -196,11 +185,15 @@
     ln -sf ../sbin/sendmail.postfix ${D}${bindir}/mailq
 }
 
-ALTERNATIVE_${PN} += "sendmail mailq newaliases"
+ALTERNATIVE_${PN} = "sendmail mailq newaliases"
+# /usr/lib/sendmial is required by LSB core test
+ALTERNATIVE_${PN}_linuxstdbase = "sendmail mailq newaliases usr-lib-sendmail"
 ALTERNATIVE_TARGET[mailq] = "${bindir}/mailq"
 ALTERNATIVE_TARGET[newaliases] = "${bindir}/newaliases"
 ALTERNATIVE_TARGET[sendmail] = "${sbindir}/sendmail.postfix"
 ALTERNATIVE_LINK_NAME[sendmail] = "${sbindir}/sendmail"
+ALTERNATIVE_TARGET[usr-lib-sendmail] = "${sbindir}/sendmail.postfix"
+ALTERNATIVE_LINK_NAME[usr-lib-sendmail] = "/usr/lib/sendmail"
 
 ALTERNATIVE_PRIORITY = "120"
 
@@ -219,11 +212,6 @@
         touch /etc/postfix/virtual_alias
         postmap /etc/postfix/virtual_alias
     else
-        if ${@'true' if 'linuxstdbase' in d.getVar('DISTROOVERRIDES', False) else 'false'}; then
-            # /usr/lib/sendmail is required by LSB core test
-            [ ! -L $D/usr/lib/sendmail ] && ln -sf ${sbindir}/sendmail $D/usr/lib/
-        fi
-
         touch $D/etc/aliases
         # This can fail depending on host setup
         if ! newaliases -C $D/etc/postfix/main.cf -oA$D/etc/aliases; then
diff --git a/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.4.5.bb b/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.4.5.bb
index 3ce8055..189baea 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.4.5.bb
+++ b/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.4.5.bb
@@ -1,9 +1,19 @@
 require postfix.inc
 
-SRC_URI += "file://0001-makedefs-Use-native-compiler-to-build-makedefs.test.patch \
-            file://postfix-install.patch \
-            file://icu-config.patch \
-            file://0001-makedefs-add-lnsl-and-lresolv-to-SYSLIBS-by-default.patch \
+SRC_URI += "ftp://ftp.porcupine.org/mirrors/postfix-release/official/postfix-${PV}.tar.gz \
+           file://makedefs.patch \
+           file://install.patch \
+           file://main.cf \
+           file://postfix \
+           file://internal_recipient \
+           file://postfix.service \
+           file://aliasesdb \
+           file://check_hostname.sh \
+           file://0001-makedefs-Use-native-compiler-to-build-makedefs.test.patch \
+           file://postfix-install.patch \
+           file://icu-config.patch \
+           file://0001-makedefs-add-lnsl-and-lresolv-to-SYSLIBS-by-default.patch \
+           file://0001-Fixed-build-failure-with-glibc-2.30-due-to-dropped-R.patch \
            "
 SRC_URI[md5sum] = "093109941095390562166de766d4720d"
 SRC_URI[sha256sum] = "8b2ba54f9d2a049582a0ed3ee2dbe96ba57e278feea9cb4f80e1a61844e6319f"
diff --git a/meta-openembedded/meta-networking/recipes-devtools/grpc/grpc/0001-CMakeLists.txt-Fix-grpc_cpp_plugin-path-during-cross.patch b/meta-openembedded/meta-networking/recipes-devtools/grpc/grpc/0001-CMakeLists.txt-Fix-grpc_cpp_plugin-path-during-cross.patch
index 54e0b99..6cad533 100644
--- a/meta-openembedded/meta-networking/recipes-devtools/grpc/grpc/0001-CMakeLists.txt-Fix-grpc_cpp_plugin-path-during-cross.patch
+++ b/meta-openembedded/meta-networking/recipes-devtools/grpc/grpc/0001-CMakeLists.txt-Fix-grpc_cpp_plugin-path-during-cross.patch
@@ -1,8 +1,7 @@
 From 6d606f1101c1a172fb6d738d6f1865aa61849e68 Mon Sep 17 00:00:00 2001
 From: Alexey Firago <alexey_firago@mentor.com>
 Date: Fri, 20 Oct 2017 00:04:19 +0300
-Subject: [PATCH] CMakeLists.txt: Fix grpc_cpp_plugin path during
- cross-compiling or native build
+Subject: [PATCH] CMakeLists.txt: Fix grpc_cpp_plugin path during cross-compiling or native build
 
 Signed-off-by: Alexey Firago <alexey_firago@mentor.com>
 Signed-off-by: Hiram Lew <lew@avast.com>
@@ -12,11 +11,9 @@
  templates/CMakeLists.txt.template | 9 ++++++++-
  2 files changed, 16 insertions(+), 2 deletions(-)
 
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index a59fd81..cd90424 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -160,6 +160,13 @@ function(protobuf_generate_grpc_cpp)
+@@ -193,6 +193,13 @@ function(protobuf_generate_grpc_cpp)
      return()
    endif()
  
@@ -30,20 +27,9 @@
    set(_protobuf_include_path -I . -I ${_gRPC_PROTOBUF_WELLKNOWN_INCLUDE_DIR})
    foreach(FIL ${ARGN})
      get_filename_component(ABS_FIL ${FIL} ABSOLUTE)
-@@ -177,7 +184,7 @@ function(protobuf_generate_grpc_cpp)
-       COMMAND ${_gRPC_PROTOBUF_PROTOC_EXECUTABLE}
-       ARGS --grpc_out=generate_mock_code=true:${_gRPC_PROTO_GENS_DIR}
-            --cpp_out=${_gRPC_PROTO_GENS_DIR}
--           --plugin=protoc-gen-grpc=$<TARGET_FILE:grpc_cpp_plugin>
-+           --plugin=protoc-gen-grpc=${gRPC_CPP_PLUGIN}
-            ${_protobuf_include_path}
-            ${REL_FIL}
-       DEPENDS ${ABS_FIL} ${_gRPC_PROTOBUF_PROTOC} grpc_cpp_plugin
-diff --git a/templates/CMakeLists.txt.template b/templates/CMakeLists.txt.template
-index de13d02..b22bd5c 100644
 --- a/templates/CMakeLists.txt.template
 +++ b/templates/CMakeLists.txt.template
-@@ -209,6 +209,13 @@
+@@ -233,6 +233,13 @@
        return()
      endif()
  
@@ -57,15 +43,3 @@
      set(_protobuf_include_path -I . -I <%text>${_gRPC_PROTOBUF_WELLKNOWN_INCLUDE_DIR}</%text>)
      foreach(FIL <%text>${ARGN}</%text>)
        get_filename_component(ABS_FIL <%text>${FIL}</%text> ABSOLUTE)
-@@ -226,7 +233,7 @@
-         COMMAND <%text>${_gRPC_PROTOBUF_PROTOC_EXECUTABLE}</%text>
-         ARGS --grpc_out=<%text>generate_mock_code=true:${_gRPC_PROTO_GENS_DIR}</%text>
-              --cpp_out=<%text>${_gRPC_PROTO_GENS_DIR}</%text>
--             --plugin=protoc-gen-grpc=$<TARGET_FILE:grpc_cpp_plugin>
-+             --plugin=protoc-gen-grpc=${gRPC_CPP_PLUGIN}
-              <%text>${_protobuf_include_path}</%text>
-              <%text>${REL_FIL}</%text>
-         DEPENDS <%text>${ABS_FIL}</%text> <%text>${_gRPC_PROTOBUF_PROTOC}</%text> grpc_cpp_plugin
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-networking/recipes-devtools/grpc/grpc/0001-CMakeLists.txt-Fix-libraries-installation-for-Linux.patch b/meta-openembedded/meta-networking/recipes-devtools/grpc/grpc/0001-CMakeLists.txt-Fix-libraries-installation-for-Linux.patch
index 459dc45..3282b54 100644
--- a/meta-openembedded/meta-networking/recipes-devtools/grpc/grpc/0001-CMakeLists.txt-Fix-libraries-installation-for-Linux.patch
+++ b/meta-openembedded/meta-networking/recipes-devtools/grpc/grpc/0001-CMakeLists.txt-Fix-libraries-installation-for-Linux.patch
@@ -7,16 +7,13 @@
 
 Signed-off-by: Alexey Firago <alexey_firago@mentor.com>
 
-%% original patch: 0001-CMakeLists.txt-Fix-libraries-installation-for-Linux.patch
 ---
  CMakeLists.txt | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++
  1 file changed, 59 insertions(+)
 
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index a59fd818e3..5066f44a32 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -30,6 +30,15 @@ set(PACKAGE_TARNAME   "${PACKAGE_NAME}-${PACKAGE_VERSION}")
+@@ -30,6 +30,15 @@ set(PACKAGE_TARNAME   "${PACKAGE_NAME}-$
  set(PACKAGE_BUGREPORT "https://github.com/grpc/grpc/issues/")
  project(${PACKAGE_NAME} C CXX)
  
@@ -32,7 +29,7 @@
  set(gRPC_INSTALL_BINDIR "bin" CACHE STRING "Installation directory for executables")
  set(gRPC_INSTALL_LIBDIR "lib" CACHE STRING "Installation directory for libraries")
  set(gRPC_INSTALL_INCLUDEDIR "include" CACHE STRING "Installation directory for headers")
-@@ -702,6 +711,10 @@ if(WIN32 AND MSVC)
+@@ -769,6 +778,10 @@ if(WIN32 AND MSVC)
    endif()
  endif()
  
@@ -43,7 +40,7 @@
  
  target_include_directories(address_sorting
    PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
-@@ -825,6 +838,10 @@ if(WIN32 AND MSVC)
+@@ -903,6 +916,10 @@ if(WIN32 AND MSVC)
    endif()
  endif()
  
@@ -54,7 +51,7 @@
  
  target_include_directories(gpr
    PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
-@@ -1259,6 +1276,10 @@ if(WIN32 AND MSVC)
+@@ -1333,6 +1350,10 @@ if(WIN32 AND MSVC)
    endif()
  endif()
  
@@ -65,7 +62,7 @@
  
  target_include_directories(grpc
    PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
-@@ -1633,6 +1654,10 @@ if(WIN32 AND MSVC)
+@@ -1731,6 +1752,10 @@ if(WIN32 AND MSVC)
    endif()
  endif()
  
@@ -76,7 +73,7 @@
  
  target_include_directories(grpc_cronet
    PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
-@@ -2575,6 +2600,10 @@ if(WIN32 AND MSVC)
+@@ -2744,6 +2769,10 @@ if(WIN32 AND MSVC)
    endif()
  endif()
  
@@ -87,7 +84,7 @@
  
  target_include_directories(grpc_unsecure
    PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
-@@ -2791,6 +2820,10 @@ if(WIN32 AND MSVC)
+@@ -3083,6 +3112,10 @@ if(WIN32 AND MSVC)
    endif()
  endif()
  
@@ -98,7 +95,7 @@
  
  target_include_directories(grpc++
    PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
-@@ -3357,6 +3390,10 @@ if(WIN32 AND MSVC)
+@@ -3703,6 +3736,10 @@ if(WIN32 AND MSVC)
    endif()
  endif()
  
@@ -109,7 +106,7 @@
  
  target_include_directories(grpc++_cronet
    PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
-@@ -3630,6 +3667,11 @@ protobuf_generate_grpc_cpp(
+@@ -4013,6 +4050,11 @@ protobuf_generate_grpc_cpp(
    src/proto/grpc/status/status.proto
  )
  
@@ -121,7 +118,7 @@
  target_include_directories(grpc++_error_details
    PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
    PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
-@@ -3762,6 +3804,11 @@ protobuf_generate_grpc_cpp(
+@@ -4147,6 +4189,11 @@ protobuf_generate_grpc_cpp(
    src/proto/grpc/reflection/v1alpha/reflection.proto
  )
  
@@ -133,7 +130,7 @@
  target_include_directories(grpc++_reflection
    PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
    PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
-@@ -4265,6 +4312,10 @@ if(WIN32 AND MSVC)
+@@ -4704,6 +4751,10 @@ if(WIN32 AND MSVC)
    endif()
  endif()
  
@@ -144,7 +141,7 @@
  
  target_include_directories(grpc++_unsecure
    PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
-@@ -4649,6 +4700,10 @@ if(WIN32 AND MSVC)
+@@ -5124,6 +5175,10 @@ if(WIN32 AND MSVC)
    endif()
  endif()
  
@@ -155,7 +152,19 @@
  
  target_include_directories(grpc_plugin_support
    PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
-@@ -5184,6 +5239,10 @@ if(WIN32 AND MSVC)
+@@ -5190,6 +5245,11 @@ protobuf_generate_grpc_cpp(
+   src/proto/grpc/channelz/channelz.proto
+ )
+ 
++if(_gRPC_PLATFORM_LINUX)
++	set_property(TARGET grpcpp_channelz PROPERTY VERSION ${CPP_VERSION})
++  set_property(TARGET grpcpp_channelz PROPERTY SOVERSION ${CPP_VERSION_MAJOR})
++endif()
++
+ target_include_directories(grpcpp_channelz
+   PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
+   PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
+@@ -5728,6 +5788,10 @@ if(WIN32 AND MSVC)
    endif()
  endif()
  
@@ -166,6 +175,3 @@
  
  target_include_directories(grpc_csharp_ext
    PUBLIC $<INSTALL_INTERFACE:${gRPC_INSTALL_INCLUDEDIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
--- 
-2.17.1
-
diff --git a/meta-openembedded/meta-networking/recipes-devtools/grpc/grpc/0001-Define-gettid-only-for-glibc-2.30.patch b/meta-openembedded/meta-networking/recipes-devtools/grpc/grpc/0001-Define-gettid-only-for-glibc-2.30.patch
new file mode 100644
index 0000000..c6afff2
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-devtools/grpc/grpc/0001-Define-gettid-only-for-glibc-2.30.patch
@@ -0,0 +1,53 @@
+From c27261a8bc1e45ff7d7a585c79b2b871d47217e4 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 26 Jul 2019 18:56:26 -0700
+Subject: [PATCH] Define gettid() only for glibc < 2.30
+
+glibc 2.30 has added this API, so let us use that when possible
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/core/lib/gpr/log_linux.cc          | 4 ++++
+ src/core/lib/iomgr/ev_epollex_linux.cc | 7 +++++--
+ 2 files changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/src/core/lib/gpr/log_linux.cc b/src/core/lib/gpr/log_linux.cc
+index 561276f0c2..25a74864a1 100644
+--- a/src/core/lib/gpr/log_linux.cc
++++ b/src/core/lib/gpr/log_linux.cc
+@@ -40,7 +40,11 @@
+ #include <time.h>
+ #include <unistd.h>
+ 
++#if defined(__GLIBC__) && (__GLIBC_MINOR__ >= 29)
++#include <unistd.h>
++#else
+ static long gettid(void) { return syscall(__NR_gettid); }
++#endif
+ 
+ void gpr_log(const char* file, int line, gpr_log_severity severity,
+              const char* format, ...) {
+diff --git a/src/core/lib/iomgr/ev_epollex_linux.cc b/src/core/lib/iomgr/ev_epollex_linux.cc
+index 08116b3ab5..d3d3025111 100644
+--- a/src/core/lib/iomgr/ev_epollex_linux.cc
++++ b/src/core/lib/iomgr/ev_epollex_linux.cc
+@@ -1101,10 +1101,13 @@ static void end_worker(grpc_pollset* pollset, grpc_pollset_worker* worker,
+   gpr_atm_no_barrier_fetch_add(&pollset->worker_count, -1);
+ }
+ 
+-#ifndef NDEBUG
++#if !defined(DEBUG)
++#if defined(__GLIBC__) && (__GLIBC_MINOR__ >= 29)
++#include <unistd.h>
++#else
+ static long gettid(void) { return syscall(__NR_gettid); }
+ #endif
+-
++#endif
+ /* pollset->mu lock must be held by the caller before calling this.
+    The function pollset_work() may temporarily release the lock (pollset->po.mu)
+    during the course of its execution but it will always re-acquire the lock and
+-- 
+2.22.0
+
diff --git a/meta-openembedded/meta-networking/recipes-devtools/grpc/grpc_1.14.1.bb b/meta-openembedded/meta-networking/recipes-devtools/grpc/grpc_1.22.0.bb
similarity index 83%
rename from meta-openembedded/meta-networking/recipes-devtools/grpc/grpc_1.14.1.bb
rename to meta-openembedded/meta-networking/recipes-devtools/grpc/grpc_1.22.0.bb
index d236714..a80c574 100644
--- a/meta-openembedded/meta-networking/recipes-devtools/grpc/grpc_1.14.1.bb
+++ b/meta-openembedded/meta-networking/recipes-devtools/grpc/grpc_1.22.0.bb
@@ -7,16 +7,18 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
 
 DEPENDS = "gflags c-ares protobuf protobuf-native protobuf-c protobuf-c-native openssl"
-DEPENDS_append_class-target = " gtest grpc-native "
+DEPENDS_append_class-target = " googletest grpc-native "
 DEPENDS_append_class-nativesdk = " grpc-native "
 
 S = "${WORKDIR}/git"
-SRCREV = "d8020cb6daa87f1a3bb3b0c299bc081c4a3de1e8"
-BRANCH = "v1.14.x"
+SRCREV = "08fd59f039c7cf62614ab7741b3f34527af103c7"
+BRANCH = "v1.22.x"
 SRC_URI = "git://github.com/grpc/grpc.git;protocol=https;branch=${BRANCH} \
            file://0001-CMakeLists.txt-Fix-libraries-installation-for-Linux.patch \
            "
-SRC_URI_append_class-target = " file://0001-CMakeLists.txt-Fix-grpc_cpp_plugin-path-during-cross.patch"
+SRC_URI_append_class-target = " file://0001-CMakeLists.txt-Fix-grpc_cpp_plugin-path-during-cross.patch \
+                                file://0001-Define-gettid-only-for-glibc-2.30.patch \
+                               "
 SRC_URI_append_class-nativesdk = " file://0001-CMakeLists.txt-Fix-grpc_cpp_plugin-path-during-cross.patch"
 
 # Fixes build with older compilers 4.8 especially on ubuntu 14.04
diff --git a/meta-openembedded/meta-networking/recipes-extended/dlm/dlm/0001-dlm-fix-compile-error-since-xml2-config-should-not-b.patch b/meta-openembedded/meta-networking/recipes-extended/dlm/dlm/0001-dlm-fix-compile-error-since-xml2-config-should-not-b.patch
index 0a2f31d..f56359a 100644
--- a/meta-openembedded/meta-networking/recipes-extended/dlm/dlm/0001-dlm-fix-compile-error-since-xml2-config-should-not-b.patch
+++ b/meta-openembedded/meta-networking/recipes-extended/dlm/dlm/0001-dlm-fix-compile-error-since-xml2-config-should-not-b.patch
@@ -1,12 +1,12 @@
-From 9107f3bd68aef6ae456a3cad664223b4f3d00131 Mon Sep 17 00:00:00 2001
+From ad207a6f83dac390b2d95e3a8262d27292921863 Mon Sep 17 00:00:00 2001
 From: Changqing Li <changqing.li@windriver.com>
-Date: Tue, 24 Jul 2018 17:04:39 +0800
+Date: Wed, 26 Jun 2019 11:49:33 +0800
 Subject: [PATCH] dlm: fix compile error since xml2-config should not be used
 
 xml2-config is disabled, so change Makefile to use pkgconfig
 to find libxml2.
 
-Upstream-Status: Inappropriate
+Upstream-Status: Inappropriate [oe-specific]
 
 Signed-off-by: Changqing Li <changqing.li@windriver.com>
 ---
@@ -14,21 +14,21 @@
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/fence/Makefile b/fence/Makefile
-index 77bf0fd..cca0b2c 100644
+index b927879..6e16078 100644
 --- a/fence/Makefile
 +++ b/fence/Makefile
-@@ -30,11 +30,11 @@ BIN_CFLAGS += -D_GNU_SOURCE -O2 -ggdb \
- 	-fdiagnostics-show-option \
+@@ -18,11 +18,11 @@ CFLAGS += -D_GNU_SOURCE -O2 -ggdb \
+ 	-fstack-clash-protection -Wl,-z,now
  
- BIN_CFLAGS += -fPIE -DPIE
--BIN_CFLAGS += `xml2-config --cflags`
-+BIN_CFLAGS += `pkg-config libxml-2.0 --cflags`
- BIN_CFLAGS += -I../include
+ CFLAGS += -fPIE -DPIE
+-CFLAGS += `xml2-config --cflags`
++CFLAGS += `pkg-config libxml-2.0 --cflags`
+ CFLAGS += -I../include
  
- BIN_LDFLAGS += -Wl,-z,now -Wl,-z,relro -pie
--BIN_LDFLAGS += `xml2-config --libs`
-+BIN_LDFLAGS += `pkg-config libxml-2.0 --libs`
- BIN_LDFLAGS += -ldl
+ LDFLAGS += -Wl,-z,relro -pie
+-LDFLAGS += `xml2-config --libs`
++LDFLAGS += `pkg-config libxml-2.0 --libs`
+ LDFLAGS += -ldl
  
  all: $(BIN_TARGET)
 -- 
diff --git a/meta-openembedded/meta-networking/recipes-extended/dlm/dlm/respect-ldflags-also-from-bin_ldflags.patch b/meta-openembedded/meta-networking/recipes-extended/dlm/dlm/respect-ldflags-also-from-bin_ldflags.patch
deleted file mode 100644
index 6f01b21..0000000
--- a/meta-openembedded/meta-networking/recipes-extended/dlm/dlm/respect-ldflags-also-from-bin_ldflags.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 34a9182814ae565d6f430f85cfe80c05fa9f2dda Mon Sep 17 00:00:00 2001
-From: Changqing Li <changqing.li@windriver.com>
-Date: Tue, 24 Jul 2018 17:55:32 +0800
-Subject: [PATCH] respect-ldflags-also-from-bin_ldflags
-
-Upstream-Status: Inappropriate[oe-specific]
-
-update original patch to version 4.0.7
-
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
----
- dlm_controld/Makefile | 4 ++--
- dlm_tool/Makefile     | 2 +-
- 2 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/dlm_controld/Makefile b/dlm_controld/Makefile
-index cf556c9..3381730 100644
---- a/dlm_controld/Makefile
-+++ b/dlm_controld/Makefile
-@@ -55,11 +55,11 @@ BIN_CFLAGS += -D_GNU_SOURCE -O2 -ggdb \
- BIN_CFLAGS += -fPIE -DPIE
- BIN_CFLAGS += -I../include -I../libdlm
- 
--BIN_LDFLAGS += -Wl,-z,now -Wl,-z,relro -pie
-+BIN_LDFLAGS += $(LDFLAGS) -Wl,-z,now -Wl,-z,relro -pie
- BIN_LDFLAGS += -lpthread -lrt -lcpg -lcmap -lcfg -lquorum
- 
- LIB_CFLAGS += $(BIN_CFLAGS)
--LIB_LDFLAGS += -Wl,-z,relro -pie
-+LIB_LDFLAGS += $(LDFLAGS) -Wl,-z,relro -pie
- 
- ifeq ($(USE_SD_NOTIFY),yes)
- 	BIN_CFLAGS += $(shell pkg-config --cflags libsystemd) \
-diff --git a/dlm_tool/Makefile b/dlm_tool/Makefile
-index c16d8f5..a48a26f 100644
---- a/dlm_tool/Makefile
-+++ b/dlm_tool/Makefile
-@@ -32,7 +32,7 @@ BIN_CFLAGS += -D_GNU_SOURCE -O2 -ggdb \
- BIN_CFLAGS += -fPIE -DPIE
- BIN_CFLAGS += -I../include -I../libdlm -I../dlm_controld
- 
--BIN_LDFLAGS += -Wl,-z,now -Wl,-z,relro -pie
-+BIN_LDFLAGS += $(LDFLAGS) -Wl,-z,now -Wl,-z,relro -pie
- BIN_LDFLAGS += -L../libdlm -L../dlm_controld
- BIN_LDFLAGS += -lpthread -ldlm -ldlmcontrol
- 
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-networking/recipes-extended/dlm/dlm_4.0.7.bb b/meta-openembedded/meta-networking/recipes-extended/dlm/dlm_4.0.9.bb
similarity index 83%
rename from meta-openembedded/meta-networking/recipes-extended/dlm/dlm_4.0.7.bb
rename to meta-openembedded/meta-networking/recipes-extended/dlm/dlm_4.0.9.bb
index 027864a..876462d 100644
--- a/meta-openembedded/meta-networking/recipes-extended/dlm/dlm_4.0.7.bb
+++ b/meta-openembedded/meta-networking/recipes-extended/dlm/dlm_4.0.9.bb
@@ -5,15 +5,13 @@
 
 REQUIRED_DISTRO_FEATURES = "systemd"
 
-SRC_URI = "https://releases.pagure.org/dlm/${BP}.tar.gz \
-           file://respect-ldflags-also-from-bin_ldflags.patch \
+SRC_URI = "https://pagure.io/dlm/archive/dlm-${PV}/dlm-dlm-${PV}.tar.gz \
            file://0001-dlm-fix-compile-error-since-xml2-config-should-not-b.patch \
-           file://0001-dlm-fix-package-qa-error.patch \
            file://0001-Include-sys-sysmacros.h-for-major-minor-macros-in-gl.patch \
            "
 
-SRC_URI[md5sum] = "aa604a10d5ac2d3414eb89ec6984cd12"
-SRC_URI[sha256sum] = "639ddfc82369272a68d56816689736c00b8f1b6b2869a6b66b7dbf6dad86469a"
+SRC_URI[md5sum] = "4c57a941a15547859cd38fd55f66388e"
+SRC_URI[sha256sum] = "d59142e067cbd603aaf66151a04e9fa34330219680b8827c953d20821b951991"
 
 UPSTREAM_CHECK_URI = "https://pagure.io/dlm/releases"
 UPSTREAM_CHECK_REGEX = "dlm-(?P<pver>\d+(\.\d+)+)"
@@ -21,6 +19,8 @@
 LICENSE = "LGPLv2+ & GPLv2 & GPLv2+"
 LIC_FILES_CHKSUM = "file://README.license;md5=8f0bbcdd678df1bce9863492b6c8832d"
 
+S = "${WORKDIR}/dlm-dlm-${PV}"
+
 DEPENDS = "corosync systemd"
 
 inherit pkgconfig systemd distro_features_check
diff --git a/meta-openembedded/meta-networking/recipes-filter/arno-iptables-firewall/arno-iptables-firewall_2.0.3.bb b/meta-openembedded/meta-networking/recipes-filter/arno-iptables-firewall/arno-iptables-firewall_2.0.3.bb
index 040c53f..60aae21 100644
--- a/meta-openembedded/meta-networking/recipes-filter/arno-iptables-firewall/arno-iptables-firewall_2.0.3.bb
+++ b/meta-openembedded/meta-networking/recipes-filter/arno-iptables-firewall/arno-iptables-firewall_2.0.3.bb
@@ -4,11 +4,10 @@
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://gpl_license.txt;md5=11c7b65c4a4acb9d5175f7e9bf99c403"
 
-SRC_URI = "https://github.com/arno-iptables-firewall/aif/archive/${PV}.tar.gz"
-SRC_URI[md5sum] = "71271c08299aacd45ceb9c9400082d03"
-SRC_URI[sha256sum] = "e2c4fb88a25f0cae8308a3b2bb922b5e2f52f24d8309b24e15a527a6b326e703"
+SRCREV = "ffcb86c30779df58ee057dfe9a3b078adccc1513"
+SRC_URI = "git://github.com/arno-iptables-firewall/aif"
 
-S = "${WORKDIR}/aif-${PV}"
+S = "${WORKDIR}/git"
 
 inherit systemd
 
diff --git a/meta-openembedded/meta-networking/recipes-filter/libnftnl/libnftnl/0001-Move-exports-before-symbol-definition.patch b/meta-openembedded/meta-networking/recipes-filter/libnftnl/libnftnl/0001-Move-exports-before-symbol-definition.patch
index 995fd59..699d0d9 100644
--- a/meta-openembedded/meta-networking/recipes-filter/libnftnl/libnftnl/0001-Move-exports-before-symbol-definition.patch
+++ b/meta-openembedded/meta-networking/recipes-filter/libnftnl/libnftnl/0001-Move-exports-before-symbol-definition.patch
@@ -1,4 +1,4 @@
-From 21eb59fbd071ebffb8495232766824944fb521a0 Mon Sep 17 00:00:00 2001
+From 6b76c76e6b3f93c422d666f49ee68df9d5426078 Mon Sep 17 00:00:00 2001
 From: Alex Kiernan <alex.kiernan@gmail.com>
 Date: Wed, 7 Nov 2018 21:19:53 +0000
 Subject: [PATCH] Move exports before symbol definition
@@ -10,11 +10,11 @@
 
 Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
 ---
- src/flowtable.c | 54 +++++++++++++++++++++++++++---------------------------
+ src/flowtable.c | 54 ++++++++++++++++++++++++-------------------------
  1 file changed, 27 insertions(+), 27 deletions(-)
 
 diff --git a/src/flowtable.c b/src/flowtable.c
-index c1ddae4..d7434e3 100644
+index 1f7ba30..80de952 100644
 --- a/src/flowtable.c
 +++ b/src/flowtable.c
 @@ -34,12 +34,13 @@ struct nftnl_flowtable {
@@ -49,7 +49,7 @@
  void nftnl_flowtable_unset(struct nftnl_flowtable *c, uint16_t attr)
  {
  	int i;
-@@ -96,7 +97,6 @@ void nftnl_flowtable_unset(struct nftnl_flowtable *c, uint16_t attr)
+@@ -95,7 +96,6 @@ void nftnl_flowtable_unset(struct nftnl_flowtable *c, uint16_t attr)
  
  	c->flags &= ~(1 << attr);
  }
@@ -57,7 +57,7 @@
  
  static uint32_t nftnl_flowtable_validate[NFTNL_FLOWTABLE_MAX + 1] = {
  	[NFTNL_FLOWTABLE_HOOKNUM]	= sizeof(uint32_t),
-@@ -105,6 +105,7 @@ static uint32_t nftnl_flowtable_validate[NFTNL_FLOWTABLE_MAX + 1] = {
+@@ -104,6 +104,7 @@ static uint32_t nftnl_flowtable_validate[NFTNL_FLOWTABLE_MAX + 1] = {
  	[NFTNL_FLOWTABLE_FLAGS]		= sizeof(uint32_t),
  };
  
@@ -65,7 +65,7 @@
  int nftnl_flowtable_set_data(struct nftnl_flowtable *c, uint16_t attr,
  			     const void *data, uint32_t data_len)
  {
-@@ -170,32 +171,32 @@ int nftnl_flowtable_set_data(struct nftnl_flowtable *c, uint16_t attr,
+@@ -169,32 +170,32 @@ int nftnl_flowtable_set_data(struct nftnl_flowtable *c, uint16_t attr,
  	c->flags |= (1 << attr);
  	return 0;
  }
@@ -103,7 +103,7 @@
  const void *nftnl_flowtable_get_data(const struct nftnl_flowtable *c,
  				     uint16_t attr, uint32_t *data_len)
  {
-@@ -229,21 +230,21 @@ const void *nftnl_flowtable_get_data(const struct nftnl_flowtable *c,
+@@ -228,21 +229,21 @@ const void *nftnl_flowtable_get_data(const struct nftnl_flowtable *c,
  	}
  	return NULL;
  }
@@ -127,8 +127,8 @@
 +EXPORT_SYMBOL(nftnl_flowtable_get_u32);
  uint32_t nftnl_flowtable_get_u32(const struct nftnl_flowtable *c, uint16_t attr)
  {
- 	uint32_t data_len;
-@@ -253,8 +254,8 @@ uint32_t nftnl_flowtable_get_u32(const struct nftnl_flowtable *c, uint16_t attr)
+ 	uint32_t data_len = 0;
+@@ -252,8 +253,8 @@ uint32_t nftnl_flowtable_get_u32(const struct nftnl_flowtable *c, uint16_t attr)
  
  	return val ? *val : 0;
  }
@@ -137,8 +137,8 @@
 +EXPORT_SYMBOL(nftnl_flowtable_get_s32);
  int32_t nftnl_flowtable_get_s32(const struct nftnl_flowtable *c, uint16_t attr)
  {
- 	uint32_t data_len;
-@@ -264,8 +265,8 @@ int32_t nftnl_flowtable_get_s32(const struct nftnl_flowtable *c, uint16_t attr)
+ 	uint32_t data_len = 0;
+@@ -263,8 +264,8 @@ int32_t nftnl_flowtable_get_s32(const struct nftnl_flowtable *c, uint16_t attr)
  
  	return val ? *val : 0;
  }
@@ -148,7 +148,7 @@
  void nftnl_flowtable_nlmsg_build_payload(struct nlmsghdr *nlh,
  					 const struct nftnl_flowtable *c)
  {
-@@ -301,7 +302,6 @@ void nftnl_flowtable_nlmsg_build_payload(struct nlmsghdr *nlh,
+@@ -300,7 +301,6 @@ void nftnl_flowtable_nlmsg_build_payload(struct nlmsghdr *nlh,
  	if (c->flags & (1 << NFTNL_FLOWTABLE_SIZE))
  		mnl_attr_put_u32(nlh, NFTA_FLOWTABLE_SIZE, htonl(c->size));
  }
@@ -156,7 +156,7 @@
  
  static int nftnl_flowtable_parse_attr_cb(const struct nlattr *attr, void *data)
  {
-@@ -412,6 +412,7 @@ static int nftnl_flowtable_parse_hook(struct nlattr *attr, struct nftnl_flowtabl
+@@ -415,6 +415,7 @@ static int nftnl_flowtable_parse_hook(struct nlattr *attr, struct nftnl_flowtabl
  	return 0;
  }
  
@@ -164,7 +164,7 @@
  int nftnl_flowtable_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_flowtable *c)
  {
  	struct nlattr *tb[NFTA_FLOWTABLE_MAX + 1] = {};
-@@ -460,7 +461,6 @@ int nftnl_flowtable_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_flowtab
+@@ -463,7 +464,6 @@ int nftnl_flowtable_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_flowtab
  
  	return ret;
  }
@@ -172,15 +172,16 @@
  
  static const char *nftnl_hooknum2str(int family, int hooknum)
  {
-@@ -612,20 +612,20 @@ static int nftnl_flowtable_do_parse(struct nftnl_flowtable *c,
- 	return ret;
+@@ -516,14 +516,15 @@ static inline int nftnl_str2hooknum(int family, const char *hook)
+ 	return -1;
  }
  
 +EXPORT_SYMBOL(nftnl_flowtable_parse);
  int nftnl_flowtable_parse(struct nftnl_flowtable *c, enum nftnl_parse_type type,
  			  const char *data, struct nftnl_parse_err *err)
  {
- 	return nftnl_flowtable_do_parse(c, type, data, err, NFTNL_PARSE_BUFFER);
+ 	errno = EOPNOTSUPP;
+ 	return -1;
  }
 -EXPORT_SYMBOL(nftnl_flowtable_parse);
  
@@ -188,14 +189,15 @@
  int nftnl_flowtable_parse_file(struct nftnl_flowtable *c,
  			       enum nftnl_parse_type type,
  			       FILE *fp, struct nftnl_parse_err *err)
- {
- 	return nftnl_flowtable_do_parse(c, type, fp, err, NFTNL_PARSE_FILE);
+@@ -531,7 +532,6 @@ int nftnl_flowtable_parse_file(struct nftnl_flowtable *c,
+ 	errno = EOPNOTSUPP;
+ 	return -1;
  }
 -EXPORT_SYMBOL(nftnl_flowtable_parse_file);
  
- static int nftnl_flowtable_export(char *buf, size_t size,
- 				  const struct nftnl_flowtable *c, int type)
-@@ -720,6 +720,7 @@ static int nftnl_flowtable_cmd_snprintf(char *buf, size_t size,
+ static int nftnl_flowtable_snprintf_default(char *buf, size_t size,
+ 					    const struct nftnl_flowtable *c)
+@@ -587,6 +587,7 @@ static int nftnl_flowtable_cmd_snprintf(char *buf, size_t size,
  	return offset;
  }
  
@@ -203,7 +205,7 @@
  int nftnl_flowtable_snprintf(char *buf, size_t size, const struct nftnl_flowtable *c,
  			 uint32_t type, uint32_t flags)
  {
-@@ -729,7 +730,6 @@ int nftnl_flowtable_snprintf(char *buf, size_t size, const struct nftnl_flowtabl
+@@ -596,7 +597,6 @@ int nftnl_flowtable_snprintf(char *buf, size_t size, const struct nftnl_flowtabl
  	return nftnl_flowtable_cmd_snprintf(buf, size, c, nftnl_flag2cmd(flags),
  					    type, flags);
  }
@@ -211,7 +213,7 @@
  
  static int nftnl_flowtable_do_snprintf(char *buf, size_t size, const void *c,
  				   uint32_t cmd, uint32_t type, uint32_t flags)
-@@ -737,18 +737,19 @@ static int nftnl_flowtable_do_snprintf(char *buf, size_t size, const void *c,
+@@ -604,18 +604,19 @@ static int nftnl_flowtable_do_snprintf(char *buf, size_t size, const void *c,
  	return nftnl_flowtable_snprintf(buf, size, c, type, flags);
  }
  
@@ -232,7 +234,7 @@
  struct nftnl_flowtable_list *nftnl_flowtable_list_alloc(void)
  {
  	struct nftnl_flowtable_list *list;
-@@ -761,8 +762,8 @@ struct nftnl_flowtable_list *nftnl_flowtable_list_alloc(void)
+@@ -628,8 +629,8 @@ struct nftnl_flowtable_list *nftnl_flowtable_list_alloc(void)
  
  	return list;
  }
@@ -242,7 +244,7 @@
  void nftnl_flowtable_list_free(struct nftnl_flowtable_list *list)
  {
  	struct nftnl_flowtable *s, *tmp;
-@@ -773,34 +774,34 @@ void nftnl_flowtable_list_free(struct nftnl_flowtable_list *list)
+@@ -640,34 +641,34 @@ void nftnl_flowtable_list_free(struct nftnl_flowtable_list *list)
  	}
  	xfree(list);
  }
@@ -282,8 +284,11 @@
  int nftnl_flowtable_list_foreach(struct nftnl_flowtable_list *flowtable_list,
  				 int (*cb)(struct nftnl_flowtable *t, void *data), void *data)
  {
-@@ -814,4 +815,3 @@ int nftnl_flowtable_list_foreach(struct nftnl_flowtable_list *flowtable_list,
+@@ -681,4 +682,3 @@ int nftnl_flowtable_list_foreach(struct nftnl_flowtable_list *flowtable_list,
  	}
  	return 0;
  }
 -EXPORT_SYMBOL(nftnl_flowtable_list_foreach);
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-networking/recipes-filter/libnftnl/libnftnl/0002-avoid-naming-local-function-as-one-of-printf-family.patch b/meta-openembedded/meta-networking/recipes-filter/libnftnl/libnftnl/0002-avoid-naming-local-function-as-one-of-printf-family.patch
index e7e8f6f..561f0e5 100644
--- a/meta-openembedded/meta-networking/recipes-filter/libnftnl/libnftnl/0002-avoid-naming-local-function-as-one-of-printf-family.patch
+++ b/meta-openembedded/meta-networking/recipes-filter/libnftnl/libnftnl/0002-avoid-naming-local-function-as-one-of-printf-family.patch
@@ -1,4 +1,4 @@
-From 5ea9fa9d345005f2f53b1b598edb85f5f24ca9da Mon Sep 17 00:00:00 2001
+From 9e2c810ebc3c917ea7483205178416e9eaf952fe Mon Sep 17 00:00:00 2001
 From: Alex Kiernan <alex.kiernan@gmail.com>
 Date: Wed, 7 Nov 2018 19:41:54 +0000
 Subject: [PATCH] avoid naming local function as one of printf family
@@ -35,6 +35,7 @@
  src/expr/nat.c          | 2 +-
  src/expr/numgen.c       | 2 +-
  src/expr/objref.c       | 2 +-
+ src/expr/osf.c          | 2 +-
  src/expr/payload.c      | 2 +-
  src/expr/queue.c        | 2 +-
  src/expr/quota.c        | 2 +-
@@ -44,44 +45,50 @@
  src/expr/rt.c           | 2 +-
  src/expr/socket.c       | 2 +-
  src/expr/target.c       | 2 +-
+ src/expr/tproxy.c       | 2 +-
+ src/expr/tunnel.c       | 2 +-
+ src/expr/xfrm.c         | 2 +-
  src/obj/counter.c       | 2 +-
  src/obj/ct_helper.c     | 2 +-
+ src/obj/ct_timeout.c    | 2 +-
  src/obj/limit.c         | 2 +-
  src/obj/quota.c         | 2 +-
- src/object.c            | 4 ++--
- 40 files changed, 42 insertions(+), 42 deletions(-)
+ src/obj/secmark.c       | 2 +-
+ src/obj/tunnel.c        | 2 +-
+ src/object.c            | 2 +-
+ 47 files changed, 48 insertions(+), 48 deletions(-)
 
 diff --git a/include/expr_ops.h b/include/expr_ops.h
-index e639390..c4fe050 100644
+index a7f1b9a..d2946de 100644
 --- a/include/expr_ops.h
 +++ b/include/expr_ops.h
-@@ -18,7 +18,7 @@ struct expr_ops {
+@@ -17,7 +17,7 @@ struct expr_ops {
  	const void *(*get)(const struct nftnl_expr *e, uint16_t type, uint32_t *data_len);
  	int 	(*parse)(struct nftnl_expr *e, struct nlattr *attr);
  	void	(*build)(struct nlmsghdr *nlh, const struct nftnl_expr *e);
 -	int	(*snprintf)(char *buf, size_t len, uint32_t type, uint32_t flags, const struct nftnl_expr *e);
 +	int	(*snprintf_)(char *buf, size_t len, uint32_t type, uint32_t flags, const struct nftnl_expr *e);
- 	int	(*json_parse)(struct nftnl_expr *e, json_t *data,
- 			      struct nftnl_parse_err *err);
  };
+ 
+ struct expr_ops *nftnl_expr_ops_lookup(const char *name);
 diff --git a/include/obj.h b/include/obj.h
-index 4a728c8..4c20bd1 100644
+index 35b5c40..decd1ce 100644
 --- a/include/obj.h
 +++ b/include/obj.h
-@@ -55,7 +55,7 @@ struct obj_ops {
+@@ -92,7 +92,7 @@ struct obj_ops {
  	const void *(*get)(const struct nftnl_obj *e, uint16_t type, uint32_t *data_len);
  	int	(*parse)(struct nftnl_obj *e, struct nlattr *attr);
  	void	(*build)(struct nlmsghdr *nlh, const struct nftnl_obj *e);
 -	int	(*snprintf)(char *buf, size_t len, uint32_t type, uint32_t flags, const struct nftnl_obj *e);
 +	int	(*snprintf_)(char *buf, size_t len, uint32_t type, uint32_t flags, const struct nftnl_obj *e);
- 	int	(*json_parse)(struct nftnl_obj *e, json_t *data,
- 			      struct nftnl_parse_err *err);
  };
+ 
+ extern struct obj_ops obj_ops_counter;
 diff --git a/src/expr.c b/src/expr.c
-index 62565e0..2489c30 100644
+index 80c4c36..b698a60 100644
 --- a/src/expr.c
 +++ b/src/expr.c
-@@ -285,10 +285,10 @@ int nftnl_expr_snprintf(char *buf, size_t size, const struct nftnl_expr *expr,
+@@ -275,10 +275,10 @@ int nftnl_expr_snprintf(char *buf, size_t size, const struct nftnl_expr *expr,
  	if (size)
  		buf[0] = '\0';
  
@@ -95,370 +102,351 @@
  
  	return offset;
 diff --git a/src/expr/bitwise.c b/src/expr/bitwise.c
-index a89734b..f8360b1 100644
+index c9d40df..27d644b 100644
 --- a/src/expr/bitwise.c
 +++ b/src/expr/bitwise.c
-@@ -299,6 +299,6 @@ struct expr_ops expr_ops_bitwise = {
+@@ -219,5 +219,5 @@ struct expr_ops expr_ops_bitwise = {
  	.get		= nftnl_expr_bitwise_get,
  	.parse		= nftnl_expr_bitwise_parse,
  	.build		= nftnl_expr_bitwise_build,
 -	.snprintf	= nftnl_expr_bitwise_snprintf,
 +	.snprintf_	= nftnl_expr_bitwise_snprintf,
- 	.json_parse	= nftnl_expr_bitwise_json_parse,
  };
 diff --git a/src/expr/byteorder.c b/src/expr/byteorder.c
-index 47c04cf..61f733f 100644
+index efdfa2b..7ae9dfb 100644
 --- a/src/expr/byteorder.c
 +++ b/src/expr/byteorder.c
-@@ -314,6 +314,6 @@ struct expr_ops expr_ops_byteorder = {
+@@ -234,5 +234,5 @@ struct expr_ops expr_ops_byteorder = {
  	.get		= nftnl_expr_byteorder_get,
  	.parse		= nftnl_expr_byteorder_parse,
  	.build		= nftnl_expr_byteorder_build,
 -	.snprintf	= nftnl_expr_byteorder_snprintf,
 +	.snprintf_	= nftnl_expr_byteorder_snprintf,
- 	.json_parse	= nftnl_expr_byteorder_json_parse,
  };
 diff --git a/src/expr/cmp.c b/src/expr/cmp.c
-index b26d0eb..522c7be 100644
+index 86d7842..e3be442 100644
 --- a/src/expr/cmp.c
 +++ b/src/expr/cmp.c
-@@ -284,6 +284,6 @@ struct expr_ops expr_ops_cmp = {
+@@ -216,5 +216,5 @@ struct expr_ops expr_ops_cmp = {
  	.get		= nftnl_expr_cmp_get,
  	.parse		= nftnl_expr_cmp_parse,
  	.build		= nftnl_expr_cmp_build,
 -	.snprintf	= nftnl_expr_cmp_snprintf,
 +	.snprintf_	= nftnl_expr_cmp_snprintf,
- 	.json_parse	= nftnl_expr_cmp_json_parse,
  };
 diff --git a/src/expr/connlimit.c b/src/expr/connlimit.c
-index 60965b5..4e41866 100644
+index 53af93b..6c8bc40 100644
 --- a/src/expr/connlimit.c
 +++ b/src/expr/connlimit.c
-@@ -202,6 +202,6 @@ struct expr_ops expr_ops_connlimit = {
+@@ -149,5 +149,5 @@ struct expr_ops expr_ops_connlimit = {
  	.get		= nftnl_expr_connlimit_get,
  	.parse		= nftnl_expr_connlimit_parse,
  	.build		= nftnl_expr_connlimit_build,
 -	.snprintf	= nftnl_expr_connlimit_snprintf,
-+	.snprintf_	= nftnl_expr_connlimit_snprintf,
- 	.json_parse	= nftnl_expr_connlimit_json_parse,
++	.snprintf_  = nftnl_expr_connlimit_snprintf,
  };
 diff --git a/src/expr/counter.c b/src/expr/counter.c
-index 21901e8..9fd7655 100644
+index 89a602e..a32a69e 100644
 --- a/src/expr/counter.c
 +++ b/src/expr/counter.c
-@@ -200,6 +200,6 @@ struct expr_ops expr_ops_counter = {
+@@ -147,5 +147,5 @@ struct expr_ops expr_ops_counter = {
  	.get		= nftnl_expr_counter_get,
  	.parse		= nftnl_expr_counter_parse,
  	.build		= nftnl_expr_counter_build,
 -	.snprintf	= nftnl_expr_counter_snprintf,
 +	.snprintf_	= nftnl_expr_counter_snprintf,
- 	.json_parse	= nftnl_expr_counter_json_parse,
  };
 diff --git a/src/expr/ct.c b/src/expr/ct.c
-index 39e9be6..b363f7c 100644
+index b9ca2dc..6fbed1d 100644
 --- a/src/expr/ct.c
 +++ b/src/expr/ct.c
-@@ -357,6 +357,6 @@ struct expr_ops expr_ops_ct = {
+@@ -272,5 +272,5 @@ struct expr_ops expr_ops_ct = {
  	.get		= nftnl_expr_ct_get,
  	.parse		= nftnl_expr_ct_parse,
  	.build		= nftnl_expr_ct_build,
 -	.snprintf	= nftnl_expr_ct_snprintf,
 +	.snprintf_	= nftnl_expr_ct_snprintf,
- 	.json_parse	= nftnl_expr_ct_json_parse,
  };
 diff --git a/src/expr/dup.c b/src/expr/dup.c
-index ed8e620..8d603e3 100644
+index 2bb35e5..d9bd4b1 100644
 --- a/src/expr/dup.c
 +++ b/src/expr/dup.c
-@@ -206,6 +206,6 @@ struct expr_ops expr_ops_dup = {
+@@ -154,5 +154,5 @@ struct expr_ops expr_ops_dup = {
  	.get		= nftnl_expr_dup_get,
  	.parse		= nftnl_expr_dup_parse,
  	.build		= nftnl_expr_dup_build,
 -	.snprintf	= nftnl_expr_dup_snprintf,
 +	.snprintf_	= nftnl_expr_dup_snprintf,
- 	.json_parse	= nftnl_expr_dup_json_parse,
  };
 diff --git a/src/expr/dynset.c b/src/expr/dynset.c
-index 160d0e1..a43f4da 100644
+index 68115ba..6e43bb4 100644
 --- a/src/expr/dynset.c
 +++ b/src/expr/dynset.c
-@@ -368,6 +368,6 @@ struct expr_ops expr_ops_dynset = {
+@@ -288,5 +288,5 @@ struct expr_ops expr_ops_dynset = {
  	.get		= nftnl_expr_dynset_get,
  	.parse		= nftnl_expr_dynset_parse,
  	.build		= nftnl_expr_dynset_build,
 -	.snprintf	= nftnl_expr_dynset_snprintf,
 +	.snprintf_	= nftnl_expr_dynset_snprintf,
- 	.json_parse	= nftnl_expr_dynset_json_parse,
  };
 diff --git a/src/expr/exthdr.c b/src/expr/exthdr.c
-index 75cafbc..89ea7f5 100644
+index bef453e..f2696d6 100644
 --- a/src/expr/exthdr.c
 +++ b/src/expr/exthdr.c
-@@ -385,6 +385,6 @@ struct expr_ops expr_ops_exthdr = {
+@@ -271,5 +271,5 @@ struct expr_ops expr_ops_exthdr = {
  	.get		= nftnl_expr_exthdr_get,
  	.parse		= nftnl_expr_exthdr_parse,
  	.build		= nftnl_expr_exthdr_build,
 -	.snprintf	= nftnl_expr_exthdr_snprintf,
 +	.snprintf_	= nftnl_expr_exthdr_snprintf,
- 	.json_parse	= nftnl_expr_exthdr_json_parse,
  };
 diff --git a/src/expr/fib.c b/src/expr/fib.c
-index b922b26..ece4645 100644
+index 9475af4..8e7090d 100644
 --- a/src/expr/fib.c
 +++ b/src/expr/fib.c
-@@ -274,6 +274,6 @@ struct expr_ops expr_ops_fib = {
+@@ -213,5 +213,5 @@ struct expr_ops expr_ops_fib = {
  	.get		= nftnl_expr_fib_get,
  	.parse		= nftnl_expr_fib_parse,
  	.build		= nftnl_expr_fib_build,
 -	.snprintf	= nftnl_expr_fib_snprintf,
 +	.snprintf_	= nftnl_expr_fib_snprintf,
- 	.json_parse	= nftnl_expr_fib_json_parse,
  };
 diff --git a/src/expr/flow_offload.c b/src/expr/flow_offload.c
-index a2001c9..9cdbc21 100644
+index 6ccec9a..c2f2478 100644
 --- a/src/expr/flow_offload.c
 +++ b/src/expr/flow_offload.c
-@@ -179,6 +179,6 @@ struct expr_ops expr_ops_flow = {
+@@ -134,5 +134,5 @@ struct expr_ops expr_ops_flow = {
  	.get		= nftnl_expr_flow_get,
  	.parse		= nftnl_expr_flow_parse,
  	.build		= nftnl_expr_flow_build,
 -	.snprintf	= nftnl_expr_flow_snprintf,
 +	.snprintf_	= nftnl_expr_flow_snprintf,
- 	.json_parse	= nftnl_expr_flow_json_parse,
  };
 diff --git a/src/expr/fwd.c b/src/expr/fwd.c
-index 9021606..7178f43 100644
+index cff8235..bcd7d3f 100644
 --- a/src/expr/fwd.c
 +++ b/src/expr/fwd.c
-@@ -233,6 +233,6 @@ struct expr_ops expr_ops_fwd = {
+@@ -174,5 +174,5 @@ struct expr_ops expr_ops_fwd = {
  	.get		= nftnl_expr_fwd_get,
  	.parse		= nftnl_expr_fwd_parse,
  	.build		= nftnl_expr_fwd_build,
 -	.snprintf	= nftnl_expr_fwd_snprintf,
 +	.snprintf_	= nftnl_expr_fwd_snprintf,
- 	.json_parse	= nftnl_expr_fwd_json_parse,
  };
 diff --git a/src/expr/hash.c b/src/expr/hash.c
-index 415537e..186c5b0 100644
+index 2c801d2..a9f6e7e 100644
 --- a/src/expr/hash.c
 +++ b/src/expr/hash.c
-@@ -383,6 +383,6 @@ struct expr_ops expr_ops_hash = {
+@@ -241,5 +241,5 @@ struct expr_ops expr_ops_hash = {
  	.get		= nftnl_expr_hash_get,
  	.parse		= nftnl_expr_hash_parse,
  	.build		= nftnl_expr_hash_build,
 -	.snprintf	= nftnl_expr_hash_snprintf,
 +	.snprintf_	= nftnl_expr_hash_snprintf,
- 	.json_parse	= nftnl_expr_hash_json_parse,
  };
 diff --git a/src/expr/immediate.c b/src/expr/immediate.c
-index b0570bd..91ccbdc 100644
+index 47106ae..ea86c88 100644
 --- a/src/expr/immediate.c
 +++ b/src/expr/immediate.c
-@@ -316,6 +316,6 @@ struct expr_ops expr_ops_immediate = {
+@@ -235,5 +235,5 @@ struct expr_ops expr_ops_immediate = {
  	.get		= nftnl_expr_immediate_get,
  	.parse		= nftnl_expr_immediate_parse,
  	.build		= nftnl_expr_immediate_build,
 -	.snprintf	= nftnl_expr_immediate_snprintf,
 +	.snprintf_	= nftnl_expr_immediate_snprintf,
- 	.json_parse	= nftnl_expr_immediate_json_parse,
  };
 diff --git a/src/expr/limit.c b/src/expr/limit.c
-index 856ab18..e71fc2f 100644
+index 5872e27..0ce482f 100644
 --- a/src/expr/limit.c
 +++ b/src/expr/limit.c
-@@ -285,6 +285,6 @@ struct expr_ops expr_ops_limit = {
+@@ -216,5 +216,5 @@ struct expr_ops expr_ops_limit = {
  	.get		= nftnl_expr_limit_get,
  	.parse		= nftnl_expr_limit_parse,
  	.build		= nftnl_expr_limit_build,
 -	.snprintf	= nftnl_expr_limit_snprintf,
 +	.snprintf_	= nftnl_expr_limit_snprintf,
- 	.json_parse	= nftnl_expr_limit_json_parse,
  };
 diff --git a/src/expr/log.c b/src/expr/log.c
-index 86d9651..5769c1c 100644
+index bbe43d2..5506bc2 100644
 --- a/src/expr/log.c
 +++ b/src/expr/log.c
-@@ -353,6 +353,6 @@ struct expr_ops expr_ops_log = {
+@@ -267,5 +267,5 @@ struct expr_ops expr_ops_log = {
  	.get		= nftnl_expr_log_get,
  	.parse		= nftnl_expr_log_parse,
  	.build		= nftnl_expr_log_build,
 -	.snprintf	= nftnl_expr_log_snprintf,
 +	.snprintf_	= nftnl_expr_log_snprintf,
- 	.json_parse	= nftnl_expr_log_json_parse,
  };
 diff --git a/src/expr/lookup.c b/src/expr/lookup.c
-index 5fcb81f..b2f0dd6 100644
+index a495ac0..678868c 100644
 --- a/src/expr/lookup.c
 +++ b/src/expr/lookup.c
-@@ -292,6 +292,6 @@ struct expr_ops expr_ops_lookup = {
+@@ -221,5 +221,5 @@ struct expr_ops expr_ops_lookup = {
  	.get		= nftnl_expr_lookup_get,
  	.parse		= nftnl_expr_lookup_parse,
  	.build		= nftnl_expr_lookup_build,
 -	.snprintf	= nftnl_expr_lookup_snprintf,
 +	.snprintf_	= nftnl_expr_lookup_snprintf,
- 	.json_parse	= nftnl_expr_lookup_json_parse,
  };
 diff --git a/src/expr/masq.c b/src/expr/masq.c
-index 7c235d3..adec325 100644
+index f6f3ceb..88292a6 100644
 --- a/src/expr/masq.c
 +++ b/src/expr/masq.c
-@@ -228,6 +228,6 @@ struct expr_ops expr_ops_masq = {
+@@ -169,5 +169,5 @@ struct expr_ops expr_ops_masq = {
  	.get		= nftnl_expr_masq_get,
  	.parse		= nftnl_expr_masq_parse,
  	.build		= nftnl_expr_masq_build,
 -	.snprintf	= nftnl_expr_masq_snprintf,
 +	.snprintf_	= nftnl_expr_masq_snprintf,
- 	.json_parse	= nftnl_expr_masq_json_parse,
  };
 diff --git a/src/expr/match.c b/src/expr/match.c
-index dd09e1e..f0d8868 100644
+index 4fa74b2..249c6b5 100644
 --- a/src/expr/match.c
 +++ b/src/expr/match.c
-@@ -249,6 +249,6 @@ struct expr_ops expr_ops_match = {
+@@ -198,5 +198,5 @@ struct expr_ops expr_ops_match = {
  	.get		= nftnl_expr_match_get,
  	.parse		= nftnl_expr_match_parse,
  	.build		= nftnl_expr_match_build,
 -	.snprintf	= nftnl_expr_match_snprintf,
 +	.snprintf_	= nftnl_expr_match_snprintf,
- 	.json_parse 	= nftnl_expr_match_json_parse,
  };
 diff --git a/src/expr/meta.c b/src/expr/meta.c
-index de82105..91f1ebb 100644
+index ffcc896..5eaeb68 100644
 --- a/src/expr/meta.c
 +++ b/src/expr/meta.c
-@@ -291,6 +291,6 @@ struct expr_ops expr_ops_meta = {
+@@ -222,5 +222,5 @@ struct expr_ops expr_ops_meta = {
  	.get		= nftnl_expr_meta_get,
  	.parse		= nftnl_expr_meta_parse,
  	.build		= nftnl_expr_meta_build,
 -	.snprintf	= nftnl_expr_meta_snprintf,
 +	.snprintf_	= nftnl_expr_meta_snprintf,
- 	.json_parse 	= nftnl_expr_meta_json_parse,
  };
 diff --git a/src/expr/nat.c b/src/expr/nat.c
-index 9271303..427c282 100644
+index 6b7d50e..be4a579 100644
 --- a/src/expr/nat.c
 +++ b/src/expr/nat.c
-@@ -384,6 +384,6 @@ struct expr_ops expr_ops_nat = {
+@@ -279,5 +279,5 @@ struct expr_ops expr_ops_nat = {
  	.get		= nftnl_expr_nat_get,
  	.parse		= nftnl_expr_nat_parse,
  	.build		= nftnl_expr_nat_build,
 -	.snprintf	= nftnl_expr_nat_snprintf,
 +	.snprintf_	= nftnl_expr_nat_snprintf,
- 	.json_parse	= nftnl_expr_nat_json_parse,
  };
 diff --git a/src/expr/numgen.c b/src/expr/numgen.c
-index 5336fde..8e0479a 100644
+index 4e0d541..5995ee3 100644
 --- a/src/expr/numgen.c
 +++ b/src/expr/numgen.c
-@@ -313,6 +313,6 @@ struct expr_ops expr_ops_ng = {
+@@ -195,5 +195,5 @@ struct expr_ops expr_ops_ng = {
  	.get		= nftnl_expr_ng_get,
  	.parse		= nftnl_expr_ng_parse,
  	.build		= nftnl_expr_ng_build,
 -	.snprintf	= nftnl_expr_ng_snprintf,
 +	.snprintf_	= nftnl_expr_ng_snprintf,
- 	.json_parse	= nftnl_expr_ng_json_parse,
  };
 diff --git a/src/expr/objref.c b/src/expr/objref.c
-index 64ee863..4504488 100644
+index 7388b18..e673ffd 100644
 --- a/src/expr/objref.c
 +++ b/src/expr/objref.c
-@@ -278,6 +278,6 @@ struct expr_ops expr_ops_objref = {
+@@ -210,5 +210,5 @@ struct expr_ops expr_ops_objref = {
  	.get		= nftnl_expr_objref_get,
  	.parse		= nftnl_expr_objref_parse,
  	.build		= nftnl_expr_objref_build,
 -	.snprintf	= nftnl_expr_objref_snprintf,
 +	.snprintf_	= nftnl_expr_objref_snprintf,
- 	.json_parse	= nftnl_expr_objref_json_parse,
+ };
+diff --git a/src/expr/osf.c b/src/expr/osf.c
+index 98d0df9..618b46e 100644
+--- a/src/expr/osf.c
++++ b/src/expr/osf.c
+@@ -161,5 +161,5 @@ struct expr_ops expr_ops_osf = {
+ 	.get		= nftnl_expr_osf_get,
+ 	.parse		= nftnl_expr_osf_parse,
+ 	.build		= nftnl_expr_osf_build,
+-	.snprintf	= nftnl_expr_osf_snprintf,
++	.snprintf_	= nftnl_expr_osf_snprintf,
  };
 diff --git a/src/expr/payload.c b/src/expr/payload.c
-index 91e1587..894ac08 100644
+index 2192dad..37aacc4 100644
 --- a/src/expr/payload.c
 +++ b/src/expr/payload.c
-@@ -348,6 +348,6 @@ struct expr_ops expr_ops_payload = {
+@@ -266,5 +266,5 @@ struct expr_ops expr_ops_payload = {
  	.get		= nftnl_expr_payload_get,
  	.parse		= nftnl_expr_payload_parse,
  	.build		= nftnl_expr_payload_build,
 -	.snprintf	= nftnl_expr_payload_snprintf,
 +	.snprintf_	= nftnl_expr_payload_snprintf,
- 	.json_parse	= nftnl_expr_payload_json_parse,
  };
 diff --git a/src/expr/queue.c b/src/expr/queue.c
-index a392a27..ee26c10 100644
+index 051ef71..b06feff 100644
 --- a/src/expr/queue.c
 +++ b/src/expr/queue.c
-@@ -275,6 +275,6 @@ struct expr_ops expr_ops_queue = {
+@@ -207,5 +207,5 @@ struct expr_ops expr_ops_queue = {
  	.get		= nftnl_expr_queue_get,
  	.parse		= nftnl_expr_queue_parse,
  	.build		= nftnl_expr_queue_build,
 -	.snprintf	= nftnl_expr_queue_snprintf,
 +	.snprintf_	= nftnl_expr_queue_snprintf,
- 	.json_parse	= nftnl_expr_queue_json_parse,
  };
 diff --git a/src/expr/quota.c b/src/expr/quota.c
-index 667e6e1..ff5d182 100644
+index 39a92e6..41797be 100644
 --- a/src/expr/quota.c
 +++ b/src/expr/quota.c
-@@ -203,6 +203,6 @@ struct expr_ops expr_ops_quota = {
+@@ -161,5 +161,5 @@ struct expr_ops expr_ops_quota = {
  	.get		= nftnl_expr_quota_get,
  	.parse		= nftnl_expr_quota_parse,
  	.build		= nftnl_expr_quota_build,
 -	.snprintf	= nftnl_expr_quota_snprintf,
 +	.snprintf_	= nftnl_expr_quota_snprintf,
- 	.json_parse	= nftnl_expr_quota_json_parse,
  };
 diff --git a/src/expr/range.c b/src/expr/range.c
-index b2789ff..8910f8a 100644
+index d1d5083..b619cdf 100644
 --- a/src/expr/range.c
 +++ b/src/expr/range.c
-@@ -283,6 +283,6 @@ struct expr_ops expr_ops_range = {
+@@ -227,5 +227,5 @@ struct expr_ops expr_ops_range = {
  	.get		= nftnl_expr_range_get,
  	.parse		= nftnl_expr_range_parse,
  	.build		= nftnl_expr_range_build,
 -	.snprintf	= nftnl_expr_range_snprintf,
 +	.snprintf_	= nftnl_expr_range_snprintf,
- 	.json_parse	= nftnl_expr_range_json_parse,
  };
 diff --git a/src/expr/redir.c b/src/expr/redir.c
-index b2aa345..41b77ab 100644
+index 477659a..5c4ebeb 100644
 --- a/src/expr/redir.c
 +++ b/src/expr/redir.c
-@@ -242,6 +242,6 @@ struct expr_ops expr_ops_redir = {
+@@ -181,5 +181,5 @@ struct expr_ops expr_ops_redir = {
  	.get		= nftnl_expr_redir_get,
  	.parse		= nftnl_expr_redir_parse,
  	.build		= nftnl_expr_redir_build,
 -	.snprintf	= nftnl_expr_redir_snprintf,
 +	.snprintf_	= nftnl_expr_redir_snprintf,
- 	.json_parse	= nftnl_expr_redir_json_parse,
  };
 diff --git a/src/expr/reject.c b/src/expr/reject.c
-index 11d8b20..b10e729 100644
+index 141942e..a98990d 100644
 --- a/src/expr/reject.c
 +++ b/src/expr/reject.c
-@@ -200,6 +200,6 @@ struct expr_ops expr_ops_reject = {
+@@ -148,5 +148,5 @@ struct expr_ops expr_ops_reject = {
  	.get		= nftnl_expr_reject_get,
  	.parse		= nftnl_expr_reject_parse,
  	.build		= nftnl_expr_reject_build,
 -	.snprintf	= nftnl_expr_reject_snprintf,
 +	.snprintf_	= nftnl_expr_reject_snprintf,
- 	.json_parse	= nftnl_expr_reject_json_parse,
  };
 diff --git a/src/expr/rt.c b/src/expr/rt.c
-index c3c92c7..688a042 100644
+index 0fce72d..32ace19 100644
 --- a/src/expr/rt.c
 +++ b/src/expr/rt.c
-@@ -235,6 +235,6 @@ struct expr_ops expr_ops_rt = {
+@@ -177,5 +177,5 @@ struct expr_ops expr_ops_rt = {
  	.get		= nftnl_expr_rt_get,
  	.parse		= nftnl_expr_rt_parse,
  	.build		= nftnl_expr_rt_build,
 -	.snprintf	= nftnl_expr_rt_snprintf,
 +	.snprintf_	= nftnl_expr_rt_snprintf,
- 	.json_parse	= nftnl_expr_rt_json_parse,
  };
 diff --git a/src/expr/socket.c b/src/expr/socket.c
-index db160a1..4c50011 100644
+index 96550d5..2394dbf 100644
 --- a/src/expr/socket.c
 +++ b/src/expr/socket.c
-@@ -204,5 +204,5 @@ struct expr_ops expr_ops_socket = {
+@@ -174,5 +174,5 @@ struct expr_ops expr_ops_socket = {
  	.get		= nftnl_expr_socket_get,
  	.parse		= nftnl_expr_socket_parse,
  	.build		= nftnl_expr_socket_build,
@@ -466,79 +454,131 @@
 +	.snprintf_	= nftnl_expr_socket_snprintf,
  };
 diff --git a/src/expr/target.c b/src/expr/target.c
-index ed4bf7d..2ef4078 100644
+index 9100038..7180085 100644
 --- a/src/expr/target.c
 +++ b/src/expr/target.c
-@@ -249,6 +249,6 @@ struct expr_ops expr_ops_target = {
+@@ -198,5 +198,5 @@ struct expr_ops expr_ops_target = {
  	.get		= nftnl_expr_target_get,
  	.parse		= nftnl_expr_target_parse,
  	.build		= nftnl_expr_target_build,
 -	.snprintf	= nftnl_expr_target_snprintf,
 +	.snprintf_	= nftnl_expr_target_snprintf,
- 	.json_parse	= nftnl_expr_target_json_parse,
+ };
+diff --git a/src/expr/tproxy.c b/src/expr/tproxy.c
+index 3827b75..feabbbe 100644
+--- a/src/expr/tproxy.c
++++ b/src/expr/tproxy.c
+@@ -183,5 +183,5 @@ struct expr_ops expr_ops_tproxy = {
+ 	.get		= nftnl_expr_tproxy_get,
+ 	.parse		= nftnl_expr_tproxy_parse,
+ 	.build		= nftnl_expr_tproxy_build,
+-	.snprintf	= nftnl_expr_tproxy_snprintf,
++	.snprintf_	= nftnl_expr_tproxy_snprintf,
+ };
+diff --git a/src/expr/tunnel.c b/src/expr/tunnel.c
+index b2b8d72..1ed46d3 100644
+--- a/src/expr/tunnel.c
++++ b/src/expr/tunnel.c
+@@ -173,5 +173,5 @@ struct expr_ops expr_ops_tunnel = {
+ 	.get		= nftnl_expr_tunnel_get,
+ 	.parse		= nftnl_expr_tunnel_parse,
+ 	.build		= nftnl_expr_tunnel_build,
+-	.snprintf	= nftnl_expr_tunnel_snprintf,
++	.snprintf_	= nftnl_expr_tunnel_snprintf,
+ };
+diff --git a/src/expr/xfrm.c b/src/expr/xfrm.c
+index 8fe5438..b6b2772 100644
+--- a/src/expr/xfrm.c
++++ b/src/expr/xfrm.c
+@@ -239,5 +239,5 @@ struct expr_ops expr_ops_xfrm = {
+ 	.get		= nftnl_expr_xfrm_get,
+ 	.parse		= nftnl_expr_xfrm_parse,
+ 	.build		= nftnl_expr_xfrm_build,
+-	.snprintf	= nftnl_expr_xfrm_snprintf,
++	.snprintf_	= nftnl_expr_xfrm_snprintf,
  };
 diff --git a/src/obj/counter.c b/src/obj/counter.c
-index 332bb2b..edeb7be 100644
+index 1baba4e..3710bce 100644
 --- a/src/obj/counter.c
 +++ b/src/obj/counter.c
-@@ -182,6 +182,6 @@ struct obj_ops obj_ops_counter = {
+@@ -145,5 +145,5 @@ struct obj_ops obj_ops_counter = {
  	.get		= nftnl_obj_counter_get,
  	.parse		= nftnl_obj_counter_parse,
  	.build		= nftnl_obj_counter_build,
 -	.snprintf	= nftnl_obj_counter_snprintf,
 +	.snprintf_	= nftnl_obj_counter_snprintf,
- 	.json_parse	= nftnl_obj_counter_json_parse,
  };
 diff --git a/src/obj/ct_helper.c b/src/obj/ct_helper.c
-index 62569fe..69757ff 100644
+index d91f636..2037461 100644
 --- a/src/obj/ct_helper.c
 +++ b/src/obj/ct_helper.c
-@@ -208,6 +208,6 @@ struct obj_ops obj_ops_ct_helper = {
+@@ -166,5 +166,5 @@ struct obj_ops obj_ops_ct_helper = {
  	.get		= nftnl_obj_ct_helper_get,
  	.parse		= nftnl_obj_ct_helper_parse,
  	.build		= nftnl_obj_ct_helper_build,
 -	.snprintf	= nftnl_obj_ct_helper_snprintf,
 +	.snprintf_	= nftnl_obj_ct_helper_snprintf,
- 	.json_parse	= nftnl_obj_quota_json_parse,
+ };
+diff --git a/src/obj/ct_timeout.c b/src/obj/ct_timeout.c
+index e2e9991..a4f2dd2 100644
+--- a/src/obj/ct_timeout.c
++++ b/src/obj/ct_timeout.c
+@@ -330,5 +330,5 @@ struct obj_ops obj_ops_ct_timeout = {
+ 	.get		= nftnl_obj_ct_timeout_get,
+ 	.parse		= nftnl_obj_ct_timeout_parse,
+ 	.build		= nftnl_obj_ct_timeout_build,
+-	.snprintf	= nftnl_obj_ct_timeout_snprintf,
++	.snprintf_	= nftnl_obj_ct_timeout_snprintf,
  };
 diff --git a/src/obj/limit.c b/src/obj/limit.c
-index 7f8bcf7..25018b6 100644
+index 60b0159..538f37a 100644
 --- a/src/obj/limit.c
 +++ b/src/obj/limit.c
-@@ -236,6 +236,6 @@ struct obj_ops obj_ops_limit = {
+@@ -185,5 +185,5 @@ struct obj_ops obj_ops_limit = {
  	.get		= nftnl_obj_limit_get,
  	.parse		= nftnl_obj_limit_parse,
  	.build		= nftnl_obj_limit_build,
 -	.snprintf	= nftnl_obj_limit_snprintf,
 +	.snprintf_	= nftnl_obj_limit_snprintf,
- 	.json_parse	= nftnl_obj_limit_json_parse,
  };
 diff --git a/src/obj/quota.c b/src/obj/quota.c
-index 6d36784..ecaa8b1 100644
+index 1914037..585a088 100644
 --- a/src/obj/quota.c
 +++ b/src/obj/quota.c
-@@ -203,6 +203,6 @@ struct obj_ops obj_ops_quota = {
+@@ -161,5 +161,5 @@ struct obj_ops obj_ops_quota = {
  	.get		= nftnl_obj_quota_get,
  	.parse		= nftnl_obj_quota_parse,
  	.build		= nftnl_obj_quota_build,
 -	.snprintf	= nftnl_obj_quota_snprintf,
 +	.snprintf_	= nftnl_obj_quota_snprintf,
- 	.json_parse	= nftnl_obj_quota_json_parse,
+ };
+diff --git a/src/obj/secmark.c b/src/obj/secmark.c
+index e27b5fa..6241bee 100644
+--- a/src/obj/secmark.c
++++ b/src/obj/secmark.c
+@@ -133,5 +133,5 @@ struct obj_ops obj_ops_secmark = {
+ 	.get		= nftnl_obj_secmark_get,
+ 	.parse		= nftnl_obj_secmark_parse,
+ 	.build		= nftnl_obj_secmark_build,
+-	.snprintf	= nftnl_obj_secmark_snprintf,
++	.snprintf_	= nftnl_obj_secmark_snprintf,
+ };
+diff --git a/src/obj/tunnel.c b/src/obj/tunnel.c
+index 7ffade8..800eb3e 100644
+--- a/src/obj/tunnel.c
++++ b/src/obj/tunnel.c
+@@ -564,5 +564,5 @@ struct obj_ops obj_ops_tunnel = {
+ 	.get		= nftnl_obj_tunnel_get,
+ 	.parse		= nftnl_obj_tunnel_parse,
+ 	.build		= nftnl_obj_tunnel_build,
+-	.snprintf	= nftnl_obj_tunnel_snprintf,
++	.snprintf_	= nftnl_obj_tunnel_snprintf,
  };
 diff --git a/src/object.c b/src/object.c
-index d8278f3..9654b7b 100644
+index 5c8d183..d489cdd 100644
 --- a/src/object.c
 +++ b/src/object.c
-@@ -429,7 +429,7 @@ static int nftnl_obj_export(char *buf, size_t size,
- 		nftnl_buf_u64(&b, type, obj->handle, HANDLE);
- 
- 	if (obj->ops)
--		ret = obj->ops->snprintf(buf + b.len, size - b.len, type,
-+		ret = obj->ops->snprintf_(buf + b.len, size - b.len, type,
- 					 flags, obj);
- 
- 	b.len += ret;
-@@ -450,7 +450,7 @@ static int nftnl_obj_snprintf_dflt(char *buf, size_t size,
+@@ -369,7 +369,7 @@ static int nftnl_obj_snprintf_dflt(char *buf, size_t size,
  	SNPRINTF_BUFFER_SIZE(ret, remain, offset);
  
  	if (obj->ops) {
@@ -547,3 +587,6 @@
  					 obj);
  		SNPRINTF_BUFFER_SIZE(ret, remain, offset);
  	}
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-networking/recipes-filter/libnftnl/libnftnl_1.1.1.bb b/meta-openembedded/meta-networking/recipes-filter/libnftnl/libnftnl_1.1.3.bb
similarity index 86%
rename from meta-openembedded/meta-networking/recipes-filter/libnftnl/libnftnl_1.1.1.bb
rename to meta-openembedded/meta-networking/recipes-filter/libnftnl/libnftnl_1.1.3.bb
index 77959a7..00bf88d 100644
--- a/meta-openembedded/meta-networking/recipes-filter/libnftnl/libnftnl_1.1.1.bb
+++ b/meta-openembedded/meta-networking/recipes-filter/libnftnl/libnftnl_1.1.3.bb
@@ -3,8 +3,8 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=79808397c3355f163c012616125c9e26"
 SECTION = "libs"
 DEPENDS = "libmnl"
-PV .= "+git${SRCPV}"
-SRCREV = "d379dfcb6c94dcb93a8f16896572d6e162138e0f"
+
+SRCREV = "d819a832e0214a3bec3679345f542644596a2850"
 SRC_URI = "git://git.netfilter.org/libnftnl \
            file://0001-Move-exports-before-symbol-definition.patch \
            file://0002-avoid-naming-local-function-as-one-of-printf-family.patch \
diff --git a/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_0.9.0.bb b/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_0.9.0.bb
deleted file mode 100644
index 3ff9583..0000000
--- a/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_0.9.0.bb
+++ /dev/null
@@ -1,22 +0,0 @@
-SUMMARY = "Netfilter Tables userspace utillites"
-SECTION = "net"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d1a78fdd879a263a5e0b42d1fc565e79"
-
-DEPENDS = "libmnl libnftnl readline gmp bison-native"
-
-UPSTREAM_CHECK_URI = "https://www.netfilter.org/projects/nftables/files/"
-
-SRC_URI = "http://www.netfilter.org/projects/nftables/files/${BP}.tar.bz2 \
-           "
-SRC_URI[md5sum] = "d4dcb61df80aa544b2e142e91d937635"
-SRC_URI[sha256sum] = "ad8181b5fcb9ca572f444bed54018749588522ee97e4c21922648bb78d7e7e91"
-
-inherit autotools manpages pkgconfig
-
-PACKAGECONFIG ?= ""
-PACKAGECONFIG[man] = "--enable--man-doc, --disable-man-doc"
-
-ASNEEDED = ""
-
-RRECOMMENDS_${PN} += "kernel-module-nf-tables"
diff --git a/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_0.9.1.bb b/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_0.9.1.bb
new file mode 100644
index 0000000..9d0da33
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_0.9.1.bb
@@ -0,0 +1,28 @@
+SUMMARY = "Netfilter Tables userspace utillites"
+SECTION = "net"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d1a78fdd879a263a5e0b42d1fc565e79"
+
+DEPENDS = "libmnl libnftnl readline gmp bison-native"
+
+UPSTREAM_CHECK_URI = "https://www.netfilter.org/projects/nftables/files/"
+
+SRC_URI = "http://www.netfilter.org/projects/nftables/files/${BP}.tar.bz2"
+SRC_URI[md5sum] = "e2facbcad6c5d9bd87a0bf5081a31522"
+SRC_URI[sha256sum] = "ead3bb68ed540bfbb87a96f2b69c3d65ab0c2a0c3f6e739a395c09377d1b4fce"
+
+inherit autotools manpages pkgconfig
+
+PACKAGECONFIG ?= "python"
+PACKAGECONFIG[man] = "--enable--man-doc, --disable-man-doc"
+PACKAGECONFIG[python] = "--with-python-bin=${PYTHON}, --with-python-bin="", python3"
+
+inherit ${@bb.utils.contains('PACKAGECONFIG', 'python', 'python3native', '', d)}
+
+ASNEEDED = ""
+
+RRECOMMENDS_${PN} += "kernel-module-nf-tables"
+
+PACKAGES =+ "${PN}-python"
+FILES_${PN}-python = "${libdir_native}/${PYTHON_DIR}"
+RDEPENDS_${PN}-python = "python3-core python3-json"
diff --git a/meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-module_0.0.20190406.bb b/meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-module_0.0.20190702.bb
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-module_0.0.20190406.bb
rename to meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-module_0.0.20190702.bb
diff --git a/meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-tools_0.0.20190406.bb b/meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-tools_0.0.20190702.bb
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-tools_0.0.20190406.bb
rename to meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard-tools_0.0.20190702.bb
diff --git a/meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard.inc b/meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard.inc
index 5cf745e..12dd9c8 100644
--- a/meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard.inc
+++ b/meta-openembedded/meta-networking/recipes-kernel/wireguard/wireguard.inc
@@ -11,7 +11,7 @@
 LIC_FILES_CHKSUM = "file://../COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
 
 SRC_URI = "https://git.zx2c4.com/WireGuard/snapshot/WireGuard-${PV}.tar.xz"
-SRC_URI[md5sum] = "c11254fe48695e61c145a7e82756ecba"
-SRC_URI[sha256sum] = "2f06f3adf70b95e74a7736a22dcf6e9ef623b311a15b7d55b5474e57c3d0415b"
+SRC_URI[md5sum] = "7410a52bacc5eb85e1634a20c07d3bed"
+SRC_URI[sha256sum] = "1a1311bc71abd47a72c47d918be3bacc486b3de90734661858af75cc990dbaac"
 
 S = "${WORKDIR}/WireGuard-${PV}/src/"
diff --git a/meta-openembedded/meta-networking/recipes-netkit/netkit-rusers/netkit-rusers/0001-Link-with-libtirpc.patch b/meta-openembedded/meta-networking/recipes-netkit/netkit-rusers/netkit-rusers/0001-Link-with-libtirpc.patch
index 5592646..3655a57 100644
--- a/meta-openembedded/meta-networking/recipes-netkit/netkit-rusers/netkit-rusers/0001-Link-with-libtirpc.patch
+++ b/meta-openembedded/meta-networking/recipes-netkit/netkit-rusers/netkit-rusers/0001-Link-with-libtirpc.patch
@@ -13,21 +13,69 @@
  rup/rup.c                 | 2 +-
  4 files changed, 4 insertions(+), 13 deletions(-)
 
-diff --git a/configure b/configure
-index 85f6ca6..2d2d4b7 100755
 --- a/configure
 +++ b/configure
-@@ -147,7 +147,7 @@ else
+@@ -92,7 +92,6 @@ else
+     echo -n 'Checking if C compiler works... '
+     if (
+           $CC __conftest.c -o __conftest || exit 1
+-          ./__conftest || exit 1
+        ) >/dev/null 2>&1; then
+          echo 'yes'
+      else
+@@ -146,8 +145,7 @@ else
+ 
  fi
  
- LDFLAGS=
+-LDFLAGS=
 -LIBS=
-+LIBS="-ltirpc"
++LIBS="$LIBS -ltirpc"
  
  rm -f __conftest*
  
-diff --git a/rpc.rusersd/rusers_proc.c b/rpc.rusersd/rusers_proc.c
-index 9ae6306..f9e237c 100644
+@@ -172,13 +170,11 @@ int main() {
+ EOF
+ if (
+       $CC $CFLAGS  __conftest.c  -o __conftest || exit 1
+-      ./__conftest || exit 1
+    ) >/dev/null 2>&1; then
+     echo 'yes'
+ else
+     if (
+           $CC $CFLAGS -D__USE_BSD_SIGNAL __conftest.c  -o __conftest || exit 1
+-          ./__conftest || exit 1
+        ) >/dev/null 2>&1; then
+         echo '-D__USE_BSD_SIGNAL'
+         CFLAGS="$CFLAGS -D__USE_BSD_SIGNAL"
+@@ -231,7 +227,6 @@ if (
+ else
+     if (
+           $CC $CFLAGS -D_GNU_SOURCE __conftest.c  -o __conftest || exit 1
+-          ./__conftest || exit 1
+        ) >/dev/null 2>&1; then
+         echo '-D_GNU_SOURCE'
+         CFLAGS="$CFLAGS -D_GNU_SOURCE"
+@@ -262,20 +257,17 @@ int main() {
+ EOF
+ if (
+       $CC $CFLAGS  __conftest.c $LIBBSD -o __conftest || exit 1
+-      ./__conftest || exit 1
+    ) >/dev/null 2>&1; then
+     echo 'ok'
+ else
+     if (
+           $CC $CFLAGS  __conftest.c -lsnprintf $LIBBSD -o __conftest || exit 1
+-          ./__conftest || exit 1
+        ) >/dev/null 2>&1; then
+         echo '-lsnprintf'
+         LIBS="$LIBS -lsnprintf"
+     else
+         if (
+               $CC $CFLAGS  __conftest.c -ldb $LIBBSD -o __conftest || exit 1
+-              ./__conftest || exit 1
+            ) >/dev/null 2>&1; then
+             echo '-ldb'
+             LIBS="$LIBS -ldb"
 --- a/rpc.rusersd/rusers_proc.c
 +++ b/rpc.rusersd/rusers_proc.c
 @@ -57,12 +57,7 @@ char rp_rcsid[] =
@@ -44,8 +92,6 @@
  
  void rusers_service(struct svc_req *rqstp, SVCXPRT *transp);
  
-diff --git a/rpc.rusersd/rusersd.c b/rpc.rusersd/rusersd.c
-index 762be9b..dd355ac 100644
 --- a/rpc.rusersd/rusersd.c
 +++ b/rpc.rusersd/rusersd.c
 @@ -38,11 +38,7 @@ char rusersd_rcsid[] =
@@ -61,11 +107,9 @@
  
  #include "../version.h"
  
-diff --git a/rup/rup.c b/rup/rup.c
-index e5669ff..887f89d 100644
 --- a/rup/rup.c
 +++ b/rup/rup.c
-@@ -48,7 +48,7 @@ char rcsid[] = "$Id: rup.c,v 1.8 2000/07/22 19:51:40 dholland Exp $";
+@@ -48,7 +48,7 @@ char rcsid[] = "$Id: rup.c,v 1.8 2000/07
  
  #undef FSHIFT			/* Use protocol's shift and scale values */
  #undef FSCALE
@@ -74,6 +118,3 @@
  
  #include "../version.h"
  
--- 
-2.17.0
-
diff --git a/meta-openembedded/meta-networking/recipes-netkit/netkit-rusers/netkit-rusers_0.17.bb b/meta-openembedded/meta-networking/recipes-netkit/netkit-rusers/netkit-rusers_0.17.bb
index 9b8af27..296ebca 100644
--- a/meta-openembedded/meta-networking/recipes-netkit/netkit-rusers/netkit-rusers_0.17.bb
+++ b/meta-openembedded/meta-networking/recipes-netkit/netkit-rusers/netkit-rusers_0.17.bb
@@ -4,7 +4,7 @@
 SECTION = "net"
 LICENSE = "BSD"
 LIC_FILES_CHKSUM = "file://rusers/rusers.c;beginline=2;endline=3;md5=f4fc634a4ce8c569911196b72b10770e"
-DEPENDS = " tcp-wrappers libtirpc rpcbind"
+DEPENDS = " tcp-wrappers libtirpc rpcbind rpcsvc-proto rpcsvc-proto-native"
 
 SRC_URI = "http://http.debian.net/debian/pool/main/n/${BPN}/${BPN}_${PV}.orig.tar.gz;name=archive \
            http://http.debian.net/debian/pool/main/n/${BPN}/${BPN}_${PV}-8.diff.gz;name=patch8 \
@@ -17,16 +17,12 @@
 SRC_URI[patch8.md5sum] = "1ff498113e0f920d92088092e5570bdc"
 SRC_URI[patch8.sha256sum] = "14882dbdda4e37baa84d55b54b46c7e063a20fc9e04d1be1a2807643cd0f3067"
 
-inherit autotools-brokensep
-
 CFLAGS += "-I${STAGING_INCDIR}/tirpc"
-LIBS += "-ltirpc"
+
+EXTRA_OEMAKE = "RUSERSX=${STAGING_INCDIR}/rpcsvc/rusers.x"
 
 do_configure () {
-    ./configure --prefix=${prefix}
-    echo "LDFLAGS=${LDFLAGS}" >> MCONFIG
-    echo "USE_GLIBC=1" >> MCONFIG
-    echo "LIBS=${LIBS}" >> MCONFIG
+    ./configure --prefix=${prefix} --installroot=${D} --with-c-compiler="${CC}"
 }
 
 do_install () {
@@ -62,9 +58,6 @@
     install rusersd.conf ${D}/${sysconfdir}/xinetd.d/rusersd
 }
 
-
-INSANE_SKIP_${PN} = "already-stripped"
-
 PACKAGES = "${PN}-client ${PN}-server ${PN}-doc ${BPN}-dbg"
 FILES_${PN}-client = "${bindir}/*"
 FILES_${PN}-server = "${sbindir}/* ${sysconfdir}"
@@ -72,7 +65,7 @@
 FILES_${PN}-dbg = "${prefix}/src/debug \
             ${bindir}/.debug ${sbindir}/.debug"
 
-RDEPENDS_${PN}-server = "tcp-wrappers xinetd rpcbind"
+RDEPENDS_${PN}-server += "tcp-wrappers xinetd rpcbind"
 
 # http://errors.yoctoproject.org/Errors/Details/186962/
 EXCLUDE_FROM_WORLD_libc-musl = "1"
diff --git a/meta-openembedded/meta-networking/recipes-protocols/freediameter/freediameter_1.2.1.bb b/meta-openembedded/meta-networking/recipes-protocols/freediameter/freediameter_1.3.2.bb
similarity index 95%
rename from meta-openembedded/meta-networking/recipes-protocols/freediameter/freediameter_1.2.1.bb
rename to meta-openembedded/meta-networking/recipes-protocols/freediameter/freediameter_1.3.2.bb
index b8818fa..8e928c9 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/freediameter/freediameter_1.2.1.bb
+++ b/meta-openembedded/meta-networking/recipes-protocols/freediameter/freediameter_1.3.2.bb
@@ -23,13 +23,13 @@
     file://0001-libfdcore-sctp.c-update-the-old-sctp-api-check.patch \
     "
 
-SRC_URI[md5sum] = "61b1062aa144b5f12eed514611e6d697"
-SRC_URI[sha256sum] = "bd7f105542e9903e776aa006c6931c1f5d3d477cb59af33a9162422efa477097"
+SRC_URI[md5sum] = "73ce230b4789f9f28fff77cbc83c65af"
+SRC_URI[sha256sum] = "ce05b4bf2a04cd2f472e77ba4b86fbfca690bfc83e51da8ce0e575804b763eda"
 
 S = "${WORKDIR}/${fd_pkgname}-${PV}"
 
 LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=892b2ed6ae815488a08416ff7ee74a35"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=69bdc1d97648a2d35914563fcbbb361a"
 
 PTEST_PATH = "${libdir}/${fd_pkgname}/ptest"
 
diff --git a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp_5.8.bb b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp_5.8.bb
index f0acaa8..60b2b38 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp_5.8.bb
+++ b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp_5.8.bb
@@ -7,7 +7,7 @@
 
 DEPENDS = "openssl libnl pciutils"
 
-SRC_URI = "${SOURCEFORGE_MIRROR}/net-snmp/net-snmp-${PV}.zip \
+SRC_URI = "${SOURCEFORGE_MIRROR}/net-snmp/net-snmp-${PV}.tar.gz \
            file://init \
            file://snmpd.conf \
            file://snmptrapd.conf \
@@ -28,8 +28,8 @@
            file://reproducibility-accept-configure-options-from-env.patch \
            file://0001-net-snmp-fix-compile-error-disable-des.patch \
            "
-SRC_URI[md5sum] = "6aae5948df7efde626613d6a4b3cd9d4"
-SRC_URI[sha256sum] = "c6291385b8ed84f05890fe4197005daf7e7ee7b082c2e390fa114a9477a56042"
+SRC_URI[md5sum] = "63bfc65fbb86cdb616598df1aff6458a"
+SRC_URI[sha256sum] = "b2fc3500840ebe532734c4786b0da4ef0a5f67e51ef4c86b3345d697e4976adf"
 
 UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/net-snmp/files/net-snmp/"
 UPSTREAM_CHECK_REGEX = "/net-snmp/(?P<pver>\d+(\.\d+)+)/"
diff --git a/meta-openembedded/meta-networking/recipes-support/chrony/chrony/arm_eabi.patch b/meta-openembedded/meta-networking/recipes-support/chrony/chrony/arm_eabi.patch
index 9f943cd..187898a 100644
--- a/meta-openembedded/meta-networking/recipes-support/chrony/chrony/arm_eabi.patch
+++ b/meta-openembedded/meta-networking/recipes-support/chrony/chrony/arm_eabi.patch
@@ -1,7 +1,7 @@
-From 9ca48a6fef1da1bb0dd67ab94256c7e240da1834 Mon Sep 17 00:00:00 2001
+From f35e07aceb4a16121d83b47ee77990018bec98ea Mon Sep 17 00:00:00 2001
 From: Joe Slater <jslater@windriver.com>
 Date: Thu, 9 Mar 2017 10:58:06 -0800
-Subject: [PATCH]     chrony: fix build failure for arma9
+Subject: [PATCH] chrony: fix build failure for arma9
 
     Eliminate references to syscalls not available
     for ARM_EABI.  Also add a dependency on libseccomp
@@ -18,16 +18,15 @@
     Refresh patch for new upstream version.
 
     Signed-off-by: Robert Joslyn <robert.joslyn@redrectangle.org>
-
 ---
- sys_linux.c | 19 +++++++++++++------
- 1 file changed, 13 insertions(+), 6 deletions(-)
+ sys_linux.c | 20 ++++++++++++++------
+ 1 file changed, 14 insertions(+), 6 deletions(-)
 
 diff --git a/sys_linux.c b/sys_linux.c
-index f4b532d..d05fa24 100644
+index 898dc7a..b268ad1 100644
 --- a/sys_linux.c
 +++ b/sys_linux.c
-@@ -482,14 +482,14 @@ SYS_Linux_EnableSystemCallFilter(int level)
+@@ -479,14 +479,14 @@ SYS_Linux_EnableSystemCallFilter(int level)
    const int syscalls[] = {
      /* Clock */
      SCMP_SYS(adjtimex), SCMP_SYS(clock_gettime), SCMP_SYS(gettimeofday),
@@ -38,24 +37,24 @@
 -    SCMP_SYS(getrlimit), SCMP_SYS(rt_sigaction), SCMP_SYS(rt_sigreturn),
 +    SCMP_SYS(rt_sigaction), SCMP_SYS(rt_sigreturn),
      SCMP_SYS(rt_sigprocmask), SCMP_SYS(set_tid_address), SCMP_SYS(sigreturn),
-     SCMP_SYS(wait4),
+     SCMP_SYS(wait4), SCMP_SYS(waitpid),
      /* Memory */
 -    SCMP_SYS(brk), SCMP_SYS(madvise), SCMP_SYS(mmap), SCMP_SYS(mmap2),
 +    SCMP_SYS(brk), SCMP_SYS(madvise), SCMP_SYS(mmap2),
      SCMP_SYS(mprotect), SCMP_SYS(mremap), SCMP_SYS(munmap), SCMP_SYS(shmdt),
      /* Filesystem */
-     SCMP_SYS(access), SCMP_SYS(chmod), SCMP_SYS(chown), SCMP_SYS(chown32),
-@@ -500,14 +500,21 @@ SYS_Linux_EnableSystemCallFilter(int level)
+     SCMP_SYS(_llseek), SCMP_SYS(access), SCMP_SYS(chmod), SCMP_SYS(chown),
+@@ -499,14 +499,22 @@ SYS_Linux_EnableSystemCallFilter(int level)
      SCMP_SYS(bind), SCMP_SYS(connect), SCMP_SYS(getsockname), SCMP_SYS(getsockopt),
-     SCMP_SYS(recvfrom), SCMP_SYS(recvmmsg), SCMP_SYS(recvmsg),
-     SCMP_SYS(sendmmsg), SCMP_SYS(sendmsg), SCMP_SYS(sendto),
+     SCMP_SYS(recv), SCMP_SYS(recvfrom), SCMP_SYS(recvmmsg), SCMP_SYS(recvmsg),
+     SCMP_SYS(send), SCMP_SYS(sendmmsg), SCMP_SYS(sendmsg), SCMP_SYS(sendto),
 -    /* TODO: check socketcall arguments */
 -    SCMP_SYS(socketcall),
      /* General I/O */
      SCMP_SYS(_newselect), SCMP_SYS(close), SCMP_SYS(open), SCMP_SYS(openat), SCMP_SYS(pipe),
--    SCMP_SYS(poll), SCMP_SYS(read), SCMP_SYS(futex), SCMP_SYS(select),
-+    SCMP_SYS(poll), SCMP_SYS(read), SCMP_SYS(futex),
-     SCMP_SYS(set_robust_list), SCMP_SYS(write),
+     SCMP_SYS(pipe2), SCMP_SYS(poll), SCMP_SYS(ppoll), SCMP_SYS(pselect6), SCMP_SYS(read),
+-    SCMP_SYS(futex), SCMP_SYS(select), SCMP_SYS(set_robust_list), SCMP_SYS(write),
++    SCMP_SYS(futex), SCMP_SYS(set_robust_list), SCMP_SYS(write),
      /* Miscellaneous */
      SCMP_SYS(getrandom), SCMP_SYS(sysinfo), SCMP_SYS(uname),
 +    /* not always available */
@@ -67,6 +66,10 @@
 +    /* TODO: check socketcall arguments */
 +    SCMP_SYS(socketcall),
 +#endif
++
    };
  
    const int socket_domains[] = {
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-networking/recipes-support/chrony/chrony_3.4.bb b/meta-openembedded/meta-networking/recipes-support/chrony/chrony_3.5.bb
similarity index 97%
rename from meta-openembedded/meta-networking/recipes-support/chrony/chrony_3.4.bb
rename to meta-openembedded/meta-networking/recipes-support/chrony/chrony_3.5.bb
index f6898c0..7c6356d 100644
--- a/meta-openembedded/meta-networking/recipes-support/chrony/chrony_3.4.bb
+++ b/meta-openembedded/meta-networking/recipes-support/chrony/chrony_3.5.bb
@@ -39,9 +39,8 @@
 SRC_URI_append_libc-musl = " \
     file://0001-Fix-compilation-with-musl.patch \
 "
-
-SRC_URI[md5sum] = "7170e750469c198fc6784047d6f71144"
-SRC_URI[sha256sum] = "af77e47c2610a7e55c8af5b89a8aeff52d9a867dd5983d848b52d374bc0e6b9f"
+SRC_URI[md5sum] = "5f66338bc940a9b51eede8f391e7bed3"
+SRC_URI[sha256sum] = "4e02795b1260a4ec51e6ace84149036305cc9fc340e65edb9f8452aa611339b5"
 
 DEPENDS = "pps-tools"
 
diff --git a/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils_9.8.0.bb b/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils_9.10.0.bb
similarity index 90%
rename from meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils_9.8.0.bb
rename to meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils_9.10.0.bb
index 70e04b9..d708511 100644
--- a/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils_9.8.0.bb
+++ b/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils_9.10.0.bb
@@ -11,9 +11,9 @@
 SRC_URI = "git://github.com/LINBIT/drbd-utils;name=drbd-utils \
            git://github.com/LINBIT/drbd-headers;name=drbd-headers;destsuffix=git/drbd-headers \
           "
-# v9.8.0
-SRCREV_drbd-utils = "c30216b49330216bf8a567b7727da6e24f099f08"
-SRCREV_drbd-headers = "2357a11fb49bcbadf6b490e6d4cfe982a3d24813"
+# v9.10.0
+SRCREV_drbd-utils = "859151b228d3b3aacefb09d06d515a2589c22e35"
+SRCREV_drbd-headers = "0955b3423f08f8e11ff05092bc1b766609fd804b"
 
 S = "${WORKDIR}/git"
 
@@ -35,6 +35,9 @@
                 --without-manual \
                "
 
+# If we have inherited reproducible_build, we want to use it.
+export WANT_DRBD_REPRODUCIBLE_BUILD = "yes"
+
 do_configure_prepend() {
     # move the the file under folder /lib/drbd/ to /usr/lib/drbd when usrmerge enabled
     if ${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', 'true', 'false', d)}; then
diff --git a/meta-openembedded/meta-networking/recipes-support/drbd/drbd/0001-drbd-kbuild-fix-use-M-don-t-forget-addprefix-obj.patch b/meta-openembedded/meta-networking/recipes-support/drbd/drbd/0001-drbd-kbuild-fix-use-M-don-t-forget-addprefix-obj.patch
deleted file mode 100644
index fbf94d5..0000000
--- a/meta-openembedded/meta-networking/recipes-support/drbd/drbd/0001-drbd-kbuild-fix-use-M-don-t-forget-addprefix-obj.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-Upstream-Status: Backport [https://github.com/LINBIT/drbd-9.0/commit/46e8e3f]
-
-Backport patch to fix compile errors:
-
-|   LD [M]  /home/kkang/buildarea/Yocto/build/tmp/work/qemux86_64-poky-linux/drbd/9.0.17-1-r0/drbd-9.0.17-1/drbd/drbd.o
-| x86_64-poky-linux-ld.bfd: cannot find .../tmp/work/qemux86_64-poky-linux/drbd/9.0.17-1-r0/drbd-9.0.17-1/drbd/drbd_bitmap.o: No such file or directory
-
-Signed-off-by: Kai Kang <kai.kang@windriver.com>
-
-From 46e8e3fc31b651fb56ea38134dcf14382fc43000 Mon Sep 17 00:00:00 2001
-From: Lars Ellenberg <lars.ellenberg@linbit.com>
-Date: Wed, 3 Apr 2019 10:57:46 +0200
-Subject: [PATCH] drbd: kbuild fix: use M=; don't forget addprefix $(obj)
-
-Kernel build started to warn about using SUBDIRS instead of M,
-and we don't support "very old" kernels anymore anyways.
-
-Our list of dependencies for drbd_buildtag.c needs to depend on the
-actual files $(obj)/*.o resulting from the build,
-not on just the list of *.o names.
-
-This apparently also fixes a build failure in opensuse build service for
-tumbleweed when using make-4.2.1-7.5 against kernel 5.0.5-something.
----
- drbd/Kbuild   | 11 +++++------
- drbd/Makefile |  4 +---
- 2 files changed, 6 insertions(+), 9 deletions(-)
-
-diff --git a/drbd/Kbuild b/drbd/Kbuild
-index 285f7a81..99228029 100644
---- a/drbd/Kbuild
-+++ b/drbd/Kbuild
-@@ -1,4 +1,5 @@
--obj-m := drbd.o drbd_transport_tcp.o
-+obj-m += drbd.o drbd_transport_tcp.o
-+# obj-$(CONFIG_BLK_DEV_DRBD)     += drbd.o drbd_transport_tcp.o
- 
- clean-files := compat.h $(wildcard .config.$(KERNELVERSION).timestamp)
- 
-@@ -56,10 +57,8 @@ ifndef DISABLE_KREF_DEBUGGING_HERE
-       drbd-y += kref_debug.o drbd_kref_debug.o
- endif
- 
--$(patsubst %,$(obj)/%,$(drbd-y)): $(obj)/compat.h
--$(patsubst %,$(obj)/%,drbd_transport_tcp.o): $(obj)/compat.h
--
--obj-$(CONFIG_BLK_DEV_DRBD)     += drbd.o
-+$(addprefix $(obj)/,$(drbd-y)): $(obj)/compat.h
-+$(obj)/drbd_transport_tcp.o: $(obj)/compat.h
- 
- # ======================================================================
- 
-@@ -124,7 +123,7 @@ endif
- # and not in e.g. dash. I'm too lazy to fix it to be compatible.
- SHELL=/bin/bash
- 
--$(obj)/drbd_buildtag.c: $(filter-out drbd_buildtag.o,$(drbd-y))
-+$(obj)/drbd_buildtag.c: $(addprefix $(obj)/,$(filter-out drbd_buildtag.o,$(drbd-y)))
- 	@$(kecho) '  GEN     $@ $(echo-why)'
- 	@set -e; exec > $@.new;							\
- 	echo -e "/* automatically generated. DO NOT EDIT. */";			\
-diff --git a/drbd/Makefile b/drbd/Makefile
-index 5f768fc6..f9e8792a 100644
---- a/drbd/Makefile
-+++ b/drbd/Makefile
-@@ -102,9 +102,7 @@ else
- 
-   kbuild:
- 	@rm -f .drbd_kernelrelease*
--    # previous to 2.6.6 (suse: 2.6.5-dunno), this should be:
--	$(MAKE) -C $(KDIR)  $(if $(O),O=$(O),) SUBDIRS=$(DRBDSRC) $(ARCH_UM) modules
--# $(MAKE) -C $(KDIR) M=$(DRBDSRC) $(ARCH_UM) modules
-+	$(MAKE) -C $(KDIR)  $(if $(O),O=$(O),) M=$(DRBDSRC) $(ARCH_UM) modules
- 	-mv .drbd_kernelrelease.new .drbd_kernelrelease
- 	@echo -n "Memorizing module configuration ... "
- 	@config=$$( (for x in $(KDIR)/.config $(O)/.config ; do \
--- 
-2.20.0
-
diff --git a/meta-openembedded/meta-networking/recipes-support/drbd/drbd_9.0.17-1.bb b/meta-openembedded/meta-networking/recipes-support/drbd/drbd_9.0.18-1.bb
similarity index 77%
rename from meta-openembedded/meta-networking/recipes-support/drbd/drbd_9.0.17-1.bb
rename to meta-openembedded/meta-networking/recipes-support/drbd/drbd_9.0.18-1.bb
index 1eada26..6fb621a 100644
--- a/meta-openembedded/meta-networking/recipes-support/drbd/drbd_9.0.17-1.bb
+++ b/meta-openembedded/meta-networking/recipes-support/drbd/drbd_9.0.18-1.bb
@@ -10,11 +10,10 @@
 
 SRC_URI = "http://www.linbit.com/downloads/drbd/9.0/drbd-${PV}.tar.gz \
            file://check_existence_of_modules_before_installing.patch \
-           file://0001-drbd-kbuild-fix-use-M-don-t-forget-addprefix-obj.patch \
            "
 
-SRC_URI[md5sum] = "ae8d5030760b2820a4b3e250447890a0"
-SRC_URI[sha256sum] = "86dd6cc0fdc8123056a3bb67a634cd7ba62a7b05b23caab9995cce7730891da8"
+SRC_URI[md5sum] = "f2e6eaa92861252af0b564f0100f1859"
+SRC_URI[sha256sum] = "d6b4188ed01d8555c78b04b5e31532d5990ca98bf063230f3e949ee8a7338d58"
 
 inherit module
 
diff --git a/meta-openembedded/meta-networking/recipes-support/esmtp/esmtp_1.2.bb b/meta-openembedded/meta-networking/recipes-support/esmtp/esmtp_1.2.bb
index 663161a..972d5aa 100644
--- a/meta-openembedded/meta-networking/recipes-support/esmtp/esmtp_1.2.bb
+++ b/meta-openembedded/meta-networking/recipes-support/esmtp/esmtp_1.2.bb
@@ -18,11 +18,15 @@
 
 inherit autotools update-alternatives
 
-ALTERNATIVE_${PN} += "sendmail mailq newaliases"
+ALTERNATIVE_${PN} = "sendmail mailq newaliases"
+# /usr/lib/sendmial is required by LSB core test
+ALTERNATIVE_${PN}_linuxstdbase = "sendmail mailq newaliases usr-lib-sendmail"
 ALTERNATIVE_TARGET[mailq] = "${bindir}/mailq"
 ALTERNATIVE_TARGET[newaliases] = "${bindir}/newaliases"
 ALTERNATIVE_LINK_NAME[sendmail] = "${sbindir}/sendmail"
 ALTERNATIVE_TARGET[sendmail] = "${bindir}/esmtp"
+ALTERNATIVE_LINK_NAME[usr-lib-sendmail] = "/usr/lib/sendmail"
+ALTERNATIVE_TARGET[usr-lib-sendmail] = "${bindir}/esmtp"
 
 ALTERNATIVE_PRIORITY = "10"
 
@@ -39,9 +43,4 @@
     rm -rf ${D}${libdir}
 }
 
-pkg_postinst_${PN}_linuxstdbase () {
-    # /usr/lib/sendmial is required by LSB core test
-    [ ! -L $D/usr/lib/sendmail ] && ln -sf ${sbindir}/sendmail $D/usr/lib/
-}
-
 FILES_${PN} += "${libdir}/"
diff --git a/meta-openembedded/meta-networking/recipes-support/htpdate/htpdate_1.2.0.bb b/meta-openembedded/meta-networking/recipes-support/htpdate/htpdate_1.2.1.bb
similarity index 89%
rename from meta-openembedded/meta-networking/recipes-support/htpdate/htpdate_1.2.0.bb
rename to meta-openembedded/meta-networking/recipes-support/htpdate/htpdate_1.2.1.bb
index eb67878..d4fd73e 100644
--- a/meta-openembedded/meta-networking/recipes-support/htpdate/htpdate_1.2.0.bb
+++ b/meta-openembedded/meta-networking/recipes-support/htpdate/htpdate_1.2.1.bb
@@ -22,8 +22,8 @@
            file://0001-Make-environment-variables-assignments-to-be-weak.patch \
            file://0001-Replace-ntp_adjtime-with-adjtimex.patch \
            "
-SRC_URI[md5sum] = "9d5ca69be06edf5d535b52b5f790da4e"
-SRC_URI[sha256sum] = "22b2cf3ec45b0eedecddd3ad2a3d754ac57942ae7dcbac410d254935f0bdbc03"
+SRC_URI[md5sum] = "cab01ddcb62bd84154670a37a7a0c31c"
+SRC_URI[sha256sum] = "186c69509ba68178e2894cb8900e240bb688870ec25de2ac4676724e1e1d1cbf"
 
 do_configure () {
 	:
diff --git a/meta-openembedded/meta-networking/recipes-support/ipvsadm/ipvsadm_1.29.bb b/meta-openembedded/meta-networking/recipes-support/ipvsadm/ipvsadm_1.30.bb
similarity index 90%
rename from meta-openembedded/meta-networking/recipes-support/ipvsadm/ipvsadm_1.29.bb
rename to meta-openembedded/meta-networking/recipes-support/ipvsadm/ipvsadm_1.30.bb
index 4f3c16d..22cb88a 100644
--- a/meta-openembedded/meta-networking/recipes-support/ipvsadm/ipvsadm_1.29.bb
+++ b/meta-openembedded/meta-networking/recipes-support/ipvsadm/ipvsadm_1.30.bb
@@ -16,14 +16,14 @@
 
 DEPENDS += "libnl popt"
 
-SRC_URI = "https://mirrors.edge.kernel.org/pub/linux/utils/kernel/ipvsadm/${BP}.tar.gz \
+SRC_URI = "https://mirrors.edge.kernel.org/pub/linux/utils/kernel/ipvsadm/${BP}.tar.xz \
         file://0001-Modify-the-Makefile-for-cross-compile.patch \
         file://0003-ipvsadm-remove-dependency-on-bash.patch \
         file://makefile-add-ldflags.patch \
 "
 
-SRC_URI[md5sum] = "88b35030b4766b3e44ad15aacdef65c4"
-SRC_URI[sha256sum] = "297f5cd459c3eef81ed0ca32e53bf320ed6b132fe7ed6ea5e44aa6b1fbd2a7de"
+SRC_URI[md5sum] = "97f11b6af1920fde5a9d9eac0d7f9e50"
+SRC_URI[sha256sum] = "95573d70df473c9f63fc4ac496c044c69e3a6de7ccac119922210c0b44cd7a0c"
 
 UPSTREAM_CHECK_URI = "${KERNELORG_MIRROR}/linux/utils/kernel/ipvsadm"
 
diff --git a/meta-openembedded/meta-networking/recipes-support/libldb/libldb/0001-libldb-fix-config-error.patch b/meta-openembedded/meta-networking/recipes-support/libldb/libldb/0001-libldb-fix-config-error.patch
deleted file mode 100644
index 5818d57..0000000
--- a/meta-openembedded/meta-networking/recipes-support/libldb/libldb/0001-libldb-fix-config-error.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-From bc4ff7e37ce120c257e52a81fe3475499dfd2573 Mon Sep 17 00:00:00 2001
-From: Changqing Li <changqing.li@windriver.com>
-Date: Tue, 24 Jul 2018 10:10:24 +0800
-Subject: [PATCH] libldb: fix config error
-
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
----
- wscript | 58 +++++++++++++++++++++++++++++-----------------------------
- 1 file changed, 29 insertions(+), 29 deletions(-)
-
-diff --git a/wscript b/wscript
-index b0af7b6..8ad9f96 100644
---- a/wscript
-+++ b/wscript
-@@ -115,40 +115,40 @@ def configure(conf):
-                                              onlyif='talloc tdb tevent pyldb-util',
-                                              implied_deps='replace talloc tdb tevent'):
-                 conf.define('USING_SYSTEM_LDB', 1)
-+    if not Options.options.without_ldb_lmdb:
-+        if not conf.CHECK_CODE('return !(sizeof(size_t) >= 8)',
-+                               "HAVE_64_BIT_SIZE_T_FOR_LMDB",
-+                               execute=True,
-+                               msg='Checking for a 64-bit host to '
-+                               'support lmdb'):
-+            Logs.warn("--without-ldb-lmdb implied as this "
-+                      "host is not 64-bit")
-+
-+            if not conf.env.standalone_ldb and \
-+               not Options.options.without_ad_dc and \
-+               conf.CONFIG_GET('ENABLE_SELFTEST'):
-+                Logs.warn("NOTE: Some AD DC parts of selftest will fail")
- 
--    if not conf.CHECK_CODE('return !(sizeof(size_t) >= 8)',
--                           "HAVE_64_BIT_SIZE_T_FOR_LMDB",
--                           execute=True,
--                           msg='Checking for a 64-bit host to '
--                           'support lmdb'):
--        Logs.warn("--without-ldb-lmdb implied as this "
--                  "host is not 64-bit")
--
--        if not conf.env.standalone_ldb and \
--           not Options.options.without_ad_dc and \
--           conf.CONFIG_GET('ENABLE_SELFTEST'):
--            Logs.warn("NOTE: Some AD DC parts of selftest will fail")
--
--        conf.env.REQUIRE_LMDB = False
--    else:
--        if conf.env.standalone_ldb:
--            if Options.options.without_ldb_lmdb:
--                conf.env.REQUIRE_LMDB = False
--            else:
--                conf.env.REQUIRE_LMDB = True
--        elif Options.options.without_ad_dc:
-             conf.env.REQUIRE_LMDB = False
-         else:
--            if Options.options.without_ldb_lmdb:
--                if not Options.options.without_ad_dc and \
--                   conf.CONFIG_GET('ENABLE_SELFTEST'):
--                    raise Utils.WafError('--without-ldb-lmdb conflicts '
--                                         'with --enable-selftest while '
--                                         'building the AD DC')
--
-+            if conf.env.standalone_ldb:
-+                if Options.options.without_ldb_lmdb:
-+                    conf.env.REQUIRE_LMDB = False
-+                else:
-+                    conf.env.REQUIRE_LMDB = True
-+            elif Options.options.without_ad_dc:
-                 conf.env.REQUIRE_LMDB = False
-             else:
--                conf.env.REQUIRE_LMDB = True
-+                if Options.options.without_ldb_lmdb:
-+                    if not Options.options.without_ad_dc and \
-+                       conf.CONFIG_GET('ENABLE_SELFTEST'):
-+                        raise Utils.WafError('--without-ldb-lmdb conflicts '
-+                                             'with --enable-selftest while '
-+                                             'building the AD DC')
-+
-+                    conf.env.REQUIRE_LMDB = False
-+                else:
-+                    conf.env.REQUIRE_LMDB = True
- 
- 
-     if conf.CONFIG_SET('USING_SYSTEM_LDB'):
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-networking/recipes-support/libldb/libldb/0001-waf-add-support-of-cross_compile.patch b/meta-openembedded/meta-networking/recipes-support/libldb/libldb/0001-waf-add-support-of-cross_compile.patch
new file mode 100644
index 0000000..45c5aca
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/libldb/libldb/0001-waf-add-support-of-cross_compile.patch
@@ -0,0 +1,62 @@
+From 4b8463ff43f8983a706b181c5292491f9f954be1 Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Fri, 25 Jan 2019 15:00:59 +0800
+Subject: [PATCH] waf: add support of cross_compile
+
+After upgrade, waf build system also upgraded.
+
+on 1.5.19, for cross_compile, subprocess.Popen is set to be
+samba_cross.cross_Popen, which will not execute testprog on
+host, but only read result from cross-answers.txt which is
+passed by option --cross-answer
+
+part of old code:
+    args = Utils.to_list(kw.get('exec_args', []))
+    proc = Utils.pproc.Popen([lastprog] + args, stdout=Utils.pproc.PIPE, stderr=Utils.pproc.PIPE)
+
+but on new version, exec_args is not used and cause do_configure
+failed with Exec format error
+
+fixed by append cross anser related args to cmd
+
+Upstream-Status: Submitted [https://gitlab.com/samba-team/samba/merge_requests/211]
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ third_party/waf/waflib/Tools/c_config.py | 11 ++++++-----
+ 1 file changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/third_party/waf/waflib/Tools/c_config.py b/third_party/waf/waflib/Tools/c_config.py
+index 7608215..767cf33 100644
+--- a/third_party/waf/waflib/Tools/c_config.py
++++ b/third_party/waf/waflib/Tools/c_config.py
+@@ -660,20 +660,21 @@ class test_exec(Task.Task):
+ 	"""
+ 	color = 'PINK'
+ 	def run(self):
++		args = self.generator.bld.kw.get('exec_args', [])
+ 		if getattr(self.generator, 'rpath', None):
+ 			if getattr(self.generator, 'define_ret', False):
+-				self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()])
+-			else:
+-				self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()])
++				self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()] + args)
++			else: 
++				self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()] + args)
+ 		else:
+ 			env = self.env.env or {}
+ 			env.update(dict(os.environ))
+ 			for var in ('LD_LIBRARY_PATH', 'DYLD_LIBRARY_PATH', 'PATH'):
+ 				env[var] = self.inputs[0].parent.abspath() + os.path.pathsep + env.get(var, '')
+ 			if getattr(self.generator, 'define_ret', False):
+-				self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()], env=env)
++				self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()] + args, env=env)
+ 			else:
+-				self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()], env=env)
++				self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()] + args, env=env)
+ 
+ @feature('test_exec')
+ @after_method('apply_link')
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-networking/recipes-support/libldb/libldb/do-not-import-target-module-while-cross-compile.patch b/meta-openembedded/meta-networking/recipes-support/libldb/libldb/do-not-import-target-module-while-cross-compile.patch
index ee4936a..3f2921e 100644
--- a/meta-openembedded/meta-networking/recipes-support/libldb/libldb/do-not-import-target-module-while-cross-compile.patch
+++ b/meta-openembedded/meta-networking/recipes-support/libldb/libldb/do-not-import-target-module-while-cross-compile.patch
@@ -1,30 +1,32 @@
-From f4cda3a71311e4496b725bc5f46af93413ec7a1c Mon Sep 17 00:00:00 2001
-From: Bian Naimeng <biannm@cn.fujitsu.com>
-Date: Fri, 17 Jul 2015 11:58:49 +0800
-Subject: [PATCH] libldb: add new recipe
+From cc0576405803bcae45ee353c4333c449cead9207 Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Tue, 25 Jun 2019 14:25:08 +0800
+Subject: [PATCH] do not import target module while cross compile
 
-Some modules such as dynamic library maybe cann't be imported while cross compile,
-we just check whether does the module exist.
+Some modules such as dynamic library maybe cann't be imported
+while cross compile, we just check whether does the module exist.
 
 Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
 
+update to version 4.10.5, and switch to python3
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
 ---
- buildtools/wafsamba/samba_bundled.py | 32 ++++++++++++++++++++++++--------
- 1 file changed, 24 insertions(+), 8 deletions(-)
+ buildtools/wafsamba/samba_bundled.py | 27 +++++++++++++++++++--------
+ 1 file changed, 18 insertions(+), 8 deletions(-)
 
 diff --git a/buildtools/wafsamba/samba_bundled.py b/buildtools/wafsamba/samba_bundled.py
-index 253d604..398cc6a 100644
+index 60ce7da..5468a36 100644
 --- a/buildtools/wafsamba/samba_bundled.py
 +++ b/buildtools/wafsamba/samba_bundled.py
-@@ -2,6 +2,7 @@
+@@ -4,6 +4,7 @@ import sys
+ from waflib import Build, Options, Logs
+ from waflib.Configure import conf
+ from wafsamba import samba_utils
++import importlib.util, os
  
- import sys
- import Build, Options, Logs
-+import imp, os
- from Configure import conf
- from samba_utils import TO_LIST
- 
-@@ -249,17 +250,32 @@ def CHECK_BUNDLED_SYSTEM_PYTHON(conf, libname, modulename, minversion='0.0.0'):
+ def PRIVATE_NAME(bld, name, private_extension, private_library):
+     '''possibly rename a library to include a bundled extension'''
+@@ -249,17 +250,27 @@ def CHECK_BUNDLED_SYSTEM_PYTHON(conf, libname, modulename, minversion='0.0.0'):
      # versions
      minversion = minimum_library_version(conf, libname, minversion)
  
@@ -34,34 +36,32 @@
 -        found = False
 -    else:
 +    # Find module in PYTHONPATH
-+    stuff = imp.find_module(modulename, [os.environ["PYTHONPATH"]])
-+    if stuff:
++    spec = importlib.util._find_spec_from_path(modulename, [os.environ["PYTHONPATH"]])
++    if spec:
          try:
 -            version = m.__version__
 -        except AttributeError:
-+            m = imp.load_module(modulename, stuff[0], stuff[1], stuff[2])
++            module = importlib.util.module_from_spec(spec)
++            spec.loader.load_module(module)
 +        except ImportError:
              found = False
 +
 +            if conf.env.CROSS_COMPILE:
 +                # Some modules such as dynamic library maybe cann't be imported
 +                # while cross compile, we just check whether the module exist
-+                Logs.warn('Cross module[%s] has been found, but can not be loaded.' % (stuff[1]))
++                Logs.warn('Cross module[%s] has been found, but can not be loaded.' % (spec.name))
 +                found = True
          else:
 -            found = tuplize_version(version) >= tuplize_version(minversion)
 +            try:
-+                version = m.__version__
++                version = module.__version__
 +            except AttributeError:
 +                found = False
 +            else:
 +                found = tuplize_version(version) >= tuplize_version(minversion)
-+        finally:
-+            if stuff[0]:
-+                stuff[0].close()
-+    else:
-+        found = False
-+
      if not found and not conf.LIB_MAY_BE_BUNDLED(libname):
          Logs.error('ERROR: Python module %s of version %s not found, and bundling disabled' % (libname, minversion))
          sys.exit(1)
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-networking/recipes-support/libldb/libldb/options-1.4.1.patch b/meta-openembedded/meta-networking/recipes-support/libldb/libldb/options-1.5.4.patch
similarity index 79%
rename from meta-openembedded/meta-networking/recipes-support/libldb/libldb/options-1.4.1.patch
rename to meta-openembedded/meta-networking/recipes-support/libldb/libldb/options-1.5.4.patch
index 357afbe..bffd065 100644
--- a/meta-openembedded/meta-networking/recipes-support/libldb/libldb/options-1.4.1.patch
+++ b/meta-openembedded/meta-networking/recipes-support/libldb/libldb/options-1.5.4.patch
@@ -1,6 +1,6 @@
-From ffffd29bc6303d60b3d77048fbbf6776f6fbbe01 Mon Sep 17 00:00:00 2001
+From 0841c3ed69c388251c1aeae63f2c3813555a54f6 Mon Sep 17 00:00:00 2001
 From: Changqing Li <changqing.li@windriver.com>
-Date: Thu, 19 Jul 2018 16:40:31 +0800
+Date: Mon, 1 Jul 2019 16:14:16 +0800
 Subject: [PATCH] ldb: Add configure options for packages
 
 Add configure options for the following packages:
@@ -15,27 +15,22 @@
 
 Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
 
-Update to version 1.4.1, and fix one configure error
-
-Cross answers file cross-answers-i586.txt is incomplete with 
-"Checking for a 64-bit host to support lmdb: UNKNOWN"
-
-we don't support lmdb, so only check when lmdb is support
-
+upgrade to version 1.5.4
 Signed-off-by: Changqing Li <changqing.li@windriver.com>
 ---
- lib/replace/wscript | 94 ++++++++++++++++++++++++++++++++++++++++-------------
- wscript             |  6 ++++
- 2 files changed, 77 insertions(+), 23 deletions(-)
+ lib/replace/wscript | 92 +++++++++++++++++++++++++++++++++++++++++------------
+ wscript             |  8 +++++
+ 2 files changed, 79 insertions(+), 21 deletions(-)
 
 diff --git a/lib/replace/wscript b/lib/replace/wscript
-index fd00a42..434192e 100644
+index a7fd25d..ad26041 100644
 --- a/lib/replace/wscript
 +++ b/lib/replace/wscript
-@@ -23,6 +23,41 @@ def set_options(opt):
+@@ -24,6 +24,41 @@ def options(opt):
+     opt.BUILTIN_DEFAULT('NONE')
      opt.PRIVATE_EXTENSION_DEFAULT('')
      opt.RECURSE('buildtools/wafsamba')
- 
++    
 +    opt.add_option('--with-acl',
 +                   help=("Enable use of acl"),
 +                   action="store_true", dest='enable_acl')
@@ -70,11 +65,10 @@
 +    opt.add_option('--without-libcap',
 +                   help=("Disable use of libcap"),
 +                   action="store_false", dest='enable_libcap', default=False)
-+
+ 
  @Utils.run_once
  def configure(conf):
-     conf.RECURSE('buildtools/wafsamba')
-@@ -32,12 +67,25 @@ def configure(conf):
+@@ -34,12 +69,25 @@ def configure(conf):
      conf.DEFINE('HAVE_LIBREPLACE', 1)
      conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1)
  
@@ -105,23 +99,22 @@
      conf.CHECK_HEADERS('port.h')
      conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h sys/fs/vx/quota.h')
      conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h')
-@@ -108,7 +156,9 @@ def configure(conf):
+@@ -110,8 +158,9 @@ def configure(conf):
      conf.CHECK_HEADERS('sys/fileio.h sys/filesys.h sys/dustat.h sys/sysmacros.h')
      conf.CHECK_HEADERS('xfs/libxfs.h netgroup.h')
  
--    conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
+-    conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h')
+-    conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h')
 +    if Options.options.enable_valgrind:
-+        conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
-+
++        conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h')
++        conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h')
      conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h')
      conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h')
      conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h')
-@@ -340,22 +390,20 @@ def configure(conf):
+@@ -380,20 +429,21 @@ def configure(conf):
  
-     conf.CHECK_FUNCS('prctl dirname basename')
+     strlcpy_in_bsd = False
  
--    strlcpy_in_bsd = False
--
 -    # libbsd on some platforms provides strlcpy and strlcat
 -    if not conf.CHECK_FUNCS('strlcpy strlcat'):
 -        if conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h',
@@ -136,11 +129,12 @@
 -
 -    if not conf.CHECK_FUNCS('closefrom'):
 -        conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h')
-+    if Options.options.enable_libbsd:
++    if Options.options.enable_libbsd: 
 +        # libbsd on some platforms provides strlcpy and strlcat
 +        if not conf.CHECK_FUNCS('strlcpy strlcat'):
-+            conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h',
-+                    checklibc=True)
++            if conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h',
++                                   checklibc=True):
++                strlcpy_in_bsd = True
 +        if not conf.CHECK_FUNCS('getpeereid'):
 +            conf.CHECK_FUNCS_IN('getpeereid', 'bsd', headers='sys/types.h bsd/unistd.h')
 +        if not conf.CHECK_FUNCS_IN('setproctitle', 'setproctitle', headers='setproctitle.h'):
@@ -153,20 +147,11 @@
  
      conf.CHECK_CODE('''
                  struct ucred cred;
-@@ -699,7 +747,7 @@ def configure(conf):
-     # look for a method of finding the list of network interfaces
-     for method in ['HAVE_IFACE_GETIFADDRS', 'HAVE_IFACE_AIX', 'HAVE_IFACE_IFCONF', 'HAVE_IFACE_IFREQ']:
-         bsd_for_strlcpy = ''
--        if strlcpy_in_bsd:
-+        if Options.options.enable_libbsd:
-             bsd_for_strlcpy = ' bsd'
-         if conf.CHECK_CODE('''
-                            #define %s 1
 diff --git a/wscript b/wscript
-index ad91bc6..2d20fee 100644
+index d3402a7..d4e0ce1 100644
 --- a/wscript
 +++ b/wscript
-@@ -36,6 +36,12 @@ def set_options(opt):
+@@ -38,6 +38,14 @@ def options(opt):
                     help='disable new LMDB backend for LDB',
                     action='store_true', dest='without_ldb_lmdb', default=False)
  
@@ -176,6 +161,8 @@
 +    opt.add_option('--without-valgrind',
 +                   help=("disable use of valgrind"),
 +                   action="store_false", dest='enable_valgrind', default=False)
++
++
  
  def configure(conf):
      conf.RECURSE('lib/tdb')
diff --git a/meta-openembedded/meta-networking/recipes-support/libldb/libldb_1.4.1.bb b/meta-openembedded/meta-networking/recipes-support/libldb/libldb_1.5.5.bb
similarity index 78%
rename from meta-openembedded/meta-networking/recipes-support/libldb/libldb_1.4.1.bb
rename to meta-openembedded/meta-networking/recipes-support/libldb/libldb_1.5.5.bb
index f3608c6..b19c964 100644
--- a/meta-openembedded/meta-networking/recipes-support/libldb/libldb_1.4.1.bb
+++ b/meta-openembedded/meta-networking/recipes-support/libldb/libldb_1.5.5.bb
@@ -4,16 +4,14 @@
 LICENSE = "LGPL-3.0+ & LGPL-2.1+ & GPL-3.0+"
 
 DEPENDS += "libtdb libtalloc libtevent popt"
-RDEPENDS_pyldb += "python samba"
-RCONFLICTS_${PN} = "samba"
-RCONFLICTS_pyldb = "samba-python"
+RDEPENDS_pyldb += "python3"
 
 SRC_URI = "http://samba.org/ftp/ldb/ldb-${PV}.tar.gz \
            file://do-not-import-target-module-while-cross-compile.patch \
-           file://options-1.4.1.patch \
-           file://0001-libldb-fix-config-error.patch \
            file://libldb-fix-musl-libc-unkown-type-error.patch \
            file://libldb-fix-musl-libc-conflict-type-error.patch \
+           file://0001-waf-add-support-of-cross_compile.patch \
+           file://options-1.5.4.patch \ 
           "
 
 PACKAGECONFIG ??= "\
@@ -27,6 +25,7 @@
 PACKAGECONFIG[libbsd] = "--with-libbsd,--without-libbsd,libbsd"
 PACKAGECONFIG[libcap] = "--with-libcap,--without-libcap,libcap"
 PACKAGECONFIG[valgrind] = "--with-valgrind,--without-valgrind,valgrind"
+PACKAGECONFIG[lmdb] = ",--without-ldb-lmdb,lmdb,"
 
 SRC_URI += "${@bb.utils.contains('PACKAGECONFIG', 'ldap', '', 'file://avoid-openldap-unless-wanted.patch', d)}"
 
@@ -34,14 +33,18 @@
                     file://man/ldb.3.xml;beginline=261;endline=262;md5=137f9fd61040c1505d1aa1019663fd08 \
                     file://tools/ldbdump.c;endline=19;md5=a7d4fc5d1f75676b49df491575a86a42"
 
-SRC_URI[md5sum] = "159a1b1a56dcccf410d1bba911be6076"
-SRC_URI[sha256sum] = "2df13aa25b376b314ce24182c37691959019523de3cc5356c40c1a333b0890a2"
+SRC_URI[md5sum] = "339a41ac9efaec680e6d1469dd9aa35b"
+SRC_URI[sha256sum] = "199f5861aa863f538ec66d5fa95ecc13254a2030c53daf0e47363fa9ba235c68"
 
 inherit waf-samba distro_features_check
 REQUIRED_DISTRO_FEATURES = "pam"
 
 S = "${WORKDIR}/ldb-${PV}"
 
+#cross_compile cannot use preforked process, since fork process earlier than point subproces.popen
+#to cross Popen
+export WAF_NO_PREFORK="yes"
+
 EXTRA_OECONF += "--disable-rpath \
                  --disable-rpath-install \
                  --bundled-libraries=cmocka \
@@ -49,7 +52,6 @@
                  --with-modulesdir=${libdir}/ldb/modules \
                  --with-privatelibdir=${libdir}/ldb \
                  --with-libiconv=${STAGING_DIR_HOST}${prefix}\
-                 --without-ldb-lmdb \
                 "
 
 PACKAGES =+ "pyldb pyldb-dbg pyldb-dev"
@@ -63,8 +65,8 @@
                     ${libdir}/ldb/modules/ldb/.debug/*"
 
 FILES_pyldb = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/* \
-               ${libdir}/libpyldb-util.so.* \
+               ${libdir}/libpyldb-util.*.so.* \
               "
 FILES_pyldb-dbg = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/.debug \
-                   ${libdir}/.debug/libpyldb-util.so.*"
-FILES_pyldb-dev = "${libdir}/libpyldb-util.so"
+                   ${libdir}/.debug/libpyldb-util.*.so.*"
+FILES_pyldb-dev = "${libdir}/libpyldb-util.*.so"
diff --git a/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/0001-waf-add-support-of-cross_compile.patch b/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/0001-waf-add-support-of-cross_compile.patch
new file mode 100644
index 0000000..e58339a
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/0001-waf-add-support-of-cross_compile.patch
@@ -0,0 +1,62 @@
+From 4b8463ff43f8983a706b181c5292491f9f954be1 Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Fri, 25 Jan 2019 15:00:59 +0800
+Subject: [PATCH] waf: add support of cross_compile
+
+After upgrade, waf also upgraded
+
+on 1.5.19, for cross_compile, subprocess.Popen is set to be
+samba_cross.cross_Popen, which will not execute testprog on
+host, but only read result from cross-answers.txt which is
+passed by option --cross-answer
+
+part of old code:
+    args = Utils.to_list(kw.get('exec_args', []))
+    proc = Utils.pproc.Popen([lastprog] + args, stdout=Utils.pproc.PIPE, stderr=Utils.pproc.PIPE)
+
+but on new version, exec_args is not used and cause do_configure
+failed with Exec format error
+
+fixed by append cross anser related args to cmd
+
+Upstream-Status: Submitted [https://gitlab.com/samba-team/samba/merge_requests/211]
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ third_party/waf/waflib/Tools/c_config.py | 11 ++++++-----
+ 1 file changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/third_party/waf/waflib/Tools/c_config.py b/third_party/waf/waflib/Tools/c_config.py
+index 7608215..767cf33 100644
+--- a/third_party/waf/waflib/Tools/c_config.py
++++ b/third_party/waf/waflib/Tools/c_config.py
+@@ -660,20 +660,21 @@ class test_exec(Task.Task):
+ 	"""
+ 	color = 'PINK'
+ 	def run(self):
++		args = self.generator.bld.kw.get('exec_args', [])
+ 		if getattr(self.generator, 'rpath', None):
+ 			if getattr(self.generator, 'define_ret', False):
+-				self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()])
+-			else:
+-				self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()])
++				self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()] + args)
++			else: 
++				self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()] + args)
+ 		else:
+ 			env = self.env.env or {}
+ 			env.update(dict(os.environ))
+ 			for var in ('LD_LIBRARY_PATH', 'DYLD_LIBRARY_PATH', 'PATH'):
+ 				env[var] = self.inputs[0].parent.abspath() + os.path.pathsep + env.get(var, '')
+ 			if getattr(self.generator, 'define_ret', False):
+-				self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()], env=env)
++				self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()] + args, env=env)
+ 			else:
+-				self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()], env=env)
++				self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()] + args, env=env)
+ 
+ @feature('test_exec')
+ @after_method('apply_link')
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/options-2.1.14.patch b/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/options-2.2.0.patch
similarity index 86%
rename from meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/options-2.1.14.patch
rename to meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/options-2.2.0.patch
index df45d36..3847b01 100644
--- a/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/options-2.1.14.patch
+++ b/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/options-2.2.0.patch
@@ -1,6 +1,6 @@
-From 319a2a1bb46ae35fa9d66878cb08285035f0bd5f Mon Sep 17 00:00:00 2001
-From: Jackie Huang <jackie.huang@windriver.com>
-Date: Thu, 19 Jul 2018 15:41:31 +0800
+From c6d76c8ade57b996a8123b1c1a3a28ba4666e9c6 Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Thu, 20 Jun 2019 10:57:06 +0800
 Subject: [PATCH] talloc: Add configure options for packages
 
 Add configure options for the following packages:
@@ -19,22 +19,21 @@
 
 Signed-off-by: Joe Slater <joe.slater@windriver.com>
 
-Modified tp apply to version 2.1.14
+Modified tp apply to version 2.2.0
 Signed-off-by: Changqing Li <changqing.li@windriver.com>
 ---
- lib/replace/wscript | 90 +++++++++++++++++++++++++++++++++++++++++------------
- wscript             |  7 +++++
- 2 files changed, 77 insertions(+), 20 deletions(-)
+ lib/replace/wscript | 91 ++++++++++++++++++++++++++++++++++++++++-------------
+ wscript             |  7 ++++-
+ 2 files changed, 76 insertions(+), 22 deletions(-)
 
 diff --git a/lib/replace/wscript b/lib/replace/wscript
-index fd00a42..a77c058 100644
+index 1d01e1e..7bc7666 100644
 --- a/lib/replace/wscript
 +++ b/lib/replace/wscript
-@@ -22,6 +22,41 @@ def set_options(opt):
-     opt.BUILTIN_DEFAULT('NONE')
+@@ -25,6 +25,41 @@ def options(opt):
      opt.PRIVATE_EXTENSION_DEFAULT('')
      opt.RECURSE('buildtools/wafsamba')
-+   
+ 
 +    opt.add_option('--with-acl',
 +                   help=("Enable use of acl"),
 +                   action="store_true", dest='enable_acl')
@@ -69,10 +68,11 @@
 +    opt.add_option('--without-libcap',
 +                   help=("Disable use of libcap"),
 +                   action="store_false", dest='enable_libcap', default=False)
- 
++
  @Utils.run_once
  def configure(conf):
-@@ -32,12 +67,25 @@ def configure(conf):
+     conf.RECURSE('buildtools/wafsamba')
+@@ -34,12 +69,25 @@ def configure(conf):
      conf.DEFINE('HAVE_LIBREPLACE', 1)
      conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1)
  
@@ -101,20 +101,21 @@
 +        conf.CHECK_HEADERS('sys/capability.h')
 +
      conf.CHECK_HEADERS('port.h')
-     conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h sys/fs/vx/quota.h')
+     conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h')
      conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h')
-@@ -108,7 +156,9 @@ def configure(conf):
+@@ -110,8 +158,9 @@ def configure(conf):
      conf.CHECK_HEADERS('sys/fileio.h sys/filesys.h sys/dustat.h sys/sysmacros.h')
      conf.CHECK_HEADERS('xfs/libxfs.h netgroup.h')
  
--    conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
+-    conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h')
+-    conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h')
 +    if Options.options.enable_valgrind:
-+        conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
-+
++        conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h')
++        conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h')
      conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h')
      conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h')
      conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h')
-@@ -342,20 +392,20 @@ def configure(conf):
+@@ -380,20 +429,20 @@ def configure(conf):
  
      strlcpy_in_bsd = False
  
@@ -150,23 +151,23 @@
      conf.CHECK_CODE('''
                  struct ucred cred;
 diff --git a/wscript b/wscript
-index 18f726e..fed8ab9 100644
+index e402069..9976f4c 100644
 --- a/wscript
 +++ b/wscript
-@@ -32,6 +32,13 @@ def set_options(opt):
+@@ -31,7 +31,12 @@ def options(opt):
          opt.add_option('--enable-talloc-compat1',
                         help=("Build talloc 1.x.x compat library [False]"),
                         action="store_true", dest='TALLOC_COMPAT1', default=False)
+-
 +        opt.add_option('--with-valgrind',
 +                       help=("enable use of valgrind"),
 +                       action="store_true", dest='enable_valgrind')
 +        opt.add_option('--without-valgrind',
 +                       help=("disable use of valgrind"),
 +                       action="store_false", dest='enable_valgrind', default=False)
-+
- 
  
  def configure(conf):
+     conf.RECURSE('lib/replace')
 -- 
 2.7.4
 
diff --git a/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc_2.1.14.bb b/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc_2.2.0.bb
similarity index 80%
rename from meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc_2.1.14.bb
rename to meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc_2.2.0.bb
index 9a463a6..88cdd30 100644
--- a/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc_2.1.14.bb
+++ b/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc_2.2.0.bb
@@ -7,10 +7,11 @@
 
 
 SRC_URI = "https://samba.org/ftp/talloc/talloc-${PV}.tar.gz \
-           file://options-2.1.14.patch \
+           file://options-2.2.0.patch \
+           file://0001-waf-add-support-of-cross_compile.patch \
 "
-SRC_URI[md5sum] = "7478da02e309316231a497a9f17a980d"
-SRC_URI[sha256sum] = "b185602756a628bac507fa8af8b9df92ace69d27c0add5dab93190ad7c3367ce"
+SRC_URI[md5sum] = "b60781acc2fb42d7a1e08751e508d3df"
+SRC_URI[sha256sum] = "5c6f6a45ef96b3fd0b28942673a68d0c6af5dcca9d676a2e4d57ce7e86c22ebc"
 
 inherit waf-samba
 
@@ -29,6 +30,10 @@
 
 S = "${WORKDIR}/talloc-${PV}"
 
+#cross_compile cannot use preforked process, since fork process earlier than point subproces.popen
+#to cross Popen
+export WAF_NO_PREFORK="yes"
+
 EXTRA_OECONF += "--disable-rpath \
                  --disable-rpath-install \
                  --bundled-libraries=NONE \
@@ -46,4 +51,4 @@
                   ${libdir}/libpytalloc-util.so.2.1.1 \
                  "
 FILES_pytalloc-dev = "${libdir}/libpytalloc-util.so"
-RDEPENDS_pytalloc = "python"
+RDEPENDS_pytalloc = "python3"
diff --git a/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/0001-Makefile-fix-problem-that-waf-cannot-found.patch b/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/0001-Makefile-fix-problem-that-waf-cannot-found.patch
deleted file mode 100644
index 10f2ef8..0000000
--- a/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/0001-Makefile-fix-problem-that-waf-cannot-found.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 7205761d654636a6c1fad03a3ca40d38e253e192 Mon Sep 17 00:00:00 2001
-From: Changqing Li <changqing.li@windriver.com>
-Date: Fri, 25 Jan 2019 16:01:07 +0800
-Subject: [PATCH] Makefile: fix problem that waf cannot found
-
-tdb is subfolder of samba, but it can also build independently.
-so both path need to be added into PATH
-
-Upsteam-Status: Inappropriate [oe specific]
-
-Fix reject by upstream since upsteam need to support both python2/3,
-so drop add append PATH. refer link:
-https://gitlab.com/samba-team/samba/merge_requests/209
-https://gitlab.com/samba-team/samba/merge_requests/211
-
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
----
- Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile b/Makefile
-index 3e70146..64bb393 100644
---- a/Makefile
-+++ b/Makefile
-@@ -1,6 +1,6 @@
- # simple makefile wrapper to run waf
- 
--WAF_BINARY=$(PYTHON) ../../buildtools/bin/waf
-+WAF_BINARY=PATH=buildtools/bin:../../buildtools/bin:$$PATH waf
- WAF=PYTHONHASHSEED=1 WAF_MAKE=1 $(WAF_BINARY)
- 
- all:
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/do-not-check-xsltproc-manpages.patch b/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/do-not-check-xsltproc-manpages.patch
deleted file mode 100644
index bcc45c9..0000000
--- a/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/do-not-check-xsltproc-manpages.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Don't check manpages for xsltproc.
-
-Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
-
---- tdb-1.3.0.orig/wscript	2015-04-22 09:52:32.366000222 +0900
-+++ tdb-1.3.0/wscript	2015-04-22 09:51:57.720000205 +0900
-@@ -90,7 +90,7 @@ def configure(conf):
-         not conf.env.disable_tdb_mutex_locking):
-         conf.define('USE_TDB_MUTEX_LOCKING', 1)
- 
--    conf.CHECK_XSLTPROC_MANPAGES()
-+    conf.find_program('xsltproc', var='XSLTPROC')
- 
-     if not conf.env.disable_python:
-         # also disable if we don't have the python libs installed
diff --git a/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/tdb-Add-configure-options-for-packages.patch b/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/tdb-Add-configure-options-for-packages.patch
index e6e1023..481fd68 100644
--- a/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/tdb-Add-configure-options-for-packages.patch
+++ b/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/tdb-Add-configure-options-for-packages.patch
@@ -1,6 +1,6 @@
-From 13bbc851d9fd7396f087758e614abba60eeb2aad Mon Sep 17 00:00:00 2001
+From 71a10c176c34da898c0169371b3c1b032d2f88b1 Mon Sep 17 00:00:00 2001
 From: Changqing Li <changqing.li@windriver.com>
-Date: Wed, 23 Jan 2019 10:14:05 +0800
+Date: Wed, 19 Jun 2019 17:53:34 +0800
 Subject: [PATCH] tdb: Add configure options for packages
 
 Add configure options for the following packages:
@@ -15,22 +15,16 @@
 
 Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
 
-Update for libtdb_1.3.14.
+Update to 1.4.0
 
-Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
-
-Update for libtdb_1.3.16
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
-
-Update for libtdb_1.3.17
 Signed-off-by: Changqing Li <changqing.li@windriver.com>
 ---
- lib/replace/wscript | 95 ++++++++++++++++++++++++++++++++++++++++-------------
+ lib/replace/wscript | 94 ++++++++++++++++++++++++++++++++++++++++-------------
  wscript             |  6 ++++
- 2 files changed, 79 insertions(+), 22 deletions(-)
+ 2 files changed, 78 insertions(+), 22 deletions(-)
 
 diff --git a/lib/replace/wscript b/lib/replace/wscript
-index 6cbae93..7aeaf46 100644
+index 1d01e1e..2336dc3 100644
 --- a/lib/replace/wscript
 +++ b/lib/replace/wscript
 @@ -25,6 +25,41 @@ def options(opt):
@@ -104,26 +98,26 @@
 +        conf.CHECK_HEADERS('sys/capability.h')
 +
      conf.CHECK_HEADERS('port.h')
-     conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h sys/fs/vx/quota.h')
+     conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h')
      conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h')
-@@ -110,8 +158,10 @@ def configure(conf):
+@@ -110,9 +158,10 @@ def configure(conf):
      conf.CHECK_HEADERS('sys/fileio.h sys/filesys.h sys/dustat.h sys/sysmacros.h')
      conf.CHECK_HEADERS('xfs/libxfs.h netgroup.h')
  
 -    conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h')
 -    conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h')
+-    conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h')
 +    if Options.options.enable_valgrind:
 +        conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h')
 +        conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h')
 +
-     conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h')
      conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h')
      conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h')
-@@ -379,21 +429,22 @@ def configure(conf):
-     conf.CHECK_FUNCS('prctl dirname basename')
+     conf.CHECK_HEADERS('syscall.h sys/syscall.h inttypes.h')
+@@ -380,20 +429,21 @@ def configure(conf):
  
      strlcpy_in_bsd = False
--
+ 
 -    # libbsd on some platforms provides strlcpy and strlcat
 -    if not conf.CHECK_FUNCS('strlcpy strlcat'):
 -        if conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h',
@@ -138,7 +132,6 @@
 -
 -    if not conf.CHECK_FUNCS('closefrom'):
 -        conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h')
-+    
 +    if Options.options.enable_libbsd:
 +        # libbsd on some platforms provides strlcpy and strlcat
 +        if not conf.CHECK_FUNCS('strlcpy strlcat'):
@@ -158,7 +151,7 @@
      conf.CHECK_CODE('''
                  struct ucred cred;
 diff --git a/wscript b/wscript
-index bc5ee26..9ac10b6 100644
+index 5598d02..8d47244 100644
 --- a/wscript
 +++ b/wscript
 @@ -69,6 +69,12 @@ def options(opt):
diff --git a/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb_1.3.17.bb b/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb_1.4.0.bb
similarity index 70%
rename from meta-openembedded/meta-networking/recipes-support/libtdb/libtdb_1.3.17.bb
rename to meta-openembedded/meta-networking/recipes-support/libtdb/libtdb_1.4.0.bb
index 4c7755c..6c191fb 100644
--- a/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb_1.3.17.bb
+++ b/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb_1.4.0.bb
@@ -7,14 +7,12 @@
                     file://include/tdb.h;endline=27;md5=f5bb544641d3081821bcc1dd58310be6"
 
 SRC_URI = "https://samba.org/ftp/tdb/tdb-${PV}.tar.gz \
-           file://do-not-check-xsltproc-manpages.patch \
            file://tdb-Add-configure-options-for-packages.patch \
            file://0001-waf-add-support-of-cross_compile.patch \
-           file://0001-Makefile-fix-problem-that-waf-cannot-found.patch \
 "
 
-SRC_URI[md5sum] = "519d373ac72a66b0a2739dbb495de127"
-SRC_URI[sha256sum] = "1cb4399394c60a773430ca54848359adcf54fb6f136afdcfcbbe62b5f4245614"
+SRC_URI[md5sum] = "c4c2f8cf9e691244a7f2ecfa3baadecc"
+SRC_URI[sha256sum] = "c1a0729c5400fb495465fa4bd953ae290db43c28dacd0506aef50dc482132d35"
 
 PACKAGECONFIG ??= "\
     ${@bb.utils.filter('DISTRO_FEATURES', 'acl', d)} \
@@ -42,11 +40,18 @@
                  --with-libiconv=${STAGING_DIR_HOST}${prefix}\
                 "
 
-PACKAGES += "tdb-tools python-tdb"
+do_install_append() {
+     # add this link for cross check python module existence. eg: on x86-64 host, check python module
+     # under recipe-sysroot which is mips64.
+     cd ${D}${PYTHON_SITEPACKAGES_DIR}; ln -s tdb.*.so tdb.so
+}
 
-RPROVIDES_${PN}-dbg += "python-tdb-dbg"
+PACKAGES += "tdb-tools python3-tdb"
+
+RPROVIDES_${PN}-dbg += "python3-tdb-dbg"
 
 FILES_${PN} = "${libdir}/*.so.*"
 FILES_tdb-tools = "${bindir}/*"
-FILES_python-tdb = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/*"
-RDEPENDS_python-tdb = "python"
+FILES_python3-tdb = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/*"
+RDEPENDS_python3-tdb = "python3"
+INSANE_SKIP_${MLPREFIX}python3-tdb = "dev-so"
diff --git a/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent/0001-waf-add-support-of-cross_compile.patch b/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent/0001-waf-add-support-of-cross_compile.patch
new file mode 100644
index 0000000..a717f1b
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent/0001-waf-add-support-of-cross_compile.patch
@@ -0,0 +1,62 @@
+From 4b8463ff43f8983a706b181c5292491f9f954be1 Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Fri, 25 Jan 2019 15:00:59 +0800
+Subject: [PATCH] waf: add support of cross_compile
+
+After upgrade, waf also upgraded.
+
+on 1.5.19, for cross_compile, subprocess.Popen is set to be
+samba_cross.cross_Popen, which will not execute testprog on
+host, but only read result from cross-answers.txt which is
+passed by option --cross-answer
+
+part of old code:
+    args = Utils.to_list(kw.get('exec_args', []))
+    proc = Utils.pproc.Popen([lastprog] + args, stdout=Utils.pproc.PIPE, stderr=Utils.pproc.PIPE)
+
+but on new version, exec_args is not used and cause do_configure
+failed with Exec format error
+
+fixed by append cross anser related args to cmd
+
+Upstream-Status: Submitted [https://gitlab.com/samba-team/samba/merge_requests/211]
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ third_party/waf/waflib/Tools/c_config.py | 11 ++++++-----
+ 1 file changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/third_party/waf/waflib/Tools/c_config.py b/third_party/waf/waflib/Tools/c_config.py
+index 7608215..767cf33 100644
+--- a/third_party/waf/waflib/Tools/c_config.py
++++ b/third_party/waf/waflib/Tools/c_config.py
+@@ -660,20 +660,21 @@ class test_exec(Task.Task):
+ 	"""
+ 	color = 'PINK'
+ 	def run(self):
++		args = self.generator.bld.kw.get('exec_args', [])
+ 		if getattr(self.generator, 'rpath', None):
+ 			if getattr(self.generator, 'define_ret', False):
+-				self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()])
+-			else:
+-				self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()])
++				self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()] + args)
++			else: 
++				self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()] + args)
+ 		else:
+ 			env = self.env.env or {}
+ 			env.update(dict(os.environ))
+ 			for var in ('LD_LIBRARY_PATH', 'DYLD_LIBRARY_PATH', 'PATH'):
+ 				env[var] = self.inputs[0].parent.abspath() + os.path.pathsep + env.get(var, '')
+ 			if getattr(self.generator, 'define_ret', False):
+-				self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()], env=env)
++				self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()] + args, env=env)
+ 			else:
+-				self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()], env=env)
++				self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()] + args, env=env)
+ 
+ @feature('test_exec')
+ @after_method('apply_link')
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent/options-0.9.36.patch b/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent/options-0.10.0.patch
similarity index 82%
rename from meta-openembedded/meta-networking/recipes-support/libtevent/libtevent/options-0.9.36.patch
rename to meta-openembedded/meta-networking/recipes-support/libtevent/libtevent/options-0.10.0.patch
index 363c586..882af06 100644
--- a/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent/options-0.9.36.patch
+++ b/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent/options-0.10.0.patch
@@ -1,7 +1,7 @@
-From c3e2e4f89cf37b27609fd02ad67eb02d0015cc1e Mon Sep 17 00:00:00 2001
-From: Jackie Huang <jackie.huang@windriver.com>
-Date: Wed, 21 Sep 2016 09:57:49 +0800
-Subject: [PATCH 1/1] tevent: Add configure options for packages
+From b2b19aa9968258b22cf31db0b9dba6bcf96046cf Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Thu, 20 Jun 2019 13:55:44 +0800
+Subject: [PATCH] Add configure options for packages
 
 Add configure options for the following packages:
  - acl
@@ -18,16 +18,19 @@
 Modified to apply to version 0.9.33.
 
 Signed-off-by: Joe Slater <joe.slater@windriver.com>
+
+Update patch to version 0.10.0
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
 ---
  lib/replace/wscript | 89 ++++++++++++++++++++++++++++++++++++++++-------------
- wscript             |  7 ++++-
- 2 files changed, 73 insertions(+), 23 deletions(-)
+ wscript             |  6 ++++
+ 2 files changed, 74 insertions(+), 21 deletions(-)
 
 diff --git a/lib/replace/wscript b/lib/replace/wscript
-index 2c638b7..079761d 100644
+index 1d01e1e..5cf444a 100644
 --- a/lib/replace/wscript
 +++ b/lib/replace/wscript
-@@ -23,6 +23,41 @@ def set_options(opt):
+@@ -25,6 +25,41 @@ def options(opt):
      opt.PRIVATE_EXTENSION_DEFAULT('')
      opt.RECURSE('buildtools/wafsamba')
  
@@ -69,7 +72,7 @@
  @Utils.run_once
  def configure(conf):
      conf.RECURSE('buildtools/wafsamba')
-@@ -32,12 +67,25 @@ def configure(conf):
+@@ -34,12 +69,25 @@ def configure(conf):
      conf.DEFINE('HAVE_LIBREPLACE', 1)
      conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1)
  
@@ -98,24 +101,24 @@
 +        conf.CHECK_HEADERS('sys/capability.h')
 +
      conf.CHECK_HEADERS('port.h')
-     conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h sys/fs/vx/quota.h')
+     conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h')
      conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h')
-@@ -101,7 +149,8 @@ def configure(conf):
+@@ -110,8 +158,9 @@ def configure(conf):
      conf.CHECK_HEADERS('sys/fileio.h sys/filesys.h sys/dustat.h sys/sysmacros.h')
      conf.CHECK_HEADERS('xfs/libxfs.h netgroup.h')
  
--    conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
+-    conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h')
+-    conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h')
 +    if Options.options.enable_valgrind:
-+        conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
++        conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h')
++        conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h')
      conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h')
      conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h')
      conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h')
-@@ -294,22 +343,18 @@ def configure(conf):
+@@ -380,20 +429,18 @@ def configure(conf):
  
-     conf.CHECK_FUNCS('prctl dirname basename')
+     strlcpy_in_bsd = False
  
--    strlcpy_in_bsd = False
--
 -    # libbsd on some platforms provides strlcpy and strlcat
 -    if not conf.CHECK_FUNCS('strlcpy strlcat'):
 -        if conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h',
@@ -127,6 +130,9 @@
 -        conf.CHECK_FUNCS_IN('setproctitle', 'bsd', headers='sys/types.h bsd/unistd.h')
 -    if not conf.CHECK_FUNCS('setproctitle_init'):
 -        conf.CHECK_FUNCS_IN('setproctitle_init', 'bsd', headers='sys/types.h bsd/unistd.h')
+-
+-    if not conf.CHECK_FUNCS('closefrom'):
+-        conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h')
 +    if Options.options.enable_libbsd:
 +        # libbsd on some platforms provides strlcpy and strlcat
 +        if not conf.CHECK_FUNCS('strlcpy strlcat'):
@@ -136,32 +142,20 @@
 +            conf.CHECK_FUNCS_IN('getpeereid', 'bsd', headers='sys/types.h bsd/unistd.h')
 +        if not conf.CHECK_FUNCS_IN('setproctitle', 'setproctitle', headers='setproctitle.h'):
 +            conf.CHECK_FUNCS_IN('setproctitle', 'bsd', headers='sys/types.h bsd/unistd.h')
- 
--    if not conf.CHECK_FUNCS('closefrom'):
--        conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h')
++
 +        if not conf.CHECK_FUNCS('closefrom'):
 +            conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h')
  
      conf.CHECK_CODE('''
                  struct ucred cred;
-@@ -660,7 +705,7 @@ removeea setea
-     # look for a method of finding the list of network interfaces
-     for method in ['HAVE_IFACE_GETIFADDRS', 'HAVE_IFACE_AIX', 'HAVE_IFACE_IFCONF', 'HAVE_IFACE_IFREQ']:
-         bsd_for_strlcpy = ''
--        if strlcpy_in_bsd:
-+        if Options.options.enable_libbsd:
-             bsd_for_strlcpy = ' bsd'
-         if conf.CHECK_CODE('''
-                            #define %s 1
 diff --git a/wscript b/wscript
-index 94d190f..742f779 100644
+index ded182a..824a6dd 100644
 --- a/wscript
 +++ b/wscript
-@@ -22,7 +22,12 @@ def set_options(opt):
-     opt.PRIVATE_EXTENSION_DEFAULT('tevent', noextension='tevent')
+@@ -25,6 +25,12 @@ def options(opt):
      opt.RECURSE('lib/replace')
      opt.RECURSE('lib/talloc')
--
+ 
 +    opt.add_option('--with-valgrind',
 +                   help=("enable use of valgrind"),
 +                   action="store_true", dest='enable_valgrind')
@@ -172,5 +166,5 @@
  def configure(conf):
      conf.RECURSE('lib/replace')
 -- 
-2.16.2
+2.7.4
 
diff --git a/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent_0.9.37.bb b/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent_0.10.0.bb
similarity index 60%
rename from meta-openembedded/meta-networking/recipes-support/libtevent/libtevent_0.9.37.bb
rename to meta-openembedded/meta-networking/recipes-support/libtevent/libtevent_0.10.0.bb
index 4df251c..a581d3a 100644
--- a/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent_0.9.37.bb
+++ b/meta-openembedded/meta-networking/recipes-support/libtevent/libtevent_0.10.0.bb
@@ -4,16 +4,17 @@
 LICENSE = "LGPLv3+"
 
 DEPENDS += "libtalloc libtirpc"
-RDEPENDS_python-tevent = "python"
+RDEPENDS_python3-tevent = "python3"
 
 SRC_URI = "https://samba.org/ftp/tevent/tevent-${PV}.tar.gz \
-           file://options-0.9.36.patch \
+           file://options-0.10.0.patch \
            file://0001-libtevent-fix-musl-libc-compile-error.patch \
+           file://0001-waf-add-support-of-cross_compile.patch \
 "
 LIC_FILES_CHKSUM = "file://tevent.h;endline=26;md5=4e458d658cb25e21efc16f720e78b85a"
 
-SRC_URI[md5sum] = "6859cd4081fdb2a76b1cb4bf1c803a59"
-SRC_URI[sha256sum] = "168345ed65eac03785cf77b95238e7dc66cbb473a42811693a6b0916e5dae7e0"
+SRC_URI[md5sum] = "97ea9861252e52c24adf6c45ab676a60"
+SRC_URI[sha256sum] = "33f39612cd6d1ae6a737245784581494846f5bb07827983d2f41f942446aa4e6"
 
 inherit waf-samba
 
@@ -32,15 +33,26 @@
 
 S = "${WORKDIR}/tevent-${PV}"
 
+#cross_compile cannot use preforked process, since fork process earlier than point subproces.popen
+#to cross Popen
+export WAF_NO_PREFORK="yes"
+
 EXTRA_OECONF += "--disable-rpath \
                  --bundled-libraries=NONE \
                  --builtin-libraries=replace \
                  --with-libiconv=${STAGING_DIR_HOST}${prefix}\
                  --without-gettext \
                 "
+do_install_append() {
+     # add this link for cross check python module existence. eg: on x86-64 host, check python module
+     # under recipe-sysroot which is mips64. 
+     cd ${D}${PYTHON_SITEPACKAGES_DIR}; ln -s _tevent.*.so _tevent.so
+}
 
-PACKAGES += "python-tevent"
+PACKAGES += "python3-tevent"
 
-RPROVIDES_${PN}-dbg += "python-tevent-dbg"
+RPROVIDES_${PN}-dbg += "python3-tevent-dbg"
 
-FILES_python-tevent = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/*"
+FILES_python3-tevent = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/*"
+
+INSANE_SKIP_${MLPREFIX}python3-tevent = "dev-so"
diff --git a/meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2_1.38.0.bb b/meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2_1.39.1.bb
similarity index 63%
rename from meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2_1.38.0.bb
rename to meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2_1.39.1.bb
index 42b4379..6077daf 100644
--- a/meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2_1.38.0.bb
+++ b/meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2_1.39.1.bb
@@ -4,9 +4,11 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://COPYING;md5=764abdf30b2eadd37ce47dcbce0ea1ec"
 
++UPSTREAM_CHECK_URI = "https://github.com/nghttp2/nghttp2/releases"
+
 SRC_URI = "https://github.com/nghttp2/nghttp2/releases/download/v${PV}/nghttp2-${PV}.tar.xz"
-SRC_URI[md5sum] = "45b47086ee6da8171e11887c1665f275"
-SRC_URI[sha256sum] = "ef75c761858241c6b4372fa6397aa0481a984b84b7b07c4ec7dc2d7b9eee87f8"
+SRC_URI[md5sum] = "02b015cb178c46f27dd87228e33db35f"
+SRC_URI[sha256sum] = "679160766401f474731fd60c3aca095f88451e3cc4709b72306e4c34cf981448"
 
 DEPENDS = "libxml2 openssl zlib jansson cunit c-ares"
 
diff --git a/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt/0001-Add-configure-time-check-for-gettid-API.patch b/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt/0001-Add-configure-time-check-for-gettid-API.patch
new file mode 100644
index 0000000..9484d0b
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt/0001-Add-configure-time-check-for-gettid-API.patch
@@ -0,0 +1,45 @@
+From 25d5daf30aa2dc451ba528712f668036d8506054 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Jul 2019 07:50:26 -0700
+Subject: [PATCH] Add configure time check for gettid API
+
+glibc 2.30 has added this syscalls wrapper
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac  | 1 +
+ src/log_msg.c | 2 ++
+ 2 files changed, 3 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index 9e32a4a..6d1067b 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -33,6 +33,7 @@ if test -n "$TIRPC_LIBS"; then
+   AC_DEFINE(HAVE_TIRPC, 1, [Define to 1 if TIRPC is available])
+ fi
+ 
++AC_CHECK_FUNCS(gettid)
+ dnl The difficult part: could we reconfigure NSS or must we use DNS ?
+ AC_CHECK_FUNCS(__nss_configure_lookup)
+ if eval "test \"`echo '$ac_cv_func___nss_configure_lookup'`\" != yes"; then
+diff --git a/src/log_msg.c b/src/log_msg.c
+index 49f0905..37da311 100644
+--- a/src/log_msg.c
++++ b/src/log_msg.c
+@@ -26,6 +26,7 @@
+ #include "log_msg.h"
+ 
+ #include <sys/syscall.h>
++#if !HAVE_GETTID
+ #ifdef __NR_gettid
+ static pid_t
+ gettid (void)
+@@ -39,6 +40,7 @@ gettid (void)
+     return getpid ();
+ }
+ #endif
++#endif
+ 
+ int debug_flag = 0;
+ int logfile_flag = 0;
diff --git a/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt_2.6.bb b/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt_2.6.bb
index 1a64e6c..4f7f8aa 100644
--- a/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt_2.6.bb
+++ b/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt_2.6.bb
@@ -32,6 +32,7 @@
            file://ypbind.init \
            file://ypbind.service \
            file://0001-dns_hosts-Fix-build-with-musl.patch \
+           file://0001-Add-configure-time-check-for-gettid-API.patch \
            "
 SRC_URI[md5sum] = "7cf89641fdc128d0919207e4b7caaf1d"
 SRC_URI[sha256sum] = "0696c0263c4fd48a4ff2ce6c109f05f37aab0f71646d81cb22c7c28591bf80eb"
diff --git a/meta-openembedded/meta-networking/recipes-support/ntop/ntop/fix-missing-return-from-non-void-function.patch b/meta-openembedded/meta-networking/recipes-support/ntop/ntop/fix-missing-return-from-non-void-function.patch
new file mode 100644
index 0000000..e627e59
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/ntop/ntop/fix-missing-return-from-non-void-function.patch
@@ -0,0 +1,19 @@
+Fix following error:
+
+netflowPlugin.c: In function 'netflowUtilsLoop':
+netflowPlugin.c:2144:1: error: no return statement in function returning non-void [-Werror=return-type]
+ 2144 | }
+      | ^
+
+Return NULL like netflowMainLoop does.
+
+--- ntop-5.0.1.orig/plugins/netflowPlugin.c	2012-03-09 17:44:17.000000000 +0000
++++ ntop-5.0.1/plugins/netflowPlugin.c	2019-08-09 10:25:40.878799852 +0000
+@@ -2141,6 +2141,7 @@
+       waitCondvar(&myGlobals.device[deviceId].netflowGlobals->ifStatsQueueCondvar);
+     }
+   }
++  return(NULL);
+ }
+ #endif
+ 
diff --git a/meta-openembedded/meta-networking/recipes-support/ntop/ntop_5.0.1.bb b/meta-openembedded/meta-networking/recipes-support/ntop/ntop_5.0.1.bb
index 2a7a7f2..80f009b 100644
--- a/meta-openembedded/meta-networking/recipes-support/ntop/ntop_5.0.1.bb
+++ b/meta-openembedded/meta-networking/recipes-support/ntop/ntop_5.0.1.bb
@@ -18,6 +18,7 @@
            file://use-static-inline.patch \
            file://0001-nDPI-Include-sys-types.h.patch \
            file://0001-plugins-Makefile.am-fix-for-automake-1.16.1.patch \
+           file://fix-missing-return-from-non-void-function.patch \
           "
 SRC_URI[md5sum] = "01710b6925a8a5ffe1a41b8b512ebd69"
 SRC_URI[sha256sum] = "7e8e84cb14d2173beaca4d4cb991a14d84a4bef84ec37b2276bc363f45c52ef8"
diff --git a/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp/nuttcp.socket b/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp/nuttcp.socket
new file mode 100644
index 0000000..a8ae74f
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp/nuttcp.socket
@@ -0,0 +1,9 @@
+[Unit]
+Description=Network Performance Testing Server Activation Socket
+
+[Socket]
+ListenStream=5000
+Accept=true
+
+[Install]
+WantedBy=sockets.target
diff --git a/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp/nuttcp@.service b/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp/nuttcp@.service
new file mode 100644
index 0000000..b778e85
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp/nuttcp@.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=Network Performance Testing Server
+After=local-fs.target
+
+[Service]
+User=nobody
+ExecStart=/usr/bin/nuttcp -S
+StandardInput=socket
diff --git a/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp_8.2.2.bb b/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp_8.2.2.bb
index 2fd5631..193caf3 100644
--- a/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp_8.2.2.bb
+++ b/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp_8.2.2.bb
@@ -12,7 +12,9 @@
 
 UPSTREAM_CHECK_URI = "https://www.nuttcp.net/nuttcp/beta/"
 
-SRC_URI = "http://nuttcp.net/${BPN}/beta/${BP}.c"
+SRC_URI = "http://nuttcp.net/${BPN}/beta/${BP}.c \
+           file://nuttcp@.service \
+           file://nuttcp.socket"
 SRC_URI[md5sum] = "d3c92c4d2f261221193c3726c1b9a42f"
 SRC_URI[sha256sum] = "8c5595bcd27c2fd66831be74c390df078cfb1870aa427f2511ac2586d236c8a1"
 
@@ -24,5 +26,13 @@
 
 do_install () {
     install -d ${D}${bindir}
+    install -d ${D}${systemd_system_unitdir}
     install -m 0755 nuttcp ${D}${bindir}
+    install -m 0644 ${WORKDIR}/nuttcp@.service ${D}${systemd_system_unitdir}
+    install -m 0644 ${WORKDIR}/nuttcp.socket ${D}${systemd_system_unitdir}
 }
+
+FILES_${PN} += " \
+    ${bindir} \
+    ${systemd_system_unitdir} \
+"
diff --git a/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn/openvpn b/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn/openvpn
index a3cd6a2..e5af4b2 100755
--- a/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn/openvpn
+++ b/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn/openvpn
@@ -4,6 +4,7 @@
 # <rob@mars.org>, edited by iwj and cs
 # Modified for openvpn by Alberto Gonzalez Iniesta <agi@agi.as>
 # Modified for restarting / starting / stopping single tunnels by Richard Mueller <mueller@teamix.net>
+# Modified for respecting pid file on service start by Fabian Klemp <fabian.klemp@axino-group.com>
 
 test $DEBIAN_SCRIPT_DEBUG && set -v -x
 
@@ -14,10 +15,17 @@
 
 start_vpn () {
     modprobe tun >/dev/null 2>&1 || true
-    $DAEMON --daemon --writepid /var/run/openvpn.$NAME.pid \
-            --config $CONFIG_DIR/$NAME.conf --cd $CONFIG_DIR || echo -n " FAILED->"
+    start-stop-daemon --start --quiet --pidfile /var/run/openvpn.$NAME.pid \
+            --exec $DAEMON -- \
+            --daemon --writepid /var/run/openvpn.$NAME.pid \
+            --config $CONFIG_DIR/$NAME.conf --cd $CONFIG_DIR || rc="$?"
+    case $rc in
+        1) echo -n " ALREADY STARTED->";;
+        3) echo -n " FAILED->";;
+    esac
     echo -n " $NAME"
 }
+
 stop_vpn () {
    kill `cat $PIDFILE` || true
   rm $PIDFILE
diff --git a/meta-openembedded/meta-networking/recipes-support/strongswan/strongswan_5.7.1.bb b/meta-openembedded/meta-networking/recipes-support/strongswan/strongswan_5.8.0.bb
similarity index 94%
rename from meta-openembedded/meta-networking/recipes-support/strongswan/strongswan_5.7.1.bb
rename to meta-openembedded/meta-networking/recipes-support/strongswan/strongswan_5.8.0.bb
index 5a4e2d3..fa1bd97 100644
--- a/meta-openembedded/meta-networking/recipes-support/strongswan/strongswan_5.7.1.bb
+++ b/meta-openembedded/meta-networking/recipes-support/strongswan/strongswan_5.8.0.bb
@@ -12,8 +12,8 @@
            file://0001-memory.h-Include-stdint.h-for-uintptr_t.patch \
            "
 
-SRC_URI[md5sum] = "86b7e9321cde075cf382268fd282e0b0"
-SRC_URI[sha256sum] = "006f9c9126e2a2f4e7a874b5e1bd2abec1bbbb193c8b3b3a4c6ccd8c2d454bec"
+SRC_URI[md5sum] = "e05f2d16a7479a2a9591609c256d523a"
+SRC_URI[sha256sum] = "15b1e10c7dd6253ab5d791fe9b9cb84624e24c118aecd9b90251b4e60daa0933"
 
 UPSTREAM_CHECK_REGEX = "strongswan-(?P<pver>\d+(\.\d+)+)\.tar"
 
@@ -23,7 +23,6 @@
 
 EXTRA_OECONF += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '--with-systemdsystemunitdir=${systemd_unitdir}/system/', '--without-systemdsystemunitdir', d)}"
 
-
 PACKAGECONFIG ??= "charon curl gmp openssl stroke sqlite3 \
         ${@bb.utils.filter('DISTRO_FEATURES', 'ldap', d)} \
 "
@@ -48,7 +47,7 @@
 RRECOMMENDS_${PN} = "kernel-module-ipsec"
 
 FILES_${PN} += "${libdir}/ipsec/lib*${SOLIBS}"
-FILES_${PN}-dbg += "${bindir}/.debug ${libdir}/ipsec/.debug ${libexecdir}/ipsec/.debug"
+FILES_${PN}-dbg += "${bindir}/.debug ${sbindir}/.debug ${libdir}/ipsec/.debug ${libexecdir}/ipsec/.debug"
 FILES_${PN}-dev += "${libdir}/ipsec/lib*${SOLIBSDEV} ${libdir}/ipsec/*.la"
 FILES_${PN}-staticdev += "${libdir}/ipsec/*.a"
 
@@ -131,4 +130,4 @@
 RPROVIDES_${PN} += "${PN}-systemd"
 RREPLACES_${PN} += "${PN}-systemd"
 RCONFLICTS_${PN} += "${PN}-systemd"
-SYSTEMD_SERVICE_${PN} = "${@bb.utils.contains('PACKAGECONFIG', 'swanctl', '${BPN}-swanctl.service', '${BPN}.service', d)}"
+SYSTEMD_SERVICE_${PN} = "${@bb.utils.contains('PACKAGECONFIG', 'swanctl', '${BPN}.service', '', d)} ${BPN}-starter.service"
diff --git a/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.51.bb b/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.55.bb
similarity index 90%
rename from meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.51.bb
rename to meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.55.bb
index 61be9be..df455db 100644
--- a/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.51.bb
+++ b/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.55.bb
@@ -14,8 +14,8 @@
            file://fix-openssl-no-des.patch \
 "
 
-SRC_URI[md5sum] = "57040c64f4b95e35a756e53e1c496728"
-SRC_URI[sha256sum] = "77437cdd1aef1a621824bb3607e966534642fe90c69f4d2279a9da9fa36c3253"
+SRC_URI[md5sum] = "7b41592034ede114e8c4e058fc8c238b"
+SRC_URI[sha256sum] = "90de69f41c58342549e74c82503555a6426961b29af3ed92f878192727074c62"
 
 inherit autotools
 
diff --git a/meta-openembedded/meta-networking/recipes-support/uftp/uftp_4.9.9.bb b/meta-openembedded/meta-networking/recipes-support/uftp/uftp_4.10.bb
similarity index 77%
rename from meta-openembedded/meta-networking/recipes-support/uftp/uftp_4.9.9.bb
rename to meta-openembedded/meta-networking/recipes-support/uftp/uftp_4.10.bb
index a64d081..86c0c22 100644
--- a/meta-openembedded/meta-networking/recipes-support/uftp/uftp_4.9.9.bb
+++ b/meta-openembedded/meta-networking/recipes-support/uftp/uftp_4.10.bb
@@ -7,8 +7,8 @@
 UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/uftp-multicast/files/source-tar/"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/uftp-multicast/source-tar/uftp-${PV}.tar.gz"
-SRC_URI[md5sum] = "154e2c82a33fd4999040f8836e2dca2c"
-SRC_URI[sha256sum] = "c04bc75a88fc3d57504269f260be4d0b1bc440508b5a5ca587df6c16b771aa48"
+SRC_URI[md5sum] = "df6407af3a0067b881431b3dad149ef3"
+SRC_URI[sha256sum] = "91ba8aae80c7c9ccaf04600b628cbeca4699ed48268fe43d2bf539a41083f292"
 
 DEPENDS = "openssl"
 
diff --git a/meta-openembedded/meta-networking/recipes-support/unbound/unbound/0001-contrib-add-yocto-compatible-startup-scripts.patch b/meta-openembedded/meta-networking/recipes-support/unbound/unbound/0001-contrib-add-yocto-compatible-startup-scripts.patch
new file mode 100644
index 0000000..46f6a7b
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/unbound/unbound/0001-contrib-add-yocto-compatible-startup-scripts.patch
@@ -0,0 +1,78 @@
+From 186ac39de8eb9aedcf3d87cdbe389d10cde03d66 Mon Sep 17 00:00:00 2001
+From: Beniamin Sandu <beniaminsandu@gmail.com>
+Date: Tue, 16 Jul 2019 19:59:23 +0300
+Subject: [PATCH] contrib: add yocto compatible startup scripts
+
+Signed-off-by: Beniamin Sandu <beniaminsandu@gmail.com>
+---
+ contrib/unbound.init       | 10 +++++-----
+ contrib/unbound.service.in |  4 ++--
+ 2 files changed, 7 insertions(+), 7 deletions(-)
+ mode change 100644 => 100755 contrib/unbound.init
+
+diff --git a/contrib/unbound.init b/contrib/unbound.init
+old mode 100644
+new mode 100755
+index cccadecc..4eba752b
+--- a/contrib/unbound.init
++++ b/contrib/unbound.init
+@@ -19,11 +19,11 @@
+ ### END INIT INFO
+ 
+ # Source function library.
+-. /etc/rc.d/init.d/functions
++. /etc/init.d/functions
+ 
+ exec="/usr/sbin/unbound"
+ prog="unbound"
+-config="/var/unbound/unbound.conf"
++config="/etc/unbound/unbound.conf"
+ pidfile="/var/unbound/unbound.pid"
+ rootdir="/var/unbound"
+ 
+@@ -61,7 +61,7 @@ start() {
+     fi;
+ 
+     # if not running, start it up here
+-    daemon $exec
++    daemonize $exec
+     retval=$?
+     echo
+     [ $retval -eq 0 ] && touch $lockfile
+@@ -71,7 +71,7 @@ start() {
+ stop() {
+     echo -n $"Stopping $prog: "
+     # stop it here, often "killproc $prog"
+-    killproc -p $pidfile $prog
++    killproc $prog
+     retval=$?
+     echo
+     [ $retval -eq 0 ] && rm -f $lockfile
+@@ -99,7 +99,7 @@ force_reload() {
+ 
+ rh_status() {
+     # run checks to determine if the service is running or use generic status
+-    status -p $pidfile $prog
++    status $prog
+ }
+ 
+ rh_status_q() {
+diff --git a/contrib/unbound.service.in b/contrib/unbound.service.in
+index 95976dd9..0e7f79a9 100644
+--- a/contrib/unbound.service.in
++++ b/contrib/unbound.service.in
+@@ -10,9 +10,9 @@ WantedBy=multi-user.target
+ 
+ [Service]
+ ExecReload=/bin/kill -HUP $MAINPID
+-ExecStart=@UNBOUND_SBIN_DIR@/unbound
++ExecStart=@UNBOUND_SBIN_DIR@/unbound -d
+ NotifyAccess=main
+-Type=notify
++Type=simple
+ CapabilityBoundingSet=CAP_IPC_LOCK CAP_NET_BIND_SERVICE CAP_SETGID CAP_SETUID CAP_SYS_CHROOT CAP_SYS_RESOURCE
+ MemoryDenyWriteExecute=true
+ NoNewPrivileges=true
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-networking/recipes-support/unbound/unbound_1.9.2.bb b/meta-openembedded/meta-networking/recipes-support/unbound/unbound_1.9.2.bb
new file mode 100644
index 0000000..0607c9d
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/unbound/unbound_1.9.2.bb
@@ -0,0 +1,46 @@
+SUMMARY = "Unbound is a validating, recursive, and caching DNS resolver"
+DESCRIPTION = "Unbound's design is a set of modular components which incorporate \
+	features including enhanced security (DNSSEC) validation, Internet Protocol \
+	Version 6 (IPv6), and a client resolver library API as an integral part of the \
+	architecture"
+
+HOMEPAGE = "https://www.unbound.net/"
+SECTION = "net"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=5308494bc0590c0cb036afd781d78f06"
+
+SRC_URI = "git://github.com/NLnetLabs/unbound.git;protocol=http;branch=master \
+	file://0001-contrib-add-yocto-compatible-startup-scripts.patch \
+"
+SRCREV="ee06aaaad99dc4d6b73f915d98f05c506885b98a"
+
+inherit autotools pkgconfig systemd update-rc.d
+
+DEPENDS = "openssl libevent libtool-native bison-native expat"
+RDEPENDS_${PN} = "bash openssl-bin daemonize"
+
+S = "${WORKDIR}/git"
+
+EXTRA_OECONF = "--with-libexpat=${STAGING_EXECPREFIXDIR} \
+		--with-ssl=${STAGING_EXECPREFIXDIR} \
+		libtool=${TARGET_PREFIX}libtool \
+"
+		
+
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'largefile systemd', d)}"
+PACKAGECONFIG[dnscrypt] = "--enable-dnscrypt, --disable-dnscrypt, libsodium"
+PACKAGECONFIG[largefile] = "--enable-largefile,--disable-largefile,,"
+PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd"
+
+do_install_append() {
+	install -d ${D}${systemd_unitdir}/system
+	install -m 0644 ${B}/contrib/unbound.service ${D}${systemd_unitdir}/system
+
+	install -d ${D}${sysconfdir}/init.d
+	install -m 0755 ${S}/contrib/unbound.init ${D}${sysconfdir}/init.d/unbound
+}
+
+SYSTEMD_SERVICE_${PN} = "${BPN}.service"
+
+INITSCRIPT_NAME = "unbound"
+INITSCRIPT_PARAMS = "defaults"
diff --git a/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.0.1.bb b/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.0.3.bb
similarity index 91%
rename from meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.0.1.bb
rename to meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.0.3.bb
index 572dc1a..efcd5e4 100644
--- a/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.0.1.bb
+++ b/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.0.3.bb
@@ -8,12 +8,12 @@
 
 DEPENDS_append_class-target = " wireshark-native chrpath-replacement-native "
 
-SRC_URI = "https://1.eu.dl.wireshark.org/src/wireshark-${PV}.tar.xz"
+SRC_URI = "https://1.eu.dl.wireshark.org/src/all-versions/wireshark-${PV}.tar.xz"
 
 UPSTREAM_CHECK_URI = "https://1.as.dl.wireshark.org/src"
 
-SRC_URI[md5sum] = "370a113e1c8ec240c4621cfb5abb0c52"
-SRC_URI[sha256sum] = "86864c3d0f6c2311992a98d8ea7dfd429097fe62dae2e5516e1a2f6bef2ac08c"
+SRC_URI[md5sum] = "e945d76a57db2c3e6cf776f95da2cf0e"
+SRC_URI[sha256sum] = "af92729c781d870110885c31ebcbe4c4224ed51bb580d00c896fe9746994211c"
 
 PE = "1"
 
diff --git a/meta-openembedded/meta-oe/conf/layer.conf b/meta-openembedded/meta-oe/conf/layer.conf
index 31f2f17..4ddef29 100644
--- a/meta-openembedded/meta-oe/conf/layer.conf
+++ b/meta-openembedded/meta-oe/conf/layer.conf
@@ -49,6 +49,9 @@
   phoronix-test-suite->bash \
   phoronix-test-suite->python \
   phoronix-test-suite->php \
+  phoronix-test-suite->lsb \
+  phoronix-test-suite->util-linux \
+  phoronix-test-suite->busybox \
 "
 
 # ttf.inc inherits fontcache which adds fontconfig-utils to RDEPENDS
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/fio/files/0001-engines-splice-remove-buggy-mem_align-set.patch b/meta-openembedded/meta-oe/recipes-benchmark/fio/files/0001-engines-splice-remove-buggy-mem_align-set.patch
new file mode 100644
index 0000000..cb18032
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-benchmark/fio/files/0001-engines-splice-remove-buggy-mem_align-set.patch
@@ -0,0 +1,43 @@
+From 8ca8a05d92fa799fe93a6edc27b058802211fddc Mon Sep 17 00:00:00 2001
+From: Jens Axboe <axboe@kernel.dk>
+Date: Sat, 3 Aug 2019 08:33:24 -0600
+Subject: [PATCH] engines/splice: remove buggy ->mem_align set
+
+Two things wrong here:
+
+1) We align buffers by default, so no need for splice to do anything
+   extra.
+2) ->mem_align is not a true/false setting, it's the alignment itself.
+   Hence the current setting to 1 is just buggy.
+
+Upstream-Status: Backport [https://github.com/axboe/fio/commit/8ca8a05d92fa799fe93a6edc27b058802211fddc]
+
+Fixes: https://github.com/axboe/fio/issues/810
+Reported-by: Sitsofe Wheeler <sitsofe@yahoo.com>
+Signed-off-by: Jens Axboe <axboe@kernel.dk>
+Signed-off-by: Liwei Song <liwei.song@windriver.com>
+---
+ engines/splice.c | 7 -------
+ 1 file changed, 7 deletions(-)
+
+diff --git a/engines/splice.c b/engines/splice.c
+index feb764feb2f4..6fc36bb6f154 100644
+--- a/engines/splice.c
++++ b/engines/splice.c
+@@ -278,13 +278,6 @@ static int fio_spliceio_init(struct thread_data *td)
+ 	 */
+ 	sd->vmsplice_to_user_map = 1;
+ 
+-	/*
+-	 * And if vmsplice_to_user works, we definitely need aligned
+-	 * buffers. Just set ->odirect to force that.
+-	 */
+-	if (td_read(td))
+-		td->o.mem_align = 1;
+-
+ 	td->io_ops_data = sd;
+ 	return 0;
+ }
+-- 
+2.22.0
+
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/fio/fio_3.12.bb b/meta-openembedded/meta-oe/recipes-benchmark/fio/fio_3.15.bb
similarity index 92%
rename from meta-openembedded/meta-oe/recipes-benchmark/fio/fio_3.12.bb
rename to meta-openembedded/meta-oe/recipes-benchmark/fio/fio_3.15.bb
index e85e7c7..df81759 100644
--- a/meta-openembedded/meta-oe/recipes-benchmark/fio/fio_3.12.bb
+++ b/meta-openembedded/meta-oe/recipes-benchmark/fio/fio_3.15.bb
@@ -21,10 +21,10 @@
 PACKAGECONFIG ??= "${PACKAGECONFIG_NUMA}"
 PACKAGECONFIG[numa] = ",--disable-numa,numactl"
 
-# rev for v3.8
-SRCREV = "16500b5a0b03ee0142d592bb74a46943a223b06e"
+SRCREV = "01bf5128d0581e267383f280c6a1dcd26517240f"
 SRC_URI = "git://git.kernel.dk/fio.git \
           file://0001-update-the-interpreter-paths.patch \
+          file://0001-engines-splice-remove-buggy-mem_align-set.patch \
 "
 
 S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb b/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb
index 7ed5cd0..6054176 100644
--- a/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb
+++ b/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb
@@ -15,7 +15,7 @@
 COMPATIBLE_HOST_rpi  = "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '.*-linux*', 'null', d)}"
 
 SRC_URI = "git://github.com/glmark2/glmark2.git;protocol=https"
-SRCREV = "0c90dd48df43a6b0db1d9aabca6298240f4968f7"
+SRCREV = "c17fd14505f30d9e4dbad276f7aa956fd21a637b"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/iperf2/iperf2_2.0.10.bb b/meta-openembedded/meta-oe/recipes-benchmark/iperf2/iperf2_2.0.13.bb
similarity index 74%
rename from meta-openembedded/meta-oe/recipes-benchmark/iperf2/iperf2_2.0.10.bb
rename to meta-openembedded/meta-oe/recipes-benchmark/iperf2/iperf2_2.0.13.bb
index 1322d07..2bd552d 100644
--- a/meta-openembedded/meta-oe/recipes-benchmark/iperf2/iperf2_2.0.10.bb
+++ b/meta-openembedded/meta-oe/recipes-benchmark/iperf2/iperf2_2.0.13.bb
@@ -4,10 +4,10 @@
 LICENSE = "BSD-2-Clause"
 LIC_FILES_CHKSUM = "file://COPYING;md5=e136a7b2560d80bcbf0d9b3e1356ecff"
 
-SRC_URI = " ${SOURCEFORGE_MIRROR}/iperf2/iperf-${PV}.tar.gz"
+SRC_URI = " ${SOURCEFORGE_MIRROR}/${BPN}/iperf-${PV}.tar.gz"
 
-SRC_URI[md5sum] = "097cf0754bc1afa165975c06a91e6906"
-SRC_URI[sha256sum] = "7fe4348dcca313b74e0aa9c34a8ccd713b84a5615b8578f4aa94cedce9891ef2"
+SRC_URI[md5sum] = "31ea1c6d5cbf80b16ff3abe4288dad5e"
+SRC_URI[sha256sum] = "c88adec966096a81136dda91b4bd19c27aae06df4d45a7f547a8e50d723778ad"
 
 S = "${WORKDIR}/iperf-${PV}"
 
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3/0002-Remove-pg-from-profile_CFLAGS.patch b/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3/0002-Remove-pg-from-profile_CFLAGS.patch
index 06eb41a..959e293 100644
--- a/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3/0002-Remove-pg-from-profile_CFLAGS.patch
+++ b/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3/0002-Remove-pg-from-profile_CFLAGS.patch
@@ -1,31 +1,32 @@
-From 6db0e28f906bc3784019dfb5bb011237a8034fda Mon Sep 17 00:00:00 2001
+From 3ae408402635ea21ad90cd722c99ae3334376c91 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Fri, 14 Jul 2017 13:00:16 -0700
-Subject: [PATCH 2/2] Remove -pg from profile_CFLAGS
+Subject: [PATCH] Remove -pg from profile_CFLAGS
 
 musl fails to link with missing gcrt1.o
 
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
 ---
  src/Makefile.am | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/src/Makefile.am b/src/Makefile.am
-index 23b0c72..6268145 100644
+index 5be8562..3881aa6 100644
 --- a/src/Makefile.am
 +++ b/src/Makefile.am
-@@ -49,9 +49,9 @@ iperf3_LDFLAGS          = -g
+@@ -58,9 +58,9 @@ if ENABLE_PROFILING
  iperf3_profile_SOURCES  = main.c \
- 						  $(libiperf_la_SOURCES)
+                           $(libiperf_la_SOURCES)
  
 -iperf3_profile_CFLAGS   = -pg -g
 +iperf3_profile_CFLAGS   = -g
  iperf3_profile_LDADD    = libiperf.la
 -iperf3_profile_LDFLAGS  = -pg -g
 +iperf3_profile_LDFLAGS  = -g
+ endif
  
  # Specify the sources and various flags for the test cases
- t_timer_SOURCES         = t_timer.c
 -- 
-2.13.3
+2.21.0
 
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3/automake-foreign.patch b/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3/automake-foreign.patch
deleted file mode 100644
index 06c394e..0000000
--- a/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3/automake-foreign.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Pass the 'foreign' option to automake to enable iperf3 to build.
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Chunrong Guo <b40290@freescale.com>
-
---- a/configure.ac	2015-10-19 02:49:30.471867352 -0500
-+++ b/configure.ac	2015-10-19 02:46:36.207873572 -0500
-@@ -33,7 +33,7 @@
- 
- 
- # Initialize the automake system
--AM_INIT_AUTOMAKE
-+AM_INIT_AUTOMAKE([foreign])
- AM_MAINTAINER_MODE
- AM_CONFIG_HEADER(src/iperf_config.h)
- 
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3_3.6.bb b/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3_3.7.bb
similarity index 84%
rename from meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3_3.6.bb
rename to meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3_3.7.bb
index 4e11d82..6686a81 100644
--- a/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3_3.6.bb
+++ b/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3_3.7.bb
@@ -9,16 +9,15 @@
 BUGTRACKER = "https://github.com/esnet/iperf/issues"
 AUTHOR = "ESNET <info@es.net>, Lawrence Berkeley National Laboratory <websupport@lbl.gov>"
 LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=a9a036136b748453e839c0eb8906ef2e"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=f9088fe7ffdccd042f7645f1012d7f70"
 
 DEPENDS = "openssl"
 
 SRC_URI = "git://github.com/esnet/iperf.git \
-           file://automake-foreign.patch \
            file://0002-Remove-pg-from-profile_CFLAGS.patch \
            "
 
-SRCREV = "88f3ad87f38762081a6d7127890ff5c3a052b06a"
+SRCREV = "dfcea9f6a09ead01089a3c9d20c7032f2c0af2c1"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/s-suite/s-suite_git.bb b/meta-openembedded/meta-oe/recipes-benchmark/s-suite/s-suite_git.bb
index 741142c..8c49b46 100644
--- a/meta-openembedded/meta-oe/recipes-benchmark/s-suite/s-suite_git.bb
+++ b/meta-openembedded/meta-oe/recipes-benchmark/s-suite/s-suite_git.bb
@@ -2,8 +2,8 @@
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=b529aaa6a0c50f15d29f89609b5c22f3"
 
-SRCREV = "8d22ab8a4cc1484622c47ac9c5944fb9a61a5c0f"
-PV = "3.4"
+SRCREV = "3b9eef2259a70f412ab02fbe6b3a4d313d09c38a"
+PV = "3.5"
 SRC_URI = "git://github.com/Algodev-github/S.git;protocol=https;branch=master"
 
 S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-bsp/lm_sensors/lmsensors_3.5.0.bb b/meta-openembedded/meta-oe/recipes-bsp/lm_sensors/lmsensors_3.5.0.bb
index c8e4565..b4fcfe3 100644
--- a/meta-openembedded/meta-oe/recipes-bsp/lm_sensors/lmsensors_3.5.0.bb
+++ b/meta-openembedded/meta-oe/recipes-bsp/lm_sensors/lmsensors_3.5.0.bb
@@ -70,6 +70,18 @@
 
 RPROVIDES_${PN}-dbg += "${PN}-libsensors-dbg ${PN}-sensors-dbg ${PN}-sensord-dbg ${PN}-isatools-dbg"
 
+ALLOW_EMPTY_${PN} = "1"
+RDEPENDS_${PN} += " \
+    ${PN}-libsensors \
+    ${PN}-sensors \
+    ${PN}-sensord \
+    ${PN}-fancontrol \
+    ${PN}-sensorsdetect \
+    ${PN}-sensorsconfconvert \
+    ${PN}-pwmconfig \
+    ${PN}-isatools \
+"
+
 # libsensors packages
 PACKAGES =+ "${PN}-libsensors ${PN}-libsensors-dev ${PN}-libsensors-staticdev ${PN}-libsensors-doc"
 
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.8.bb b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.9.bb
similarity index 90%
rename from meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.8.bb
rename to meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.9.bb
index 15884d0..e26a6ff 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.8.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.9.bb
@@ -13,8 +13,8 @@
     file://hostapd.service \
 "
 
-SRC_URI[md5sum] = "ed2c254e5f400838cb9d8e7b6e43b86c"
-SRC_URI[sha256sum] = "929f522be6eeec38c53147e7bc084df028f65f148a3f7e4fa6c4c3f955cee4b0"
+SRC_URI[md5sum] = "f188fc53a495fe7af3b6d77d3c31dee8"
+SRC_URI[sha256sum] = "881d7d6a90b2428479288d64233151448f8990ab4958e0ecaca7eeb3c9db2bd7"
 
 S = "${WORKDIR}/hostapd-${PV}"
 B = "${WORKDIR}/hostapd-${PV}/hostapd"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd_0.14.bb b/meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd_0.19.bb
similarity index 78%
rename from meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd_0.14.bb
rename to meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd_0.19.bb
index 1dfbed9..2b4530e 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd_0.14.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd_0.19.bb
@@ -7,7 +7,7 @@
 DEPENDS = "ell readline dbus"
 
 SRC_URI = "git://git.kernel.org/pub/scm/network/wireless/iwd.git"
-SRCREV = "f87159964cf8fd9f85b0699d50e4a051d4f7c948"
+SRCREV = "899d802744b7e12409e259f546ba5594ab90262c"
 S = "${WORKDIR}/git"
 
 PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
@@ -26,6 +26,12 @@
     install -m644 ${S}/doc/*.txt ${D}${docdir}/${BPN}
 }
 
-FILES_${PN} += "${datadir}/dbus-1"
+FILES_${PN} += "${datadir}/dbus-1 ${libdir}/modules-load.d"
 
 SYSTEMD_SERVICE_${PN} = "iwd.service ${@bb.utils.contains('PACKAGECONFIG', 'wired', 'ead.service', '', d)}"
+
+RRECOMMENDS_${PN} = "\
+    kernel-module-pkcs7-message \
+    kernel-module-pkcs8-key-parser \
+    kernel-module-x509-key-parser \
+"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/libuv/libuv_1.27.0.bb b/meta-openembedded/meta-oe/recipes-connectivity/libuv/libuv_1.27.0.bb
index c823944..6fd0339 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/libuv/libuv_1.27.0.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/libuv/libuv_1.27.0.bb
@@ -4,9 +4,9 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=a68902a430e32200263d182d44924d47"
 
-SRC_URI = "https://github.com/libuv/libuv/archive/v${PV}.tar.gz"
-SRC_URI[md5sum] = "cc2cf259442fbe85404e75691e8244e1"
-SRC_URI[sha256sum] = "4afcdc84cd315b77c8e532e7b3fde43d536af0e2e835eafbd0e75518ed26dbed"
+SRCREV = "a4fc9a66cc35256dbc4dcd67c910174f05b6daa6"
+SRC_URI = "git://github.com/libuv/libuv"
+S = "${WORKDIR}/git"
 
 inherit autotools
 
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager/0001-Do-not-set-Wno-unused-but-set-variable.patch b/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager/0001-Do-not-set-Wno-unused-but-set-variable.patch
deleted file mode 100644
index dcbe01d..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager/0001-Do-not-set-Wno-unused-but-set-variable.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From d4f73b037d11d20f080e74c05df28853fb833075 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 7 Dec 2018 22:59:47 -0800
-Subject: [PATCH] Do not set Wno-unused-but-set-variable
-
-This is gcc specific warning, not implemented by  pretending to be  gcc
-like compilers e.g. clang.
-
-We will pass this option from recipe
-
-Upstream-Status: Inappropriate [OE-Specific]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- m4/compiler_warnings.m4 | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/m4/compiler_warnings.m4 b/m4/compiler_warnings.m4
-index f498a28..e65e97f 100644
---- a/m4/compiler_warnings.m4
-+++ b/m4/compiler_warnings.m4
-@@ -11,7 +11,7 @@ if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then
- 		      -Wdeclaration-after-statement -Wstrict-prototypes \
- 		      -Wno-unused-parameter -Wno-sign-compare \
- 		      -Wno-deprecated-declarations \
--		      -Wno-unused-but-set-variable -Wformat-security; do
-+		      -Wno-unused -Wformat-security; do
- 		SAVE_CFLAGS="$CFLAGS"
- 		CFLAGS="$CFLAGS $option"
- 		AC_MSG_CHECKING([whether gcc understands $option])
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.10.0.bb b/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.10.0.bb
index 8254a85..ef5af3a 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.10.0.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.10.0.bb
@@ -9,10 +9,9 @@
 
 inherit gnomebase gettext systemd vala gobject-introspection bash-completion
 
-DEPENDS = "glib-2.0 libgudev dbus-glib intltool-native libxslt-native"
+DEPENDS = "glib-2.0 libgudev intltool-native libxslt-native"
 
 SRC_URI = "http://www.freedesktop.org/software/ModemManager/ModemManager-${PV}.tar.xz \
-           file://0001-Do-not-set-Wno-unused-but-set-variable.patch \
            "
 SRC_URI[md5sum] = "92d25176d0cc9d588ca29700b33c7d98"
 SRC_URI[sha256sum] = "fd0f39996025dac96995daea8a58ec7dd571582f7563a8ae0d5f65b571b76ee2"
@@ -33,7 +32,7 @@
 EXTRA_OECONF = " \
     --with-udev-base-dir=${nonarch_base_libdir}/udev \
 "
-CFLAGS_append_toolchain-gcc = " -Wno-unused-but-set-variable"
+EXTRA_OECONF_append_toolchain-clang = " --enable-more-warnings=no"
 
 FILES_${PN} += " \
     ${datadir}/icons \
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/obex/obex-data-server_0.4.6.bb b/meta-openembedded/meta-oe/recipes-connectivity/obex/obex-data-server_0.4.6.bb
index 715b023..c201c86 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/obex/obex-data-server_0.4.6.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/obex/obex-data-server_0.4.6.bb
@@ -2,8 +2,7 @@
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
 
-DEPENDS = "gtk+ dbus-glib dbus-glib-native imagemagick openobex"
-DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES','bluez5','bluez5','bluez4',d)}"
+DEPENDS = "gtk+ dbus-glib dbus-glib-native imagemagick openobex bluez5"
 
 SRC_URI = "http://tadas.dailyda.com/software/obex-data-server-${PV}.tar.gz \
            file://obex-data-server-0.4.6-build-fixes-1.patch \
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb b/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
index 3fb8cb1..8790723 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
@@ -8,7 +8,7 @@
 "
 
 DEPENDS = "virtual/libusb0"
-DEPENDS_append_class-target = " ${@bb.utils.contains('DISTRO_FEATURES','bluez5','bluez5','bluez4',d)}"
+DEPENDS_append_class-target = " bluez5"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}/${PV}/${BP}-Source.tar.gz \
 "
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/packagegroups/packagegroup-tools-bluetooth.bb b/meta-openembedded/meta-oe/recipes-connectivity/packagegroups/packagegroup-tools-bluetooth.bb
index 913e311..2b4448a 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/packagegroups/packagegroup-tools-bluetooth.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/packagegroups/packagegroup-tools-bluetooth.bb
@@ -6,17 +6,10 @@
                     file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
 
 SUMMARY = "Set of Bluetooth related tools for inclusion in images"
-DESCRIPTION = "Includes bluetooth specific tools for this version of BlueZ.\
-These tools are used at runtime. \
-Supports BlueZ4 and BlueZ5."
+DESCRIPTION = "Includes bluetooth specific tools for BlueZ.\
+These tools are used at runtime."
 
 inherit packagegroup
-inherit bluetooth
-
-RDEPENDS_bluez4 = " \
-    obexftp \
-    ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'libasound-module-bluez', '', d)} \
-"
 
 RDEPENDS_bluez5 = " \
     bluez5-noinst-tools \
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/paho-mqtt-c/paho-mqtt-c_1.3.0.bb b/meta-openembedded/meta-oe/recipes-connectivity/paho-mqtt-c/paho-mqtt-c_1.3.0.bb
index 79a8f43..f308631 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/paho-mqtt-c/paho-mqtt-c_1.3.0.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/paho-mqtt-c/paho-mqtt-c_1.3.0.bb
@@ -26,3 +26,5 @@
     rm -rf ${D}${prefix}/samples
     find ${D}${prefix} -maxdepth 1 -type f -delete
 }
+
+EXTRA_OECMAKE = "-DPAHO_WITH_SSL=ON"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvdial/musl-support.patch b/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvdial/musl-support.patch
new file mode 100644
index 0000000..b5ad482
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvdial/musl-support.patch
@@ -0,0 +1,25 @@
+Drop support for glibc < 2.10, in master we are at 2.28
+in process get it working with musl as well.
+
+Upstream-Status: Inappropriate [No upstream]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/wvmodemscan.cc
++++ b/wvmodemscan.cc
+@@ -495,16 +495,8 @@ static int fileselect(const struct diren
+ 	// (no internal ISDN support)   || !strncmp(e->d_name, "ttyI", 4);
+ }
+ 
+-#if defined(__GLIBC__) && __GLIBC_PREREQ(2, 10)
+ static int filesort(const dirent **e1, const dirent **e2)
+-#else
+-static int filesort(const void *_e1, const void *_e2)
+-#endif
+ {
+-#if !(defined(__GLIBC__) && __GLIBC_PREREQ(2, 10))
+-    dirent const * const *e1 = (dirent const * const *)_e1;
+-    dirent const * const *e2 = (dirent const * const *)_e2;
+-#endif
+     const char *p1, *p2;
+     int diff;
+     
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvdial_1.61.bb b/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvdial_1.61.bb
index 5154208..3658095 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvdial_1.61.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvdial_1.61.bb
@@ -11,8 +11,8 @@
 
 SRC_URI = "http://${BPN}.googlecode.com/files/${BP}.tar.bz2 \
            file://typo_pon.wvdial.1.patch \
+           file://musl-support.patch \
           "
-
 SRC_URI[md5sum] = "37e9a2d664effe4efd44c0e1a20136de"
 SRC_URI[sha256sum] = "99906d9560cbdbc97e1855e7b0a7169f1e11983be3ac539140423f09debced82"
 
@@ -21,8 +21,6 @@
 
 PARALLEL_MAKE = ""
 
-BUILD_CPPFLAGS += "-I${STAGING_INCDIR}/wvstreams"
-
 do_configure() {
     sed -i 's/LDFLAGS+=-luniconf/LIBS+=-luniconf/' ${S}/Makefile
 }
@@ -30,5 +28,3 @@
 do_install() {
     oe_runmake prefix=${D}/usr PPPDIR=${D}/etc/ppp/peers install
 }
-# http://errors.yoctoproject.org/Errors/Details/186959/
-EXCLUDE_FROM_WORLD_libc-musl = "1"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/zeromq/cppzmq_git.bb b/meta-openembedded/meta-oe/recipes-connectivity/zeromq/cppzmq_git.bb
index 11ea3be..cdd2f78 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/zeromq/cppzmq_git.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/zeromq/cppzmq_git.bb
@@ -4,8 +4,8 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=db174eaf7b55a34a7c89551197f66e94"
 DEPENDS = "zeromq"
 
-SRCREV = "213da0b04ae3b4d846c9abc46bab87f86bfb9cf4"
-PV = "4.3.0"
+SRCREV = "f5b36e563598d48fcc0d82e589d3596afef945ae"
+PV = "4.4.1"
 
 SRC_URI = "git://github.com/zeromq/cppzmq.git"
 
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/zeromq/zeromq_4.3.1.bb b/meta-openembedded/meta-oe/recipes-connectivity/zeromq/zeromq_4.3.2.bb
similarity index 85%
rename from meta-openembedded/meta-oe/recipes-connectivity/zeromq/zeromq_4.3.1.bb
rename to meta-openembedded/meta-oe/recipes-connectivity/zeromq/zeromq_4.3.2.bb
index 6e13376..adf2c7b 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/zeromq/zeromq_4.3.1.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/zeromq/zeromq_4.3.2.bb
@@ -9,8 +9,8 @@
 SRC_URI = "http://github.com/zeromq/libzmq/releases/download/v${PV}/zeromq-${PV}.tar.gz \
     file://run-ptest \
 "
-SRC_URI[md5sum] = "64cbf3577afdbfda30358bc757a6ac83"
-SRC_URI[sha256sum] = "bcbabe1e2c7d0eec4ed612e10b94b112dd5f06fcefa994a0c79a45d835cd21eb"
+SRC_URI[md5sum] = "2047e917c2cc93505e2579bcba67a573"
+SRC_URI[sha256sum] = "ebd7b5c830d6428956b67a0454a7f8cbed1de74b3b01e5c33c5378e22740f763"
 
 inherit cmake ptest pkgconfig
 
diff --git a/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus/gtk-doc.patch b/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus/gtk-doc.patch
deleted file mode 100644
index abd7ff4..0000000
--- a/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus/gtk-doc.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-Upstream-Status: Inappropriate [configuration] 
-
-Index: eggdbus-0.6/docs/eggdbus/Makefile.am
-===================================================================
---- eggdbus-0.6.orig/docs/eggdbus/Makefile.am
-+++ eggdbus-0.6/docs/eggdbus/Makefile.am
-@@ -87,11 +87,7 @@ HTML_IMAGES = 				\
- # Extra options to supply to gtkdoc-fixref
- FIXXREF_OPTIONS=
- 
--if ENABLE_GTK_DOC
--include $(top_srcdir)/gtk-doc.make
--else
- CLEANFILES =
--endif
- 
- CLEANFILES +=   *~				\
- 		eggdbus-scan.*			\
-Index: eggdbus-0.6/docs/tests/Makefile.am
-===================================================================
---- eggdbus-0.6.orig/docs/tests/Makefile.am
-+++ eggdbus-0.6/docs/tests/Makefile.am
-@@ -65,11 +65,7 @@ HTML_IMAGES = 				\
- # Extra options to supply to gtkdoc-fixref
- FIXXREF_OPTIONS=
- 
--if ENABLE_GTK_DOC
--include $(top_srcdir)/gtk-doc.make
--else
- CLEANFILES =
--endif
- 
- CLEANFILES +=   *~				\
- 		tests-scan.*			\
diff --git a/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus/marshal.patch b/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus/marshal.patch
deleted file mode 100644
index a605a34..0000000
--- a/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus/marshal.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-Upstream-Status: Inappropriate [configuration]
-
-Index: eggdbus-0.6/src/eggdbus/Makefile.am
-===================================================================
---- eggdbus-0.6.orig/src/eggdbus/Makefile.am
-+++ eggdbus-0.6/src/eggdbus/Makefile.am
-@@ -130,7 +130,7 @@ BUILT_SOURCES =								\
- 	$(NULL)
- 
- eggdbus-built-sources.stamp : eggdbus-binding-tool Makefile.am org.freedesktop.DBus.xml org.freedesktop.DBus.Peer.xml org.freedesktop.DBus.Properties.xml org.freedesktop.DBus.Introspectable.xml eggdbus-glib-genmarshal
--	EGG_DBUS_GENMARSHAL=$(top_builddir)/src/eggdbus/eggdbus-glib-genmarshal $(top_builddir)/src/eggdbus/eggdbus-binding-tool							\
-+	EGG_DBUS_GENMARSHAL=eggdbus-glib-genmarshal eggdbus-binding-tool							\
- 		--namespace EggDBus									\
- 		--dbus-namespace org.freedesktop.DBus							\
- 		--interfaces-only									\
-Index: eggdbus-0.6/src/tests/Makefile.am
-===================================================================
---- eggdbus-0.6.orig/src/tests/Makefile.am
-+++ eggdbus-0.6/src/tests/Makefile.am
-@@ -25,7 +25,7 @@ BUILT_SOURCES = 							\
- 	$(NULL)
- 
- test-built-sources.stamp : Makefile.am $(top_builddir)/src/eggdbus/eggdbus-binding-tool com.example.Frob.xml com.example.Tweak.xml com.example.Twiddle.xml
--	EGG_DBUS_GENMARSHAL=$(top_builddir)/src/eggdbus/eggdbus-glib-genmarshal $(top_builddir)/src/eggdbus/eggdbus-binding-tool									\
-+	EGG_DBUS_GENMARSHAL=eggdbus-glib-genmarshal eggdbus-binding-tool									\
- 	  --namespace       "Test"										\
- 	  --dbus-namespace  "com.example"									\
- 	  --include-header  testtypes.h										\
diff --git a/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus_0.6.bb b/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus_0.6.bb
deleted file mode 100644
index cc28ec7..0000000
--- a/meta-openembedded/meta-oe/recipes-core/eggdbus/eggdbus_0.6.bb
+++ /dev/null
@@ -1,33 +0,0 @@
-SUMMARY = "An alternative to dbug-glib."
-DESCRIPTION = "An alternative to dbus-glib. It is designed specifically to \
-make it comfortable to work with very large and potentially \
-complex D-Bus services like e.g. DeviceKit-disks"
-
-HOMEPAGE = "http://cgit.freedesktop.org/~david/eggdbus"
-LICENSE = "LGPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=155db86cdbafa7532b41f390409283eb \
-                    file://src/eggdbus/eggdbus.h;md5=6b312aef57ed8d738b3f131ad037d6c2"
-
-DEPENDS = "dbus glib-2.0 dbus-glib eggdbus-native"
-DEPENDS_class-native = "dbus-native glib-2.0-native dbus-glib-native"
-
-SRC_URI = "http://cgit.freedesktop.org/~david/${BPN}/snapshot/${BPN}-${PV}.tar.bz2 \
-    file://gtk-doc.patch \
-"
-SRC_URI_append_class-target = "file://marshal.patch"
-SRC_URI[md5sum] = "0a111faa54dfba2cf432c2c8e8a76e06"
-SRC_URI[sha256sum] = "3ad26e271c1a879bafcd181e065fe0ed53b542299a773c3188c9edb25b895ed1"
-
-inherit autotools gtk-doc
-
-EXTRA_OECONF = " --disable-man-pages "
-
-BBCLASSEXTEND = "native"
-
-PARALLEL_MAKE = ""
-
-do_configure_prepend() {
-    # Create ChangeLog to walk around automake error.
-    # " Makefile.am: error: required file './ChangeLog' not found "
-    touch ${S}/ChangeLog
-}
diff --git a/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm_2.58.1.bb b/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm_2.58.1.bb
index 87ab0cb..1e5094b 100644
--- a/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm_2.58.1.bb
+++ b/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm_2.58.1.bb
@@ -6,16 +6,15 @@
                     file://COPYING.tools;md5=751419260aa954499f7abaabaa882bbe"
 
 DEPENDS = "mm-common glib-2.0 libsigc++-2.0 glib-2.0-native"
-inherit autotools pkgconfig
+inherit gnomebase
 
 SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}"
 
-SRC_URI = " \
-    ftp://ftp.gnome.org/pub/GNOME/sources/glibmm/${SHRT_VER}/glibmm-${PV}.tar.xz \
+SRC_URI += " \
     file://remove-examples.patch \
 "
-SRC_URI[md5sum] = "77f1016cbb27e15d4e04a2b7bfdb4cae"
-SRC_URI[sha256sum] = "6e5fe03bdf1e220eeffd543e017fd2fb15bcec9235f0ffd50674aff9362a85f0"
+SRC_URI[archive.md5sum] = "77f1016cbb27e15d4e04a2b7bfdb4cae"
+SRC_URI[archive.sha256sum] = "6e5fe03bdf1e220eeffd543e017fd2fb15bcec9235f0ffd50674aff9362a85f0"
 
 do_install_append() {
     install -d ${D}${datadir}/glibmm-2.4
diff --git a/meta-openembedded/meta-oe/recipes-core/ndctl/ndctl_v63.bb b/meta-openembedded/meta-oe/recipes-core/ndctl/ndctl_v65.bb
similarity index 88%
rename from meta-openembedded/meta-oe/recipes-core/ndctl/ndctl_v63.bb
rename to meta-openembedded/meta-oe/recipes-core/ndctl/ndctl_v65.bb
index 2f299b1..69ee1d4 100644
--- a/meta-openembedded/meta-oe/recipes-core/ndctl/ndctl_v63.bb
+++ b/meta-openembedded/meta-oe/recipes-core/ndctl/ndctl_v65.bb
@@ -10,10 +10,10 @@
 
 inherit autotools-brokensep pkgconfig bash-completion systemd
 
-SRCREV = "cb2d678dd6d286dd96d31548c32449a8b883ae32"
+SRCREV = "ed17fd14608d8de072c8c090ffc5fcf78c4f48ff"
 SRC_URI = "git://github.com/pmem/ndctl.git"
 
-DEPENDS = "kmod udev json-c"
+DEPENDS = "kmod udev json-c keyutils"
 
 S = "${WORKDIR}/git"
 
@@ -28,3 +28,5 @@
 
 SYSTEMD_SERVICE_${PN} = "ndctl-monitor.service"
 SYSTEMD_AUTO_ENABLE_${PN} = "disable"
+
+FILES_${PN} += "${datadir}/daxctl/daxctl.conf"
diff --git a/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-basic.bb b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-basic.bb
index b12183b..54b59cc 100644
--- a/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-basic.bb
+++ b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-basic.bb
@@ -9,7 +9,6 @@
 
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 inherit packagegroup
-inherit bluetooth
 
 # Poke extra recomendations into the list using your machine.conf
 #
@@ -46,7 +45,7 @@
     ${@bb.utils.contains("MACHINE_FEATURES", "alsa", "alsa-utils-alsamixer", "", d)} \
     ${@bb.utils.contains("MACHINE_FEATURES", "usbgadget", "kernel-module-g-ether kernel-module-g-serial kernel-module-g-mass-storage", "", d)} \
     \
-    ${@bb.utils.contains("DISTRO_FEATURES", "bluetooth", "${BLUEZ}", "", d)} \
+    ${@bb.utils.contains("DISTRO_FEATURES", "bluetooth", "bluez5", "", d)} \
     ${@bb.utils.contains("DISTRO_FEATURES", "wifi", "iw wpa-supplicant", "", d)} \
     \
     tzdata \
diff --git a/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
index e34cce4..c77a1e5 100644
--- a/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
+++ b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
@@ -68,13 +68,13 @@
     ser2net smstools3 telepathy-glib telepathy-idle thrift \
     usbmuxd wvstreams zabbix zeromq \
     ${@bb.utils.contains("DISTRO_FEATURES", "x11", "obex-data-server", "", d)} \
-    ${@bb.utils.contains("DISTRO_FEATURES", "pulseadio bluez4", "libmikmod", "", d)} \
-    ${@bb.utils.contains("DISTRO_FEATURES", "bluez4", "obexftp openobex libnet wvdial", "", d)} \
+    libmikmod \
+    obexftp openobex libnet wvdial \
     "
 
 # dracut needs dracut
 RDEPENDS_packagegroup-meta-oe-core ="\
-    dbus-daemon-proxy libdbus-c++ eggdbus \
+    dbus-daemon-proxy libdbus-c++ \
     ell glibmm libsigc++-2.0 libxml++ distro-feed-configs \
     mm-common opencl-headers opencl-icd-loader \
     proxy-libintl usleep \
@@ -99,7 +99,6 @@
     leveldb libdbi mariadb mariadb-native \
     mysql-python postgresql psqlodbc rocksdb soci \
     sqlite \
-    ${@bb.utils.contains("DISTRO_FEATURES", "bluez4", "mongodb", "", d)} \
     "
 
 RDEPENDS_packagegroup-meta-oe-devtools ="\
@@ -143,7 +142,7 @@
     can-utils libsocketcan tipcutils tiptop \
     tmux uml-utilities upm vlock volume-key wipe zlog zram \
     ${@bb.utils.contains("DISTRO_FEATURES", "x11 wayland opengl", "boinc-client", "", d)} \
-    ${@bb.utils.contains("DISTRO_FEATURES", "x11", " libgxim t1lib gnuplot libwmf gtkmathview", "", d)} \
+    ${@bb.utils.contains("DISTRO_FEATURES", "x11", " libgxim gnuplot libwmf", "", d)} \
     ${@bb.utils.contains("DISTRO_FEATURES", "bluez", "collectd", "", d)} \
     ${@bb.utils.contains("DISTRO_FEATURES", "pam", "pam-plugin-ccreds pam-plugin-ldapdb", "", d)} \
     ${@bb.utils.contains("DISTRO_FEATURES", "pam", "pam-ssh-agent-auth openwsman sblim-sfcb ", "", d)} \
@@ -191,13 +190,13 @@
 RDEPENDS_packagegroup-meta-oe-kernel_remove_mips64el = "crash"
 
 RDEPENDS_packagegroup-meta-oe-multimedia ="\
-    alsa-oss audiofile cdrkit esound id3lib \
+    alsa-oss audiofile cdrkit id3lib \
     a2jmidid jack libass libburn libcdio libcdio-paranoia \
     libdvdread libmms libmodplug libopus live555 \
     mplayer-common opus-tools \
     sound-theme-freedesktop v4l-utils yavta wavpack libvpx \
     ${@bb.utils.contains("DISTRO_FEATURES", "x11", "xpext pavucontrol xsp", "", d)} \
-    ${@bb.utils.contains("DISTRO_FEATURES", "pulseadio bluez4", "libmikmod", "", d)} \
+    libmikmod \
     ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "libmad faad2 mpv", "", d)} \
     "
 RDEPENDS_packagegroup-meta-oe-multimedia_remove_libc-musl = "alsa-oss"
@@ -249,10 +248,10 @@
     vim vim-tiny websocketpp wmiconfig xdelta3 xdg-user-dirs xmlstarlet \
     zbar zile \
     ${@bb.utils.contains("DISTRO_FEATURES", "x11", "geis toscoterm uim synergy utouch-mtview links-x11 fltk pidgin-otr", "", d)} \
-    ${@bb.utils.contains("DISTRO_FEATURES", "pulseadio bluez4", "libcanberra", "", d)} \
+    libcanberra \
     ${@bb.utils.contains("DISTRO_FEATURES", "x11 pam", "xorgxrdp xrdp", "", d)} \
-    ${@bb.utils.contains("DISTRO_FEATURES", "bluez4", "procmail", "", d)} \
-    ${@bb.utils.contains("DISTRO_FEATURES", "polkit", "udisks udisks2 upower", "", d)} \
+    procmail \
+    ${@bb.utils.contains("DISTRO_FEATURES", "polkit", "udisks2 upower", "", d)} \
     ${NE10} \
     "
 
@@ -265,7 +264,7 @@
 
 RDEPENDS_packagegroup-meta-oe-test ="\
     catch2 cppunit cunit cxxtest evtest fb-test \
-    fwts gtest pm-qa stress-ng testfloat \
+    fwts googletest pm-qa stress-ng testfloat \
     "
 RDEPENDS_packagegroup-meta-oe-test_remove_libc-musl = "pm-qa"
 RDEPENDS_packagegroup-meta-oe-test_remove_arm = "fwts"
diff --git a/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl_20100902.bb b/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl_20100902.bb
index f11ae7e..68dc804 100644
--- a/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl_20100902.bb
+++ b/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl_20100902.bb
@@ -8,7 +8,7 @@
 PROVIDES = "virtual/libintl"
 
 SRC_URI = " \
-    http://ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/${PN}-dev_${PV}_win32.zip \
+    http://ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/${BPN}-dev_${PV}_win32.zip \
 "
 SRC_URI[md5sum] = "aef407c2b97ee829383aadd867c61d1e"
 SRC_URI[sha256sum] = "291ac350cc5eb4a01b0d651ca99fae64cee8a1c06b2005277fab5a4356f9ae91"
diff --git a/meta-openembedded/meta-oe/recipes-core/safec/safec_3.4.bb b/meta-openembedded/meta-oe/recipes-core/safec/safec_3.4.bb
index d55d081..b4c125f 100644
--- a/meta-openembedded/meta-oe/recipes-core/safec/safec_3.4.bb
+++ b/meta-openembedded/meta-oe/recipes-core/safec/safec_3.4.bb
@@ -10,6 +10,6 @@
 SRCREV = "62e6b2df55084316d027165d286e46beb40513dc"
 SRC_URI = "git://github.com/rurban/safeclib.git"
 
-COMPATIBLE_HOST = '(x86_64|i.86|powerpc|powerpc64|arm|aarch64).*-linux'
+COMPATIBLE_HOST = '(x86_64|i.86|powerpc|powerpc64|arm).*-linux'
 
 RDEPENDS_${PN} = "perl"
diff --git a/meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.1.0.bb b/meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.1.0.bb
index 51cecf5..deaede8 100644
--- a/meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.1.0.bb
+++ b/meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.1.0.bb
@@ -31,13 +31,15 @@
     cryptsetup-reencrypt \
     integritysetup \
     ${@bb.utils.filter('DISTRO_FEATURES', 'selinux', d)} \
-    udev \
     kernel_crypto \
     internal-argon2 \
     blkid \
     luks-adjust-xts-keysize \
     openssl \
 "
+PACKAGECONFIG_append_class-target = " \
+    udev \
+"
 
 PACKAGECONFIG[keyring] = "--enable-keyring,--disable-keyring"
 PACKAGECONFIG[fips] = "--enable-fips,--disable-fips"
@@ -48,7 +50,7 @@
 PACKAGECONFIG[cryptsetup-reencrypt] = "--enable-cryptsetup-reencrypt,--disable-cryptsetup-reencrypt"
 PACKAGECONFIG[integritysetup] = "--enable-integritysetup,--disable-integritysetup"
 PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux"
-PACKAGECONFIG[udev] = "--enable-udev,--disable-udev,udev"
+PACKAGECONFIG[udev] = "--enable-udev,--disable-udev,,udev"
 PACKAGECONFIG[kernel_crypto] = "--enable-kernel_crypto,--disable-kernel_crypto"
 # gcrypt-pkbdf2 requries --with-crypto_backend=gcrypt or the flag isn't
 # recognized.
@@ -63,6 +65,7 @@
 PACKAGECONFIG[nss] = "--with-crypto_backend=nss,,nss"
 PACKAGECONFIG[kernel] = "--with-crypto_backend=kernel"
 PACKAGECONFIG[nettle] = "--with-crypto_backend=nettle,,nettle"
+PACKAGECONFIG[luks2] = "--with-default-luks-format=LUKS2,--with-default-luks-format=LUKS1"
 
 RRECOMMENDS_${PN} = "kernel-module-aes-generic \
                      kernel-module-dm-crypt \
diff --git a/meta-openembedded/meta-oe/recipes-crypto/libkcapi/libkcapi_git.bb b/meta-openembedded/meta-oe/recipes-crypto/libkcapi/libkcapi_git.bb
index 46c66a1..7990709 100644
--- a/meta-openembedded/meta-oe/recipes-crypto/libkcapi/libkcapi_git.bb
+++ b/meta-openembedded/meta-oe/recipes-crypto/libkcapi/libkcapi_git.bb
@@ -6,8 +6,8 @@
 DEPENDS = "libtool"
 
 S = "${WORKDIR}/git"
-SRCREV = "3c56934f44a8f5a1257c342942e6e034fc6f20be"
-PV = "1.1.4+git${SRCPV}"
+SRCREV = "5649050d201856bf06c8738b5d2aa1710c86ac2f"
+PV = "1.1.5"
 SRC_URI = " \
     git://github.com/smuellerDD/libkcapi.git \
 "
diff --git a/meta-openembedded/meta-oe/recipes-crypto/libsodium/libsodium_1.0.17.bb b/meta-openembedded/meta-oe/recipes-crypto/libsodium/libsodium_1.0.18.bb
similarity index 71%
rename from meta-openembedded/meta-oe/recipes-crypto/libsodium/libsodium_1.0.17.bb
rename to meta-openembedded/meta-oe/recipes-crypto/libsodium/libsodium_1.0.18.bb
index 8d9302f..53b3ddc 100644
--- a/meta-openembedded/meta-oe/recipes-crypto/libsodium/libsodium_1.0.17.bb
+++ b/meta-openembedded/meta-oe/recipes-crypto/libsodium/libsodium_1.0.18.bb
@@ -5,8 +5,8 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=47203c753972e855179dfffe15188bee"
 
 SRC_URI = "https://download.libsodium.org/libsodium/releases/${BPN}-${PV}.tar.gz"
-SRC_URI[md5sum] = "0f71e2680187a1558b5461e6879342c5"
-SRC_URI[sha256sum] = "0cc3dae33e642cc187b5ceb467e0ad0e1b51dcba577de1190e9ffa17766ac2b1"
+SRC_URI[md5sum] = "3ca9ebc13b6b4735acae0a6a4c4f9a95"
+SRC_URI[sha256sum] = "6f504490b342a4f8a4c4a02fc9b866cbef8622d5df4e5452b46be121e46636c1"
 
 inherit autotools
 
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mongodb/mongodb_git.bb b/meta-openembedded/meta-oe/recipes-dbs/mongodb/mongodb_git.bb
index 0f90003..ed05517 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/mongodb/mongodb_git.bb
+++ b/meta-openembedded/meta-oe/recipes-dbs/mongodb/mongodb_git.bb
@@ -45,6 +45,7 @@
 PACKAGECONFIG_remove_libc-musl = "tcmalloc"
 
 PACKAGECONFIG[tcmalloc] = "--use-system-tcmalloc,--allocator=system,gperftools,"
+PACKAGECONFIG[shell] = ",--js-engine=none,,"
 
 EXTRA_OESCONS = "--prefix=${D}${prefix} \
                  LIBPATH=${STAGING_LIBDIR} \
@@ -55,12 +56,11 @@
                  --disable-warnings-as-errors \
                  --use-system-pcre \
                  --use-system-zlib \
-                 --js-engine=none \
                  --nostrip \
                  --endian=${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'le', 'little', 'big', d)} \
                  --wiredtiger=${@['off','on'][d.getVar('SITEINFO_BITS') != '32']} \
                  ${PACKAGECONFIG_CONFARGS} \
-                 mongod mongos"
+                 core"
 
 do_configure_prepend() {
         # tests use hex floats, not supported in plain C++
@@ -75,3 +75,5 @@
         ${STAGING_BINDIR_NATIVE}/scons install ${EXTRA_OESCONS}|| \
         die "scons install execution failed."
 }
+
+PNBLACKLIST[mongodb] = "Since bbclass scons convert to python3, build mongodb failed"
diff --git a/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_11.3.bb b/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_11.4.bb
similarity index 63%
rename from meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_11.3.bb
rename to meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_11.4.bb
index a18eca3..0e7ddc8 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_11.3.bb
+++ b/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_11.4.bb
@@ -8,5 +8,5 @@
    file://0001-Improve-reproducibility.patch \
 "
 
-SRC_URI[md5sum] = "c2a729b754b8de86a969c86ec25db076"
-SRC_URI[sha256sum] = "2a85e082fc225944821dfd23990e32dfcd2284c19060864b0ad4ca537d30522d"
+SRC_URI[md5sum] = "dab5eed8a5f9204bf2f03a209eead4c3"
+SRC_URI[sha256sum] = "02802ddffd1590805beddd1e464dd28a46a41a5f1e1df04bab4f46663195cc8b"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools/libselinux/0001-libselinux-Do-not-define-gettid-if-glibc-2.30-is-use.patch b/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools/libselinux/0001-libselinux-Do-not-define-gettid-if-glibc-2.30-is-use.patch
new file mode 100644
index 0000000..8524517
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools/libselinux/0001-libselinux-Do-not-define-gettid-if-glibc-2.30-is-use.patch
@@ -0,0 +1,52 @@
+From f4f9d24860e1b5cd4f6a014f3fda7cd33ebe5be7 Mon Sep 17 00:00:00 2001
+From: Petr Lautrbach <plautrba@redhat.com>
+Date: Sat, 27 Jul 2019 08:20:20 -0700
+Subject: [PATCH] libselinux: Do not define gettid() if glibc >= 2.30 is used
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Since version 2.30 glibc implements gettid() system call wrapper, see
+https://sourceware.org/bugzilla/show_bug.cgi?id=6399
+
+Fixes:
+cc -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -I../include -D_GNU_SOURCE  -DNO_ANDROID_BACKEND   -c -o procattr.o procattr.c
+procattr.c:28:14: error: static declaration of ‘gettid’ follows non-static declaration
+   28 | static pid_t gettid(void)
+      |              ^~~~~~
+In file included from /usr/include/unistd.h:1170,
+                 from procattr.c:2:
+/usr/include/bits/unistd_ext.h:34:16: note: previous declaration of ‘gettid’ was here
+   34 | extern __pid_t gettid (void) __THROW;
+      |                ^~~~~~
+
+Signed-off-by: Petr Lautrbach <plautrba@redhat.com>
+Acked-by: Stephen Smalley <sds@tycho.nsa.gov>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/procattr.c | 14 +++++++++++++-
+ 1 file changed, 13 insertions(+), 1 deletion(-)
+
+--- a/src/procattr.c
++++ b/src/procattr.c
+@@ -8,7 +8,19 @@
+ #include "selinux_internal.h"
+ #include "policy.h"
+ 
+-#ifndef __BIONIC__
++/* Bionic and glibc >= 2.30 declare gettid() system call wrapper in unistd.h and
++ * has a definition for it */
++#ifdef __BIONIC__
++  #define OVERRIDE_GETTID 0
++#elif !defined(__GLIBC_PREREQ)
++  #define OVERRIDE_GETTID 1
++#elif !__GLIBC_PREREQ(2,29)
++  #define OVERRIDE_GETTID 1
++#else
++  #define OVERRIDE_GETTID 0
++#endif
++
++#if OVERRIDE_GETTID
+ static pid_t gettid(void)
+ {
+ 	return syscall(__NR_gettid);
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 e09cd82..d84fcae 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
@@ -41,6 +41,7 @@
     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 \
+    file://libselinux/0001-libselinux-Do-not-define-gettid-if-glibc-2.30-is-use.patch;patchdir=external/libselinux \
     file://android-tools-adbd.service \
     file://gitignore \
     file://adb.mk;subdir=${BPN} \
diff --git a/meta-openembedded/meta-oe/recipes-devtools/dnf-plugin-tui/dnf-plugin-tui_git.bb b/meta-openembedded/meta-oe/recipes-devtools/dnf-plugin-tui/dnf-plugin-tui_git.bb
new file mode 100644
index 0000000..e891868
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/dnf-plugin-tui/dnf-plugin-tui_git.bb
@@ -0,0 +1,38 @@
+SUMMARY = "A text-based user interface plugin of dnf for user to manage packages. "
+LICENSE = "GPLv2"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+SRC_URI = "git://github.com/ubinux/dnf-plugin-tui.git;branch=master "
+SRCREV = "31d6866d5eda02be9a6bfb1fca9e9095b12eecd1"
+PV = "1.0"
+
+SRC_URI_append_class-target = "file://oe-remote.repo.sample"
+
+inherit distutils3-base
+
+S = "${WORKDIR}/git"
+
+do_install_append() {
+        install -d ${D}${datadir}/dnf
+        install -m 0755 ${S}/samples/* ${D}${datadir}/dnf
+        install -d ${D}${PYTHON_SITEPACKAGES_DIR}/dnf-plugins/mkimg
+        install -m 0755 ${S}/dnf-plugins/mkimg/* ${D}${PYTHON_SITEPACKAGES_DIR}/dnf-plugins/mkimg
+        for file in $(ls ${S}/dnf-plugins/ | grep -v mkimg); do
+            install -m 0755 ${S}/dnf-plugins/$file ${D}${PYTHON_SITEPACKAGES_DIR}/dnf-plugins
+        done
+}
+
+do_install_append_class-target() {
+        install -d ${D}${sysconfdir}/yum.repos.d
+        install -m 0644 ${WORKDIR}/oe-remote.repo.sample ${D}${sysconfdir}/yum.repos.d
+}
+
+FILES_${PN} += "${datadir}/dnf"
+
+RDEPENDS_${PN} += " \
+  dnf \
+  libnewt-python \
+  "
+
+BBCLASSEXTEND = "nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/dnf-plugin-tui/files/oe-remote.repo.sample b/meta-openembedded/meta-oe/recipes-devtools/dnf-plugin-tui/files/oe-remote.repo.sample
new file mode 100644
index 0000000..6c4502e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/dnf-plugin-tui/files/oe-remote.repo.sample
@@ -0,0 +1,5 @@
+[base]
+name=myrepo
+baseurl=http://127.0.0.1/oe_repo/
+enabled=1
+gpgcheck=0
diff --git a/meta-openembedded/meta-oe/recipes-devtools/geany/geany-plugins_1.34.bb b/meta-openembedded/meta-oe/recipes-devtools/geany/geany-plugins_1.34.bb
index 6c1c153..84adc7a 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/geany/geany-plugins_1.34.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/geany/geany-plugins_1.34.bb
@@ -29,7 +29,7 @@
 REQUIRED_DISTRO_FEATURES = "x11"
 
 SRC_URI = " \
-    http://plugins.geany.org/${PN}/${PN}-${PV}.tar.bz2 \
+    http://plugins.geany.org/${BPN}/${BP}.tar.bz2 \
     file://0001-Use-pkg-config-to-find-gpgme.patch \
 "
 SRC_URI[md5sum] = "bf5fdd50727ad8bbbfe00027ccf2dac5"
@@ -40,7 +40,7 @@
 }
 
 FILES_${PN} += "${datadir}/icons"
-FILES_${PN}-dev += "${libdir}/geany/*.la ${libdir}/${PN}/*/*.la"
+FILES_${PN}-dev += "${libdir}/geany/*.la ${libdir}/${BPN}/*/*.la"
 
 PLUGINS += "${PN}-addons"
 LIC_FILES_CHKSUM += "file://addons/COPYING;md5=4325afd396febcb659c36b49533135d4"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit/stdc-predef.patch b/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit/stdc-predef.patch
deleted file mode 100644
index c95cdc9..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit/stdc-predef.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-__STDC_ISO_10646__ is defined in stdc-predef.h
-therefore include it to see if its there on a platform
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-Index: libedit-20160903-3.1/src/chartype.h
-===================================================================
---- libedit-20160903-3.1.orig/src/chartype.h
-+++ libedit-20160903-3.1/src/chartype.h
-@@ -29,6 +29,7 @@
- #ifndef _h_chartype_f
- #define _h_chartype_f
- 
-+#include <stdc-predef.h>
- /* Ideally we should also test the value of the define to see if it
-  * supports non-BMP code points without requiring UTF-16, but nothing
-  * seems to actually advertise this properly, despite Unicode 3.1 having
diff --git a/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit_20190324-3.1.bb b/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit_20190324-3.1.bb
deleted file mode 100644
index 9d333e7..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit_20190324-3.1.bb
+++ /dev/null
@@ -1,23 +0,0 @@
-SUMMARY = "BSD replacement for libreadline"
-DESCRIPTION = "Command line editor library providing generic line editing, \
-history, and tokenization functions"
-HOMEPAGE = "http://www.thrysoee.dk/editline/"
-SECTION = "libs"
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=1e4228d0c5a9093b01aeaaeae6641533"
-
-DEPENDS = "ncurses"
-
-inherit autotools
-
-# upstream site does not allow wget's User-Agent
-FETCHCMD_wget += "-U bitbake"
-SRC_URI = "http://www.thrysoee.dk/editline/${BPN}-${PV}.tar.gz \
-           file://stdc-predef.patch \
-          "
-SRC_URI[md5sum] = "bec755c8044ad84b752dfe49a0b371d8"
-SRC_URI[sha256sum] = "ac8f0f51c1cf65492e4d1e3ed2be360bda41e54633444666422fbf393bba1bae"
-
-S = "${WORKDIR}/${BPN}-${PV}"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus/0001-Remove-log4cplus-version-entry-from-ELF-.comment-sec.patch b/meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus/0001-Remove-log4cplus-version-entry-from-ELF-.comment-sec.patch
new file mode 100644
index 0000000..44a835c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus/0001-Remove-log4cplus-version-entry-from-ELF-.comment-sec.patch
@@ -0,0 +1,40 @@
+From da5338e68f146efadab7c221291ba4c949d8f12f Mon Sep 17 00:00:00 2001
+From: Vaclav Haisman <vhaisman@gmail.com>
+Date: Sun, 21 Jul 2019 23:23:16 -0700
+Subject: [PATCH] Remove log4cplus version entry from ELF .comment section
+
+Reverts
+https://github.com/log4cplus/log4cplus/commit/9cb0d4ade619da4e40628c9b95ff51de3df29f1b
+
+Upstream-Status: Backport [https://github.com/log4cplus/log4cplus/commit/7e6addc70dffd2e30e902efd18eb845c5d5dd7bb]
+
+Suggested-by: Adrian Bunk <bunk@stusta.de>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/version.cxx | 12 ------------
+ 1 file changed, 12 deletions(-)
+
+diff --git a/src/version.cxx b/src/version.cxx
+index ce18212..e002de9 100644
+--- a/src/version.cxx
++++ b/src/version.cxx
+@@ -34,16 +34,4 @@ namespace log4cplus
+ unsigned const version = LOG4CPLUS_VERSION;
+ char const versionStr[] = LOG4CPLUS_VERSION_STR LOG4CPLUS_VERSION_STR_SUFFIX;
+ 
+-namespace
+-{
+-
+-#if defined (__ELF__) && (defined (__GNUC__) || defined (__clang__))
+-char const versionStrComment[]
+-    __attribute__ ((__used__, __section__ ((".comment"))))
+-    = "log4cplus " LOG4CPLUS_VERSION_STR LOG4CPLUS_VERSION_STR_SUFFIX;
+-#endif
+-
+-
+-} // namespace
+-
+ } // namespace log4cplus
+-- 
+2.22.0
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus_2.0.3.bb b/meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus_2.0.4.bb
similarity index 69%
rename from meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus_2.0.3.bb
rename to meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus_2.0.4.bb
index 56c62f1..566de28 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus_2.0.3.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus_2.0.4.bb
@@ -6,9 +6,11 @@
 LICENSE = "Apache-2.0 & BSD-2-Clause"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=41e8e060c26822886b592ab4765c756b"
 
-SRC_URI = "${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}-stable/${PV}/${BP}.tar.gz"
-SRC_URI[md5sum] = "20a87090cd8ec34ea11b3e59954234cb"
-SRC_URI[sha256sum] = "2d8f627aa6417e6c6a100bc09dc407684ca4605c929defc1690ee7d6a575ce6a"
+SRC_URI = "${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}-stable/${PV}/${BP}.tar.gz \
+           file://0001-Remove-log4cplus-version-entry-from-ELF-.comment-sec.patch \
+          "
+SRC_URI[md5sum] = "2b5b7bc294698bf30a315a259ef9eec2"
+SRC_URI[sha256sum] = "196eedbc7f2dd792dae721b1159c7ac132255bb368226353c24d4d5fa7c7797a"
 
 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/nodejs/nodejs_10.15.3.bb b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.16.2.bb
similarity index 86%
rename from meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.15.3.bb
rename to meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.16.2.bb
index d2e77ea..e259c45 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.15.3.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.16.2.bb
@@ -1,9 +1,9 @@
 DESCRIPTION = "nodeJS Evented I/O for V8 JavaScript"
 HOMEPAGE = "http://nodejs.org"
 LICENSE = "MIT & BSD & Artistic-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=9ceeba79eb2ea1067b7b3ed16fff8bab"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=be980eb7ccafe287cb438076a65e888c"
 
-DEPENDS = "openssl zlib icu"
+DEPENDS = "openssl"
 DEPENDS_append_class-target = " nodejs-native"
 
 inherit pkgconfig
@@ -23,8 +23,8 @@
            file://0002-Using-native-torque.patch \
            "
 
-SRC_URI[md5sum] = "d76210a6ae1ea73d10254947684836fb"
-SRC_URI[sha256sum] = "4e22d926f054150002055474e452ed6cbb85860aa7dc5422213a2002ed9791d5"
+SRC_URI[md5sum] = "fa70b942c5e3379ce96219fe90f50c8f"
+SRC_URI[sha256sum] = "6cbc17795e9259dce7a8f5fd5a2e46f9e6920fb48b7d9539c5b2faa5bb5db4d8"
 
 S = "${WORKDIR}/node-v${PV}"
 
@@ -49,16 +49,21 @@
 GYP_DEFINES_append_mipsel = " mips_arch_variant='r1' "
 ARCHFLAGS ?= ""
 
+PACKAGECONFIG ??= "zlib icu"
+PACKAGECONFIG[zlib] = "--shared-zlib,,zlib"
+PACKAGECONFIG[icu] = "--with-intl=system-icu,--without-intl,icu"
+
 # Node is way too cool to use proper autotools, so we install two wrappers to forcefully inject proper arch cflags to workaround gypi
 do_configure () {
     rm -rf ${S}/deps/openssl
     export LD="${CXX}"
     GYP_DEFINES="${GYP_DEFINES}" export GYP_DEFINES
     # $TARGET_ARCH settings don't match --dest-cpu settings
-   ./configure --prefix=${prefix} --with-intl=system-icu --without-snapshot --shared-openssl --shared-zlib \
+   ./configure --prefix=${prefix} --without-snapshot --shared-openssl \
                --dest-cpu="${@map_nodejs_arch(d.getVar('TARGET_ARCH'), d)}" \
                --dest-os=linux \
-               ${ARCHFLAGS}
+               ${ARCHFLAGS} \
+               ${PACKAGECONFIG_CONFARGS}
 }
 
 do_compile () {
@@ -95,7 +100,7 @@
 
 PACKAGES =+ "${PN}-npm"
 FILES_${PN}-npm = "${exec_prefix}/lib/node_modules ${bindir}/npm ${bindir}/npx"
-RDEPENDS_${PN}-npm = "bash python-shell python-datetime python-subprocess python-textutils \
+RDEPENDS_${PN}-npm = "bash python python-shell python-datetime python-subprocess python-textutils \
     python-compiler python-misc python-multiprocessing"
 
 PACKAGES =+ "${PN}-systemtap"
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
index 1ec32ce..71d2450 100644
--- 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
@@ -11,7 +11,7 @@
 
 EXTRA_OECONF = "--disable-java --disable-docs"
 
-SRC_URI = "https://ftp.gnu.org/gnu/octave/${PN}-${PV}.tar.gz \
+SRC_URI = "${GNU_MIRROR}/octave/${PN}-${PV}.tar.gz \
            file://fix-blas-library-integer-size.patch \
 "
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/openocd/openocd/0001-Do-not-include-syscrtl.h-with-glibc.patch b/meta-openembedded/meta-oe/recipes-devtools/openocd/openocd/0001-Do-not-include-syscrtl.h-with-glibc.patch
new file mode 100644
index 0000000..618ce26
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/openocd/openocd/0001-Do-not-include-syscrtl.h-with-glibc.patch
@@ -0,0 +1,33 @@
+From a763610719e7d7f6cdc45569b6fbfdb91bb7c87b Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Jul 2019 14:30:08 -0700
+Subject: [PATCH] Do not include syscrtl.h with glibc
+
+glibc 2.30 has deprecated it see [1]
+Fixes
+sys/sysctl.h:21:2: error: "The <sys/sysctl.h> header is deprecated and will be removed." [-Werror,-W#warnings]
+
+[1] https://sourceware.org/git/?p=glibc.git;a=commit;h=744e829637162bb7d5029632aacf341c64b86990
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/helper/options.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/helper/options.c b/src/helper/options.c
+index 12755e010..4007e37f6 100644
+--- a/src/helper/options.c
++++ b/src/helper/options.c
+@@ -34,7 +34,7 @@
+ #if IS_DARWIN
+ #include <libproc.h>
+ #endif
+-#ifdef HAVE_SYS_SYSCTL_H
++#if defined(HAVE_SYS_SYSCTL_H) && !defined(__GLIBC__)
+ #include <sys/sysctl.h>
+ #endif
+ #if IS_WIN32 && !IS_CYGWIN
+-- 
+2.22.0
+
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 b50c3ac..df10177 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/openocd/openocd_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/openocd/openocd_git.bb
@@ -10,6 +10,7 @@
     git://repo.or.cz/r/jimtcl.git;protocol=http;destsuffix=git/jimtcl;name=jimtcl \
     git://repo.or.cz/r/libjaylink.git;protocol=http;destsuffix=git/src/jtag/drivers/libjaylink;name=libjaylink \
     file://0001-esirisc_flash-Rename-PAGE_SIZE-to-FLASH_PAGE_SIZE.patch \
+    file://0001-Do-not-include-syscrtl.h-with-glibc.patch \
 "
 
 SRCREV_FORMAT = "openocd"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/perl/libdbi-perl_1.642.bb b/meta-openembedded/meta-oe/recipes-devtools/perl/libdbi-perl_1.642.bb
index ff4a9d0..91f94a1 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/perl/libdbi-perl_1.642.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/perl/libdbi-perl_1.642.bb
@@ -7,13 +7,6 @@
 HOMEPAGE = "http://search.cpan.org/dist/DBI/"
 SECTION = "libs"
 LICENSE = "Artistic-1.0 | GPL-1.0+"
-RDEPENDS_${PN}_class-target = " \
-    perl-module-carp \
-    perl-module-exporter \
-    perl-module-exporter-heavy \
-    perl-module-dynaloader \
-"
-
 LIC_FILES_CHKSUM = "file://LICENSE;md5=10982c7148e0a012c0fd80534522f5c5"
 
 SRC_URI = "http://search.cpan.org/CPAN/authors/id/T/TI/TIMB/DBI-${PV}.tar.gz"
@@ -34,4 +27,35 @@
 	rm -rf ${B}/t/z*.t
 }
 
+RDEPENDS_${PN}_class-target = " \
+    perl-module-carp \
+    perl-module-exporter \
+    perl-module-exporter-heavy \
+    perl-module-dynaloader \
+    perl-module-io-dir \
+    perl-module-scalar-util \
+    perl-module-universal \
+"
+
+RDEPENDS_${PN}-ptest = " \
+    ${PN} \
+    perl-module-b \
+    perl-module-benchmark \
+    perl-module-cwd \
+    perl-module-data-dumper \
+    perl-module-encode \
+    perl-module-encode-byte \
+    perl-module-encode-encoding \
+    perl-module-file-copy \
+    perl-module-file-path \
+    perl-module-lib \
+    perl-module-perlio \
+    perl-module-perlio-scalar \
+    perl-module-perlio-via \
+    perl-module-sdbm-file \
+    perl-module-storable \
+    perl-module-test-more \
+    perl-module-utf8 \
+    "
+
 BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-Add-lpthread-to-link.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-Add-lpthread-to-link.patch
deleted file mode 100644
index f70e550..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-Add-lpthread-to-link.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From ed0a954983d50267c2fc0bc13aba929ea0cad971 Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@windriver.com>
-Date: Tue, 2 May 2017 06:34:40 +0000
-Subject: [PATCH] Add -lpthread to link
-
-When building the php-5.6.26, the following errors occured:
-
-    ld: TSRM/.libs/TSRM.o: undefined reference to symbol
-    'pthread_sigmask@@GLIBC_2.2.5'
-
-    error adding symbols: DSO missing from command line
-
-This is because no pthread to link, so we should add it.
-
-Upstream-Status: Pending
-
-Signed-off-by: Dengke Du <dengke.du@windriver.com>
----
- configure.in | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/configure.in b/configure.in
-index a467dff1..9afef652 100644
---- a/configure.in
-+++ b/configure.in
-@@ -1058,7 +1058,8 @@ case $php_sapi_module in
-     ;;
- esac
- 
--EXTRA_LIBS="$EXTRA_LIBS $DLIBS $LIBS"
-+PTHREAD_LIBS="-lpthread"
-+EXTRA_LIBS="$EXTRA_LIBS $DLIBS $LIBS $PTHREAD_LIBS"
- 
- dnl this has to be here to prevent the openssl crypt() from
- dnl overriding the system provided crypt().
--- 
-2.11.0
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-PHP-5.6-LibSSL-1.1-compatibility.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-PHP-5.6-LibSSL-1.1-compatibility.patch
deleted file mode 100644
index ac8365b..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-PHP-5.6-LibSSL-1.1-compatibility.patch
+++ /dev/null
@@ -1,1285 +0,0 @@
-Subject: [PATCH] PHP 5.6 - LibSSL 1.1 compatibility
-
-This patch does not try to backport the 7.1 openssl module, it is the
-improved version of the 5.6 original openssl module.
-
-https://github.com/oerdnj/deb.sury.org/issues/566
-http://zettasystem.com/PHP-5.6.31-OpenSSL-1.1.0-compatibility-20170801.patch
-
-Upstream-Status: Deny [https://github.com/php/php-src/pull/2667]
-Reason: As PHP 5.6 is no longer actively supported only security fixes
-may land on this branch. As this change does not fall in this category,
-I'm closing this PR. (All higher versions of PHP already have OpenSSL
-1.1 support.)
-
-Author: zsalab@github https://github.com/zsalab
-
-Only port source modification, do not include the test case
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- ext/openssl/openssl.c | 683 +++++++++++++++++++++++++++++++++++++-------------
- ext/openssl/xp_ssl.c  |  18 +-
- ext/phar/util.c       |  13 +-
- 3 files changed, 527 insertions(+), 187 deletions(-)
-
-diff --git a/ext/openssl/openssl.c b/ext/openssl/openssl.c
-index a78a8fb..b53114c 100644
---- a/ext/openssl/openssl.c
-+++ b/ext/openssl/openssl.c
-@@ -42,6 +42,12 @@
- 
- /* OpenSSL includes */
- #include <openssl/evp.h>
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
-+#include <openssl/bn.h>
-+#include <openssl/rsa.h>
-+#include <openssl/dsa.h>
-+#include <openssl/dh.h>
-+#endif
- #include <openssl/x509.h>
- #include <openssl/x509v3.h>
- #include <openssl/crypto.h>
-@@ -531,6 +537,133 @@ zend_module_entry openssl_module_entry = {
- ZEND_GET_MODULE(openssl)
- #endif
- 
-+/* {{{ OpenSSL compatibility functions and macros */
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined (LIBRESSL_VERSION_NUMBER)
-+#define EVP_PKEY_get0_RSA(_pkey) _pkey->pkey.rsa
-+#define EVP_PKEY_get0_DH(_pkey) _pkey->pkey.dh
-+#define EVP_PKEY_get0_DSA(_pkey) _pkey->pkey.dsa
-+#define EVP_PKEY_get0_EC_KEY(_pkey) _pkey->pkey.ec
-+
-+static int RSA_set0_key(RSA *r, BIGNUM *n, BIGNUM *e, BIGNUM *d)
-+{
-+	r->n = n;
-+	r->e = e;
-+	r->d = d;
-+
-+	return 1;
-+}
-+
-+static int RSA_set0_factors(RSA *r, BIGNUM *p, BIGNUM *q)
-+{
-+	r->p = p;
-+	r->q = q;
-+
-+	return 1;
-+}
-+
-+static int RSA_set0_crt_params(RSA *r, BIGNUM *dmp1, BIGNUM *dmq1, BIGNUM *iqmp)
-+{
-+	r->dmp1 = dmp1;
-+	r->dmq1 = dmq1;
-+	r->iqmp = iqmp;
-+
-+	return 1;
-+}
-+
-+static void RSA_get0_key(const RSA *r, const BIGNUM **n, const BIGNUM **e, const BIGNUM **d)
-+{
-+	*n = r->n;
-+	*e = r->e;
-+	*d = r->d;
-+}
-+
-+static void RSA_get0_factors(const RSA *r, const BIGNUM **p, const BIGNUM **q)
-+{
-+	*p = r->p;
-+	*q = r->q;
-+}
-+
-+static void RSA_get0_crt_params(const RSA *r, const BIGNUM **dmp1, const BIGNUM **dmq1, const BIGNUM **iqmp)
-+{
-+	*dmp1 = r->dmp1;
-+	*dmq1 = r->dmq1;
-+	*iqmp = r->iqmp;
-+}
-+
-+static void DH_get0_pqg(const DH *dh, const BIGNUM **p, const BIGNUM **q, const BIGNUM **g)
-+{
-+	*p = dh->p;
-+	*q = dh->q;
-+	*g = dh->g;
-+}
-+
-+static int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g)
-+{
-+	dh->p = p;
-+	dh->q = q;
-+	dh->g = g;
-+
-+	return 1;
-+}
-+
-+static void DH_get0_key(const DH *dh, const BIGNUM **pub_key, const BIGNUM **priv_key)
-+{
-+	*pub_key = dh->pub_key;
-+	*priv_key = dh->priv_key;
-+}
-+
-+static int DH_set0_key(DH *dh, BIGNUM *pub_key, BIGNUM *priv_key)
-+{
-+	dh->pub_key = pub_key;
-+	dh->priv_key = priv_key;
-+
-+	return 1;
-+}
-+
-+static void DSA_get0_pqg(const DSA *d, const BIGNUM **p, const BIGNUM **q, const BIGNUM **g)
-+{
-+	*p = d->p;
-+	*q = d->q;
-+	*g = d->g;
-+}
-+
-+int DSA_set0_pqg(DSA *d, BIGNUM *p, BIGNUM *q, BIGNUM *g)
-+{
-+	d->p = p;
-+	d->q = q;
-+	d->g = g;
-+
-+	return 1;
-+}
-+
-+static void DSA_get0_key(const DSA *d, const BIGNUM **pub_key, const BIGNUM **priv_key)
-+{
-+	*pub_key = d->pub_key;
-+	*priv_key = d->priv_key;
-+}
-+
-+int DSA_set0_key(DSA *d, BIGNUM *pub_key, BIGNUM *priv_key)
-+{
-+	d->pub_key = pub_key;
-+	d->priv_key = priv_key;
-+
-+	return 1;
-+}
-+
-+#if OPENSSL_VERSION_NUMBER < 0x10002000L || defined (LIBRESSL_VERSION_NUMBER)
-+#define EVP_PKEY_id(_pkey) _pkey->type
-+#define EVP_PKEY_base_id(_key) EVP_PKEY_type(_key->type)
-+
-+static int X509_get_signature_nid(const X509 *x)
-+{
-+	return OBJ_obj2nid(x->sig_alg->algorithm);
-+}
-+
-+#endif
-+
-+#endif
-+/* }}} */
-+
- static int le_key;
- static int le_x509;
- static int le_csr;
-@@ -825,7 +958,7 @@ static int add_oid_section(struct php_x509_request * req TSRMLS_DC) /* {{{ */
- 	}
- 	for (i = 0; i < sk_CONF_VALUE_num(sktmp); i++) {
- 		cnf = sk_CONF_VALUE_value(sktmp, i);
--		if (OBJ_create(cnf->value, cnf->name, cnf->name) == NID_undef) {
-+		if (OBJ_sn2nid(cnf->name) == NID_undef && OBJ_ln2nid(cnf->name) == NID_undef && OBJ_create(cnf->value, cnf->name, cnf->name) == NID_undef) {
- 			php_error_docref(NULL TSRMLS_CC, E_WARNING, "problem creating object %s=%s", cnf->name, cnf->value);
- 			return FAILURE;
- 		}
-@@ -967,7 +1100,7 @@ static void php_openssl_dispose_config(struct php_x509_request * req TSRMLS_DC)
- }
- /* }}} */
- 
--#ifdef PHP_WIN32
-+#if defined(PHP_WIN32) || (OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER))
- #define PHP_OPENSSL_RAND_ADD_TIME() ((void) 0)
- #else
- #define PHP_OPENSSL_RAND_ADD_TIME() php_openssl_rand_add_timeval()
-@@ -1053,9 +1186,11 @@ static EVP_MD * php_openssl_get_evp_md_from_algo(long algo) { /* {{{ */
- 			mdtype = (EVP_MD *) EVP_md2();
- 			break;
- #endif
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined (LIBRESSL_VERSION_NUMBER)
- 		case OPENSSL_ALGO_DSS1:
- 			mdtype = (EVP_MD *) EVP_dss1();
- 			break;
-+#endif
- #if OPENSSL_VERSION_NUMBER >= 0x0090708fL
- 		case OPENSSL_ALGO_SHA224:
- 			mdtype = (EVP_MD *) EVP_sha224();
-@@ -1146,6 +1281,12 @@ PHP_MINIT_FUNCTION(openssl)
- 	OpenSSL_add_all_digests();
- 	OpenSSL_add_all_algorithms();
- 
-+#if !defined(OPENSSL_NO_AES) && defined(EVP_CIPH_CCM_MODE) && OPENSSL_VERSION_NUMBER < 0x100020000
-+	EVP_add_cipher(EVP_aes_128_ccm());
-+	EVP_add_cipher(EVP_aes_192_ccm());
-+	EVP_add_cipher(EVP_aes_256_ccm());
-+#endif
-+
- 	SSL_load_error_strings();
- 
- 	/* register a resource id number with OpenSSL so that we can map SSL -> stream structures in
-@@ -1173,7 +1314,9 @@ PHP_MINIT_FUNCTION(openssl)
- #ifdef HAVE_OPENSSL_MD2_H
- 	REGISTER_LONG_CONSTANT("OPENSSL_ALGO_MD2", OPENSSL_ALGO_MD2, CONST_CS|CONST_PERSISTENT);
- #endif
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined (LIBRESSL_VERSION_NUMBER)
- 	REGISTER_LONG_CONSTANT("OPENSSL_ALGO_DSS1", OPENSSL_ALGO_DSS1, CONST_CS|CONST_PERSISTENT);
-+#endif
- #if OPENSSL_VERSION_NUMBER >= 0x0090708fL
- 	REGISTER_LONG_CONSTANT("OPENSSL_ALGO_SHA224", OPENSSL_ALGO_SHA224, CONST_CS|CONST_PERSISTENT);
- 	REGISTER_LONG_CONSTANT("OPENSSL_ALGO_SHA256", OPENSSL_ALGO_SHA256, CONST_CS|CONST_PERSISTENT);
-@@ -1251,7 +1394,9 @@ PHP_MINIT_FUNCTION(openssl)
- 	}
- 
- 	php_stream_xport_register("ssl", php_openssl_ssl_socket_factory TSRMLS_CC);
-+#ifndef OPENSSL_NO_SSL3
- 	php_stream_xport_register("sslv3", php_openssl_ssl_socket_factory TSRMLS_CC);
-+#endif
- #ifndef OPENSSL_NO_SSL2
- 	php_stream_xport_register("sslv2", php_openssl_ssl_socket_factory TSRMLS_CC);
- #endif
-@@ -1308,7 +1453,9 @@ PHP_MSHUTDOWN_FUNCTION(openssl)
- #ifndef OPENSSL_NO_SSL2
- 	php_stream_xport_unregister("sslv2" TSRMLS_CC);
- #endif
-+#ifndef OPENSSL_NO_SSL3
- 	php_stream_xport_unregister("sslv3" TSRMLS_CC);
-+#endif
- 	php_stream_xport_unregister("tls" TSRMLS_CC);
- 	php_stream_xport_unregister("tlsv1.0" TSRMLS_CC);
- #if OPENSSL_VERSION_NUMBER >= 0x10001001L
-@@ -1893,6 +2040,7 @@ static int openssl_x509v3_subjectAltName(BIO *bio, X509_EXTENSION *extension)
- {
- 	GENERAL_NAMES *names;
- 	const X509V3_EXT_METHOD *method = NULL;
-+	ASN1_OCTET_STRING *extension_data;
- 	long i, length, num;
- 	const unsigned char *p;
- 
-@@ -1901,8 +2049,9 @@ static int openssl_x509v3_subjectAltName(BIO *bio, X509_EXTENSION *extension)
- 		return -1;
- 	}
- 
--	p = extension->value->data;
--	length = extension->value->length;
-+	extension_data = X509_EXTENSION_get_data(extension);
-+	p = extension_data->data;
-+	length = extension_data->length;
- 	if (method->it) {
- 		names = (GENERAL_NAMES*)(ASN1_item_d2i(NULL, &p, length,
- 						       ASN1_ITEM_ptr(method->it)));
-@@ -1965,6 +2114,8 @@ PHP_FUNCTION(openssl_x509_parse)
- 	char * tmpstr;
- 	zval * subitem;
- 	X509_EXTENSION *extension;
-+	X509_NAME *subject_name;
-+	char *cert_name;
- 	char *extname;
- 	BIO  *bio_out;
- 	BUF_MEM *bio_buf;
-@@ -1979,10 +2130,10 @@ PHP_FUNCTION(openssl_x509_parse)
- 	}
- 	array_init(return_value);
- 
--	if (cert->name) {
--		add_assoc_string(return_value, "name", cert->name, 1);
--	}
--/*	add_assoc_bool(return_value, "valid", cert->valid); */
-+	subject_name = X509_get_subject_name(cert);
-+	cert_name = X509_NAME_oneline(subject_name, NULL, 0);
-+	add_assoc_string(return_value, "name", cert_name, 1);
-+	OPENSSL_free(cert_name);
- 
- 	add_assoc_name_entry(return_value, "subject", 		X509_get_subject_name(cert), useshortnames TSRMLS_CC);
- 	/* hash as used in CA directories to lookup cert by subject name */
-@@ -2008,7 +2159,7 @@ PHP_FUNCTION(openssl_x509_parse)
- 		add_assoc_string(return_value, "alias", tmpstr, 1);
- 	}
- 
--	sig_nid = OBJ_obj2nid((cert)->sig_alg->algorithm);
-+	sig_nid = X509_get_signature_nid(cert);
- 	add_assoc_string(return_value, "signatureTypeSN", (char*)OBJ_nid2sn(sig_nid), 1);
- 	add_assoc_string(return_value, "signatureTypeLN", (char*)OBJ_nid2ln(sig_nid), 1);
- 	add_assoc_long(return_value, "signatureTypeNID", sig_nid);
-@@ -3217,7 +3368,21 @@ PHP_FUNCTION(openssl_csr_get_public_key)
- 		RETURN_FALSE;
- 	}
- 
--	tpubkey=X509_REQ_get_pubkey(csr);
-+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
-+	/* Due to changes in OpenSSL 1.1 related to locking when decoding CSR,
-+	 * the pub key is not changed after assigning. It means if we pass
-+	 * a private key, it will be returned including the private part.
-+	 * If we duplicate it, then we get just the public part which is
-+	 * the same behavior as for OpenSSL 1.0 */
-+	csr = X509_REQ_dup(csr);
-+#endif
-+	/* Retrieve the public key from the CSR */
-+	tpubkey = X509_REQ_get_pubkey(csr);
-+
-+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
-+	/* We need to free the CSR as it was duplicated */
-+	X509_REQ_free(csr);
-+#endif
- 	RETVAL_RESOURCE(zend_list_insert(tpubkey, le_key TSRMLS_CC));
- 	return;
- }
-@@ -3482,13 +3647,20 @@ static int php_openssl_is_private_key(EVP_PKEY* pkey TSRMLS_DC)
- {
- 	assert(pkey != NULL);
- 
--	switch (pkey->type) {
-+	switch (EVP_PKEY_id(pkey)) {
- #ifndef NO_RSA
- 		case EVP_PKEY_RSA:
- 		case EVP_PKEY_RSA2:
--			assert(pkey->pkey.rsa != NULL);
--			if (pkey->pkey.rsa != NULL && (NULL == pkey->pkey.rsa->p || NULL == pkey->pkey.rsa->q)) {
--				return 0;
-+			{
-+				RSA *rsa = EVP_PKEY_get0_RSA(pkey);
-+				if (rsa != NULL) {
-+					const BIGNUM *p, *q;
-+
-+					RSA_get0_factors(rsa, &p, &q);
-+					 if (p == NULL || q == NULL) {
-+						return 0;
-+					 }
-+				}
- 			}
- 			break;
- #endif
-@@ -3498,28 +3670,51 @@ static int php_openssl_is_private_key(EVP_PKEY* pkey TSRMLS_DC)
- 		case EVP_PKEY_DSA2:
- 		case EVP_PKEY_DSA3:
- 		case EVP_PKEY_DSA4:
--			assert(pkey->pkey.dsa != NULL);
--
--			if (NULL == pkey->pkey.dsa->p || NULL == pkey->pkey.dsa->q || NULL == pkey->pkey.dsa->priv_key){ 
--				return 0;
-+			{
-+				DSA *dsa = EVP_PKEY_get0_DSA(pkey);
-+				if (dsa != NULL) {
-+					const BIGNUM *p, *q, *g, *pub_key, *priv_key;
-+
-+					DSA_get0_pqg(dsa, &p, &q, &g);
-+					if (p == NULL || q == NULL) {
-+						return 0;
-+					}
-+ 
-+					DSA_get0_key(dsa, &pub_key, &priv_key);
-+					if (priv_key == NULL) {
-+						return 0;
-+					}
-+				}
- 			}
- 			break;
- #endif
- #ifndef NO_DH
- 		case EVP_PKEY_DH:
--			assert(pkey->pkey.dh != NULL);
--
--			if (NULL == pkey->pkey.dh->p || NULL == pkey->pkey.dh->priv_key) {
--				return 0;
-+			{
-+				DH *dh = EVP_PKEY_get0_DH(pkey);
-+				if (dh != NULL) {
-+					const BIGNUM *p, *q, *g, *pub_key, *priv_key;
-+
-+					DH_get0_pqg(dh, &p, &q, &g);
-+					if (p == NULL) {
-+						return 0;
-+					}
-+ 
-+					DH_get0_key(dh, &pub_key, &priv_key);
-+					if (priv_key == NULL) {
-+						return 0;
-+					}
-+				}
- 			}
- 			break;
- #endif
- #ifdef HAVE_EVP_PKEY_EC
- 		case EVP_PKEY_EC:
--			assert(pkey->pkey.ec != NULL);
--
--			if ( NULL == EC_KEY_get0_private_key(pkey->pkey.ec)) {
--				return 0;
-+			{
-+				EC_KEY *ec = EVP_PKEY_get0_EC_KEY(pkey);
-+				if (ec != NULL && NULL == EC_KEY_get0_private_key(ec)) {
-+					return 0;
-+				}
- 			}
- 			break;
- #endif
-@@ -3531,34 +3726,80 @@ static int php_openssl_is_private_key(EVP_PKEY* pkey TSRMLS_DC)
- }
- /* }}} */
- 
--#define OPENSSL_PKEY_GET_BN(_type, _name) do {							\
--		if (pkey->pkey._type->_name != NULL) {							\
--			int len = BN_num_bytes(pkey->pkey._type->_name);			\
--			char *str = emalloc(len + 1);								\
--			BN_bn2bin(pkey->pkey._type->_name, (unsigned char*)str);	\
--			str[len] = 0;                                           	\
--			add_assoc_stringl(_type, #_name, str, len, 0);				\
--		}																\
--	} while (0)
--
--#define OPENSSL_PKEY_SET_BN(_ht, _type, _name) do {						\
--		zval **bn;														\
--		if (zend_hash_find(_ht, #_name, sizeof(#_name),	(void**)&bn) == SUCCESS && \
--				Z_TYPE_PP(bn) == IS_STRING) {							\
--			_type->_name = BN_bin2bn(									\
--				(unsigned char*)Z_STRVAL_PP(bn),						\
--	 			Z_STRLEN_PP(bn), NULL);									\
--	    }                                                               \
-+#define OPENSSL_GET_BN(_array, _bn, _name) do { \
-+		if (_bn != NULL) { \
-+			int len = BN_num_bytes(_bn); \
-+			char *str = emalloc(len + 1); \
-+			BN_bn2bin(_bn, (unsigned char*)str); \
-+			str[len] = 0; \
-+			add_assoc_stringl(_array, #_name, str, len, 0); \
-+		} \
- 	} while (0);
- 
-+#define OPENSSL_PKEY_GET_BN(_type, _name) OPENSSL_GET_BN(_type, _name, _name)
-+
-+#define OPENSSL_PKEY_SET_BN(_data, _name) do { \
-+		zval **bn; \
-+		if (zend_hash_find(Z_ARRVAL_P(_data), #_name, sizeof(#_name),(void**)&bn) == SUCCESS && \
-+				Z_TYPE_PP(bn) == IS_STRING) { \
-+			_name = BN_bin2bn( \
-+				(unsigned char*)Z_STRVAL_PP(bn), \
-+				Z_STRLEN_PP(bn), NULL); \
-+		} else { \
-+			_name = NULL; \
-+		} \
-+ 	} while (0);
-+
-+/* {{{ php_openssl_pkey_init_rsa */
-+zend_bool php_openssl_pkey_init_and_assign_rsa(EVP_PKEY *pkey, RSA *rsa, zval *data)
-+{
-+	BIGNUM *n, *e, *d, *p, *q, *dmp1, *dmq1, *iqmp;
-+
-+	OPENSSL_PKEY_SET_BN(data, n);
-+	OPENSSL_PKEY_SET_BN(data, e);
-+	OPENSSL_PKEY_SET_BN(data, d);
-+	if (!n || !d || !RSA_set0_key(rsa, n, e, d)) {
-+		return 0;
-+	}
-+
-+	OPENSSL_PKEY_SET_BN(data, p);
-+	OPENSSL_PKEY_SET_BN(data, q);
-+	if ((p || q) && !RSA_set0_factors(rsa, p, q)) {
-+		return 0;
-+	}
-+
-+	OPENSSL_PKEY_SET_BN(data, dmp1);
-+	OPENSSL_PKEY_SET_BN(data, dmq1);
-+	OPENSSL_PKEY_SET_BN(data, iqmp);
-+	if ((dmp1 || dmq1 || iqmp) && !RSA_set0_crt_params(rsa, dmp1, dmq1, iqmp)) {
-+		return 0;
-+	}
-+
-+	if (!EVP_PKEY_assign_RSA(pkey, rsa)) {
-+		return 0;
-+	}
-+
-+	return 1;
-+}
-+/* }}} */
-+
- /* {{{ php_openssl_pkey_init_dsa */
--zend_bool php_openssl_pkey_init_dsa(DSA *dsa)
-+zend_bool php_openssl_pkey_init_dsa(DSA *dsa, zval *data)
- {
--	if (!dsa->p || !dsa->q || !dsa->g) {
-+	BIGNUM *p, *q, *g, *priv_key, *pub_key;
-+	const BIGNUM *priv_key_const, *pub_key_const;
-+
-+	OPENSSL_PKEY_SET_BN(data, p);
-+	OPENSSL_PKEY_SET_BN(data, q);
-+	OPENSSL_PKEY_SET_BN(data, g);
-+	if (!p || !q || !g || !DSA_set0_pqg(dsa, p, q, g)) {
- 		return 0;
- 	}
--	if (dsa->priv_key || dsa->pub_key) {
--		return 1;
-+
-+	OPENSSL_PKEY_SET_BN(data, pub_key);
-+	OPENSSL_PKEY_SET_BN(data, priv_key);
-+	if (pub_key) {
-+		return DSA_set0_key(dsa, pub_key, priv_key);
- 	}
- 	PHP_OPENSSL_RAND_ADD_TIME();
- 	if (!DSA_generate_key(dsa)) {
-@@ -3566,7 +3807,8 @@ zend_bool php_openssl_pkey_init_dsa(DSA *dsa)
- 	}
- 	/* if BN_mod_exp return -1, then DSA_generate_key succeed for failed key
- 	 * so we need to double check that public key is created */
--	if (!dsa->pub_key || BN_is_zero(dsa->pub_key)) {
-+	DSA_get0_key(dsa, &pub_key_const, &priv_key_const);
-+	if (!pub_key_const || BN_is_zero(pub_key_const)) {
- 		return 0;
- 	}
- 	/* all good */
-@@ -3574,14 +3816,66 @@ zend_bool php_openssl_pkey_init_dsa(DSA *dsa)
- }
- /* }}} */
- 
-+/* {{{ php_openssl_dh_pub_from_priv */
-+static BIGNUM *php_openssl_dh_pub_from_priv(BIGNUM *priv_key, BIGNUM *g, BIGNUM *p)
-+{
-+	BIGNUM *pub_key, *priv_key_const_time;
-+	BN_CTX *ctx;
-+
-+	pub_key = BN_new();
-+	if (pub_key == NULL) {
-+		return NULL;
-+	}
-+
-+	priv_key_const_time = BN_new();
-+	if (priv_key_const_time == NULL) {
-+		BN_free(pub_key);
-+		return NULL;
-+	}
-+	ctx = BN_CTX_new();
-+	if (ctx == NULL) {
-+		BN_free(pub_key);
-+		BN_free(priv_key_const_time);
-+		return NULL;
-+	}
-+
-+	BN_with_flags(priv_key_const_time, priv_key, BN_FLG_CONSTTIME);
-+
-+	if (!BN_mod_exp_mont(pub_key, g, priv_key_const_time, p, ctx, NULL)) {
-+		BN_free(pub_key);
-+		pub_key = NULL;
-+	}
-+
-+	BN_free(priv_key_const_time);
-+	BN_CTX_free(ctx);
-+
-+	return pub_key;
-+}
-+/* }}} */
-+
- /* {{{ php_openssl_pkey_init_dh */
--zend_bool php_openssl_pkey_init_dh(DH *dh)
-+zend_bool php_openssl_pkey_init_dh(DH *dh, zval *data)
- {
--	if (!dh->p || !dh->g) {
-+	BIGNUM *p, *q, *g, *priv_key, *pub_key;
-+
-+	OPENSSL_PKEY_SET_BN(data, p);
-+	OPENSSL_PKEY_SET_BN(data, q);
-+	OPENSSL_PKEY_SET_BN(data, g);
-+	if (!p || !g || !DH_set0_pqg(dh, p, q, g)) {
- 		return 0;
- 	}
--	if (dh->pub_key) {
--		return 1;
-+
-+	OPENSSL_PKEY_SET_BN(data, priv_key);
-+	OPENSSL_PKEY_SET_BN(data, pub_key);
-+	if (pub_key) {
-+		return DH_set0_key(dh, pub_key, priv_key);
-+	}
-+	if (priv_key) {
-+		pub_key = php_openssl_dh_pub_from_priv(priv_key, g, p);
-+		if (pub_key == NULL) {
-+			return 0;
-+		}
-+		return DH_set0_key(dh, pub_key, priv_key);
- 	}
- 	PHP_OPENSSL_RAND_ADD_TIME();
- 	if (!DH_generate_key(dh)) {
-@@ -3614,18 +3908,8 @@ PHP_FUNCTION(openssl_pkey_new)
- 		    if (pkey) {
- 				RSA *rsa = RSA_new();
- 				if (rsa) {
--					OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), rsa, n);
--					OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), rsa, e);
--					OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), rsa, d);
--					OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), rsa, p);
--					OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), rsa, q);
--					OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), rsa, dmp1);
--					OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), rsa, dmq1);
--					OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), rsa, iqmp);
--					if (rsa->n && rsa->d) {
--						if (EVP_PKEY_assign_RSA(pkey, rsa)) {
--							RETURN_RESOURCE(zend_list_insert(pkey, le_key TSRMLS_CC));
--						}
-+					if (php_openssl_pkey_init_and_assign_rsa(pkey, rsa, *data)) {
-+						RETURN_RESOURCE(zend_list_insert(pkey, le_key TSRMLS_CC));
- 					}
- 					RSA_free(rsa);
- 				}
-@@ -3638,12 +3922,7 @@ PHP_FUNCTION(openssl_pkey_new)
- 		    if (pkey) {
- 				DSA *dsa = DSA_new();
- 				if (dsa) {
--					OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), dsa, p);
--					OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), dsa, q);
--					OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), dsa, g);
--					OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), dsa, priv_key);
--					OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), dsa, pub_key);
--					if (php_openssl_pkey_init_dsa(dsa)) {
-+					if (php_openssl_pkey_init_dsa(dsa, *data)) {
- 						if (EVP_PKEY_assign_DSA(pkey, dsa)) {
- 							RETURN_RESOURCE(zend_list_insert(pkey, le_key TSRMLS_CC));
- 						}
-@@ -3659,11 +3938,7 @@ PHP_FUNCTION(openssl_pkey_new)
- 		    if (pkey) {
- 				DH *dh = DH_new();
- 				if (dh) {
--					OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), dh, p);
--					OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), dh, g);
--					OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), dh, priv_key);
--					OPENSSL_PKEY_SET_BN(Z_ARRVAL_PP(data), dh, pub_key);
--					if (php_openssl_pkey_init_dh(dh)) {
-+					if (php_openssl_pkey_init_dh(dh, *data)) {
- 						if (EVP_PKEY_assign_DH(pkey, dh)) {
- 							RETURN_RESOURCE(zend_list_insert(pkey, le_key TSRMLS_CC));
- 						}
-@@ -3738,10 +4013,10 @@ PHP_FUNCTION(openssl_pkey_export_to_file)
- 			cipher = NULL;
- 		}
- 
--		switch (EVP_PKEY_type(key->type)) {
-+		switch (EVP_PKEY_base_id(key)) {
- #ifdef HAVE_EVP_PKEY_EC
- 			case EVP_PKEY_EC:
--				pem_write = PEM_write_bio_ECPrivateKey(bio_out, EVP_PKEY_get1_EC_KEY(key), cipher, (unsigned char *)passphrase, passphrase_len, NULL, NULL);
-+				pem_write = PEM_write_bio_ECPrivateKey(bio_out, EVP_PKEY_get0_EC_KEY(key), cipher, (unsigned char *)passphrase, passphrase_len, NULL, NULL);
- 				break;
- #endif
- 			default:
-@@ -3807,7 +4082,7 @@ PHP_FUNCTION(openssl_pkey_export)
- 			cipher = NULL;
- 		}
- 
--		switch (EVP_PKEY_type(key->type)) {
-+		switch (EVP_PKEY_base_id(key)) {
- #ifdef HAVE_EVP_PKEY_EC
- 			case EVP_PKEY_EC:
- 				pem_write = PEM_write_bio_ECPrivateKey(bio_out, EVP_PKEY_get1_EC_KEY(key), cipher, (unsigned char *)passphrase, passphrase_len, NULL, NULL);
-@@ -3928,25 +4203,33 @@ PHP_FUNCTION(openssl_pkey_get_details)
- 	/*TODO: Use the real values once the openssl constants are used 
- 	 * See the enum at the top of this file
- 	 */
--	switch (EVP_PKEY_type(pkey->type)) {
-+	switch (EVP_PKEY_base_id(pkey)) {
- 		case EVP_PKEY_RSA:
- 		case EVP_PKEY_RSA2:
--			ktype = OPENSSL_KEYTYPE_RSA;
--
--			if (pkey->pkey.rsa != NULL) {
--				zval *rsa;
--
--				ALLOC_INIT_ZVAL(rsa);
--				array_init(rsa);
--				OPENSSL_PKEY_GET_BN(rsa, n);
--				OPENSSL_PKEY_GET_BN(rsa, e);
--				OPENSSL_PKEY_GET_BN(rsa, d);
--				OPENSSL_PKEY_GET_BN(rsa, p);
--				OPENSSL_PKEY_GET_BN(rsa, q);
--				OPENSSL_PKEY_GET_BN(rsa, dmp1);
--				OPENSSL_PKEY_GET_BN(rsa, dmq1);
--				OPENSSL_PKEY_GET_BN(rsa, iqmp);
--				add_assoc_zval(return_value, "rsa", rsa);
-+			{
-+				RSA *rsa = EVP_PKEY_get0_RSA(pkey);
-+				ktype = OPENSSL_KEYTYPE_RSA;
-+
-+				if (rsa != NULL) {
-+					zval *z_rsa;
-+					const BIGNUM *n, *e, *d, *p, *q, *dmp1, *dmq1, *iqmp;
-+
-+					RSA_get0_key(rsa, &n, &e, &d);
-+					RSA_get0_factors(rsa, &p, &q);
-+					RSA_get0_crt_params(rsa, &dmp1, &dmq1, &iqmp);
-+
-+					ALLOC_INIT_ZVAL(z_rsa);
-+					array_init(z_rsa);
-+					OPENSSL_PKEY_GET_BN(z_rsa, n);
-+					OPENSSL_PKEY_GET_BN(z_rsa, e);
-+					OPENSSL_PKEY_GET_BN(z_rsa, d);
-+					OPENSSL_PKEY_GET_BN(z_rsa, p);
-+					OPENSSL_PKEY_GET_BN(z_rsa, q);
-+					OPENSSL_PKEY_GET_BN(z_rsa, dmp1);
-+					OPENSSL_PKEY_GET_BN(z_rsa, dmq1);
-+					OPENSSL_PKEY_GET_BN(z_rsa, iqmp);
-+					add_assoc_zval(return_value, "rsa", z_rsa);
-+				}
- 			}
- 
- 			break;	
-@@ -3954,42 +4237,55 @@ PHP_FUNCTION(openssl_pkey_get_details)
- 		case EVP_PKEY_DSA2:
- 		case EVP_PKEY_DSA3:
- 		case EVP_PKEY_DSA4:
--			ktype = OPENSSL_KEYTYPE_DSA;
--
--			if (pkey->pkey.dsa != NULL) {
--				zval *dsa;
--
--				ALLOC_INIT_ZVAL(dsa);
--				array_init(dsa);
--				OPENSSL_PKEY_GET_BN(dsa, p);
--				OPENSSL_PKEY_GET_BN(dsa, q);
--				OPENSSL_PKEY_GET_BN(dsa, g);
--				OPENSSL_PKEY_GET_BN(dsa, priv_key);
--				OPENSSL_PKEY_GET_BN(dsa, pub_key);
--				add_assoc_zval(return_value, "dsa", dsa);
-+			{
-+				DSA *dsa = EVP_PKEY_get0_DSA(pkey);
-+				ktype = OPENSSL_KEYTYPE_DSA;
-+
-+				if (dsa != NULL) {
-+					zval *z_dsa;
-+					const BIGNUM *p, *q, *g, *priv_key, *pub_key;
-+
-+					DSA_get0_pqg(dsa, &p, &q, &g);
-+					DSA_get0_key(dsa, &pub_key, &priv_key);
-+
-+					ALLOC_INIT_ZVAL(z_dsa);
-+					array_init(z_dsa);
-+					OPENSSL_PKEY_GET_BN(z_dsa, p);
-+					OPENSSL_PKEY_GET_BN(z_dsa, q);
-+					OPENSSL_PKEY_GET_BN(z_dsa, g);
-+					OPENSSL_PKEY_GET_BN(z_dsa, priv_key);
-+					OPENSSL_PKEY_GET_BN(z_dsa, pub_key);
-+					add_assoc_zval(return_value, "dsa", z_dsa);
-+				}
- 			}
- 			break;
- 		case EVP_PKEY_DH:
--			
--			ktype = OPENSSL_KEYTYPE_DH;
--
--			if (pkey->pkey.dh != NULL) {
--				zval *dh;
--
--				ALLOC_INIT_ZVAL(dh);
--				array_init(dh);
--				OPENSSL_PKEY_GET_BN(dh, p);
--				OPENSSL_PKEY_GET_BN(dh, g);
--				OPENSSL_PKEY_GET_BN(dh, priv_key);
--				OPENSSL_PKEY_GET_BN(dh, pub_key);
--				add_assoc_zval(return_value, "dh", dh);
-+			{
-+				DH *dh = EVP_PKEY_get0_DH(pkey);
-+				ktype = OPENSSL_KEYTYPE_DH;
-+
-+				if (dh != NULL) {
-+					zval *z_dh;
-+					const BIGNUM *p, *q, *g, *priv_key, *pub_key;
-+
-+					DH_get0_pqg(dh, &p, &q, &g);
-+					DH_get0_key(dh, &pub_key, &priv_key);
-+
-+					ALLOC_INIT_ZVAL(z_dh);
-+					array_init(z_dh);
-+					OPENSSL_PKEY_GET_BN(z_dh, p);
-+					OPENSSL_PKEY_GET_BN(z_dh, g);
-+					OPENSSL_PKEY_GET_BN(z_dh, priv_key);
-+					OPENSSL_PKEY_GET_BN(z_dh, pub_key);
-+					add_assoc_zval(return_value, "dh", z_dh);
-+				}
- 			}
- 
- 			break;
- #ifdef HAVE_EVP_PKEY_EC
- 		case EVP_PKEY_EC:
- 			ktype = OPENSSL_KEYTYPE_EC;
--			if (pkey->pkey.ec != NULL) {
-+			if (EVP_PKEY_get0_EC_KEY(pkey) != NULL) {
- 				zval *ec;
- 				const EC_GROUP *ec_group;
- 				int nid;
-@@ -4546,13 +4842,13 @@ PHP_FUNCTION(openssl_private_encrypt)
- 	cryptedlen = EVP_PKEY_size(pkey);
- 	cryptedbuf = emalloc(cryptedlen + 1);
- 
--	switch (pkey->type) {
-+	switch (EVP_PKEY_id(pkey)) {
- 		case EVP_PKEY_RSA:
- 		case EVP_PKEY_RSA2:
- 			successful =  (RSA_private_encrypt(data_len, 
- 						(unsigned char *)data, 
- 						cryptedbuf, 
--						pkey->pkey.rsa, 
-+						EVP_PKEY_get0_RSA(pkey), 
- 						padding) == cryptedlen);
- 			break;
- 		default:
-@@ -4604,13 +4900,13 @@ PHP_FUNCTION(openssl_private_decrypt)
- 	cryptedlen = EVP_PKEY_size(pkey);
- 	crypttemp = emalloc(cryptedlen + 1);
- 
--	switch (pkey->type) {
-+	switch (EVP_PKEY_id(pkey)) {
- 		case EVP_PKEY_RSA:
- 		case EVP_PKEY_RSA2:
- 			cryptedlen = RSA_private_decrypt(data_len, 
- 					(unsigned char *)data, 
- 					crypttemp, 
--					pkey->pkey.rsa, 
-+					EVP_PKEY_get0_RSA(pkey), 
- 					padding);
- 			if (cryptedlen != -1) {
- 				cryptedbuf = emalloc(cryptedlen + 1);
-@@ -4669,13 +4965,13 @@ PHP_FUNCTION(openssl_public_encrypt)
- 	cryptedlen = EVP_PKEY_size(pkey);
- 	cryptedbuf = emalloc(cryptedlen + 1);
- 
--	switch (pkey->type) {
-+	switch (EVP_PKEY_id(pkey)) {
- 		case EVP_PKEY_RSA:
- 		case EVP_PKEY_RSA2:
- 			successful = (RSA_public_encrypt(data_len, 
- 						(unsigned char *)data, 
- 						cryptedbuf, 
--						pkey->pkey.rsa, 
-+						EVP_PKEY_get0_RSA(pkey), 
- 						padding) == cryptedlen);
- 			break;
- 		default:
-@@ -4728,13 +5024,13 @@ PHP_FUNCTION(openssl_public_decrypt)
- 	cryptedlen = EVP_PKEY_size(pkey);
- 	crypttemp = emalloc(cryptedlen + 1);
- 
--	switch (pkey->type) {
-+	switch (EVP_PKEY_id(pkey)) {
- 		case EVP_PKEY_RSA:
- 		case EVP_PKEY_RSA2:
- 			cryptedlen = RSA_public_decrypt(data_len, 
- 					(unsigned char *)data, 
- 					crypttemp, 
--					pkey->pkey.rsa, 
-+					EVP_PKEY_get0_RSA(pkey), 
- 					padding);
- 			if (cryptedlen != -1) {
- 				cryptedbuf = emalloc(cryptedlen + 1);
-@@ -4798,7 +5094,7 @@ PHP_FUNCTION(openssl_sign)
- 	long keyresource = -1;
- 	char * data;
- 	int data_len;
--	EVP_MD_CTX md_ctx;
-+	EVP_MD_CTX *md_ctx;
- 	zval *method = NULL;
- 	long signature_algo = OPENSSL_ALGO_SHA1;
- 	const EVP_MD *mdtype;
-@@ -4831,9 +5127,10 @@ PHP_FUNCTION(openssl_sign)
- 	siglen = EVP_PKEY_size(pkey);
- 	sigbuf = emalloc(siglen + 1);
- 
--	EVP_SignInit(&md_ctx, mdtype);
--	EVP_SignUpdate(&md_ctx, data, data_len);
--	if (EVP_SignFinal (&md_ctx, sigbuf,(unsigned int *)&siglen, pkey)) {
-+	md_ctx = EVP_MD_CTX_create();
-+	EVP_SignInit(md_ctx, mdtype);
-+	EVP_SignUpdate(md_ctx, data, data_len);
-+	if (EVP_SignFinal (md_ctx, sigbuf,(unsigned int *)&siglen, pkey)) {
- 		zval_dtor(signature);
- 		sigbuf[siglen] = '\0';
- 		ZVAL_STRINGL(signature, (char *)sigbuf, siglen, 0);
-@@ -4842,7 +5139,7 @@ PHP_FUNCTION(openssl_sign)
- 		efree(sigbuf);
- 		RETVAL_FALSE;
- 	}
--	EVP_MD_CTX_cleanup(&md_ctx);
-+	EVP_MD_CTX_destroy(md_ctx);
- 	if (keyresource == -1) {
- 		EVP_PKEY_free(pkey);
- 	}
-@@ -4856,7 +5153,7 @@ PHP_FUNCTION(openssl_verify)
- 	zval **key;
- 	EVP_PKEY *pkey;
- 	int err;
--	EVP_MD_CTX     md_ctx;
-+	EVP_MD_CTX     *md_ctx;
- 	const EVP_MD *mdtype;
- 	long keyresource = -1;
- 	char * data;	int data_len;
-@@ -4890,10 +5187,11 @@ PHP_FUNCTION(openssl_verify)
- 		RETURN_FALSE;
- 	}
- 
--	EVP_VerifyInit   (&md_ctx, mdtype);
--	EVP_VerifyUpdate (&md_ctx, data, data_len);
--	err = EVP_VerifyFinal (&md_ctx, (unsigned char *)signature, signature_len, pkey);
--	EVP_MD_CTX_cleanup(&md_ctx);
-+	md_ctx = EVP_MD_CTX_create();
-+	EVP_VerifyInit   (md_ctx, mdtype);
-+	EVP_VerifyUpdate (md_ctx, data, data_len);
-+	err = EVP_VerifyFinal (md_ctx, (unsigned char *)signature, signature_len, pkey);
-+	EVP_MD_CTX_destroy(md_ctx);
- 
- 	if (keyresource == -1) {
- 		EVP_PKEY_free(pkey);
-@@ -4917,7 +5215,7 @@ PHP_FUNCTION(openssl_seal)
- 	char *method =NULL;
- 	int method_len = 0;
- 	const EVP_CIPHER *cipher;
--	EVP_CIPHER_CTX ctx;
-+	EVP_CIPHER_CTX *ctx;
- 
- 	if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "szza/|s", &data, &data_len, &sealdata, &ekeys, &pubkeys, &method, &method_len) == FAILURE) {
- 		return;
-@@ -4950,6 +5248,7 @@ PHP_FUNCTION(openssl_seal)
- 	memset(eks, 0, sizeof(*eks) * nkeys);
- 	key_resources = safe_emalloc(nkeys, sizeof(long), 0);
- 	memset(key_resources, 0, sizeof(*key_resources) * nkeys);
-+	memset(pkeys, 0, sizeof(*pkeys) * nkeys);
- 
- 	/* get the public keys we are using to seal this data */
- 	zend_hash_internal_pointer_reset_ex(pubkeysht, &pos);
-@@ -4967,27 +5266,28 @@ PHP_FUNCTION(openssl_seal)
- 		i++;
- 	}
- 
--	if (!EVP_EncryptInit(&ctx,cipher,NULL,NULL)) {
-+	ctx = EVP_CIPHER_CTX_new();
-+	if (ctx == NULL || !EVP_EncryptInit(ctx,cipher,NULL,NULL)) {
- 		RETVAL_FALSE;
--		EVP_CIPHER_CTX_cleanup(&ctx);
-+		EVP_CIPHER_CTX_free(ctx);
- 		goto clean_exit;
- 	}
- 
- #if 0
- 	/* Need this if allow ciphers that require initialization vector */
--	ivlen = EVP_CIPHER_CTX_iv_length(&ctx);
-+	ivlen = EVP_CIPHER_CTX_iv_length(ctx);
- 	iv = ivlen ? emalloc(ivlen + 1) : NULL;
- #endif
- 	/* allocate one byte extra to make room for \0 */
--	buf = emalloc(data_len + EVP_CIPHER_CTX_block_size(&ctx));
--	EVP_CIPHER_CTX_cleanup(&ctx);
-+	buf = emalloc(data_len + EVP_CIPHER_CTX_block_size(ctx));
-+	EVP_CIPHER_CTX_cleanup(ctx);
- 
--	if (EVP_SealInit(&ctx, cipher, eks, eksl, NULL, pkeys, nkeys) <= 0 ||
--			!EVP_SealUpdate(&ctx, buf, &len1, (unsigned char *)data, data_len) ||
--			!EVP_SealFinal(&ctx, buf + len1, &len2)) {
-+	if (EVP_SealInit(ctx, cipher, eks, eksl, NULL, pkeys, nkeys) <= 0 ||
-+			!EVP_SealUpdate(ctx, buf, &len1, (unsigned char *)data, data_len) ||
-+			!EVP_SealFinal(ctx, buf + len1, &len2)) {
- 		RETVAL_FALSE;
- 		efree(buf);
--		EVP_CIPHER_CTX_cleanup(&ctx);
-+		EVP_CIPHER_CTX_free(ctx);
- 		goto clean_exit;
- 	}
- 
-@@ -5018,7 +5318,7 @@ PHP_FUNCTION(openssl_seal)
- 		efree(buf);
- 	}
- 	RETVAL_LONG(len1 + len2);
--	EVP_CIPHER_CTX_cleanup(&ctx);
-+	EVP_CIPHER_CTX_free(ctx);
- 
- clean_exit:
- 	for (i=0; i<nkeys; i++) {
-@@ -5045,7 +5345,7 @@ PHP_FUNCTION(openssl_open)
- 	int len1, len2;
- 	unsigned char *buf;
- 	long keyresource = -1;
--	EVP_CIPHER_CTX ctx;
-+	EVP_CIPHER_CTX *ctx;
- 	char * data;	int data_len;
- 	char * ekey;	int ekey_len;
- 	char *method =NULL;
-@@ -5074,8 +5374,9 @@ PHP_FUNCTION(openssl_open)
- 	
- 	buf = emalloc(data_len + 1);
- 
--	if (EVP_OpenInit(&ctx, cipher, (unsigned char *)ekey, ekey_len, NULL, pkey) && EVP_OpenUpdate(&ctx, buf, &len1, (unsigned char *)data, data_len)) {
--		if (!EVP_OpenFinal(&ctx, buf + len1, &len2) || (len1 + len2 == 0)) {
-+	ctx = EVP_CIPHER_CTX_new();
-+	if (EVP_OpenInit(ctx, cipher, (unsigned char *)ekey, ekey_len, NULL, pkey) && EVP_OpenUpdate(ctx, buf, &len1, (unsigned char *)data, data_len)) {
-+		if (!EVP_OpenFinal(ctx, buf + len1, &len2) || (len1 + len2 == 0)) {
- 			efree(buf);
- 			RETVAL_FALSE;
- 		} else {
-@@ -5091,7 +5392,7 @@ PHP_FUNCTION(openssl_open)
- 	if (keyresource == -1) {
- 		EVP_PKEY_free(pkey);
- 	}
--	EVP_CIPHER_CTX_cleanup(&ctx);
-+	EVP_CIPHER_CTX_free(ctx);
- }
- /* }}} */
- 
-@@ -5151,7 +5452,7 @@ PHP_FUNCTION(openssl_digest)
- 	char *data, *method;
- 	int data_len, method_len;
- 	const EVP_MD *mdtype;
--	EVP_MD_CTX md_ctx;
-+	EVP_MD_CTX *md_ctx;
- 	int siglen;
- 	unsigned char *sigbuf;
- 
-@@ -5167,9 +5468,10 @@ PHP_FUNCTION(openssl_digest)
- 	siglen = EVP_MD_size(mdtype);
- 	sigbuf = emalloc(siglen + 1);
- 
--	EVP_DigestInit(&md_ctx, mdtype);
--	EVP_DigestUpdate(&md_ctx, (unsigned char *)data, data_len);
--	if (EVP_DigestFinal (&md_ctx, (unsigned char *)sigbuf, (unsigned int *)&siglen)) {
-+	md_ctx = EVP_MD_CTX_create();
-+	EVP_DigestInit(md_ctx, mdtype);
-+	EVP_DigestUpdate(md_ctx, (unsigned char *)data, data_len);
-+	if (EVP_DigestFinal (md_ctx, (unsigned char *)sigbuf, (unsigned int *)&siglen)) {
- 		if (raw_output) {
- 			sigbuf[siglen] = '\0';
- 			RETVAL_STRINGL((char *)sigbuf, siglen, 0);
-@@ -5185,6 +5487,8 @@ PHP_FUNCTION(openssl_digest)
- 		efree(sigbuf);
- 		RETVAL_FALSE;
- 	}
-+
-+	EVP_MD_CTX_destroy(md_ctx);
- }
- /* }}} */
- 
-@@ -5230,7 +5534,7 @@ PHP_FUNCTION(openssl_encrypt)
- 	char *data, *method, *password, *iv = "";
- 	int data_len, method_len, password_len, iv_len = 0, max_iv_len;
- 	const EVP_CIPHER *cipher_type;
--	EVP_CIPHER_CTX cipher_ctx;
-+	EVP_CIPHER_CTX *cipher_ctx;
- 	int i=0, outlen, keylen;
- 	unsigned char *outbuf, *key;
- 	zend_bool free_iv;
-@@ -5262,19 +5566,24 @@ PHP_FUNCTION(openssl_encrypt)
- 	outlen = data_len + EVP_CIPHER_block_size(cipher_type);
- 	outbuf = safe_emalloc(outlen, 1, 1);
- 
--	EVP_EncryptInit(&cipher_ctx, cipher_type, NULL, NULL);
-+	cipher_ctx = EVP_CIPHER_CTX_new();
-+	if (!cipher_ctx) {
-+		php_error_docref(NULL TSRMLS_CC, E_WARNING, "Failed to create cipher context");
-+		RETURN_FALSE;
-+	}
-+	EVP_EncryptInit(cipher_ctx, cipher_type, NULL, NULL);
- 	if (password_len > keylen) {
--		EVP_CIPHER_CTX_set_key_length(&cipher_ctx, password_len);
-+		EVP_CIPHER_CTX_set_key_length(cipher_ctx, password_len);
- 	}
--	EVP_EncryptInit_ex(&cipher_ctx, NULL, NULL, key, (unsigned char *)iv);
-+	EVP_EncryptInit_ex(cipher_ctx, NULL, NULL, key, (unsigned char *)iv);
- 	if (options & OPENSSL_ZERO_PADDING) {
--		EVP_CIPHER_CTX_set_padding(&cipher_ctx, 0);
-+		EVP_CIPHER_CTX_set_padding(cipher_ctx, 0);
- 	}
- 	if (data_len > 0) {
--		EVP_EncryptUpdate(&cipher_ctx, outbuf, &i, (unsigned char *)data, data_len);
-+		EVP_EncryptUpdate(cipher_ctx, outbuf, &i, (unsigned char *)data, data_len);
- 	}
- 	outlen = i;
--	if (EVP_EncryptFinal(&cipher_ctx, (unsigned char *)outbuf + i, &i)) {
-+	if (EVP_EncryptFinal(cipher_ctx, (unsigned char *)outbuf + i, &i)) {
- 		outlen += i;
- 		if (options & OPENSSL_RAW_DATA) {
- 			outbuf[outlen] = '\0';
-@@ -5301,7 +5610,8 @@ PHP_FUNCTION(openssl_encrypt)
- 	if (free_iv) {
- 		efree(iv);
- 	}
--	EVP_CIPHER_CTX_cleanup(&cipher_ctx);
-+	EVP_CIPHER_CTX_cleanup(cipher_ctx);
-+	EVP_CIPHER_CTX_free(cipher_ctx);
- }
- /* }}} */
- 
-@@ -5313,7 +5623,7 @@ PHP_FUNCTION(openssl_decrypt)
- 	char *data, *method, *password, *iv = "";
- 	int data_len, method_len, password_len, iv_len = 0;
- 	const EVP_CIPHER *cipher_type;
--	EVP_CIPHER_CTX cipher_ctx;
-+	EVP_CIPHER_CTX *cipher_ctx;
- 	int i, outlen, keylen;
- 	unsigned char *outbuf, *key;
- 	int base64_str_len;
-@@ -5359,17 +5669,23 @@ PHP_FUNCTION(openssl_decrypt)
- 	outlen = data_len + EVP_CIPHER_block_size(cipher_type);
- 	outbuf = emalloc(outlen + 1);
- 
--	EVP_DecryptInit(&cipher_ctx, cipher_type, NULL, NULL);
-+	cipher_ctx = EVP_CIPHER_CTX_new();
-+	if (!cipher_ctx) {
-+		php_error_docref(NULL TSRMLS_CC, E_WARNING, "Failed to create cipher context");
-+		RETURN_FALSE;
-+	}
-+
-+	EVP_DecryptInit(cipher_ctx, cipher_type, NULL, NULL);
- 	if (password_len > keylen) {
--		EVP_CIPHER_CTX_set_key_length(&cipher_ctx, password_len);
-+		EVP_CIPHER_CTX_set_key_length(cipher_ctx, password_len);
- 	}
--	EVP_DecryptInit_ex(&cipher_ctx, NULL, NULL, key, (unsigned char *)iv);
-+	EVP_DecryptInit_ex(cipher_ctx, NULL, NULL, key, (unsigned char *)iv);
- 	if (options & OPENSSL_ZERO_PADDING) {
--		EVP_CIPHER_CTX_set_padding(&cipher_ctx, 0);
-+		EVP_CIPHER_CTX_set_padding(cipher_ctx, 0);
- 	}
--	EVP_DecryptUpdate(&cipher_ctx, outbuf, &i, (unsigned char *)data, data_len);
-+	EVP_DecryptUpdate(cipher_ctx, outbuf, &i, (unsigned char *)data, data_len);
- 	outlen = i;
--	if (EVP_DecryptFinal(&cipher_ctx, (unsigned char *)outbuf + i, &i)) {
-+	if (EVP_DecryptFinal(cipher_ctx, (unsigned char *)outbuf + i, &i)) {
- 		outlen += i;
- 		outbuf[outlen] = '\0';
- 		RETVAL_STRINGL((char *)outbuf, outlen, 0);
-@@ -5386,7 +5702,8 @@ PHP_FUNCTION(openssl_decrypt)
- 	if (base64_str) {
- 		efree(base64_str);
- 	}
-- 	EVP_CIPHER_CTX_cleanup(&cipher_ctx);
-+ 	EVP_CIPHER_CTX_cleanup(cipher_ctx);
-+ 	EVP_CIPHER_CTX_free(cipher_ctx);
- }
- /* }}} */
- 
-@@ -5424,6 +5741,7 @@ PHP_FUNCTION(openssl_dh_compute_key)
- 	zval *key;
- 	char *pub_str;
- 	int pub_len;
-+	DH *dh;
- 	EVP_PKEY *pkey;
- 	BIGNUM *pub;
- 	char *data;
-@@ -5433,14 +5751,21 @@ PHP_FUNCTION(openssl_dh_compute_key)
- 		return;
- 	}
- 	ZEND_FETCH_RESOURCE(pkey, EVP_PKEY *, &key, -1, "OpenSSL key", le_key);
--	if (!pkey || EVP_PKEY_type(pkey->type) != EVP_PKEY_DH || !pkey->pkey.dh) {
-+	if (pkey == NULL) {
-+		RETURN_FALSE;
-+	}
-+	if (EVP_PKEY_base_id(pkey) != EVP_PKEY_DH) {
-+		RETURN_FALSE;
-+	}
-+	dh = EVP_PKEY_get0_DH(pkey);
-+	if (dh == NULL) {
- 		RETURN_FALSE;
- 	}
- 
- 	pub = BN_bin2bn((unsigned char*)pub_str, pub_len, NULL);
- 
--	data = emalloc(DH_size(pkey->pkey.dh) + 1);
--	len = DH_compute_key((unsigned char*)data, pub, pkey->pkey.dh);
-+	data = emalloc(DH_size(dh) + 1);
-+	len = DH_compute_key((unsigned char*)data, pub, dh);
- 
- 	if (len >= 0) {
- 		data[len] = 0;
-diff --git a/ext/openssl/xp_ssl.c b/ext/openssl/xp_ssl.c
-index d549033..c2d477c 100644
---- a/ext/openssl/xp_ssl.c
-+++ b/ext/openssl/xp_ssl.c
-@@ -935,7 +935,7 @@ static int set_local_cert(SSL_CTX *ctx, php_stream *stream TSRMLS_DC) /* {{{ */
- static const SSL_METHOD *php_select_crypto_method(long method_value, int is_client TSRMLS_DC) /* {{{ */
- {
- 	if (method_value == STREAM_CRYPTO_METHOD_SSLv2) {
--#ifndef OPENSSL_NO_SSL2
-+#if !defined(OPENSSL_NO_SSL2) && OPENSSL_VERSION_NUMBER < 0x10100000L
- 		return is_client ? SSLv2_client_method() : SSLv2_server_method();
- #else
- 		php_error_docref(NULL TSRMLS_CC, E_WARNING,
-@@ -1588,12 +1588,26 @@ int php_openssl_setup_crypto(php_stream *stream,
- }
- /* }}} */
- 
-+#define PHP_SSL_MAX_VERSION_LEN 32
-+
-+static char *php_ssl_cipher_get_version(const SSL_CIPHER *c, char *buffer, size_t max_len) /* {{{ */
-+{
-+	const char *version = SSL_CIPHER_get_version(c);
-+	strncpy(buffer, version, max_len);
-+	if (max_len <= strlen(version)) {
-+		buffer[max_len - 1] = 0;
-+	}
-+	return buffer;
-+}
-+/* }}} */
-+
- static zval *capture_session_meta(SSL *ssl_handle) /* {{{ */
- {
- 	zval *meta_arr;
- 	char *proto_str;
- 	long proto = SSL_version(ssl_handle);
- 	const SSL_CIPHER *cipher = SSL_get_current_cipher(ssl_handle);
-+	char version_str[PHP_SSL_MAX_VERSION_LEN];
- 
- 	switch (proto) {
- #if OPENSSL_VERSION_NUMBER >= 0x10001001L
-@@ -1611,7 +1625,7 @@ static zval *capture_session_meta(SSL *ssl_handle) /* {{{ */
- 	add_assoc_string(meta_arr, "protocol", proto_str, 1);
- 	add_assoc_string(meta_arr, "cipher_name", (char *) SSL_CIPHER_get_name(cipher), 1);
- 	add_assoc_long(meta_arr, "cipher_bits", SSL_CIPHER_get_bits(cipher, NULL));
--	add_assoc_string(meta_arr, "cipher_version", SSL_CIPHER_get_version(cipher), 1);
-+	add_assoc_string(meta_arr, "cipher_version", php_ssl_cipher_get_version(cipher, version_str, PHP_SSL_MAX_VERSION_LEN), 1);
- 
- 	return meta_arr;
- }
-diff --git a/ext/phar/util.c b/ext/phar/util.c
-index 828be8f..06e4e55 100644
---- a/ext/phar/util.c
-+++ b/ext/phar/util.c
-@@ -1531,7 +1531,7 @@ int phar_verify_signature(php_stream *fp, size_t end_of_phar, php_uint32 sig_typ
- 			BIO *in;
- 			EVP_PKEY *key;
- 			EVP_MD *mdtype = (EVP_MD *) EVP_sha1();
--			EVP_MD_CTX md_ctx;
-+			EVP_MD_CTX *md_ctx;
- #else
- 			int tempsig;
- #endif
-@@ -1608,7 +1608,8 @@ int phar_verify_signature(php_stream *fp, size_t end_of_phar, php_uint32 sig_typ
- 				return FAILURE;
- 			}
- 
--			EVP_VerifyInit(&md_ctx, mdtype);
-+			md_ctx = EVP_MD_CTX_create();
-+			EVP_VerifyInit(md_ctx, mdtype);
- 			read_len = end_of_phar;
- 
- 			if (read_len > sizeof(buf)) {
-@@ -1620,7 +1621,7 @@ int phar_verify_signature(php_stream *fp, size_t end_of_phar, php_uint32 sig_typ
- 			php_stream_seek(fp, 0, SEEK_SET);
- 
- 			while (read_size && (len = php_stream_read(fp, (char*)buf, read_size)) > 0) {
--				EVP_VerifyUpdate (&md_ctx, buf, len);
-+				EVP_VerifyUpdate (md_ctx, buf, len);
- 				read_len -= (off_t)len;
- 
- 				if (read_len < read_size) {
-@@ -1628,9 +1629,9 @@ int phar_verify_signature(php_stream *fp, size_t end_of_phar, php_uint32 sig_typ
- 				}
- 			}
- 
--			if (EVP_VerifyFinal(&md_ctx, (unsigned char *)sig, sig_len, key) != 1) {
-+			if (EVP_VerifyFinal(md_ctx, (unsigned char *)sig, sig_len, key) != 1) {
- 				/* 1: signature verified, 0: signature does not match, -1: failed signature operation */
--				EVP_MD_CTX_cleanup(&md_ctx);
-+				EVP_MD_CTX_destroy(md_ctx);
- 
- 				if (error) {
- 					spprintf(error, 0, "broken openssl signature");
-@@ -1639,7 +1640,7 @@ int phar_verify_signature(php_stream *fp, size_t end_of_phar, php_uint32 sig_typ
- 				return FAILURE;
- 			}
- 
--			EVP_MD_CTX_cleanup(&md_ctx);
-+			EVP_MD_CTX_destroy(md_ctx);
- #endif
- 
- 			*signature_len = phar_hex_str((const char*)sig, sig_len, signature TSRMLS_CC);
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-acinclude-use-pkgconfig-for-libxml2-config.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-acinclude-use-pkgconfig-for-libxml2-config.patch
deleted file mode 100644
index e7d326d..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-acinclude-use-pkgconfig-for-libxml2-config.patch
+++ /dev/null
@@ -1,90 +0,0 @@
-From 003c9feaae6ed5c173edcea51193e49bc94ac39a Mon Sep 17 00:00:00 2001
-From: Koen Kooi <koen.kooi@linaro.org>
-Date: Tue, 17 Jun 2014 09:53:00 +0200
-Subject: [PATCH 3/8] acinclude: use pkgconfig for libxml2 config
-
-Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
-Upstream-Status: Pending
----
- acinclude.m4 | 63 ++++++++++++++++++++++--------------------------------------
- 1 file changed, 23 insertions(+), 40 deletions(-)
-
-diff --git a/acinclude.m4 b/acinclude.m4
-index 206fcbf..a6c0d84 100644
---- a/acinclude.m4
-+++ b/acinclude.m4
-@@ -2530,48 +2530,31 @@ dnl
- dnl Common setup macro for libxml
- dnl
- AC_DEFUN([PHP_SETUP_LIBXML], [
--AC_CACHE_CHECK([for xml2-config path], ac_cv_php_xml2_config_path,
--[
--
--      ac_cv_php_xml2_config_path="$PHP_LIBXML_DIR/xml2-config"
--
-+PKG_CHECK_MODULES([LIBXML], [libxml-2.0 > 2.6.11], [
-+  PHP_EVAL_LIBLINE($LIBXML_LIBS, $1)
-+  PHP_EVAL_INCLINE($LIBXML_CFLAGS)
-+
-+  dnl Check that build works with given libs
-+  AC_CACHE_CHECK(whether libxml build works, php_cv_libxml_build_works, [
-+    PHP_TEST_BUILD(xmlInitParser,
-+    [
-+      php_cv_libxml_build_works=yes
-+      AC_MSG_RESULT(yes)
-+    ], [
-+      AC_MSG_RESULT(no)
-+      AC_MSG_ERROR([build test failed.  Please check the config.log for details.])
-+    ], [
-+      [$]$1
-+    ])
-+  ])
-+  if test "$php_cv_libxml_build_works" = "yes"; then
-+    AC_DEFINE(HAVE_LIBXML, 1, [ ])
-+  fi
-+  $2
-+], [
-+  AC_MSG_ERROR([$LIBXML_PKG_ERRORS])
- ])
- 
--  if test -x "$ac_cv_php_xml2_config_path"; then
--    XML2_CONFIG="$ac_cv_php_xml2_config_path"
--    libxml_full_version=`$XML2_CONFIG --version`
--    ac_IFS=$IFS
--    IFS="."
--    set $libxml_full_version
--    IFS=$ac_IFS
--    LIBXML_VERSION=`expr [$]1 \* 1000000 + [$]2 \* 1000 + [$]3`
--    if test "$LIBXML_VERSION" -ge "2006011"; then
--      LIBXML_LIBS=`$XML2_CONFIG --libs`
--      LIBXML_INCS=`$XML2_CONFIG --cflags`
--      PHP_EVAL_LIBLINE($LIBXML_LIBS, $1)
--      PHP_EVAL_INCLINE($LIBXML_INCS)
--
--      dnl Check that build works with given libs
--      AC_CACHE_CHECK(whether libxml build works, php_cv_libxml_build_works, [
--        PHP_TEST_BUILD(xmlInitParser,
--        [
--          php_cv_libxml_build_works=yes
--        ], [
--          AC_MSG_RESULT(no)
--          AC_MSG_ERROR([build test failed.  Please check the config.log for details.])
--        ], [
--          [$]$1
--        ])
--      ])
--      if test "$php_cv_libxml_build_works" = "yes"; then
--        AC_DEFINE(HAVE_LIBXML, 1, [ ])
--      fi
--      $2
--    else
--      AC_MSG_ERROR([libxml2 version 2.6.11 or greater required.])
--    fi
--ifelse([$3],[],,[else $3])
--  fi
- ])
- 
- dnl -------------------------------------------------------------------------
--- 
-1.9.3
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/acinclude-xml2-config.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/acinclude-xml2-config.patch
deleted file mode 100644
index d083166..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php/acinclude-xml2-config.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-Upstream-Status: Pending
-
-diff --git a/acinclude.m4 b/acinclude.m4
-index 4fd452e..206fcbf 100644
---- a/acinclude.m4
-+++ b/acinclude.m4
-@@ -2532,12 +2532,9 @@ dnl
- AC_DEFUN([PHP_SETUP_LIBXML], [
- AC_CACHE_CHECK([for xml2-config path], ac_cv_php_xml2_config_path,
- [
--  for i in $PHP_LIBXML_DIR /usr/local /usr; do
--    if test -x "$i/bin/xml2-config"; then
--      ac_cv_php_xml2_config_path="$i/bin/xml2-config"
--      break
--    fi
--  done
-+
-+      ac_cv_php_xml2_config_path="$PHP_LIBXML_DIR/xml2-config"
-+
- ])
- 
-   if test -x "$ac_cv_php_xml2_config_path"; then
--- 
-1.9.3
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/debian-php-fixheader.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/debian-php-fixheader.patch
new file mode 100755
index 0000000..21050f7
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php/debian-php-fixheader.patch
@@ -0,0 +1,31 @@
+php: remove host specific info from header file
+
+https://sources.debian.org/data/main/p/php7.3/7.3.6-1/debian/patches/
+        0036-php-5.4.9-fixheader.patch
+
+Upstream-Status: Inappropriate [not author]
+Signed-off-by: Joe Slater <joe.slater@windriver.com>
+
+---
+From: Debian PHP Maintainers <pkg-php-maint@lists.alioth.debian.org>
+Date: Sat, 2 May 2015 10:26:56 +0200
+Subject: php-5.4.9-fixheader
+
+Make generated php_config.h constant across rebuilds.
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 433d7e6..41893d7 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1357,7 +1357,7 @@ PHP_BUILD_DATE=`date -u +%Y-%m-%d`
+ fi
+ AC_DEFINE_UNQUOTED(PHP_BUILD_DATE,"$PHP_BUILD_DATE",[PHP build date])
+ 
+-PHP_UNAME=`uname -a | xargs`
++PHP_UNAME=`uname | xargs`
+ AC_DEFINE_UNQUOTED(PHP_UNAME,"$PHP_UNAME",[uname -a output])
+ PHP_OS=`uname | xargs`
+ AC_DEFINE_UNQUOTED(PHP_OS,"$PHP_OS",[uname output])
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
deleted file mode 100644
index 72ad554..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php/php5-0001-acinclude.m4-don-t-unset-cache-variables.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-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/php5-0001-opcache-config.m4-enable-opcache.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/php5-0001-opcache-config.m4-enable-opcache.patch
deleted file mode 100644
index 7be67ea..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php/php5-0001-opcache-config.m4-enable-opcache.patch
+++ /dev/null
@@ -1,387 +0,0 @@
-From fafcfac0933c17e1bf551600080eb0541186caf5 Mon Sep 17 00:00:00 2001
-From: Anuj Mittal <anuj.mittal@intel.com>
-Date: Mon, 2 Apr 2018 17:54:52 +0800
-Subject: [PATCH] opcache/config.m4: enable opcache
-
-We can't use AC_TRY_RUN to run programs in a cross compile environment. Set
-the variables directly instead since we know that we'd be running on latest
-enough linux kernel.
-
-Upstream-Status: Inappropriate [Configuration]
-
-Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
-
-%% original patch: php5-0001-opcache-config.m4-enable-opcache.patch
----
- ext/opcache/config.m4 | 349 ++------------------------------------------------
- 1 file changed, 8 insertions(+), 341 deletions(-)
-
-diff --git a/ext/opcache/config.m4 b/ext/opcache/config.m4
-index 5a8b86c..6e87fa5 100644
---- a/ext/opcache/config.m4
-+++ b/ext/opcache/config.m4
-@@ -11,353 +11,20 @@ if test "$PHP_OPCACHE" != "no"; then
-     AC_DEFINE(HAVE_MPROTECT, 1, [Define if you have mprotect() function])
-   ])
- 
--  AC_MSG_CHECKING(for sysvipc shared memory support)
--  AC_TRY_RUN([
--#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);
--    return 2;
--  }
--
--  if (shmctl(ipc_id, IPC_STAT, &shmbuf) != 0) {
--    shmdt(shm);
--    shmctl(ipc_id, IPC_RMID, NULL);
--    return 3;
--  }
--
--  shmbuf.shm_perm.uid = getuid();
--  shmbuf.shm_perm.gid = getgid();
--  shmbuf.shm_perm.mode = 0600;
--
--  if (shmctl(ipc_id, IPC_SET, &shmbuf) != 0) {
--    shmdt(shm);
--    shmctl(ipc_id, IPC_RMID, NULL);
--    return 4;
--  }
--
--  shmctl(ipc_id, IPC_RMID, NULL);
--
--  strcpy(shm, "hello");
--
--  pid = fork();
--  if (pid < 0) {
--    return 5;
--  } else if (pid == 0) {
--    strcpy(shm, "bye");
--    return 6;
--  }
--  if (wait(&status) != pid) {
--    return 7;
--  }
--  if (!WIFEXITED(status) || WEXITSTATUS(status) != 6) {
--    return 8;
--  }
--  if (strcmp(shm, "bye") != 0) {
--    return 9;
--  }
--  return 0;
--}
--],dnl
--    AC_DEFINE(HAVE_SHM_IPC, 1, [Define if you have SysV IPC SHM support])
--    msg=yes,msg=no,msg=no)
--  AC_MSG_RESULT([$msg])
--
--  AC_MSG_CHECKING(for mmap() using MAP_ANON shared memory support)
--  AC_TRY_RUN([
--#include <sys/types.h>
--#include <sys/wait.h>
--#include <sys/mman.h>
--#include <unistd.h>
--#include <string.h>
--
--#ifndef MAP_ANON
--# ifdef MAP_ANONYMOUS
--#  define MAP_ANON MAP_ANONYMOUS
--# endif
--#endif
--#ifndef MAP_FAILED
--# define MAP_FAILED ((void*)-1)
--#endif
--
--int main() {
--  pid_t pid;
--  int status;
--  char *shm;
--
--  shm = mmap(NULL, 4096, PROT_READ | PROT_WRITE, MAP_SHARED | MAP_ANON, -1, 0);
--  if (shm == MAP_FAILED) {
--    return 1;
--  }
--
--  strcpy(shm, "hello");
--
--  pid = fork();
--  if (pid < 0) {
--    return 5;
--  } else if (pid == 0) {
--    strcpy(shm, "bye");
--    return 6;
--  }
--  if (wait(&status) != pid) {
--    return 7;
--  }
--  if (!WIFEXITED(status) || WEXITSTATUS(status) != 6) {
--    return 8;
--  }
--  if (strcmp(shm, "bye") != 0) {
--    return 9;
--  }
--  return 0;
--}
--],dnl
--    AC_DEFINE(HAVE_SHM_MMAP_ANON, 1, [Define if you have mmap(MAP_ANON) SHM support])
--    msg=yes,msg=no,msg=no)
--  AC_MSG_RESULT([$msg])
--
--  AC_MSG_CHECKING(for mmap() using /dev/zero shared memory support)
--  AC_TRY_RUN([
--#include <sys/types.h>
--#include <sys/wait.h>
--#include <sys/mman.h>
--#include <sys/stat.h>
--#include <fcntl.h>
--#include <unistd.h>
--#include <string.h>
--
--#ifndef MAP_FAILED
--# define MAP_FAILED ((void*)-1)
--#endif
--
--int main() {
--  pid_t pid;
--  int status;
--  int fd;
--  char *shm;
--
--  fd = open("/dev/zero", O_RDWR, S_IRUSR | S_IWUSR);
--  if (fd == -1) {
--    return 1;
--  }
--
--  shm = mmap(NULL, 4096, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0);
--  if (shm == MAP_FAILED) {
--    return 2;
--  }
--
--  strcpy(shm, "hello");
--
--  pid = fork();
--  if (pid < 0) {
--    return 5;
--  } else if (pid == 0) {
--    strcpy(shm, "bye");
--    return 6;
--  }
--  if (wait(&status) != pid) {
--    return 7;
--  }
--  if (!WIFEXITED(status) || WEXITSTATUS(status) != 6) {
--    return 8;
--  }
--  if (strcmp(shm, "bye") != 0) {
--    return 9;
--  }
--  return 0;
--}
--],dnl
--    AC_DEFINE(HAVE_SHM_MMAP_ZERO, 1, [Define if you have mmap("/dev/zero") SHM support])
--    msg=yes,msg=no,msg=no)
--  AC_MSG_RESULT([$msg])
--
--  AC_MSG_CHECKING(for mmap() using shm_open() shared memory support)
--  AC_TRY_RUN([
--#include <sys/types.h>
--#include <sys/wait.h>
--#include <sys/mman.h>
--#include <sys/stat.h>
--#include <fcntl.h>
--#include <unistd.h>
--#include <string.h>
--#include <stdlib.h>
--#include <stdio.h>
--
--#ifndef MAP_FAILED
--# define MAP_FAILED ((void*)-1)
--#endif
--
--int main() {
--  pid_t pid;
--  int status;
--  int fd;
--  char *shm;
--  char tmpname[4096];
--
--  sprintf(tmpname,"test.shm.%dXXXXXX", getpid());
--  if (mktemp(tmpname) == NULL) {
--    return 1;
--  }
--  fd = shm_open(tmpname, O_RDWR | O_CREAT, S_IRUSR | S_IWUSR);
--  if (fd == -1) {
--    return 2;
--  }
--  if (ftruncate(fd, 4096) < 0) {
--    close(fd);
--    shm_unlink(tmpname);
--    return 3;
--  }
--
--  shm = mmap(NULL, 4096, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0);
--  if (shm == MAP_FAILED) {
--    return 4;
--  }
--  shm_unlink(tmpname);
--  close(fd);
--
--  strcpy(shm, "hello");
--
--  pid = fork();
--  if (pid < 0) {
--    return 5;
--  } else if (pid == 0) {
--    strcpy(shm, "bye");
--    return 6;
--  }
--  if (wait(&status) != pid) {
--    return 7;
--  }
--  if (!WIFEXITED(status) || WEXITSTATUS(status) != 6) {
--    return 8;
--  }
--  if (strcmp(shm, "bye") != 0) {
--    return 9;
--  }
--  return 0;
--}
--],dnl
--    AC_DEFINE(HAVE_SHM_MMAP_POSIX, 1, [Define if you have POSIX mmap() SHM support])
--    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([
--#include <sys/types.h>
--#include <sys/wait.h>
--#include <sys/mman.h>
--#include <sys/stat.h>
--#include <fcntl.h>
--#include <unistd.h>
--#include <string.h>
--#include <stdlib.h>
--#include <stdio.h>
--
--#ifndef MAP_FAILED
--# define MAP_FAILED ((void*)-1)
--#endif
--
--int main() {
--  pid_t pid;
--  int status;
--  int fd;
--  char *shm;
--  char tmpname[4096];
--
--  sprintf(tmpname,"test.shm.%dXXXXXX", getpid());
--  if (mktemp(tmpname) == NULL) {
--    return 1;
--  }
--  fd = open(tmpname, O_RDWR | O_CREAT, S_IRUSR | S_IWUSR);
--  if (fd == -1) {
--    return 2;
--  }
--  if (ftruncate(fd, 4096) < 0) {
--    close(fd);
--    unlink(tmpname);
--    return 3;
--  }
--
--  shm = mmap(NULL, 4096, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0);
--  if (shm == MAP_FAILED) {
--    return 4;
--  }
--  unlink(tmpname);
--  close(fd);
--
--  strcpy(shm, "hello");
--
--  pid = fork();
--  if (pid < 0) {
--    return 5;
--  } else if (pid == 0) {
--    strcpy(shm, "bye");
--    return 6;
--  }
--  if (wait(&status) != pid) {
--    return 7;
--  }
--  if (!WIFEXITED(status) || WEXITSTATUS(status) != 6) {
--    return 8;
--  }
--  if (strcmp(shm, "bye") != 0) {
--    return 9;
--  }
--  return 0;
--}
--],dnl
--    AC_DEFINE(HAVE_SHM_MMAP_FILE, 1, [Define if you have mmap() SHM support])
--    msg=yes,msg=no,msg=no)
--  AC_MSG_RESULT([$msg])
--
--flock_type=unknown
--AC_MSG_CHECKING("whether flock struct is linux ordered")
--AC_TRY_RUN([
--  #include <fcntl.h>
--  struct flock lock = { 1, 2, 3, 4, 5 };
--  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])
- 
--AC_MSG_CHECKING("whether flock struct is BSD ordered")
--AC_TRY_RUN([
--  #include <fcntl.h>
--  struct flock lock = { 1, 2, 3, 4, 5 };
--  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_MSG_ERROR([Don't know how to define struct flock on this system[,] set --enable-opcache=no])
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/php5-change-AC_TRY_RUN-to-AC_TRY_LINK.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/php5-change-AC_TRY_RUN-to-AC_TRY_LINK.patch
deleted file mode 100644
index 1d21f8c..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php/php5-change-AC_TRY_RUN-to-AC_TRY_LINK.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From 5f49987e88dfcbdb84be6e0c9025432fbd998709 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] 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
-
-%% original patch: php5-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 7e98d62..8a8ea0e 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"
- 
-   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-pear-makefile.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/php5-pear-makefile.patch
deleted file mode 100644
index 9974303..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php/php5-pear-makefile.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 79725e82d5981fc94eb657f0f46a499dbfc1cc40 Mon Sep 17 00:00:00 2001
-From: Koen Kooi <koen@dominion.thruhere.net>
-Date: Wed, 2 Nov 2011 16:54:57 +0100
-Subject: [PATCH] Upstream-Status: Pending
-
-%% original patch: php5-pear-makefile.patch
----
- pear/Makefile.frag | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/pear/Makefile.frag b/pear/Makefile.frag
-index 00bacae..739eeca 100644
---- a/pear/Makefile.frag
-+++ b/pear/Makefile.frag
-@@ -11,7 +11,7 @@ PEAR_PREFIX = -dp a${program_prefix}
- PEAR_SUFFIX = -ds a$(program_suffix)
- 
- install-pear-installer: $(SAPI_CLI_PATH)
--	@$(top_builddir)/sapi/cli/php $(PEAR_INSTALL_FLAGS) pear/install-pear-nozlib.phar -d "$(peardir)" -b "$(bindir)" ${PEAR_PREFIX} ${PEAR_SUFFIX}
-+	@$(PHP_NATIVE_DIR)/php $(PEAR_INSTALL_FLAGS) $(builddir)/install-pear-nozlib.phar -d "$(peardir)" -b "$(bindir)" ${PEAR_PREFIX} ${PEAR_SUFFIX}
- 
- install-pear:
- 	@echo "Installing PEAR environment:      $(INSTALL_ROOT)$(peardir)/"
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/php5-phar-makefile.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/php5-phar-makefile.patch
deleted file mode 100644
index 4e1efd4..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php/php5-phar-makefile.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 3ea626a8d081f56b01004b7992534d4e6b81a9cc Mon Sep 17 00:00:00 2001
-From: Koen Kooi <koen@dominion.thruhere.net>
-Date: Wed, 2 Nov 2011 16:54:57 +0100
-Subject: [PATCH] Fix phar packaging
-
-Inherited from OE-Classic, with some additions to fix host paths leaking
-into the target package.
-
-Upstream-Status: Inappropriate [config]
-
-%% original patch: php5-phar-makefile.patch
----
- ext/phar/Makefile.frag | 17 +++--------------
- 1 file changed, 3 insertions(+), 14 deletions(-)
-
-diff --git a/ext/phar/Makefile.frag b/ext/phar/Makefile.frag
-index b8b1b42..1005b2d 100644
---- a/ext/phar/Makefile.frag
-+++ b/ext/phar/Makefile.frag
-@@ -5,20 +5,9 @@ pharcmd: $(builddir)/phar.php $(builddir)/phar.phar
- 
- PHP_PHARCMD_SETTINGS = -d 'open_basedir=' -d 'output_buffering=0' -d 'memory_limit=-1' -d phar.readonly=0 -d 'safe_mode=0'
- PHP_PHARCMD_EXECUTABLE = ` \
--	if test -x "$(top_builddir)/$(SAPI_CLI_PATH)"; then \
--		$(top_srcdir)/build/shtool echo -n -- "$(top_builddir)/$(SAPI_CLI_PATH) -n"; \
--		if test "x$(PHP_MODULES)" != "x"; then \
--		$(top_srcdir)/build/shtool echo -n -- " -d extension_dir=$(top_builddir)/modules"; \
--		for i in bz2 zlib phar; do \
--			if test -f "$(top_builddir)/modules/$$i.la"; then \
--				. $(top_builddir)/modules/$$i.la; $(top_srcdir)/build/shtool echo -n -- " -d extension=$$dlname"; \
--			fi; \
--		done; \
--		fi; \
--	else \
--		$(top_srcdir)/build/shtool echo -n -- "$(PHP_EXECUTABLE)"; \
--	fi;`
--PHP_PHARCMD_BANG = `$(top_srcdir)/build/shtool echo -n -- "$(INSTALL_ROOT)$(bindir)/$(program_prefix)php$(program_suffix)$(EXEEXT)";`
-+		$(top_srcdir)/build/shtool echo -n -- "$(PHP_EXECUTABLE)"; `
-+
-+PHP_PHARCMD_BANG = `$(top_srcdir)/build/shtool echo -n -- "$(bindir)/$(program_prefix)php$(program_suffix)$(EXEEXT)";`
- 
- $(builddir)/phar/phar.inc: $(srcdir)/phar/phar.inc
- 	-@test -d $(builddir)/phar || mkdir $(builddir)/phar
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/pthread-check-threads-m4.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/pthread-check-threads-m4.patch
deleted file mode 100644
index 0c564cd..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php/pthread-check-threads-m4.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From d8067ceacbf54e79c9c6b68675332c09eaa0b55d Mon Sep 17 00:00:00 2001
-From: Jackie Huang <jackie.huang@windriver.com>
-Date: Mon, 8 Apr 2013 14:29:51 +0800
-Subject: [PATCH] pthread-check
-
-Enable pthreads support when cross-compiling
-
-Upstream-Status: Inapproprate [config]
-
-Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
----
- TSRM/threads.m4 |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/TSRM/threads.m4 b/TSRM/threads.m4
-index 38494ce..15d9454 100644
---- a/TSRM/threads.m4
-+++ b/TSRM/threads.m4
-@@ -86,7 +86,7 @@ int main() {
-   pthreads_working=no
-   ], [
-   dnl For cross compiling running this test is of no use. NetWare supports pthreads
--  pthreads_working=no
-+  pthreads_working=yes
-   case $host_alias in
-   *netware*)
-     pthreads_working=yes
--- 
-1.7.4.1
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php_5.6.40.bb b/meta-openembedded/meta-oe/recipes-devtools/php/php_5.6.40.bb
deleted file mode 100644
index 9f5bac7..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php_5.6.40.bb
+++ /dev/null
@@ -1,25 +0,0 @@
-require php.inc
-
-LIC_FILES_CHKSUM = "file://LICENSE;md5=b602636d46a61c0ac0432bbf5c078fe4"
-
-SRC_URI += "file://php5-change-AC_TRY_RUN-to-AC_TRY_LINK.patch \
-            file://pthread-check-threads-m4.patch \
-            file://0001-Add-lpthread-to-link.patch \
-            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 = " \
-                                file://php5-pear-makefile.patch \
-                                file://php5-phar-makefile.patch \
-                                file://php5-0001-opcache-config.m4-enable-opcache.patch \
-                                "
-
-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.3.6.bb b/meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.8.bb
similarity index 84%
rename from meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.6.bb
rename to meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.8.bb
index b1cac1c..072d53a 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.6.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.8.bb
@@ -6,6 +6,7 @@
             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 \
+            file://debian-php-fixheader.patch \
            "
 SRC_URI_append_class-target = " \
                                 file://pear-makefile.patch \
@@ -14,8 +15,8 @@
                                 file://xfail_two_bug_tests.patch \
                                 "
 
-SRC_URI[md5sum] = "bde9a912fb311182cd460dad1abbc247"
-SRC_URI[sha256sum] = "1e5ac8700154835c0910e3a814517da9b87bb4a82cc7011fea1a82096b6f6f77"
+SRC_URI[md5sum] = "4ffc06e803cd782a95483eb02213301e"
+SRC_URI[sha256sum] = "d566c630175d9fa84a98d3c9170ec033069e9e20c8d23dea49ae2a976b6c76f5"
 
 PACKAGECONFIG[mysql] = "--with-mysqli=mysqlnd \
                         --with-pdo-mysql=mysqlnd \
diff --git a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c/protobuf3-compatibility.patch b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c/protobuf3-compatibility.patch
deleted file mode 100644
index 3591495..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c/protobuf3-compatibility.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From 7456d1621223d425b8a3fd74e435a79c046169fb Mon Sep 17 00:00:00 2001
-From: Robert Edmonds <edmonds@users.noreply.github.com>
-Date: Wed, 10 Apr 2019 20:47:48 -0400
-Subject: [PATCH] t/generated-code2/cxx-generate-packed-data.cc: Fix build
- failure on newer protobuf
-
- Upstream-Status: Backport [https://github.com/protobuf-c/protobuf-c/pull/369]
-
-google::protobuf::Message::Reflection has been removed in newer versions
-of protobuf. The replacement is google::protobuf::Reflection.
-
-protobuf in commit 779f61c6a3ce02a119e28e802f229e61b69b9046 ("Integrate
-recent changes from google3.", from August 2008) changed the following
-in message.h:
-
-    @@ -336,7 +337,8 @@ class LIBPROTOBUF_EXPORT Message {
-
-       // Introspection ---------------------------------------------------
-
-    -  class Reflection;  // Defined below.
-    +  // Typedef for backwards-compatibility.
-    +  typedef google::protobuf::Reflection Reflection;
-
-The "typedef for backwards-compatibility" apparently lasted ten years
-until protobuf commit 6bbe197e9c1b6fc38cbdc45e3bf83fa7ced792a3
-("Down-integrate from google3.", from August 2018) which finally removed
-the typedef:
-
-    @@ -327,8 +344,6 @@ class LIBPROTOBUF_EXPORT Message : public MessageLite {
-
-       // Introspection ---------------------------------------------------
-
-    -  // Typedef for backwards-compatibility.
-    -  typedef google::protobuf::Reflection Reflection;
-
-This commit updates the only use of this typedef (in the test suite) to
-directly refer to the replacement, google::protobuf::Reflection. This
-fixes the build failure in the test suite.
----
- t/generated-code2/cxx-generate-packed-data.cc | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/t/generated-code2/cxx-generate-packed-data.cc b/t/generated-code2/cxx-generate-packed-data.cc
-index 4fd3e25..0865d2e 100644
---- a/t/generated-code2/cxx-generate-packed-data.cc
-+++ b/t/generated-code2/cxx-generate-packed-data.cc
-@@ -998,7 +998,7 @@ static void dump_test_packed_repeated_enum (void)
- static void dump_test_unknown_fields (void)
- {
-   EmptyMess mess;
--  const google::protobuf::Message::Reflection *reflection = mess.GetReflection();
-+  const google::protobuf::Reflection *reflection = mess.GetReflection();
-   google::protobuf::UnknownFieldSet *fs = reflection->MutableUnknownFields(&mess);
-
- #if GOOGLE_PROTOBUF_VERSION >= 2001000
diff --git a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c_1.3.1.bb b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c_1.3.2.bb
similarity index 89%
rename from meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c_1.3.1.bb
rename to meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c_1.3.2.bb
index 1d17823..6d1ffc3 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c_1.3.1.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf-c_1.3.2.bb
@@ -12,11 +12,9 @@
 
 DEPENDS = "protobuf-native protobuf"
 
-PV .= "+git${SRCPV}"
-SRCREV = "269771b4b45d3aba04e59569f53600003db8d9ff"
+SRCREV = "1390409f4ee4e26d0635310995b516eb702c3f9e"
 
 SRC_URI = "git://github.com/protobuf-c/protobuf-c.git \
-           file://protobuf3-compatibility.patch \
           "
 
 S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf/0001-Added-stubs-map_util.h-to-list-of-installed-headers.patch b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf/0001-Added-stubs-map_util.h-to-list-of-installed-headers.patch
deleted file mode 100644
index a160e5e..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf/0001-Added-stubs-map_util.h-to-list-of-installed-headers.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From ea6e776e50971c89ad2293046b6ae2a6a9753c56 Mon Sep 17 00:00:00 2001
-From: Adam Cozzette <acozzette@google.com>
-Date: Thu, 6 Jun 2019 10:29:58 -0700
-Subject: [PATCH] Added stubs/map_util.h to list of installed headers
-
-This should fix issue #6186. I also had to remove a couple unnecessary
-const keywords in map_util.h because the no_warning_test was showing
-errors about those.
-
-Upstream-Status: Submitted [https://github.com/protocolbuffers/protobuf/pull/6223]
----
- src/Makefile.am                      | 1 +
- src/google/protobuf/stubs/map_util.h | 4 ++--
- 2 files changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/src/Makefile.am b/src/Makefile.am
-index be18ba76..1689e221 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -72,6 +72,7 @@ nobase_include_HEADERS =                                         \
-   google/protobuf/stubs/hash.h                                   \
-   google/protobuf/stubs/logging.h                                \
-   google/protobuf/stubs/macros.h                                 \
-+  google/protobuf/stubs/map_util.h                               \
-   google/protobuf/stubs/mutex.h                                  \
-   google/protobuf/stubs/once.h                                   \
-   google/protobuf/stubs/platform_macros.h                        \
-diff --git a/src/google/protobuf/stubs/map_util.h b/src/google/protobuf/stubs/map_util.h
-index 2313e1f5..b04d9d46 100644
---- a/src/google/protobuf/stubs/map_util.h
-+++ b/src/google/protobuf/stubs/map_util.h
-@@ -620,7 +620,7 @@ bool UpdateReturnCopy(Collection* const collection,
- // twice. Unlike UpdateReturnCopy this also does not come with the issue of an
- // undefined previous* in case new data was inserted.
- template <class Collection>
--typename Collection::value_type::second_type* const
-+typename Collection::value_type::second_type*
- InsertOrReturnExisting(Collection* const collection,
-                        const typename Collection::value_type& vt) {
-   std::pair<typename Collection::iterator, bool> ret = collection->insert(vt);
-@@ -633,7 +633,7 @@ InsertOrReturnExisting(Collection* const collection,
-
- // Same as above, except for explicit key and data.
- template <class Collection>
--typename Collection::value_type::second_type* const
-+typename Collection::value_type::second_type*
- InsertOrReturnExisting(
-     Collection* const collection,
-     const typename Collection::value_type::first_type& key,
---
-2.11.0
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf/0001-Makefile.am-include-descriptor.cc-when-building-libp.patch b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf/0001-Makefile.am-include-descriptor.cc-when-building-libp.patch
new file mode 100644
index 0000000..fc72861
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf/0001-Makefile.am-include-descriptor.cc-when-building-libp.patch
@@ -0,0 +1,28 @@
+From 321709837f412e2f590e36e3fe33571bb40036a7 Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Thu, 27 Jun 2019 13:27:18 +0000
+Subject: [PATCH] Makefile.am: include descriptor.pb.cc when building libprotoc.so
+
+* otherwise plugin.pb.o has undefined symbol scc_info_FileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto
+  and build with gold fails with:
+  core2-32-oe-linux/protobuf/3.8.0-r0/recipe-sysroot-native/usr/bin/i686-oe-linux/../../libexec/i686-oe-linux/gcc/i686-oe-linux/9.1.0/ld.bfd: ./.libs/libprotoc.so: undefined reference to `descriptor_table_google_2fprotobuf_2fdescriptor_2eproto'
+  core2-32-oe-linux/protobuf/3.8.0-r0/recipe-sysroot-native/usr/bin/i686-oe-linux/../../libexec/i686-oe-linux/gcc/i686-oe-linux/9.1.0/ld.bfd: ./.libs/libprotoc.so: undefined reference to `scc_info_FileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto'
+
+Upstream-Status: Pending
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ src/Makefile.am | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+index be18ba761..57e3daec1 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -313,6 +313,7 @@ libprotoc_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libprotoc.map
+ EXTRA_libprotoc_la_DEPENDENCIES = libprotoc.map
+ endif
+ libprotoc_la_SOURCES =                                         \
++  google/protobuf/descriptor.pb.cc                             \
+   google/protobuf/compiler/code_generator.cc                   \
+   google/protobuf/compiler/command_line_interface.cc           \
+   google/protobuf/compiler/plugin.cc                           \
diff --git a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch
new file mode 100644
index 0000000..0a2e5e2
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf/0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch
@@ -0,0 +1,56 @@
+From a28e15092a298e0c73c6fc1ded0913275cf27cb0 Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Fri, 28 Jun 2019 13:50:52 +0000
+Subject: [PATCH] examples/Makefile: respect CXX,LDFLAGS variables, fix build
+ with gold
+
+* move pkg-config call to separate variable, so that the final version
+  of the whole command so it's shown in log.do_compile_ptest_base
+* add ../src/google/protobuf/.libs/timestamp.pb.o when linking
+  add_person_cpp otherwise it fails to link with gold:
+  i686-oe-linux-g++  -m32 -march=core2 -mtune=core2 -msse3 -mfpmath=sse --sysroot=core2-32-oe-linux/protobuf/3.8.0-r0/recipe-sysroot -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed add_person.cc addressbook.pb.cc -o add_person_cpp `pkg-config --cflags --libs protobuf`
+  /tmp/cccjSJQs.o:addressbook.pb.cc:scc_info_Person_addressbook_2eproto: error: undefined reference to 'scc_info_Timestamp_google_2fprotobuf_2ftimestamp_2eproto'
+  /tmp/cccjSJQs.o:addressbook.pb.cc:descriptor_table_addressbook_2eproto_deps: error: undefined reference to 'descriptor_table_google_2fprotobuf_2ftimestamp_2eproto'
+  collect2: error: ld returned 1 exit status
+  Makefile:43: recipe for target 'add_person_cpp' failed
+
+* and the same with list_people_cpp this time with pkg-config already through the variable:
+  i686-oe-linux-g++  -m32 -march=core2 -mtune=core2 -msse3 -mfpmath=sse --sysroot=core2-32-oe-linux/protobuf/3.8.0-r0/recipe-sysroot -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -pthread -Icore2-32-oe-linux/protobuf/3.8.0-r0/git/src -Lcore2-32-oe-linux/protobuf/3.8.0-r0/git/src/.libs -Lcore2-32-oe-linux/protobuf/3.8.0-r0/recipe-sysroot/usr/lib -lprotobuf list_people.cc addressbook.pb.cc -o list_people_cpp
+  /tmp/ccpaI5Su.o:addressbook.pb.cc:scc_info_Person_addressbook_2eproto: error: undefined reference to 'scc_info_Timestamp_google_2fprotobuf_2ftimestamp_2eproto'
+  /tmp/ccpaI5Su.o:addressbook.pb.cc:descriptor_table_addressbook_2eproto_deps: error: undefined reference to 'descriptor_table_google_2fprotobuf_2ftimestamp_2eproto'
+  collect2: error: ld returned 1 exit status
+  Makefile:49: recipe for target 'list_people_cpp' failed
+
+Upstream-Status: Pending
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ examples/Makefile | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/examples/Makefile b/examples/Makefile
+index 4ad605641..31d887639 100644
+--- a/examples/Makefile
++++ b/examples/Makefile
+@@ -2,6 +2,8 @@
+ 
+ .PHONY: all cpp java python clean
+ 
++PROTOBUF := $(shell pkg-config --cflags --libs protobuf)
++
+ all: cpp java python
+ 
+ cpp:    add_person_cpp    list_people_cpp
+@@ -41,11 +43,11 @@ protoc_middleman_dart: addressbook.proto
+ 
+ add_person_cpp: add_person.cc protoc_middleman
+ 	pkg-config --cflags protobuf  # fails if protobuf is not installed
+-	c++ add_person.cc addressbook.pb.cc -o add_person_cpp `pkg-config --cflags --libs protobuf`
++	$(CXX) $(CXXFLAGS) $(LDFLAGS) ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF) add_person.cc addressbook.pb.cc -o add_person_cpp
+ 
+ list_people_cpp: list_people.cc protoc_middleman
+ 	pkg-config --cflags protobuf  # fails if protobuf is not installed
+-	c++ list_people.cc addressbook.pb.cc -o list_people_cpp `pkg-config --cflags --libs protobuf`
++	$(CXX) $(CXXFLAGS) $(LDFLAGS) ../src/google/protobuf/.libs/timestamp.pb.o $(PROTOBUF) list_people.cc addressbook.pb.cc -o list_people_cpp
+ 
+ add_person_dart: add_person.dart protoc_middleman_dart
+ 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.8.0.bb b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.9.1.bb
similarity index 89%
rename from meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.8.0.bb
rename to meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.9.1.bb
index 476d1e3..94d8def 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.8.0.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.9.1.bb
@@ -10,12 +10,13 @@
 DEPENDS = "zlib"
 DEPENDS_append_class-target = " protobuf-native"
 
-SRCREV = "09745575a923640154bcf307fba8aedff47f240a"
+SRCREV = "655310ca192a6e3a050e0ca0b7084a2968072260"
 
-SRC_URI = "git://github.com/google/protobuf.git;branch=3.8.x \
+SRC_URI = "git://github.com/google/protobuf.git;branch=3.9.x \
            file://run-ptest \
            file://0001-protobuf-fix-configure-error.patch \
-           file://0001-Added-stubs-map_util.h-to-list-of-installed-headers.patch \
+           file://0001-Makefile.am-include-descriptor.cc-when-building-libp.patch \
+           file://0001-examples-Makefile-respect-CXX-LDFLAGS-variables-fix-.patch \
 "
 S = "${WORKDIR}/git"
 
@@ -30,9 +31,6 @@
 LANG_SUPPORT = "cpp ${@bb.utils.contains('PACKAGECONFIG', 'python', 'python', '', d)}"
 
 do_compile_ptest() {
-	# Modify makefile to use the cross-compiler
-	sed -e "s|c++|${CXX} \$(LDFLAGS)|g" -i "${S}/${TEST_SRC_DIR}/Makefile"
-
 	mkdir -p "${B}/${TEST_SRC_DIR}"
 
 	# Add the location of the cross-compiled header and library files
diff --git a/meta-openembedded/meta-oe/recipes-devtools/python/python-pygobject/0001-python-pyobject-fix-install-dir.patch b/meta-openembedded/meta-oe/recipes-devtools/python/python-pygobject/0001-python-pyobject-fix-install-dir.patch
new file mode 100644
index 0000000..848cda5
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/python/python-pygobject/0001-python-pyobject-fix-install-dir.patch
@@ -0,0 +1,121 @@
+From 8b4648d5bc50cb1c14961ed38bf97d5a693f5237 Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Mon, 24 Jun 2019 14:51:52 +0800
+Subject: [PATCH] python-pyobject: fix the wrong install dir for python2
+
+* after upgrade to 3.32.1, pygobject switch to build with meson, and
+  default python option is python3, switch to python2
+
+* default install dir get by python.install_sources and 
+python.get_install_dir is get from python's sysconfig info,
+not like python3, for python2, the install dir include the basedir of
+recipe-sysroot-native, add stagedir option for user to config
+correct install dir.
+
+Upstream-Status: Inappropriate [oe-specific]
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ gi/meson.build            | 7 +++----
+ gi/overrides/meson.build  | 4 ++--
+ gi/repository/meson.build | 4 ++--
+ meson.build               | 4 +++-
+ meson_options.txt         | 1 +
+ pygtkcompat/meson.build   | 4 ++--
+ 6 files changed, 13 insertions(+), 11 deletions(-)
+
+diff --git a/gi/meson.build b/gi/meson.build
+index c1afd68..249c23d 100644
+--- a/gi/meson.build
++++ b/gi/meson.build
+@@ -60,9 +60,8 @@ python_sources = [
+   'types.py',
+ ]
+ 
+-python.install_sources(python_sources,
+-  pure : false,
+-  subdir : 'gi'
++install_data(python_sources,
++  install_dir: join_paths(stagedir, 'gi')
+ )
+ 
+ # https://github.com/mesonbuild/meson/issues/4117
+@@ -76,7 +75,7 @@ giext = python.extension_module('_gi', sources,
+   dependencies : [python_ext_dep, glib_dep, gi_dep, ffi_dep],
+   include_directories: include_directories('..'),
+   install: true,
+-  subdir : 'gi',
++  install_dir: join_paths(stagedir, 'gi'),
+   c_args: pyext_c_args + main_c_args
+ )
+
+diff --git a/gi/overrides/meson.build b/gi/overrides/meson.build
+index 6ff073f..964fef1 100644
+--- a/gi/overrides/meson.build
++++ b/gi/overrides/meson.build
+@@ -10,6 +10,6 @@ python_sources = [
+   'keysyms.py',
+   '__init__.py']
+ 
+-python.install_sources(python_sources,
+-  subdir : join_paths('gi', 'overrides')
++install_data(python_sources,
++  install_dir: join_paths(stagedir, 'gi', 'overrides')
+ )
+diff --git a/gi/repository/meson.build b/gi/repository/meson.build
+index fdc136b..fc88adf 100644
+--- a/gi/repository/meson.build
++++ b/gi/repository/meson.build
+@@ -1,5 +1,5 @@
+ python_sources = ['__init__.py']
+ 
+-python.install_sources(python_sources,
+-  subdir : join_paths('gi', 'repository')
++install_data(python_sources,
++  install_dir: join_paths(stagedir, 'gi', 'repository')
+ )
+diff --git a/meson.build b/meson.build
+index d27a005..ecd55d5 100644
+--- a/meson.build
++++ b/meson.build
+@@ -165,12 +165,14 @@ else
+   py_version = pygobject_version
+ endif
+ 
++stagedir = get_option('stagedir')
++
+ pkginfo_conf = configuration_data()
+ pkginfo_conf.set('VERSION', py_version)
+ configure_file(input : 'PKG-INFO.in',
+   output : 'PyGObject-@0@.egg-info'.format(py_version),
+   configuration : pkginfo_conf,
+-  install_dir : python.get_install_dir(pure : false))
++  install_dir : stagedir)
+ 
+ subdir('gi')
+ subdir('pygtkcompat')
+diff --git a/meson_options.txt b/meson_options.txt
+index 5dd4cbc..21def16 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -1,3 +1,4 @@
+ option('python', type : 'string', value : 'python3')
+ option('pycairo', type : 'boolean', value : true, description : 'build with pycairo integration')
+ option('tests', type : 'boolean', value : true, description : 'build unit tests')
++option('stagedir', type : 'string', value : '')
+diff --git a/pygtkcompat/meson.build b/pygtkcompat/meson.build
+index 9e43c44..ef3322d 100644
+--- a/pygtkcompat/meson.build
++++ b/pygtkcompat/meson.build
+@@ -3,6 +3,6 @@ python_sources = [
+   'generictreemodel.py',
+   'pygtkcompat.py']
+ 
+-python.install_sources(python_sources,
+-  subdir : 'pygtkcompat'
++install_data(python_sources,
++  install_dir: join_paths(stagedir, 'pygtkcompat')
+ )
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/python/python-pygobject_3.32.1.bb b/meta-openembedded/meta-oe/recipes-devtools/python/python-pygobject_3.32.2.bb
similarity index 69%
rename from meta-openembedded/meta-oe/recipes-devtools/python/python-pygobject_3.32.1.bb
rename to meta-openembedded/meta-oe/recipes-devtools/python/python-pygobject_3.32.2.bb
index c26b383..0ea70b2 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/python/python-pygobject_3.32.1.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/python/python-pygobject_3.32.2.bb
@@ -12,21 +12,25 @@
 SRCNAME = "pygobject"
 SRC_URI = " \
     http://ftp.gnome.org/pub/GNOME/sources/${SRCNAME}/${@gnome_verdir("${PV}")}/${SRCNAME}-${PV}.tar.xz \
+    file://0001-python-pyobject-fix-install-dir.patch \
 "
 
-SRC_URI[md5sum] = "9d5dbca10162dd9b0d03fed0c6cf865d"
-SRC_URI[sha256sum] = "32c99def94b8dea5ce9e4bc99576ef87591ea779b4db77cfdca7af81b76d04d8"
+SRC_URI[md5sum] = "92ffa25351782feb96362f0dace2089f"
+SRC_URI[sha256sum] = "c39ca2a28364b57fa00549c6e836346031e6b886c3ceabfd8ab4b4fed0a83611"
 
 S = "${WORKDIR}/${SRCNAME}-${PV}"
 
 UNKNOWN_CONFIGURE_WHITELIST = "introspection"
 
+PACKAGECONFIG ??= "stagedir"
+
 PACKAGECONFIG[cairo] = "-Dpycairo=true,-Dpycairo=false, cairo python-pycairo, python-pycairo"
 PACKAGECONFIG[tests] = "-Dtests=true, -Dtests=false, , "
-
+PACKAGECONFIG[python] = "-Dpython=python3, -Dpython=python2, , "
+PACKAGECONFIG[stagedir] = "-Dstagedir=${PYTHON_SITEPACKAGES_DIR}, -Dstagedir="", , "
 
 BBCLASSEXTEND = "native"
-RDEPENDS_${PN} = "python-setuptools"
+RDEPENDS_${PN} = "python-pkgutil"
 RDEPENDS_${PN}_class-native = ""
 
 do_install_append() {
diff --git a/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.2.bb b/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.3.bb
similarity index 94%
rename from meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.2.bb
rename to meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.3.bb
index 4f40168..dba607c 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.2.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/uftrace/uftrace_0.9.3.bb
@@ -10,8 +10,8 @@
 
 inherit autotools
 
-# v0.9.2
-SRCREV = "66fc1fb973f4a44aecd216541405ffe05196f11e"
+# v0.9.3
+SRCREV = "e77780e7524c0a97f25313b205837191bbe9712a"
 SRC_URI = "git://github.com/namhyung/${BPN} \
            "
 S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-Remove-including-sys-sysctl.h-on-glibc-based-systems.patch b/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-Remove-including-sys-sysctl.h-on-glibc-based-systems.patch
new file mode 100644
index 0000000..3dee34c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-Remove-including-sys-sysctl.h-on-glibc-based-systems.patch
@@ -0,0 +1,98 @@
+From 090a17ca338a9311d682ecc5933b32bff67cf07f Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 Jul 2019 14:20:14 -0700
+Subject: [PATCH] Remove including sys/sysctl.h on glibc based systems
+
+Glibc 2.30 has added deprecation notice and collectd detects it as warning [1]
+
+Fixes
+sys/sysctl.h:21:2: error: "The <sys/sysctl.h> header is deprecated and will be removed." [-Werror,-W#warnings]
+
+[1] https://sourceware.org/git/?p=glibc.git;a=commit;h=744e829637162bb7d5029632aacf341c64b86990
+
+Upstream-Status: Submitted [https://github.com/collectd/collectd/pull/3234]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/contextswitch.c | 2 +-
+ src/memory.c        | 2 +-
+ src/swap.c          | 2 +-
+ src/uuid.c          | 2 +-
+ 4 files changed, 4 insertions(+), 4 deletions(-)
+
+--- a/src/contextswitch.c
++++ b/src/contextswitch.c
+@@ -26,7 +26,7 @@
+ #include "common.h"
+ #include "plugin.h"
+ 
+-#ifdef HAVE_SYS_SYSCTL_H
++#if defined(HAVE_SYS_SYSCTL_H) && !defined(__GLIBC__)
+ #include <sys/sysctl.h>
+ #endif
+ 
+--- a/src/memory.c
++++ b/src/memory.c
+@@ -28,7 +28,7 @@
+ #include "common.h"
+ #include "plugin.h"
+ 
+-#ifdef HAVE_SYS_SYSCTL_H
++#if defined(HAVE_SYS_SYSCTL_H) && !defined(__GLIBC__)
+ #include <sys/sysctl.h>
+ #endif
+ #ifdef HAVE_SYS_VMMETER_H
+--- a/src/swap.c
++++ b/src/swap.c
+@@ -49,7 +49,7 @@
+ #if HAVE_SYS_PARAM_H
+ #include <sys/param.h>
+ #endif
+-#if HAVE_SYS_SYSCTL_H
++#if defined(HAVE_SYS_SYSCTL_H) && !defined(__GLIBC__)
+ #include <sys/sysctl.h>
+ #endif
+ #if HAVE_SYS_DKSTAT_H
+--- a/src/uuid.c
++++ b/src/uuid.c
+@@ -29,7 +29,7 @@
+ #include "common.h"
+ #include "plugin.h"
+ 
+-#if HAVE_SYS_SYSCTL_H
++#if defined(HAVE_SYS_SYSCTL_H) && !defined(__GLIBC__)
+ #include <sys/sysctl.h>
+ #endif
+ 
+--- a/src/cpu.c
++++ b/src/cpu.c
+@@ -60,7 +60,7 @@
+ 
+ #if (defined(HAVE_SYSCTL) && HAVE_SYSCTL) ||                                   \
+     (defined(HAVE_SYSCTLBYNAME) && HAVE_SYSCTLBYNAME)
+-#ifdef HAVE_SYS_SYSCTL_H
++#if defined(HAVE_SYS_SYSCTL_H) && !defined(__GLIBC__)
+ #include <sys/sysctl.h>
+ #endif
+ 
+--- a/src/processes.c
++++ b/src/processes.c
+@@ -82,7 +82,7 @@
+ #if HAVE_MACH_VM_PROT_H
+ #include <mach/vm_prot.h>
+ #endif
+-#if HAVE_SYS_SYSCTL_H
++#if defined(HAVE_SYS_SYSCTL_H) && !defined(__GLIBC__)
+ #include <sys/sysctl.h>
+ #endif
+ /* #endif HAVE_THREAD_INFO */
+--- a/src/uptime.c
++++ b/src/uptime.c
+@@ -33,7 +33,7 @@
+  */
+ /* #endif HAVE_LIBKSTAT */
+ 
+-#elif HAVE_SYS_SYSCTL_H
++#elif defined(HAVE_SYS_SYSCTL_H) && !defined(__GLIBC__)
+ #include <sys/sysctl.h>
+ /* Using sysctl interface to retrieve the boot time on *BSD / Darwin / OS X
+  * systems */
diff --git a/meta-openembedded/meta-oe/recipes-extended/collectd/collectd_5.8.1.bb b/meta-openembedded/meta-oe/recipes-extended/collectd/collectd_5.8.1.bb
index 6dff18c..0951ac0 100644
--- a/meta-openembedded/meta-oe/recipes-extended/collectd/collectd_5.8.1.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/collectd/collectd_5.8.1.bb
@@ -14,6 +14,7 @@
            file://0001-configure-Check-for-Wno-error-format-truncation-comp.patch \
            file://0005-Disable-new-gcc8-warnings.patch \
            file://0006-libcollectdclient-Fix-string-overflow-errors.patch \
+           file://0001-Remove-including-sys-sysctl.h-on-glibc-based-systems.patch \
            "
 SRC_URI[md5sum] = "bfce96c42cede5243028510bcc57c1e6"
 SRC_URI[sha256sum] = "e796fda27ce06377f491ad91aa286962a68c2b54076aa77a29673d53204453da"
diff --git a/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20180621.bb b/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20190728.bb
similarity index 86%
rename from meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20180621.bb
rename to meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20190728.bb
index e987959..d414bc6 100644
--- a/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20180621.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20190728.bb
@@ -10,8 +10,8 @@
 
 SRC_URI = "ftp://ftp.invisible-island.net/${BPN}/${BP}.tgz \
           "
-SRC_URI[md5sum] = "1dba09cf45ac4ba40b3cb4a3f1d694b2"
-SRC_URI[sha256sum] = "4a4859e2b22d24e46c1a529b5a5605b95503aa04da4432f7bbd713e3e867587a"
+SRC_URI[md5sum] = "e9d7f8b5e7b17183b0fb9297c0f57840"
+SRC_URI[sha256sum] = "e5eb0eaaef9cae8c822887bd998e33c2c3b94ebadd37b4f6aba018c0194a2a87"
 
 # hardcoded here for use in dialog-static recipe
 S = "${WORKDIR}/dialog-${PV}"
diff --git a/meta-openembedded/meta-oe/recipes-extended/dumb-init/dumb-init_1.2.0.bb b/meta-openembedded/meta-oe/recipes-extended/dumb-init/dumb-init_1.2.2.bb
similarity index 63%
rename from meta-openembedded/meta-oe/recipes-extended/dumb-init/dumb-init_1.2.0.bb
rename to meta-openembedded/meta-oe/recipes-extended/dumb-init/dumb-init_1.2.2.bb
index e1a6d95..09eab9d 100644
--- a/meta-openembedded/meta-oe/recipes-extended/dumb-init/dumb-init_1.2.0.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/dumb-init/dumb-init_1.2.2.bb
@@ -3,9 +3,9 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=5940d39995ea6857d01b8227109c2e9c"
 
-SRC_URI = "https://github.com/Yelp/dumb-init/archive/v${PV}.tar.gz"
-SRC_URI[md5sum] = "4eb7f43d7823686723ff7ac1bad097cb"
-SRC_URI[sha256sum] = "74486997321bd939cad2ee6af030f481d39751bc9aa0ece84ed55f864e309a3f"
+SRCREV = "b1e978e486114797347deefcc03ab12629a13cc3"
+SRC_URI = "git://github.com/Yelp/dumb-init"
+S = "${WORKDIR}/git"
 
 EXTRA_OEMAKE = "CC='${CC}' CFLAGS='${CFLAGS} ${LDFLAGS}'"
 
diff --git a/meta-openembedded/meta-oe/recipes-extended/hwloc/hwloc_1.11.12.bb b/meta-openembedded/meta-oe/recipes-extended/hwloc/hwloc_1.11.13.bb
similarity index 89%
rename from meta-openembedded/meta-oe/recipes-extended/hwloc/hwloc_1.11.12.bb
rename to meta-openembedded/meta-oe/recipes-extended/hwloc/hwloc_1.11.13.bb
index 4f5b248..7231484 100644
--- a/meta-openembedded/meta-oe/recipes-extended/hwloc/hwloc_1.11.12.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/hwloc/hwloc_1.11.13.bb
@@ -8,8 +8,8 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=3282e20dc3cec311deda3c6d4b1f990b"
 
 SRC_URI = "https://www.open-mpi.org/software/${BPN}/v1.11/downloads/${BP}.tar.bz2"
-SRC_URI[md5sum] = "c2a2e4e23eeb719ed31a755684697cf9"
-SRC_URI[sha256sum] = "ddfb7b9b4571551165b0fd824a340e58814c8c2b4af64c818579d4bc695a417d"
+SRC_URI[md5sum] = "3c792e23c209e9e1bafe9bdbc613d401"
+SRC_URI[sha256sum] = "a4494b7765f517c0990d1c7f09d98cb87755bb6b841e4e2cbfebca1b14bac9c8"
 
 UPSTREAM_CHECK_URI = "https://www.open-mpi.org/software/hwloc/v1.11/"
 
diff --git a/meta-openembedded/meta-oe/recipes-extended/icewm/icewm/0001-configure.ac-skip-running-test-program-when-cross-co.patch b/meta-openembedded/meta-oe/recipes-extended/icewm/icewm/0001-configure.ac-skip-running-test-program-when-cross-co.patch
new file mode 100644
index 0000000..7943948
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/icewm/icewm/0001-configure.ac-skip-running-test-program-when-cross-co.patch
@@ -0,0 +1,37 @@
+From c2a67c1f62175ab061bc03d10dd766f968c6a097 Mon Sep 17 00:00:00 2001
+From: Naveen Saini <naveen.kumar.saini@intel.com>
+Date: Fri, 2 Aug 2019 10:41:26 +0800
+Subject: [PATCH] configure.ac: skip running test program when cross-compiling
+
+Upstream-Status: Inappropriate [OE-Specific]
+
+Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
+---
+ configure.ac | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index c5e3ca03..4b89396a 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -140,7 +140,7 @@ AC_CHECK_FUNC([getloadavg],[AC_DEFINE([HAVE_GETLOADAVG2], 1, [getloadavg() is av
+ AC_FUNC_SELECT_ARGTYPES
+ 
+ AC_MSG_CHECKING([for strlcpy])
+-AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include <string.h>]],[[
++AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <string.h>]],[[
+                char a[2];
+                if (strlcpy(a, "yes", 2) != 3)
+                    return 1;]])],
+@@ -156,7 +156,7 @@ AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include <string.h>]],[[
+               ])
+ 
+ AC_MSG_CHECKING([for strlcat])
+-AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include <string.h>]],[[
++AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <string.h>]],[[
+                char a[4] = "no";
+                if (strlcat(a, "yes", 4) != 5)
+                    return 1;]])],
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-extended/icewm/icewm_1.5.5.bb b/meta-openembedded/meta-oe/recipes-extended/icewm/icewm_1.5.5.bb
new file mode 100644
index 0000000..63fca1d
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/icewm/icewm_1.5.5.bb
@@ -0,0 +1,39 @@
+DESCRIPTION = "Ice Window Manager (IceWM)"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4a26952467ef79a7efca4a9cf52d417b"
+
+SRC_URI = "https://github.com/ice-wm/${BPN}/releases/download/${PV}/${BPN}-${PV}.tar.xz \
+           file://0001-configure.ac-skip-running-test-program-when-cross-co.patch \
+           "
+SRC_URI[md5sum] = "6eba94a7935a0531d2c14eeb1426aeef"
+SRC_URI[sha256sum] = "f1c1344b20a9e8635143f70ee27930b55f813c15ca61f84d77584d311b6ac027"
+
+inherit autotools pkgconfig gettext perlnative distro_features_check qemu
+REQUIRED_DISTRO_FEATURES = "x11"
+
+EXTRA_OECONF += "--with-libdir=${datadir}/icewm \
+                --with-cfgdir=${sysconfdir}/icewm \
+                --with-docdir=${docdir}/icewm \
+                --enable-fribidi \
+                --enable-xinerama \
+                --enable-shape"
+
+DEPENDS = "asciidoc-native fontconfig gdk-pixbuf libxft libxpm libxrandr libxinerama libice libsm libx11 libxext libxrender"
+DEPENDS_append = " qemu-native"
+RDEPENDS_${PN} = "perl fribidi"
+
+do_compile_prepend_class-target() {
+
+    cd ${B}
+    oe_runmake -C src genpref
+
+    qemu_binary="${@qemu_wrapper_cmdline(d, '${STAGING_DIR_TARGET}',['${B}/src/.libs','${STAGING_DIR_TARGET}/${libdir}','${STAGING_DIR_TARGET}/${base_libdir}'])}"
+    cat >qemuwrapper <<EOF
+#!/bin/sh
+${qemu_binary} src/genpref "\$@"
+EOF
+    chmod +x qemuwrapper
+    ./qemuwrapper > src/preferences
+}
+
+FILES_${PN} += "${datadir}/xsessions"
diff --git a/meta-openembedded/meta-oe/recipes-extended/isomd5sum/isomd5sum_1.2.3.bb b/meta-openembedded/meta-oe/recipes-extended/isomd5sum/isomd5sum_1.2.3.bb
index 83e8385..b7899a1 100644
--- a/meta-openembedded/meta-oe/recipes-extended/isomd5sum/isomd5sum_1.2.3.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/isomd5sum/isomd5sum_1.2.3.bb
@@ -2,7 +2,7 @@
 DESCRIPTION = "Tools for taking the MD5 sum of ISO images"
 
 DEPENDS = "popt python3 openssl curl popt-native"
-RDEPENDS_${PN} = "openssl curl"
+RDEPENDS_${BPN} = "openssl curl"
 
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b"
@@ -25,11 +25,11 @@
     oe_runmake install
 }
 
-PACKAGES += "${PYTHON_PN}-${PN}"
+PACKAGES += "${PYTHON_PN}-${BPN}"
 
-RPROVIDES_${PN}-dbg += "${PYTHON_PN}-${PN}-dbg"
+RPROVIDES_${BPN}-dbg += "${PYTHON_PN}-${BPN}-dbg"
 
-FILES_${PYTHON_PN}-${PN} = "${PYTHON_SITEPACKAGES_DIR}/pyisomd5sum.so"
+FILES_${PYTHON_PN}-${BPN} = "${PYTHON_SITEPACKAGES_DIR}/pyisomd5sum.so"
 
 SRCREV = "7860901f726f5d92689cb67243cc7f981f21f74b"
 
diff --git a/meta-openembedded/meta-oe/recipes-extended/libblockdev/libblockdev_2.20.bb b/meta-openembedded/meta-oe/recipes-extended/libblockdev/libblockdev_2.22.bb
similarity index 97%
rename from meta-openembedded/meta-oe/recipes-extended/libblockdev/libblockdev_2.20.bb
rename to meta-openembedded/meta-oe/recipes-extended/libblockdev/libblockdev_2.22.bb
index 54a188d..c5fc928 100644
--- a/meta-openembedded/meta-oe/recipes-extended/libblockdev/libblockdev_2.20.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/libblockdev/libblockdev_2.22.bb
@@ -10,7 +10,7 @@
 
 inherit autotools python3native gobject-introspection
 
-SRCREV = "cb308566c3c5222b8422f78997a1742713b265a9"
+SRCREV = "f6e4538485d0442b3674e182c01ffe5a0f258ad4"
 SRC_URI = " \
     git://github.com/rhinstaller/libblockdev;branch=master \
 "
diff --git a/meta-openembedded/meta-oe/recipes-extended/liblightmodbus/liblightmodbus_2.0.2.bb b/meta-openembedded/meta-oe/recipes-extended/liblightmodbus/liblightmodbus_2.0.2.bb
new file mode 100644
index 0000000..1e35f08
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/liblightmodbus/liblightmodbus_2.0.2.bb
@@ -0,0 +1,13 @@
+SUMMARY = "A cross-platform, lightweight Modbus RTU library"
+DESCRIPTION = "liblightmodbus is a very lightweight, highly configurable, \
+	       platform-independent Modbus RTU library."
+
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=84dcc94da3adb52b53ae4fa38fe49e5d"
+
+inherit cmake pkgconfig
+
+SRC_URI = "git://github.com/Jacajack/liblightmodbus.git;protocol=https"
+SRCREV = "59d2b405f95701e5b04326589786dbb43ce49e81"
+
+S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-extended/libnss-nisplus/libnss-nisplus.bb b/meta-openembedded/meta-oe/recipes-extended/libnss-nisplus/libnss-nisplus.bb
new file mode 100644
index 0000000..2dbeee7
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/libnss-nisplus/libnss-nisplus.bb
@@ -0,0 +1,31 @@
+# Copyright (C) 2019 Ruslan Bilovol <rbilovol@cisco.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+SUMMARY = "NSS module for glibc, to provide NIS+ support for glibc"
+
+DESCRIPTION = "This package contains the NSS NIS+ plugin for glibc.\
+This code was formerly part of glibc, but is now standalone to\
+be able to link against TI-RPC for IPv6 support."
+
+HOMEPAGE = "https://github.com/thkukuk/libnss_nisplus"
+LICENSE = "LGPL-2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
+SECTION = "libs"
+DEPENDS += "libtirpc libnsl2"
+
+PV = "1.3+git${SRCPV}"
+
+SRCREV = "c6934373c7bac91499ff7bbe7d2439599325ca63"
+
+SRC_URI = "git://github.com/thkukuk/libnss_nisplus \
+          "
+
+S = "${WORKDIR}/git"
+
+inherit autotools pkgconfig
+
+BBCLASSEXTEND += "native nativesdk"
+#
+# We will skip parsing this packagegeoup for non-glibc systems
+#
+COMPATIBLE_HOST_libc-musl = 'null'
diff --git a/meta-openembedded/meta-oe/recipes-extended/libreport/libreport_2.9.7.bb b/meta-openembedded/meta-oe/recipes-extended/libreport/libreport_2.10.0.bb
similarity index 96%
rename from meta-openembedded/meta-oe/recipes-extended/libreport/libreport_2.9.7.bb
rename to meta-openembedded/meta-oe/recipes-extended/libreport/libreport_2.10.0.bb
index da22836..e50226e 100644
--- a/meta-openembedded/meta-oe/recipes-extended/libreport/libreport_2.9.7.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/libreport/libreport_2.10.0.bb
@@ -17,7 +17,7 @@
             file://0003-without-build-plugins.patch \
             file://0004-configure.ac-remove-prog-test-of-augparse.patch \
 "
-SRCREV = "1d5cc00e44af4800fcae9761625dd4230681e82a"
+SRCREV = "eaff08f38d771d9362923765bb404b1514c5ca0a"
 
 UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
 
diff --git a/meta-openembedded/meta-oe/recipes-extended/libzip/libzip_1.5.1.bb b/meta-openembedded/meta-oe/recipes-extended/libzip/libzip_1.5.2.bb
similarity index 74%
rename from meta-openembedded/meta-oe/recipes-extended/libzip/libzip_1.5.1.bb
rename to meta-openembedded/meta-oe/recipes-extended/libzip/libzip_1.5.2.bb
index ce73700..5d725bf 100644
--- a/meta-openembedded/meta-oe/recipes-extended/libzip/libzip_1.5.1.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/libzip/libzip_1.5.2.bb
@@ -14,5 +14,5 @@
 
 SRC_URI = "https://libzip.org/download/libzip-${PV}.tar.xz"
 
-SRC_URI[md5sum] = "6fe665aa6d6bf3a99eb6fa9c553283fd"
-SRC_URI[sha256sum] = "04ea35b6956c7b3453f1ed3f3fe40e3ddae1f43931089124579e8384e79ed372"
+SRC_URI[md5sum] = "f9dd38d273bcdec5d3d1498fe6684f42"
+SRC_URI[sha256sum] = "b3de4d4bd49a01e0cab3507fc163f88e1651695b6b9cb25ad174dbe319d4a3b4"
diff --git a/meta-openembedded/meta-oe/recipes-extended/logwatch/logwatch_7.4.3.bb b/meta-openembedded/meta-oe/recipes-extended/logwatch/logwatch_7.5.1.bb
similarity index 92%
rename from meta-openembedded/meta-oe/recipes-extended/logwatch/logwatch_7.4.3.bb
rename to meta-openembedded/meta-oe/recipes-extended/logwatch/logwatch_7.5.1.bb
index 275a8f2..b6ab43c 100644
--- a/meta-openembedded/meta-oe/recipes-extended/logwatch/logwatch_7.4.3.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/logwatch/logwatch_7.5.1.bb
@@ -8,12 +8,12 @@
 SECTION = "devel"
 HOMEPAGE = "http://www.logwatch.org/"
 LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=f2566bb12b16d2d80d90ebc533261aa7"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=ad199c8aca74e70f296f731ad9a1521c"
 RDEPENDS_${PN} = "perl"
 
 SRC_URI = "http://jaist.dl.sourceforge.net/project/${BPN}/${BP}/${BP}.tar.gz"
-SRC_URI[md5sum] = "22bd22841caa45f12c605abc3e0c2b09"
-SRC_URI[sha256sum] = "1dbdc48d65e150f2dbb43f1e4f4700d94166e053b1c7bbbdedf4ad670283720e"
+SRC_URI[md5sum] = "3d14fa6e0fb56f890d2b3fd9cbc3162f"
+SRC_URI[sha256sum] = "9d4a00625065f25058f8966e7fb11f9f72db25507b4dd9c05f57e14447c33295"
 
 do_install() {
     install -m 0755 -d ${D}${sysconfdir}/logwatch/scripts
diff --git a/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview/0001-Fix-formatting-for-modern-c-11-compilers.patch b/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview/0001-Fix-formatting-for-modern-c-11-compilers.patch
deleted file mode 100644
index 8b00966..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview/0001-Fix-formatting-for-modern-c-11-compilers.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 90411a7f5e0e9582e79f0a8ccc1e2f158615e451 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 19 May 2018 23:18:11 -0700
-Subject: [PATCH] Fix formatting for modern c++11 compilers
-
-Fixes
-error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal]
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/backend/svg/SVG_RenderingContext.cc | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/backend/svg/SVG_RenderingContext.cc b/src/backend/svg/SVG_RenderingContext.cc
-index 55d6097..0d50702 100644
---- a/src/backend/svg/SVG_RenderingContext.cc
-+++ b/src/backend/svg/SVG_RenderingContext.cc
-@@ -68,7 +68,7 @@ void
- SVG_RenderingContext::documentStart(const BoundingBox& bbox)
- {
-   beginDocument(bbox);
--  metadata("Created by "PACKAGE" version "VERSION);
-+  metadata("Created by " PACKAGE " version " VERSION);
- }
- 
- void
--- 
-2.17.0
-
diff --git a/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview/0001-include-cstdio-to-get-printf-definitions.patch b/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview/0001-include-cstdio-to-get-printf-definitions.patch
deleted file mode 100644
index c5814bf..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview/0001-include-cstdio-to-get-printf-definitions.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From c92890c5e18bb6ee23bdb14074bacf306dd9428f Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 5 May 2015 20:35:01 -0700
-Subject: [PATCH] include cstdio to get printf definitions
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/engine/boxml/BoxMLHOVElement.cc | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/engine/boxml/BoxMLHOVElement.cc b/src/engine/boxml/BoxMLHOVElement.cc
-index 1a2812c..96c9eea 100644
---- a/src/engine/boxml/BoxMLHOVElement.cc
-+++ b/src/engine/boxml/BoxMLHOVElement.cc
-@@ -21,7 +21,7 @@
- // <http://www.gnu.org/licenses/>.
- 
- #include <config.h>
--
-+#include <cstdio>
- #include "BoxMLAttributeSignatures.hh"
- #include "BoxMLHOVElement.hh"
- #include "BoxMLHElement.hh"
--- 
-2.1.4
-
diff --git a/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview/0002-configure.ac-header-detection-of-hash_map-is-broken-.patch b/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview/0002-configure.ac-header-detection-of-hash_map-is-broken-.patch
deleted file mode 100644
index b879d6a..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview/0002-configure.ac-header-detection-of-hash_map-is-broken-.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From 9c226fbc6a42540cb492fcfcb81ff16fffb086d6 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
-Date: Tue, 30 Aug 2016 23:24:53 +0200
-Subject: [PATCH] configure.ac: header detection of hash_map is broken - pin to
- correct implementation
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Upstream-Status: Pending
-
-Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
----
- configure.ac | 31 ++++---------------------------
- 1 file changed, 4 insertions(+), 27 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 4f2118e..16c09d5 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -252,35 +252,12 @@ AC_SUBST(GTKMATHVIEW_SIZEOF_WCHAR_T, "$ac_cv_sizeof_wchar_t")
- 
- AC_LANG_PUSH(C++)
- 
--AC_CHECK_HEADERS(unordered_map,
--	[
--		AC_DEFINE(GMV_HAVE_UNORDERED_MAP,1,[Define if <unordered_map> is provided])
--		GMV_HAVE_UNORDERED_MAP_CFLAGS=-DGMV_HAVE_UNORDERED_MAP=1
--	],
--	[
--		GMV_HAVE_UNORDERED_MAP_CFLAGS=
--	]
--)
-+GMV_HAVE_UNORDERED_MAP_CFLAGS=
- AC_SUBST(GMV_HAVE_UNORDERED_MAP_CFLAGS)
--AC_CHECK_HEADERS(hash_map,
--	[
--		AC_DEFINE(GMV_HAVE_HASH_MAP,1,[Define if <hash_map> is provided])
--		GMV_HAVE_HASH_MAP_CFLAGS=-DGMV_HAVE_HASH_MAP=1
--	],
--	[
--		GMV_HAVE_HASH_MAP_CFLAGS=
--	]
--)
-+GMV_HAVE_HASH_MAP_CFLAGS=
- AC_SUBST(GMV_HAVE_HASH_MAP_CFLAGS)
--AC_CHECK_HEADERS(ext/hash_map,
--	[
--		AC_DEFINE(GMV_HAVE_EXT_HASH_MAP,1,[Define if <ext/hash_map> is provided])
--		GMV_HAVE_EXT_HASH_MAP_CFLAGS=-DGMV_HAVE_EXT_HASH_MAP=1
--	],
--	[
--		GMV_HAVE_EXT_HASH_MAP_CFLAGS=
--	]
--)
-+AC_DEFINE(GMV_HAVE_EXT_HASH_MAP,1,[Define if <ext/hash_map> is provided])
-+GMV_HAVE_EXT_HASH_MAP_CFLAGS=-DGMV_HAVE_EXT_HASH_MAP=1
- AC_SUBST(GMV_HAVE_EXT_HASH_MAP_CFLAGS)
- 
- AC_MSG_CHECKING([whether the C++ compiler supports the standard character traits])
--- 
-2.5.5
-
diff --git a/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview/0003-gcc-6.0-build-fixes.patch b/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview/0003-gcc-6.0-build-fixes.patch
deleted file mode 100644
index 356274d..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview/0003-gcc-6.0-build-fixes.patch
+++ /dev/null
@@ -1,93 +0,0 @@
-From: Gert Wollny <gw.fossdev@gmail.com>
-Date: Sun, 26 Jun 2016 13:25:00 +0200
-Description: gcc 6.0 build fixes
-Bug: https://bugs.debian.org/811682
-
-Slightly adapted to our environment
-
-Upstream-Status: Pending
-
-Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---- a/src/engine/common/View.cc
-+++ b/src/engine/common/View.cc
-@@ -291,7 +291,7 @@
- 	  }
-     }
- 
--  return false;
-+  return SmartPtr<Element>();
- }
- 
- bool
---- a/src/backend/common/tfm/TFM.hh
-+++ b/src/backend/common/tfm/TFM.hh
-@@ -37,7 +37,7 @@
-     unsigned char face;
-     const char* codingScheme;
-     int designSize;
--    int checksum;
-+    unsigned int checksum;
-     unsigned int nDimensions;
-     unsigned int nCharacters;
-   };
-@@ -52,7 +52,7 @@
-   struct Kerning
-   {
-     UChar8 index;
--    int value;
-+    unsigned int value;
-   };
- 
-   struct Ligature
-@@ -67,7 +67,7 @@
-     UChar8 index;
-     int width;
-     int height;
--    int depth;
-+    unsigned int depth;
-     int italicCorrection;
-     unsigned char nKernings;
-     const Kerning* kerning;
---- a/src/backend/common/StandardSymbolsShaper.hh
-+++ b/src/backend/common/StandardSymbolsShaper.hh
-@@ -32,20 +32,20 @@
-   struct HStretchyChar
-   {
-     Char16 ch;
--    Char8 normal;
--    Char8 left;
--    Char8 glue;
--    Char8 right;
-+    UChar8 normal;
-+    UChar8 left;
-+    UChar8 glue;
-+    UChar8 right;
-   };
-   
-   struct VStretchyChar
-   {
-     Char16 ch;
--    Char8 normal;
--    Char8 top;
--    Char8 glue;
--    Char8 middle;
--    Char8 bottom;
-+    UChar8 normal;
-+    UChar8 top;
-+    UChar8 glue;
-+    UChar8 middle;
-+    UChar8 bottom;
-   };
- 
- protected:
---- a/src/backend/common/StandardSymbolsShaper.cc
-+++ b/src/backend/common/StandardSymbolsShaper.cc
-@@ -29,7 +29,7 @@
- #include "ShapingContext.hh"
- 
- struct GlyphMap {
--  Char8 index;
-+  UChar8 index;
-   Char16 ch;
- };
- 
diff --git a/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview/use_hostcxx.patch b/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview/use_hostcxx.patch
deleted file mode 100644
index 3fe6328..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview/use_hostcxx.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Use build_cc to compile the programs to run on build host
-helps with cross compiling
-
-Upstream-Status: Inappropriate [Cross-compiled OE specific]
-
-diff --git a/src/common/mathvariants/Makefile.am b/src/common/mathvariants/Makefile.am
-index 636ccf0..ed9921d 100644
---- a/src/common/mathvariants/Makefile.am
-+++ b/src/common/mathvariants/Makefile.am
-@@ -52,7 +52,7 @@ XSLTPROC = xsltproc
- %.cc : %_gen.cc $(srcdir)/variant.top $(srcdir)/variant.bot
- 	cat $(srcdir)/variant.top >$@
- 	$(XSLTPROC) --novalid --param temp "false()" $(srcdir)/extract.xsl $(<:%_gen.cc=$(srcdir)/xml/%.xml) >>$@
--	$(CXX) -o $(@:%.cc=%) -I$(top_builddir)/auto $<
-+	$(BUILD_CXX) -o $(@:%.cc=%) -I$(top_builddir)/auto $<
- 	echo "Char32 " >>$@
- 	basename map_variant_$@ .cc | tr "-" "_" >>$@
- 	echo "(Char32 ch)" >>$@
diff --git a/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview_0.8.0.bb b/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview_0.8.0.bb
deleted file mode 100644
index 9ee9e30..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview_0.8.0.bb
+++ /dev/null
@@ -1,28 +0,0 @@
-HOMEPAGE = "http://helm.cs.unibo.it/mml-widget/"
-DEPENDS = "t1lib gtk+ popt libxslt-native libxml2"
-
-LICENSE = "LGPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=6a6a8e020838b23406c81b19c1d46df6"
-
-PR = "r3"
-SRCREV = "0bc2cfa0a47aed2c8a63abd989cb8da4dcceb2ec"
-PV = "0.8.0+git${SRCPV}"
-
-SRC_URI = "git://github.com/GNOME/gtkmathview.git \
-    file://use_hostcxx.patch \
-    file://0001-include-cstdio-to-get-printf-definitions.patch \
-    file://0002-configure.ac-header-detection-of-hash_map-is-broken-.patch \
-    file://0003-gcc-6.0-build-fixes.patch \
-    file://0001-Fix-formatting-for-modern-c-11-compilers.patch \
-"
-
-S = "${WORKDIR}/git"
-
-inherit distro_features_check autotools pkgconfig
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-do_configure_append() {
-    # avoid host polution inf pkg-config files
-    sed -i "s:${STAGING_DIR_HOST}::g" `find -name '*.pc'`
-}
diff --git a/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs/fallback-to-2011-C++-standard.patch b/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs/fallback-to-2011-C++-standard.patch
new file mode 100644
index 0000000..7a0d286
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs/fallback-to-2011-C++-standard.patch
@@ -0,0 +1,42 @@
+Option '-std=gnu++14' has been supported from gcc 4.9. But on some build hosts
+such as CentOS 7.6 which only has gcc 4.8.5 and fails to configure:
+
+| checking whether the host C compiler can be used... no
+| ERROR: Only GCC 4.9 or newer is supported (found version 4.8.5).
+
+Fallback to 2011 C++ standard and lower required gcc version to 4.8.0 which is
+the same as in previous version 52.9.1 of mozjs.
+
+Upstream-Status: Inappropriate [Workaround]
+
+Signed-off-by: Kai Kang <kai.kang@windriver.com>
+---
+diff --git a/build/moz.configure/toolchain.configure b/build/moz.configure/toolchain.configure
+index 9c772a8..fc640c7 100755
+--- a/build/moz.configure/toolchain.configure
++++ b/build/moz.configure/toolchain.configure
+@@ -502,10 +502,8 @@ def check_compiler(compiler, language, target):
+             append_flag('-std=c++14')
+         # GCC 4.9 indicates that it implements draft C++14 features
+         # instead of the full language.
+-        elif info.type == 'gcc' and \
+-                info.language_version not in (draft_cxx14_version,
+-                                              cxx14_version):
+-            append_flag('-std=gnu++14')
++        elif info.type == 'gcc' and info.language_version != 201103:
++            append_flag('-std=gnu++11')
+ 
+     # We force clang-cl to emulate Visual C++ 2017 version 15.4
+     if info.type == 'clang-cl' and info.version != '19.11.25547':
+@@ -903,9 +901,9 @@ def compiler(language, host_or_target, c_compiler=None, other_compiler=None,
+         # Check the compiler version here instead of in `compiler_version` so
+         # that the `checking` message doesn't pretend the compiler can be used
+         # to then bail out one line later.
+-        if info.type == 'gcc' and info.version < '4.9.0':
++        if info.type == 'gcc' and info.version < '4.8.0':
+             raise FatalCheckError(
+-                'Only GCC 4.9 or newer is supported (found version %s).'
++                'Only GCC 4.8 or newer is supported (found version %s).'
+                 % info.version)
+ 
+         if info.type == 'gcc' and host_or_target.os == 'Android':
diff --git a/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs_60.5.2.bb b/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs_60.5.2.bb
index 70bdbc1..33142d6 100644
--- a/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs_60.5.2.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs_60.5.2.bb
@@ -17,6 +17,7 @@
            file://0001-To-fix-build-error-on-arm32BE.patch \
            file://JS_PUBLIC_API.patch \
            file://0001-riscv-Disable-atomic-operations.patch \
+           file://fallback-to-2011-C++-standard.patch \
            "
 SRC_URI_append_libc-musl = " \
            file://0006-support-musl.patch \
@@ -54,6 +55,9 @@
     ${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', "--enable-gold", '--disable-gold', d)} \
 "
 
+# Without this, JS_Init() will fail for mips64.
+EXTRA_OECONF_append_mips64 = " --with-intl-api=build"
+
 EXTRA_OECONF_append_mipsarch = " --disable-ion"
 EXTRA_OECONF_append_riscv64 = " --disable-ion"
 EXTRA_OECONF_append_riscv32 = " --disable-ion"
diff --git a/meta-openembedded/meta-oe/recipes-extended/mraa/mraa_git.bb b/meta-openembedded/meta-oe/recipes-extended/mraa/mraa_git.bb
index 737c134..17ca262 100644
--- a/meta-openembedded/meta-oe/recipes-extended/mraa/mraa_git.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/mraa/mraa_git.bb
@@ -5,8 +5,8 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://COPYING;md5=4b92a3b497d7943042a6db40c088c3f2"
 
-SRCREV = "fbb7d9232067eac3f4508a37a8f7ea0c4fcebacb"
-PV = "1.9.0-git${SRCPV}"
+SRCREV = "967585c9ea0e1a8818d2172d2395d8502f6180a2"
+PV = "2.0.0+git${SRCPV}"
 
 SRC_URI = "git://github.com/intel-iot-devkit/${BPN}.git;protocol=http \
            "
diff --git a/meta-openembedded/meta-oe/recipes-extended/nana/nana_2.5.bb b/meta-openembedded/meta-oe/recipes-extended/nana/nana_2.5.bb
index 19a90ff..595852a 100644
--- a/meta-openembedded/meta-oe/recipes-extended/nana/nana_2.5.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/nana/nana_2.5.bb
@@ -4,7 +4,7 @@
 GNU C and C++."
 SECTION = "Development/Languages/C and C++"
 
-SRC_URI = "http://download.savannah.gnu.org/releases/${PN}/${BP}.tar.gz \
+SRC_URI = "http://download.savannah.gnu.org/releases/${BPN}/${BP}.tar.gz \
     file://change-mandir-to-DESTDIR.patch \
     file://modify-acinclude.m4-and-configure.in.patch \
 "
diff --git a/meta-openembedded/meta-oe/recipes-extended/pam/pam-plugin-ldapdb_1.3.bb b/meta-openembedded/meta-oe/recipes-extended/pam/pam-plugin-ldapdb_1.3.bb
index c59a259..2fdadcb 100644
--- a/meta-openembedded/meta-oe/recipes-extended/pam/pam-plugin-ldapdb_1.3.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/pam/pam-plugin-ldapdb_1.3.bb
@@ -10,11 +10,10 @@
 inherit distro_features_check
 REQUIRED_DISTRO_FEATURES = "pam"
 
-SRC_URI = "https://github.com/rmbreak/pam_ldapdb/archive/v${PV}.tar.gz;downloadfilename=${BP}.tar.gz"
-SRC_URI[md5sum] = "2dd4f1370fcfe995ee0ad09611109b87"
-SRC_URI[sha256sum] = "8ed92b36523556bb5d9bf3eb33a1035e46041d4be767c8d62136930c0ca0e45b"
+SRCREV = "84d7b260f1ae6857ae36e014c9a5968e8aa1cbe8"
+SRC_URI = "git://github.com/rmbreak/pam_ldapdb"
 
-S = "${WORKDIR}/pam_ldapdb-${PV}"
+S = "${WORKDIR}/git"
 
 do_install () {
     oe_runmake install DESTDIR=${D} PAMDIR=${base_libdir}/security
diff --git a/meta-openembedded/meta-oe/recipes-extended/pegtl/pegtl/0001-Fix-clang-warning-about-non-virtual-dtor.patch b/meta-openembedded/meta-oe/recipes-extended/pegtl/pegtl/0001-Fix-clang-warning-about-non-virtual-dtor.patch
new file mode 100644
index 0000000..0c79c4c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/pegtl/pegtl/0001-Fix-clang-warning-about-non-virtual-dtor.patch
@@ -0,0 +1,25 @@
+From 340110292b35d367205953a59e7eab28e1f4a0bb Mon Sep 17 00:00:00 2001
+From: Daniel Frey <d.frey@gmx.de>
+Date: Sat, 7 Apr 2018 09:13:51 +0200
+Subject: [PATCH] Fix clang-warning about non-virtual dtor
+
+Upstream-Status: Backport [https://github.com/taocpp/PEGTL/commit/340110292b35d367205953a59e7eab28e1f4a0bb]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/example/pegtl/json_classes.hpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/src/example/pegtl/json_classes.hpp
++++ b/src/example/pegtl/json_classes.hpp
+@@ -34,10 +34,7 @@ namespace examples
+          : type( in_type )
+       {
+       }
+-
+-      ~json_base()
+-      {
+-      }
++      virtual ~json_base() = default;
+    };
+ 
+    inline std::ostream& operator<<( std::ostream& o, const json_base& j )
diff --git a/meta-openembedded/meta-oe/recipes-extended/pegtl/pegtl_2.1.4.bb b/meta-openembedded/meta-oe/recipes-extended/pegtl/pegtl_2.1.4.bb
new file mode 100644
index 0000000..344a805
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/pegtl/pegtl_2.1.4.bb
@@ -0,0 +1,13 @@
+DESCRIPTION="header-only library for creating parsers according to Parsing Expression Grammar"
+HOMEPAGE="https://github.com/taocpp/PEGTL"
+LICENSE="MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=80cb066ab204c7fe022f1cfe0c2c6818"
+
+SRCREV = "776fa4a1e8bda860008524f6dd9473967c8375b1"
+SRC_URI = "git://git@github.com/taocpp/PEGTL.git;protocol=https;branch=master \
+           file://0001-Fix-clang-warning-about-non-virtual-dtor.patch \
+          "
+
+inherit cmake
+
+S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0001-jemalloc-jemalloc.cfg-Specify-the-host-when-building.patch b/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0001-jemalloc-jemalloc.cfg-Specify-the-host-when-building.patch
index 747538b..ca2a1f6 100644
--- a/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0001-jemalloc-jemalloc.cfg-Specify-the-host-when-building.patch
+++ b/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0001-jemalloc-jemalloc.cfg-Specify-the-host-when-building.patch
@@ -1,4 +1,4 @@
-From 2a22dc96c3bbb5c9bbcc008f58d4f5c64e3d19e6 Mon Sep 17 00:00:00 2001
+From 231eb4c75fbfaaf90bca7702bdaf55cf701a3527 Mon Sep 17 00:00:00 2001
 From: Alistair Francis <alistair.francis@wdc.com>
 Date: Mon, 23 Jul 2018 11:23:39 -0700
 Subject: [PATCH] jemalloc/jemalloc.cfg: Specify the host when building
@@ -25,5 +25,5 @@
  --disable-munmap
 +--host=${HOST_SYS}
 -- 
-2.17.1
+2.14.4
 
diff --git a/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0002-Makefile-Don-t-install-the-docs.patch b/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0002-Makefile-Don-t-install-the-docs.patch
index bd1b97c..82b96cf 100644
--- a/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0002-Makefile-Don-t-install-the-docs.patch
+++ b/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0002-Makefile-Don-t-install-the-docs.patch
@@ -1,7 +1,7 @@
-From 460a96e390cb80278784cfe36629e280fe7ffef7 Mon Sep 17 00:00:00 2001
+From 3863d8bd71d6a5638cf984f8d8f9cccac0c7f2a4 Mon Sep 17 00:00:00 2001
 From: Alistair Francis <alistair.francis@wdc.com>
 Date: Mon, 23 Jul 2018 11:31:17 -0700
-Subject: [PATCH 2/2] Makefile: Don't install the docs
+Subject: [PATCH] Makefile: Don't install the docs
 
 Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
 Upstream-Status: Inappropriate [disable feature]
@@ -10,17 +10,17 @@
  1 file changed, 1 deletion(-)
 
 diff --git a/Makefile b/Makefile
-index 224a315f6..ce7f84afb 100644
+index 47a447f12..7c0f9848f 100644
 --- a/Makefile
 +++ b/Makefile
-@@ -144,7 +144,6 @@ rpm dpkg: pkg-clean source
+@@ -148,7 +148,6 @@ rpm dpkg: pkg-clean
  
  install uninstall:
  	$(MAKE) -C src $@
 -	$(MAKE) -C doc $@
  
  .PHONY: all clean clobber test check cstyle check-license install uninstall\
- 	source rpm dpkg pkg-clean pcheck check-remote format doc $(SUBDIRS)
+ 	source rpm dpkg pkg-clean pcheck check-remote format doc require-rpmem\
 -- 
-2.17.1
+2.14.4
 
diff --git a/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0003-Makefile-Don-t-build-the-examples.patch b/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0003-Makefile-Don-t-build-the-examples.patch
index f75d941..dbe9c45 100644
--- a/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0003-Makefile-Don-t-build-the-examples.patch
+++ b/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0003-Makefile-Don-t-build-the-examples.patch
@@ -1,6 +1,6 @@
-From a7f07dca2468ea226d2f07fc0105166e75cadaf8 Mon Sep 17 00:00:00 2001
+From ac24c78f5aa62ba43bb87b74301b659bcc506f11 Mon Sep 17 00:00:00 2001
 From: Alistair Francis <alistair.francis@wdc.com>
-Date: Thu, 6 Sep 2018 16:18:50 -0700
+Date: Thu, 18 Jul 2019 15:40:22 +0800
 Subject: [PATCH] Makefile: Don't build the examples
 
 Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
@@ -10,25 +10,25 @@
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/src/Makefile b/src/Makefile
-index 4b50dd8b5..e00501e31 100644
+index 773ab1387..58912f0ab 100644
 --- a/src/Makefile
 +++ b/src/Makefile
-@@ -38,13 +38,13 @@ include $(TOP)/src/version.inc
+@@ -37,13 +37,13 @@ include $(TOP)/src/common.inc
  
  TARGETS = libpmem libvmem libpmemblk libpmemlog libpmemobj libpmempool\
- 		  libpmemcto libvmmalloc tools
+ 		  libvmmalloc tools
 -ALL_TARGETS = $(TARGETS) common librpmem examples benchmarks
 +ALL_TARGETS = $(TARGETS) common librpmem benchmarks
  
  SCOPE_DIRS = $(TARGETS) common librpmem rpmem_common
  
  DEBUG_RELEASE_TARGETS = common libpmem libvmem libpmemblk libpmemlog libpmemobj\
- 	libpmempool libvmmalloc librpmem libpmemcto
+ 	libpmempool libvmmalloc librpmem
 -RELEASE_TARGETS = tools examples benchmarks
 +RELEASE_TARGETS = tools benchmarks
  
  CLEAN_NO_JE_TARGETS = $(ALL_TARGETS) rpmem_common test
  CLEAN_TARGETS = $(CLEAN_NO_JE_TARGETS) jemalloc
 -- 
-2.17.1
+2.14.4
 
diff --git a/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0004-os_posix-Manually-implement-secure_getenv-if-require.patch b/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0004-os_posix-Manually-implement-secure_getenv-if-require.patch
deleted file mode 100644
index 624f17b..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0004-os_posix-Manually-implement-secure_getenv-if-require.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 33affa9ee97691efb73f439fcdba4adb8625a26a Mon Sep 17 00:00:00 2001
-From: Alistair Francis <alistair.francis@wdc.com>
-Date: Mon, 10 Sep 2018 12:59:48 -0700
-Subject: [PATCH] os_posix: Manually implement secure_getenv() if required
-
-Manually implement the secure_getenv() if we need to, this is required
-if using musl.
-
-Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
-Upstream-Status: Pending
----
- src/common/os_posix.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/common/os_posix.c b/src/common/os_posix.c
-index 2d70a0a29..fb09b6ce0 100644
---- a/src/common/os_posix.c
-+++ b/src/common/os_posix.c
-@@ -261,7 +261,7 @@ os_setenv(const char *name, const char *value, int overwrite)
- /*
-  * secure_getenv -- provide GNU secure_getenv for FreeBSD
-  */
--#ifdef __FreeBSD__
-+#if defined(__FreeBSD__) || !HAVE___SECURE_GETENV
- static char *
- secure_getenv(const char *name)
- {
--- 
-2.17.1
-
diff --git a/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0005-pmempool-Remove-unused-__USE_UNIX98-define.patch b/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0005-pmempool-Remove-unused-__USE_UNIX98-define.patch
deleted file mode 100644
index 75c35f8..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0005-pmempool-Remove-unused-__USE_UNIX98-define.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 92e63699ea83074298971b0251f002562be4dbd3 Mon Sep 17 00:00:00 2001
-From: Alistair Francis <alistair.francis@wdc.com>
-Date: Mon, 10 Sep 2018 13:23:37 -0700
-Subject: [PATCH 2/3] pmempool: Remove unused __USE_UNIX98 define
-
-Remove the unused __USE_UNIX98 to fix musl build failures.
-
-Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
-Upstream-Status: Pending
----
- src/tools/pmempool/info.c | 3 ---
- 1 file changed, 3 deletions(-)
-
-diff --git a/src/tools/pmempool/info.c b/src/tools/pmempool/info.c
-index b4010bf35..7b890a123 100644
---- a/src/tools/pmempool/info.c
-+++ b/src/tools/pmempool/info.c
-@@ -45,9 +45,6 @@
- #include <inttypes.h>
- #include <assert.h>
- #include <sys/param.h>
--#ifndef __FreeBSD__
--#define __USE_UNIX98
--#endif
- #include <unistd.h>
- #include <sys/mman.h>
- 
--- 
-2.17.1
-
diff --git a/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0006-Makefile.inc-Allow-extra-libs-to-be-specified.patch b/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0006-Makefile.inc-Allow-extra-libs-to-be-specified.patch
deleted file mode 100644
index 2042fdb..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/pmdk/files/0006-Makefile.inc-Allow-extra-libs-to-be-specified.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From a88e806f9ce8cc071e81abad688643d53f393176 Mon Sep 17 00:00:00 2001
-From: Alistair Francis <alistair.francis@wdc.com>
-Date: Mon, 10 Sep 2018 14:18:38 -0700
-Subject: [PATCH 3/3] Makefile.inc: Allow extra libs to be specified
-
-Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
-Upstream-Status: Pending
----
- src/Makefile.inc       | 2 ++
- src/common.inc         | 2 ++
- src/tools/Makefile.inc | 1 +
- 3 files changed, 5 insertions(+)
-
-diff --git a/src/common.inc b/src/common.inc
-index 032cb83ea..2d5c4bedf 100644
---- a/src/common.inc
-+++ b/src/common.inc
-@@ -74,6 +74,8 @@ GCOV_CFLAGS=-fprofile-arcs -ftest-coverage --coverage
- GCOV_LDFLAGS=-fprofile-arcs -ftest-coverage
- GCOV_LIBS=-lgcov
- 
-+LIBS += $(EXTRA_LIBS)
-+
- osdep = $(1)_$(shell uname -s | tr "[:upper:]" "[:lower:]")$(2)
- get_arch = $(shell $(CC) -dumpmachine | awk -F'[/-]' '{print $$1}')
- 
--- 
-2.17.1
-
diff --git a/meta-openembedded/meta-oe/recipes-extended/pmdk/pmdk_1.4.2.bb b/meta-openembedded/meta-oe/recipes-extended/pmdk/pmdk_1.4.2.bb
deleted file mode 100644
index 3da22a9..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/pmdk/pmdk_1.4.2.bb
+++ /dev/null
@@ -1,64 +0,0 @@
-SUMMARY = "Persistent Memory Development Kit"
-DESCRIPTION = "Persistent Memory Development Kit"
-HOMEPAGE = "http://pmem.io"
-SECTION = "libs"
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=7db1106255a1baa80391fd2e21eebab7"
-DEPENDS = "ndctl"
-
-# Required to have the fts.h header for musl
-DEPENDS_append_libc-musl = " fts"
-
-SRC_URI = "https://github.com/pmem/${BPN}/archive/${PV}.tar.gz \
-           file://0001-jemalloc-jemalloc.cfg-Specify-the-host-when-building.patch \
-           file://0002-Makefile-Don-t-install-the-docs.patch \
-           file://0003-Makefile-Don-t-build-the-examples.patch \
-           file://0005-pmempool-Remove-unused-__USE_UNIX98-define.patch \
-           file://0006-Makefile.inc-Allow-extra-libs-to-be-specified.patch \
-          "
-
-SRC_URI_append_libc-musl = " file://0004-os_posix-Manually-implement-secure_getenv-if-require.patch"
-
-SRC_URI[md5sum] = "bde73bca9ef5b90911deb0fdcfb15ccf"
-SRC_URI[sha256sum] = "df7e658e75d28cd80f6d2ff7b9fc9ae2885d52f8923fdbacecfd46215115fb4c"
-
-inherit autotools-brokensep pkgconfig
-
-# Fix jemalloc error:
-# | configure: error: cannot run C compiled programs.
-# | If you meant to cross compile, use `--host'.
-#
-# Also fix #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Werror=cpp]
-EXTRA_OEMAKE = "HOST_SYS='${HOST_SYS}' EXTRA_CFLAGS='${SELECTED_OPTIMIZATION}'"
-
-# Fix the missing fts libs when using musl
-EXTRA_OEMAKE_append_libc-musl = " EXTRA_LIBS='-lfts'"
-
-do_install() {
-	oe_runmake PREFIX=${prefix} DESTDIR=${D} install
-
-	# Copy these into the standard directories
-	install -d ${D}${bindir}/
-	mv ${D}/usr/local/bin/pmempool ${D}${bindir}/
-	mv ${D}/usr/local/bin/daxio ${D}${bindir}/
-
-	install -d ${D}${libdir}
-	mv ${D}/usr/local/lib/*so* ${D}${libdir}/
-
-	install -d ${D}${libdir}/pkgconfig
-	mv ${D}/usr/local/lib/pkgconfig/*.pc ${D}${libdir}/pkgconfig/
-
-	install -d ${D}${includedir}
-	mv ${D}/usr/local/include/* ${D}${includedir}/
-
-	# Remove uneeded files
-	rm -rf ${D}/usr/local/
-}
-
-# Include these by default otherwise the SDK is not very useful
-FILES_${PN} += "${bindir}/pmempool ${bindir}/daxio"
-FILES_${PN} += "${libdir}/*so*"
-FILES_${PN} += "${libdir}/pkgconfig/*.pc"
-FILES_${PN} += "${includedir}/libpmemobj++/* ${includedir}/libpmemobj/*"
-
-COMPATIBLE_HOST='(x86_64).*'
diff --git a/meta-openembedded/meta-oe/recipes-extended/pmdk/pmdk_1.6.bb b/meta-openembedded/meta-oe/recipes-extended/pmdk/pmdk_1.6.bb
new file mode 100644
index 0000000..c8688b2
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/pmdk/pmdk_1.6.bb
@@ -0,0 +1,49 @@
+SUMMARY = "Persistent Memory Development Kit"
+DESCRIPTION = "Persistent Memory Development Kit"
+HOMEPAGE = "http://pmem.io"
+SECTION = "libs"
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=7db1106255a1baa80391fd2e21eebab7"
+DEPENDS = "ndctl"
+
+# Required to have the fts.h header for musl
+DEPENDS_append_libc-musl = " fts"
+
+S = "${WORKDIR}/git"
+
+SRC_URI = "git://github.com/pmem/pmdk.git \
+           file://0001-jemalloc-jemalloc.cfg-Specify-the-host-when-building.patch \
+           file://0002-Makefile-Don-t-install-the-docs.patch \
+           file://0003-Makefile-Don-t-build-the-examples.patch \
+          "
+
+SRCREV = "695e6eba28c53a69a0ef7bad3cc0f45c21ef3e00"
+
+inherit autotools-brokensep pkgconfig
+
+# Fix jemalloc error:
+# | configure: error: cannot run C compiled programs.
+# | If you meant to cross compile, use `--host'.
+#
+# Also fix #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Werror=cpp]
+EXTRA_OEMAKE = "HOST_SYS='${HOST_SYS}' EXTRA_CFLAGS='${SELECTED_OPTIMIZATION}' LIB_PREFIX=${baselib}"
+
+# Fix the missing fts libs when using musl
+EXTRA_OEMAKE_append_libc-musl = " EXTRA_LIBS='-lfts'"
+
+do_install() {
+	oe_runmake prefix=${prefix} DESTDIR=${D} install
+
+	# Remove uneeded files
+	rm -rf ${D}/usr/${baselib}/pmdk_debug
+}
+
+# Include these by default otherwise the SDK is not very useful
+FILES_${PN} += "${bindir}/pmempool ${bindir}/daxio"
+FILES_${PN} += "${libdir}/*so*"
+FILES_${PN} += "${libdir}/pkgconfig/*.pc"
+FILES_${PN} += "${includedir}/libpmemobj++/* ${includedir}/libpmemobj/* /usr/*/include/"
+FILES_${PN} += "/usr/etc"
+FILES_${PN} += "/usr/share"
+
+COMPATIBLE_HOST='(x86_64).*'
diff --git a/meta-openembedded/meta-oe/recipes-extended/redis/redis/Fixed-stack-trace-generation-on-aarch64.patch b/meta-openembedded/meta-oe/recipes-extended/redis/redis/Fixed-stack-trace-generation-on-aarch64.patch
new file mode 100644
index 0000000..82ca307
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/redis/redis/Fixed-stack-trace-generation-on-aarch64.patch
@@ -0,0 +1,45 @@
+From c8ca71d40bc51e255457cd4374dd45ec9ebf8ae1 Mon Sep 17 00:00:00 2001
+From: Jun He <jun.he@arm.com>
+Date: Mon, 3 Jul 2017 07:18:32 +0000
+Subject: [PATCH] Fixed stack trace generation on aarch64
+
+Change-Id: I9801239c98cb7362ed07e8b9ec2ba7e45749dba7
+Signed-off-by: Jun He <jun.he@arm.com>
+
+* fixes also this error when building with -Werror=return-type:
+  debug.c:698:1: error: no return statement in function returning non-void [-Werror=return-type]
+
+Upstream-Status: Backport [https://github.com/antirez/redis/commit/c8ca71d40bc51e255457cd4374dd45ec9ebf8ae1]
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ src/Makefile | 2 +-
+ src/debug.c  | 2 ++
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/src/Makefile b/src/Makefile
+index 24e960593eb..a1ff4258a9d 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -40,7 +40,7 @@
+ endif
+ 
+ # To get ARM stack traces if Redis crashes we need a special C flag.
+-ifneq (,$(findstring armv,$(uname_M)))
++ifneq (,$(filter aarch64 armv,$(uname_M)))
+         CFLAGS+=-funwind-tables
+ endif
+ 
+diff --git a/src/debug.c b/src/debug.c
+index a4caa49f285..c976d0ed919 100644
+--- a/src/debug.c
++++ b/src/debug.c
+@@ -691,6 +691,8 @@
+     return (void*) uc->uc_mcontext.sc_ip;
+     #elif defined(__arm__) /* Linux ARM */
+     return (void*) uc->uc_mcontext.arm_pc;
++    #elif defined(__aarch64__) /* Linux AArch64 */
++    return (void*) uc->uc_mcontext.pc;
+     #endif
+ #else
+     return NULL;
diff --git a/meta-openembedded/meta-oe/recipes-extended/redis/redis_4.0.14.bb b/meta-openembedded/meta-oe/recipes-extended/redis/redis_4.0.14.bb
index 63ab44b..5df5312 100644
--- a/meta-openembedded/meta-oe/recipes-extended/redis/redis_4.0.14.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/redis/redis_4.0.14.bb
@@ -10,6 +10,7 @@
            file://hiredis-use-default-CC-if-it-is-set.patch \
            file://lua-update-Makefile-to-use-environment-build-setting.patch \
            file://oe-use-libc-malloc.patch \
+           file://Fixed-stack-trace-generation-on-aarch64.patch \
            file://redis.conf \
            file://init-redis-server \
            file://redis.service \
diff --git a/meta-openembedded/meta-oe/recipes-extended/rsyslog/librelp_1.4.0.bb b/meta-openembedded/meta-oe/recipes-extended/rsyslog/librelp_1.4.0.bb
index 9e57dd5..16c63a7 100644
--- a/meta-openembedded/meta-oe/recipes-extended/rsyslog/librelp_1.4.0.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/rsyslog/librelp_1.4.0.bb
@@ -14,3 +14,5 @@
 S = "${WORKDIR}/git"
 
 inherit autotools pkgconfig
+
+CPPFLAGS += "-Wno-error"
diff --git a/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.1903.0.bb b/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.1907.0.bb
similarity index 97%
rename from meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.1903.0.bb
rename to meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.1907.0.bb
index f1a6e85..4092833 100644
--- a/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.1903.0.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.1907.0.bb
@@ -29,9 +29,8 @@
     file://0001-Include-sys-time-h.patch \
 "
 
-SRC_URI[md5sum] = "f0d454c79d4040e3f25fcd12f8f33fe2"
-SRC_URI[sha256sum] = "d0d23a493dcec64c7b6807a1bb8ee864ed0f3760c2ff3088008bb661d304056f"
-
+SRC_URI[md5sum] = "97682af2b1d87f903458cfb41725fba6"
+SRC_URI[sha256sum] = "eb27535ece93174ef6b551c88467d2c9cd826b62479625bb881a53d50b079fb5"
 
 UPSTREAM_CHECK_URI = "https://github.com/rsyslog/rsyslog/releases"
 UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)"
diff --git a/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib-5.1.2/configure.patch b/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib-5.1.2/configure.patch
deleted file mode 100644
index 976e038..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib-5.1.2/configure.patch
+++ /dev/null
@@ -1,141 +0,0 @@
-From 81c1ba940415595584a837ab1078c64855072f0c Mon Sep 17 00:00:00 2001
-From: Koen Kooi <koen@dominion.thruhere.net>
-Date: Mon, 21 Nov 2011 12:00:54 +0100
-Subject: [PATCH] t1lib: add 5.1.2
-
-#
-# Patch managed by http://www.holgerschurig.de/patcher.html
-#
-
----
- configure.in | 95 ++++++++++++++++++++++++------------------------------------
- 1 file changed, 38 insertions(+), 57 deletions(-)
-
-diff --git a/configure.in b/configure.in
-index eade4c0..e649ea9 100644
---- a/configure.in
-+++ b/configure.in
-@@ -74,9 +74,9 @@ T1LIB_PATCHLEVEL=builtin(eval, MACRO_T1LIB_LT_REVISION)
- T1LIB_VERSIONSTRING=\"MACRO_T1LIB_IDENTIFIER\"
- 
- 
--dnl We use this file by Andreas Zeller to check for libXaw
--builtin(include, ac-tools/ice_find_athena.m4)
--builtin(include, ac-tools/aclocal.m4)
-+#dnl We use this file by Andreas Zeller to check for libXaw
-+#builtin(include, ac-tools/ice_find_athena.m4)
-+#builtin(include, ac-tools/aclocal.m4)
- 
- dnl We want these before the checks, so the checks can modify their values.
- test -z "$LDLIBS" && LDLIBS=-lm   AC_SUBST(LDLIBS)
-@@ -162,6 +162,7 @@ fi
- 
- dnl **** Check for underscore on external symbols ****
- 
-+AH_TEMPLATE([NEED_UNDERSCORE_PREFIX], [Define if external symbols need an underscore prefix])
- AC_CACHE_CHECK("whether external symbols need an underscore prefix",
-                ac_cv_c_extern_prefix,
- [saved_libs=$LIBS
-@@ -179,68 +180,48 @@ then
-   AC_DEFINE(NEED_UNDERSCORE_PREFIX)
- fi
- 
--dnl **** Check which ANSI integer type is 16 bit 
--
--AC_CACHE_CHECK( "which ANSI integer type is 16 bit", ac_16bit_type,
--		AC_TRY_RUN([
--int main(void) {
--  if (sizeof(short)==2)
--    return(0);
--  else if (sizeof(int)==2)
--    return(1);
--  else
--    return(2);
--}], ac_16bit_type="short", ac_16bit_type="int", ac_16bit_type=))
--if test "$ac_16bit_type" = "short"
--then
--  T1_AA_TYPE16="-DT1_AA_TYPE16=short"
--  T1_INT16="short"
--else
--  T1_AA_TYPE16="-DT1_AA_TYPE16=int"
--  T1_INT16="int"
-+dnl **** Check which ANSI integer type is 16 bit
-+T1_AA_TYPE16=""
-+for type in short int; do
-+	if test x"`eval echo \\$ac_cv_sizeof_$type`" = "x2"; then
-+		T1_AA_TYPE16="-DT1_AA_TYPE16=$type"
-+		T1_INT16="$type"
-+		break
-+	fi
-+done
-+
-+if test x"$T1_AA_TYPE16" = "x"; then
-+	AC_MSG_ERROR("Unable to determine which integer type is 16 bit.")
- fi
- 
--
- dnl **** Check which ANSI integer type is 32 bit 
--
--AC_CACHE_CHECK( "which ANSI integer type is 32 bit", ac_32bit_type,
--		AC_TRY_RUN([
--int main(void) {
--  if (sizeof(int)==4)
--    return(0);
--  else if (sizeof(long)==4)
--    return(1);
--  else
--    return(2);
--}], ac_32bit_type="int", ac_32bit_type="long", ac_32bit_type=))
--if test "$ac_32bit_type" = "int"
--then
--  T1_AA_TYPE32="-DT1_AA_TYPE32=int"
--  T1_INT32="int"
--else
--  T1_AA_TYPE32="-DT1_AA_TYPE32=long"
--  T1_INT32="long"
-+T1_AA_TYPE32=""
-+for type in int long; do
-+	if test x"`eval echo \\$ac_cv_sizeof_$type`" = "x4"; then
-+		T1_AA_TYPE32="-DT1_AA_TYPE32=$type"
-+		T1_INT32="$type"
-+		break
-+	fi
-+done
-+
-+if test x"$T1_AA_TYPE32" = "x"; then
-+	AC_MSG_ERROR("Unable to determine which integer type is 32 bit.")
- fi
- 
--
- dnl **** Check which ANSI integer type is 64 bit 
--
--AC_CACHE_CHECK( "which ANSI integer type is 64 bit", ac_64bit_type,
--		AC_TRY_RUN([
--int main(void) {
--  if (sizeof(long)==8)
--    return(0);
--  else
--    return(1);
--}], ac_64bit_type="long", ac_64bit_type="<none>"))
--if test "$ac_64bit_type" = "long"
--then
--  T1_AA_TYPE64="-DT1_AA_TYPE64=long"
--else
--  T1_AA_TYPE64=
-+T1_AA_TYPE64=""
-+for type in long long_long; do
-+	if test x"`eval echo \\$ac_cv_sizeof_$type`" = "x8"; then
-+		AC_MSG_WARN("$type is 64 bit")
-+		T1_AA_TYPE64="-DT1_AA_TYPE64=\"`echo $type|tr '_' ' '`\""
-+		break
-+	fi
-+done
-+
-+if test x"$T1_AA_TYPE64" = "x"; then
-+	AC_MSG_ERROR("Unable to determine which integer type is 64 bit.")
- fi
- 
--
- CFLAGS="${CFLAGS} -DT1LIB_IDENT=\"\\\"${T1LIB_IDENTIFIER}\\\"\" -DGLOBAL_CONFIG_DIR=\"\\\"${T1LIB_DATA_DIR}\\\"\""
- 
- dnl **** Check for functions and header files ****
diff --git a/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib-5.1.2/format_security.patch b/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib-5.1.2/format_security.patch
deleted file mode 100644
index bc2476b..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib-5.1.2/format_security.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From cea83003de3ffebde92becd1e599fe3b28f0a7c4 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 6 Mar 2017 23:13:36 -0800
-Subject: [PATCH] t1lib: Fix printf format string errors
-
-Fix printf formats to use format qualifiers
-fixes
-
-error: format string is not a string literal (potentially insecure) [-Werror,-Wformat-security]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Upstream-Status: Pending
-
----
- lib/t1lib/t1subset.c | 2 +-
- lib/type1/objects.c  | 2 +-
- lib/type1/objects.h  | 2 +-
- 3 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/lib/t1lib/t1subset.c b/lib/t1lib/t1subset.c
-index da427b2..e76974f 100644
---- a/lib/t1lib/t1subset.c
-+++ b/lib/t1lib/t1subset.c
-@@ -759,7 +759,7 @@ char *T1_SubsetFont( int FontID,
- 	     tr_len);
-     T1_PrintLog( "T1_SubsetFont()", err_warn_msg_buf,
- 		 T1LOG_DEBUG);
--    l+=sprintf( &(trailerbuf[l]), linebuf); /* contains the PostScript trailer */
-+    l+=sprintf( &(trailerbuf[l]), "%s", linebuf); /* contains the PostScript trailer */
-   }
-   
-   /* compute size of output file */
-diff --git a/lib/type1/objects.c b/lib/type1/objects.c
-index c413a0f..f828e6a 100644
---- a/lib/type1/objects.c
-+++ b/lib/type1/objects.c
-@@ -957,7 +957,7 @@ struct xobject *TypeErr(name, obj, expect, ret) /* non-ANSI avoids overly strict
-  
-        sprintf(typemsg, "Wrong object type in %s; expected %s, found %s.\n",
-                   name, TypeFmt(expect), TypeFmt(obj->type));
--       IfTrace0(TRUE,typemsg);
-+       IfTrace1(TRUE, "%s", typemsg);
-  
-        ObjectPostMortem(obj);
-  
-diff --git a/lib/type1/objects.h b/lib/type1/objects.h
-index 13cbae7..3a1d337 100644
---- a/lib/type1/objects.h
-+++ b/lib/type1/objects.h
-@@ -214,7 +214,7 @@ struct xobject {
- /*SHARED*/
- /* NDW: personally, I want to see status and error messages! */
- #define IfTrace0(condition,model)                                 \
--        {if (condition) printf(model);}
-+        {if (condition) fputs(model,stdout);}
- #define IfTrace1(condition,model,arg0)                            \
-         {if (condition) printf(model,arg0);}
- #define IfTrace2(condition,model,arg0,arg1)                       \
diff --git a/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib-5.1.2/libtool.patch b/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib-5.1.2/libtool.patch
deleted file mode 100644
index da54f87..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib-5.1.2/libtool.patch
+++ /dev/null
@@ -1,144 +0,0 @@
-From bab41f5e1fc1fc809da1371e6a0222e0eb21e5f0 Mon Sep 17 00:00:00 2001
-From: Koen Kooi <koen@dominion.thruhere.net>
-Date: Mon, 21 Nov 2011 12:00:54 +0100
-Subject: [PATCH] t1lib: add 5.1.2
-
-#
-# Patch managed by http://www.holgerschurig.de/patcher.html
-#
-
----
- Makefile.in           | 5 +++--
- examples/Makefile.in  | 5 +++--
- lib/Makefile.in       | 6 ++++--
- lib/t1lib/Makefile.in | 6 ++++--
- lib/type1/Makefile.in | 6 ++++--
- type1afm/Makefile.in  | 6 ++++--
- xglyph/Makefile.in    | 6 ++++--
- 7 files changed, 26 insertions(+), 14 deletions(-)
-
-diff --git a/Makefile.in b/Makefile.in
-index 29c3468..396c020 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -18,7 +18,8 @@
- # Last modified:       2005-05-01
- #
- 
--SHELL     = /bin/sh
-+SHELL     = @SHELL@
-+LIBTOOL   = @LIBTOOL@
- CC        = @CC@
- CPP       = @CPP@
- CFLAGS    = @CFLAGS@
-@@ -149,7 +150,7 @@ distclean: clean
- 	$(RM) examples/Makefile
- 	$(RM) xglyph/Makefile
- 	$(RM) doc/Makefile
--	$(RM) libtool
-+	$(RM) $(LIBTOOL)
- 
- 
- # The following two targets are for building and cleaning the python-
-diff --git a/examples/Makefile.in b/examples/Makefile.in
-index b301db5..7a6a514 100644
---- a/examples/Makefile.in
-+++ b/examples/Makefile.in
-@@ -14,9 +14,10 @@
- # Last modified:       2001-04-01
- #
- 
-+top_builddir = @top_builddir@
- 
--LIBTOOL   = ../libtool
--SHELL     = /bin/sh
-+LIBTOOL   = @LIBTOOL@
-+SHELL     = @SHELL@
- CC        = @CC@
- CPP       = @CPP@
- CFLAGS    = @CFLAGS@
-diff --git a/lib/Makefile.in b/lib/Makefile.in
-index 89e5e86..6e0f960 100644
---- a/lib/Makefile.in
-+++ b/lib/Makefile.in
-@@ -15,8 +15,10 @@
- #
- # Contributions by H.Kakugawa to use libtool!
- 
--LIBTOOL   = ../libtool
--SHELL     = /bin/sh
-+top_builddir = @top_builddir@
-+
-+LIBTOOL   = @LIBTOOL@
-+SHELL     = @SHELL@
- CC        = @CC@
- CPP       = @CPP@
- CFLAGS    = @CFLAGS@
-diff --git a/lib/t1lib/Makefile.in b/lib/t1lib/Makefile.in
-index a6c2478..32434b3 100644
---- a/lib/t1lib/Makefile.in
-+++ b/lib/t1lib/Makefile.in
-@@ -14,8 +14,10 @@
- #
- # Modified by H.Kakugawa to use libtool
- 
--LIBTOOL   = ../../libtool
--SHELL     = /bin/sh
-+top_builddir = @top_builddir@
-+
-+LIBTOOL   = @LIBTOOL@
-+SHELL     = @SHELL@
- CC        = @CC@
- CPP       = @CPP@
- CFLAGS    = @CFLAGS@
-diff --git a/lib/type1/Makefile.in b/lib/type1/Makefile.in
-index 241f124..42efa94 100644
---- a/lib/type1/Makefile.in
-+++ b/lib/type1/Makefile.in
-@@ -14,8 +14,10 @@
- #
- # Modified by H.Kakugawa to use libtool
- 
--LIBTOOL   = ../../libtool
--SHELL     = /bin/sh
-+top_builddir = @top_builddir@
-+
-+LIBTOOL   = @LIBTOOL@
-+SHELL     = @SHELL@
- CC        = @CC@
- CPP       = @CPP@
- CFLAGS    = @CFLAGS@
-diff --git a/type1afm/Makefile.in b/type1afm/Makefile.in
-index 61611e1..9b51406 100644
---- a/type1afm/Makefile.in
-+++ b/type1afm/Makefile.in
-@@ -15,8 +15,10 @@
- #
- # Modified by H.Kakugawa to use libtool
- 
--LIBTOOL   = ../libtool
--SHELL     = /bin/sh
-+top_builddir = @top_builddir@
-+
-+LIBTOOL   = @LIBTOOL@
-+SHELL     = @SHELL@
- CC        = @CC@
- CPP       = @CPP@
- CFLAGS    = @CFLAGS@
-diff --git a/xglyph/Makefile.in b/xglyph/Makefile.in
-index 8da9b63..741334c 100644
---- a/xglyph/Makefile.in
-+++ b/xglyph/Makefile.in
-@@ -15,8 +15,10 @@
- #
- # Modified by H.Kakugawa to use libtool
- 
--LIBTOOL   = ../libtool
--SHELL     = /bin/sh
-+top_builddir = @top_builddir@
-+
-+LIBTOOL   = @LIBTOOL@
-+SHELL     = @SHELL@
- CC        = @CC@
- CPP       = @CPP@
- CFLAGS    = @CFLAGS@
diff --git a/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib_5.1.2.bb b/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib_5.1.2.bb
deleted file mode 100644
index 826dbda..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib_5.1.2.bb
+++ /dev/null
@@ -1,29 +0,0 @@
-SUMMARY = "A Type1 Font Rastering Library"
-SECTION = "libs"
-DEPENDS = "virtual/libx11 libxaw"
-
-LICENSE = "LGPLv2 & GPLv2"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=8ca43cbc842c2336e835926c2166c28b \
-                    file://LGPL;md5=6e29c688d912da12b66b73e32b03d812 \
-"
-
-SRC_URI = "${DEBIAN_MIRROR}/main/t/t1lib/t1lib_${PV}.orig.tar.gz \
-           file://configure.patch \
-           file://libtool.patch \
-           file://format_security.patch"
-SRC_URI[md5sum] = "a5629b56b93134377718009df1435f3c"
-SRC_URI[sha256sum] = "821328b5054f7890a0d0cd2f52825270705df3641dbd476d58d17e56ed957b59"
-
-inherit autotools-brokensep distro_features_check
-# depends on virtual/libx11
-REQUIRED_DISTRO_FEATURES = "x11"
-
-# Fix GNU_HASH problem
-TARGET_CC_ARCH += "${LDFLAGS}"
-
-EXTRA_OECONF = "--with-x --without-athena"
-EXTRA_OEMAKE = "without_doc"
-
-FILES_${PN} += " ${datadir}/t1lib/t1lib.config"
-FILES_${PN}-doc = "${datadir}/t1lib/doc/t1lib_doc.pdf"
-
diff --git a/meta-openembedded/meta-oe/recipes-extended/upm/upm/0001-Replace-strncpy-with-memcpy.patch b/meta-openembedded/meta-oe/recipes-extended/upm/upm/0001-Replace-strncpy-with-memcpy.patch
deleted file mode 100644
index 4b17087..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/upm/upm/0001-Replace-strncpy-with-memcpy.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From d314f26e024aaf15bf4ab22ceb98501148d0eac8 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 7 May 2018 19:53:33 -0700
-Subject: [PATCH] Replace strncpy with memcpy
-
-gcc8 detects that strncpy is overwiritng the null terminating character
-the source strings are already initialized to 0 so memcpy would do the same
-job
-
-Fixes
-rn2903.c:153:5: error: 'strncpy' output may be truncated copying 16 bytes from a string of length 511 [-Werror=stringop-truncation]
-     strncpy(dev->hardware_eui, dev->resp_data, RN2903_MAX_HEX_EUI64);
-     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/ecezo/ecezo.c   | 2 +-
- src/rn2903/rn2903.c | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/ecezo/ecezo.c b/src/ecezo/ecezo.c
-index 6a195fc1..56c6dab3 100644
---- a/src/ecezo/ecezo.c
-+++ b/src/ecezo/ecezo.c
-@@ -488,7 +488,7 @@ int ecezo_send_command(const ecezo_context dev, char *cmd, char *buffer,
-     // our write buffer
-     char writeBuffer[ECEZO_MAX_BUFFER_LEN];
- 
--    strncpy(writeBuffer, cmd, ECEZO_MAX_BUFFER_LEN);
-+    memcpy(writeBuffer, cmd, ECEZO_MAX_BUFFER_LEN-1);
-     writeBuffer[ECEZO_MAX_BUFFER_LEN - 1] = 0;
- 
-     int writelen = strlen(writeBuffer);
-diff --git a/src/rn2903/rn2903.c b/src/rn2903/rn2903.c
-index f30a33ae..01a011da 100644
---- a/src/rn2903/rn2903.c
-+++ b/src/rn2903/rn2903.c
-@@ -150,7 +150,7 @@ static rn2903_context _rn2903_postinit(rn2903_context dev,
-         rn2903_close(dev);
-         return NULL;
-     }
--    strncpy(dev->hardware_eui, dev->resp_data, RN2903_MAX_HEX_EUI64);
-+    memcpy(dev->hardware_eui, dev->resp_data, RN2903_MAX_HEX_EUI64);
- 
-     return dev;
- }
--- 
-2.17.0
-
diff --git a/meta-openembedded/meta-oe/recipes-extended/upm/upm/0001-Use-stdint-types.patch b/meta-openembedded/meta-oe/recipes-extended/upm/upm/0001-Use-stdint-types.patch
new file mode 100644
index 0000000..40856fc
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/upm/upm/0001-Use-stdint-types.patch
@@ -0,0 +1,139 @@
+From 5a1e731d71d577f56a2c013e4a75a8e90188e63b Mon Sep 17 00:00:00 2001
+From: Paul Eggleton <paul.eggleton@linux.intel.com>
+Date: Tue, 9 Jul 2019 05:21:59 -0700
+Subject: [PATCH] Use stdint types
+
+Fixes compilation with musl.
+
+Upstream-Status: Pending
+
+Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
+---
+ src/bma250e/bma250e.cxx   | 16 ++++++++--------
+ src/bmg160/bmg160.cxx     | 10 +++++-----
+ src/bmi160/bosch_bmi160.h |  2 +-
+ src/bmm150/bmm150.cxx     |  8 ++++----
+ 4 files changed, 18 insertions(+), 18 deletions(-)
+
+diff --git a/src/bma250e/bma250e.cxx b/src/bma250e/bma250e.cxx
+index a8792782..1b3ecdd8 100644
+--- a/src/bma250e/bma250e.cxx
++++ b/src/bma250e/bma250e.cxx
+@@ -195,35 +195,35 @@ BMA250E::BMA250E(std::string initStr) : mraaIo(initStr)
+             fifoConfig(mode, axes);
+         }
+         if(tok.substr(0, 20) == "setInterruptEnable0:") {
+-            u_int8_t bits = (u_int8_t)std::stoul(tok.substr(20), nullptr, 0);
++            uint8_t bits = (uint8_t)std::stoul(tok.substr(20), nullptr, 0);
+             setInterruptEnable0(bits);
+         }
+         if(tok.substr(0, 20) == "setInterruptEnable1:") {
+-            u_int8_t bits = (u_int8_t)std::stoul(tok.substr(20), nullptr, 0);
++            uint8_t bits = (uint8_t)std::stoul(tok.substr(20), nullptr, 0);
+             setInterruptEnable1(bits);
+         }
+         if(tok.substr(0, 20) == "setInterruptEnable2:") {
+-            u_int8_t bits = (u_int8_t)std::stoul(tok.substr(20), nullptr, 0);
++            uint8_t bits = (uint8_t)std::stoul(tok.substr(20), nullptr, 0);
+             setInterruptEnable2(bits);
+         }
+         if(tok.substr(0, 17) == "setInterruptMap0:") {
+-            u_int8_t bits = (u_int8_t)std::stoul(tok.substr(17), nullptr, 0);
++            uint8_t bits = (uint8_t)std::stoul(tok.substr(17), nullptr, 0);
+             setInterruptMap0(bits);
+         }
+         if(tok.substr(0, 17) == "setInterruptMap1:") {
+-            u_int8_t bits = (u_int8_t)std::stoul(tok.substr(17), nullptr, 0);
++            uint8_t bits = (uint8_t)std::stoul(tok.substr(17), nullptr, 0);
+             setInterruptMap1(bits);
+         }
+         if(tok.substr(0, 17) == "setInterruptMap2:") {
+-            u_int8_t bits = (u_int8_t)std::stoul(tok.substr(17), nullptr, 0);
++            uint8_t bits = (uint8_t)std::stoul(tok.substr(17), nullptr, 0);
+             setInterruptMap2(bits);
+         }
+         if(tok.substr(0, 16) == "setInterruptSrc:") {
+-            u_int8_t bits = (u_int8_t)std::stoul(tok.substr(16), nullptr, 0);
++            uint8_t bits = (uint8_t)std::stoul(tok.substr(16), nullptr, 0);
+             setInterruptSrc(bits);
+         }
+         if(tok.substr(0, 26) == "setInterruptOutputControl:") {
+-            u_int8_t bits = (u_int8_t)std::stoul(tok.substr(26), nullptr, 0);
++            uint8_t bits = (uint8_t)std::stoul(tok.substr(26), nullptr, 0);
+             setInterruptOutputControl(bits);
+         }
+         if(tok.substr(0, 26) == "setInterruptLatchBehavior:") {
+diff --git a/src/bmg160/bmg160.cxx b/src/bmg160/bmg160.cxx
+index 1a0939f8..2438c399 100644
+--- a/src/bmg160/bmg160.cxx
++++ b/src/bmg160/bmg160.cxx
+@@ -173,23 +173,23 @@ BMG160::BMG160(std::string initStr) : mraaIo(initStr)
+             fifoConfig(mode, axes);
+         }
+         if(tok.substr(0, 20) == "setInterruptEnable0:") {
+-            u_int8_t bits = (u_int8_t)std::stoul(tok.substr(20), nullptr, 0);
++            uint8_t bits = (uint8_t)std::stoul(tok.substr(20), nullptr, 0);
+             setInterruptEnable0(bits);
+         }
+         if(tok.substr(0, 17) == "setInterruptMap0:") {
+-            u_int8_t bits = (u_int8_t)std::stoul(tok.substr(17), nullptr, 0);
++            uint8_t bits = (uint8_t)std::stoul(tok.substr(17), nullptr, 0);
+             setInterruptMap0(bits);
+         }
+         if(tok.substr(0, 17) == "setInterruptMap1:") {
+-            u_int8_t bits = (u_int8_t)std::stoul(tok.substr(17), nullptr, 0);
++            uint8_t bits = (uint8_t)std::stoul(tok.substr(17), nullptr, 0);
+             setInterruptMap1(bits);
+         }
+         if(tok.substr(0, 16) == "setInterruptSrc:") {
+-            u_int8_t bits = (u_int8_t)std::stoul(tok.substr(16), nullptr, 0);
++            uint8_t bits = (uint8_t)std::stoul(tok.substr(16), nullptr, 0);
+             setInterruptSrc(bits);
+         }
+         if(tok.substr(0, 26) == "setInterruptOutputControl:") {
+-            u_int8_t bits = (u_int8_t)std::stoul(tok.substr(26), nullptr, 0);
++            uint8_t bits = (uint8_t)std::stoul(tok.substr(26), nullptr, 0);
+             setInterruptOutputControl(bits);
+         }
+         if(tok.substr(0, 26) == "setInterruptLatchBehavior:") {
+diff --git a/src/bmi160/bosch_bmi160.h b/src/bmi160/bosch_bmi160.h
+index 87ca2249..cd9efe6f 100644
+--- a/src/bmi160/bosch_bmi160.h
++++ b/src/bmi160/bosch_bmi160.h
+@@ -81,7 +81,7 @@ typedef	int16_t s16;/**< used for signed 16bit */
+ typedef	int32_t s32;/**< used for signed 32bit */
+ typedef	int64_t s64;/**< used for signed 64bit */
+ 
+-typedef	u_int8_t u8;/**< used for unsigned 8bit */
++typedef	uint8_t u8;/**< used for unsigned 8bit */
+ typedef	u_int16_t u16;/**< used for unsigned 16bit */
+ typedef	u_int32_t u32;/**< used for unsigned 32bit */
+ typedef	u_int64_t u64;/**< used for unsigned 64bit */
+diff --git a/src/bmm150/bmm150.cxx b/src/bmm150/bmm150.cxx
+index 234ebf92..02436788 100644
+--- a/src/bmm150/bmm150.cxx
++++ b/src/bmm150/bmm150.cxx
+@@ -170,19 +170,19 @@ BMM150::BMM150(std::string initStr) : mraaIo(initStr)
+             setOpmode(opmode);
+         }
+         if(tok.substr(0, 19) == "setInterruptEnable:") {
+-            u_int8_t bits = (u_int8_t)std::stoul(tok.substr(19), nullptr, 0);
++            uint8_t bits = (uint8_t)std::stoul(tok.substr(19), nullptr, 0);
+             setInterruptEnable(bits);
+         }
+         if(tok.substr(0, 19) == "setInterruptConfig:") {
+-            u_int8_t bits = (u_int8_t)std::stoul(tok.substr(19), nullptr, 0);
++            uint8_t bits = (uint8_t)std::stoul(tok.substr(19), nullptr, 0);
+             setInterruptConfig(bits);
+         }
+         if(tok.substr(0, 17) == "setRepetitionsXY:") {
+-            u_int8_t reps = (u_int8_t)std::stoul(tok.substr(17), nullptr, 0);
++            uint8_t reps = (uint8_t)std::stoul(tok.substr(17), nullptr, 0);
+             setRepetitionsXY(reps);
+         }
+         if(tok.substr(0, 16) == "setRepetitionsZ:") {
+-            u_int8_t reps = (u_int8_t)std::stoul(tok.substr(16), nullptr, 0);
++            uint8_t reps = (uint8_t)std::stoul(tok.substr(16), nullptr, 0);
+             setRepetitionsZ(reps);
+         }
+         if(tok.substr(0, 14) == "setPresetMode:") {
diff --git a/meta-openembedded/meta-oe/recipes-extended/upm/upm/0001-include-sys-types.h-for-uint-definition.patch b/meta-openembedded/meta-oe/recipes-extended/upm/upm/0001-include-sys-types.h-for-uint-definition.patch
deleted file mode 100644
index a0a4741..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/upm/upm/0001-include-sys-types.h-for-uint-definition.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 48a580bd402cf6a3ee9e42013653219bfeb3caf6 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 21 Jun 2018 18:39:16 -0700
-Subject: [PATCH] include sys/types.h for uint definition
-
-uint is defined in sys/types.h, therefore this
-header needs to be included, it gets exposed with
-musl where this header is not getting included indirectly
-as it is happening when building on glibc
-
-Fixes build errors on musl e.g.
-upm/src/kx122/kx122.hpp:456:31: error: 'uint' has not been declared
-|        void setBufferThreshold(uint samples);
-|                                ^~~~
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Submitted [https://github.com/intel-iot-devkit/upm/pull/656]
- src/kx122/kx122.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/kx122/kx122.h b/src/kx122/kx122.h
-index 1622ed50..56e5215e 100644
---- a/src/kx122/kx122.h
-+++ b/src/kx122/kx122.h
-@@ -31,6 +31,7 @@ extern "C"{
- #include <assert.h>
- #include <unistd.h>
- #include <math.h>
-+#include <sys/types.h>
- 
- #include <mraa/i2c.h>
- #include <mraa/spi.h>
diff --git a/meta-openembedded/meta-oe/recipes-extended/upm/upm_git.bb b/meta-openembedded/meta-oe/recipes-extended/upm/upm_git.bb
index 8854a33..a6b379e 100644
--- a/meta-openembedded/meta-oe/recipes-extended/upm/upm_git.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/upm/upm_git.bb
@@ -7,13 +7,12 @@
 
 DEPENDS = "libjpeg-turbo mraa"
 
-SRCREV = "dc45cd78595c7c24c8a8574c63bb48b5bb99c5aa"
-PV = "1.6.0-git${SRCPV}"
+SRCREV = "5cf20df96c6b35c19d5b871ba4e319e96b4df72d"
+PV = "2.0.0+git${SRCPV}"
 
 SRC_URI = "git://github.com/intel-iot-devkit/${BPN}.git;protocol=http \
-           file://0001-Replace-strncpy-with-memcpy.patch \
-           file://0001-include-sys-types.h-for-uint-definition.patch \
            file://0001-CMakeLists.txt-Use-SWIG_SUPPORT_FILES-to-find-the-li.patch \
+           file://0001-Use-stdint-types.patch \
            "
 
 S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-extended/volume_key/volume-key_0.3.12.bb b/meta-openembedded/meta-oe/recipes-extended/volume_key/volume-key_0.3.12.bb
index 398ca5c..3103748 100644
--- a/meta-openembedded/meta-oe/recipes-extended/volume_key/volume-key_0.3.12.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/volume_key/volume-key_0.3.12.bb
@@ -31,8 +31,7 @@
 PACKAGECONFIG[python] = "--with-python,--without-python,python,python"
 PACKAGECONFIG[python3] = "--with-python3,--without-python3,python3,python3"
 
-RDEPENDS_python3-${PN} += "${PN}"
+RDEPENDS_python3-${BPN} += "${PN}"
 
-PACKAGES += "python3-${PN}"
-FILES_python3-${PN} = "${PYTHON_SITEPACKAGES_DIR}/*"
-
+PACKAGES += "python3-${BPN}"
+FILES_python3-${BPN} = "${PYTHON_SITEPACKAGES_DIR}/*"
diff --git a/meta-openembedded/meta-oe/recipes-extended/zstd/zstd_1.4.2.bb b/meta-openembedded/meta-oe/recipes-extended/zstd/zstd_1.4.2.bb
new file mode 100644
index 0000000..b5d95d9
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/zstd/zstd_1.4.2.bb
@@ -0,0 +1,35 @@
+SUMMARY = "Zstandard - Fast real-time compression algorithm"
+DESCRIPTION = "Zstandard is a fast lossless compression algorithm, targeting \
+real-time compression scenarios at zlib-level and better compression ratios. \
+It's backed by a very fast entropy stage, provided by Huff0 and FSE library."
+HOMEPAGE = "http://www.zstd.net/"
+SECTION = "console/utils"
+
+LICENSE = "BSD-3-Clause & GPLv2"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=c7f0b161edbe52f5f345a3d1311d0b32 \
+                    file://COPYING;md5=39bba7d2cf0ba1036f2a6e2be52fe3f0"
+
+SRC_URI = "git://github.com/facebook/zstd.git;nobranch=1"
+
+SRCREV = "ff304e9e65e7cde17a637eea190a874c26c48634"
+UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)"
+
+S = "${WORKDIR}/git"
+
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[lz4] = "HAVE_LZ4=1,HAVE_LZ4=0,lz4"
+PACKAGECONFIG[lzma] = "HAVE_LZMA=1,HAVE_LZMA=0,xz"
+PACKAGECONFIG[zlib] = "HAVE_ZLIB=1,HAVE_ZLIB=0,zlib"
+
+# See programs/README.md for how to use this
+ZSTD_LEGACY_SUPPORT ??= "4"
+
+do_compile () {
+    oe_runmake ${PACKAGECONFIG_CONFARGS} ZSTD_LEGACY_SUPPORT=${ZSTD_LEGACY_SUPPORT}
+}
+
+do_install () {
+    oe_runmake install 'DESTDIR=${D}'
+}
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-gnome/atk/atkmm_2.28.0.bb b/meta-openembedded/meta-oe/recipes-gnome/atk/atkmm_2.28.0.bb
index 63f4f09..e587e2a 100644
--- a/meta-openembedded/meta-oe/recipes-gnome/atk/atkmm_2.28.0.bb
+++ b/meta-openembedded/meta-oe/recipes-gnome/atk/atkmm_2.28.0.bb
@@ -7,7 +7,7 @@
 
 DEPENDS = "atk glibmm"
 
-inherit distro_features_check gnome autotools pkgconfig
+inherit distro_features_check gnomebase autotools pkgconfig
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
diff --git a/meta-openembedded/meta-oe/recipes-gnome/gnome-themes/gnome-themes-standard_3.22.3.bb b/meta-openembedded/meta-oe/recipes-gnome/gnome-themes/gnome-themes-standard_3.22.3.bb
new file mode 100644
index 0000000..55ee277
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-gnome/gnome-themes/gnome-themes-standard_3.22.3.bb
@@ -0,0 +1,46 @@
+SUMMARY = "GTK+2 standard themes"
+HOMEPAGE = "http://ftp.gnome.org/pub/GNOME/sources/gnome-themes-standard/"
+BUGTRACKER = "https://bugzilla.gnome.org/"
+SECTION = "x11/gnome"
+
+LICENSE = "LGPL-2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1"
+
+inherit autotools pkgconfig gettext gtk-icon-cache upstream-version-is-even distro_features_check
+
+ANY_OF_DISTRO_FEATURES = "${GTK2DISTROFEATURES}"
+
+DEPENDS += "intltool-native gtk+"
+
+MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
+SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \
+          "
+
+SRC_URI[md5sum] = "b51c362b157b6407303d44f93c31ee11"
+SRC_URI[sha256sum] = "61dc87c52261cfd5b94d65e8ffd923ddeb5d3944562f84942eeeb197ab8ab56a"
+
+EXTRA_OECONF = "--disable-gtk3-engine"
+
+do_install_append() {
+        # Only building Adwaita, remove highcontrast files
+        rm -rf ${D}${prefix}/share/themes/HighContrast \
+               ${D}${prefix}/share/icons
+
+	# The libtool archive file is unneeded with shared libs on modern Linux
+	rm -rf ${D}${libdir}/gtk-2.0/2.10.0/engines/libadwaita.la
+}
+
+# There could be gnome-theme-highcontrast as well but that requires
+# gtk+3 and includes lots of icons (is also broken with B != S).
+PACKAGES += "gnome-theme-adwaita \
+             gnome-theme-adwaita-dark \
+             "
+
+FILES_gnome-theme-adwaita = "${prefix}/share/themes/Adwaita \
+                              ${libdir}/gtk-2.0/2.10.0/engines/libadwaita.so"
+
+FILES_gnome-theme-adwaita-dark = "${prefix}/share/themes/Adwaita-dark"
+RDEPENDS_gnome-theme-adwaita-dark = "gnome-theme-adwaita"
+
+# gnome-themes-standard is empty and doesn't exist
+RDEPENDS_${PN}-dev = ""
diff --git a/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+.inc b/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+.inc
new file mode 100644
index 0000000..d6d14a7
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+.inc
@@ -0,0 +1,107 @@
+SUMMARY = "Multi-platform toolkit for creating GUIs"
+DESCRIPTION = "GTK+ is a multi-platform toolkit for creating graphical user interfaces. Offering a complete \
+set of widgets, GTK+ is suitable for projects ranging from small one-off projects to complete application suites."
+HOMEPAGE = "http://www.gtk.org"
+BUGTRACKER = "https://bugzilla.gnome.org/"
+
+LICENSE = "LGPLv2 & LGPLv2+ & LGPLv2.1+"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7"
+
+SECTION = "libs"
+
+inherit distro_features_check
+ANY_OF_DISTRO_FEATURES = "${GTK2DISTROFEATURES}"
+
+# This picks stable releases in the 2.x series (but not 2.90 onwards,
+# which were GNOME 3 betas).
+UPSTREAM_CHECK_REGEX = "(?P<pver>2\.([0-8]*[02468])+(\.\d+)+)"
+
+X11DEPENDS = "virtual/libx11 libxext libxcursor libxrandr libxdamage libxrender libxcomposite"
+DEPENDS = "glib-2.0 pango atk jpeg libpng gdk-pixbuf-native \
+ cairo gdk-pixbuf"
+
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'directfb x11', d)}"
+
+PACKAGECONFIG[x11] = "--with-x=yes --with-gdktarget=x11,--with-x=no,${X11DEPENDS}"
+# without --with-gdktarget=directfb it will check for cairo-xlib which isn't available without X11 DISTRO_FEATURE
+PACKAGECONFIG[directfb] = "--with-gdktarget=directfb,,directfb"
+PACKAGECONFIG[manpages] = "--enable-man --with-xml-catalog=${STAGING_ETCDIR_NATIVE}/xml/catalog, --disable-man, libxslt-native xmlto-native"
+
+inherit autotools gtk-doc pkgconfig update-alternatives gtk-immodules-cache gobject-introspection manpages
+
+PACKAGES += "libgail gtk-demo"
+
+FILES_${PN} += "${bindir}/gtk-update-icon-cache-2.0 \
+	${bindir}/gtk-query-immodules-2.0 \
+	${datadir}/themes ${sysconfdir} \
+	${libdir}/gtk-2.0/${LIBV}/engines/libpixmap.so"
+
+FILES_${PN}-dev += " \
+        ${datadir}/gtk-2.0/include \
+	${libdir}/gtk-2.0/include \
+	${libdir}/gtk-2.0/modules/*.la \
+	${libdir}/gtk-2.0/${LIBV}/loaders/*.la \
+	${libdir}/gtk-2.0/${LIBV}/immodules/*.la \
+	${libdir}/gtk-2.0/${LIBV}/printbackends/*.la \
+	${libdir}/gtk-2.0/${LIBV}/engines/*.la \
+	${bindir}/gtk-builder-convert"
+
+FILES_gtk-demo = " \
+ ${datadir}/gtk-2.0/demo/* \
+ ${bindir}/gtk-demo \
+ "
+
+FILES_libgail = " \
+	${libdir}/gtk-2.0/modules/libgail.so \
+	${libdir}/gtk-2.0/modules/libferret.so \
+	"
+
+GTKBASE_RRECOMMENDS ?= "liberation-fonts \
+                        gdk-pixbuf-loader-png \
+                        gdk-pixbuf-loader-jpeg \
+                        gdk-pixbuf-loader-gif \
+                        gdk-pixbuf-loader-xpm \
+                        shared-mime-info \
+                        gnome-theme-adwaita \
+                        "
+GTKGLIBC_RRECOMMENDS ?= "${GTKBASE_RRECOMMENDS} glibc-gconv-iso8859-1"
+
+RRECOMMENDS_${PN} = "${GTKBASE_RRECOMMENDS}"
+RRECOMMENDS_${PN}_libc-glibc = "${GTKGLIBC_RRECOMMENDS}"
+
+ALTERNATIVE_${PN} = "gtk-update-icon-cache"
+ALTERNATIVE_TARGET[gtk-update-icon-cache] = "${bindir}/gtk-update-icon-cache-2.0"
+
+do_compile_prepend() {
+        export GIR_EXTRA_LIBS_PATH="${B}/gdk/.libs"
+}
+
+do_install () {
+	autotools_do_install
+
+	install -d ${D}${sysconfdir}/gtk-2.0
+
+	mkdir -p ${D}${libdir}/gtk-2.0/include
+	install -m 0644 gdk/gdkconfig.h ${D}${libdir}/gtk-2.0/include/gdkconfig.h
+
+	install -m 0644 ${S}/gtk/gtkfilechooserprivate.h ${D}${includedir}/gtk-2.0/gtk/
+	install -m 0644 ${S}/gtk/gtkfilechooserutils.h   ${D}${includedir}/gtk-2.0/gtk/
+	install -m 0644 ${S}/gtk/gtkfilesystemmodel.h    ${D}${includedir}/gtk-2.0/gtk/
+
+	mv ${D}${bindir}/gtk-update-icon-cache ${D}${bindir}/gtk-update-icon-cache-2.0
+
+    # duplicate gtk-query-immodules for post install script update_gtk_immodules_cache
+    mkdir -p ${D}${libexecdir}
+    ln ${D}${bindir}/gtk-query-immodules-2.0 ${D}${libexecdir}/${MLPREFIX}gtk-query-immodules-2.0
+}
+
+SYSROOT_PREPROCESS_FUNCS += "gtk_sysroot_preprocess"
+
+gtk_sysroot_preprocess () {
+	if [ -e ${D}${bindir}/gtk-builder-convert ]; then
+		install -d ${SYSROOT_DESTDIR}${bindir_crossscripts}/
+		install -m 755 ${D}${bindir}/gtk-builder-convert ${SYSROOT_DESTDIR}${bindir_crossscripts}/
+	fi
+}
+
diff --git a/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+/0001-Do-not-look-into-HOME-when-looking-for-gtk-modules.patch b/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+/0001-Do-not-look-into-HOME-when-looking-for-gtk-modules.patch
new file mode 100644
index 0000000..83be39c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+/0001-Do-not-look-into-HOME-when-looking-for-gtk-modules.patch
@@ -0,0 +1,29 @@
+From 34ce93e1c50bfb88f92a687d4f82de55584f3f6a Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Wed, 11 Apr 2018 14:20:39 +0300
+Subject: [PATCH] Do not look into $HOME when looking for gtk modules
+
+On the host it causes host contamination, on the target it's a
+potential security issue. Gtk+3 has already removed this.
+
+Upstream-Status: Inappropriate [gtk2 is in maintenance mode]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ gtk/gtkmodules.c | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/gtk/gtkmodules.c b/gtk/gtkmodules.c
+index 50729b6..e09b583 100644
+--- a/gtk/gtkmodules.c
++++ b/gtk/gtkmodules.c
+@@ -65,10 +65,6 @@ get_module_path (void)
+   if (result)
+     return result;
+ 
+-  home_dir = g_get_home_dir();
+-  if (home_dir)
+-    home_gtk_dir = g_build_filename (home_dir, ".gtk-2.0", NULL);
+-
+   module_path_env = g_getenv ("GTK_PATH");
+   exe_prefix = g_getenv ("GTK_EXE_PREFIX");
+ 
diff --git a/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+/doc-fixes.patch b/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+/doc-fixes.patch
new file mode 100644
index 0000000..74e479f
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+/doc-fixes.patch
@@ -0,0 +1,22 @@
+There are issues building the gtk+ tutorial and faq documentation.
+Since they were removed in gtk+ upstream and are superfluous in
+embedded applications, just don't build them.
+
+Thanks to Joshua Lock for suggesting this approach.
+
+Signed-off-by: Scott Garman <scott.a.garman@intel.com>
+
+Upstream-Status: Inappropriate [embedded specific]
+
+diff -urN gtk+-2.22.1.orig/docs/Makefile.am gtk+-2.22.1/docs/Makefile.am
+--- gtk+-2.22.1.orig/docs/Makefile.am	2010-11-15 04:13:09.000000000 -0800
++++ gtk+-2.22.1/docs/Makefile.am	2011-02-23 19:25:16.914815097 -0800
+@@ -1,7 +1,7 @@
+ ## Process this file with automake to produce Makefile.in
+ include $(top_srcdir)/Makefile.decl
+ 
+-SUBDIRS = tutorial faq reference tools
++SUBDIRS = reference tools
+ 
+ EXTRA_DIST += \
+ 	defsformat.txt			\
diff --git a/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+/hardcoded_libtool.patch b/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+/hardcoded_libtool.patch
new file mode 100644
index 0000000..9eb7f6b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+/hardcoded_libtool.patch
@@ -0,0 +1,36 @@
+Upstream-Status: Inappropriate [embedded specific]
+
+Updated to apply to gtk+-2.24.15
+
+Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
+Index: gtk+-2.24.31/configure.ac
+===================================================================
+--- gtk+-2.24.31.orig/configure.ac
++++ gtk+-2.24.31/configure.ac
+@@ -415,7 +415,7 @@ AC_MSG_CHECKING([Whether to write depend
+ case $enable_explicit_deps in
+   auto)
+     export SED
+-    deplibs_check_method=`(./libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh`
++    deplibs_check_method=`(./$host_alias-libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh`
+     if test "x$deplibs_check_method" '!=' xpass_all || test "x$enable_static" = xyes ; then
+       enable_explicit_deps=yes  
+     else
+@@ -772,7 +772,7 @@ else
+     dnl Now we check to see if our libtool supports shared lib deps
+     dnl (in a rather ugly way even)
+     if $dynworks; then
+-        module_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config"
++        module_libtool_config="${CONFIG_SHELL-/bin/sh} $host_alias-libtool --config"
+         module_deplibs_check=`$module_libtool_config | \
+             grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \
+             sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'`
+@@ -1579,7 +1579,7 @@ fi
+ # We are using gmodule-no-export now, but I'm leaving the stripping
+ # code in place for now, since pango and atk still require gmodule.
+ export SED
+-export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
++export_dynamic=`($host_alias-libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
+ if test -n "$export_dynamic"; then
+   GDK_DEP_LIBS=`echo $GDK_DEP_LIBS | sed -e "s/$export_dynamic//"`
+   GTK_DEP_LIBS=`echo $GTK_DEP_LIBS | sed -e "s/$export_dynamic//"`
diff --git a/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+/strict-prototypes.patch b/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+/strict-prototypes.patch
new file mode 100644
index 0000000..96e1f5f
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+/strict-prototypes.patch
@@ -0,0 +1,24 @@
+Fixes
+
+include/gtk-2.0/gtk/gtkitemfactory.h:47:1: warning: function declaration isn't a prototype [-Wstrict-prototypes]
+ typedef void (*GtkItemFactoryCallback)  ();
+
+gcc5 has -Wstrict-prototypes on by default for -Werror so this becomes a build failure for consumers
+of this header e.g. matchbox-panel-2
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Index: gtk+-2.24.27/gtk/gtkitemfactory.h
+===================================================================
+--- gtk+-2.24.27.orig/gtk/gtkitemfactory.h
++++ gtk+-2.24.27/gtk/gtkitemfactory.h
+@@ -44,7 +44,7 @@ typedef void	(*GtkPrintFunc)		   (gpoint
+  * (Note that if we are included from a C++ program () will mean
+  * (void) so an explicit cast will be needed.)
+  */
+-typedef	void	(*GtkItemFactoryCallback)  ();
++typedef	void	(*GtkItemFactoryCallback)  (void);
+ typedef	void	(*GtkItemFactoryCallback1) (gpointer		 callback_data,
+ 					    guint		 callback_action,
+ 					    GtkWidget		*widget);
diff --git a/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+/toggle-font.diff b/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+/toggle-font.diff
new file mode 100644
index 0000000..340d120
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+/toggle-font.diff
@@ -0,0 +1,102 @@
+Upstream-Status: Pending
+
+Index: gtk/gtkcellrenderertoggle.c
+===================================================================
+--- gtk/gtkcellrenderertoggle.c.orig	2010-06-22 18:11:33.000000000 +0800
++++ gtk/gtkcellrenderertoggle.c	2010-06-22 18:11:43.000000000 +0800
+@@ -71,6 +71,8 @@
+   PROP_INDICATOR_SIZE
+ };
+ 
++/* This is a hard-coded default which promptly gets overridden by a size
++   calculated from the font size. */
+ #define TOGGLE_WIDTH 13
+ 
+ static guint toggle_cell_signals[LAST_SIGNAL] = { 0 };
+@@ -80,8 +82,9 @@
+ typedef struct _GtkCellRendererTogglePrivate GtkCellRendererTogglePrivate;
+ struct _GtkCellRendererTogglePrivate
+ {
+-  gint indicator_size;
+-
++  gint indicator_size; /* This is the real size */
++  gint override_size; /* This is the size set from the indicator-size property */
++  GtkWidget *cached_widget;
+   guint inconsistent : 1;
+ };
+ 
+@@ -104,6 +107,7 @@
+   GTK_CELL_RENDERER (celltoggle)->ypad = 2;
+ 
+   priv->indicator_size = TOGGLE_WIDTH;
++  priv->override_size = 0;
+   priv->inconsistent = FALSE;
+ }
+ 
+@@ -210,7 +214,7 @@
+       g_value_set_boolean (value, celltoggle->radio);
+       break;
+     case PROP_INDICATOR_SIZE:
+-      g_value_set_int (value, priv->indicator_size);
++      g_value_set_int (value, priv->override_size ? priv->override_size : priv->indicator_size);
+       break;
+     default:
+       G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec);
+@@ -245,7 +249,7 @@
+       celltoggle->radio = g_value_get_boolean (value);
+       break;
+     case PROP_INDICATOR_SIZE:
+-      priv->indicator_size = g_value_get_int (value);
++      priv->override_size = g_value_get_int (value);
+       break;
+     default:
+       G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec);
+@@ -273,6 +277,27 @@
+ }
+ 
+ static void
++on_widget_style_set (GtkWidget *widget, GtkStyle *previous, gpointer user_data)
++{
++  GtkCellRendererTogglePrivate *priv = user_data;
++  PangoContext *context;
++  PangoFontMetrics *metrics;
++  int height;
++  
++  context = gtk_widget_get_pango_context (widget);
++  metrics = pango_context_get_metrics (context,
++                                       widget->style->font_desc,
++                                       pango_context_get_language (context));
++
++  height = pango_font_metrics_get_ascent (metrics) +
++    pango_font_metrics_get_descent (metrics);
++  
++  pango_font_metrics_unref (metrics);
++  
++  priv->indicator_size = PANGO_PIXELS (height * 0.85);
++}
++
++static void
+ gtk_cell_renderer_toggle_get_size (GtkCellRenderer *cell,
+ 				   GtkWidget       *widget,
+ 				   GdkRectangle    *cell_area,
+@@ -287,6 +312,20 @@
+ 
+   priv = GTK_CELL_RENDERER_TOGGLE_GET_PRIVATE (cell);
+ 
++  if (priv->override_size) {
++    priv->indicator_size = priv->override_size;
++  } else if (priv->cached_widget != widget) {
++    if (priv->cached_widget) {
++      g_object_remove_weak_pointer (widget, &priv->cached_widget);
++      g_signal_handlers_disconnect_by_func (priv->cached_widget, on_widget_style_set, priv);
++    }
++    priv->cached_widget = widget;
++    g_object_add_weak_pointer (widget, &priv->cached_widget);
++    g_signal_connect (widget, "style-set", on_widget_style_set, priv);
++    
++    on_widget_style_set (widget, NULL, priv);
++  }
++
+   calc_width = (gint) cell->xpad * 2 + priv->indicator_size;
+   calc_height = (gint) cell->ypad * 2 + priv->indicator_size;
+ 
diff --git a/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+/xsettings.patch b/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+/xsettings.patch
new file mode 100644
index 0000000..d0a970a
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+/xsettings.patch
@@ -0,0 +1,20 @@
+Upstream-Status: Pending
+
+Index: gtk+-2.21.2/gdk/x11/gdkevents-x11.c
+===================================================================
+--- gtk+-2.21.2.orig/gdk/x11/gdkevents-x11.c	2010-06-22 17:28:04.000000000 +0800
++++ gtk+-2.21.2/gdk/x11/gdkevents-x11.c	2010-06-22 17:28:06.000000000 +0800
+@@ -3062,10 +3062,9 @@
+ {
+   GdkScreenX11 *screen = data;
+   
+-  if (xsettings_client_process_event (screen->xsettings_client, (XEvent *)xevent))
+-    return GDK_FILTER_REMOVE;
+-  else
+-    return GDK_FILTER_CONTINUE;
++  xsettings_client_process_event (screen->xsettings_client, (XEvent *)xevent);
++
++  return GDK_FILTER_CONTINUE;
+ }
+ 
+ static Bool
diff --git a/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+_2.24.32.bb b/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+_2.24.32.bb
new file mode 100644
index 0000000..682d31e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtk+_2.24.32.bb
@@ -0,0 +1,35 @@
+require gtk+.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \
+                    file://gtk/gtk.h;endline=27;md5=c59e0b4490dd135a5726ebf851f9b17f \
+                    file://gdk/gdk.h;endline=27;md5=07db285ec208fb3e0bf7d861b0614202 \
+                    file://tests/testgtk.c;endline=27;md5=262db5db5f776f9863e56df31423e24c"
+SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtk+/2.24/gtk+-${PV}.tar.xz \
+           file://xsettings.patch \
+           file://hardcoded_libtool.patch \
+           file://toggle-font.diff;striplevel=0 \
+           file://doc-fixes.patch \
+           file://strict-prototypes.patch \
+           file://0001-Do-not-look-into-HOME-when-looking-for-gtk-modules.patch \
+           "
+
+SRC_URI[md5sum] = "d5742aa42275203a499b59b4c382a784"
+SRC_URI[sha256sum] = "b6c8a93ddda5eabe3bfee1eb39636c9a03d2a56c7b62828b359bf197943c582e"
+
+EXTRA_OECONF = "--enable-xkb --disable-glibtest --disable-cups --disable-xinerama"
+
+LIBV = "2.10.0"
+
+PACKAGES_DYNAMIC += "^gtk-immodule-.* ^gtk-printbackend-.*"
+
+python populate_packages_prepend () {
+    gtk_libdir = d.expand('${libdir}/gtk-2.0/${LIBV}')
+    immodules_root = os.path.join(gtk_libdir, 'immodules')
+    printmodules_root = os.path.join(gtk_libdir, 'printbackends');
+
+    d.setVar('GTKIMMODULES_PACKAGES', ' '.join(do_split_packages(d, immodules_root, r'^im-(.*)\.so$', 'gtk-immodule-%s', 'GTK input module for %s')))
+    do_split_packages(d, printmodules_root, r'^libprintbackend-(.*)\.so$', 'gtk-printbackend-%s', 'GTK printbackend module for %s')
+
+    if (d.getVar('DEBIAN_NAMES')):
+        d.setVar(d.expand('PKG_${PN}'), '${MLPREFIX}libgtk-2.0')
+}
diff --git a/meta-openembedded/meta-oe/recipes-gnome/vte9/vte9.inc b/meta-openembedded/meta-oe/recipes-gnome/vte9/vte9.inc
index 206c430..d860d44 100644
--- a/meta-openembedded/meta-oe/recipes-gnome/vte9/vte9.inc
+++ b/meta-openembedded/meta-oe/recipes-gnome/vte9/vte9.inc
@@ -8,7 +8,7 @@
 GNOMEBN = "vte"
 S = "${WORKDIR}/vte-${PV}"
 
-inherit gnome gtk-doc distro_features_check upstream-version-is-even gobject-introspection
+inherit gnomebase gtk-doc distro_features_check upstream-version-is-even gobject-introspection
 ANY_OF_DISTRO_FEATURES = "${GTK2DISTROFEATURES}"
 
 EXTRA_OECONF = "--disable-python"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/gimp/gimp_2.8.22.bb b/meta-openembedded/meta-oe/recipes-graphics/gimp/gimp_2.8.22.bb
index 943986e..1d64910 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/gimp/gimp_2.8.22.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/gimp/gimp_2.8.22.bb
@@ -8,6 +8,7 @@
     gdk-pixbuf-native \
     intltool-native \
     libxslt-native \
+    dbus-glib \
     gtk+ \
     babl \
     gegl \
@@ -24,7 +25,7 @@
 "
 DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libxmu libxpm', '', d)}"
 
-inherit distro_features_check gnome gtk-doc
+inherit distro_features_check gnomebase gtk-icon-cache gtk-doc
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/graphviz/graphviz/0001-Set-use_tcl-to-be-empty-string-if-tcl-is-disabled.patch b/meta-openembedded/meta-oe/recipes-graphics/graphviz/graphviz/0001-Set-use_tcl-to-be-empty-string-if-tcl-is-disabled.patch
new file mode 100644
index 0000000..21bf1bc
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/graphviz/graphviz/0001-Set-use_tcl-to-be-empty-string-if-tcl-is-disabled.patch
@@ -0,0 +1,33 @@
+From 564901ab78da2b2b1bed92351dc3c102dc0a8154 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 6 Aug 2019 17:51:39 -0700
+Subject: [PATCH] Set use_tcl to be empty string if tcl is disabled
+
+Upstream-Status: Inappropriate [Cross-compile specific]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -1676,7 +1676,7 @@ AC_ARG_ENABLE(tcl,
+   [], [enable_tcl=yes])
+ 
+ if test "x$enable_tcl" != "xyes"; then
+-  use_tcl="No (disabled)"
++  use_tcl=""
+ fi
+ 
+ if test "x$use_tcl" = "x"; then
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -19,7 +19,7 @@ pkginclude_HEADERS = $(top_builddir)/gra
+ man_MANS = graphviz.7
+ 
+ # $(subdirs) contains the list from: AC_CONFIG_SUBDIRS
+-SUBDIRS = $(subdirs) lib plugin cmd tclpkg doc contrib share graphs rtest tests
++SUBDIRS = $(subdirs) lib plugin cmd doc contrib share graphs rtest tests
+ 
+ .PHONY: doxygen
+ doxygen:
diff --git a/meta-openembedded/meta-oe/recipes-graphics/graphviz/graphviz/0001-plugin-pango-Include-freetype-headers-explicitly.patch b/meta-openembedded/meta-oe/recipes-graphics/graphviz/graphviz/0001-plugin-pango-Include-freetype-headers-explicitly.patch
new file mode 100644
index 0000000..a9b0352
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/graphviz/graphviz/0001-plugin-pango-Include-freetype-headers-explicitly.patch
@@ -0,0 +1,38 @@
+From 926d9285f3367ae1bdb9ce1dce95f7de73b3a980 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 6 Aug 2019 12:42:19 -0700
+Subject: [PATCH] plugin/pango: Include freetype headers explicitly
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Do not depend on pango automatically adding these headers
+Fixes
+| gvtextlayout_pango.c:140:10: error: unknown type name ‘FT_Face’
+|          FT_Face face;
+|          ^~~~~~~
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ plugin/pango/gvtextlayout_pango.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/plugin/pango/gvtextlayout_pango.c b/plugin/pango/gvtextlayout_pango.c
+index d620b29..b0da11c 100644
+--- a/plugin/pango/gvtextlayout_pango.c
++++ b/plugin/pango/gvtextlayout_pango.c
+@@ -15,6 +15,10 @@
+ 
+ #include <stdlib.h>
+ #include <string.h>
++
++#include <ft2build.h>
++#include FT_FREETYPE_H
++
+ #include "gvplugin_render.h"
+ #include "agxbuf.h"
+ #include "utils.h"
+-- 
+2.22.0
+
diff --git a/meta-openembedded/meta-oe/recipes-graphics/graphviz/graphviz_2.40.1.bb b/meta-openembedded/meta-oe/recipes-graphics/graphviz/graphviz_2.40.1.bb
index a9efffa..176cf44 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/graphviz/graphviz_2.40.1.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/graphviz/graphviz_2.40.1.bb
@@ -26,9 +26,13 @@
 # source - see https://src.fedoraproject.org/cgit/rpms/graphviz.git/tree/graphviz.spec
 
 SRC_URI = "https://gitlab.com/graphviz/graphviz/-/archive/stable_release_${PV}/graphviz-stable_release_${PV}.tar.gz \
+           file://0001-plugin-pango-Include-freetype-headers-explicitly.patch \
 "
 # Use native mkdefs
-SRC_URI_append_class-target = " file://0001-Use-native-mkdefs.patch"
+SRC_URI_append_class-target = "\
+           file://0001-Use-native-mkdefs.patch \
+           file://0001-Set-use_tcl-to-be-empty-string-if-tcl-is-disabled.patch \
+"
 SRC_URI[md5sum] = "2acf30ca8e6cc8b001b0334db65fd072"
 SRC_URI[sha256sum] = "e6c3f8dbfde1c4523055403927bef29f97f9fc12715c1042b5dcf648a2c1c62a"
 
@@ -39,6 +43,7 @@
                 --with-expatlibdir=${STAGING_LIBDIR} \
                 --without-included-ltdl \
                 --disable-java \
+                --disable-tcl \
                 --disable-r \
                 --disable-sharp \
                 "
@@ -54,6 +59,19 @@
     install -m755 ${B}/lib/gvpr/mkdefs ${D}${bindir}
 }
 
+PACKAGES =+ "${PN}-python ${PN}-perl ${PN}-demo"
+
+FILES_${PN}-python += "${libdir}/python*/site-packages/ ${libdir}/graphviz/python/"
+FILES_${PN}-perl += "${libdir}/perl5/*/vendor_perl/ ${libdir}/graphviz/perl/"
+FILES_${PN}-demo += "${datadir}/graphviz/demo/"
+
+RDEPENDS_${PN}-perl += "perl"
+RDEPENDS_${PN}-python += "python"
+RDEPENDS_${PN}-demo += "python perl"
+
+INSANE_SKIP_${PN}-perl = "dev-so"
+INSANE_SKIP_${PN}-python = "dev-so"
+
 FILES_SOLIBSDEV_append = " ${libdir}/graphviz/lib*${SOLIBSDEV}"
 
 BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.98.bb b/meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.98.bb
index b9aae0f..310c410 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.98.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/gtkwave/gtkwave_3.3.98.bb
@@ -5,7 +5,7 @@
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=75859989545e37968a99b631ef42722e"
 
-SRC_URI = "http://gtkwave.sourceforge.net/${PN}-${PV}.tar.gz"
+SRC_URI = "http://gtkwave.sourceforge.net/${BP}.tar.gz"
 
 SRC_URI[md5sum] = "eac3073ef381e0c09da33590296ca37f"
 SRC_URI[sha256sum] = "efa6bbbeb3bd54104425a69a2aa0d079bb5c3ecc1c420ba57dcaa1c97c5a22f6"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/jasper/jasper_1.900.1.bb b/meta-openembedded/meta-oe/recipes-graphics/jasper/jasper_1.900.1.bb
index cc6a694..d2c7ffd 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/jasper/jasper_1.900.1.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/jasper/jasper_1.900.1.bb
@@ -4,7 +4,10 @@
 
 PR = "r1"
 
-SRC_URI = "http://www.ece.uvic.ca/~mdadams/jasper/software/jasper-${PV}.zip"
+SRC_URI = "git://github.com/mdadams/jasper.git;protocol=https"
+SRCREV = "b13b8c86be870107f83b0a9a4b77557cb2b65d69"
+
+S = "${WORKDIR}/git"
 
 inherit autotools lib_package
 
@@ -13,6 +16,3 @@
 PACKAGECONFIG[opengl] = "--enable-opengl,--disable-opengl,freeglut"
 
 EXTRA_OECONF = "--enable-shared"
-
-SRC_URI[md5sum] = "a342b2b4495b3e1394e161eb5d85d754"
-SRC_URI[sha256sum] = "6b905a9c2aca2e275544212666eefc4eb44d95d0a57e4305457b407fe63f9494"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/0001-build-Pass-tag-CC-explictly-when-using-libtool.patch b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/0001-build-Pass-tag-CC-explictly-when-using-libtool.patch
new file mode 100644
index 0000000..ec8c0fd
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/0001-build-Pass-tag-CC-explictly-when-using-libtool.patch
@@ -0,0 +1,73 @@
+From 44e4bb4cfb81024c8f5fd2e179e8a32c42756a2f Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 23 Jul 2017 16:52:43 -0700
+Subject: [PATCH] build: Pass --tag=CC explictly when using libtool
+
+Do not depend solely on libtool heuristics which fail
+in OE case when building with external compiler and
+hardening flags
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile.in              | 4 ++--
+ build-scripts/makedep.sh | 8 ++++----
+ 2 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index ab51035..743ce30 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -72,10 +72,10 @@ depend:
+ include $(depend)
+ 
+ $(objects)/$(TARGET): $(OBJECTS)
+-	$(LIBTOOL) --mode=link $(CC) -o $@ $^ $(LDFLAGS) $(EXTRA_LDFLAGS) $(LT_LDFLAGS)
++	$(LIBTOOL) --tag=CC --mode=link $(CC) -o $@ $^ $(LDFLAGS) $(EXTRA_LDFLAGS) $(LT_LDFLAGS)
+ 
+ $(objects)/$(SDLMAIN_TARGET): $(SDLMAIN_OBJECTS)
+-	$(LIBTOOL) --mode=link $(CC) -o $@ $^ $(LDFLAGS) $(EXTRA_LDFLAGS) $(LT_LDFLAGS) $(SDLMAIN_LDFLAGS)
++	$(LIBTOOL) --tag=CC --mode=link $(CC) -o $@ $^ $(LDFLAGS) $(EXTRA_LDFLAGS) $(LT_LDFLAGS) $(SDLMAIN_LDFLAGS)
+ 
+ 
+ install: all install-bin install-hdrs install-lib install-data install-man
+diff --git a/build-scripts/makedep.sh b/build-scripts/makedep.sh
+index 3b3863b..dba28f2 100755
+--- a/build-scripts/makedep.sh
++++ b/build-scripts/makedep.sh
+@@ -51,19 +51,19 @@ do  echo "Generating dependencies for $src"
+     case $ext in
+         c) cat >>${output}.new <<__EOF__
+ 
+-	\$(LIBTOOL) --mode=compile \$(CC) \$(CFLAGS) \$(EXTRA_CFLAGS) -c $src  -o \$@
++	\$(LIBTOOL) --tag=CC --mode=compile \$(CC) \$(CFLAGS) \$(EXTRA_CFLAGS) -c $src  -o \$@
+ 
+ __EOF__
+         ;;
+         cc) cat >>${output}.new <<__EOF__
+ 
+-	\$(LIBTOOL) --mode=compile \$(CC) \$(CFLAGS) \$(EXTRA_CFLAGS) -c $src  -o \$@
++	\$(LIBTOOL) --tag=CC --mode=compile \$(CC) \$(CFLAGS) \$(EXTRA_CFLAGS) -c $src  -o \$@
+ 
+ __EOF__
+         ;;
+         m) cat >>${output}.new <<__EOF__
+ 
+-	\$(LIBTOOL) --mode=compile \$(CC) \$(CFLAGS) \$(EXTRA_CFLAGS) -c $src  -o \$@
++	\$(LIBTOOL) --tag=CC --mode=compile \$(CC) \$(CFLAGS) \$(EXTRA_CFLAGS) -c $src  -o \$@
+ 
+ __EOF__
+         ;;
+@@ -75,7 +75,7 @@ __EOF__
+         ;;
+         S) cat >>${output}.new <<__EOF__
+ 
+-	\$(LIBTOOL)  --mode=compile \$(CC) \$(CFLAGS) \$(EXTRA_CFLAGS) -c $src  -o \$@
++	\$(LIBTOOL) --tag=CC --mode=compile \$(CC) \$(CFLAGS) \$(EXTRA_CFLAGS) -c $src  -o \$@
+ 
+ __EOF__
+         ;;
+-- 
+2.13.3
+
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7572.patch b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7572.patch
new file mode 100644
index 0000000..c41c2de
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7572.patch
@@ -0,0 +1,114 @@
+# HG changeset patch
+# User Petr Písař <ppisar@redhat.com>
+# Date 1560182231 25200
+#      Mon Jun 10 08:57:11 2019 -0700
+# Branch SDL-1.2
+# Node ID a8afedbcaea0e84921dc770195c4699bda3ccdc5
+# Parent  faf9abbcfb5fe0d0ca23c4bf0394aa226ceccf02
+CVE-2019-7572: Fix a buffer overwrite in IMA_ADPCM_decode
+If data chunk was longer than expected based on a WAV format
+definition, IMA_ADPCM_decode() tried to write past the output
+buffer. This patch fixes it.
+
+Based on patch from
+<https://bugzilla.libsdl.org/show_bug.cgi?id=4496>.
+
+CVE-2019-7572
+https://bugzilla.libsdl.org/show_bug.cgi?id=4495
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+
+# HG changeset patch
+# User Petr Písař <ppisar@redhat.com>
+# Date 1560041863 25200
+#      Sat Jun 08 17:57:43 2019 -0700
+# Branch SDL-1.2
+# Node ID e52413f5258600878f9a10d2f92605a729aa8976
+# Parent  4e73be7b47877ae11d2279bd916910d469d18f8e
+CVE-2019-7572: Fix a buffer overread in IMA_ADPCM_nibble
+If an IMA ADPCM block contained an initial index out of step table
+range (loaded in IMA_ADPCM_decode()), IMA_ADPCM_nibble() blindly used
+this bogus value and that lead to a buffer overread.
+
+This patch fixes it by moving clamping the index value at the
+beginning of IMA_ADPCM_nibble() function instead of the end after
+an update.
+
+CVE-2019-7572
+https://bugzilla.libsdl.org/show_bug.cgi?id=4495
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+
+CVE: CVE-2019-7572
+Upstream-Status: Backport
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+
+diff -r faf9abbcfb5f -r a8afedbcaea0 src/audio/SDL_wave.c
+--- a/src/audio/SDL_wave.c	Mon Jun 10 08:54:29 2019 -0700
++++ b/src/audio/SDL_wave.c	Mon Jun 10 08:57:11 2019 -0700
+@@ -346,7 +346,7 @@
+ static int IMA_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
+ {
+ 	struct IMA_ADPCM_decodestate *state;
+-	Uint8 *freeable, *encoded, *encoded_end, *decoded;
++	Uint8 *freeable, *encoded, *encoded_end, *decoded, *decoded_end;
+ 	Sint32 encoded_len, samplesleft;
+ 	unsigned int c, channels;
+ 
+@@ -373,6 +373,7 @@
+ 		return(-1);
+ 	}
+ 	decoded = *audio_buf;
++	decoded_end = decoded + *audio_len;
+ 
+ 	/* Get ready... Go! */
+ 	while ( encoded_len >= IMA_ADPCM_state.wavefmt.blockalign ) {
+@@ -392,6 +393,7 @@
+ 			}
+ 
+ 			/* Store the initial sample we start with */
++			if (decoded + 2 > decoded_end) goto invalid_size;
+ 			decoded[0] = (Uint8)(state[c].sample&0xFF);
+ 			decoded[1] = (Uint8)(state[c].sample>>8);
+ 			decoded += 2;
+@@ -402,6 +404,8 @@
+ 		while ( samplesleft > 0 ) {
+ 			for ( c=0; c<channels; ++c ) {
+ 				if (encoded + 4 > encoded_end) goto invalid_size;
++				if (decoded + 4 * 4 * channels > decoded_end)
++					goto invalid_size;
+ 				Fill_IMA_ADPCM_block(decoded, encoded,
+ 						c, channels, &state[c]);
+ 				encoded += 4;
+
+diff -r 4e73be7b4787 -r e52413f52586 src/audio/SDL_wave.c
+--- a/src/audio/SDL_wave.c	Sat Jun 01 18:27:46 2019 +0100
++++ b/src/audio/SDL_wave.c	Sat Jun 08 17:57:43 2019 -0700
+@@ -264,6 +264,14 @@
+ 	};
+ 	Sint32 delta, step;
+ 
++	/* Clamp index value. The inital value can be invalid. */
++	if ( state->index > 88 ) {
++		state->index = 88;
++	} else
++	if ( state->index < 0 ) {
++		state->index = 0;
++	}
++
+ 	/* Compute difference and new sample value */
+ 	step = step_table[state->index];
+ 	delta = step >> 3;
+@@ -275,12 +283,6 @@
+ 
+ 	/* Update index value */
+ 	state->index += index_table[nybble];
+-	if ( state->index > 88 ) {
+-		state->index = 88;
+-	} else
+-	if ( state->index < 0 ) {
+-		state->index = 0;
+-	}
+ 
+ 	/* Clamp output sample */
+ 	if ( state->sample > max_audioval ) {
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7574.patch b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7574.patch
new file mode 100644
index 0000000..9fd53da
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7574.patch
@@ -0,0 +1,68 @@
+# HG changeset patch
+# User Petr Písař <ppisar@redhat.com>
+# Date 1560181859 25200
+#      Mon Jun 10 08:50:59 2019 -0700
+# Branch SDL-1.2
+# Node ID a6e3d2f5183e1cc300ad993e10e9ce077e13bd9c
+# Parent  388987dff7bf8f1e214e69c2e4f1aa31e06396b5
+CVE-2019-7574: Fix a buffer overread in IMA_ADPCM_decode
+If data chunk was shorter than expected based on a WAV format
+definition, IMA_ADPCM_decode() tried to read past the data chunk
+buffer. This patch fixes it.
+
+CVE-2019-7574
+https://bugzilla.libsdl.org/show_bug.cgi?id=4496
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+
+CVE: CVE-2019-7574
+Upstream-Status: Backport
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+
+diff -r 388987dff7bf -r a6e3d2f5183e src/audio/SDL_wave.c
+--- a/src/audio/SDL_wave.c	Sat Jun 08 18:02:09 2019 -0700
++++ b/src/audio/SDL_wave.c	Mon Jun 10 08:50:59 2019 -0700
+@@ -331,7 +331,7 @@
+ static int IMA_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
+ {
+ 	struct IMA_ADPCM_decodestate *state;
+-	Uint8 *freeable, *encoded, *decoded;
++	Uint8 *freeable, *encoded, *encoded_end, *decoded;
+ 	Sint32 encoded_len, samplesleft;
+ 	unsigned int c, channels;
+ 
+@@ -347,6 +347,7 @@
+ 	/* Allocate the proper sized output buffer */
+ 	encoded_len = *audio_len;
+ 	encoded = *audio_buf;
++	encoded_end = encoded + encoded_len;
+ 	freeable = *audio_buf;
+ 	*audio_len = (encoded_len/IMA_ADPCM_state.wavefmt.blockalign) * 
+ 				IMA_ADPCM_state.wSamplesPerBlock*
+@@ -362,6 +363,7 @@
+ 	while ( encoded_len >= IMA_ADPCM_state.wavefmt.blockalign ) {
+ 		/* Grab the initial information for this block */
+ 		for ( c=0; c<channels; ++c ) {
++			if (encoded + 4 > encoded_end) goto invalid_size;
+ 			/* Fill the state information for this block */
+ 			state[c].sample = ((encoded[1]<<8)|encoded[0]);
+ 			encoded += 2;
+@@ -384,6 +386,7 @@
+ 		samplesleft = (IMA_ADPCM_state.wSamplesPerBlock-1)*channels;
+ 		while ( samplesleft > 0 ) {
+ 			for ( c=0; c<channels; ++c ) {
++				if (encoded + 4 > encoded_end) goto invalid_size;
+ 				Fill_IMA_ADPCM_block(decoded, encoded,
+ 						c, channels, &state[c]);
+ 				encoded += 4;
+@@ -395,6 +398,10 @@
+ 	}
+ 	SDL_free(freeable);
+ 	return(0);
++invalid_size:
++	SDL_SetError("Unexpected chunk length for an IMA ADPCM decoder");
++	SDL_free(freeable);
++	return(-1);
+ }
+ 
+ SDL_AudioSpec * SDL_LoadWAV_RW (SDL_RWops *src, int freesrc,
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7575.patch b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7575.patch
new file mode 100644
index 0000000..a3e8416
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7575.patch
@@ -0,0 +1,81 @@
+# HG changeset patch
+# User Petr Písař <ppisar@redhat.com>
+# Date 1560183905 25200
+#      Mon Jun 10 09:25:05 2019 -0700
+# Branch SDL-1.2
+# Node ID a936f9bd3e381d67d8ddee8b9243f85799ea4798
+# Parent  fcbecae427951bac1684baaba2ade68221315140
+CVE-2019-7575: Fix a buffer overwrite in MS_ADPCM_decode
+If a WAV format defines shorter audio stream and decoded MS ADPCM data chunk
+is longer, decoding continued past the output audio buffer.
+
+This fix is based on a patch from
+<https://bugzilla.libsdl.org/show_bug.cgi?id=4492>.
+
+https://bugzilla.libsdl.org/show_bug.cgi?id=4493
+CVE-2019-7575
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+
+CVE: CVE-2019-7575
+Upstream-Status: Backport
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+
+diff -r fcbecae42795 -r a936f9bd3e38 src/audio/SDL_wave.c
+--- a/src/audio/SDL_wave.c	Mon Jun 10 09:06:23 2019 -0700
++++ b/src/audio/SDL_wave.c	Mon Jun 10 09:25:05 2019 -0700
+@@ -122,7 +122,7 @@
+ static int MS_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
+ {
+ 	struct MS_ADPCM_decodestate *state[2];
+-	Uint8 *freeable, *encoded, *encoded_end, *decoded;
++	Uint8 *freeable, *encoded, *encoded_end, *decoded, *decoded_end;
+ 	Sint32 encoded_len, samplesleft;
+ 	Sint8 nybble, stereo;
+ 	Sint16 *coeff[2];
+@@ -142,6 +142,7 @@
+ 		return(-1);
+ 	}
+ 	decoded = *audio_buf;
++	decoded_end = decoded + *audio_len;
+ 
+ 	/* Get ready... Go! */
+ 	stereo = (MS_ADPCM_state.wavefmt.channels == 2);
+@@ -149,7 +150,7 @@
+ 	state[1] = &MS_ADPCM_state.state[stereo];
+ 	while ( encoded_len >= MS_ADPCM_state.wavefmt.blockalign ) {
+ 		/* Grab the initial information for this block */
+-		if (encoded + 7 + (stereo ? 7 : 0) > encoded_end) goto too_short;
++		if (encoded + 7 + (stereo ? 7 : 0) > encoded_end) goto invalid_size;
+ 		state[0]->hPredictor = *encoded++;
+ 		if ( stereo ) {
+ 			state[1]->hPredictor = *encoded++;
+@@ -179,6 +180,7 @@
+ 		coeff[1] = MS_ADPCM_state.aCoeff[state[1]->hPredictor];
+ 
+ 		/* Store the two initial samples we start with */
++		if (decoded + 4 + (stereo ? 4 : 0) > decoded_end) goto invalid_size;
+ 		decoded[0] = state[0]->iSamp2&0xFF;
+ 		decoded[1] = state[0]->iSamp2>>8;
+ 		decoded += 2;
+@@ -200,7 +202,8 @@
+ 		samplesleft = (MS_ADPCM_state.wSamplesPerBlock-2)*
+ 					MS_ADPCM_state.wavefmt.channels;
+ 		while ( samplesleft > 0 ) {
+-			if (encoded + 1 > encoded_end) goto too_short;
++			if (encoded + 1 > encoded_end) goto invalid_size;
++			if (decoded + 4 > decoded_end) goto invalid_size;
+ 
+ 			nybble = (*encoded)>>4;
+ 			new_sample = MS_ADPCM_nibble(state[0],nybble,coeff[0]);
+@@ -223,8 +226,8 @@
+ 	}
+ 	SDL_free(freeable);
+ 	return(0);
+-too_short:
+-	SDL_SetError("Too short chunk for a MS ADPCM decoder");
++invalid_size:
++	SDL_SetError("Unexpected chunk length for a MS ADPCM decoder");
+ 	SDL_free(freeable);
+ 	return(-1);
+ invalid_predictor:
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7576.patch b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7576.patch
new file mode 100644
index 0000000..d9a5052
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7576.patch
@@ -0,0 +1,80 @@
+# HG changeset patch
+# User Petr Písař <ppisar@redhat.com>
+# Date 1560182783 25200
+#      Mon Jun 10 09:06:23 2019 -0700
+# Branch SDL-1.2
+# Node ID fcbecae427951bac1684baaba2ade68221315140
+# Parent  a8afedbcaea0e84921dc770195c4699bda3ccdc5
+CVE-2019-7573, CVE-2019-7576: Fix buffer overreads in InitMS_ADPCM
+If MS ADPCM format chunk was too short, InitMS_ADPCM() parsing it
+could read past the end of chunk data. This patch fixes it.
+
+CVE-2019-7573
+https://bugzilla.libsdl.org/show_bug.cgi?id=4491
+CVE-2019-7576
+https://bugzilla.libsdl.org/show_bug.cgi?id=4490
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+
+CVE: CVE-2019-7573
+CVE: CVE-2019-7576
+Upstream-Status: Backport
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+
+diff -r a8afedbcaea0 -r fcbecae42795 src/audio/SDL_wave.c
+--- a/src/audio/SDL_wave.c	Mon Jun 10 08:57:11 2019 -0700
++++ b/src/audio/SDL_wave.c	Mon Jun 10 09:06:23 2019 -0700
+@@ -44,12 +44,13 @@
+ 	struct MS_ADPCM_decodestate state[2];
+ } MS_ADPCM_state;
+ 
+-static int InitMS_ADPCM(WaveFMT *format)
++static int InitMS_ADPCM(WaveFMT *format, int length)
+ {
+-	Uint8 *rogue_feel;
++	Uint8 *rogue_feel, *rogue_feel_end;
+ 	int i;
+ 
+ 	/* Set the rogue pointer to the MS_ADPCM specific data */
++	if (length < sizeof(*format)) goto too_short;
+ 	MS_ADPCM_state.wavefmt.encoding = SDL_SwapLE16(format->encoding);
+ 	MS_ADPCM_state.wavefmt.channels = SDL_SwapLE16(format->channels);
+ 	MS_ADPCM_state.wavefmt.frequency = SDL_SwapLE32(format->frequency);
+@@ -58,9 +59,11 @@
+ 	MS_ADPCM_state.wavefmt.bitspersample =
+ 					 SDL_SwapLE16(format->bitspersample);
+ 	rogue_feel = (Uint8 *)format+sizeof(*format);
++	rogue_feel_end = (Uint8 *)format + length;
+ 	if ( sizeof(*format) == 16 ) {
+ 		rogue_feel += sizeof(Uint16);
+ 	}
++	if (rogue_feel + 4 > rogue_feel_end) goto too_short;
+ 	MS_ADPCM_state.wSamplesPerBlock = ((rogue_feel[1]<<8)|rogue_feel[0]);
+ 	rogue_feel += sizeof(Uint16);
+ 	MS_ADPCM_state.wNumCoef = ((rogue_feel[1]<<8)|rogue_feel[0]);
+@@ -70,12 +73,16 @@
+ 		return(-1);
+ 	}
+ 	for ( i=0; i<MS_ADPCM_state.wNumCoef; ++i ) {
++		if (rogue_feel + 4 > rogue_feel_end) goto too_short;
+ 		MS_ADPCM_state.aCoeff[i][0] = ((rogue_feel[1]<<8)|rogue_feel[0]);
+ 		rogue_feel += sizeof(Uint16);
+ 		MS_ADPCM_state.aCoeff[i][1] = ((rogue_feel[1]<<8)|rogue_feel[0]);
+ 		rogue_feel += sizeof(Uint16);
+ 	}
+ 	return(0);
++too_short:
++	SDL_SetError("Unexpected length of a chunk with a MS ADPCM format");
++	return(-1);
+ }
+ 
+ static Sint32 MS_ADPCM_nibble(struct MS_ADPCM_decodestate *state,
+@@ -495,7 +502,7 @@
+ 			break;
+ 		case MS_ADPCM_CODE:
+ 			/* Try to understand this */
+-			if ( InitMS_ADPCM(format) < 0 ) {
++			if ( InitMS_ADPCM(format, lenread) < 0 ) {
+ 				was_error = 1;
+ 				goto done;
+ 			}
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7577.patch b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7577.patch
new file mode 100644
index 0000000..92e40ae
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7577.patch
@@ -0,0 +1,123 @@
+# HG changeset patch
+# User Petr Písař <ppisar@redhat.com>
+# Date 1560182051 25200
+#      Mon Jun 10 08:54:11 2019 -0700
+# Branch SDL-1.2
+# Node ID 416136310b88cbeeff8773e573e90ac1e22b3526
+# Parent  a6e3d2f5183e1cc300ad993e10e9ce077e13bd9c
+CVE-2019-7577: Fix a buffer overread in MS_ADPCM_decode
+If RIFF/WAV data chunk length is shorter then expected for an audio
+format defined in preceeding RIFF/WAV format headers, a buffer
+overread can happen.
+
+This patch fixes it by checking a MS ADPCM data to be decoded are not
+past the initialized buffer.
+
+CVE-2019-7577
+Reproducer: https://bugzilla.libsdl.org/show_bug.cgi?id=4492
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+
+# HG changeset patch
+# User Petr Písař <ppisar@redhat.com>
+# Date 1560182069 25200
+#      Mon Jun 10 08:54:29 2019 -0700
+# Branch SDL-1.2
+# Node ID faf9abbcfb5fe0d0ca23c4bf0394aa226ceccf02
+# Parent  416136310b88cbeeff8773e573e90ac1e22b3526
+CVE-2019-7577: Fix a buffer overread in MS_ADPCM_nibble and MS_ADPCM_decode
+If a chunk of RIFF/WAV file with MS ADPCM encoding contains an invalid
+predictor (a valid predictor's value is between 0 and 6 inclusive),
+a buffer overread can happen when the predictor is used as an index
+into an array of MS ADPCM coefficients.
+
+The overead happens when indexing MS_ADPCM_state.aCoeff[] array in
+MS_ADPCM_decode() and later when dereferencing a coef pointer in
+MS_ADPCM_nibble().
+
+This patch fixes it by checking the MS ADPCM predictor values fit
+into the valid range.
+
+CVE-2019-7577
+Reproducer: https://bugzilla.libsdl.org/show_bug.cgi?id=4492
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+
+CVE: CVE-2019-7577
+Upstream-Status: Backport
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+
+diff -r a6e3d2f5183e -r 416136310b88 src/audio/SDL_wave.c
+--- a/src/audio/SDL_wave.c	Mon Jun 10 08:50:59 2019 -0700
++++ b/src/audio/SDL_wave.c	Mon Jun 10 08:54:11 2019 -0700
+@@ -115,7 +115,7 @@
+ static int MS_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len)
+ {
+ 	struct MS_ADPCM_decodestate *state[2];
+-	Uint8 *freeable, *encoded, *decoded;
++	Uint8 *freeable, *encoded, *encoded_end, *decoded;
+ 	Sint32 encoded_len, samplesleft;
+ 	Sint8 nybble, stereo;
+ 	Sint16 *coeff[2];
+@@ -124,6 +124,7 @@
+ 	/* Allocate the proper sized output buffer */
+ 	encoded_len = *audio_len;
+ 	encoded = *audio_buf;
++	encoded_end = encoded + encoded_len;
+ 	freeable = *audio_buf;
+ 	*audio_len = (encoded_len/MS_ADPCM_state.wavefmt.blockalign) * 
+ 				MS_ADPCM_state.wSamplesPerBlock*
+@@ -141,6 +142,7 @@
+ 	state[1] = &MS_ADPCM_state.state[stereo];
+ 	while ( encoded_len >= MS_ADPCM_state.wavefmt.blockalign ) {
+ 		/* Grab the initial information for this block */
++		if (encoded + 7 + (stereo ? 7 : 0) > encoded_end) goto too_short;
+ 		state[0]->hPredictor = *encoded++;
+ 		if ( stereo ) {
+ 			state[1]->hPredictor = *encoded++;
+@@ -188,6 +190,8 @@
+ 		samplesleft = (MS_ADPCM_state.wSamplesPerBlock-2)*
+ 					MS_ADPCM_state.wavefmt.channels;
+ 		while ( samplesleft > 0 ) {
++			if (encoded + 1 > encoded_end) goto too_short;
++
+ 			nybble = (*encoded)>>4;
+ 			new_sample = MS_ADPCM_nibble(state[0],nybble,coeff[0]);
+ 			decoded[0] = new_sample&0xFF;
+@@ -209,6 +213,10 @@
+ 	}
+ 	SDL_free(freeable);
+ 	return(0);
++too_short:
++	SDL_SetError("Too short chunk for a MS ADPCM decoder");
++	SDL_free(freeable);
++	return(-1);
+ }
+ 
+ struct IMA_ADPCM_decodestate {
+
+
+diff -r 416136310b88 -r faf9abbcfb5f src/audio/SDL_wave.c
+--- a/src/audio/SDL_wave.c	Mon Jun 10 08:54:11 2019 -0700
++++ b/src/audio/SDL_wave.c	Mon Jun 10 08:54:29 2019 -0700
+@@ -147,6 +147,9 @@
+ 		if ( stereo ) {
+ 			state[1]->hPredictor = *encoded++;
+ 		}
++		if (state[0]->hPredictor >= 7 || state[1]->hPredictor >= 7) {
++			goto invalid_predictor;
++		}
+ 		state[0]->iDelta = ((encoded[1]<<8)|encoded[0]);
+ 		encoded += sizeof(Sint16);
+ 		if ( stereo ) {
+@@ -217,6 +220,10 @@
+ 	SDL_SetError("Too short chunk for a MS ADPCM decoder");
+ 	SDL_free(freeable);
+ 	return(-1);
++invalid_predictor:
++	SDL_SetError("Invalid predictor value for a MS ADPCM decoder");
++	SDL_free(freeable);
++	return(-1);
+ }
+ 
+ struct IMA_ADPCM_decodestate {
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7578.patch b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7578.patch
new file mode 100644
index 0000000..7028890
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7578.patch
@@ -0,0 +1,64 @@
+# HG changeset patch
+# User Petr Písař <ppisar@redhat.com>
+# Date 1560042129 25200
+#      Sat Jun 08 18:02:09 2019 -0700
+# Branch SDL-1.2
+# Node ID 388987dff7bf8f1e214e69c2e4f1aa31e06396b5
+# Parent  e52413f5258600878f9a10d2f92605a729aa8976
+CVE-2019-7578: Fix a buffer overread in InitIMA_ADPCM
+If IMA ADPCM format chunk was too short, InitIMA_ADPCM() parsing it
+could read past the end of chunk data. This patch fixes it.
+
+CVE-2019-7578
+https://bugzilla.libsdl.org/show_bug.cgi?id=4494
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+
+CVE: CVE-2019-7578
+Upstream-Status: Backport
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+
+diff -r e52413f52586 -r 388987dff7bf src/audio/SDL_wave.c
+--- a/src/audio/SDL_wave.c	Sat Jun 08 17:57:43 2019 -0700
++++ b/src/audio/SDL_wave.c	Sat Jun 08 18:02:09 2019 -0700
+@@ -222,11 +222,12 @@
+ 	struct IMA_ADPCM_decodestate state[2];
+ } IMA_ADPCM_state;
+ 
+-static int InitIMA_ADPCM(WaveFMT *format)
++static int InitIMA_ADPCM(WaveFMT *format, int length)
+ {
+-	Uint8 *rogue_feel;
++	Uint8 *rogue_feel, *rogue_feel_end;
+ 
+ 	/* Set the rogue pointer to the IMA_ADPCM specific data */
++	if (length < sizeof(*format)) goto too_short;
+ 	IMA_ADPCM_state.wavefmt.encoding = SDL_SwapLE16(format->encoding);
+ 	IMA_ADPCM_state.wavefmt.channels = SDL_SwapLE16(format->channels);
+ 	IMA_ADPCM_state.wavefmt.frequency = SDL_SwapLE32(format->frequency);
+@@ -235,11 +236,16 @@
+ 	IMA_ADPCM_state.wavefmt.bitspersample =
+ 					 SDL_SwapLE16(format->bitspersample);
+ 	rogue_feel = (Uint8 *)format+sizeof(*format);
++	rogue_feel_end = (Uint8 *)format + length;
+ 	if ( sizeof(*format) == 16 ) {
+ 		rogue_feel += sizeof(Uint16);
+ 	}
++	if (rogue_feel + 2 > rogue_feel_end) goto too_short;
+ 	IMA_ADPCM_state.wSamplesPerBlock = ((rogue_feel[1]<<8)|rogue_feel[0]);
+ 	return(0);
++too_short:
++	SDL_SetError("Unexpected length of a chunk with an IMA ADPCM format");
++	return(-1);
+ }
+ 
+ static Sint32 IMA_ADPCM_nibble(struct IMA_ADPCM_decodestate *state,Uint8 nybble)
+@@ -471,7 +477,7 @@
+ 			break;
+ 		case IMA_ADPCM_CODE:
+ 			/* Try to understand this */
+-			if ( InitIMA_ADPCM(format) < 0 ) {
++			if ( InitIMA_ADPCM(format, lenread) < 0 ) {
+ 				was_error = 1;
+ 				goto done;
+ 			}
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7635.patch b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7635.patch
new file mode 100644
index 0000000..78af1b0
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7635.patch
@@ -0,0 +1,63 @@
+# HG changeset patch
+# User Petr Písař <ppisar@redhat.com>
+# Date 1560259692 25200
+#      Tue Jun 11 06:28:12 2019 -0700
+# Branch SDL-1.2
+# Node ID f1f5878be5dbf63c1161a8ee52b8a86ece30e552
+# Parent  a936f9bd3e381d67d8ddee8b9243f85799ea4798
+CVE-2019-7635: Reject BMP images with pixel colors out the palette
+If a 1-, 4-, or 8-bit per pixel BMP image declares less used colors
+than the palette offers an SDL_Surface with a palette of the indicated
+number of used colors is created. If some of the image's pixel
+refer to a color number higher then the maximal used colors, a subsequent
+bliting operation on the surface will look up a color past a blit map
+(that is based on the palette) memory. I.e. passing such SDL_Surface
+to e.g. an SDL_DisplayFormat() function will result in a buffer overread in
+a blit function.
+
+This patch fixes it by validing each pixel's color to be less than the
+maximal color number in the palette. A validation failure raises an
+error from a SDL_LoadBMP_RW() function.
+
+CVE-2019-7635
+https://bugzilla.libsdl.org/show_bug.cgi?id=4498
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+
+CVE: CVE-2019-7635
+Upstream-Status: Backport
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+
+diff -r a936f9bd3e38 -r f1f5878be5db src/video/SDL_bmp.c
+--- a/src/video/SDL_bmp.c	Mon Jun 10 09:25:05 2019 -0700
++++ b/src/video/SDL_bmp.c	Tue Jun 11 06:28:12 2019 -0700
+@@ -308,6 +308,12 @@
+ 				}
+ 				*(bits+i) = (pixel>>shift);
+ 				pixel <<= ExpandBMP;
++				if ( bits[i] >= biClrUsed ) {
++					SDL_SetError(
++						"A BMP image contains a pixel with a color out of the palette");
++					was_error = SDL_TRUE;
++					goto done;
++				}
+ 			} }
+ 			break;
+ 
+@@ -318,6 +324,16 @@
+ 				was_error = SDL_TRUE;
+ 				goto done;
+ 			}
++			if ( 8 == biBitCount && palette && biClrUsed < (1 << biBitCount ) ) {
++				for ( i=0; i<surface->w; ++i ) {
++					if ( bits[i] >= biClrUsed ) {
++						SDL_SetError(
++							"A BMP image contains a pixel with a color out of the palette");
++						was_error = SDL_TRUE;
++						goto done;
++					}
++				}
++			}
+ #if SDL_BYTEORDER == SDL_BIG_ENDIAN
+ 			/* Byte-swap the pixels if needed. Note that the 24bpp
+ 			   case has already been taken care of above. */
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7637.patch b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7637.patch
new file mode 100644
index 0000000..c95338e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7637.patch
@@ -0,0 +1,192 @@
+# HG changeset patch
+# User Petr Písař <ppisar@redhat.com>
+# Date 1552788984 25200
+#      Sat Mar 16 19:16:24 2019 -0700
+# Branch SDL-1.2
+# Node ID 9b0e5c555c0f5ce6d2c3c19da6cc2c7fb5048bf2
+# Parent  4646533663ae1d80c2cc6b2d6dbfb37c62491c1e
+CVE-2019-7637: Fix in integer overflow in SDL_CalculatePitch
+If a too large width is passed to SDL_SetVideoMode() the width travels
+to SDL_CalculatePitch() where the width (e.g. 65535) is multiplied by
+BytesPerPixel (e.g. 4) and the result is stored into Uint16 pitch
+variable. During this arithmetics an integer overflow can happen (e.g.
+the value is clamped as 65532). As a result SDL_Surface with a pitch
+smaller than width * BytesPerPixel is created, too small pixel buffer
+is allocated and when the SDL_Surface is processed in SDL_FillRect()
+a buffer overflow occurs.
+
+This can be reproduced with "./graywin -width 21312312313123213213213"
+command.
+
+This patch fixes is by using a very careful arithmetics in
+SDL_CalculatePitch(). If an overflow is detected, an error is reported
+back as a special 0 value. We assume that 0-width surfaces do not
+occur in the wild. Since SDL_CalculatePitch() is a private function,
+we can change the semantics.
+
+CVE-2019-7637
+https://bugzilla.libsdl.org/show_bug.cgi?id=4497
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+
+CVE: CVE-2019-7637
+Upstream-Status: Backport
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+
+diff -r 4646533663ae -r 9b0e5c555c0f src/video/SDL_pixels.c
+--- a/src/video/SDL_pixels.c	Sat Mar 16 18:35:33 2019 -0700
++++ b/src/video/SDL_pixels.c	Sat Mar 16 19:16:24 2019 -0700
+@@ -286,26 +286,53 @@
+ 	}
+ }
+ /* 
+- * Calculate the pad-aligned scanline width of a surface
++ * Calculate the pad-aligned scanline width of a surface. Return 0 in case of
++ * an error.
+  */
+ Uint16 SDL_CalculatePitch(SDL_Surface *surface)
+ {
+-	Uint16 pitch;
++	unsigned int pitch = 0;
+ 
+ 	/* Surface should be 4-byte aligned for speed */
+-	pitch = surface->w*surface->format->BytesPerPixel;
++	/* The code tries to prevent from an Uint16 overflow. */;
++	for (Uint8 byte = surface->format->BytesPerPixel; byte; byte--) {
++		pitch += (unsigned int)surface->w;
++		if (pitch < surface->w) {
++			SDL_SetError("A scanline is too wide");
++			return(0);
++		}
++	}
+ 	switch (surface->format->BitsPerPixel) {
+ 		case 1:
+-			pitch = (pitch+7)/8;
++			if (pitch % 8) {
++				pitch = pitch / 8 + 1;
++			} else {
++				pitch = pitch / 8;
++			}
+ 			break;
+ 		case 4:
+-			pitch = (pitch+1)/2;
++			if (pitch % 2) {
++				pitch = pitch / 2 + 1;
++			} else {
++				pitch = pitch / 2;
++			}
+ 			break;
+ 		default:
+ 			break;
+ 	}
+-	pitch = (pitch + 3) & ~3;	/* 4-byte aligning */
+-	return(pitch);
++	/* 4-byte aligning */
++	if (pitch & 3) {
++		if (pitch + 3 < pitch) {
++			SDL_SetError("A scanline is too wide");
++			return(0);
++		}
++		pitch = (pitch + 3) & ~3;
++	}
++	if (pitch > 0xFFFF) {
++		SDL_SetError("A scanline is too wide");
++		return(0);
++	}
++	return((Uint16)pitch);
+ }
+ /*
+  * Match an RGB value to a particular palette index
+diff -r 4646533663ae -r 9b0e5c555c0f src/video/gapi/SDL_gapivideo.c
+--- a/src/video/gapi/SDL_gapivideo.c	Sat Mar 16 18:35:33 2019 -0700
++++ b/src/video/gapi/SDL_gapivideo.c	Sat Mar 16 19:16:24 2019 -0700
+@@ -733,6 +733,9 @@
+ 	video->w = gapi->w = width;
+ 	video->h = gapi->h = height;
+ 	video->pitch = SDL_CalculatePitch(video); 
++	if (!current->pitch) {
++		return(NULL);
++	}
+ 
+ 	/* Small fix for WinCE/Win32 - when activating window
+ 	   SDL_VideoSurface is equal to zero, so activating code
+diff -r 4646533663ae -r 9b0e5c555c0f src/video/nanox/SDL_nxvideo.c
+--- a/src/video/nanox/SDL_nxvideo.c	Sat Mar 16 18:35:33 2019 -0700
++++ b/src/video/nanox/SDL_nxvideo.c	Sat Mar 16 19:16:24 2019 -0700
+@@ -378,6 +378,10 @@
+         current -> w = width ;
+         current -> h = height ;
+         current -> pitch = SDL_CalculatePitch (current) ;
++        if (!current->pitch) {
++            current = NULL;
++            goto done;
++        }
+         NX_ResizeImage (this, current, flags) ;
+     }
+ 
+diff -r 4646533663ae -r 9b0e5c555c0f src/video/ps2gs/SDL_gsvideo.c
+--- a/src/video/ps2gs/SDL_gsvideo.c	Sat Mar 16 18:35:33 2019 -0700
++++ b/src/video/ps2gs/SDL_gsvideo.c	Sat Mar 16 19:16:24 2019 -0700
+@@ -479,6 +479,9 @@
+ 	current->w = width;
+ 	current->h = height;
+ 	current->pitch = SDL_CalculatePitch(current);
++	if (!current->pitch) {
++		return(NULL);
++	}
+ 
+ 	/* Memory map the DMA area for block memory transfer */
+ 	if ( ! mapped_mem ) {
+diff -r 4646533663ae -r 9b0e5c555c0f src/video/ps3/SDL_ps3video.c
+--- a/src/video/ps3/SDL_ps3video.c	Sat Mar 16 18:35:33 2019 -0700
++++ b/src/video/ps3/SDL_ps3video.c	Sat Mar 16 19:16:24 2019 -0700
+@@ -339,6 +339,9 @@
+ 	current->w = width;
+ 	current->h = height;
+ 	current->pitch = SDL_CalculatePitch(current);
++	if (!current->pitch) {
++		return(NULL);
++	}
+ 
+ 	/* Alloc aligned mem for current->pixels */
+ 	s_pixels = memalign(16, current->h * current->pitch);
+diff -r 4646533663ae -r 9b0e5c555c0f src/video/windib/SDL_dibvideo.c
+--- a/src/video/windib/SDL_dibvideo.c	Sat Mar 16 18:35:33 2019 -0700
++++ b/src/video/windib/SDL_dibvideo.c	Sat Mar 16 19:16:24 2019 -0700
+@@ -675,6 +675,9 @@
+ 	video->w = width;
+ 	video->h = height;
+ 	video->pitch = SDL_CalculatePitch(video);
++	if (!current->pitch) {
++		return(NULL);
++	}
+ 
+ 	/* Small fix for WinCE/Win32 - when activating window
+ 	   SDL_VideoSurface is equal to zero, so activating code
+diff -r 4646533663ae -r 9b0e5c555c0f src/video/windx5/SDL_dx5video.c
+--- a/src/video/windx5/SDL_dx5video.c	Sat Mar 16 18:35:33 2019 -0700
++++ b/src/video/windx5/SDL_dx5video.c	Sat Mar 16 19:16:24 2019 -0700
+@@ -1127,6 +1127,9 @@
+ 		video->w = width;
+ 		video->h = height;
+ 		video->pitch = SDL_CalculatePitch(video);
++		if (!current->pitch) {
++			return(NULL);
++		}
+ 
+ #ifndef NO_CHANGEDISPLAYSETTINGS
+ 		/* Set fullscreen mode if appropriate.
+diff -r 4646533663ae -r 9b0e5c555c0f src/video/x11/SDL_x11video.c
+--- a/src/video/x11/SDL_x11video.c	Sat Mar 16 18:35:33 2019 -0700
++++ b/src/video/x11/SDL_x11video.c	Sat Mar 16 19:16:24 2019 -0700
+@@ -1225,6 +1225,10 @@
+ 		current->w = width;
+ 		current->h = height;
+ 		current->pitch = SDL_CalculatePitch(current);
++		if (!current->pitch) {
++			current = NULL;
++			goto done;
++		}
+ 		if (X11_ResizeImage(this, current, flags) < 0) {
+ 			current = NULL;
+ 			goto done;
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7638.patch b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7638.patch
new file mode 100644
index 0000000..dab9aae
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-7638.patch
@@ -0,0 +1,38 @@
+# HG changeset patch
+# User Sam Lantinga <slouken@libsdl.org>
+# Date 1550504903 28800
+#      Mon Feb 18 07:48:23 2019 -0800
+# Branch SDL-1.2
+# Node ID 19d8c3b9c25143f71a34ff40ce1df91b4b3e3b78
+# Parent  8586f153eedec4c4e07066d6248ebdf67f10a229
+Fixed bug 4500 - Heap-Buffer Overflow in Map1toN pertaining to SDL_pixels.c
+
+Petr Pisar
+
+The reproducer has these data in BITMAPINFOHEADER:
+
+biSize = 40
+biBitCount = 8
+biClrUsed = 131075
+
+SDL_LoadBMP_RW() function passes biBitCount as a color depth to SDL_CreateRGBSurface(), thus 256-color pallete is allocated. But then biClrUsed colors are read from a file and stored into the palette. SDL_LoadBMP_RW should report an error if biClrUsed is greater than 2^biBitCount.
+
+CVE: CVE-2019-7638
+CVE: CVE-2019-7636
+Upstream-Status: Backport
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+
+diff -r 8586f153eede -r 19d8c3b9c251 src/video/SDL_bmp.c
+--- a/src/video/SDL_bmp.c	Sun Jan 13 15:27:50 2019 +0100
++++ b/src/video/SDL_bmp.c	Mon Feb 18 07:48:23 2019 -0800
+@@ -233,6 +233,10 @@
+ 	if ( palette ) {
+ 		if ( biClrUsed == 0 ) {
+ 			biClrUsed = 1 << biBitCount;
++		} else if ( biClrUsed > (1 << biBitCount) ) {
++			SDL_SetError("BMP file has an invalid number of colors");
++			was_error = SDL_TRUE;
++			goto done;
+ 		}
+ 		if ( biSize == 12 ) {
+ 			for ( i = 0; i < (int)biClrUsed; ++i ) {
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/libsdl-1.2.15-xdata32.patch b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/libsdl-1.2.15-xdata32.patch
new file mode 100644
index 0000000..f98b927
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/libsdl-1.2.15-xdata32.patch
@@ -0,0 +1,19 @@
+libX11-1.5.99.901 has changed prototype of _XData32
+
+Upstream-Status: Backport
+<http://bugzilla.libsdl.org/show_bug.cgi?id=1769>
+
+Signed-off-by: Saul Wold <sgw@linux.intel.com>
+
+diff -r b6b2829cd7ef src/video/x11/SDL_x11sym.h
+--- a/src/video/x11/SDL_x11sym.h	Wed Feb 27 15:20:31 2013 -0800
++++ b/src/video/x11/SDL_x11sym.h	Wed Mar 27 16:07:23 2013 +0100
+@@ -165,7 +165,7 @@
+  */
+ #ifdef LONG64
+ SDL_X11_MODULE(IO_32BIT)
+-SDL_X11_SYM(int,_XData32,(Display *dpy,register long *data,unsigned len),(dpy,data,len),return)
++SDL_X11_SYM(int,_XData32,(Display *dpy,register _Xconst long *data,unsigned len),(dpy,data,len),return)
+ SDL_X11_SYM(void,_XRead32,(Display *dpy,register long *data,long len),(dpy,data,len),)
+ #endif
+
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/pkgconfig.patch b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/pkgconfig.patch
new file mode 100644
index 0000000..913baa9
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/pkgconfig.patch
@@ -0,0 +1,187 @@
+Rather than code which doesn't even work properly when cross compiling,
+lets just use pkg-config instead. Its a little simpler.
+
+RP 2014/6/20
+
+Upstream-Status: Pending
+
+Index: SDL-1.2.15/sdl.m4
+===================================================================
+--- SDL-1.2.15.orig/sdl.m4
++++ SDL-1.2.15/sdl.m4
+@@ -12,174 +12,8 @@ dnl Test for SDL, and define SDL_CFLAGS
+ dnl
+ AC_DEFUN([AM_PATH_SDL],
+ [dnl 
+-dnl Get the cflags and libraries from the sdl-config script
+-dnl
+-AC_ARG_WITH(sdl-prefix,[  --with-sdl-prefix=PFX   Prefix where SDL is installed (optional)],
+-            sdl_prefix="$withval", sdl_prefix="")
+-AC_ARG_WITH(sdl-exec-prefix,[  --with-sdl-exec-prefix=PFX Exec prefix where SDL is installed (optional)],
+-            sdl_exec_prefix="$withval", sdl_exec_prefix="")
+-AC_ARG_ENABLE(sdltest, [  --disable-sdltest       Do not try to compile and run a test SDL program],
+-		    , enable_sdltest=yes)
+-
+-  if test x$sdl_exec_prefix != x ; then
+-    sdl_config_args="$sdl_config_args --exec-prefix=$sdl_exec_prefix"
+-    if test x${SDL_CONFIG+set} != xset ; then
+-      SDL_CONFIG=$sdl_exec_prefix/bin/sdl-config
+-    fi
+-  fi
+-  if test x$sdl_prefix != x ; then
+-    sdl_config_args="$sdl_config_args --prefix=$sdl_prefix"
+-    if test x${SDL_CONFIG+set} != xset ; then
+-      SDL_CONFIG=$sdl_prefix/bin/sdl-config
+-    fi
+-  fi
+-
+-  as_save_PATH="$PATH"
+-  if test "x$prefix" != xNONE; then
+-    PATH="$prefix/bin:$prefix/usr/bin:$PATH"
+-  fi
+-  AC_PATH_PROG(SDL_CONFIG, sdl-config, no, [$PATH])
+-  PATH="$as_save_PATH"
+   min_sdl_version=ifelse([$1], ,0.11.0,$1)
+-  AC_MSG_CHECKING(for SDL - version >= $min_sdl_version)
+-  no_sdl=""
+-  if test "$SDL_CONFIG" = "no" ; then
+-    no_sdl=yes
+-  else
+-    SDL_CFLAGS=`$SDL_CONFIG $sdl_config_args --cflags`
+-    SDL_LIBS=`$SDL_CONFIG $sdl_config_args --libs`
+-
+-    sdl_major_version=`$SDL_CONFIG $sdl_config_args --version | \
+-           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
+-    sdl_minor_version=`$SDL_CONFIG $sdl_config_args --version | \
+-           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
+-    sdl_micro_version=`$SDL_CONFIG $sdl_config_args --version | \
+-           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
+-    if test "x$enable_sdltest" = "xyes" ; then
+-      ac_save_CFLAGS="$CFLAGS"
+-      ac_save_CXXFLAGS="$CXXFLAGS"
+-      ac_save_LIBS="$LIBS"
+-      CFLAGS="$CFLAGS $SDL_CFLAGS"
+-      CXXFLAGS="$CXXFLAGS $SDL_CFLAGS"
+-      LIBS="$LIBS $SDL_LIBS"
+-dnl
+-dnl Now check if the installed SDL is sufficiently new. (Also sanity
+-dnl checks the results of sdl-config to some extent
+-dnl
+-      rm -f conf.sdltest
+-      AC_TRY_RUN([
+-#include <stdio.h>
+-#include <stdlib.h>
+-#include <string.h>
+-#include "SDL.h"
+-
+-char*
+-my_strdup (char *str)
+-{
+-  char *new_str;
+-  
+-  if (str)
+-    {
+-      new_str = (char *)malloc ((strlen (str) + 1) * sizeof(char));
+-      strcpy (new_str, str);
+-    }
+-  else
+-    new_str = NULL;
+-  
+-  return new_str;
+-}
+-
+-int main (int argc, char *argv[])
+-{
+-  int major, minor, micro;
+-  char *tmp_version;
+-
+-  /* This hangs on some systems (?)
+-  system ("touch conf.sdltest");
+-  */
+-  { FILE *fp = fopen("conf.sdltest", "a"); if ( fp ) fclose(fp); }
+-
+-  /* HP/UX 9 (%@#!) writes to sscanf strings */
+-  tmp_version = my_strdup("$min_sdl_version");
+-  if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
+-     printf("%s, bad version string\n", "$min_sdl_version");
+-     exit(1);
+-   }
+-
+-   if (($sdl_major_version > major) ||
+-      (($sdl_major_version == major) && ($sdl_minor_version > minor)) ||
+-      (($sdl_major_version == major) && ($sdl_minor_version == minor) && ($sdl_micro_version >= micro)))
+-    {
+-      return 0;
+-    }
+-  else
+-    {
+-      printf("\n*** 'sdl-config --version' returned %d.%d.%d, but the minimum version\n", $sdl_major_version, $sdl_minor_version, $sdl_micro_version);
+-      printf("*** of SDL required is %d.%d.%d. If sdl-config is correct, then it is\n", major, minor, micro);
+-      printf("*** best to upgrade to the required version.\n");
+-      printf("*** If sdl-config was wrong, set the environment variable SDL_CONFIG\n");
+-      printf("*** to point to the correct copy of sdl-config, and remove the file\n");
+-      printf("*** config.cache before re-running configure\n");
+-      return 1;
+-    }
+-}
+-
+-],, no_sdl=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
+-       CFLAGS="$ac_save_CFLAGS"
+-       CXXFLAGS="$ac_save_CXXFLAGS"
+-       LIBS="$ac_save_LIBS"
+-     fi
+-  fi
+-  if test "x$no_sdl" = x ; then
+-     AC_MSG_RESULT(yes)
+-     ifelse([$2], , :, [$2])     
+-  else
+-     AC_MSG_RESULT(no)
+-     if test "$SDL_CONFIG" = "no" ; then
+-       echo "*** The sdl-config script installed by SDL could not be found"
+-       echo "*** If SDL was installed in PREFIX, make sure PREFIX/bin is in"
+-       echo "*** your path, or set the SDL_CONFIG environment variable to the"
+-       echo "*** full path to sdl-config."
+-     else
+-       if test -f conf.sdltest ; then
+-        :
+-       else
+-          echo "*** Could not run SDL test program, checking why..."
+-          CFLAGS="$CFLAGS $SDL_CFLAGS"
+-          CXXFLAGS="$CXXFLAGS $SDL_CFLAGS"
+-          LIBS="$LIBS $SDL_LIBS"
+-          AC_TRY_LINK([
+-#include <stdio.h>
+-#include "SDL.h"
+-
+-int main(int argc, char *argv[])
+-{ return 0; }
+-#undef  main
+-#define main K_and_R_C_main
+-],      [ return 0; ],
+-        [ echo "*** The test program compiled, but did not run. This usually means"
+-          echo "*** that the run-time linker is not finding SDL or finding the wrong"
+-          echo "*** version of SDL. If it is not finding SDL, you'll need to set your"
+-          echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
+-          echo "*** to the installed location  Also, make sure you have run ldconfig if that"
+-          echo "*** is required on your system"
+-	  echo "***"
+-          echo "*** If you have an old version installed, it is best to remove it, although"
+-          echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"],
+-        [ echo "*** The test program failed to compile or link. See the file config.log for the"
+-          echo "*** exact error that occured. This usually means SDL was incorrectly installed"
+-          echo "*** or that you have moved SDL since it was installed. In the latter case, you"
+-          echo "*** may want to edit the sdl-config script: $SDL_CONFIG" ])
+-          CFLAGS="$ac_save_CFLAGS"
+-          CXXFLAGS="$ac_save_CXXFLAGS"
+-          LIBS="$ac_save_LIBS"
+-       fi
+-     fi
+-     SDL_CFLAGS=""
+-     SDL_LIBS=""
+-     ifelse([$3], , :, [$3])
+-  fi
++  PKG_CHECK_MODULES([SDL], [sdl >= $min_sdl_version])
+   AC_SUBST(SDL_CFLAGS)
+   AC_SUBST(SDL_LIBS)
+-  rm -f conf.sdltest
+ ])
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl_1.2.15.bb b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl_1.2.15.bb
new file mode 100644
index 0000000..7a01908
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl_1.2.15.bb
@@ -0,0 +1,83 @@
+SUMMARY = "Simple DirectMedia Layer"
+DESCRIPTION = "Simple DirectMedia Layer is a cross-platform multimedia \
+library designed to provide low level access to audio, keyboard, mouse, \
+joystick, 3D hardware via OpenGL, and 2D video framebuffer."
+HOMEPAGE = "http://www.libsdl.org"
+BUGTRACKER = "http://bugzilla.libsdl.org/"
+
+SECTION = "libs"
+
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=27818cd7fd83877a8e3ef82b82798ef4"
+
+PROVIDES = "virtual/libsdl"
+
+PR = "r3"
+
+SRC_URI = "http://www.libsdl.org/release/SDL-${PV}.tar.gz \
+           file://libsdl-1.2.15-xdata32.patch \
+           file://pkgconfig.patch \
+           file://0001-build-Pass-tag-CC-explictly-when-using-libtool.patch \
+           file://CVE-2019-7577.patch \
+           file://CVE-2019-7574.patch \
+           file://CVE-2019-7572.patch \
+           file://CVE-2019-7578.patch \
+           file://CVE-2019-7575.patch \
+           file://CVE-2019-7635.patch \
+           file://CVE-2019-7637.patch \
+           file://CVE-2019-7638.patch \
+           file://CVE-2019-7576.patch \
+          "
+
+UPSTREAM_CHECK_REGEX = "SDL-(?P<pver>\d+(\.\d+)+)\.tar"
+
+S = "${WORKDIR}/SDL-${PV}"
+
+SRC_URI[md5sum] = "9d96df8417572a2afb781a7c4c811a85"
+SRC_URI[sha256sum] = "d6d316a793e5e348155f0dd93b979798933fb98aa1edebcc108829d6474aad00"
+
+BINCONFIG = "${bindir}/sdl-config"
+
+inherit autotools lib_package binconfig-disabled pkgconfig
+
+CVE_PRODUCT = "simple_directmedia_layer sdl"
+
+EXTRA_OECONF = "--disable-static --enable-cdrom --enable-threads --enable-timers \
+                --enable-file --disable-oss --disable-esd --disable-arts \
+                --disable-diskaudio --disable-nas \
+                --disable-mintaudio --disable-nasm --disable-video-dga \
+                --disable-video-fbcon --disable-video-ps2gs --disable-video-ps3 \
+                --disable-xbios --disable-gem --disable-video-dummy \
+                --enable-input-events --enable-pthreads \
+                --disable-video-svga \
+                --disable-video-picogui --disable-video-qtopia --enable-sdl-dlopen \
+                --disable-rpath"
+
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'alsa directfb pulseaudio x11', d)} \
+                   ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'opengl', '', d)}"
+PACKAGECONFIG_class-native = "x11"
+PACKAGECONFIG_class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
+
+PACKAGECONFIG[alsa] = "--enable-alsa --disable-alsatest,--disable-alsa,alsa-lib"
+PACKAGECONFIG[pulseaudio] = "--enable-pulseaudio,--disable-pulseaudio,pulseaudio"
+PACKAGECONFIG[tslib] = "--enable-input-tslib, --disable-input-tslib, tslib"
+PACKAGECONFIG[directfb] = "--enable-video-directfb, --disable-video-directfb, directfb"
+PACKAGECONFIG[opengl] = "--enable-video-opengl, --disable-video-opengl, virtual/libgl libglu"
+PACKAGECONFIG[x11] = "--enable-video-x11 --disable-x11-shared, --disable-video-x11, virtual/libx11 libxext libxrandr libxrender"
+
+# The following two options should only enabled with mingw support
+PACKAGECONFIG[stdio-redirect] = "--enable-stdio-redirect,--disable-stdio-redirect"
+PACKAGECONFIG[directx] = "--enable-directx,--disable-directx"
+
+EXTRA_AUTORECONF += "--include=acinclude --exclude=autoheader"
+
+do_configure_prepend() {
+        # Remove old libtool macros.
+        MACROS="libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4"
+        for i in ${MACROS}; do
+               rm -f ${S}/acinclude/$i
+        done
+        export SYSROOT=$PKG_CONFIG_SYSROOT_DIR
+}
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver_git.bb b/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver_0.9.12.bb
similarity index 90%
rename from meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver_git.bb
rename to meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver_0.9.12.bb
index bc47a3f..4e4acb8 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver_git.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver_0.9.12.bb
@@ -31,7 +31,9 @@
 inherit cmake
 
 SRC_URI = "git://github.com/LibVNC/libvncserver"
-SRCREV = "c0a23857a5c42b45b6d22ccf7218becd1fa69402"
-PV = "0.9.12+git${SRCPV}"
+SRCREV = "1354f7f1bb6962dab209eddb9d6aac1f03408110"
+PV .= "+git${SRCPV}"
 
 S = "${WORKDIR}/git"
+
+EXTRA_OECMAKE = "-DMAKE_INSTALL_LIBDIR=${libdir}"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/x11vnc/x11vnc_0.9.16.bb b/meta-openembedded/meta-oe/recipes-graphics/x11vnc/x11vnc_0.9.16.bb
index 1aace02..e4a0321 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/x11vnc/x11vnc_0.9.16.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/x11vnc/x11vnc_0.9.16.bb
@@ -7,13 +7,12 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
                     file://src/x11vnc.h;endline=31;md5=e871a2ad004776794b616822dcab6314"
 
-SRC_URI = "https://github.com/LibVNC/x11vnc/archive/${PV}.tar.gz;downloadfilename=x11vnc-${PV}.tar.gz\
+SRCREV = "4ca006fed80410bd9b061a1519bd5d9366bb0bc8"
+SRC_URI = "git://github.com/LibVNC/x11vnc \
            file://starting-fix.patch \
 	   file://0001-misc-Makefile.am-don-t-install-Xdummy-when-configure.patch \
 "
-
-SRC_URI[md5sum] = "64172e8f896389ec963fff93415f0d93"
-SRC_URI[sha256sum] = "885e5b5f5f25eec6f9e4a1e8be3d0ac71a686331ee1cfb442dba391111bd32bd"
+S = "${WORKDIR}/git"
 
 DEPENDS = "\
 	jpeg \
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/sessreg_1.1.1.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/sessreg_1.1.2.bb
similarity index 73%
rename from meta-openembedded/meta-oe/recipes-graphics/xorg-app/sessreg_1.1.1.bb
rename to meta-openembedded/meta-oe/recipes-graphics/xorg-app/sessreg_1.1.2.bb
index d2afa78..ad6bd17 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/sessreg_1.1.1.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/sessreg_1.1.2.bb
@@ -4,8 +4,8 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://COPYING;md5=d938a70c8280c265a1ccd2954365d185"
 SRC_URI += "file://0001-Makefile.am-Error-Fix.patch"
-SRC_URI[md5sum] = "e475167a892b589da23edf8edf8c942d"
-SRC_URI[sha256sum] = "78a76ae3f3f6a26547a34630d1b740f42344848b5fb6d7c9c7f7da255e35a6e1"
+SRC_URI[md5sum] = "92be564d4be7d8aa7b5024057b715210"
+SRC_URI[sha256sum] = "dfcb9e954273ace63879aec053c7880466f8755752a35aa9ced3fa5f04fd2c33"
 
 CFLAGS_append_libc-musl = " -D_WTMPX_FILE=WTMP_FILE -D_PATH_WTMPX=_PATH_WTMP -D_UTMPX_FILE=UTMP_FILE -D_PATH_UTMPX=_PATH_UTMP "
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/setxkbmap_1.3.1.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/setxkbmap_1.3.2.bb
similarity index 78%
rename from meta-openembedded/meta-oe/recipes-graphics/xorg-app/setxkbmap_1.3.1.bb
rename to meta-openembedded/meta-oe/recipes-graphics/xorg-app/setxkbmap_1.3.2.bb
index 8402753..30fbd1b8 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/setxkbmap_1.3.1.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/setxkbmap_1.3.2.bb
@@ -15,5 +15,5 @@
 
 BBCLASSEXTEND = "native"
 
-SRC_URI[md5sum] = "2c47a1b8e268df73963c4eb2316b1a89"
-SRC_URI[sha256sum] = "a9ddb3963f263ba13f0ea105d8c45a531832140530217cc559587bb94f02d3e1"
+SRC_URI[md5sum] = "93e736c98fb75856ee8227a0c49a128d"
+SRC_URI[sha256sum] = "8ff27486442725e50b02d7049152f51d125ecad71b7ce503cfa09d5d8ceeb9f5"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_330.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_348.bb
similarity index 70%
rename from meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_330.bb
rename to meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_348.bb
index c2feb81..2dd8322 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_330.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xterm_348.bb
@@ -2,12 +2,12 @@
 SUMMARY = "xterm is the standard terminal emulator for the X Window System"
 DEPENDS = "libxaw xorgproto libxext libxau libxinerama libxpm ncurses"
 
-LIC_FILES_CHKSUM = "file://xterm.h;beginline=3;endline=31;md5=f02ab9ebda87b770ecf711dbb3784a33"
+LIC_FILES_CHKSUM = "file://xterm.h;beginline=3;endline=31;md5=c7faceb872d90115e7c0ad90e90c390d"
 
 SRC_URI = "http://invisible-mirror.net/archives/${BPN}/${BP}.tgz"
 
-SRC_URI[md5sum] = "9a6db7974aa4ccbb50eabebf72618467"
-SRC_URI[sha256sum] = "7aeef9f29f6b95e09f481173c8c3053357bf5ffe162585647f690fd1707556df"
+SRC_URI[md5sum] = "05340ef6eabb96826953346c64b35225"
+SRC_URI[sha256sum] = "8b1f5121dbf3690de9d85a3b9329e3357021705dd7c21da192e47542769275be"
 PACKAGECONFIG ?= ""
 PACKAGECONFIG[xft] = "--enable-freetype,--disable-freetype,libxft fontconfig freetype-native"
 
@@ -16,7 +16,9 @@
                  FREETYPE_CONFIG=${STAGING_BINDIR_CROSS}/freetype-config \
                  --disable-imake \
                  --disable-rpath-hack \
-                 --disable-setuid"
+                 --disable-setuid \
+                 --with-app-defaults=${datadir}/X11/app-defaults \
+                 "
 
 B = "${S}"
 
@@ -26,8 +28,6 @@
     oe_runconf
 }
 
-FILES_${PN} += "/usr/lib/X11"
-
 # busybox can supply resize too
 inherit update-alternatives
 
diff --git a/meta-openembedded/meta-oe/recipes-kernel/crash/crash_7.2.5.bb b/meta-openembedded/meta-oe/recipes-kernel/crash/crash_7.2.6.bb
similarity index 97%
rename from meta-openembedded/meta-oe/recipes-kernel/crash/crash_7.2.5.bb
rename to meta-openembedded/meta-oe/recipes-kernel/crash/crash_7.2.6.bb
index e124db1..0a7c384 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/crash/crash_7.2.5.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/crash/crash_7.2.6.bb
@@ -14,7 +14,7 @@
 
 S = "${WORKDIR}/git"
 SRC_URI = "git://github.com/crash-utility/${BPN}.git \
-           http://ftp.gnu.org/gnu/gdb/gdb-7.6.tar.gz;name=gdb;subdir=git \
+           ${GNU_MIRROR}/gdb/gdb-7.6.tar.gz;name=gdb;subdir=git \
            file://7001force_define_architecture.patch \
            file://7003cross_ranlib.patch \
            file://0001-cross_add_configure_option.patch \
@@ -26,7 +26,7 @@
            file://0002-crash-fix-build-error-unknown-type-name-gdb_fpregset.patch \
            file://0003-crash-detect-the-sysroot-s-glibc-header-file.patch \
            "
-SRCREV = "c0a2fc9d322cf0c5f569ce54e9201d2f586edb0c"
+SRCREV = "4076ebea6626e3f0a20150602c6ffab999ea5c90"
 
 SRC_URI[gdb.md5sum] = "a9836707337e5f7bf76a009a8904f470"
 SRC_URI[gdb.sha256sum] = "8070389a5dcc104eb0be483d582729f98ed4d761ad19cedd3f17b5d2502faa36"
diff --git a/meta-openembedded/meta-oe/recipes-kernel/kernel-selftest/kernel-selftest.bb b/meta-openembedded/meta-oe/recipes-kernel/kernel-selftest/kernel-selftest.bb
index 181e97c..7370f9f 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/kernel-selftest/kernel-selftest.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/kernel-selftest/kernel-selftest.bb
@@ -121,3 +121,14 @@
 RDEPENDS_${PN} += "python3"
 # tools/testing/selftests/vm/Makefile doesn't respect LDFLAGS and tools/testing/selftests/Makefile explicitly overrides to empty
 INSANE_SKIP_${PN} += "ldflags"
+
+# userfaultfd.c:126:2: error: format not a string literal and no format arguments [-Werror=format-security]
+#  fprintf(stderr, examples);
+#  ^~~~~~~
+SECURITY_STRINGFORMAT = ""
+
+# https://errors.yoctoproject.org/Errors/Details/261657/
+# kernel-selftest/1.0-r0/recipe-sysroot/usr/include/bits/fcntl2.h:50:4: error: call to '__open_missing_mode' declared with attribute error: open with O_CREAT or O_TMPFILE in second argument needs 3 arguments
+#     __open_missing_mode ();
+#     ^~~~~~~~~~~~~~~~~~~~~~
+lcl_maybe_fortify = ""
diff --git a/meta-openembedded/meta-oe/recipes-kernel/kpatch/kpatch.inc b/meta-openembedded/meta-oe/recipes-kernel/kpatch/kpatch.inc
index cd819f3..1f70f72 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/kpatch/kpatch.inc
+++ b/meta-openembedded/meta-oe/recipes-kernel/kpatch/kpatch.inc
@@ -15,7 +15,9 @@
 	LIBDIR=${D}${libdir} \
 	MANDIR=${D}${mandir}/man1 \
 	SYSTEMDDIR=${D}${systemd_system_unitdir} \
+	UPSTARTDIR=${D}${sysconfdir}/init \
 	DESTDIR=${D} \
+	ARCH=${TARGET_ARCH} \
 	BUILDMOD=no \
 	CC='${CC}' \
 	"
diff --git a/meta-openembedded/meta-oe/recipes-kernel/kpatch/kpatch/0001-kpatch-build-add-cross-compilation-support.patch b/meta-openembedded/meta-oe/recipes-kernel/kpatch/kpatch/0001-kpatch-build-add-cross-compilation-support.patch
index ab3b127..348d82a 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/kpatch/kpatch/0001-kpatch-build-add-cross-compilation-support.patch
+++ b/meta-openembedded/meta-oe/recipes-kernel/kpatch/kpatch/0001-kpatch-build-add-cross-compilation-support.patch
@@ -1,6 +1,6 @@
-From 70de3fecbc551907c4fd504cfff385c73be8db75 Mon Sep 17 00:00:00 2001
-From: Ruslan Bilovol <rbilovol@cisco.com>
-Date: Tue, 19 Dec 2017 15:59:04 +0200
+From 21909e3f9096fa8e4825df8c65114ee92ab3d532 Mon Sep 17 00:00:00 2001
+From: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
+Date: Wed, 7 Aug 2019 02:57:35 +0900
 Subject: [PATCH] kpatch-build: add cross-compilation support
 
 This patch introduces new option for kpatch-build
@@ -17,44 +17,45 @@
 Upstream-Status: Pending
 
 Signed-off-by: Ruslan Bilovol <rbilovol@cisco.com>
-
 ---
  kpatch-build/kpatch-build | 13 +++++++++++--
  kpatch-build/kpatch-gcc   |  4 ++--
  2 files changed, 13 insertions(+), 4 deletions(-)
 
 diff --git a/kpatch-build/kpatch-build b/kpatch-build/kpatch-build
-index a76913f..4a011aa 100755
+index 9ef3809..463dab1 100755
 --- a/kpatch-build/kpatch-build
 +++ b/kpatch-build/kpatch-build
-@@ -197,7 +197,7 @@ gcc_version_check() {
+@@ -198,7 +198,7 @@ gcc_version_check() {
  	# gcc --version varies between distributions therefore extract version
  	# by compiling a test file and compare it to vmlinux's version.
  	echo 'void main(void) {}' > "$c"
 -	out="$(gcc -c -pg -ffunction-sections -o "$o" "$c" 2>&1)"
 +	out="$(${KPATCH_CROSS_COMPILE}gcc -c -pg -ffunction-sections -o "$o" "$c" 2>&1)"
  	gccver="$(gcc_version_from_file "$o")"
- 	kgccver="$(gcc_version_from_file "$VMLINUX")"
- 	rm -f "$c" "$o"
-@@ -392,12 +392,14 @@ usage() {
- 	echo "		-d, --debug        Enable 'xtrace' and keep scratch files" >&2
- 	echo "		                   in <CACHEDIR>/tmp" >&2
+ 	if [[ -n "$OOT_MODULE" ]]; then
+ 		kgccver="$(gcc_version_from_file "$OOT_MODULE")"
+@@ -411,6 +411,8 @@ usage() {
  	echo "		                   (can be specified multiple times)" >&2
+ 	echo "		-e, --oot-module   Enable patching out-of-tree module," >&2
+ 	echo "		                   specify current version of module" >&2
 +	echo "		--cross-compile    Specify the prefix used for all executables" >&2
 +	echo "		                   used during compilation" >&2
  	echo "		--skip-cleanup     Skip post-build cleanup" >&2
- 	echo "		--skip-gcc-check   Skip gcc version matching check" >&2
+	echo "		--skip-gcc-check   Skip gcc version matching check" >&2
+	echo "		                   (not recommended)" >&2
+@@ -416,7 +418,7 @@ usage() {
  	echo "		                   (not recommended)" >&2
  }
  
--options="$(getopt -o ha:r:s:c:v:j:t:n:o:d -l "help,archversion:,sourcerpm:,sourcedir:,config:,vmlinux:,jobs:,target:,name:,output:,debug,skip-gcc-check,skip-cleanup" -- "$@")" || die "getopt failed"
-+options="$(getopt -o ha:r:s:c:v:j:t:n:o:d -l "help,archversion:,sourcerpm:,sourcedir:,config:,vmlinux:,jobs:,target:,name:,output:,debug,cross-compile:,skip-gcc-check,skip-cleanup" -- "$@")" || die "getopt failed"
+-options="$(getopt -o ha:r:s:c:v:j:t:n:o:de: -l "help,archversion:,sourcerpm:,sourcedir:,config:,vmlinux:,jobs:,target:,name:,output:,oot-module:,debug,skip-gcc-check,skip-cleanup" -- "$@")" || die "getopt failed"
++options="$(getopt -o ha:r:s:c:v:j:t:n:o:de: -l "help,archversion:,sourcerpm:,sourcedir:,config:,vmlinux:,jobs:,target:,name:,output:,oot-module:,debug,cross-compile:,skip-gcc-check,skip-cleanup" -- "$@")" || die "getopt failed"
  
  eval set -- "$options"
  
-@@ -455,6 +457,10 @@ while [[ $# -gt 0 ]]; do
- 			echo "DEBUG mode enabled"
- 		fi
+@@ -479,6 +481,10 @@ while [[ $# -gt 0 ]]; do
+ 		OOT_MODULE="$(readlink -f "$2")"
+ 		shift
  		;;
 +	--cross-compile)
 +		KPATCH_CROSS_COMPILE="$2"
@@ -63,17 +64,17 @@
  	--skip-cleanup)
  		echo "Skipping cleanup"
  		SKIPCLEANUP=1
-@@ -710,6 +716,8 @@ if [[ $DEBUG -ge 4 ]]; then
+@@ -757,6 +763,8 @@ if [[ $DEBUG -ge 4 ]]; then
  	export KPATCH_GCC_DEBUG=1
  fi
  
 +export KPATCH_CROSS_COMPILE
 +
- echo "Building original kernel"
- ./scripts/setlocalversion --save-scmversion || die
+ echo "Building original source"
+ [[ -n "$OOT_MODULE" ]] || ./scripts/setlocalversion --save-scmversion || die
  unset KPATCH_GCC_TEMPDIR
-@@ -874,6 +882,7 @@ cd "$TEMPDIR/patch" || die
- KPATCH_BUILD="$SRCDIR" KPATCH_NAME="$MODNAME" \
+@@ -940,6 +948,7 @@ fi
+ KPATCH_BUILD="$KPATCH_BUILD" KPATCH_NAME="$MODNAME" \
  KBUILD_EXTRA_SYMBOLS="$KBUILD_EXTRA_SYMBOLS" \
  KPATCH_LDFLAGS="$KPATCH_LDFLAGS" \
 +CROSS_COMPILE="$KPATCH_CROSS_COMPILE" \
@@ -81,7 +82,7 @@
  
  if ! "$KPATCH_MODULE"; then
 diff --git a/kpatch-build/kpatch-gcc b/kpatch-build/kpatch-gcc
-index 2d56da1..59a4255 100755
+index 9663290..56e6c8f 100755
 --- a/kpatch-build/kpatch-gcc
 +++ b/kpatch-build/kpatch-gcc
 @@ -8,7 +8,7 @@ TOOLCHAINCMD="$1"
@@ -93,9 +94,12 @@
  fi
  
  declare -a args=("$@")
-@@ -82,4 +82,4 @@ elif [[ "$TOOLCHAINCMD" = "ld" ]] ; then
+@@ -84,4 +84,4 @@ elif [[ "$TOOLCHAINCMD" = "ld" ]] ; then
  	done
  fi
  
 -exec "$TOOLCHAINCMD" "${args[@]}"
 +exec ${KPATCH_CROSS_COMPILE}${TOOLCHAINCMD} "${args[@]}"
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/kpatch/kpatch/0002-kpatch-build-allow-overriding-of-distro-name.patch b/meta-openembedded/meta-oe/recipes-kernel/kpatch/kpatch/0002-kpatch-build-allow-overriding-of-distro-name.patch
index 13cdc6b..603a147 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/kpatch/kpatch/0002-kpatch-build-allow-overriding-of-distro-name.patch
+++ b/meta-openembedded/meta-oe/recipes-kernel/kpatch/kpatch/0002-kpatch-build-allow-overriding-of-distro-name.patch
@@ -1,6 +1,6 @@
-From 15838a86d5ea94fa05976ea32fd847b18261b403 Mon Sep 17 00:00:00 2001
-From: Ruslan Bilovol <rbilovol@cisco.com>
-Date: Tue, 2 Jan 2018 14:50:03 +0200
+From 4143fa0092fe4cafee10b24a97d3ad0b41ab7a30 Mon Sep 17 00:00:00 2001
+From: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
+Date: Wed, 7 Aug 2019 03:24:39 +0900
 Subject: [PATCH] kpatch-build: allow overriding of distro name
 
 It is sometimes useful to have ability to override
@@ -14,17 +14,16 @@
 Upstream-Status: Pending
 
 Signed-off-by: Ruslan Bilovol <rbilovol@cisco.com>
-
 ---
  kpatch-build/kpatch-build | 9 +++++++--
  1 file changed, 7 insertions(+), 2 deletions(-)
 
 diff --git a/kpatch-build/kpatch-build b/kpatch-build/kpatch-build
-index 4a011aa..eb6cd64 100755
+index 39933fc..c0258a2 100755
 --- a/kpatch-build/kpatch-build
 +++ b/kpatch-build/kpatch-build
-@@ -394,12 +394,13 @@ usage() {
- 	echo "		                   (can be specified multiple times)" >&2
+@@ -413,12 +413,13 @@ usage() {
+ 	echo "		                   specify current version of module" >&2
  	echo "		--cross-compile    Specify the prefix used for all executables" >&2
  	echo "		                   used during compilation" >&2
 +	echo "		--distro           Override distro name" >&2
@@ -33,12 +32,12 @@
  	echo "		                   (not recommended)" >&2
  }
  
--options="$(getopt -o ha:r:s:c:v:j:t:n:o:d -l "help,archversion:,sourcerpm:,sourcedir:,config:,vmlinux:,jobs:,target:,name:,output:,debug,cross-compile:,skip-gcc-check,skip-cleanup" -- "$@")" || die "getopt failed"
-+options="$(getopt -o ha:r:s:c:v:j:t:n:o:d -l "help,archversion:,sourcerpm:,sourcedir:,config:,vmlinux:,jobs:,target:,name:,output:,debug,cross-compile:,distro:,skip-gcc-check,skip-cleanup" -- "$@")" || die "getopt failed"
+-options="$(getopt -o ha:r:s:c:v:j:t:n:o:de: -l "help,archversion:,sourcerpm:,sourcedir:,config:,vmlinux:,jobs:,target:,name:,output:,oot-module:,debug,cross-compile:,skip-gcc-check,skip-cleanup" -- "$@")" || die "getopt failed"
++options="$(getopt -o ha:r:s:c:v:j:t:n:o:de: -l "help,archversion:,sourcerpm:,sourcedir:,config:,vmlinux:,jobs:,target:,name:,output:,oot-module:,debug,cross-compile:,distro:,skip-gcc-check,skip-cleanup" -- "$@")" || die "getopt failed"
  
  eval set -- "$options"
  
-@@ -461,6 +462,10 @@ while [[ $# -gt 0 ]]; do
+@@ -485,6 +486,10 @@ while [[ $# -gt 0 ]]; do
  		KPATCH_CROSS_COMPILE="$2"
  		shift
  		;;
@@ -49,7 +48,7 @@
  	--skip-cleanup)
  		echo "Skipping cleanup"
  		SKIPCLEANUP=1
-@@ -539,7 +544,7 @@ fi
+@@ -571,7 +576,7 @@ fi
  # Don't check external file.
  # shellcheck disable=SC1091
  source /etc/os-release
@@ -58,3 +57,6 @@
  if [[ "$DISTRO" = fedora ]] || [[ "$DISTRO" = rhel ]] || [[ "$DISTRO" = ol ]] || [[ "$DISTRO" = centos ]]; then
  	[[ -z "$VMLINUX" ]] && VMLINUX="/usr/lib/debug/lib/modules/$ARCHVERSION/vmlinux"
  	[[ -e "$VMLINUX" ]] || die "kernel-debuginfo-$ARCHVERSION not installed"
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/kpatch/kpatch_git.bb b/meta-openembedded/meta-oe/recipes-kernel/kpatch/kpatch_git.bb
index 024cca6..dc24794 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/kpatch/kpatch_git.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/kpatch/kpatch_git.bb
@@ -2,9 +2,9 @@
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
 
-SRCREV = "7f550f01bd308cf058ae782327d29c8916cc5602"
+SRCREV = "d7c5810e2a6acacfa5fec1e38d2f75af8e8c818c"
 
-PV = "0.6.1+git${SRCPV}"
+PV = "0.7.1+git${SRCPV}"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0001-makedumpfile-replace-hardcode-CFLAGS.patch b/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0001-makedumpfile-replace-hardcode-CFLAGS.patch
index a478065..c0f82f3 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0001-makedumpfile-replace-hardcode-CFLAGS.patch
+++ b/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0001-makedumpfile-replace-hardcode-CFLAGS.patch
@@ -1,4 +1,4 @@
-From 8eeb1b15608ce1a9a1f0d5417938fd6da4504406 Mon Sep 17 00:00:00 2001
+From af97e2ad643334b4c7c3d66f971ce9ebb2b596af Mon Sep 17 00:00:00 2001
 From: Mingli Yu <mingli.yu@windriver.com>
 Date: Thu, 21 Jul 2016 18:06:21 +0800
 Subject: [PATCH] makedumpfile: replace hardcode CFLAGS
@@ -13,30 +13,28 @@
 Upstream-Status: Inappropriate[oe specific]
 
 Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
-
 ---
- Makefile | 46 +++++++++++++++++++++++-----------------------
- 1 file changed, 23 insertions(+), 23 deletions(-)
+ Makefile | 45 +++++++++++++++++++++++----------------------
+ 1 file changed, 23 insertions(+), 22 deletions(-)
 
 diff --git a/Makefile b/Makefile
-index 612b9d0..f6d6265 100644
+index 1fdb628..5dce589 100644
 --- a/Makefile
 +++ b/Makefile
-@@ -8,13 +8,6 @@ ifeq ($(strip $CC),)
+@@ -8,12 +8,6 @@ ifeq ($(strip $CC),)
  CC	= gcc
  endif
  
--CFLAGS = -g -O2 -Wall -D_FILE_OFFSET_BITS=64 \
--	  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE \
--	  -DVERSION='"$(VERSION)"' -DRELEASE_DATE='"$(DATE)"'
--CFLAGS_ARCH	= -g -O2 -Wall -D_FILE_OFFSET_BITS=64 \
--		    -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
+-CFLAGS_BASE := $(CFLAGS) -g -O2 -Wall -D_FILE_OFFSET_BITS=64 \
+-		-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
+-CFLAGS      := $(CFLAGS_BASE) -DVERSION='"$(VERSION)"' -DRELEASE_DATE='"$(DATE)"'
+-CFLAGS_ARCH := $(CFLAGS_BASE)
 -# LDFLAGS = -L/usr/local/lib -I/usr/local/include
 -
  HOST_ARCH := $(shell uname -m)
  # Use TARGET as the target architecture if specified.
  # Defaults to uname -m
-@@ -22,29 +15,36 @@ ifeq ($(strip($TARGET)),)
+@@ -21,29 +15,36 @@ ifeq ($(strip($TARGET)),)
  TARGET := $(HOST_ARCH)
  endif
  
@@ -72,18 +70,18 @@
  endif
  
 +CFLAGS_ARCH += $(CFLAGS) \
-+		-D_FILE_OFFSET_BITS=64 \
-+		-D_LARGEFILE_SOURCE \
-+		-D_LARGEFILE64_SOURCE
++              -D_FILE_OFFSET_BITS=64 \
++              -D_LARGEFILE_SOURCE \
++              -D_LARGEFILE64_SOURCE
 +
 +CFLAGS_COMMON = $(CFLAGS_ARCH) \
-+		-DVERSION='"$(VERSION)"' \
-+		-DRELEASE_DATE='"$(DATE)"'
++              -DVERSION='"$(VERSION)"' \
++              -DRELEASE_DATE='"$(DATE)"'
 +
  SRC_BASE = makedumpfile.c makedumpfile.h diskdump_mod.h sadump_mod.h sadump_info.h
  SRC_PART = print_info.c dwarf_info.c elf_info.c erase_info.c sadump_info.c cache.c tools.c
  OBJ_PART=$(patsubst %.c,%.o,$(SRC_PART))
-@@ -53,17 +53,17 @@ OBJ_ARCH=$(patsubst %.c,%.o,$(SRC_ARCH))
+@@ -52,17 +53,17 @@ OBJ_ARCH=$(patsubst %.c,%.o,$(SRC_ARCH))
  
  LIBS = -ldw -lbz2 -lebl -ldl -lelf -lz
  ifneq ($(LINKTYPE), dynamic)
@@ -104,7 +102,7 @@
  endif
  
  LIBS := -lpthread $(LIBS)
-@@ -71,14 +71,14 @@ LIBS := -lpthread $(LIBS)
+@@ -82,14 +83,14 @@ LIBS := $(LIBS) $(call try-run,\
  all: makedumpfile
  
  $(OBJ_PART): $(SRC_PART)
@@ -121,7 +119,7 @@
  	echo .TH MAKEDUMPFILE 8 \"$(DATE)\" \"makedumpfile v$(VERSION)\" \"Linux System Administrator\'s Manual\" > temp.8
  	grep -v "^.TH MAKEDUMPFILE 8" $(VPATH)makedumpfile.8 >> temp.8
  	mv temp.8 makedumpfile.8
-@@ -89,7 +89,7 @@ makedumpfile: $(SRC_BASE) $(OBJ_PART) $(OBJ_ARCH)
+@@ -100,7 +101,7 @@ makedumpfile: $(SRC_BASE) $(OBJ_PART) $(OBJ_ARCH)
  	gzip -c ./makedumpfile.conf.5 > ./makedumpfile.conf.5.gz
  
  eppic_makedumpfile.so: extension_eppic.c
@@ -130,3 +128,6 @@
  
  clean:
  	rm -f $(OBJ) $(OBJ_PART) $(OBJ_ARCH) makedumpfile makedumpfile.8.gz makedumpfile.conf.5.gz
+-- 
+2.21.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0002-mem_section-Support-only-46-bit-for-MAX_PHYSMEM_BITS.patch b/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0002-mem_section-Support-only-46-bit-for-MAX_PHYSMEM_BITS.patch
index 156b4d5..1707df3 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0002-mem_section-Support-only-46-bit-for-MAX_PHYSMEM_BITS.patch
+++ b/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0002-mem_section-Support-only-46-bit-for-MAX_PHYSMEM_BITS.patch
@@ -1,4 +1,4 @@
-From 0d1cdb59da3603e0a80913617ece0164b05380d2 Mon Sep 17 00:00:00 2001
+From 9045b72bdb703bf58a6586d77461eea8f59f50f7 Mon Sep 17 00:00:00 2001
 From: Alexandru Moise <alexandru.moise@windriver.com>
 Date: Fri, 29 Apr 2016 07:40:46 +0000
 Subject: [PATCH] mem_section: Support only 46 bit for MAX_PHYSMEM_BITS on
@@ -23,18 +23,20 @@
 
 [hqBai: adjusted patch for context, no logical change]
 Signed-off-by: Haiqing Bai <Haiqing.Bai@windriver.com>
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
 ---
- arch/ppc64.c | 33 ++-------------------------------
- 1 file changed, 2 insertions(+), 31 deletions(-)
+ arch/ppc64.c | 38 ++------------------------------------
+ 1 file changed, 2 insertions(+), 36 deletions(-)
 
 diff --git a/arch/ppc64.c b/arch/ppc64.c
-index 947a125..458f06b 100644
+index 9d8f252..6f4860f 100644
 --- a/arch/ppc64.c
 +++ b/arch/ppc64.c
-@@ -463,42 +463,13 @@ ppc64_vtop_level4(unsigned long vaddr)
+@@ -462,48 +462,14 @@ ppc64_vtop_level4(unsigned long vaddr)
+ 	return paddr;
  }
  
- int
+-int
 -set_ppc64_max_physmem_bits(void)
 -{
 -	long array_len = ARRAY_LENGTH(mem_section);
@@ -58,10 +60,15 @@
 -		|| (array_len == (NR_MEM_SECTIONS() / _SECTIONS_PER_ROOT())))
 -		return TRUE;
 -
+-	info->max_physmem_bits  = _MAX_PHYSMEM_BITS_4_20;
+-	if ((array_len == (NR_MEM_SECTIONS() / _SECTIONS_PER_ROOT_EXTREME()))
+-		|| (array_len == (NR_MEM_SECTIONS() / _SECTIONS_PER_ROOT())))
+-		return TRUE;
+-
 -	return FALSE;
 -}
 -
--int
+ int
  get_machdep_info_ppc64(void)
  {
  	unsigned long vmlist, vmap_area_list, vmalloc_start;
@@ -77,5 +84,5 @@
  
  	if (SYMBOL(_stext) == NOT_FOUND_SYMBOL) {
 -- 
-2.7.4
+2.21.0
 
diff --git a/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.5.bb b/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.6.bb
similarity index 92%
rename from meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.5.bb
rename to meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.6.bb
index 413b413..9c357bf 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.5.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.6.bb
@@ -25,8 +25,8 @@
     file://0001-makedumpfile-replace-hardcode-CFLAGS.patch \
     file://0002-mem_section-Support-only-46-bit-for-MAX_PHYSMEM_BITS.patch \
 "
-SRC_URI[md5sum] = "1737f8e8904d565629f0c9e702f92d02"
-SRC_URI[sha256sum] = "5d4f1d6ded8dca6951eeabcf4bb1ebf6575288fee947529397103c040eb5c760"
+SRC_URI[md5sum] = "6fd632b97ad78d9a0a3b0f0989094064"
+SRC_URI[sha256sum] = "d007eec05cb14f0155f2d06a0d4dc70d321dbb2aec65fccdce953145c8230324"
 
 UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/makedumpfile/files/makedumpfile/"
 UPSTREAM_CHECK_REGEX = "makedumpfile/(?P<pver>\d+(\.\d+)+)/"
diff --git a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile.inc b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile.inc
index 515ea8f..a9ee775 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile.inc
+++ b/meta-openembedded/meta-oe/recipes-kernel/oprofile/oprofile.inc
@@ -12,7 +12,6 @@
 
 DEPENDS = "popt binutils"
 RDEPENDS_${PN} = "binutils-symlinks"
-RRECOMMENDS_${PN} = "kernel-vmlinux"
 
 FILES_${PN} = "${bindir} ${libdir}/${BPN}/lib*${SOLIBS} ${datadir}/${BPN}"
 FILES_${PN}-dev += "${libdir}/${BPN}/lib*${SOLIBSDEV} ${libdir}/${BPN}/lib*.la"
diff --git a/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph/0001-bootgraph.py.patch b/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph/0001-bootgraph.py.patch
new file mode 100644
index 0000000..d49ce01
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph/0001-bootgraph.py.patch
@@ -0,0 +1,32 @@
+From 0c94e32b218c31f31a7988577fb9bec595034e7b Mon Sep 17 00:00:00 2001
+From: Todd Brandt <todd.e.brandt@linux.intel.com>
+Date: Fri, 10 May 2019 15:10:35 -0700
+Subject: [PATCH] bootgraph.py: - handle boot time start grep better, the regex
+ needs more complexity
+
+Upstream-Status: Backport [https://github.com/intel/pm-graph/commit/0c94e32b218c31f31a7988577fb9bec595034e7b]
+
+Signed-off-by: Liwei Song <liwei.song@windriver.com>
+---
+ bootgraph.py | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/bootgraph.py b/bootgraph.py
+index a2b1b1897307..d7f4bd152bf1 100755
+--- a/bootgraph.py
++++ b/bootgraph.py
+@@ -333,9 +333,9 @@ def parseKernelLog():
+ 			if(not sysvals.stamp['kernel']):
+ 				sysvals.stamp['kernel'] = sysvals.kernelVersion(msg)
+ 			continue
+-		m = re.match('.* setting system clock to (?P<t>.*) UTC.*', msg)
++		m = re.match('.* setting system clock to (?P<d>[0-9\-]*)[ A-Z](?P<t>[0-9:]*) UTC.*', msg)
+ 		if(m):
+-			bt = datetime.strptime(m.group('t'), '%Y-%m-%d %H:%M:%S')
++			bt = datetime.strptime(m.group('d')+' '+m.group('t'), '%Y-%m-%d %H:%M:%S')
+ 			bt = bt - timedelta(seconds=int(ktime))
+ 			data.boottime = bt.strftime('%Y-%m-%d_%H:%M:%S')
+ 			sysvals.stamp['time'] = bt.strftime('%B %d %Y, %I:%M:%S %p')
+-- 
+2.22.0
+
diff --git a/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph_5.3.bb b/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph_5.3.bb
index ea12e05..a9f540a 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph_5.3.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/pm-graph/pm-graph_5.3.bb
@@ -7,7 +7,9 @@
 
 SRCREV = "5be9a16547234cef5aca8bfaccd920490ea1cfa7"
 SRC_URI = "git://github.com/intel/pm-graph.git \
-           file://0001-Makefile-fix-multilib-build-failure.patch"
+           file://0001-Makefile-fix-multilib-build-failure.patch \
+           file://0001-bootgraph.py.patch \
+"
 S = "${WORKDIR}/git"
 
 COMPATIBLE_HOST='(i.86|x86_64).*'
diff --git a/meta-openembedded/meta-oe/recipes-kernel/turbostat/turbostat_3.4.bb b/meta-openembedded/meta-oe/recipes-kernel/turbostat/turbostat_3.4.bb
index 3f25e6f..5f6588d 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/turbostat/turbostat_3.4.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/turbostat/turbostat_3.4.bb
@@ -20,6 +20,7 @@
             file://COPYING \
             "
 
+PACKAGE_ARCH = "${MACHINE_ARCH}"
 DEPENDS = "virtual/kernel"
 
 # This looks in S, so we better make sure there's
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/alsa/alsa-oss/libio.patch b/meta-openembedded/meta-oe/recipes-multimedia/alsa/alsa-oss/libio.patch
deleted file mode 100644
index 835b266..0000000
--- a/meta-openembedded/meta-oe/recipes-multimedia/alsa/alsa-oss/libio.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From 54b1c2e27bf81f94c727b4923d4ed592110e2796 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa@gmail.com>
-Date: Sun, 29 May 2011 21:05:15 +0200
-
----
- alsa/stdioemu.c | 8 +++++++-
- configure.ac    | 6 ++++++
- 2 files changed, 13 insertions(+), 1 deletion(-)
-
-diff --git a/alsa/stdioemu.c b/alsa/stdioemu.c
-index f7f9ab5..b673fe3 100644
---- a/alsa/stdioemu.c
-+++ b/alsa/stdioemu.c
-@@ -37,7 +37,9 @@
- #endif
- 
- #include <stdio.h>
--
-+#ifdef HAVE_LIBIO_H
-+#include <libio.h>
-+#endif
- struct fd_cookie {
- 	int fd;
- };
-@@ -98,7 +100,11 @@ static FILE *fake_fopen(const char *path, const char *mode, int flags)
- 
- 	if (open_mode && fdc->fd > 0) {
- 		result = fopencookie (fdc,"w", fns);
-+#ifdef HAVE_FILENO
- 		result->_fileno = fdc->fd;		/* ugly patchy slimy kludgy hack */
-+#else
-+		result->__filedes = fdc->fd;
-+#endif
- 	}
- 	return result;
- }
-diff --git a/configure.ac b/configure.ac
-index 583b95f..60a1025 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -35,6 +35,12 @@ if test "$with_aoss" = "yes"; then
-   LIBS="$OLD_LIBS"
- fi
- 
-+AC_CHECK_HEADERS_ONCE([libio.h])
-+
-+AC_CHECK_MEMBER([struct _IO_FILE._fileno],
-+		[AC_DEFINE([HAVE_FILENO], [1],[Define if _fileno exists.])],
-+		[],[])
-+
- AC_OUTPUT(Makefile alsa/Makefile alsa/aoss alsa/aoss.old \
- 	  oss-redir/Makefile test/Makefile \
-           alsa/testaoss test/testaoss)
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/alsa/alsa-oss_1.1.8.bb b/meta-openembedded/meta-oe/recipes-multimedia/alsa/alsa-oss_1.1.8.bb
index 46ab503..e6b9d6b 100644
--- a/meta-openembedded/meta-oe/recipes-multimedia/alsa/alsa-oss_1.1.8.bb
+++ b/meta-openembedded/meta-oe/recipes-multimedia/alsa/alsa-oss_1.1.8.bb
@@ -1,34 +1,10 @@
-# FIXME: the LIC_FILES_CHKSUM values have been updated by 'devtool upgrade'.
-# The following is the difference between the old and the new license text.
-# Please update the LICENSE value if needed, and summarize the changes in
-# the commit message via 'License-Update:' tag.
-# (example: 'License-Update: copyright years updated.')
-#
-# The changes:
-#
-# --- COPYING
-# +++ COPYING
-# @@ -2,7 +2,8 @@
-#  		       Version 2, June 1991
-#  
-#   Copyright (C) 1989, 1991 Free Software Foundation, Inc.
-# -                       59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-# + 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
-# +
-#   Everyone is permitted to copy and distribute verbatim copies
-#   of this license document, but changing it is not allowed.
-#  
-# 
-#
-
 SUMMARY = "Alsa OSS Compatibility Package"
 SECTION = "libs/multimedia"
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=ed055b4eff93da784176a01582e6ec1a"
 DEPENDS = "alsa-lib"
 
-SRC_URI = "ftp://ftp.alsa-project.org/pub/oss-lib/alsa-oss-${PV}.tar.bz2 \
-    file://libio.patch \
+SRC_URI = "https://www.alsa-project.org/files/pub/oss-lib/alsa-oss-${PV}.tar.bz2 \
 "
 SRC_URI[md5sum] = "9ec4bb783fdce19032aace086d65d874"
 SRC_URI[sha256sum] = "64adcef5927e848d2e024e64c4bf85b6f395964d9974ec61905ae4cb8d35d68e"
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/esound/esound/0001-audio_alsa09.c-alsa-drain-fix.patch b/meta-openembedded/meta-oe/recipes-multimedia/esound/esound/0001-audio_alsa09.c-alsa-drain-fix.patch
deleted file mode 100644
index 130f3c2..0000000
--- a/meta-openembedded/meta-oe/recipes-multimedia/esound/esound/0001-audio_alsa09.c-alsa-drain-fix.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 945df2da87a412758ceab4ac5711abbb269a47c1 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 8 Jun 2017 23:09:51 -0700
-Subject: [PATCH] audio_alsa09.c: alsa drain fix
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
----
- audio_alsa09.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/audio_alsa09.c b/audio_alsa09.c
-index 534e3db..d9450e6 100644
---- a/audio_alsa09.c
-+++ b/audio_alsa09.c
-@@ -506,7 +506,7 @@ void esd_audio_flush(void)
- 	}
- 
- 	if (alsa_playback_handle != NULL)
--		snd_pcm_drain( alsa_playback_handle );
-+		snd_pcm_drop( alsa_playback_handle );
-   
- 	if (alsadbg) 
- 		print_state();
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/esound/esound/0002-Undefine-open64-and-fopen64.patch b/meta-openembedded/meta-oe/recipes-multimedia/esound/esound/0002-Undefine-open64-and-fopen64.patch
deleted file mode 100644
index 10a6ba0..0000000
--- a/meta-openembedded/meta-oe/recipes-multimedia/esound/esound/0002-Undefine-open64-and-fopen64.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From e218d5a0a545ebb9623d62da5cfca478f9c90fce Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 8 Jun 2017 23:11:31 -0700
-Subject: [PATCH] Undefine open64 and fopen64
-
-Since the signatures do not match with libc
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
----
- esddsp.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/esddsp.c b/esddsp.c
-index d3c6ea9..17b5949 100644
---- a/esddsp.c
-+++ b/esddsp.c
-@@ -290,6 +290,7 @@ open (const char *pathname, int flags, ...)
-   return open_wrapper(func, pathname, flags, mode);
- }
- 
-+#undef open64
- int
- open64 (const char *pathname, int flags, ...)
- {
-@@ -374,6 +375,7 @@ fopen (const char *path, const char *mode)
-   return fopen_wrapper(func, path, mode);
- }
- 
-+#undef fopen64
- FILE *
- fopen64 (const char *path, const char *mode)
- {
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/esound/esound/0003-Use-I-path-in-configure.patch b/meta-openembedded/meta-oe/recipes-multimedia/esound/esound/0003-Use-I-path-in-configure.patch
deleted file mode 100644
index 83365b4..0000000
--- a/meta-openembedded/meta-oe/recipes-multimedia/esound/esound/0003-Use-I-path-in-configure.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 89c62db54716d514e639f9e1bfd3c1f7d82641dd Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 8 Jun 2017 23:12:36 -0700
-Subject: [PATCH] Use -I=<path> in configure
-
-This helps to use proper sysroot in
-cross build environment
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
----
- configure.ac | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 5645dce..d374cda 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -208,7 +208,7 @@ if test "x$enable_local_sound" = "xyes"; then
-    AC_CHECK_HEADERS(CoreAudio/CoreAudio.h)
-    # mme_api.h directly includes other files from the mme subdir
-    xCPPFLAGS="$CPPFLAGS"
--   CPPFLAGS="$CPPFLAGS -I/usr/include/mme"
-+   CPPFLAGS="$CPPFLAGS -I=/usr/include/mme"
-    AC_CHECK_HEADERS(mme/mme_api.h)
-    CPPFLAGS="$xCPPFLAGS"
-    AM_PATH_ARTS(, HAVE_ARTS=yes, HAVE_ARTS=no)
-@@ -269,7 +269,7 @@ if test "x$enable_local_sound" = "xyes"; then
-       osf*)
- 	found_sound=yes
- 	AC_DEFINE(DRIVER_OSF, 1, [Defined if OSF backend is enabled])
--	CPPFLAGS="$CPPFLAGS -I/usr/include/mme"
-+	CPPFLAGS="$CPPFLAGS -I=/usr/include/mme"
- 	SOUND_LIBS=-lmme
-       esac
-    fi
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/esound/esound/no-docs.patch b/meta-openembedded/meta-oe/recipes-multimedia/esound/esound/no-docs.patch
deleted file mode 100644
index 8a546e6..0000000
--- a/meta-openembedded/meta-oe/recipes-multimedia/esound/esound/no-docs.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-From bfcaa9bdc70440db96f10afc0c2a792870f75acb Mon Sep 17 00:00:00 2001
-From: Koen Kooi <koen@dominion.thruhere.net>
-Date: Fri, 3 Jun 2011 19:39:02 +0200
-
----
- Makefile.am | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index 08c4c94..ede9d26 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -1,5 +1,5 @@
- 
--SUBDIRS = docs
-+SUBDIRS = 
- 
- ACLOCAL_AMFLAGS = -I m4
- 
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/esound/esound_0.2.41.bb b/meta-openembedded/meta-oe/recipes-multimedia/esound/esound_0.2.41.bb
deleted file mode 100644
index d703f23..0000000
--- a/meta-openembedded/meta-oe/recipes-multimedia/esound/esound_0.2.41.bb
+++ /dev/null
@@ -1,37 +0,0 @@
-SUMMARY = "Enlightened Sound Daemon"
-SECTION = "gpe/base"
-LICENSE = "LGPLv2"
-LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=55ca817ccb7d5b5b66355690e9abc605"
-DEPENDS = "audiofile"
-
-inherit gnome
-
-SRC_URI = "ftp://ftp.gnome.org/pub/GNOME/sources/esound/0.2/${BP}.tar.bz2;name=archive \
-           file://no-docs.patch \
-           file://0001-audio_alsa09.c-alsa-drain-fix.patch \
-           file://0002-Undefine-open64-and-fopen64.patch \
-           file://0003-Use-I-path-in-configure.patch \
-           "
-SRC_URI[archive.md5sum] = "8d9aad3d94d15e0d59ba9dc0ea990c6c"
-SRC_URI[archive.sha256sum] = "5eb5dd29a64b3462a29a5b20652aba7aa926742cef43577bf0796b787ca34911"
-
-EXTRA_OECONF += " \
-    --disable-arts \
-    --disable-artstest \
-"
-EXTRA_OECONF_remove = "--disable-schemas-install"
-
-CFLAGS += "-lm"
-
-PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
-PACKAGECONFIG[libwrap] = "--with-libwrap,--without-libwrap,tcp-wrappers,"
-PACKAGECONFIG[alsa] = "--enable-alsa --disable-oss,--disable-alsa,alsa-lib,"
-
-PACKAGECONFIG ??= "libwrap alsa \
-    ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
-"
-PACKAGES =+ "esddsp esd esd-utils"
-
-FILES_esddsp = "${bindir}/esddsp ${libdir}/libesddsp.so.*"
-FILES_esd = "${bindir}/esd"
-FILES_esd-utils = "${bindir}/*"
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.26.0.bb b/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.26.0.bb
index 6586e35..d334956 100644
--- a/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.26.0.bb
+++ b/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.26.0.bb
@@ -14,15 +14,16 @@
 # While this item does not require it, it depends on ffmpeg which does
 LICENSE_FLAGS = "commercial"
 
+SRCREV_mpv = "4db82f04502cbcd20d9a975df9dfde91d8c389e3"
 SRC_URI = " \
-    https://github.com/mpv-player/mpv/archive/v${PV}.tar.gz;name=mpv \
-    http://www.freehackers.org/~tnagy/release/waf-1.8.12;name=waf;downloadfilename=waf;subdir=${BPN}-${PV} \
+    git://github.com/mpv-player/mpv;name=mpv \
+    http://www.freehackers.org/~tnagy/release/waf-1.8.12;name=waf;downloadfilename=waf;subdir=git \
 "
-SRC_URI[mpv.md5sum] = "038d0b660de07ff645ad6a741704ecab"
-SRC_URI[mpv.sha256sum] = "daf3ef358d5f260f2269f7caabce27f446c291457ec330077152127133b71b46"
 SRC_URI[waf.md5sum] = "cef4ee82206b1843db082d0b0506bf71"
 SRC_URI[waf.sha256sum] = "01bf2beab2106d1558800c8709bc2c8e496d3da4a2ca343fe091f22fca60c98b"
 
+S = "${WORKDIR}/git"
+
 inherit waf pkgconfig pythonnative distro_features_check
 
 LUA ?= "lua"
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/pulseaudio/pavucontrol_4.0.bb b/meta-openembedded/meta-oe/recipes-multimedia/pulseaudio/pavucontrol_4.0.bb
index 6a82744..421ea9d 100644
--- a/meta-openembedded/meta-oe/recipes-multimedia/pulseaudio/pavucontrol_4.0.bb
+++ b/meta-openembedded/meta-oe/recipes-multimedia/pulseaudio/pavucontrol_4.0.bb
@@ -2,9 +2,9 @@
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=751419260aa954499f7abaabaa882bbe"
 
-DEPENDS = "intltool-native gtkmm3 libcanberra pulseaudio"
+DEPENDS = "intltool-native gtk+3-native gtkmm3 libcanberra pulseaudio"
 
-inherit gnome distro_features_check
+inherit gnomebase distro_features_check
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
diff --git a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd-3.17/0001-include-sys-ttydefaults.h.patch b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd-3.17/0001-include-sys-ttydefaults.h.patch
deleted file mode 100644
index e91e4e9..0000000
--- a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd-3.17/0001-include-sys-ttydefaults.h.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From f221fa959c80b43c65426500a6836a1b5cf6fe0c Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 17 Aug 2016 02:16:12 +0000
-Subject: [PATCH] include sys/ttydefaults.h
-
-This is needed for CTRL definition, as exposed by musl on glibc
-this include file gets pulled indirectly.
-
-/usr/src/debug/gpsd/3.14-r0/gpsd-3.14/gpsmon.c:605: undefined reference to `CTRL'
-clang-3.9: error: linker command failed with exit code 1 (use -v to see invocation)
-scons: *** [gpsmon] Error 1
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-Foreward port to gpsd 3.16
-Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
----
- gpsmon.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/gpsmon.c b/gpsmon.c
-index 89c43ee2..5cc0dabd 100644
---- a/gpsmon.c
-+++ b/gpsmon.c
-@@ -24,6 +24,7 @@
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <sys/select.h>
-+#include <sys/ttydefaults.h>
- #include <fcntl.h>
- #include <unistd.h>
- 
--- 
-2.12.0
-
diff --git a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd-3.17/0004-SConstruct-disable-html-and-man-docs-building-becaus.patch b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd-3.17/0004-SConstruct-disable-html-and-man-docs-building-becaus.patch
deleted file mode 100644
index ba3d205..0000000
--- a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd-3.17/0004-SConstruct-disable-html-and-man-docs-building-becaus.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 697e2e9ff97487266d817cdd41bacc83f681e3d7 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa@gmail.com>
-Date: Sun, 29 Apr 2012 00:05:59 +0200
-Subject: [PATCH 4/4] SConstruct: disable html and man docs building because
- xmlto-native from OE is broken
-
-It will try to load dtd and fail:
-| xmlto man gpsctl.xml; mv `basename gpsctl.1` gpsctl.1
-| xmlto: /var/lib/jenkins/jobs/shr-core-branches/workspace/shr-core/tmp-eglibc/work/armv4t-oe-linux-gnueabi/gpsd-3.4-r2/gpsd-3.4/gpsctl.xml does not validate (status 3)
-| xmlto: Fix document syntax or use --skip-validation option
-| I/O error : Attempt to load network entity http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd
-| /var/lib/jenkins/jobs/shr-core-branches/workspace/shr-core/tmp-eglibc/work/armv4t-oe-linux-gnueabi/gpsd-3.4-r2/gpsd-3.4/gpsctl.xml:8: warning: failed to load external entity "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"
-|    "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
-|                                                               ^
-| I/O error : Attempt to load network entity http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd
-| warning: failed to load external entity "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"
-| validity error : Could not load the external subset "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"
-| Document /var/lib/jenkins/jobs/shr-core-branches/workspace/shr-core/tmp-eglibc/work/armv4t-oe-linux-gnueabi/gpsd-3.4-r2/gpsd-3.4/gpsctl.xml does not validate
-| mv: cannot stat `gpsctl.1': No such file or directory
-| scons: *** [gpsctl.1] Error 1
-| scons: building terminated because of errors.
-
-Upstream-Status: Inappropriate [disable feature]
-
-Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
-Signed-off-by: Peter A. Bigot <pab@pabigot.com>
----
- SConstruct | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/SConstruct b/SConstruct
-index 3318bb48..a5bb756d 100644
---- a/SConstruct
-+++ b/SConstruct
-@@ -889,11 +889,11 @@ else:
- 
-     manbuilder = htmlbuilder = None
-     if env['manbuild']:
--        if config.CheckXsltproc():
-+        if False and config.CheckXsltproc():
-             build = "xsltproc --nonet %s $SOURCE >$TARGET"
-             htmlbuilder = build % docbook_html_uri
-             manbuilder = build % docbook_man_uri
--        elif WhereIs("xmlto"):
-+        elif False and WhereIs("xmlto"):
-             xmlto = "xmlto %s $SOURCE || mv `basename $TARGET` " \
-                     "`dirname $TARGET`"
-             htmlbuilder = xmlto % "html-nochunks"
--- 
-1.8.5.5
-
diff --git a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd-3.17/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch
similarity index 81%
rename from meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd-3.17/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch
rename to meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch
index 1fa27c2..23ae5e5 100644
--- a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd-3.17/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch
+++ b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch
@@ -1,4 +1,4 @@
-From 1e2cea8945bc2183fbe1a012dcd633a352125952 Mon Sep 17 00:00:00 2001
+From 5464d9e1bfd1a1c54338ec7c4148cad1b222ef93 Mon Sep 17 00:00:00 2001
 From: Martin Jansa <Martin.Jansa@gmail.com>
 Date: Tue, 24 Apr 2012 18:45:14 +0200
 Subject: [PATCH] SConstruct: prefix includepy with sysroot and drop sysroot
@@ -34,15 +34,16 @@
 
 Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
 Signed-off-by: Peter A. Bigot <pab@pabigot.com>
+
 ---
- SConstruct | 9 +++++++++
- 1 file changed, 9 insertions(+)
+ SConstruct | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
 
 diff --git a/SConstruct b/SConstruct
-index 3318bb48..e1c4f963 100644
+index b8f3fb1..883e06d 100644
 --- a/SConstruct
 +++ b/SConstruct
-@@ -934,7 +934,7 @@ else:
+@@ -980,7 +980,7 @@ else:
  
  # Set up configuration for target Python
  
@@ -51,7 +52,7 @@
  
  PYTHON_CONFIG_NAMES = ['CC', 'CXX', 'OPT', 'BASECFLAGS',
                         'CCSHARED', 'LDSHARED', 'SO', 'INCLUDEPY', 'LDFLAGS']
-@@ -1364,7 +1364,7 @@ else:
+@@ -1506,7 +1506,7 @@ else:
                         LINK=ldshared,
                         SHLIBPREFIX="",
                         SHLIBSUFFIX=python_config['SO'],
@@ -60,22 +61,19 @@
                         CPPFLAGS=python_config['OPT'],
                         CFLAGS=python_config['BASECFLAGS'],
                         CXXFLAGS=python_config['BASECFLAGS'])
-@@ -1662,12 +1662,15 @@ if ((not env['debug'] and not env['profiling'] and not env['nostrip']
- if not env['python']:
-     python_install = []
- else:
-+    python_libdir = python_libdir.replace(env['sysroot'], '')
-     python_module_dir = python_libdir + os.sep + 'gps'
+@@ -1808,12 +1808,14 @@ if ((not env['debug'] and not env['profiling'] and not env['nostrip'] and
+     env.AddPostAction(binaryinstall, '$STRIP $TARGET')
+ 
+ if env['python']:
+-    python_module_dir = str(python_libdir) + os.sep + 'gps'
++    python_module_dir = python_libdir.replace(env['sysroot'], '') + os.sep + 'gps'
      python_extensions_install = python_env.Install(DESTDIR + python_module_dir,
                                                     python_built_extensions)
-     if ((not env['debug'] and not env['profiling']
-          and not env['nostrip'] and not sys.platform.startswith('darwin'))):
+     if ((not env['debug'] and not env['profiling'] and
+          not env['nostrip'] and not sys.platform.startswith('darwin'))):
          python_env.AddPostAction(python_extensions_install, '$STRIP $TARGET')
 +    env.AddPostAction(python_extensions_install, '$CHRPATH -r "%s" "$TARGET"' \
 +                     % (python_libdir, ))
  
      python_modules_install = python_env.Install(DESTDIR + python_module_dir,
                                                  python_modules)
--- 
-2.1.0
-
diff --git a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.17.bb b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.19.bb
similarity index 80%
rename from meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.17.bb
rename to meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.19.bb
index 7752e76..7b7f335 100644
--- a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.17.bb
+++ b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.19.bb
@@ -1,25 +1,19 @@
 SUMMARY = "A TCP/IP Daemon simplifying the communication with GPS devices"
 SECTION = "console/network"
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d217a23f408e91c94359447735bc1800"
-DEPENDS = "dbus dbus-glib ncurses python libusb1 chrpath-replacement-native pps-tools"
+LICENSE = "BSD-2-Clause"
+LIC_FILES_CHKSUM = "file://COPYING;md5=01764c35ae34d9521944bb6ab312af53"
+DEPENDS = "dbus ncurses python python3 libusb1 chrpath-replacement-native pps-tools"
 PROVIDES = "virtual/gpsd"
 
-# SConstruct in gpsd does not yet support Python 3
-DEPENDS += "python-scons-native"
-DEPENDS_remove = "python3-scons-native"
-
 EXTRANATIVEPATH += "chrpath-native"
 
 SRC_URI = "${SAVANNAH_GNU_MIRROR}/${BPN}/${BP}.tar.gz \
     file://0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch \
-    file://0004-SConstruct-disable-html-and-man-docs-building-becaus.patch \
-    file://0001-include-sys-ttydefaults.h.patch \
 "
-SRC_URI[md5sum] = "e0cfadcf4a65dfbdd2afb11c58f4e4a1"
-SRC_URI[sha256sum] = "68e0dbecfb5831997f8b3d6ba48aed812eb465d8c0089420ab68f9ce4d85e77a"
+SRC_URI[md5sum] = "b3bf88706794eb8e5f2c2543bf7ba87b"
+SRC_URI[sha256sum] = "27dd24d45b2ac69baab7933da2bf6ae5fb0be90130f67e753c110a3477155f39"
 
-inherit scons update-rc.d python-dir pythonnative systemd bluetooth update-alternatives
+inherit scons update-rc.d python-dir pythonnative systemd update-alternatives
 
 INITSCRIPT_PACKAGES = "gpsd-conf"
 INITSCRIPT_NAME = "gpsd"
@@ -31,16 +25,17 @@
 export STAGING_LIBDIR
 
 PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)}"
-PACKAGECONFIG[bluez] = "bluez='true',bluez='false',${BLUEZ}"
+PACKAGECONFIG[bluez] = "bluez='true',bluez='false',bluez5"
 PACKAGECONFIG[qt] = "qt='yes' qt_versioned=5,qt='no',qtbase"
 EXTRA_OESCONS = " \
     sysroot=${STAGING_DIR_TARGET} \
     libQgpsmm='false' \
-    debug='true' \
-    strip='false' \
+    debug='false' \
+    nostrip='true' \
     chrpath='yes' \
     systemd='${SYSTEMD_OESCONS}' \
     libdir='${libdir}' \
+    manbuild='false' \
     ${PACKAGECONFIG_CONFARGS} \
 "
 # this cannot be used, because then chrpath is not found and only static lib is built
@@ -61,7 +56,7 @@
 
     export DESTDIR="${D}"
     # prefix is used for RPATH and DESTDIR/prefix for instalation
-    ${STAGING_BINDIR_NATIVE}/scons prefix=${prefix} install ${EXTRA_OESCONS}|| \
+    ${STAGING_BINDIR_NATIVE}/scons prefix=${prefix} python_libdir=${libdir} install ${EXTRA_OESCONS} || \
       bbfatal "scons install execution failed."
 }
 
@@ -84,7 +79,9 @@
     #support for systemd
     install -d ${D}${systemd_unitdir}/system/
     install -m 0644 ${S}/systemd/${BPN}.service ${D}${systemd_unitdir}/system/${BPN}.service
+    sed -i -e 's,/usr/local,/usr,g' ${D}${systemd_unitdir}/system/${BPN}.service
     install -m 0644 ${S}/systemd/${BPN}ctl@.service ${D}${systemd_unitdir}/system/${BPN}ctl@.service
+    sed -i -e 's,/usr/local,/usr,g' ${D}${systemd_unitdir}/system/${BPN}ctl@.service
     install -m 0644 ${S}/systemd/${BPN}.socket ${D}${systemd_unitdir}/system/${BPN}.socket
 }
 
@@ -116,11 +113,12 @@
 FILES_gpsd-gpsctl = "${bindir}/gpsctl"
 
 SUMMARY_gps-utils = "Utils used for simulating, monitoring,... a GPS"
-FILES_gps-utils = "${bindir}/*"
+# Python files are required for gps/fake, required for gpsfake.
+FILES_gps-utils = "${bindir}/* ${libdir}/gps/*.py ${libdir}/gps/*.so"
 RDEPENDS_gps-utils = "python-pygps"
 
 SUMMARY_python-pygps = "Python bindings to gpsd"
-FILES_python-pygps = "${PYTHON_SITEPACKAGES_DIR}/*"
+FILES_python-pygps = "${PYTHON_SITEPACKAGES_DIR}/* ${libdir}/gps/*.py ${libdir}/*.egg-info"
 RDEPENDS_python-pygps = " \
     python-core \
     python-io \
diff --git a/meta-openembedded/meta-oe/recipes-security/keyutils/files/fix_library_install_path.patch b/meta-openembedded/meta-oe/recipes-security/keyutils/files/fix_library_install_path.patch
new file mode 100644
index 0000000..938fe2e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-security/keyutils/files/fix_library_install_path.patch
@@ -0,0 +1,28 @@
+From b0355cc205543ffd33752874295139d57c4fbc3e Mon Sep 17 00:00:00 2001
+From: Wenzong Fan <wenzong.fan@windriver.com>
+Date: Tue, 26 Sep 2017 07:59:51 +0000
+Subject: [PATCH] Subject: [PATCH] keyutils: use relative path for link
+
+The absolute path of the symlink will be invalid
+when populated in sysroot, so use relative path instead.
+
+Upstream-Status: Pending
+
+Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
+Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
+{rebased for 1.6]
+Signed-off-by: Armin Kuster <akuster808@gmail.com>
+
+Index: keyutils-1.6/Makefile
+===================================================================
+--- keyutils-1.6.orig/Makefile
++++ keyutils-1.6/Makefile
+@@ -184,7 +184,7 @@ ifeq ($(NO_SOLIB),0)
+ 	$(INSTALL) -D $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(LIBNAME)
+ 	$(LNS) $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(SONAME)
+ 	mkdir -p $(DESTDIR)$(USRLIBDIR)
+-	$(LNS) $(LIBDIR)/$(SONAME) $(DESTDIR)$(USRLIBDIR)/$(DEVELLIB)
++	$(LNS) $(SONAME) $(DESTDIR)$(USRLIBDIR)/$(DEVELLIB)
+ 	sed \
+ 	-e 's,@VERSION\@,$(VERSION),g' \
+ 	-e 's,@prefix\@,$(PREFIX),g' \
diff --git a/meta-openembedded/meta-oe/recipes-security/keyutils/files/keyutils-fix-error-report-by-adding-default-message.patch b/meta-openembedded/meta-oe/recipes-security/keyutils/files/keyutils-fix-error-report-by-adding-default-message.patch
new file mode 100644
index 0000000..acd91c0
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-security/keyutils/files/keyutils-fix-error-report-by-adding-default-message.patch
@@ -0,0 +1,42 @@
+fix keyutils test error report
+
+Upstream-Status: Pending
+
+"Permission denied" may be the reason of EKEYEXPIRED and EKEYREVOKED.
+"Required key not available" may be the reason of EKEYREVOKED.
+EXPIRED and REVOKED are 2 status of kernel security keys features.
+But the userspace keyutils lib will output the error message, which may
+have several reasons.
+
+Signed-off-by: Han Chao <chan@windriver.com>
+
+diff --git a/tests/toolbox.inc.sh b/tests/toolbox.inc.sh
+index bbca00a..739e9d0 100644
+--- a/tests/toolbox.inc.sh
++++ b/tests/toolbox.inc.sh
+@@ -227,11 +227,12 @@ function expect_error ()
+ 	    ;;
+ 	EKEYEXPIRED)
+ 	    my_err="Key has expired"
+-	    alt_err="Unknown error 127"
++	    alt_err="Permission denied"
+ 	    ;;
+ 	EKEYREVOKED)
+ 	    my_err="Key has been revoked"
+-	    alt_err="Unknown error 128"
++	    alt_err="Permission denied"
++	    alt2_err="Required key not available"
+ 	    ;;
+ 	EKEYREJECTED)
+ 	    my_err="Key has been rejected"
+@@ -249,6 +250,9 @@ function expect_error ()
+     elif [ "x$alt_err" != "x" ] && expr "$my_errmsg" : ".*: $alt_err" >&/dev/null
+     then
+ 	:
++    elif [ "x$alt2_err" != "x" ] && expr "$my_errmsg" : ".*: $alt2_err" >&/dev/null
++    then
++	:
+     elif [ "x$old_err" != "x" ] && expr "$my_errmsg" : ".*: $old_err" >&/dev/null
+     then
+ 	:
+
diff --git a/meta-openembedded/meta-oe/recipes-security/keyutils/files/keyutils-test-fix-output-format.patch b/meta-openembedded/meta-oe/recipes-security/keyutils/files/keyutils-test-fix-output-format.patch
new file mode 100644
index 0000000..a4ffd50
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-security/keyutils/files/keyutils-test-fix-output-format.patch
@@ -0,0 +1,41 @@
+From 49b6321368e4bd3cd233d045cd09004ddd7968b2 Mon Sep 17 00:00:00 2001
+From: Jackie Huang <jackie.huang@windriver.com>
+Date: Mon, 15 May 2017 14:52:00 +0800
+Subject: [PATCH] keyutils: fix output format
+
+keyutils ptest output format is incorrect, according to yocto
+Development Manual
+(http://www.yoctoproject.org/docs/latest/dev-manual/dev-manual.html#testing-packages-with-ptest)
+5.10.6. Testing Packages With ptestThe test generates output in the format used by Automake:
+<result>: <testname>
+where the result can be PASS, FAIL, or SKIP, and the testname can be any
+identifying string.
+So we should change the test result format to match yocto ptest rules.
+
+Upstream-Status: Inappropriate [OE ptest specific]
+
+Signed-off-by: Li Wang <li.wang@windriver.com>
+Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
+---
+ tests/runtest.sh | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/tests/runtest.sh b/tests/runtest.sh
+index b6eaa7c..84263fb 100644
+--- a/tests/runtest.sh
++++ b/tests/runtest.sh
+@@ -21,6 +21,11 @@ for i in ${TESTS}; do
+     echo "### RUNNING TEST $i"
+     if [[ $AUTOMATED != 0 ]] ; then
+         bash ./runtest.sh
++        if [ $? != 0 ]; then
++            echo "FAIL: $i"
++        else
++            echo "PASS: $i"
++        fi
+     else
+         bash ./runtest.sh || exit 1
+     fi
+-- 
+2.11.0
+
diff --git a/meta-openembedded/meta-oe/recipes-security/keyutils/files/run-ptest b/meta-openembedded/meta-oe/recipes-security/keyutils/files/run-ptest
new file mode 100755
index 0000000..305707f
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-security/keyutils/files/run-ptest
@@ -0,0 +1,3 @@
+#!/bin/sh
+export AUTOMATED=1
+make -C tests run
diff --git a/meta-openembedded/meta-oe/recipes-security/keyutils/keyutils_1.6.bb b/meta-openembedded/meta-oe/recipes-security/keyutils/keyutils_1.6.bb
new file mode 100644
index 0000000..4d3a96f
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-security/keyutils/keyutils_1.6.bb
@@ -0,0 +1,53 @@
+SUMMARY = "Linux Key Management Utilities"
+DESCRIPTION = "\
+    Utilities to control the kernel key management facility and to provide \
+    a mechanism by which the kernel call back to userspace to get a key \
+    instantiated. \
+    "
+HOMEPAGE = "http://people.redhat.com/dhowells/keyutils"
+SECTION = "base"
+
+LICENSE = "LGPLv2.1+ & GPLv2.0+"
+
+LIC_FILES_CHKSUM = "file://LICENCE.GPL;md5=5f6e72824f5da505c1f4a7197f004b45 \
+                    file://LICENCE.LGPL;md5=7d1cacaa3ea752b72ea5e525df54a21f"
+
+inherit siteinfo autotools-brokensep ptest
+
+SRC_URI = "http://people.redhat.com/dhowells/keyutils/${BP}.tar.bz2 \
+           file://keyutils-test-fix-output-format.patch \
+           file://keyutils-fix-error-report-by-adding-default-message.patch \
+           file://run-ptest \
+           file://fix_library_install_path.patch \
+           "
+
+SRC_URI[md5sum] = "191987b0ab46bb5b50efd70a6e6ce808"
+SRC_URI[sha256sum] = "d3aef20cec0005c0fa6b4be40079885567473185b1a57b629b030e67942c7115"
+
+EXTRA_OEMAKE = "'CFLAGS=${CFLAGS} -Wall' \
+    NO_ARLIB=1 \
+    BINDIR=${base_bindir} \
+    SBINDIR=${base_sbindir} \
+    LIBDIR=${libdir} \
+    USRLIBDIR=${libdir} \
+    INCLUDEDIR=${includedir} \
+    BUILDFOR=${SITEINFO_BITS}-bit \
+    NO_GLIBC_KEYERR=1 \
+    "
+
+do_install () {
+    install -d ${D}/${libdir}/pkgconfig
+    oe_runmake DESTDIR=${D} install
+}
+
+do_install_ptest () {
+    cp -r ${S}/tests ${D}${PTEST_PATH}/
+    sed -i -e 's/OSDIST=Unknown/OSDIST=${DISTRO}/' ${D}${PTEST_PATH}/tests/prepare.inc.sh
+}
+
+
+RDEPENDS_${PN}-ptest += "lsb"
+RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-utils"
+RDEPENDS_${PN}-ptest_append_libc-musl = " musl-utils"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-shells/tcsh/tcsh_6.20.00.bb b/meta-openembedded/meta-oe/recipes-shells/tcsh/tcsh_6.21.00.bb
similarity index 90%
rename from meta-openembedded/meta-oe/recipes-shells/tcsh/tcsh_6.20.00.bb
rename to meta-openembedded/meta-oe/recipes-shells/tcsh/tcsh_6.21.00.bb
index c171963..278ab04 100644
--- a/meta-openembedded/meta-oe/recipes-shells/tcsh/tcsh_6.20.00.bb
+++ b/meta-openembedded/meta-oe/recipes-shells/tcsh/tcsh_6.21.00.bb
@@ -13,8 +13,8 @@
     file://0001-Enable-system-malloc-on-all-linux.patch \
     file://0002-Add-debian-csh-scripts.patch \
 "
-SRC_URI[md5sum] = "59d40ef40a68e790d95e182069431834"
-SRC_URI[sha256sum] = "b89de7064ab54dac454a266cfe5d8bf66940cb5ed048d0c30674ea62e7ecef9d"
+SRC_URI[md5sum] = "5bd5f11515cc5cca927777fa92f9d4b9"
+SRC_URI[sha256sum] = "c438325448371f59b12a4c93bfd3f6982e6f79f8c5aef4bc83aac8f62766e972"
 
 EXTRA_OEMAKE += "CC_FOR_GETHOST='${BUILD_CC}'"
 inherit autotools
diff --git a/meta-openembedded/meta-oe/recipes-support/cli11/cli11_1.7.1.bb b/meta-openembedded/meta-oe/recipes-support/cli11/cli11_1.8.0.bb
similarity index 79%
rename from meta-openembedded/meta-oe/recipes-support/cli11/cli11_1.7.1.bb
rename to meta-openembedded/meta-oe/recipes-support/cli11/cli11_1.8.0.bb
index 1ed97a2..b6a4341 100644
--- a/meta-openembedded/meta-oe/recipes-support/cli11/cli11_1.7.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/cli11/cli11_1.8.0.bb
@@ -2,8 +2,8 @@
 DESCRIPTION = "A command line parser for C++11 and beyond that provides a rich feature set with a simple and intuitive interface."
 HOMEPAGE = "https://github.com/CLIUtils/CLI11"
 LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=8489f3831fc7b75264c1d5e346251a74"
-SRCREV = "49ac989a9527ee9bb496de9ded7b4872c2e0e5ca"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=b73927b18d5c6cd8d2ed28a6ad539733"
+SRCREV = "13becaddb657eacd090537719a669d66d393b8b2"
 PV .= "+git${SRCPV}"
 
 SRC_URI += "gitsm://github.com/CLIUtils/CLI11 \
diff --git a/meta-openembedded/meta-oe/recipes-support/cli11/files/0001-Add-CLANG_TIDY-check.patch b/meta-openembedded/meta-oe/recipes-support/cli11/files/0001-Add-CLANG_TIDY-check.patch
index bef3548a..02b3c9b 100644
--- a/meta-openembedded/meta-oe/recipes-support/cli11/files/0001-Add-CLANG_TIDY-check.patch
+++ b/meta-openembedded/meta-oe/recipes-support/cli11/files/0001-Add-CLANG_TIDY-check.patch
@@ -1,20 +1,21 @@
-From ef6310bc726a53ff6b45071633fa7b37224cae96 Mon Sep 17 00:00:00 2001
+From 902b251fd8d6408ee6623e7a92692948cf90187d Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Tue, 12 Feb 2019 13:22:21 -0800
 Subject: [PATCH] Add CLANG_TIDY check
 
 Upstream-Status: Pending
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
 ---
  CMakeLists.txt | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 79404b8..f68217d 100644
+index 7073a0b..2dd2c02 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -39,7 +39,7 @@ if(CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME)
-         add_definitions(-Wall -Wextra -pedantic)
+@@ -60,7 +60,7 @@ if(CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME)
+         endif()
      endif()
  
 -    if(CMAKE_VERSION VERSION_GREATER 3.6)
@@ -22,6 +23,3 @@
          # Add clang-tidy if available
          option(CLANG_TIDY_FIX "Perform fixes for Clang-Tidy" OFF)
          find_program(
--- 
-2.20.1
-
diff --git a/meta-openembedded/meta-oe/recipes-support/cpprest/cpprest_2.10.13.bb b/meta-openembedded/meta-oe/recipes-support/cpprest/cpprest_2.10.14.bb
similarity index 73%
rename from meta-openembedded/meta-oe/recipes-support/cpprest/cpprest_2.10.13.bb
rename to meta-openembedded/meta-oe/recipes-support/cpprest/cpprest_2.10.14.bb
index 0704512..53f6469 100644
--- a/meta-openembedded/meta-oe/recipes-support/cpprest/cpprest_2.10.13.bb
+++ b/meta-openembedded/meta-oe/recipes-support/cpprest/cpprest_2.10.14.bb
@@ -5,19 +5,15 @@
 LIC_FILES_CHKSUM = "file://${S}/license.txt;md5=a2e15b954769218ff912468eecd6a02f"
 DEPENDS = "openssl websocketpp zlib boost brotli"
 
-EXTRA_OECMAKE = "-DCPPREST_EXPORT_DIR=cmake -DCPPREST_EXCLUDE_BROTLI=OFF"
+EXTRA_OECMAKE = "-DCPPREST_EXPORT_DIR=cmake -DCPPREST_EXCLUDE_BROTLI=OFF -DWERROR=OFF"
 
 SRC_URI = "git://github.com/Microsoft/cpprestsdk.git;protocol=https;branch=master \
            file://disable-float-tests.patch \
            file://disable-outside-tests.patch "
 
-# tag 2.10.13
-SRCREV= "9d8f544001cb74544de6dc8c565592f7e2626d6e"
+# tag 2.10.14
+SRCREV= "6f602bee67b088a299d7901534af3bce6334ab38"
 
 S = "${WORKDIR}/git"
 
 inherit cmake pkgconfig
-
-# Temporary until https://github.com/Microsoft/cpprestsdk/issues/1099
-# is fixed properly
-CXXFLAGS += "-Wno-error=deprecated-copy -Wno-error=redundant-move"
diff --git a/meta-openembedded/meta-oe/recipes-support/dstat/dstat_0.7.3.bb b/meta-openembedded/meta-oe/recipes-support/dstat/dstat_0.7.4.bb
similarity index 93%
rename from meta-openembedded/meta-oe/recipes-support/dstat/dstat_0.7.3.bb
rename to meta-openembedded/meta-oe/recipes-support/dstat/dstat_0.7.4.bb
index 18af738..8eb7157 100644
--- a/meta-openembedded/meta-oe/recipes-support/dstat/dstat_0.7.3.bb
+++ b/meta-openembedded/meta-oe/recipes-support/dstat/dstat_0.7.4.bb
@@ -11,7 +11,7 @@
 
 SRC_URI = "git://github.com/dagwieers/dstat.git"
 
-SRCREV = "ebace6d4177f8748f35cec87f7a49946046b0a20"
+SRCREV = "6f5db0aed26bf8cf2700d4ffe90a9bd3436ac728"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/fmt/fmt_5.3.0.bb b/meta-openembedded/meta-oe/recipes-support/fmt/fmt_5.3.0.bb
new file mode 100644
index 0000000..be33bb8
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/fmt/fmt_5.3.0.bb
@@ -0,0 +1,16 @@
+SUMMARY = "open-source formatting library for C++"
+DESCRIPTION = "{fmt} is an open-source formatting library for C++. It can be used as a safe and fast alternative to (s)printf and iostreams."
+HOMEPAGE = "https://fmt.dev"
+LICENSE = "BSD-2-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=c2e38bc8629eac247a73b65c1548b2f0"
+SRCREV = "9e554999ce02cf86fcdfe74fe740c4fe3f5a56d5"
+PV .= "+git${SRCPV}"
+
+SRC_URI += "git://github.com/fmtlib/fmt"
+
+S = "${WORKDIR}/git"
+
+inherit cmake
+inherit ptest
+
+EXTRA_OECMAKE += "-DBUILD_SHARED_LIBS=ON"
diff --git a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.7.bb b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.7.bb
index c8b9127..c48a981 100644
--- a/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.7.bb
+++ b/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.7.bb
@@ -28,3 +28,11 @@
 ARM_INSTRUCTION_SET_armv5 = "arm"
 ARM_INSTRUCTION_SET_toolchain-clang_arm = "arm"
 
+# Ensure static libs are always enabled, as they seem to be not produced by
+# default at least on ARM.
+EXTRA_OECONF_append += " --enable-static"
+
+PACKAGE_BEFORE_PN += "libtcmalloc-minimal"
+FILES_libtcmalloc-minimal = "${libdir}/libtcmalloc_minimal*${SOLIBS} ${libdir}/libtcmalloc_minimal_debug*${SOLIBS}"
+RDEPENDS_${PN} += "libtcmalloc-minimal (= ${EXTENDPKGV})"
+
diff --git a/meta-openembedded/meta-oe/recipes-support/gradm/gradm_3.1.bb b/meta-openembedded/meta-oe/recipes-support/gradm/gradm_3.1-201903191516.bb
similarity index 84%
rename from meta-openembedded/meta-oe/recipes-support/gradm/gradm_3.1.bb
rename to meta-openembedded/meta-oe/recipes-support/gradm/gradm_3.1-201903191516.bb
index a7d0607..7ed46f8 100644
--- a/meta-openembedded/meta-oe/recipes-support/gradm/gradm_3.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/gradm/gradm_3.1-201903191516.bb
@@ -11,12 +11,12 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=4641e94ec96f98fabc56ff9cc48be14b"
 DEPENDS = "flex-native bison-native ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
 
-SRC_URI = "http://grsecurity.net/stable/${BP}-201507191652.tar.gz \
+SRC_URI = "http://grsecurity.net/stable/${BP}.tar.gz \
            file://0001-Makefile-remove-strip.patch \
            file://0001-Makefile-Append-instead-of-overriding-LDFLAGS.patch \
            "
-SRC_URI[md5sum] = "ecec72d3a9b6d84c00eda97957b707b6"
-SRC_URI[sha256sum] = "2f14c357bf0459e502a4e108b76c3f6240aa484762d07bb1687796b9b9297a50"
+SRC_URI[md5sum] = "5099c715433981d5a3eed8ded7c5bbc0"
+SRC_URI[sha256sum] = "d3a0b6383ff97a2054941d71133c737efae66afdd8eef59346c031ae15c75ff3"
 
 S = "${WORKDIR}/gradm"
 
@@ -24,6 +24,7 @@
 
 do_compile() {
     oe_runmake 'CC=${CC}'                               \
+               'LIBS='                                  \
                'OPT_FLAGS=${CFLAGS}'                    \
                'LLEX=${STAGING_BINDIR_NATIVE}/lex'      \
                'FLEX=${STAGING_BINDIR_NATIVE}/flex'     \
@@ -34,6 +35,7 @@
 do_install() {
     oe_runmake 'CC=${CC}'                               \
                'DESTDIR=${D}'                           \
+               'LIBS='                                  \
                'LLEX=${STAGING_BINDIR_NATIVE}/lex'      \
                'FLEX=${STAGING_BINDIR_NATIVE}/flex'     \
                'BISON=${STAGING_BINDIR_NATIVE}/bison'   \
diff --git a/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb b/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb
index 58a0607..198a771 100644
--- a/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb
+++ b/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb
@@ -5,8 +5,8 @@
 LICENSE = "GPL-2.0+"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=1556547711e8246992b999edd9445a57"
 
-PV = "0.322"
-SRCREV = "a65d28807d8f2446faa4734c758d1607f0a56ded"
+PV = "0.326"
+SRCREV = "dc8574c8e01ac758ba4dd23e7574492e261ad9ea"
 SRC_URI = "git://github.com/vcrhonek/${BPN}.git"
 
 S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-support/iniparser/iniparser/Add-CMake-support.patch b/meta-openembedded/meta-oe/recipes-support/iniparser/iniparser/Add-CMake-support.patch
new file mode 100644
index 0000000..b666f00
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/iniparser/iniparser/Add-CMake-support.patch
@@ -0,0 +1,63 @@
+Origin: Debian packaging
+From: Klee Dienes <klee@mit.edu>
+Date: Thu, 13 Feb 2014 07:03:26 -0500
+Subject: Add CMake support.
+
+---
+ CMakeLists.txt | 44 ++++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 44 insertions(+)
+ create mode 100644 CMakeLists.txt
+
+--- /dev/null
++++ b/CMakeLists.txt
+@@ -0,0 +1,50 @@
++cmake_minimum_required (VERSION 2.8.8)
++
++project (iniparser)
++include (GNUInstallDirs)
++
++include_directories (src)
++
++set(INIPARSER_SRCS src/dictionary.c src/iniparser.c)
++set(INIPARSER_HDRS src/dictionary.h src/iniparser.h)
++
++add_library(iniparser-shared SHARED ${INIPARSER_SRCS} ${INIPARSER_HDRS})
++add_library(iniparser-static STATIC ${INIPARSER_SRCS} ${INIPARSER_HDRS})
++
++set_target_properties(iniparser-shared PROPERTIES SOVERSION 1)
++set_target_properties(iniparser-shared PROPERTIES OUTPUT_NAME iniparser)
++set_target_properties(iniparser-static PROPERTIES OUTPUT_NAME iniparser)
++
++install (TARGETS iniparser-shared
++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}
++  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
++
++install (TARGETS iniparser-static
++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}
++  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
++
++find_package(Doxygen)
++if (NOT DOXYGEN_FOUND)
++message(FATAL_ERROR "Doxygen is needed to build the documentation. Please install it correctly")
++endif()
++
++file (WRITE ${CMAKE_CURRENT_BINARY_DIR}/iniparser.dox
++  "@INCLUDE = ${CMAKE_CURRENT_SOURCE_DIR}/doc/iniparser.dox\n"
++  "OUTPUT_DIRECTORY = ${CMAKE_CURRENT_BINARY_DIR}\n"
++  )
++
++add_custom_target (doc ALL 
++  COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/iniparser.dox
++  SOURCES doc/iniparser.dox)
++
++enable_testing()
++
++add_test(NAME testsuite
++  COMMAND make
++  WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/test)
++
++install (FILES ${INIPARSER_HDRS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/iniparser)
++
++install (DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html DESTINATION ${CMAKE_INSTALL_DOCDIR})
diff --git a/meta-openembedded/meta-oe/recipes-support/iniparser/iniparser_4.1.bb b/meta-openembedded/meta-oe/recipes-support/iniparser/iniparser_4.1.bb
new file mode 100644
index 0000000..f4b553a
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/iniparser/iniparser_4.1.bb
@@ -0,0 +1,17 @@
+SUMMARY = "The iniParser library is a simple C library offering INI file parsing services (both reading and writing)."
+SECTION = "libs"
+HOMEPAGE = "https://github.com/ndevilla/iniparser"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=e02baf71c76e0650e667d7da133379ac"
+
+DEPENDS = "doxygen-native"
+
+SRC_URI = "git://github.com/ndevilla/iniparser.git;protocol=https \
+	   file://Add-CMake-support.patch"
+
+# tag 4.1
+SRCREV= "0a38e85c9cde1e099ca3bf70083bd00f89c3e5b6"
+
+S = "${WORKDIR}/git"
+
+inherit cmake
diff --git a/meta-openembedded/meta-oe/recipes-support/itstool/itstool/0001-Don-t-use-build-time-hardcoded-python-binary-path.patch b/meta-openembedded/meta-oe/recipes-support/itstool/itstool/0001-Don-t-use-build-time-hardcoded-python-binary-path.patch
new file mode 100644
index 0000000..b911053
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/itstool/itstool/0001-Don-t-use-build-time-hardcoded-python-binary-path.patch
@@ -0,0 +1,29 @@
+From cd9b56224895576125e91cca317ace8a80f3eb77 Mon Sep 17 00:00:00 2001
+From: Piotr Tworek <tworaz@tworaz.net>
+Date: Sat, 27 Jul 2019 10:19:11 +0200
+Subject: [PATCH] Don't use build time hardcoded python binary path.
+
+This path obviously won't work on target since they refer to build
+machine directory structure. Native builds will also fail if local.conf
+has INHERIT+=rm_work. Instread of hardcoding path to python binary use
+whatever is found in PATH first. This should also allow the tool to use
+python3 binary provided in recipe-sysroot-native.
+
+Upstream-Status: Inappropriate [OE specific]
+---
+ itstool.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/itstool.in b/itstool.in
+index b3c0033..7df2476 100755
+--- a/itstool.in
++++ b/itstool.in
+@@ -1,4 +1,4 @@
+-#!@PYTHON@ -s
++#!/usr/bin/env -S python3 -s
+ #
+ # Copyright (c) 2010-2018 Shaun McCance <shaunm@gnome.org>
+ #
+--
+2.21.0
+
diff --git a/meta-openembedded/meta-oe/recipes-support/itstool/itstool_2.0.5.bb b/meta-openembedded/meta-oe/recipes-support/itstool/itstool_2.0.5.bb
deleted file mode 100644
index 166e95b..0000000
--- a/meta-openembedded/meta-oe/recipes-support/itstool/itstool_2.0.5.bb
+++ /dev/null
@@ -1,22 +0,0 @@
-SUMMARY = "ITS Tool allows you to translate your XML documents with PO files"
-HOMEPAGE = "http://itstool.org/"
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=59c57b95fd7d0e9e238ebbc7ad47c5a5"
-
-inherit autotools python3native
-
-DEPENDS = "python3-lxml-native"
-
-SRC_URI = "http://files.itstool.org/${BPN}/${BPN}-${PV}.tar.bz2"
-SRC_URI[md5sum] = "655c6f78fc64faee45adcc45ccc5a57e"
-SRC_URI[sha256sum] = "100506f8df62cca6225ec3e631a8237e9c04650c77495af4919ac6a100d4b308"
-
-do_install_append() {
-    # fix shebang of main script
-    sed -i 's:^#!${WORKDIR}.*${PYTHON_PN} -s:#!${bindir_native}/${PYTHON_PN} -s:' ${D}${bindir}/itstool
-}
-
-BBCLASSEXTEND = "native"
-
-RDEPENDS_${PN} += "python3-lxml"
-
diff --git a/meta-openembedded/meta-oe/recipes-support/itstool/itstool_2.0.6.bb b/meta-openembedded/meta-oe/recipes-support/itstool/itstool_2.0.6.bb
new file mode 100644
index 0000000..b4b37aa
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/itstool/itstool_2.0.6.bb
@@ -0,0 +1,18 @@
+SUMMARY = "ITS Tool allows you to translate your XML documents with PO files"
+HOMEPAGE = "http://itstool.org/"
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=59c57b95fd7d0e9e238ebbc7ad47c5a5"
+
+inherit autotools python3native
+
+DEPENDS = "libxml2-native"
+
+SRC_URI = "http://files.itstool.org/${BPN}/${BPN}-${PV}.tar.bz2 \
+           file://0001-Don-t-use-build-time-hardcoded-python-binary-path.patch"
+SRC_URI[md5sum] = "4306eeba4f4aee6b393d14f9c3c57ca1"
+SRC_URI[sha256sum] = "6233cc22726a9a5a83664bf67d1af79549a298c23185d926c3677afa917b92a9"
+
+BBCLASSEXTEND = "native"
+
+RDEPENDS_${PN} += "libxml2-python"
+RDEPENDS_${PN}_class-native = ""
diff --git a/meta-openembedded/meta-oe/recipes-support/joe/joe/0001-adjust-signature-of-main.patch b/meta-openembedded/meta-oe/recipes-support/joe/joe/0001-adjust-signature-of-main.patch
deleted file mode 100644
index 00f48e8..0000000
--- a/meta-openembedded/meta-oe/recipes-support/joe/joe/0001-adjust-signature-of-main.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 27e4639254f2b2eb7d04790bd8cf16ecfcbac1c2 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 19 Oct 2016 01:07:16 +0000
-Subject: [PATCH] adjust signature of main()
-
-clang complains about the types of main() function
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- main.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/main.c b/main.c
-index 81ba543..ee7506c 100644
---- a/main.c
-+++ b/main.c
-@@ -159,7 +159,7 @@ extern int breakflg;
- 
- unsigned char **mainenv;
- 
--int main(int argc, unsigned char **argv, unsigned char **envv)
-+int main(int argc, char **argv, char **envv)
- {
- 	CAP *cap;
- 	unsigned char *s;
--- 
-1.9.1
-
diff --git a/meta-openembedded/meta-oe/recipes-support/joe/joe_3.1.bb b/meta-openembedded/meta-oe/recipes-support/joe/joe_3.1.bb
deleted file mode 100644
index 1ad355b..0000000
--- a/meta-openembedded/meta-oe/recipes-support/joe/joe_3.1.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-SECTION = "console/utils"
-SUMMARY = "Console text editor with good functionality, good choice for vi-haters"
-HOMEPAGE = "http://joe-editor.sourceforge.net/"
-LICENSE = "GPLv1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=da10ed7cf8038981c580e11c1d3e8fb6"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/joe-editor/joe-${PV}.tar.gz \
-           file://0001-adjust-signature-of-main.patch \
-           "
-
-PACKAGECONFIG ??= "curses"
-PACKAGECONFIG[curses] = "--enable-curses,--disable-curses,ncurses,ncurses-terminfo"
-
-inherit autotools
-
-SRC_URI[md5sum] = "2a6ef018870fca9b7df85401994fb0e0"
-SRC_URI[sha256sum] = "252390e4bc687957f09f334095904c8cc53b39c7b663ed47861ae1d11aef5946"
diff --git a/meta-openembedded/meta-oe/recipes-support/joe/joe_4.6.bb b/meta-openembedded/meta-oe/recipes-support/joe/joe_4.6.bb
new file mode 100644
index 0000000..b79e028
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/joe/joe_4.6.bb
@@ -0,0 +1,15 @@
+SECTION = "console/utils"
+SUMMARY = "Console text editor with good functionality, good choice for vi-haters"
+HOMEPAGE = "http://joe-editor.sourceforge.net/"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/joe-editor/joe-${PV}.tar.gz"
+
+PACKAGECONFIG ??= "curses"
+PACKAGECONFIG[curses] = "--enable-curses,--disable-curses,ncurses,ncurses-terminfo"
+
+inherit autotools-brokensep
+
+SRC_URI[md5sum] = "9017484e6116830d846678b625ea5c43"
+SRC_URI[sha256sum] = "495a0a61f26404070fe8a719d80406dc7f337623788e445b92a9f6de512ab9de"
diff --git a/meta-openembedded/meta-oe/recipes-support/libbytesize/files/0001-fix-out-of-tree-build-failure.patch b/meta-openembedded/meta-oe/recipes-support/libbytesize/files/0001-fix-out-of-tree-build-failure.patch
new file mode 100644
index 0000000..3f42c25
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/libbytesize/files/0001-fix-out-of-tree-build-failure.patch
@@ -0,0 +1,37 @@
+From 55802fd187b844f0c114c1657b18482bfc80ec51 Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Tue, 2 Jul 2019 02:52:31 +0000
+Subject: [PATCH] fix out of tree build failure
+
+Since commit [116da95 Add the '--version' option to bs_calc.py] applied,
+while build out of tree, there is a install failure
+...
+|install -m0755 ../../git/tools/bs_calc.py /usr/bin/bscalc
+|install: cannot stat '../../git/tools/bs_calc.py': No such file or directory
+...
+
+The generated bs_calc.py locates in builddir rather than srcdir
+
+Upstream-Status: Submitted [https://github.com/storaged-project/libbytesize/pull/59]
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ tools/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tools/Makefile.am b/tools/Makefile.am
+index 08223a8..ae22fed 100644
+--- a/tools/Makefile.am
++++ b/tools/Makefile.am
+@@ -5,7 +5,7 @@ dist_man1_MANS = bscalc.man
+ 
+ install-exec-local:
+ 	install -d ${DESTDIR}${bindir}
+-	install -m0755 ${srcdir}/bs_calc.py ${DESTDIR}${bindir}/bscalc
++	install -m0755 ${builddir}/bs_calc.py ${DESTDIR}${bindir}/bscalc
+ 
+ uninstall-local:
+ 	rm ${DESTDIR}${bindir}/bscalc
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-support/libbytesize/libbytesize_1.4.bb b/meta-openembedded/meta-oe/recipes-support/libbytesize/libbytesize_2.0.bb
similarity index 82%
rename from meta-openembedded/meta-oe/recipes-support/libbytesize/libbytesize_1.4.bb
rename to meta-openembedded/meta-oe/recipes-support/libbytesize/libbytesize_2.0.bb
index 863ce42..74f1800 100644
--- a/meta-openembedded/meta-oe/recipes-support/libbytesize/libbytesize_1.4.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libbytesize/libbytesize_2.0.bb
@@ -9,23 +9,24 @@
 S = "${WORKDIR}/git"
 B = "${S}"
 
-SRCREV = "ebbda2217d177d2a17f917d7a3e3d132a26db791"
+SRCREV = "92c00638a6f846df5c40dbb690f9fcf998ad6df2"
 SRC_URI = "git://github.com/rhinstaller/libbytesize;branch=master \
+           file://0001-fix-out-of-tree-build-failure.patch \
 "
 
 inherit gettext autotools python3native
 
 DEPENDS += " \
-    libpcre \
+    libpcre2 \
     gmp \
     mpfr \
+    gettext-native \
 "
 
 FILES_${PN} += "${PYTHON_SITEPACKAGES_DIR}/bytesize"
 
 PACKAGECONFIG ??= "python3"
-PACKAGECONFIG[python3] = "--with-python3, --without-python3,,python3"
-PACKAGECONFIG[python2] = "--with-python2, --without-python2,,python2"
+PACKAGECONFIG[python3] = "--with-python3, --without-python3,,python3-core"
 PACKAGECONFIG[doc] = "--with-gtk-doc, --without-gtk-doc, gtk-doc-native"
 
 EXTRA_OEMAKE = "py3libdir=${PYTHON_SITEPACKAGES_DIR}"
diff --git a/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.4.bb b/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.4.1.bb
similarity index 81%
rename from meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.4.bb
rename to meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.4.1.bb
index 71a45ed..756b143 100644
--- a/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.4.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libgpiod/libgpiod_1.4.1.bb
@@ -2,8 +2,8 @@
 
 DEPENDS += "autoconf-archive-native"
 
-SRC_URI[md5sum] = "bd52d764017215a30e2f014d2081dc3e"
-SRC_URI[sha256sum] = "ebde83aaf14be3abd33e7a90faa487a2ee231e242897afe7fdefb765386b3c8b"
+SRC_URI[md5sum] = "585b4bb431f99c4ba9b3ee58b9d494c1"
+SRC_URI[sha256sum] = "21ae8fd1f8dafc2eb2ba50e652390cf533d21351419a7426255895cb52e21b1c"
 
 # enable tools and cxx bindings
 PACKAGECONFIG ?= "cxx tools"
diff --git a/meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.59.bb b/meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.59.bb
index b44c66a..7e50edf 100644
--- a/meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.59.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.59.bb
@@ -5,7 +5,7 @@
 SECTION = "net"
 DEPENDS = "file"
 
-SRC_URI = "http://ftp.gnu.org/gnu/libmicrohttpd/${BPN}-${PV}.tar.gz"
+SRC_URI = "${GNU_MIRROR}/libmicrohttpd/${BPN}-${PV}.tar.gz"
 SRC_URI[md5sum] = "8ab5123535549195aff19e91b4e49f48"
 SRC_URI[sha256sum] = "9b9ccd7d0b11b0e179f1f58dc2caa3e0c62c8609e1e1dc7dcaadf941b67d923c"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/libtar/libtar_1.2.20.bb b/meta-openembedded/meta-oe/recipes-support/libtar/libtar_1.2.20.bb
index 60710f4..f93d9c0 100644
--- a/meta-openembedded/meta-oe/recipes-support/libtar/libtar_1.2.20.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libtar/libtar_1.2.20.bb
@@ -19,3 +19,5 @@
 
 PACKAGECONFIG ??= "zlib"
 PACKAGECONFIG[zlib] = "--with-zlib,--without-zlib,zlib"
+
+BBCLASSEXTEND += "native"
diff --git a/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2.inc b/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2.inc
index 8617f25..ca409a6 100644
--- a/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2.inc
+++ b/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2.inc
@@ -7,7 +7,7 @@
 
 DEPENDS += "util-linux libaio"
 
-SRC_URI = "ftp://sources.redhat.com/pub/lvm2/releases/LVM2.${PV}.tgz \
+SRC_URI = "https://sourceware.org/pub/lvm2/LVM2.${PV}.tgz \
            file://lvm.conf \
            file://0001-implement-libc-specific-reopen_stream.patch \
            file://0002-Guard-use-of-mallinfo-with-__GLIBC__.patch \
diff --git a/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2_2.03.02.bb b/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2_2.03.02.bb
index e2ce95c..4ae0a62 100644
--- a/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2_2.03.02.bb
+++ b/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2_2.03.02.bb
@@ -50,7 +50,7 @@
 # Specified explicitly for the udev rules, just in case that it does not get picked
 # up automatically:
 FILES_${PN}-udevrules = "${nonarch_base_libdir}/udev/rules.d"
-RDEPENDS_${PN}-udevrules = "${PN}"
+RDEPENDS_${PN}-udevrules = "libdevmapper"
 RDEPENDS_${PN}_append_class-target = " libdevmapper"
 RDEPENDS_${PN}_append_class-nativesdk = " libdevmapper"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/mcelog/mcelog_162.bb b/meta-openembedded/meta-oe/recipes-support/mcelog/mcelog_164.bb
similarity index 95%
rename from meta-openembedded/meta-oe/recipes-support/mcelog/mcelog_162.bb
rename to meta-openembedded/meta-oe/recipes-support/mcelog/mcelog_164.bb
index 1aee674..af309d1 100644
--- a/meta-openembedded/meta-oe/recipes-support/mcelog/mcelog_162.bb
+++ b/meta-openembedded/meta-oe/recipes-support/mcelog/mcelog_164.bb
@@ -9,7 +9,7 @@
     file://run-ptest \
 "
 
-SRCREV = "6ed93e30f83519b0ab71f8ecd156b8ff0b2912b6"
+SRCREV = "e53631f84a181be371c08e0b961180bff77fd2ab"
 
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://README.md;md5=74bb47b9a68850cb398665cf78b31de6"
diff --git a/meta-openembedded/meta-oe/recipes-support/nano/nano_4.2.bb b/meta-openembedded/meta-oe/recipes-support/nano/nano_4.3.bb
similarity index 79%
rename from meta-openembedded/meta-oe/recipes-support/nano/nano_4.2.bb
rename to meta-openembedded/meta-oe/recipes-support/nano/nano_4.3.bb
index 19a8b47..aa773bf 100644
--- a/meta-openembedded/meta-oe/recipes-support/nano/nano_4.2.bb
+++ b/meta-openembedded/meta-oe/recipes-support/nano/nano_4.3.bb
@@ -12,8 +12,8 @@
 PV_MAJOR = "${@d.getVar('PV').split('.')[0]}"
 
 SRC_URI = "https://nano-editor.org/dist/v${PV_MAJOR}/nano-${PV}.tar.xz"
-SRC_URI[md5sum] = "9ef42650960fa71671dc5318841a27a9"
-SRC_URI[sha256sum] = "1143defce62e391b241252ffdb6e5c1ded56cfe26d46ee81b796abe0ccc45df9"
+SRC_URI[md5sum] = "23f4f7b5c0d1f04ad555960dc294f2b8"
+SRC_URI[sha256sum] = "00d3ad1a287a85b4bf83e5f06cedd0a9f880413682bebd52b4b1e2af8cfc0d81"
 
 inherit autotools gettext pkgconfig
 
diff --git a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch
index 4d76ad4..5f909c1 100644
--- a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch
+++ b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch
@@ -1,16 +1,17 @@
-From 4801a057730632225337d7f6d26b9335e6b9b078 Mon Sep 17 00:00:00 2001
+From 85b882b4ceb57fe6538f47af58d0a970923fde0e Mon Sep 17 00:00:00 2001
 From: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
 Date: Thu, 31 Mar 2016 00:20:15 +0200
 Subject: [PATCH] 3rdparty/ippicv: Use pre-downloaded ipp
 
 Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
 Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
+
 ---
  3rdparty/ippicv/ippicv.cmake | 15 +--------------
  1 file changed, 1 insertion(+), 14 deletions(-)
 
 diff --git a/3rdparty/ippicv/ippicv.cmake b/3rdparty/ippicv/ippicv.cmake
-index d601da4bb..f6fc1098c 100644
+index ae8748c..305abdb 100644
 --- a/3rdparty/ippicv/ippicv.cmake
 +++ b/3rdparty/ippicv/ippicv.cmake
 @@ -39,18 +39,5 @@ function(download_ippicv root_var)
@@ -33,6 +34,3 @@
 -  endif()
 +  set(${root_var} "${THE_ROOT}/${OPENCV_ICV_PACKAGE_SUBDIR}" PARENT_SCOPE)
  endfunction()
--- 
-2.13.4
-
diff --git a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Dont-use-isystem.patch b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Dont-use-isystem.patch
index bf0b80a..40d3f53 100644
--- a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Dont-use-isystem.patch
+++ b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Dont-use-isystem.patch
@@ -1,4 +1,4 @@
-From 7144c44ec70dee73a628463b99ffeed74b1a8ef6 Mon Sep 17 00:00:00 2001
+From 9659f5a1e75fc29c9879c301767bba72ecf9042a Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Tue, 11 Sep 2018 00:21:18 -0700
 Subject: [PATCH] Dont use isystem
@@ -8,12 +8,13 @@
 Upstream-Status: Pending
 
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
 ---
  cmake/OpenCVPCHSupport.cmake | 2 ++
  1 file changed, 2 insertions(+)
 
 diff --git a/cmake/OpenCVPCHSupport.cmake b/cmake/OpenCVPCHSupport.cmake
-index f9b1b48b65..fe27a136f5 100644
+index 59bc826..055dfce 100644
 --- a/cmake/OpenCVPCHSupport.cmake
 +++ b/cmake/OpenCVPCHSupport.cmake
 @@ -18,6 +18,8 @@ IF(CV_GCC)
@@ -25,6 +26,3 @@
      SET(_PCH_include_prefix "-I")
      SET(_PCH_isystem_prefix "-isystem")
      SET(_PCH_define_prefix "-D")
--- 
-2.18.0
-
diff --git a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch
index 63cb7f9..f8ccd1d 100644
--- a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch
+++ b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch
@@ -1,19 +1,20 @@
-From 7d31f41d2a6759e244983504ce855fc32916b97a Mon Sep 17 00:00:00 2001
+From fe27d0e2341683606704115949d16250e4cacbfa Mon Sep 17 00:00:00 2001
 From: Jason Wessel <jason.wessel@windriver.com>
 Date: Wed, 9 May 2018 13:33:59 -0700
 Subject: [PATCH] Temporarliy work around deprecated ffmpeg RAW function
  compile failure until next uprev
 
 Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
+
 ---
  modules/videoio/src/cap_ffmpeg_impl.hpp | 8 ++++++++
  1 file changed, 8 insertions(+)
 
 diff --git a/modules/videoio/src/cap_ffmpeg_impl.hpp b/modules/videoio/src/cap_ffmpeg_impl.hpp
-index 5a9b10f075..97c6b74b07 100644
+index 0d360ad..566df66 100644
 --- a/modules/videoio/src/cap_ffmpeg_impl.hpp
 +++ b/modules/videoio/src/cap_ffmpeg_impl.hpp
-@@ -667,6 +667,14 @@ struct ImplMutex::Impl
+@@ -736,6 +736,14 @@ struct ImplMutex::Impl
  
  #endif
  
@@ -28,6 +29,3 @@
  void ImplMutex::init()
  {
      impl = new Impl();
--- 
-2.11.0
-
diff --git a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0002-Make-opencv-ts-create-share-library-intead-of-static.patch b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0002-Make-opencv-ts-create-share-library-intead-of-static.patch
index a845505..46198fb 100644
--- a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0002-Make-opencv-ts-create-share-library-intead-of-static.patch
+++ b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0002-Make-opencv-ts-create-share-library-intead-of-static.patch
@@ -1,15 +1,16 @@
-From 350525293aef65490e80104ddd99e1b21c5d54b0 Mon Sep 17 00:00:00 2001
+From 46ffa1f8f443b71673774fcb864eb741bbc26200 Mon Sep 17 00:00:00 2001
 From: Bian Naimeng <biannm@cn.fujitsu.com>
 Date: Wed, 19 Apr 2017 03:11:37 +0900
-Subject: [PATCH 2/3] Make opencv-ts create share library intead of static.
+Subject: [PATCH] Make opencv-ts create share library intead of static.
 
 Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com>
+
 ---
  modules/ts/CMakeLists.txt | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/modules/ts/CMakeLists.txt b/modules/ts/CMakeLists.txt
-index f95bed079..ee67858df 100644
+index f95bed0..ee67858 100644
 --- a/modules/ts/CMakeLists.txt
 +++ b/modules/ts/CMakeLists.txt
 @@ -4,7 +4,7 @@ if(NOT BUILD_opencv_ts AND NOT BUILD_TESTS AND NOT BUILD_PERF_TESTS)
@@ -21,6 +22,3 @@
  set(OPENCV_MODULE_IS_PART_OF_WORLD FALSE)
  
  if(WINRT)
--- 
-2.13.4
-
diff --git a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0003-To-fix-errors-as-following.patch b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0003-To-fix-errors-as-following.patch
index 5270b8c..336c2e0 100644
--- a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0003-To-fix-errors-as-following.patch
+++ b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0003-To-fix-errors-as-following.patch
@@ -1,7 +1,7 @@
-From ace48a628dca34d742615598afeef42ed323a029 Mon Sep 17 00:00:00 2001
+From 867caccc358266f7021f076fc8c8e41bf048782c Mon Sep 17 00:00:00 2001
 From: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
 Date: Fri, 19 May 2017 04:27:50 +0900
-Subject: [PATCH 3/3] To fix errors as following:
+Subject: [PATCH] To fix errors as following:
 
 "test_main.cpp:45: undefined reference to `parseCustomOptions(int, char**)'"
 "perf_abs.cpp:13: undefined reference to `cvtest::param_seed'"
@@ -13,17 +13,18 @@
 ts module.
 
 Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
+
 ---
- modules/ts/include/opencv2/ts.hpp          | 6 +++---
+ modules/ts/include/opencv2/ts.hpp          | 4 ++--
  modules/ts/include/opencv2/ts/ocl_test.hpp | 2 +-
  modules/ts/include/opencv2/ts/ts_ext.hpp   | 2 +-
- 3 files changed, 5 insertions(+), 5 deletions(-)
+ 3 files changed, 4 insertions(+), 4 deletions(-)
 
-Index: git/modules/ts/include/opencv2/ts.hpp
-===================================================================
---- git.orig/modules/ts/include/opencv2/ts.hpp
-+++ git/modules/ts/include/opencv2/ts.hpp
-@@ -608,7 +608,7 @@ protected:
+diff --git a/modules/ts/include/opencv2/ts.hpp b/modules/ts/include/opencv2/ts.hpp
+index b9d6b74..f1ee7ee 100644
+--- a/modules/ts/include/opencv2/ts.hpp
++++ b/modules/ts/include/opencv2/ts.hpp
+@@ -622,7 +622,7 @@ protected:
      }
  };
  
@@ -32,7 +33,7 @@
  
  struct DefaultRngAuto
  {
-@@ -671,7 +671,7 @@ private:
+@@ -685,7 +685,7 @@ private:
  #endif
  #endif
  
@@ -41,10 +42,10 @@
  
  #define CV_TEST_INIT0_NOOP (void)0
  
-Index: git/modules/ts/include/opencv2/ts/ocl_test.hpp
-===================================================================
---- git.orig/modules/ts/include/opencv2/ts/ocl_test.hpp
-+++ git/modules/ts/include/opencv2/ts/ocl_test.hpp
+diff --git a/modules/ts/include/opencv2/ts/ocl_test.hpp b/modules/ts/include/opencv2/ts/ocl_test.hpp
+index 11572e9..438112e 100644
+--- a/modules/ts/include/opencv2/ts/ocl_test.hpp
++++ b/modules/ts/include/opencv2/ts/ocl_test.hpp
 @@ -82,7 +82,7 @@ inline UMat ToUMat(InputArray src)
      return dst;
  }
@@ -54,10 +55,10 @@
  
  #define MAX_VALUE 357
  
-Index: git/modules/ts/include/opencv2/ts/ts_ext.hpp
-===================================================================
---- git.orig/modules/ts/include/opencv2/ts/ts_ext.hpp
-+++ git/modules/ts/include/opencv2/ts/ts_ext.hpp
+diff --git a/modules/ts/include/opencv2/ts/ts_ext.hpp b/modules/ts/include/opencv2/ts/ts_ext.hpp
+index b5cea3e..e5b0b4b 100644
+--- a/modules/ts/include/opencv2/ts/ts_ext.hpp
++++ b/modules/ts/include/opencv2/ts/ts_ext.hpp
 @@ -9,7 +9,7 @@
  #define OPENCV_TS_EXT_HPP
  
diff --git a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/fixpkgconfig.patch b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/fixpkgconfig.patch
deleted file mode 100644
index 3ed3468..0000000
--- a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/fixpkgconfig.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-Index: git/cmake/OpenCVGenPkgconfig.cmake
-===================================================================
---- git.orig/cmake/OpenCVGenPkgconfig.cmake
-+++ git/cmake/OpenCVGenPkgconfig.cmake
-@@ -31,7 +31,7 @@ macro(fix_prefix lst isown)
-       get_filename_component(libdir "${item}" PATH)
-       get_filename_component(_libname "${item}" NAME)
-       ocv_get_libname(libname "${_libname}")
--      list(APPEND _lst "-L${libdir}" "-l${libname}")
-+      list(APPEND _lst "-l${libname}")
-     else()
-       list(APPEND _lst "-l${item}")
-     endif()
-@@ -124,11 +124,14 @@ ocv_list_unique(_extra)
- ocv_list_unique(_3rdparty)
- 
- set(OPENCV_PC_LIBS
--  "-L\${exec_prefix}/${OPENCV_LIB_INSTALL_PATH}"
-+  "-L\${exec_prefix}/${OPENCV_3P_LIB_INSTALL_PATH}"
-   "${_modules}"
- )
- if(BUILD_SHARED_LIBS)
--  set(OPENCV_PC_LIBS_PRIVATE "${_extra}")
-+  set(OPENCV_PC_LIBS_PRIVATE
-+    "-L\${exec_prefix}/${OPENCV_LIB_INSTALL_PATH}"
-+    "${_extra}"
-+  )
- else()
-   set(OPENCV_PC_LIBS_PRIVATE
-     "-L\${exec_prefix}/${OPENCV_3P_LIB_INSTALL_PATH}"
diff --git a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/uselocalxfeatures.patch b/meta-openembedded/meta-oe/recipes-support/opencv/opencv/uselocalxfeatures.patch
deleted file mode 100644
index fc273a8..0000000
--- a/meta-openembedded/meta-oe/recipes-support/opencv/opencv/uselocalxfeatures.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff --git a/modules/xfeatures2d/CMakeLists.txt b/modules/xfeatures2d/CMakeLists.txt
-index e1755595..c7009c47 100644
---- a/modules/xfeatures2d/CMakeLists.txt
-+++ b/modules/xfeatures2d/CMakeLists.txt
-@@ -5,10 +5,10 @@ ocv_define_module(xfeatures2d opencv_core opencv_imgproc opencv_features2d openc
- include(${CMAKE_CURRENT_SOURCE_DIR}/cmake/download_vgg.cmake)
- include(${CMAKE_CURRENT_SOURCE_DIR}/cmake/download_boostdesc.cmake)
- set(DOWNLOAD_DIR "${OpenCV_BINARY_DIR}/downloads/xfeatures2d")
--download_boost_descriptors("${DOWNLOAD_DIR}" boost_status)
--download_vgg_descriptors("${DOWNLOAD_DIR}" vgg_status)
--if(NOT boost_status OR NOT vgg_status)
--  ocv_module_disable(xfeatures2d)
--endif()
-+#download_boost_descriptors("${DOWNLOAD_DIR}" boost_status)
-+#download_vgg_descriptors("${DOWNLOAD_DIR}" vgg_status)
-+#if(NOT boost_status OR NOT vgg_status)
-+#  ocv_module_disable(xfeatures2d)
-+#endif()
- 
- ocv_module_include_directories("${DOWNLOAD_DIR}")
diff --git a/meta-openembedded/meta-oe/recipes-support/opencv/opencv_3.4.5.bb b/meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.1.0.bb
similarity index 81%
rename from meta-openembedded/meta-oe/recipes-support/opencv/opencv_3.4.5.bb
rename to meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.1.0.bb
index ce60698..77b5dd6 100644
--- a/meta-openembedded/meta-oe/recipes-support/opencv/opencv_3.4.5.bb
+++ b/meta-openembedded/meta-oe/recipes-support/opencv/opencv_4.1.0.bb
@@ -3,20 +3,18 @@
 SECTION = "libs"
 
 LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=62d89c5dcb0583609ea919c56be0ee76"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=6450921bb12a3133c8f5cb2a80343710"
 
 ARM_INSTRUCTION_SET_armv4 = "arm"
 ARM_INSTRUCTION_SET_armv5 = "arm"
 
 DEPENDS = "libtool swig-native bzip2 zlib glib-2.0 libwebp"
 
-SRCREV_opencv = "8f1356c3c5b16721349582db461a2051653059e8"
-SRCREV_contrib = "7292df62624ded8af8035231435dfd17c93e1a80"
+SRCREV_opencv = "371bba8f54560b374fbcd47e7e02f015ac4969ad"
+SRCREV_contrib = "2c32791a9c500343568a21ea34bf2daeac2adae7"
 SRCREV_ipp = "32e315a5b106a7b89dbed51c28f8120a48b368b4"
 SRCREV_boostdesc = "34e4206aef44d50e6bbcd0ab06354b52e7466d26"
 SRCREV_vgg = "fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d"
-SRC_URI[tinydnn.md5sum] = "adb1c512e09ca2c7a6faef36f9c53e59"
-SRC_URI[tinydnn.sha256sum] = "e2c61ce8c5debaa644121179e9dbdcf83f497f39de853f8dd5175846505aa18b"
 
 def ipp_filename(d):
     import re
@@ -39,26 +37,21 @@
 
 SRCREV_FORMAT = "opencv_contrib_ipp_boostdesc_vgg"
 SRC_URI = "git://github.com/opencv/opencv.git;name=opencv \
-    git://github.com/opencv/opencv_contrib.git;destsuffix=contrib;name=contrib \
-    git://github.com/opencv/opencv_3rdparty.git;branch=ippicv/master_20180723;destsuffix=ipp;name=ipp \
-    git://github.com/opencv/opencv_3rdparty.git;branch=contrib_xfeatures2d_boostdesc_20161012;destsuffix=boostdesc;name=boostdesc \
-    git://github.com/opencv/opencv_3rdparty.git;branch=contrib_xfeatures2d_vgg_20160317;destsuffix=vgg;name=vgg \
-    https://github.com/tiny-dnn/tiny-dnn/archive/v1.0.0a3.tar.gz;destsuffix=git/3rdparty/tinydnn/tiny-dnn-1.0.0a3;name=tinydnn;unpack=false \
-    file://0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch \
-    file://uselocalxfeatures.patch;patchdir=../contrib/ \
-    file://0002-Make-opencv-ts-create-share-library-intead-of-static.patch \
-    file://0003-To-fix-errors-as-following.patch \
-    file://fixpkgconfig.patch \
-    file://0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch \
-    file://0001-Dont-use-isystem.patch \
-"
-PV = "3.4.5"
+           git://github.com/opencv/opencv_contrib.git;destsuffix=contrib;name=contrib \
+           git://github.com/opencv/opencv_3rdparty.git;branch=ippicv/master_20180723;destsuffix=ipp;name=ipp \
+           git://github.com/opencv/opencv_3rdparty.git;branch=contrib_xfeatures2d_boostdesc_20161012;destsuffix=boostdesc;name=boostdesc \
+           git://github.com/opencv/opencv_3rdparty.git;branch=contrib_xfeatures2d_vgg_20160317;destsuffix=vgg;name=vgg \
+           file://0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch \
+           file://0002-Make-opencv-ts-create-share-library-intead-of-static.patch \
+           file://0003-To-fix-errors-as-following.patch \
+           file://0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch \
+           file://0001-Dont-use-isystem.patch \
+           "
+PV = "4.1.0"
 
 S = "${WORKDIR}/git"
 
 do_unpack_extra() {
-    mkdir -p ${S}/3rdparty/tinydnn/
-    tar xzf ${WORKDIR}/v1.0.0a3.tar.gz -C ${S}/3rdparty/tinydnn/
     tar xzf ${WORKDIR}/ipp/ippicv/${IPP_FILENAME} -C ${WORKDIR}
     cp ${WORKDIR}/vgg/*.i ${WORKDIR}/contrib/modules/xfeatures2d/src
     cp ${WORKDIR}/boostdesc/*.i ${WORKDIR}/contrib/modules/xfeatures2d/src
@@ -157,11 +150,11 @@
 
 FILES_${PN} = ""
 FILES_${PN}-dbg += "${datadir}/OpenCV/java/.debug/* ${datadir}/OpenCV/samples/bin/.debug/*"
-FILES_${PN}-dev = "${includedir} ${libdir}/pkgconfig ${datadir}/OpenCV/*.cmake"
-FILES_${PN}-staticdev += "${datadir}/OpenCV/3rdparty/lib/*.a"
-FILES_${PN}-apps = "${bindir}/* ${datadir}/OpenCV"
+FILES_${PN}-dev = "${includedir} ${libdir}/pkgconfig  ${libdir}/cmake/opencv4/*.cmake"
+FILES_${PN}-staticdev += "${libdir}/opencv4/3rdparty/*.a"
+FILES_${PN}-apps = "${bindir}/* ${datadir}/opencv4 ${datadir}/licenses"
 FILES_${PN}-java = "${datadir}/OpenCV/java"
-FILES_${PN}-samples = "${datadir}/OpenCV/samples/"
+FILES_${PN}-samples = "${datadir}/opencv4/samples/"
 
 INSANE_SKIP_${PN}-java = "libdir"
 INSANE_SKIP_${PN}-dbg = "libdir"
@@ -179,9 +172,6 @@
 RDEPENDS_${PN}-apps  = "bash"
 
 do_install_append() {
-    cp ${S}/include/opencv/*.h ${D}${includedir}/opencv/
-    sed -i '/blobtrack/d' ${D}${includedir}/opencv/cvaux.h
-
     # Move Python files into correct library folder (for multilib build)
     if [ "$libdir" != "/usr/lib" -a -d ${D}/usr/lib ]; then
         mv ${D}/usr/lib/* ${D}/${libdir}/
diff --git a/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.47.bb b/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.48.bb
similarity index 97%
rename from meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.47.bb
rename to meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.48.bb
index 4345d7d..ecc219d 100644
--- a/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.47.bb
+++ b/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.48.bb
@@ -7,7 +7,7 @@
 # basically BSD.  opensource.org does not record this license
 # at present (so it is apparently not OSI certified).
 LICENSE = "OpenLDAP"
-LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=25b4ead0e45182e7c2914e59ff57009f \
+LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=ad914c35f97b468f421f8ac0f3d821f4 \
                     file://LICENSE;md5=153d07ef052c4a37a8fac23bc6031972 \
                     "
 SECTION = "libs"
@@ -26,8 +26,8 @@
     file://remove-user-host-pwd-from-version.patch \
 "
 
-SRC_URI[md5sum] = "e508f97bfd778fec7799f286e5c07176"
-SRC_URI[sha256sum] = "f54c5877865233d9ada77c60c0f69b3e0bfd8b1b55889504c650047cc305520b"
+SRC_URI[md5sum] = "0729a0711fe096831dedc159e0bbe73f"
+SRC_URI[sha256sum] = "d9523ffcab5cd14b709fcf3cb4d04e8bc76bb8970113255f372bc74954c6074d"
 
 DEPENDS = "util-linux groff-native"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/picocom/picocom/0001-Fix-building-with-musl.patch b/meta-openembedded/meta-oe/recipes-support/picocom/picocom/0001-Fix-building-with-musl.patch
new file mode 100644
index 0000000..5b344b9
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/picocom/picocom/0001-Fix-building-with-musl.patch
@@ -0,0 +1,118 @@
+From 9664809da36bd7bada3e44f50cfc042539fb61ee Mon Sep 17 00:00:00 2001
+From: Paul Eggleton <paul.eggleton@linux.intel.com>
+Date: Sun, 14 Jul 2019 19:13:21 -0700
+Subject: [PATCH] Fix building with musl
+
+Upstream-status: Pending
+
+Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
+---
+ termios2.c | 27 +++++++++++++++++++++++++++
+ termios2.h |  5 +++++
+ 2 files changed, 32 insertions(+)
+
+diff --git a/termios2.c b/termios2.c
+index 97c3be0..88ff6fc 100644
+--- a/termios2.c
++++ b/termios2.c
+@@ -37,6 +37,7 @@
+ #include <errno.h>
+ #include <termios.h>
+ #include <sys/ioctl.h>
++#include <asm/ioctls.h>
+ 
+ /* Contains the definition of the termios2 structure and some related
+    constants that we should normally include from system
+@@ -53,6 +54,10 @@
+ */
+ #define IBAUD0 020000000000
+ 
++#if !defined(__GLIBC__)
++#define __MAX_BAUD B4000000
++#endif
++
+ int
+ tc2setattr(int fd, int optional_actions, const struct termios *tios)
+ {
+@@ -79,8 +84,13 @@ tc2setattr(int fd, int optional_actions, const struct termios *tios)
+     t2.c_cflag = tios->c_cflag;
+     t2.c_lflag = tios->c_lflag;
+     t2.c_line = tios->c_line;
++#if !defined(__GLIBC__)
++    t2.c_ispeed = tios->__c_ispeed;
++    t2.c_ospeed = tios->__c_ospeed;
++#else
+     t2.c_ispeed = tios->c_ispeed;
+     t2.c_ospeed = tios->c_ospeed;
++#endif
+     memcpy(&t2.c_cc[0], &tios->c_cc[0], K_NCCS * sizeof (cc_t));
+ 
+     return ioctl(fd, cmd, &t2);
+@@ -101,8 +111,13 @@ tc2getattr(int fd, struct termios *tios)
+     tios->c_cflag = t2.c_cflag;
+     tios->c_lflag = t2.c_lflag;
+     tios->c_line = t2.c_line;
++#if !defined(__GLIBC__)
++    tios->__c_ispeed = t2.c_ispeed;
++    tios->__c_ospeed = t2.c_ospeed;
++#else
+     tios->c_ispeed = t2.c_ispeed;
+     tios->c_ospeed = t2.c_ospeed;
++#endif
+     memcpy(&tios->c_cc[0], &t2.c_cc[0], K_NCCS * sizeof (cc_t));
+ 
+     for (i = K_NCCS; i < NCCS; i++)
+@@ -131,7 +146,11 @@ cf2setispeed(struct termios *tios, speed_t speed)
+         errno = EINVAL;
+         return -1;
+     }
++#if !defined(__GLIBC__)
++    tios->__c_ispeed = speed;
++#else
+     tios->c_ispeed = speed;
++#endif
+     tios->c_cflag &= ~((CBAUD | CBAUDEX) << IBSHIFT);
+     tios->c_cflag |= (speed << IBSHIFT);
+ 
+@@ -156,7 +175,11 @@ cf2setospeed_custom(struct termios *tios, int speed)
+     }
+     tios->c_cflag &= ~(CBAUD | CBAUDEX);
+     tios->c_cflag |= BOTHER;
++#if !defined(__GLIBC__)
++    tios->__c_ospeed = speed;
++#else
+     tios->c_ospeed = speed;
++#endif
+ 
+     return 0;
+ }
+@@ -177,7 +200,11 @@ cf2setispeed_custom(struct termios *tios, int speed)
+     } else {
+         tios->c_cflag &= ~((CBAUD | CBAUDEX) << IBSHIFT);
+         tios->c_cflag |= (BOTHER << IBSHIFT);
++#if !defined(__GLIBC__)
++        tios->__c_ispeed = speed;
++#else
+         tios->c_ispeed = speed;
++#endif
+     }
+ 
+     return 0;
+diff --git a/termios2.h b/termios2.h
+index e13b0e3..63dd0ce 100644
+--- a/termios2.h
++++ b/termios2.h
+@@ -37,8 +37,13 @@
+ /* And define these new ones */
+ #define cfsetospeed_custom cf2setospeed_custom
+ #define cfsetispeed_custom cf2setispeed_custom
++#if defined(__linux__) && !defined(__GLIBC__)
++#define cfgetospeed_custom(tiop) ((tiop)->__c_ospeed)
++#define cfgetispeed_custom(tiop) ((tiop)->__c_ispeed)
++#else
+ #define cfgetospeed_custom(tiop) ((tiop)->c_ospeed)
+ #define cfgetispeed_custom(tiop) ((tiop)->c_ispeed)
++#endif
+ 
+ /* Replacements for the standard tcsetattr(3), tcgetattr(3)
+  * functions. Same user interface, but these use the new termios2
diff --git a/meta-openembedded/meta-oe/recipes-support/picocom/picocom_git.bb b/meta-openembedded/meta-oe/recipes-support/picocom/picocom_git.bb
index e091094..3d26b93 100644
--- a/meta-openembedded/meta-oe/recipes-support/picocom/picocom_git.bb
+++ b/meta-openembedded/meta-oe/recipes-support/picocom/picocom_git.bb
@@ -1,15 +1,17 @@
-SUMMARY = "Lightweight and minimal (~20K) dumb-terminal emulation program"
+SUMMARY = "Lightweight and minimal dumb-terminal emulation program"
 SECTION = "console/utils"
 LICENSE = "GPLv2+"
-HOMEPAGE = "http://code.google.com/p/picocom/"
+HOMEPAGE = "https://github.com/npat-efault/picocom"
 LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3000e4830620e310fe65c0eb69df9e8a"
 
-BASEPV = "2.2"
+BASEPV = "3.1"
 PV = "${BASEPV}+git${SRCPV}"
 
-SRCREV = "deffd18c24145bd6f965f44e735a50b65810ccdc"
+SRCREV = "90385aabe2b51f39fa130627d46b377569f82d4a"
 
-SRC_URI = "git://github.com/npat-efault/picocom"
+SRC_URI = "git://github.com/npat-efault/picocom \
+           file://0001-Fix-building-with-musl.patch \
+           "
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/pidgin/gmime_3.2.3.bb b/meta-openembedded/meta-oe/recipes-support/pidgin/gmime_3.2.3.bb
index 8c6f0b0..bce89be 100644
--- a/meta-openembedded/meta-oe/recipes-support/pidgin/gmime_3.2.3.bb
+++ b/meta-openembedded/meta-oe/recipes-support/pidgin/gmime_3.2.3.bb
@@ -4,7 +4,7 @@
 SECTION = "libs"
 DEPENDS = "glib-2.0 zlib"
 
-inherit gnome autotools gobject-introspection
+inherit gnomebase autotools gobject-introspection
 
 SRC_URI += "file://iconv-detect.h \
             file://nodolt.patch"
diff --git a/meta-openembedded/meta-oe/recipes-support/poppler/poppler/0001-glib-CMakeLists.txt-Add-libpoppler-to-link-along-wit.patch b/meta-openembedded/meta-oe/recipes-support/poppler/poppler/0001-glib-CMakeLists.txt-Add-libpoppler-to-link-along-wit.patch
deleted file mode 100644
index c364d73..0000000
--- a/meta-openembedded/meta-oe/recipes-support/poppler/poppler/0001-glib-CMakeLists.txt-Add-libpoppler-to-link-along-wit.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From d488de23b75b2f3e235f1c184b2253d1402b4c0f Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 10 May 2018 23:47:56 -0700
-Subject: [PATCH] glib/CMakeLists.txt: Add libpoppler to link along with
- poppler-glib
-
-This is required since poppler-glib uses symbols from poppler and
-we use --as-needed
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- glib/CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/glib/CMakeLists.txt b/glib/CMakeLists.txt
-index 6f91669..ca5021f 100644
---- a/glib/CMakeLists.txt
-+++ b/glib/CMakeLists.txt
-@@ -135,7 +135,7 @@ if (HAVE_INTROSPECTION AND BUILD_SHARED_LIBS)
-   get_directory_property(_tmp_includes INCLUDE_DIRECTORIES)
-   _list_prefix(_includes _tmp_includes "-I")
-   set(Poppler_0_18_gir_CFLAGS ${_includes} -L${CMAKE_BINARY_DIR} -L${CMAKE_CURRENT_BINARY_DIR})
--  set(Poppler_0_18_gir_LIBS poppler-glib)
-+  set(Poppler_0_18_gir_LIBS poppler-glib poppler)
-   _list_prefix(_abs_introspection_files introspection_files "${CMAKE_CURRENT_SOURCE_DIR}/")
-   list(APPEND _abs_introspection_files
-     ${CMAKE_CURRENT_BINARY_DIR}/poppler-enums.c
--- 
-2.20.1
-
diff --git a/meta-openembedded/meta-oe/recipes-support/poppler/poppler/basename-include.patch b/meta-openembedded/meta-oe/recipes-support/poppler/poppler/basename-include.patch
index ab6bdb0..c18a5f5 100644
--- a/meta-openembedded/meta-oe/recipes-support/poppler/poppler/basename-include.patch
+++ b/meta-openembedded/meta-oe/recipes-support/poppler/poppler/basename-include.patch
@@ -1,20 +1,31 @@
-Minic GNU basename() API for non-glibc library e.g. musl
+From 2ac679158062b14729f82f513fc7cafbb6f4f7a6 Mon Sep 17 00:00:00 2001
+From: Randy MacLeod <Randy.MacLeod@windriver.com>
+Date: Fri, 26 Jul 2019 14:26:54 -0400
+Subject: [PATCH 3/3] Minic GNU basename() API for non-glibc library e.g. musl
 
 Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
 
-Index: poppler-0.64.0/utils/pdfsig.cc
-===================================================================
---- poppler-0.64.0.orig/utils/pdfsig.cc
-+++ poppler-0.64.0/utils/pdfsig.cc
-@@ -35,6 +35,10 @@
- #include "numberofcharacters.h"
- #include <libgen.h>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
+---
+ goo/gbasename.cc | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/goo/gbasename.cc b/goo/gbasename.cc
+index 830c1c80..e93eb368 100644
+--- a/goo/gbasename.cc
++++ b/goo/gbasename.cc
+@@ -46,6 +46,10 @@
+ #include <stdlib.h>
+ #include <string.h>
  
 +#if !defined(__GLIBC__)
 +#define basename(src) (strrchr(src,'/') ? strrchr(src,'/')+1 : src)
 +#endif
 +
- static const char * getReadableSigState(SignatureValidationStatus sig_vs)
+ std::string gbasename(const char* filename)
  {
-   switch(sig_vs) {
+ #ifdef _MSC_VER
+-- 
+2.17.0
+
diff --git a/meta-openembedded/meta-oe/recipes-support/poppler/poppler_0.75.0.bb b/meta-openembedded/meta-oe/recipes-support/poppler/poppler_0.79.0.bb
similarity index 89%
rename from meta-openembedded/meta-oe/recipes-support/poppler/poppler_0.75.0.bb
rename to meta-openembedded/meta-oe/recipes-support/poppler/poppler_0.79.0.bb
index 0704f1a..b285eec 100644
--- a/meta-openembedded/meta-oe/recipes-support/poppler/poppler_0.75.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/poppler/poppler_0.79.0.bb
@@ -5,11 +5,10 @@
 SRC_URI = "http://poppler.freedesktop.org/${BP}.tar.xz \
            file://0001-Do-not-overwrite-all-our-build-flags.patch \
            file://0002-CairoOutputDev.cc-fix-build-error-when-using-fixedpo.patch \
-           file://0001-glib-CMakeLists.txt-Add-libpoppler-to-link-along-wit.patch \
            file://basename-include.patch \
            "
-SRC_URI[md5sum] = "3fb4ca803d989742695ca586c5cc489e"
-SRC_URI[sha256sum] = "3bbaedb0fa2797cac933a0659d144303e4d09eec6892c65600da987d8707199a"
+SRC_URI[md5sum] = "0aac1fcb6466f8b7bdf51871264c7e83"
+SRC_URI[sha256sum] = "f985a4608fe592d2546d9d37d4182e502ff6b4c42f8db4be0a021a1c369528c8"
 
 DEPENDS = "fontconfig zlib cairo lcms glib-2.0"
 
@@ -35,6 +34,7 @@
     -DBUILD_GTK_TESTS=OFF \
     -DENABLE_ZLIB=ON \
     -DCMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES:PATH='${STAGING_INCDIR}' \
+    ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DENABLE_GOBJECT_INTROSPECTION=ON', '-DENABLE_GOBJECT_INTROSPECTION=OFF', d)} \
 "
 
 do_configure_append() {
diff --git a/meta-openembedded/meta-oe/recipes-support/samsung-soc-utils/files/0001-ppt.c-Do-not-include-sys-io.h.patch b/meta-openembedded/meta-oe/recipes-support/samsung-soc-utils/files/0001-ppt.c-Do-not-include-sys-io.h.patch
new file mode 100644
index 0000000..4e6c250
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/samsung-soc-utils/files/0001-ppt.c-Do-not-include-sys-io.h.patch
@@ -0,0 +1,28 @@
+From fd244ae648789591f0fb79e74d2b8f6c5b15d6e8 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 6 Aug 2019 00:47:14 +0000
+Subject: [PATCH] ppt.c: Do not include sys/io.h
+
+newer versions of glibc has removed it
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ ppt.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/ppt.c b/ppt.c
+index 0bae2d0..0ef279f 100644
+--- a/ppt.c
++++ b/ppt.c
+@@ -5,7 +5,6 @@
+ #else

+ #include <unistd.h>

+ #include <stdlib.h>

+-#include <sys/io.h>

+ #include <linux/parport.h>

+ #include <linux/ppdev.h>

+ #include <sys/ioctl.h>

+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-support/samsung-soc-utils/sjf2410-linux-native_svn.bb b/meta-openembedded/meta-oe/recipes-support/samsung-soc-utils/sjf2410-linux-native_svn.bb
index 2d5935d..c56c8b9 100644
--- a/meta-openembedded/meta-oe/recipes-support/samsung-soc-utils/sjf2410-linux-native_svn.bb
+++ b/meta-openembedded/meta-oe/recipes-support/samsung-soc-utils/sjf2410-linux-native_svn.bb
@@ -7,7 +7,9 @@
 PV = "0.1+svnr${SRCPV}"
 PR = "r1"
 
-SRC_URI = "svn://svn.openmoko.org/trunk/src/host/;module=sjf2410-linux;protocol=http"
+SRC_URI = "svn://svn.openmoko.org/trunk/src/host/;module=sjf2410-linux;protocol=http \
+           file://0001-ppt.c-Do-not-include-sys-io.h.patch \
+          "
 S = "${WORKDIR}/sjf2410-linux"
 
 inherit native deploy
diff --git a/meta-openembedded/meta-oe/recipes-support/satyr/satyr_0.27.bb b/meta-openembedded/meta-oe/recipes-support/satyr/satyr_0.27.bb
index 10dfc2b..cc07dcb 100644
--- a/meta-openembedded/meta-oe/recipes-support/satyr/satyr_0.27.bb
+++ b/meta-openembedded/meta-oe/recipes-support/satyr/satyr_0.27.bb
@@ -19,8 +19,8 @@
     gdb \
 "
 
-PACKAGES += "python3-${PN}"
-FILES_python3-${PN} = "${PYTHON_SITEPACKAGES_DIR}/${BPN}"
+PACKAGES += "python3-${BPN}"
+FILES_python3-${BPN} = "${PYTHON_SITEPACKAGES_DIR}/${BPN}"
 
 PACKAGECONFIG ??= "python3 rpm"
 PACKAGECONFIG[python2] = "--with-python2, --without-python2,,python2"
diff --git a/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils_4.15.2.bb b/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils_4.15.2.bb
index dca4267..8f39fde 100644
--- a/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils_4.15.2.bb
+++ b/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils_4.15.2.bb
@@ -6,7 +6,7 @@
 
 inherit gettext autotools
 
-SRC_URI = "ftp://ftp.gnu.org/gnu/${BPN}/${BP}.tar.gz \
+SRC_URI = "${GNU_MIRROR}/${BPN}/${BP}.tar.gz \
            file://0001-Fix-build-with-clang.patch \
            file://CVE-2018-1000097.patch \
 "
diff --git a/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng.inc b/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng.inc
index c183f05..b00cb91 100644
--- a/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng.inc
+++ b/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng.inc
@@ -86,6 +86,7 @@
 
         install -d ${D}${systemd_unitdir}/system/
         install -m 0644 ${S}/contrib/systemd/${BPN}@.service ${D}${systemd_unitdir}/system/${BPN}@.service
+        install -m 0644 ${S}/${BPN}.service ${D}${systemd_unitdir}/system/${BPN}.service
         install -m 0644 ${S}/contrib/systemd/${BPN}@default ${D}${sysconfdir}/default/${BPN}@default
 
         sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_unitdir}/system/${BPN}@.service ${D}${sysconfdir}/default/${BPN}@default
@@ -117,6 +118,7 @@
 FILES_${PN}-libs = "${libdir}/${BPN}/*.so ${libdir}/libsyslog-ng-*.so*"
 FILES_${PN}-libs-dev = "${libdir}/${BPN}/lib*.la"
 FILES_${PN}-staticdev += "${libdir}/${BPN}/libtest/*.a"
+FILES_${PN} += "${systemd_unitdir}/system/*.service"
 INSANE_SKIP_${PN}-libs = "dev-so"
 RDEPENDS_${PN} += "${PN}-libs"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/thin-provisioning-tools/files/0001-fix-compile-failed-with-libc-musl.patch b/meta-openembedded/meta-oe/recipes-support/thin-provisioning-tools/files/0001-fix-compile-failed-with-libc-musl.patch
deleted file mode 100644
index 28b44da..0000000
--- a/meta-openembedded/meta-oe/recipes-support/thin-provisioning-tools/files/0001-fix-compile-failed-with-libc-musl.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From fcbcf9c494cca166106ae4cb03c1dd135ee4f25c Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Wed, 1 Aug 2018 09:34:00 +0800
-Subject: [PATCH] fix compile failed with libc musl
-
-There is a failure while compiling with libc musl:
-[snip]
-|./block-cache/io_engine.h:18:17: error: expected
-unqualified-id before numeric constant
-|  unsigned const PAGE_SIZE = 4096;
-[snip]
-
-The musl defeines macro PAGE_SIZE, undef it conditionally
-could fix the issue.
-
-http://musl.openwall.narkive.com/tO8vrHdP/why-musl-define-page-size
-
-Upstream-Status: Submitted [git://github.com/jthornber/thin-provisioning-tools]
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- block-cache/io_engine.h | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/block-cache/io_engine.h b/block-cache/io_engine.h
-index 1704251..e36b932 100644
---- a/block-cache/io_engine.h
-+++ b/block-cache/io_engine.h
-@@ -12,6 +12,10 @@
- 
- //----------------------------------------------------------------
- 
-+// Musl defines
-+#ifdef PAGE_SIZE
-+#undef PAGE_SIZE
-+#endif
- namespace bcache {
- 	using sector_t = uint64_t;
- 
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-oe/recipes-support/thin-provisioning-tools/files/use-sh-on-path.patch b/meta-openembedded/meta-oe/recipes-support/thin-provisioning-tools/files/use-sh-on-path.patch
index 8cb16de..de934c1 100644
--- a/meta-openembedded/meta-oe/recipes-support/thin-provisioning-tools/files/use-sh-on-path.patch
+++ b/meta-openembedded/meta-oe/recipes-support/thin-provisioning-tools/files/use-sh-on-path.patch
@@ -1,5 +1,7 @@
-
-thin-provisioning-tools: use sh on path when invoking txt2man
+From 38397b42e2c3450c2aee20e6fb92f362db4e35ef Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Tue, 2 Jul 2019 13:20:39 +0800
+Subject: [PATCH] thin-provisioning-tools: use sh on path when invoking txt2man
 
 txt2man contains a test which might try to use ksh to run the script, so we
 avoid running /bin/sh.
@@ -8,14 +10,25 @@
 
 Signed-off-by: joe.slater <joe.slater@windriver.com>
 
+Rebase to 0.8.5
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ Makefile.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index 7c867b2..5303994 100644
 --- a/Makefile.in
 +++ b/Makefile.in
-@@ -210,7 +210,7 @@ endif
- 
+@@ -223,7 +223,7 @@ endif
  %.8: %.txt bin/txt2man
  	@echo "    [txt2man] $<"
+ 	@mkdir -p $(dir $@)
 -	$(V) bin/txt2man -p -t $(basename $(notdir $<)) $< > $@
 +	$(V) sh bin/txt2man -p -t $(basename $(notdir $<)) $< > $@
  
  #----------------------------------------------------------------
  
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-oe/recipes-support/thin-provisioning-tools/thin-provisioning-tools_0.7.6.bb b/meta-openembedded/meta-oe/recipes-support/thin-provisioning-tools/thin-provisioning-tools_0.8.5.bb
similarity index 84%
rename from meta-openembedded/meta-oe/recipes-support/thin-provisioning-tools/thin-provisioning-tools_0.7.6.bb
rename to meta-openembedded/meta-oe/recipes-support/thin-provisioning-tools/thin-provisioning-tools_0.8.5.bb
index 5f6ba9e..9f89bac 100644
--- a/meta-openembedded/meta-oe/recipes-support/thin-provisioning-tools/thin-provisioning-tools_0.7.6.bb
+++ b/meta-openembedded/meta-oe/recipes-support/thin-provisioning-tools/thin-provisioning-tools_0.8.5.bb
@@ -9,11 +9,10 @@
 
 SRC_URI = "git://github.com/jthornber/thin-provisioning-tools \
            file://0001-do-not-strip-pdata_tools-at-do_install.patch \
-           file://0001-fix-compile-failed-with-libc-musl.patch \
            file://use-sh-on-path.patch \
 "
 
-SRCREV = "6f936992b8e6208a7838fcf1ec87c5bd3a694a77"
+SRCREV = "5e5409f48b5403d2c6dffd9919b35ad77d6fb7b4"
 
 UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/tree/tree_1.7.0.bb b/meta-openembedded/meta-oe/recipes-support/tree/tree_1.7.0.bb
index 2e8ebdb..5eff552 100644
--- a/meta-openembedded/meta-oe/recipes-support/tree/tree_1.7.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/tree/tree_1.7.0.bb
@@ -4,7 +4,7 @@
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=393a5ca445f6965873eca0259a17f833"
 
-SRC_URI = "ftp://mama.indstate.edu/linux/${BPN}/${BP}.tgz"
+SRC_URI = "http://mama.indstate.edu/users/ice/tree/src/${BP}.tgz"
 SRC_URI[md5sum] = "abe3e03e469c542d8e157cdd93f4d8a6"
 SRC_URI[sha256sum] = "6957c20e82561ac4231638996e74f4cfa4e6faabc5a2f511f0b4e3940e8f7b12"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/udisks/udisks/0001-Make-udev-rules-directory-configurable.patch b/meta-openembedded/meta-oe/recipes-support/udisks/udisks/0001-Make-udev-rules-directory-configurable.patch
deleted file mode 100644
index 2823c54..0000000
--- a/meta-openembedded/meta-oe/recipes-support/udisks/udisks/0001-Make-udev-rules-directory-configurable.patch
+++ /dev/null
@@ -1,89 +0,0 @@
-From a6eab413f274376cf703a608e2866118291a6185 Mon Sep 17 00:00:00 2001
-From: Amarnath Valluri <amarnath.valluri@intel.com>
-Date: Thu, 9 Feb 2017 11:02:53 +0200
-Subject: [PATCH] Make udev rules directory configurable.
-
-udev rules directory can be configurable via undevrulesdir variable. And use
-libdir, sbindir for installing librares and binaries.
-
-Upstream-Status: Inappropriate[Embedded specific]
-
-Signed-off-by: Amarnath Valluri <amarnath.valluri@intel.com>
-
----
- configure.ac            | 14 +++-----------
- data/Makefile.am        |  1 -
- src/probers/Makefile.am |  2 +-
- tools/Makefile.am       |  2 +-
- 4 files changed, 5 insertions(+), 14 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 8c4e4c2..a143397 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -227,15 +227,8 @@ if test "x$GCC" = "xyes"; then
-   LDFLAGS="-Wl,--as-needed $LDFLAGS"
- fi
- 
--if test "$prefix" = "/usr" -o "$prefix" = "/usr/local" ; then
--  slashlibdir=/lib
--  slashsbindir=/sbin
--else
--  slashlibdir=$prefix/lib
--  slashsbindir=$prefix/sbin
--fi
--AC_SUBST(slashlibdir)
--AC_SUBST(slashsbindir)
-+udevrulesdir=/lib/udev/udev.d
-+AC_SUBST(udevrulesdir)
- 
- # *************
- # Remote Access
-@@ -299,8 +292,7 @@ echo "
-         sysconfdir:                 ${sysconfdir}
-         localstatedir:              ${localstatedir}
-         docdir:                     ${docdir}
--        slashlibdir:                ${slashlibdir}
--        slashsbindir:               ${slashsbindir}
-+        udevrulesdir:               ${udevrulesdir}
-         systemdsystemunitdir:       ${systemdsystemunitdir}
- 
-         compiler:                   ${CC}
-diff --git a/data/Makefile.am b/data/Makefile.am
-index 08af5f4..9329186 100644
---- a/data/Makefile.am
-+++ b/data/Makefile.am
-@@ -34,7 +34,6 @@ $(systemdservice_DATA): $(systemdservice_in_files) Makefile
- 	@sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
- endif
- 
--udevrulesdir = $(slashlibdir)/udev/rules.d
- udevrules_DATA = 80-udisks.rules
- 
- pkgconfigdir = $(datadir)/pkgconfig
-diff --git a/src/probers/Makefile.am b/src/probers/Makefile.am
-index 01c693b..6a0361a 100644
---- a/src/probers/Makefile.am
-+++ b/src/probers/Makefile.am
-@@ -20,7 +20,7 @@ INCLUDES = \
- # TODO: ideally move most of this to udev and/or util-linux
- #
- 
--udevhelperdir = $(slashlibdir)/udev
-+udevhelperdir = $(libdir)/udev
- udevhelper_PROGRAMS =	udisks-part-id 			\
- 			udisks-probe-sas-expander 	\
- 			$(NULL)
-diff --git a/tools/Makefile.am b/tools/Makefile.am
-index 18325f7..0aaec11 100644
---- a/tools/Makefile.am
-+++ b/tools/Makefile.am
-@@ -54,7 +54,7 @@ udisks_LDADD = 						\
- 	$(DBUS_GLIB_LIBS)				\
- 	$(POLKIT_DBUS_LIBS)
- 
--slashsbin_PROGRAMS = umount.udisks
-+sbin_PROGRAMS = umount.udisks
- 
- umount_udisks_SOURCES = umount-udisks.c
- umount_udisks_LDADD = $(DBUS_GLIB_LIBS) $(POLKIT_DBUS_LIBS)
diff --git a/meta-openembedded/meta-oe/recipes-support/udisks/udisks/0001-fix-build-with-newer-glibc-versions.patch b/meta-openembedded/meta-oe/recipes-support/udisks/udisks/0001-fix-build-with-newer-glibc-versions.patch
deleted file mode 100644
index 8b4f441..0000000
--- a/meta-openembedded/meta-oe/recipes-support/udisks/udisks/0001-fix-build-with-newer-glibc-versions.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 054ad6a06cfac7c3d172d53cd901204079a53ec3 Mon Sep 17 00:00:00 2001
-From: Alexandre Rostovtsev <tetromino@gentoo.org>
-Date: Fri, 29 May 2015 21:09:39 -0400
-Subject: [PATCH] fix build with newer glibc versions
-
-https://bugs.freedesktop.org/show_bug.cgi?id=90778
-
-Upstream-Status: Applied [1]
-
-[1] http://cgit.freedesktop.org/udisks/commit/?h=udisks1&id=9829152b12a8924d2e091a00133ed1a3a7ba75c0
-
----
- src/helpers/job-drive-detach.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/helpers/job-drive-detach.c b/src/helpers/job-drive-detach.c
-index eeafcab..d122a1f 100644
---- a/src/helpers/job-drive-detach.c
-+++ b/src/helpers/job-drive-detach.c
-@@ -18,6 +18,7 @@
-  *
-  */
- 
-+#include <sys/stat.h>
- #include <stdio.h>
- #include <string.h>
- #include <errno.h>
diff --git a/meta-openembedded/meta-oe/recipes-support/udisks/udisks/0001-include-sys-sysmacros.h.patch b/meta-openembedded/meta-oe/recipes-support/udisks/udisks/0001-include-sys-sysmacros.h.patch
deleted file mode 100644
index f140793..0000000
--- a/meta-openembedded/meta-oe/recipes-support/udisks/udisks/0001-include-sys-sysmacros.h.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-From 64f051963d6cdeebd19f9e7f0a7e584a1f7acc60 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 11 Aug 2018 19:12:57 -0700
-Subject: [PATCH] include sys/sysmacros.h
-
-fixes build with glibc 2.28+
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/daemon.c          | 1 +
- src/device.c          | 1 +
- src/mount-monitor.c   | 1 +
- tools/udisks.c        | 1 +
- tools/umount-udisks.c | 1 +
- 5 files changed, 5 insertions(+)
-
-diff --git a/src/daemon.c b/src/daemon.c
-index 14e952f..2c61cfb 100644
---- a/src/daemon.c
-+++ b/src/daemon.c
-@@ -39,6 +39,7 @@
- #include <errno.h>
- #include <string.h>
- #include <sys/types.h>
-+#include <sys/sysmacros.h>
- #include <sys/stat.h>
- #include <sys/time.h>
- #include <sys/resource.h>
-diff --git a/src/device.c b/src/device.c
-index d73f9d6..5911d78 100644
---- a/src/device.c
-+++ b/src/device.c
-@@ -29,6 +29,7 @@
- #include <errno.h>
- #include <string.h>
- #include <sys/types.h>
-+#include <sys/sysmacros.h>
- #include <sys/wait.h>
- #include <sys/stat.h>
- #include <sys/time.h>
-diff --git a/src/mount-monitor.c b/src/mount-monitor.c
-index 573a69c..ccf3365 100644
---- a/src/mount-monitor.c
-+++ b/src/mount-monitor.c
-@@ -28,6 +28,7 @@
- #include <errno.h>
- #include <string.h>
- #include <sys/types.h>
-+#include <sys/sysmacros.h>
- #include <sys/stat.h>
- #include <mntent.h>
- 
-diff --git a/tools/udisks.c b/tools/udisks.c
-index d30159b..f24a30a 100644
---- a/tools/udisks.c
-+++ b/tools/udisks.c
-@@ -29,6 +29,7 @@
- #include <errno.h>
- #include <string.h>
- #include <sys/types.h>
-+#include <sys/sysmacros.h>
- #include <sys/stat.h>
- #include <sys/wait.h>
- #include <fcntl.h>
-diff --git a/tools/umount-udisks.c b/tools/umount-udisks.c
-index 2813fe0..5cf6b4d 100644
---- a/tools/umount-udisks.c
-+++ b/tools/umount-udisks.c
-@@ -29,6 +29,7 @@
- #include <errno.h>
- #include <string.h>
- #include <sys/types.h>
-+#include <sys/sysmacros.h>
- #include <sys/stat.h>
- #include <fcntl.h>
- #include <pwd.h>
diff --git a/meta-openembedded/meta-oe/recipes-support/udisks/udisks/0001-tools-Install-bash_completion-script-in-etc-bash_com.patch b/meta-openembedded/meta-oe/recipes-support/udisks/udisks/0001-tools-Install-bash_completion-script-in-etc-bash_com.patch
deleted file mode 100644
index 16dc440..0000000
--- a/meta-openembedded/meta-oe/recipes-support/udisks/udisks/0001-tools-Install-bash_completion-script-in-etc-bash_com.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 7863a72c723035529d6fd8d626d7fbf9a765f162 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 23 May 2019 21:49:57 -0700
-Subject: [PATCH] tools: Install bash_completion script in
- /etc/bash_completion.d
-
-In OE this is one of common locations to install bash_completion files
-and its covered for packaging automatically when bash_completion class
-is inherited
-
-Upstream-Status: Inappropriate [OE-Specific]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- tools/Makefile.am | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/tools/Makefile.am b/tools/Makefile.am
-index 0aaec11..839c961 100644
---- a/tools/Makefile.am
-+++ b/tools/Makefile.am
-@@ -72,7 +72,7 @@ udisks_tcp_bridge_LDADD = $(DBUS_GLIB_LIBS)
- 
- CLEANFILES = $(BUILT_SOURCES)
- 
--profiledir = $(sysconfdir)/profile.d
-+profiledir = $(sysconfdir)/bash_completion.d
- profile_SCRIPTS = udisks-bash-completion.sh
- 
- EXTRA_DIST = $(profile_SCRIPTS)
--- 
-2.21.0
-
diff --git a/meta-openembedded/meta-oe/recipes-support/udisks/udisks/0001-udisks-helper-Use-sh-interpreter-instead-of-bash.patch b/meta-openembedded/meta-oe/recipes-support/udisks/udisks/0001-udisks-helper-Use-sh-interpreter-instead-of-bash.patch
deleted file mode 100644
index ef7f6f9..0000000
--- a/meta-openembedded/meta-oe/recipes-support/udisks/udisks/0001-udisks-helper-Use-sh-interpreter-instead-of-bash.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 44953e5501e92c87611be45221338004e8032a74 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 23 May 2019 22:00:14 -0700
-Subject: [PATCH] udisks-helper: Use sh interpreter instead of bash
-
-These scripts do not require bash, since they do not use any bash
-specific extentions
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/helpers/udisks-helper-change-luks-password | 2 +-
- src/helpers/udisks-helper-mdadm-expand         | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/helpers/udisks-helper-change-luks-password b/src/helpers/udisks-helper-change-luks-password
-index edcf6c9..c71fc72 100755
---- a/src/helpers/udisks-helper-change-luks-password
-+++ b/src/helpers/udisks-helper-change-luks-password
-@@ -1,4 +1,4 @@
--#!/bin/bash
-+#!/usr/bin/env sh
- set -e
- 
- DEVICE=$1
-diff --git a/src/helpers/udisks-helper-mdadm-expand b/src/helpers/udisks-helper-mdadm-expand
-index 8b4e23d..921f96a 100755
---- a/src/helpers/udisks-helper-mdadm-expand
-+++ b/src/helpers/udisks-helper-mdadm-expand
-@@ -1,4 +1,4 @@
--#!/bin/bash
-+#!/usr/bin/env sh
- 
- set -e
- 
--- 
-2.21.0
-
diff --git a/meta-openembedded/meta-oe/recipes-support/udisks/udisks/optional-depends.patch b/meta-openembedded/meta-oe/recipes-support/udisks/udisks/optional-depends.patch
deleted file mode 100644
index a890954..0000000
--- a/meta-openembedded/meta-oe/recipes-support/udisks/udisks/optional-depends.patch
+++ /dev/null
@@ -1,498 +0,0 @@
-From e8b3fbfa3d6a11eee25db2dc0f31f439aaf0b65a Mon Sep 17 00:00:00 2001
-From: Gustavo Sverzut Barbieri <barbieri@profusion.mobi>
-Date: Thu, 26 May 2011 17:30:04 -0300
-Subject: [PATCH] Allow disabling atasmart, lvm2 and devicemapper support.
-
-https://bugs.freedesktop.org/show_bug.cgi?id=37647
-
----
- configure.ac            | 53 +++++++++++++++++++++++++++++++++++++++----------
- src/adapter-private.h   |  1 -
- src/adapter.c           |  1 -
- src/daemon.c            |  4 ++++
- src/device-private.c    |  2 +-
- src/device-private.h    |  5 ++---
- src/device.c            | 23 +++++++++++++++++----
- src/expander-private.h  |  1 -
- src/expander.c          |  1 -
- src/helpers/Makefile.am | 20 +++++++++++++------
- src/helpers/partutil.c  |  3 ++-
- src/port-private.h      |  1 -
- src/probers/Makefile.am |  8 ++++++--
- tools/udisks.c          | 10 ++++++++--
- 14 files changed, 99 insertions(+), 34 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 9454423..8c4e4c2 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -155,13 +155,33 @@ PKG_CHECK_MODULES(POLKIT_GOBJECT_1, [polkit-gobject-1 >= 0.97])
- AC_SUBST(POLKIT_GOBJECT_1_CFLAGS)
- AC_SUBST(POLKIT_GOBJECT_1_LIBS)
- 
--PKG_CHECK_MODULES(LIBPARTED, [libparted >= 1.8.8])
--AC_SUBST(LIBPARTED_CFLAGS)
--AC_SUBST(LIBPARTED_LIBS)
--
--PKG_CHECK_MODULES(DEVMAPPER, [devmapper >= 1.02])
--AC_SUBST(DEVMAPPER_CFLAGS)
--AC_SUBST(DEVMAPPER_LIBS)
-+have_parted=no
-+AC_ARG_ENABLE(parted, AS_HELP_STRING([--disable-parted], [disable disk partitioning]))
-+if test "x$enable_parted" != "xno"; then
-+  PKG_CHECK_MODULES(LIBPARTED, [libparted >= 1.8.8],
-+                    [AC_DEFINE(USE_PARTED, 1, [Define if parted should be used]) have_parted=yes],
-+                    have_parted=no)
-+  AC_SUBST(LIBPARTED_CFLAGS)
-+  AC_SUBST(LIBPARTED_LIBS)
-+  if test "x$have_parted" = xno -a "x$enable_parted" = xyes; then
-+    AC_MSG_ERROR([parted support requested but libraries not found])
-+  fi
-+fi
-+AM_CONDITIONAL(HAVE_PARTED, [test "$have_parted" = "yes"])
-+
-+have_devmapper=no
-+AC_ARG_ENABLE(devmapper, AS_HELP_STRING([--disable-devmapper], [disable device mapper support]))
-+if test "x$enable_devmapper" != "xno"; then
-+  PKG_CHECK_MODULES(DEVMAPPER, [devmapper >= 1.02],
-+                    [AC_DEFINE(HAVE_DEVMAPPER, 1, [Define if device mapper is available]) have_devmapper=yes],
-+                    have_devmapper=no)
-+  AC_SUBST(DEVMAPPER_CFLAGS)
-+  AC_SUBST(DEVMAPPER_LIBS)
-+  if test "x$have_devmapper" = xno -a "x$enable_devmapper" = xyes; then
-+    AC_MSG_ERROR([devmapper support requested but libraries not found])
-+  fi
-+fi
-+AM_CONDITIONAL(HAVE_DEVMAPPER, [test "$have_devmapper" = "yes"])
- 
- have_lvm2=no
- AC_ARG_ENABLE(lvm2, AS_HELP_STRING([--enable-lvm2], [enable LVM2 support]))
-@@ -185,9 +205,19 @@ if test "x$enable_dmmp" = "xyes"; then
- fi
- AM_CONDITIONAL(HAVE_DMMP, [test "$have_dmmp" = "yes"])
- 
--PKG_CHECK_MODULES(LIBATASMART, [libatasmart >= 0.14])
--AC_SUBST(LIBATASMART_CFLAGS)
--AC_SUBST(LIBATASMART_LIBS)
-+have_libatasmart=no
-+AC_ARG_ENABLE(libatasmart, AS_HELP_STRING([--disable-libatasmart], [disable libatasmart support]))
-+if test "x$enable_libatasmart" != "xno"; then
-+  PKG_CHECK_MODULES(LIBATASMART, [libatasmart >= 0.14],
-+                    [AC_DEFINE(HAVE_LIBATASMART, 1, [Define if libatasmart is available]) have_libatasmart=yes],
-+                    have_libatasmart=no)
-+  AC_SUBST(LIBATASMART_CFLAGS)
-+  AC_SUBST(LIBATASMART_LIBS)
-+  if test "x$have_libatasmart" = xno -a "x$enable_libatasmart" = xyes; then
-+    AC_MSG_ERROR([libatasmart support requested but libraries not found])
-+  fi
-+fi
-+AM_CONDITIONAL(HAVE_LIBATASMART, [test "$have_libatasmart" = "yes"])
- 
- PKG_CHECK_MODULES(LIBUDEV, [libudev >= 143])
- AC_SUBST(LIBUDEV_CFLAGS)
-@@ -278,9 +308,12 @@ echo "
-         cppflags:                   ${CPPFLAGS}
-         xsltproc:                   ${XSLTPROC}
- 
-+        Parted support:             ${have_parted}
-+        Device Mapper support:      ${have_devmapper}
-         LVM2 support:               ${have_lvm2}
-         dm-multipath:               ${have_dmmp}
-         Remote Access:              ${remote_access}
-+        libatasmart support:        ${have_libatasmart}
- 
-         Maintainer mode:            ${USE_MAINTAINER_MODE}
-         Profiling:                  ${enable_profiling}
-diff --git a/src/adapter-private.h b/src/adapter-private.h
-index 3409e21..ef584e3 100644
---- a/src/adapter-private.h
-+++ b/src/adapter-private.h
-@@ -23,7 +23,6 @@
- 
- #include <dbus/dbus-glib.h>
- #include <gudev/gudev.h>
--#include <atasmart.h>
- 
- #include "types.h"
- 
-diff --git a/src/adapter.c b/src/adapter.c
-index 65e05b0..45db8c8 100644
---- a/src/adapter.c
-+++ b/src/adapter.c
-@@ -30,7 +30,6 @@
- #include <dbus/dbus-glib.h>
- #include <dbus/dbus-glib-lowlevel.h>
- #include <gudev/gudev.h>
--#include <atasmart.h>
- 
- #include "daemon.h"
- #include "adapter.h"
-diff --git a/src/daemon.c b/src/daemon.c
-index fafcf9a..14e952f 100644
---- a/src/daemon.c
-+++ b/src/daemon.c
-@@ -1748,6 +1748,7 @@ mdstat_changed_event (GIOChannel *channel,
-   return TRUE;
- }
- 
-+#ifdef HAVE_LIBATASMART
- static gboolean
- refresh_ata_smart_data (Daemon *daemon)
- {
-@@ -1776,6 +1777,7 @@ refresh_ata_smart_data (Daemon *daemon)
- 
-   return FALSE;
- }
-+#endif
- 
- static gboolean
- register_disks_daemon (Daemon *daemon)
-@@ -1987,12 +1989,14 @@ daemon_new (void)
-   mount_file_clean_stale (l);
-   g_list_free (l);
- 
-+#ifdef HAVE_LIBATASMART
-   /* set up timer for refreshing ATA SMART data - we don't want to refresh immediately because
-    * when adding a device we also do this...
-    */
-   daemon->priv->ata_smart_refresh_timer_id = g_timeout_add_seconds (ATA_SMART_REFRESH_INTERVAL_SECONDS,
-                                                                     (GSourceFunc) refresh_ata_smart_data,
-                                                                     daemon);
-+#endif
- 
-   PROFILE ("daemon_new(): end");
-   return daemon;
-diff --git a/src/device-private.c b/src/device-private.c
-index 45418ce..fb1d959 100644
---- a/src/device-private.c
-+++ b/src/device-private.c
-@@ -1390,7 +1390,7 @@ device_set_drive_ata_smart_time_collected (Device *device,
- 
- void
- device_set_drive_ata_smart_status (Device *device,
--                                   SkSmartOverall value)
-+                                   guint value)
- {
-   if (G_UNLIKELY (device->priv->drive_ata_smart_status != value))
-     {
-diff --git a/src/device-private.h b/src/device-private.h
-index 32a9bd0..8c57c13 100644
---- a/src/device-private.h
-+++ b/src/device-private.h
-@@ -23,7 +23,6 @@
- 
- #include <dbus/dbus-glib.h>
- #include <gudev/gudev.h>
--#include <atasmart.h>
- 
- #include "types.h"
- 
-@@ -228,7 +227,7 @@ struct DevicePrivate
- 
-   gboolean drive_ata_smart_is_available;
-   guint64 drive_ata_smart_time_collected;
--  SkSmartOverall drive_ata_smart_status;
-+  guint drive_ata_smart_status;
-   void *drive_ata_smart_blob;
-   gsize drive_ata_smart_blob_size;
- 
-@@ -396,7 +395,7 @@ void device_set_holders_objpath (Device *device, GStrv value);
- 
- void device_set_drive_ata_smart_is_available (Device *device, gboolean value);
- void device_set_drive_ata_smart_time_collected (Device *device, guint64 value);
--void device_set_drive_ata_smart_status (Device *device, SkSmartOverall value);
-+void device_set_drive_ata_smart_status (Device *device, guint value);
- void device_set_drive_ata_smart_blob_steal (Device *device, gchar *blob, gsize blob_size);
- 
- G_END_DECLS
-diff --git a/src/device.c b/src/device.c
-index 2ae7f38..d73f9d6 100644
---- a/src/device.c
-+++ b/src/device.c
-@@ -50,7 +50,9 @@
- #include <dbus/dbus-glib.h>
- #include <dbus/dbus-glib-lowlevel.h>
- #include <gudev/gudev.h>
-+#ifdef HAVE_LIBATASMART
- #include <atasmart.h>
-+#endif
- 
- #include "daemon.h"
- #include "device.h"
-@@ -664,10 +666,14 @@ get_property (GObject *object,
-     case PROP_DRIVE_ATA_SMART_STATUS:
-       {
-         const gchar *status;
--        if (device->priv->drive_ata_smart_status == (SkSmartOverall) - 1)
-+#ifdef HAVE_LIBATASMART
-+        if (device->priv->drive_ata_smart_status == (guint) - 1)
-           status = "";
-         else
-           status = sk_smart_overall_to_string (device->priv->drive_ata_smart_status);
-+#else
-+        status = "";
-+#endif
-         g_value_set_string (value, status);
-       }
-       break;
-@@ -5144,6 +5150,7 @@ device_new (Daemon *daemon,
-       goto out;
-     }
- 
-+#ifdef HAVE_LIBATASMART
-   /* if just added, update the smart data if applicable */
-   if (device->priv->drive_ata_smart_is_available)
-     {
-@@ -5151,6 +5158,7 @@ device_new (Daemon *daemon,
-       gchar *ata_smart_refresh_data_options[] = { NULL };
-       device_drive_ata_smart_refresh_data (device, ata_smart_refresh_data_options, NULL);
-     }
-+#endif
- 
-   PROFILE ("device_new(native_path=%s): end", native_path);
-  out:
-@@ -9840,16 +9848,18 @@ drive_ata_smart_refresh_data_completed_cb (DBusGMethodInvocation *context,
-                                            const char *stdout,
-                                            gpointer user_data)
- {
-+#ifdef HAVE_LIBATASMART
-   gint rc;
--  SkDisk *d;
-+  SkDisk *d = NULL;
-+  SkSmartOverall overall;
-   gchar *blob;
-   gsize blob_size;
-   time_t time_collected;
--  SkSmartOverall overall;
-+#endif
- 
-   PROFILE ("drive_ata_smart_refresh_data_completed_cb(device=%s) start", device->priv->native_path);
- 
--  d = NULL;
-+#ifdef HAVE_LIBATASMART
-   blob = NULL;
- 
-   if (job_was_cancelled || stdout == NULL)
-@@ -9953,6 +9963,11 @@ drive_ata_smart_refresh_data_completed_cb (DBusGMethodInvocation *context,
-   g_free (blob);
-   if (d != NULL)
-     sk_disk_free (d);
-+
-+#else
-+  throw_error (context, ERROR_FAILED, "libatasmart support disabled");
-+#endif
-+
-   PROFILE ("drive_ata_smart_refresh_data_completed_cb(device=%s) end", device->priv->native_path);
- }
- 
-diff --git a/src/expander-private.h b/src/expander-private.h
-index ef4f440..98a8300 100644
---- a/src/expander-private.h
-+++ b/src/expander-private.h
-@@ -23,7 +23,6 @@
- 
- #include <dbus/dbus-glib.h>
- #include <gudev/gudev.h>
--#include <atasmart.h>
- 
- #include "types.h"
- 
-diff --git a/src/expander.c b/src/expander.c
-index 734ec0a..e799f13 100644
---- a/src/expander.c
-+++ b/src/expander.c
-@@ -34,7 +34,6 @@
- #include <dbus/dbus-glib.h>
- #include <dbus/dbus-glib-lowlevel.h>
- #include <gudev/gudev.h>
--#include <atasmart.h>
- #include <stdlib.h>
- 
- #include "daemon.h"
-diff --git a/src/helpers/Makefile.am b/src/helpers/Makefile.am
-index 4b863c0..d3ec4e9 100644
---- a/src/helpers/Makefile.am
-+++ b/src/helpers/Makefile.am
-@@ -19,15 +19,9 @@ INCLUDES = \
- 
- libexec_PROGRAMS = 					\
- 	udisks-helper-mkfs                    		\
--	udisks-helper-delete-partition        		\
--	udisks-helper-create-partition        		\
--	udisks-helper-modify-partition        		\
--	udisks-helper-create-partition-table		\
- 	udisks-helper-change-filesystem-label 		\
- 	udisks-helper-linux-md-remove-component		\
- 	udisks-helper-fstab-mounter			\
--	udisks-helper-ata-smart-collect			\
--	udisks-helper-ata-smart-selftest		\
- 	udisks-helper-drive-detach			\
- 	udisks-helper-drive-poll			\
- 	udisks-helper-linux-md-check			\
-@@ -48,6 +42,13 @@ udisks_helper_mkfs_SOURCES = job-shared.h job-mkfs.c
- udisks_helper_mkfs_CPPFLAGS = $(AM_CPPFLAGS)
- udisks_helper_mkfs_LDADD = $(GLIB_LIBS)
- 
-+if HAVE_PARTED
-+libexec_PROGRAMS +=                                     \
-+	udisks-helper-delete-partition        		\
-+	udisks-helper-create-partition        		\
-+	udisks-helper-modify-partition        		\
-+	udisks-helper-create-partition-table
-+
- udisks_helper_delete_partition_SOURCES = job-shared.h job-delete-partition.c
- udisks_helper_delete_partition_CPPFLAGS = $(AM_CPPFLAGS)
- udisks_helper_delete_partition_LDADD = $(GLIB_LIBS) libpartutil.la
-@@ -63,11 +64,17 @@ udisks_helper_modify_partition_LDADD = $(GLIB_LIBS) libpartutil.la
- udisks_helper_create_partition_table_SOURCES = job-shared.h job-create-partition-table.c
- udisks_helper_create_partition_table_CPPFLAGS = $(AM_CPPFLAGS)
- udisks_helper_create_partition_table_LDADD = $(GLIB_LIBS) libpartutil.la
-+endif
- 
- udisks_helper_change_filesystem_label_SOURCES = job-shared.h job-change-filesystem-label.c
- udisks_helper_change_filesystem_label_CPPFLAGS = $(AM_CPPFLAGS)
- udisks_helper_change_filesystem_label_LDADD = $(GLIB_LIBS)
- 
-+if HAVE_LIBATASMART
-+libexec_PROGRAMS +=                                     \
-+	udisks-helper-ata-smart-collect			\
-+	udisks-helper-ata-smart-selftest
-+
- udisks_helper_ata_smart_selftest_SOURCES = job-shared.h job-ata-smart-selftest.c
- udisks_helper_ata_smart_selftest_CPPFLAGS = $(AM_CPPFLAGS) $(LIBATASMART_CFLAGS) $(GLIB_CFLAGS)
- udisks_helper_ata_smart_selftest_LDADD = $(LIBATASMART_LIBS) $(GLIB_LIBS)
-@@ -75,6 +82,7 @@ udisks_helper_ata_smart_selftest_LDADD = $(LIBATASMART_LIBS) $(GLIB_LIBS)
- udisks_helper_ata_smart_collect_SOURCES = job-ata-smart-collect.c
- udisks_helper_ata_smart_collect_CPPFLAGS = $(AM_CPPFLAGS) $(LIBATASMART_CFLAGS) $(GLIB_CFLAGS)
- udisks_helper_ata_smart_collect_LDADD = $(LIBATASMART_LIBS) $(GLIB_LIBS)
-+endif
- 
- udisks_helper_linux_md_remove_component_SOURCES = job-shared.h job-linux-md-remove-component.c
- udisks_helper_linux_md_remove_component_CPPFLAGS = $(AM_CPPFLAGS)
-diff --git a/src/helpers/partutil.c b/src/helpers/partutil.c
-index 72a8fe3..8893a39 100644
---- a/src/helpers/partutil.c
-+++ b/src/helpers/partutil.c
-@@ -62,7 +62,6 @@ DEBUG (const gchar *format,
- #  include <config.h>
- #endif
- 
--#define USE_PARTED
- #ifdef USE_PARTED
- #include <parted/parted.h>
- #endif
-@@ -928,6 +927,7 @@ part_table_parse_apple (int fd,
-   return p;
- }
- 
-+#ifdef USE_PARTED
- static PartitionTable *
- part_table_load_from_disk_from_file (char *device_file)
- {
-@@ -948,6 +948,7 @@ part_table_load_from_disk_from_file (char *device_file)
-  out:
-   return ret;
- }
-+#endif
- 
- PartitionTable *
- part_table_load_from_disk (int fd)
-diff --git a/src/port-private.h b/src/port-private.h
-index cc48376..a91532f 100644
---- a/src/port-private.h
-+++ b/src/port-private.h
-@@ -23,7 +23,6 @@
- 
- #include <dbus/dbus-glib.h>
- #include <gudev/gudev.h>
--#include <atasmart.h>
- 
- #include "types.h"
- 
-diff --git a/src/probers/Makefile.am b/src/probers/Makefile.am
-index 06bb566..01c693b 100644
---- a/src/probers/Makefile.am
-+++ b/src/probers/Makefile.am
-@@ -22,8 +22,6 @@ INCLUDES = \
- 
- udevhelperdir = $(slashlibdir)/udev
- udevhelper_PROGRAMS =	udisks-part-id 			\
--			udisks-dm-export 		\
--		      	udisks-probe-ata-smart 		\
- 			udisks-probe-sas-expander 	\
- 			$(NULL)
- 
-@@ -35,17 +33,23 @@ udisks_part_id_SOURCES = part-id.c
- udisks_part_id_CPPFLAGS = $(AM_CPPFLAGS) $(LIBUDEV_CFLAGS)
- udisks_part_id_LDADD = $(GLIB_LIBS) $(LIBUDEV_LIBS) $(top_builddir)/src/helpers/libpartutil.la
- 
-+if HAVE_DEVMAPPER
-+udevhelper_PROGRAMS += udisks-dm-export
- udisks_dm_export_SOURCES = udisks-dm-export.c
- udisks_dm_export_CPPFLAGS = $(AM_CPPFLAGS) $(DEVMAPPER_CFLAGS) $(GLIB_CFLAGS)
- udisks_dm_export_LDADD = $(DEVMAPPER_LIBS) $(GLIB_LIBS)
-+endif
- 
- udisks_lvm_pv_export_SOURCES = udisks-lvm-pv-export.c
- udisks_lvm_pv_export_CPPFLAGS = $(AM_CPPFLAGS) $(DEVMAPPER_CFLAGS) $(LVM2_CFLAGS) $(GLIB_CFLAGS)
- udisks_lvm_pv_export_LDADD = $(DEVMAPPER_LIBS) $(LVM2_LIBS) $(GLIB_LIBS)
- 
-+if HAVE_LIBATASMART
-+udevhelper_PROGRAMS += udisks-probe-ata-smart
- udisks_probe_ata_smart_SOURCES = udisks-probe-ata-smart.c
- udisks_probe_ata_smart_CPPFLAGS = $(AM_CPPFLAGS) $(LIBATASMART_CFLAGS)
- udisks_probe_ata_smart_LDADD = $(LIBATASMART_LIBS)
-+endif
- 
- udisks_probe_sas_expander_SOURCES = udisks-probe-sas-expander.c
- udisks_probe_sas_expander_CPPFLAGS = $(AM_CPPFLAGS) $(GLIB_CFLAGS)
-diff --git a/tools/udisks.c b/tools/udisks.c
-index 97e80d7..d30159b 100644
---- a/tools/udisks.c
-+++ b/tools/udisks.c
-@@ -43,7 +43,9 @@
- #include <dbus/dbus-glib.h>
- #include <dbus/dbus-glib-lowlevel.h>
- 
-+#ifdef HAVE_LIBATASMART
- #include <atasmart.h>
-+#endif
- 
- #include "udisks-daemon-glue.h"
- #include "udisks-device-glue.h"
-@@ -983,6 +985,7 @@ end_highlight (void)
-     g_print ("\x1B[0m");
- }
- 
-+#ifdef HAVE_LIBATASMART
- static const gchar *
- ata_smart_status_to_desc (const gchar *status,
-                           gboolean *out_highlight)
-@@ -1163,6 +1166,7 @@ print_ata_smart_attr (SkDisk *d,
-   g_free (threshold_str);
-   g_free (pretty);
- }
-+#endif
- 
- static void
- do_show_info (const char *object_path)
-@@ -1445,7 +1449,7 @@ do_show_info (const char *object_path)
-         g_print ("    if speed:                  %" G_GINT64_FORMAT " bits/s\n", props->drive_connection_speed);
- 
-       /* ------------------------------------------------------------------------------------------------- */
--
-+#ifdef HAVE_LIBATASMART
-       if (!props->drive_ata_smart_is_available)
-         {
-           g_print ("    ATA SMART:                 not available\n");
-@@ -1498,7 +1502,9 @@ do_show_info (const char *object_path)
-             }
- 
-         }
--
-+#else
-+          g_print ("    ATA SMART:                 not supported\n");
-+#endif
-       /* ------------------------------------------------------------------------------------------------- */
- 
-     }
diff --git a/meta-openembedded/meta-oe/recipes-support/udisks/udisks/udisks-1.0.5-fix-service-file.patch b/meta-openembedded/meta-oe/recipes-support/udisks/udisks/udisks-1.0.5-fix-service-file.patch
deleted file mode 100644
index d4efa93..0000000
--- a/meta-openembedded/meta-oe/recipes-support/udisks/udisks/udisks-1.0.5-fix-service-file.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From a4f6aa5be37ae6e2194c9ded2ea8c1da330f5694 Mon Sep 17 00:00:00 2001
-From: David King <amigadave@amigadave.com>
-Date: Thu, 2 Jul 2015 13:49:22 +0100
-Subject: [PATCH] Fix systemd service file
-
-udisks-daemon is installed to $(libexecdir), not $(prefix)/lib/udisks.
-
-https://bugzilla.redhat.com/show_bug.cgi?id=1238664
-https://bugs.freedesktop.org/show_bug.cgi?id=91191
-
-Taken-From: [1]
-[1] http://pkgs.fedoraproject.org/cgit/udisks.git/tree/udisks-1.0.5-fix-service-file.patch
-
-Upstream-Status: Pending
-
----
- data/Makefile.am | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/data/Makefile.am b/data/Makefile.am
-index 411ea0f..08af5f4 100644
---- a/data/Makefile.am
-+++ b/data/Makefile.am
-@@ -31,7 +31,7 @@ systemdservicedir       = $(systemdsystemunitdir)
- systemdservice_DATA     = $(systemdservice_in_files:.service.in=.service)
- 
- $(systemdservice_DATA): $(systemdservice_in_files) Makefile
--	@sed -e "s|\@libexecdir\@|$(prefix)/lib/udisks|" $< > $@
-+	@sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
- endif
- 
- udevrulesdir = $(slashlibdir)/udev/rules.d
diff --git a/meta-openembedded/meta-oe/recipes-support/udisks/udisks_1.0.5.bb b/meta-openembedded/meta-oe/recipes-support/udisks/udisks_1.0.5.bb
deleted file mode 100644
index 0918fed..0000000
--- a/meta-openembedded/meta-oe/recipes-support/udisks/udisks_1.0.5.bb
+++ /dev/null
@@ -1,51 +0,0 @@
-DESCRIPTION = "A storage daemon that implements well-defined D-Bus interfaces that can be used to query and manipulate storage devices."
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=73d83aebe7e4b62346afde80e0e94273"
-
-DEPENDS = "libatasmart sg3-utils polkit libgudev dbus-glib glib-2.0 intltool-native \
-    dbus-glib-native \
-"
-# optional dependencies: device-mapper parted
-
-DEPENDS += "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
-    dbus-glib-native \
-"
-
-SRC_URI = "http://hal.freedesktop.org/releases/${BPN}-${PV}.tar.gz;name=${BPN} \
-           file://optional-depends.patch \
-           file://0001-fix-build-with-newer-glibc-versions.patch \
-           file://udisks-1.0.5-fix-service-file.patch \
-           file://0001-Make-udev-rules-directory-configurable.patch \
-           file://0001-include-sys-sysmacros.h.patch \
-           file://0001-tools-Install-bash_completion-script-in-etc-bash_com.patch \
-           file://0001-udisks-helper-Use-sh-interpreter-instead-of-bash.patch \
-           "
-
-SRC_URI[udisks.md5sum] = "70d48dcfe523a74cd7c7fbbc2847fcdd"
-SRC_URI[udisks.sha256sum] = "f2ec82eb0ea7e01dc299b5b29b3c18cdf861236ec43dcff66b3552b4b31c6f71"
-
-inherit autotools-brokensep systemd gtk-doc distro_features_check bash-completion
-
-REQUIRED_DISTRO_FEATURES = "polkit"
-
-
-PACKAGECONFIG ??= "libdevmapper"
-PACKAGECONFIG[libdevmapper] = "--enable-devmapper,--disable-devmapper,libdevmapper"
-PACKAGECONFIG[parted] = "--enable-parted,--disable-parted,parted"
-
-EXTRA_OECONF = "--disable-man-pages --libdir=${base_libdir} --sbindir=${base_sbindir}"
-EXTRA_OEMAKE = "udevrulesdir=${nonarch_base_libdir}/udev/rules.d/"
-
-FILES_${PN} += "${libdir}/polkit-1/extensions/*.so \
-                ${datadir}/dbus-1/ \
-                ${datadir}/polkit-1 \
-                ${nonarch_base_libdir}/udev/* \
-"
-
-FILES_${PN}-dbg += "${nonarch_base_libdir}/udev/.debug"
-
-RPROVIDES_${PN} += "${PN}-systemd"
-RREPLACES_${PN} += "${PN}-systemd"
-RCONFLICTS_${PN} += "${PN}-systemd"
-SYSTEMD_SERVICE_${PN} = "udisks.service"
-SYSTEMD_AUTO_ENABLE = "disable"
diff --git a/meta-openembedded/meta-oe/recipes-support/uhubctl/uhubctl_2.0.0.bb b/meta-openembedded/meta-oe/recipes-support/uhubctl/uhubctl_2.0.0.bb
index 6306ddb..62028a9 100644
--- a/meta-openembedded/meta-oe/recipes-support/uhubctl/uhubctl_2.0.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/uhubctl/uhubctl_2.0.0.bb
@@ -6,9 +6,9 @@
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
 
-SRC_URI = "https://github.com/mvp/${PN}/archive/v${PV}.tar.gz"
-SRC_URI[md5sum] = "5c711911d766d76813333c3812277574"
-SRC_URI[sha256sum] = "4c31278b2c03e5be5a696c3088bc86cf2557a70e00f697799c163aba18e3c40e"
+SRCREV = "6e05aee30e348ae2fd13ce8bfaa10f4f7d45d66f"
+SRC_URI = "git://github.com/mvp/${BPN}"
+S = "${WORKDIR}/git"
 
 # uhubctl gets its program version from "git describe". As we use the source
 # archive do reduce download size replace the call with our hardcoded version.
diff --git a/meta-openembedded/meta-oe/recipes-support/unixodbc/unixodbc_2.3.7.bb b/meta-openembedded/meta-oe/recipes-support/unixodbc/unixodbc_2.3.7.bb
index 563badf..61378fe 100644
--- a/meta-openembedded/meta-oe/recipes-support/unixodbc/unixodbc_2.3.7.bb
+++ b/meta-openembedded/meta-oe/recipes-support/unixodbc/unixodbc_2.3.7.bb
@@ -6,7 +6,7 @@
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=d7b37bf80a3df5a65b355433ae36d206"
 
-DEPENDS = "libtool mysql5"
+DEPENDS = "libtool readline"
 
 SRC_URI = "http://ftp.unixodbc.org/unixODBC-${PV}.tar.gz \
            file://do-not-use-libltdl-source-directory.patch \
diff --git a/meta-openembedded/meta-oe/recipes-support/upower/upower_0.99.7.bb b/meta-openembedded/meta-oe/recipes-support/upower/upower_0.99.7.bb
index 3fd91e9..ffa2c49 100644
--- a/meta-openembedded/meta-oe/recipes-support/upower/upower_0.99.7.bb
+++ b/meta-openembedded/meta-oe/recipes-support/upower/upower_0.99.7.bb
@@ -2,7 +2,7 @@
 LICENSE = "GPLv2+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=0de8fbf1d97a140d1d93b9f14dcfbf08"
 
-DEPENDS = "intltool-native libusb1 libgudev glib-2.0 dbus-glib polkit"
+DEPENDS = "intltool-native libusb1 libgudev glib-2.0 dbus-glib"
 
 SRC_URI = " \
     http://upower.freedesktop.org/releases/${BPN}-${PV}.tar.xz \
@@ -13,8 +13,6 @@
 
 inherit autotools pkgconfig gettext gobject-introspection systemd distro_features_check
 
-REQUIRED_DISTRO_FEATURES = "polkit"
-
 PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
 PACKAGECONFIG[idevice] = "--with-idevice,--without-idevice,libimobiledevice libplist"
 PACKAGECONFIG[systemd] = "--with-systemdutildir=${systemd_unitdir} --with-systemdsystemunitdir=${systemd_system_unitdir}, \
@@ -34,6 +32,5 @@
 RDEPENDS_${PN} += "dbus"
 RRECOMMENDS_${PN} += "pm-utils"
 FILES_${PN} += "${datadir}/dbus-1/ \
-                ${datadir}/polkit-1/ \
                 ${base_libdir}/udev/* \
 "
diff --git a/meta-openembedded/meta-oe/recipes-support/uthash/uthash_2.1.0.bb b/meta-openembedded/meta-oe/recipes-support/uthash/uthash_2.1.0.bb
index d01a06c..09cef44 100644
--- a/meta-openembedded/meta-oe/recipes-support/uthash/uthash_2.1.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/uthash/uthash_2.1.0.bb
@@ -41,5 +41,6 @@
 # The main package is empty and non-existent, so -dev
 # should not depend on it...
 RDEPENDS_${PN}-dev = ""
+RDEPENDS_${PN}-ptest_remove = "${PN}"
 
 BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-support/zile/zile_2.4.14.bb b/meta-openembedded/meta-oe/recipes-support/zile/zile_2.4.14.bb
index 515cf41..3b846c1 100644
--- a/meta-openembedded/meta-oe/recipes-support/zile/zile_2.4.14.bb
+++ b/meta-openembedded/meta-oe/recipes-support/zile/zile_2.4.14.bb
@@ -5,7 +5,7 @@
 LICENSE = "GPLv3"
 LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464"
 
-SRC_URI = "http://ftp.gnu.org/gnu/zile/${BP}.tar.gz \
+SRC_URI = "${GNU_MIRROR}/zile/${BP}.tar.gz \
            file://remove-help2man.patch \
 "
 
diff --git a/meta-openembedded/meta-oe/recipes-test/bats/bats_1.1.0.bb b/meta-openembedded/meta-oe/recipes-test/bats/bats_1.1.0.bb
new file mode 100644
index 0000000..a817974
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-test/bats/bats_1.1.0.bb
@@ -0,0 +1,21 @@
+SUMMARY = "Bash Automated Testing System"
+DESCRIPTION = "Bats is a TAP-compliant testing framework for Bash. It \
+provides a simple way to verify that the UNIX programs you write behave as expected."
+AUTHOR = "Sam Stephenson & bats-core organization"
+HOMEPAGE = "https://github.com/bats-core/bats-core"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.md;md5=2970203aedf9e829edb96a137a4fe81b"
+
+SRC_URI = "git://github.com/bats-core/bats-core.git \
+          "
+# v1.1.0
+SRCREV = "c706d1470dd1376687776bbe985ac22d09780327"
+
+S = "${WORKDIR}/git"
+
+do_install() {
+	# Just a bunch of bash scripts to install
+	${S}/install.sh ${D}${prefix}
+}
+
+RDEPENDS_bats = "bash"
diff --git a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Remove-Werror-from-build.patch b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Remove-Werror-from-build.patch
index 611ccc8..6795ba8 100644
--- a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Remove-Werror-from-build.patch
+++ b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-Remove-Werror-from-build.patch
@@ -12,33 +12,33 @@
  3 files changed, 3 insertions(+), 3 deletions(-)
 
 diff --git a/src/Makefile.am b/src/Makefile.am
-index 4daa9e8f..873f23eb 100644
+index 62c9ba8..435ec23 100644
 --- a/src/Makefile.am
 +++ b/src/Makefile.am
 @@ -14,7 +14,7 @@ AM_CPPFLAGS = \
- 	`pkg-config --silence-errors --cflags json` \
- 	`pkg-config --silence-errors --cflags json-c` \
+ 	`pkg-config --silence-errors --cflags json`	\
+ 	`pkg-config --silence-errors --cflags json-c`	\
  	-pthread `pkg-config --cflags glib-2.0 gio-2.0` \
--	-Wall -Werror -Wextra
-+	-Wall -Wextra
+-	-Wall -Werror -Wextra				\
++	-Wall -Wextra				\
+ 	-Wno-address-of-packed-member
  
  bin_PROGRAMS = fwts
- 
 diff --git a/src/lib/src/Makefile.am b/src/lib/src/Makefile.am
-index fa232451..082403a2 100644
+index 6bcf9f8..de89bf1 100644
 --- a/src/lib/src/Makefile.am
 +++ b/src/lib/src/Makefile.am
 @@ -24,7 +24,7 @@ AM_CPPFLAGS = \
  	`pkg-config --silence-errors --cflags json-c`	\
  	`pkg-config --cflags glib-2.0 gio-2.0` 		\
  	-DDATAROOTDIR=\"$(datarootdir)\"		\
--	-Wall -Werror -Wextra
-+	-Wall -Wextra
+-	-Wall -Werror -Wextra				\
++	-Wall -Wextra				\
+ 	-Wno-address-of-packed-member
  
  pkglib_LTLIBRARIES = libfwts.la
- 
 diff --git a/src/utilities/Makefile.am b/src/utilities/Makefile.am
-index aa37de55..4d5297cc 100644
+index 21f969e..82009a0 100644
 --- a/src/utilities/Makefile.am
 +++ b/src/utilities/Makefile.am
 @@ -16,7 +16,7 @@
diff --git a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-ignore-constant-logical-operand-warning-with-clang.patch b/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-ignore-constant-logical-operand-warning-with-clang.patch
deleted file mode 100644
index ae3665b..0000000
--- a/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-ignore-constant-logical-operand-warning-with-clang.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From 5bd05ad8569880985ddf6d4c06ed927d388c297f Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 19 Oct 2016 01:57:16 +0000
-Subject: [PATCH] ignore constant-logical-operand warning with clang
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
----
- src/dmi/dmicheck/dmicheck.c            | 3 +++
- src/lib/src/fwts_acpi_tables.c         | 5 +++++
- src/uefi/uefirtauthvar/uefirtauthvar.c | 5 +++++
- 3 files changed, 13 insertions(+)
-
-diff --git a/src/dmi/dmicheck/dmicheck.c b/src/dmi/dmicheck/dmicheck.c
-index 3cca9db9..60fb758f 100644
---- a/src/dmi/dmicheck/dmicheck.c
-+++ b/src/dmi/dmicheck/dmicheck.c
-@@ -211,6 +211,8 @@ static const char *uuid_patterns[] = {
- 	"0A0A0A0A-0A0A-0A0A-0A0A-0A0A0A0A0A0A",
- 	NULL,
- };
-+#pragma clang diagnostic push
-+#pragma clang diagnostic ignored "-Wunneeded-internal-declaration"
- 
- static const fwts_chassis_type_map fwts_dmi_chassis_type[] = {
- 	{ "Invalid",		FWTS_SMBIOS_CHASSIS_INVALID },
-@@ -251,6 +253,7 @@ static const fwts_chassis_type_map fwts_dmi_chassis_type[] = {
- 	{ "Mini PC",		FWTS_SMBIOS_CHASSIS_MINI_PC },
- 	{ "Stick PC",		FWTS_SMBIOS_CHASSIS_STICK_PC },
- };
-+#pragma clang diagnostic pop
- 
- /* Remapping table from buggy version numbers to correct values */
- static const fwts_dmi_version dmi_versions[] = {
-diff --git a/src/lib/src/fwts_acpi_tables.c b/src/lib/src/fwts_acpi_tables.c
-index c7ba59be..bdd224aa 100644
---- a/src/lib/src/fwts_acpi_tables.c
-+++ b/src/lib/src/fwts_acpi_tables.c
-@@ -393,10 +393,14 @@ static int fwts_acpi_handle_fadt(
- 	/* Determine FACS addr and load it.
- 	 * Will ignore the missing FACS in the hardware-reduced mode.
- 	 */
-+#pragma clang diagnostic push
-+#pragma clang diagnostic ignored "-Waddress-of-packed-member"
-+
- 	result = fwts_acpi_handle_fadt_tables(fw, fadt,
- 			"FACS", "FIRMWARE_CTRL", "X_FIRMWARE_CTRL",
- 			&fadt->firmware_control, &fadt->x_firmware_ctrl,
- 			provenance);
-+
- 	if (result != FWTS_OK) {
- 		if ((result == FWTS_NULL_POINTER) &&
- 				fwts_acpi_is_reduced_hardware(fadt)) {
-@@ -415,6 +419,7 @@ static int fwts_acpi_handle_fadt(
- 		return FWTS_ERROR;
- 	}
- 	return FWTS_OK;
-+#pragma clang diagnostic pop
- }
- 
- /*
-diff --git a/src/uefi/uefirtauthvar/uefirtauthvar.c b/src/uefi/uefirtauthvar/uefirtauthvar.c
-index c2031741..7a33d19d 100644
---- a/src/uefi/uefirtauthvar/uefirtauthvar.c
-+++ b/src/uefi/uefirtauthvar/uefirtauthvar.c
-@@ -142,6 +142,9 @@ static int uefirtauthvar_deinit(fwts_framework *fw)
- 	return FWTS_OK;
- }
- 
-+#pragma clang diagnostic push
-+#pragma clang diagnostic ignored "-Wconstant-logical-operand"
-+
- static int check_fw_support(fwts_framework *fw, uint64_t status)
- {
- 	if ((status == EFI_INVALID_PARAMETER) &&
-@@ -172,6 +175,8 @@ static int check_fw_support(fwts_framework *fw, uint64_t status)
- 	return FWTS_OK;
- }
- 
-+#pragma clang diagnostic pop
-+
- /*
-  * Set the created authenticated variable, AuthVarCreate,
-  * and checking the data size and data.
diff --git a/meta-openembedded/meta-oe/recipes-test/fwts/fwts_git.bb b/meta-openembedded/meta-oe/recipes-test/fwts/fwts_19.06.00.bb
similarity index 83%
rename from meta-openembedded/meta-oe/recipes-test/fwts/fwts_git.bb
rename to meta-openembedded/meta-oe/recipes-test/fwts/fwts_19.06.00.bb
index d3fb644..88a89fb 100644
--- a/meta-openembedded/meta-oe/recipes-test/fwts/fwts_git.bb
+++ b/meta-openembedded/meta-oe/recipes-test/fwts/fwts_19.06.00.bb
@@ -5,11 +5,8 @@
 LICENSE = "GPLv2+"
 LIC_FILES_CHKSUM = "file://src/main.c;beginline=1;endline=16;md5=31da590f3e9f3bd34dcdb9e4db568519"
 
-PV = "18.05.00+git${SRCPV}"
-
 SRCREV = "b0ec7aa2ef743d113fd8c5e57c0ca3d5edd86f0e"
-SRC_URI = "git://kernel.ubuntu.com/hwe/fwts.git \
-           file://0001-ignore-constant-logical-operand-warning-with-clang.patch \
+SRC_URI = "http://fwts.ubuntu.com/release/fwts-V19.06.00.tar.gz;subdir=${BPN}-${PV} \
            file://0001-Include-poll.h-instead-of-deprecated-sys-poll.h.patch \
            file://0002-Define-__SWORD_TYPE-if-not-defined-by-libc.patch \
            file://0003-Undefine-PAGE_SIZE.patch \
@@ -17,12 +14,12 @@
            file://0003-use-intptr_t-to-fix-pointer-to-int-cast-issues.patch \
            file://0001-Remove-Werror-from-build.patch \
            "
-
-S = "${WORKDIR}/git"
+SRC_URI[md5sum] = "012f933329510cc5a71817ede681eee2"
+SRC_URI[sha256sum] = "13aa991f12c69f48df368aae5e5d0fbc9136413b4bfe115421bc3216d919f8a2"
 
 COMPATIBLE_HOST = "(i.86|x86_64|aarch64|powerpc64).*-linux"
 
-DEPENDS = "libpcre json-c glib-2.0 dtc bison-native"
+DEPENDS = "libpcre json-c glib-2.0 dtc bison-native libbsd"
 DEPENDS_append_libc-musl = " libexecinfo"
 
 inherit autotools bash-completion pkgconfig
diff --git a/meta-openembedded/meta-oe/recipes-test/gtest/gtest_1.8.1.bb b/meta-openembedded/meta-oe/recipes-test/googletest/googletest_1.8.1.bb
similarity index 76%
rename from meta-openembedded/meta-oe/recipes-test/gtest/gtest_1.8.1.bb
rename to meta-openembedded/meta-oe/recipes-test/googletest/googletest_1.8.1.bb
index 23862c9..362d69f 100644
--- a/meta-openembedded/meta-oe/recipes-test/gtest/gtest_1.8.1.bb
+++ b/meta-openembedded/meta-oe/recipes-test/googletest/googletest_1.8.1.bb
@@ -1,17 +1,15 @@
 DESCRIPTION = "Google's framework for writing C++ tests"
-HOMEPAGE = "https://github.com/abseil/googletest"
+HOMEPAGE = "https://github.com/google/googletest"
 SECTION = "libs"
 LICENSE = "BSD-3-Clause"
 LIC_FILES_CHKSUM = "file://googlemock/LICENSE;md5=cbbd27594afd089daa160d3a16dd515a \
                     file://googletest/LICENSE;md5=cbbd27594afd089daa160d3a16dd515a"
 
-PROVIDES += "gmock"
+PROVIDES += "gmock gtest"
 
 S = "${WORKDIR}/git"
 SRCREV = "2fe3bd994b3189899d93f1d5a881e725e046fdc2"
-SRC_URI = "\
-    git://github.com/abseil/googletest.git;protocol=https; \
-"
+SRC_URI = "git://github.com/google/googletest.git"
 
 inherit cmake
 
diff --git a/meta-openembedded/meta-oe/recipes-test/stress-ng/stress-ng/0001-Revert-Makefile-force-sync-after-build-in-case-reboo.patch b/meta-openembedded/meta-oe/recipes-test/stress-ng/stress-ng/0001-Revert-Makefile-force-sync-after-build-in-case-reboo.patch
deleted file mode 100644
index 469791d..0000000
--- a/meta-openembedded/meta-oe/recipes-test/stress-ng/stress-ng/0001-Revert-Makefile-force-sync-after-build-in-case-reboo.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 7c97710bfc44d895b7111bef9c55866f00a3589c Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 13 Aug 2018 11:54:27 -0700
-Subject: [PATCH] Revert "Makefile: force sync after build in case reboot loses
- executable"
-
-This reverts commit ae6322b1baea56a589207c96e358daae8edd0a8f.
-
-Not needed for cross-builds
-
-Upstream-Status: Inappropriate [Cross compile specific]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- Makefile | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/Makefile b/Makefile
-index c0db72c0..5781dda6 100644
---- a/Makefile
-+++ b/Makefile
-@@ -348,7 +348,6 @@ endif
- stress-ng: $(OBJS)
- 	@echo "LD $@"
- 	@$(CC) $(CPPFLAGS) $(CFLAGS) $(OBJS) -lm $(LDFLAGS) -o $@
--	@sync
- 
- makeconfig:
- 	@if [ ! -s config ]; then \
--- 
-2.17.0
-
diff --git a/meta-openembedded/meta-oe/recipes-test/stress-ng/stress-ng/0001-Several-changes-to-fix-musl-build.patch b/meta-openembedded/meta-oe/recipes-test/stress-ng/stress-ng/0001-Several-changes-to-fix-musl-build.patch
deleted file mode 100644
index c0b3449..0000000
--- a/meta-openembedded/meta-oe/recipes-test/stress-ng/stress-ng/0001-Several-changes-to-fix-musl-build.patch
+++ /dev/null
@@ -1,132 +0,0 @@
-From 9bcb4e170f01dbe0a9e7bf6b899c5d9b5283d4c6 Mon Sep 17 00:00:00 2001
-From: Randy MacLeod <Randy.MacLeod@windriver.com>
-Date: Sun, 11 Nov 2018 23:00:53 -0500
-Subject: [PATCH] Several changes to fix musl build
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Rebased patch for:
-
-stress-{context, stackmmap}.c: Set tests to non-implemented because uses
-swapcontext, musl provide the definition but not the implementation due
-  to that functions are pre-POSIX and set to be deprecated.
-  stress-{resources, pty}.c: Doesn't include termio.h and remove stress
-  operations that uses struct termio, musl doesn't provide that struct.
-stress-malloc.c: Check for definition of M_MMAP_THRESHOLD musl doesn't
-  ptovide that constant.
-stress-madvise.c: Add static poision_count integer, definition of
-  MADV_SOFT_OFFLINE doesn't grauntee MADV_HWPOISON to be defined.
-cache.c: Define GLOB_ONLYDIR not available on MUSL.
-
-Signed-off-by: Aníbal Limón <anibal.limon@linaro.org>
-Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com>
-Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
-
-Upstream-status: Pending
----
- cache.c            |  4 ++++
- stress-madvise.c   |  1 +
- stress-pty.c       | 18 ------------------
- stress-resources.c |  1 -
- stress-stackmmap.c |  2 +-
- 5 files changed, 6 insertions(+), 20 deletions(-)
-
-diff --git a/cache.c b/cache.c
-index e8a0f791..4c7bb486 100644
---- a/cache.c
-+++ b/cache.c
-@@ -28,6 +28,10 @@ typedef struct {
- 
- #include <glob.h>
- 
-+#ifndef GLOB_ONLYDIR
-+#define GLOB_ONLYDIR    0x100
-+#endif
-+
- #if defined(__linux__)
- #define SYS_CPU_PREFIX               "/sys/devices/system/cpu"
- #define GLOB_PATTERN SYS_CPU_PREFIX  "/cpu[0-9]*"
-diff --git a/stress-madvise.c b/stress-madvise.c
-index b2e3497f..77e43a91 100644
---- a/stress-madvise.c
-+++ b/stress-madvise.c
-@@ -146,6 +146,7 @@ static int stress_random_advise(const args_t *args)
- #if defined(MADV_SOFT_OFFLINE)
- 	if (advise == MADV_SOFT_OFFLINE) {
- 		static int soft_offline_count;
-+		static int poison_count;
- 
- 		/* ..and minimize number of soft offline pages */
- 		if ((soft_offline_count >= NUM_SOFT_OFFLINE_MAX) ||
-diff --git a/stress-pty.c b/stress-pty.c
-index 4dd88ab9..c79a7021 100644
---- a/stress-pty.c
-+++ b/stress-pty.c
-@@ -26,7 +26,6 @@
- 
- #if defined(__linux__)
- 
--#include <termio.h>
- #include <termios.h>
- 
- typedef struct {
-@@ -111,7 +110,6 @@ static int stress_pty(const args_t *args)
- 		 */
- 		for (i = 0; i < n; i++) {
- 			struct termios ios;
--			struct termio io;
- 			struct winsize ws;
- 			int arg;
- 
-@@ -133,22 +131,6 @@ static int stress_pty(const args_t *args)
- 			if (ioctl(ptys[i].slave, TCSETSF, &ios) < 0)
- 				pr_fail_err("ioctl TCSETSF on slave pty");
- #endif
--#if defined(TCGETA)
--			if (ioctl(ptys[i].slave, TCGETA, &io) < 0)
--				pr_fail_err("ioctl TCGETA on slave pty");
--#endif
--#if defined(TCSETA)
--			if (ioctl(ptys[i].slave, TCSETA, &io) < 0)
--				pr_fail_err("ioctl TCSETA on slave pty");
--#endif
--#if defined(TCSETAW)
--			if (ioctl(ptys[i].slave, TCSETAW, &io) < 0)
--				pr_fail_err("ioctl TCSETAW on slave pty");
--#endif
--#if defined(TCSETAF)
--			if (ioctl(ptys[i].slave, TCSETAF, &io) < 0)
--				pr_fail_err("ioctl TCSETAF on slave pty");
--#endif
- #if defined(TIOCGLCKTRMIOS)
- 			if (ioctl(ptys[i].slave, TIOCGLCKTRMIOS, &ios) < 0)
- 				pr_fail_err("ioctl TIOCGLCKTRMIOS on slave pty");
-diff --git a/stress-resources.c b/stress-resources.c
-index f3dcfb38..86f9a5ba 100644
---- a/stress-resources.c
-+++ b/stress-resources.c
-@@ -28,7 +28,6 @@
- #include <sys/inotify.h>
- #endif
- #if defined(__linux__)
--#include <termio.h>
- #include <termios.h>
- #endif
- #if defined(HAVE_LIB_PTHREAD) && defined(__linux__)
-diff --git a/stress-stackmmap.c b/stress-stackmmap.c
-index c2f4c31d..54308777 100644
---- a/stress-stackmmap.c
-+++ b/stress-stackmmap.c
-@@ -24,7 +24,7 @@
-  */
- #include "stress-ng.h"
- 
--#if defined(__linux__)
-+#if defined(__linux__) && False
- 
- #include <ucontext.h>
- 
--- 
-2.17.0
-
diff --git a/meta-openembedded/meta-oe/recipes-test/stress-ng/stress-ng_0.09.45.bb b/meta-openembedded/meta-oe/recipes-test/stress-ng/stress-ng_0.09.45.bb
deleted file mode 100644
index 3e8f2d4..0000000
--- a/meta-openembedded/meta-oe/recipes-test/stress-ng/stress-ng_0.09.45.bb
+++ /dev/null
@@ -1,26 +0,0 @@
-SUMMARY = "A tool to load and stress a computer system"
-HOMEPAGE = "http://kernel.ubuntu.com/~cking/stress-ng/"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-
-DEPENDS = "zlib libaio"
-
-SRC_URI = "http://kernel.ubuntu.com/~cking/tarballs/${BPN}/${BP}.tar.xz \
-           file://0001-Revert-Makefile-force-sync-after-build-in-case-reboo.patch \
-           "
-SRC_URI_append_libc-musl = " \
-    file://0001-Several-changes-to-fix-musl-build.patch \
-    "
-
-SRC_URI[md5sum] = "b03744c2eb68bf7e9a300e78e397f348"
-SRC_URI[sha256sum] = "0741e3004bf590bb7af3db979a46fe89bee7aaad6065cd1d87d0b7fa49046cb2"
-
-UPSTREAM_CHECK_URI ?= "http://kernel.ubuntu.com/~cking/tarballs/${BPN}/"
-UPSTREAM_CHECK_REGEX ?= "(?P<pver>\d+(\.\d+)+)\.tar"
-
-CFLAGS += "-Wall -Wextra -DVERSION='"$(VERSION)"'"
-
-do_install_append() {
-    install -d ${D}${bindir}
-    install -m 755 ${S}/stress-ng ${D}${bindir}/stress-ng
-}
diff --git a/meta-openembedded/meta-perl/recipes-perl/libauthen/libauthen-radius-perl_0.22.bb b/meta-openembedded/meta-perl/recipes-perl/libauthen/libauthen-radius-perl_0.22.bb
index fb18fe2..7118dc0 100644
--- a/meta-openembedded/meta-perl/recipes-perl/libauthen/libauthen-radius-perl_0.22.bb
+++ b/meta-openembedded/meta-perl/recipes-perl/libauthen/libauthen-radius-perl_0.22.bb
@@ -34,6 +34,14 @@
     perl-module-io-select \
     perl-module-io-socket \
 "
-RDEPENDS_${PN}-ptest += "freeradius"
+RDEPENDS_${PN}-ptest += " \
+    ${@bb.utils.contains('PTEST_ENABLED', '1', 'freeradius', '', d)} \
+"
 
 BBCLASSEXTEND = "native"
+
+python() {
+    if bb.utils.contains('PTEST_ENABLED', '1', 'True', 'False', d) and \
+       'networking-layer' not in d.getVar('BBFILE_COLLECTIONS').split():
+        raise bb.parse.SkipRecipe('ptest requires meta-networking to be present.')
+}
diff --git a/meta-openembedded/meta-perl/recipes-perl/libcgi/libcgi-perl_4.43.bb b/meta-openembedded/meta-perl/recipes-perl/libcgi/libcgi-perl_4.44.bb
similarity index 88%
rename from meta-openembedded/meta-perl/recipes-perl/libcgi/libcgi-perl_4.43.bb
rename to meta-openembedded/meta-perl/recipes-perl/libcgi/libcgi-perl_4.44.bb
index b4571b2..cde187d 100644
--- a/meta-openembedded/meta-perl/recipes-perl/libcgi/libcgi-perl_4.43.bb
+++ b/meta-openembedded/meta-perl/recipes-perl/libcgi/libcgi-perl_4.44.bb
@@ -10,8 +10,8 @@
 
 SRC_URI = "http://search.cpan.org/CPAN/authors/id/L/LE/LEEJO/CGI-${PV}.tar.gz"
 
-SRC_URI[md5sum] = "8c1f2cf11e4410911827ea48d58aaecc"
-SRC_URI[sha256sum] = "14b94f9df6e48fc26ebc4fa1e01a7b534cbc1611028a49028f9ac9d8ca27b734"
+SRC_URI[md5sum] = "2cbe560fdadbb8b9237744e39bbfc3eb"
+SRC_URI[sha256sum] = "12435fb7ebd3585c47b6d60ee4f5c7d6a7c114a2827d2b5acf3d62aa9fcf1208"
 
 S = "${WORKDIR}/CGI-${PV}"
 
@@ -34,6 +34,7 @@
 
 RDEPENDS_${PN}-ptest += " \
     libtest-deep-perl \
+    libtest-warn-perl \
     perl-module-bytes \
     perl-module-file-find \
     perl-module-filehandle \
diff --git a/meta-openembedded/meta-perl/recipes-perl/libdb/libdbd-sqlite-perl_1.54.bb b/meta-openembedded/meta-perl/recipes-perl/libdb/libdbd-sqlite-perl_1.54.bb
deleted file mode 100644
index c72e536..0000000
--- a/meta-openembedded/meta-perl/recipes-perl/libdb/libdbd-sqlite-perl_1.54.bb
+++ /dev/null
@@ -1,41 +0,0 @@
-SUMMARY = "A Perl DBI driver for SQLite"
-DESCRIPTION = "DBD::SQLite is a Perl DBI driver for SQLite, that includes the entire \
-thing in the distribution. So in order to get a fast transaction capable \
-RDBMS working for your perl project you simply have to install this \
-module, and nothing else. \
-"
-HOMEPAGE = "http://search.cpan.org/~ishigaki/DBD-SQLite/"
-
-SECTION = "libs"
-LICENSE = "Artistic-1.0 | GPL-1.0+"
-DEPENDS += "libdbi-perl-native"
-RDEPENDS_${PN} += "libdbi-perl \
-                   sqlite3 \
-                   perl-module-constant \
-                   perl-module-locale \
-                   perl-module-tie-hash \
-"
-
-LIC_FILES_CHKSUM = "file://LICENSE;md5=1726e2117494ba3e13e1c3d93f795360"
-
-SRC_URI = "http://search.cpan.org/CPAN/authors/id/I/IS/ISHIGAKI/DBD-SQLite-${PV}.tar.gz \
-           file://sqlite-perl-test.pl \
-"
-
-SRC_URI[md5sum] = "8f835ddacb9a4a92a52bbe2d24d18a8e"
-SRC_URI[sha256sum] = "3929a6dbd8d71630f0cb57f85dcef9588cd7ac4c9fa12db79df77b9d3a4d7269"
-
-UPSTREAM_CHECK_REGEX = "DBD\-SQLite\-(?P<pver>(\d+\.\d+))(?!_\d+).tar"
-
-S = "${WORKDIR}/DBD-SQLite-${PV}"
-
-inherit cpan
-
-BBCLASSEXTEND = "native"
-
-do_install_append() {
-    if [ ${PERL_DBM_TEST} = "1" ]; then
-        install -m 755 -D ${WORKDIR}/sqlite-perl-test.pl ${D}/${bindir}/sqlite-perl-test.pl
-    fi
-}
-
diff --git a/meta-openembedded/meta-perl/recipes-perl/libdb/libdbd-sqlite-perl_1.62.bb b/meta-openembedded/meta-perl/recipes-perl/libdb/libdbd-sqlite-perl_1.62.bb
new file mode 100644
index 0000000..4af9d3c
--- /dev/null
+++ b/meta-openembedded/meta-perl/recipes-perl/libdb/libdbd-sqlite-perl_1.62.bb
@@ -0,0 +1,56 @@
+SUMMARY = "A Perl DBI driver for SQLite"
+DESCRIPTION = "DBD::SQLite is a Perl DBI driver for SQLite, that includes the entire \
+thing in the distribution. So in order to get a fast transaction capable \
+RDBMS working for your perl project you simply have to install this \
+module, and nothing else. \
+"
+HOMEPAGE = "https://metacpan.org/release/DBD-SQLite"
+
+SECTION = "libs"
+LICENSE = "Artistic-1.0 | GPL-1.0+"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=1726e2117494ba3e13e1c3d93f795360"
+
+SRC_URI = "${CPAN_MIRROR}/authors/id/I/IS/ISHIGAKI/DBD-SQLite-${PV}.tar.gz \
+           file://sqlite-perl-test.pl \
+"
+
+SRC_URI[md5sum] = "f2e11a2bea6bd864404c0363d7eddaf8"
+SRC_URI[sha256sum] = "bd82ef322a9e5469a7a62d845c32fad1188b76ccb49a88520cec768343cce85c"
+
+UPSTREAM_CHECK_REGEX = "DBD\-SQLite\-(?P<pver>(\d+\.\d+))(?!_\d+).tar"
+
+S = "${WORKDIR}/DBD-SQLite-${PV}"
+
+DEPENDS += "libdbi-perl-native"
+
+inherit cpan ptest-perl
+
+RDEPENDS_${PN} += "libdbi-perl \
+		   sqlite3 \
+		   perl-module-constant \
+		   perl-module-locale \
+		   perl-module-tie-hash \
+"
+
+do_install_append() {
+    if [ ${PERL_DBM_TEST} = "1" ]; then
+        install -m 755 -D ${WORKDIR}/sqlite-perl-test.pl ${D}/${bindir}/sqlite-perl-test.pl
+    fi
+}
+
+do_install_ptest() {
+	cp -r ${B}/MANIFEST ${D}${PTEST_PATH}
+	chown -R root:root ${D}${PTEST_PATH}
+}
+
+RDEPENDS_${PN}-ptest += " \
+    libtest-nowarnings-perl \
+    perl-module-lib \
+    perl-module-encode \
+    perl-module-file-spec \
+    perl-module-file-spec-functions \
+    perl-module-findbin \
+    perl-module-test-more \
+    "
+
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-perl/recipes-perl/libencode/libencode-perl_2.94.bb b/meta-openembedded/meta-perl/recipes-perl/libencode/libencode-perl_2.94.bb
deleted file mode 100644
index 9861c56..0000000
--- a/meta-openembedded/meta-perl/recipes-perl/libencode/libencode-perl_2.94.bb
+++ /dev/null
@@ -1,68 +0,0 @@
-# NOTE:
-#    You should use perl-module-encode rather than this package
-#    unless you specifically need a version newer than what is
-#    provided by perl.
-
-SUMMARY = "Encode - character encodings"
-DESCRIPTION = "The \"Encode\" module provides the interfaces between \
-Perl's strings and the rest of the system.  Perl strings are sequences \
-of characters."
-
-AUTHOR = "Dan Kogai <dankogai+cpan@gmail.com>"
-HOMEPAGE = "https://metacpan.org/release/Encode"
-SECTION = "lib"
-LICENSE = "Artistic-1.0 | GPL-1.0+"
-LIC_FILES_CHKSUM = "file://META.json;md5=d8e909447b983532b2b460c830e7a7e4"
-
-SRC_URI = "${CPAN_MIRROR}/authors/id/D/DA/DANKOGAI/Encode-${PV}.tar.gz"
-SRC_URI[md5sum] = "f995e0eb9e52d01ed57abe835bf3ccb6"
-SRC_URI[sha256sum] = "acb3a4af5e3ee38f94de8baa7454e0b836a0649e7ac4180f28dfca439ad60cff"
-
-UPSTREAM_CHECK_REGEX = "Encode\-(?P<pver>(\d+\.\d+))(?!_\d+).tar"
-
-S = "${WORKDIR}/Encode-${PV}"
-
-inherit cpan
-
-#  file /usr/bin/enc2xs from install of perl-misc-5.24.1-r0.i586 conflicts with file from package libencode-perl-2.94-r0.i586
-#  file /usr/bin/encguess from install of perl-misc-5.24.1-r0.i586 conflicts with file from package libencode-perl-2.94-r0.i586
-#  file /usr/bin/piconv from install of perl-misc-5.24.1-r0.i586 conflicts with file from package libencode-perl-2.94-r0.i586
-RCONFLICTS_${PN} = "perl-misc"
-
-RDEPENDS_${PN} += " perl-module-bytes \
-                    perl-module-constant \
-                    perl-module-parent \
-                    perl-module-storable \
-                    perl-module-xsloader \
-"
-
-RPROVIDES_${PN} += "libencode-alias-perl \
-                    libencode-byte-perl \
-                    libencode-cjkconstants-perl \
-                    libencode-cn-perl \
-                    libencode-cn-hz-perl \
-                    libencode-config-perl \
-                    libencode-ebcdic-perl \
-                    libencode-encoder-perl \
-                    libencode-encoding-perl \
-                    libencode-gsm0338-perl \
-                    libencode-guess-perl \
-                    libencode-jp-perl \
-                    libencode-jp-h2z-perl \
-                    libencode-jp-jis7-perl \
-                    libencode-kr-perl \
-                    libencode-kr-2022_kr-perl \
-                    libencode-mime-header-perl \
-                    libencode-mime-name-perl \
-                    libencode-symbol-perl \
-                    libencode-tw-perl \
-                    libencode-unicode-perl \
-                    libencode-unicode-utf7-perl \
-                    libencoding-perl \
-                    libencode-internal-perl \
-                    libencode-mime-header-iso_2022_jp-perl \
-                    libencode-utf8-perl \
-                    libencode-utf_ebcdic-perl \
-                    "
-
-BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-perl/recipes-perl/libencode/libencode-perl_3.01.bb b/meta-openembedded/meta-perl/recipes-perl/libencode/libencode-perl_3.01.bb
new file mode 100644
index 0000000..be3a296
--- /dev/null
+++ b/meta-openembedded/meta-perl/recipes-perl/libencode/libencode-perl_3.01.bb
@@ -0,0 +1,106 @@
+# NOTE:
+#    You should use perl-module-encode rather than this package
+#    unless you specifically need a version newer than what is
+#    provided by perl.
+
+SUMMARY = "Encode - character encodings"
+DESCRIPTION = "The \"Encode\" module provides the interfaces between \
+Perl's strings and the rest of the system.  Perl strings are sequences \
+of characters."
+
+AUTHOR = "Dan Kogai <dankogai+cpan@gmail.com>"
+HOMEPAGE = "https://metacpan.org/release/Encode"
+SECTION = "lib"
+LICENSE = "Artistic-1.0 | GPL-1.0+"
+LIC_FILES_CHKSUM = "file://META.json;beginline=8;endline=10;md5=b12e3be1e17a7e99ca4f429ff32c28b5"
+
+SRC_URI = "${CPAN_MIRROR}/authors/id/D/DA/DANKOGAI/Encode-${PV}.tar.gz"
+SRC_URI[md5sum] = "b0524ca1535ff6956cf1ff696616c94a"
+SRC_URI[sha256sum] = "d4555f570491648dbbd602bce7966672834b4c8f45acaa6757de474fca3a4d87"
+
+UPSTREAM_CHECK_REGEX = "Encode\-(?P<pver>(\d+\.\d+))(?!_\d+).tar"
+
+S = "${WORKDIR}/Encode-${PV}"
+
+inherit cpan ptest-perl
+
+do_install_prepend() {
+    # Requires "-T" (taint) option on command line
+    rm -rf ${B}/t/taint.t
+    # Circular dependency of perl-module-open on perl-module-encode
+    # and we cannot load perl-module-encode because we are providing
+    # an alternative
+    rm -rf ${B}/t/use-Encode-Alias.t
+}
+
+do_install_ptest() {
+    mkdir ${D}${PTEST_PATH}/bin
+    cp -r ${B}/bin/piconv ${D}${PTEST_PATH}/bin
+    cp -r ${B}/blib ${D}${PTEST_PATH}
+    chown -R root:root ${D}${PTEST_PATH}
+}
+
+#  file /usr/bin/enc2xs from install of perl-misc-5.24.1-r0.i586 conflicts with file from package libencode-perl-2.94-r0.i586
+#  file /usr/bin/encguess from install of perl-misc-5.24.1-r0.i586 conflicts with file from package libencode-perl-2.94-r0.i586
+#  file /usr/bin/piconv from install of perl-misc-5.24.1-r0.i586 conflicts with file from package libencode-perl-2.94-r0.i586
+RCONFLICTS_${PN} = "perl-misc perl-module-encode"
+
+RDEPENDS_${PN} += " \
+    perl-module-bytes \
+    perl-module-constant \
+    perl-module-parent \
+    perl-module-storable \
+    perl-module-xsloader \
+    "
+
+RPROVIDES_${PN} += " \
+    libencode-alias-perl \
+    libencode-byte-perl \
+    libencode-cjkconstants-perl \
+    libencode-cn-perl \
+    libencode-cn-hz-perl \
+    libencode-config-perl \
+    libencode-ebcdic-perl \
+    libencode-encoder-perl \
+    libencode-encoding-perl \
+    libencode-gsm0338-perl \
+    libencode-guess-perl \
+    libencode-jp-perl \
+    libencode-jp-h2z-perl \
+    libencode-jp-jis7-perl \
+    libencode-kr-perl \
+    libencode-kr-2022_kr-perl \
+    libencode-mime-header-perl \
+    libencode-mime-name-perl \
+    libencode-symbol-perl \
+    libencode-tw-perl \
+    libencode-unicode-perl \
+    libencode-unicode-utf7-perl \
+    libencoding-perl \
+    libencode-internal-perl \
+    libencode-mime-header-iso_2022_jp-perl \
+    libencode-utf8-perl \
+    libencode-utf_ebcdic-perl \
+    "
+
+RDEPENDS_${PN}-ptest += " \
+    perl-module-blib \
+    perl-module-charnames \
+    perl-module-file-compare \
+    perl-module-file-copy \
+    perl-module-filehandle \
+    perl-module-findbin \
+    perl-module-integer \
+    perl-module-io-select \
+    perl-module-ipc-open3 \
+    perl-module-mime-base64 \
+    perl-module-perlio \
+    perl-module-perlio-encoding \
+    perl-module-perlio-scalar \
+    perl-module-test-more \
+    perl-module-tie-scalar \
+    perl-module-unicore \
+    perl-module-utf8 \
+    "
+
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-perl/recipes-perl/libnet/libnet-ldap-perl_0.65.bb b/meta-openembedded/meta-perl/recipes-perl/libnet/libnet-ldap-perl_0.65.bb
deleted file mode 100644
index f2b1f16..0000000
--- a/meta-openembedded/meta-perl/recipes-perl/libnet/libnet-ldap-perl_0.65.bb
+++ /dev/null
@@ -1,29 +0,0 @@
-SUMMARY = "LDAP Perl module"
-DESCRIPTION = "Net::LDAP is a collection of modules that implements \
-a LDAP services API for Perl programs. The module may be used to \
-search directories or perform maintenance functions such as adding, \
-deleting or modifying entries."
-
-SECTION = "libs"
-
-LICENSE = "Artistic-1.0|GPLv1+"
-LIC_FILES_CHKSUM = "file://README;beginline=3;endline=5;md5=4d6588c2fa0d38ae162f6314d201d89e"
-
-SRC_URI = "http://search.cpan.org/CPAN/authors/id/M/MA/MARSCHAP/perl-ldap-${PV}.tar.gz"
-
-SRC_URI[md5sum] = "d057c8db76913d95c0e460c7bdd98b27"
-SRC_URI[sha256sum] = "5f57dd261dc16ebf942a272ddafe69526598df71151a51916edc37a4f2f23834"
-
-S = "${WORKDIR}/perl-ldap-${PV}"
-
-inherit cpan
-
-do_configure_prepend() {
-    perl -pi -e 's/auto_install_now.*//g' Makefile.PL
-}
-
-RDEPENDS_${PN} = "perl \
-    libconvert-asn1-perl \
-    libio-socket-ssl-perl \
-    libauthen-sasl-perl \
-"
diff --git a/meta-openembedded/meta-perl/recipes-perl/libnet/libnet-ldap-perl_0.66.bb b/meta-openembedded/meta-perl/recipes-perl/libnet/libnet-ldap-perl_0.66.bb
new file mode 100644
index 0000000..26c7c38
--- /dev/null
+++ b/meta-openembedded/meta-perl/recipes-perl/libnet/libnet-ldap-perl_0.66.bb
@@ -0,0 +1,45 @@
+SUMMARY = "LDAP Perl module"
+DESCRIPTION = "Net::LDAP is a collection of modules that implements \
+a LDAP services API for Perl programs. The module may be used to \
+search directories or perform maintenance functions such as adding, \
+deleting or modifying entries."
+
+SECTION = "libs"
+
+LICENSE = "Artistic-1.0|GPLv1+"
+LIC_FILES_CHKSUM = "file://README;beginline=3;endline=5;md5=4d6588c2fa0d38ae162f6314d201d89e"
+
+SRC_URI = "${CPAN_MIRROR}/authors/id/M/MA/MARSCHAP/perl-ldap-${PV}.tar.gz"
+
+SRC_URI[md5sum] = "c4c1ae9299cd488e75c1b82904458bef"
+SRC_URI[sha256sum] = "09263ce6166e80c98d689d41d09995b813389fd069b784601f6dc57f8e2b4102"
+
+S = "${WORKDIR}/perl-ldap-${PV}"
+
+inherit cpan ptest-perl
+
+do_configure_prepend() {
+    perl -pi -e 's/auto_install_now.*//g' Makefile.PL
+}
+
+do_install_ptest() {
+	cp -r ${B}/data ${D}${PTEST_PATH}
+	chown -R root:root ${D}${PTEST_PATH}
+}
+
+RDEPENDS_${PN} += " \
+    libconvert-asn1-perl \
+    libio-socket-ssl-perl \
+    libauthen-sasl-perl \
+    perl-module-integer \
+"
+
+RDEPENDS_${PN}-ptest += " \
+    libxml-sax-base-perl \
+    libxml-sax-writer-perl \
+    perl-module-file-compare \
+    perl-module-perlio \
+    perl-module-test-more \
+"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-perl/recipes-perl/libsub/libsub-exporter-progressive-perl_0.001013.bb b/meta-openembedded/meta-perl/recipes-perl/libsub/libsub-exporter-progressive-perl_0.001013.bb
index 64d19c0..3d530d1 100644
--- a/meta-openembedded/meta-perl/recipes-perl/libsub/libsub-exporter-progressive-perl_0.001013.bb
+++ b/meta-openembedded/meta-perl/recipes-perl/libsub/libsub-exporter-progressive-perl_0.001013.bb
@@ -13,8 +13,6 @@
 LICENSE = "Artistic-1.0 | GPL-1.0+"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=003fa970662359a43ac2c2961108b0f1"
 
-DEPENDS_${PN} = " perl-module-test-more"
-
 SRC_URI = "${CPAN_MIRROR}/authors/id/F/FR/FREW/Sub-Exporter-Progressive-${PV}.tar.gz"
 SRC_URI[md5sum] = "72cf6acdd2a0a8b105821a4db98e4ebe"
 SRC_URI[sha256sum] = "d535b7954d64da1ac1305b1fadf98202769e3599376854b2ced90c382beac056"
diff --git a/meta-openembedded/meta-perl/recipes-perl/libsub/libsub-uplevel-perl_0.2800.bb b/meta-openembedded/meta-perl/recipes-perl/libsub/libsub-uplevel-perl_0.2800.bb
new file mode 100644
index 0000000..f051037
--- /dev/null
+++ b/meta-openembedded/meta-perl/recipes-perl/libsub/libsub-uplevel-perl_0.2800.bb
@@ -0,0 +1,43 @@
+SUMMARY = "Sub::Uplevel - apparently run a function in a higher stack frame"
+DESCRIPTION = " Like Tcl's uplevel() function, but not quite so dangerous. \
+The idea is just to fool caller(). All the really naughty bits of Tcl's \
+uplevel() are avoided. \
+\
+THIS IS NOT THE SORT OF THING YOU WANT TO DO EVERYDAY \
+"
+
+SECTION = "libs"
+HOMEPAGE= "https://metacpan.org/release/Sub-Uplevel"
+
+LICENSE = "Artistic-1.0 | GPL-1.0+"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=7f1207cd3108e4ade18448d81e6bcb6c"
+
+CPAN_PACKAGE = "Sub-Uplevel"
+CPAN_AUTHOR = "DAGOLDEN"
+
+SRC_URI = "${CPAN_MIRROR}/authors/id/D/DA/${CPAN_AUTHOR}/${CPAN_PACKAGE}-${PV}.tar.gz"
+
+SRC_URI[md5sum] = "6c6a174861fd160e8d5871a86df00baf"
+SRC_URI[sha256sum] = "b4f3f63b80f680a421332d8851ddbe5a8e72fcaa74d5d1d98f3c8cc4a3ece293"
+
+S = "${WORKDIR}/${CPAN_PACKAGE}-${PV}"
+
+inherit cpan ptest-perl
+
+RDEPENDS_${PN} += " \
+    perl-module-carp \
+    perl-module-constant \
+    perl-module-strict \
+    perl-module-warnings \
+"
+
+RDEPENDS_${PN}-ptest += " \
+    perl-module-cpan \
+    perl-module-exporter \
+    perl-module-extutils-makemaker \
+    perl-module-file-spec \
+    perl-module-lib \
+    perl-module-test-more \
+"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-perl/recipes-perl/libtest/libtest-nowarnings-perl_1.04.bb b/meta-openembedded/meta-perl/recipes-perl/libtest/libtest-nowarnings-perl_1.04.bb
new file mode 100644
index 0000000..f3c28d3
--- /dev/null
+++ b/meta-openembedded/meta-perl/recipes-perl/libtest/libtest-nowarnings-perl_1.04.bb
@@ -0,0 +1,37 @@
+SUMMARY = "Make sure you didn't emit any warnings while testing"
+DESCRIPTION = "In general, your tests shouldn't produce warnings. This \
+modules causes any warnings to be captured and stored. It automatically \
+adds an extra test that will run when your script ends to check that there \
+were no warnings. If there were any warings, the test will give a \\"not ok\\" \
+and diagnostics of where, when and what the warning was, including a stack \
+trace of what was going on when the it occurred.\
+\
+If some of your tests are supposed to produce warnings then you should \
+be capturing and checking them with Test::Warn, that way \
+Test::NoWarnings will not see them and so not complain.\
+\
+The test is run by an \\"END\\" block in Test::NoWarnings. It will not be \
+run when any forked children exit."
+
+SECTION = "libs"
+LICENSE = "LGPL-2.1"
+
+HOMEPAGE= "https://metacpan.org/release/Test-NoWarnings"
+
+LIC_FILES_CHKSUM = "file://LICENSE;md5=d8045f3b8f929c1cb29a1e3fd737b499"
+
+CPAN_PACKAGE = "Test-NoWarnings"
+CPAN_AUTHOR = "ADAMK"
+
+SRC_URI = "${CPAN_MIRROR}/authors/id/A/AD/${CPAN_AUTHOR}/${CPAN_PACKAGE}-${PV}.tar.gz"
+
+SRC_URI[md5sum] = "682ed043f7d3e38f3dfd8745fd21c49a"
+SRC_URI[sha256sum] = "638a57658cb119af1fe5b15e73d47c2544dcfef84af0c6b1b2e97f08202b686c"
+
+RDEPENDS_${PN} += "perl-module-test-builder perl-module-test-more perl-module-test-tester"
+
+S = "${WORKDIR}/${CPAN_PACKAGE}-${PV}"
+
+inherit cpan ptest-perl
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-perl/recipes-perl/libtest/libtest-warn-perl_0.36.bb b/meta-openembedded/meta-perl/recipes-perl/libtest/libtest-warn-perl_0.36.bb
new file mode 100644
index 0000000..c336da8
--- /dev/null
+++ b/meta-openembedded/meta-perl/recipes-perl/libtest/libtest-warn-perl_0.36.bb
@@ -0,0 +1,46 @@
+SUMMARY = "Test::Warn - Perl extension to test methods for warnings"
+DESCRIPTION = "This module provides a few convenience methods for testing \
+warning based code. \
+\
+If you are not already familiar with the Test::More manpage now would be \
+the time to go take a look. \
+"
+
+SECTION = "libs"
+HOMEPAGE= "https://metacpan.org/release/Test-Warn"
+
+LICENSE = "Artistic-1.0 | GPL-1.0+"
+LIC_FILES_CHKSUM = "file://README;beginline=73;endline=78;md5=42b423d91c92ba59c215835a2ee9b57a"
+
+CPAN_PACKAGE = "Test-Warn"
+CPAN_AUTHOR = "BIGJ"
+
+SRC_URI = "${CPAN_MIRROR}/authors/id/B/BI/${CPAN_AUTHOR}/${CPAN_PACKAGE}-${PV}.tar.gz"
+
+SRC_URI[md5sum] = "3d958f43d36db263994affde5da09b51"
+SRC_URI[sha256sum] = "ecbca346d379cef8d3c0e4ac0c8eb3b2613d737ffaaeae52271c38d7bf3c6cda"
+
+S = "${WORKDIR}/${CPAN_PACKAGE}-${PV}"
+
+inherit cpan ptest-perl
+
+do_install_ptest() {
+    cp -r ${B}/blib ${D}${PTEST_PATH}
+    chown -R root:root ${D}${PTEST_PATH}
+}
+
+RDEPENDS_${PN} += " \
+    libsub-uplevel-perl \
+    perl-module-blib \
+    perl-module-carp \
+    perl-module-test-builder \
+    perl-module-test-builder-tester \
+    perl-module-test-tester \
+"
+
+RDEPENDS_${PN}-ptest += " \
+    perl-module-file-spec \
+    perl-module-test-more \
+"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-perl/recipes-perl/libunicode/libunicode-linebreak-perl_2017.004.bb b/meta-openembedded/meta-perl/recipes-perl/libunicode/libunicode-linebreak-perl_2017.004.bb
deleted file mode 100644
index 5ccb411..0000000
--- a/meta-openembedded/meta-perl/recipes-perl/libunicode/libunicode-linebreak-perl_2017.004.bb
+++ /dev/null
@@ -1,26 +0,0 @@
-SUMMARY = "Unicode::LineBreak - UAX #14 Unicode Line Breaking Algorithm."
-DESCRIPTION = "Unicode::LineBreak performs Line Breaking Algorithm described in Unicode \
-Standard Annex #14 [UAX #14]. East_Asian_Width informative property \
-defined by Annex #11 [UAX #11] will be concerned to determine breaking \
-positions."
-SECTION = "libs"
-
-HOMEPAGE = "http://search.cpan.org/~nezumi/Unicode-LineBreak-${PV}/"
-
-LICENSE = "Artistic-1.0 | GPLv1+"
-LIC_FILES_CHKSUM = "file://README;md5=77241abd74fec561b3f3de1b44c0241b"
-
-SRC_URI = "${CPAN_MIRROR}/authors/id/N/NE/NEZUMI/Unicode-LineBreak-${PV}.tar.gz"
-
-SRC_URI[md5sum] = "de7672227922260ac92d20bbad29660b"
-SRC_URI[sha256sum] = "655bc3c4cb60ad0770d97816716cfe322f24e602c70e595f5941dfa02c40cb76"
-
-S = "${WORKDIR}/Unicode-LineBreak-${PV}"
-
-DEPENDS = "libsombok3 libmime-charset-perl"
-
-RDEPENDS_${PN} = "libsombok3 libmime-charset-perl"
-
-inherit cpan
-
-BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-perl/recipes-perl/libunicode/libunicode-linebreak-perl_2019.001.bb b/meta-openembedded/meta-perl/recipes-perl/libunicode/libunicode-linebreak-perl_2019.001.bb
new file mode 100644
index 0000000..304b375
--- /dev/null
+++ b/meta-openembedded/meta-perl/recipes-perl/libunicode/libunicode-linebreak-perl_2019.001.bb
@@ -0,0 +1,55 @@
+SUMMARY = "Unicode::LineBreak - UAX #14 Unicode Line Breaking Algorithm."
+DESCRIPTION = "Unicode::LineBreak performs Line Breaking Algorithm described in Unicode \
+Standard Annex #14 [UAX #14]. East_Asian_Width informative property \
+defined by Annex #11 [UAX #11] will be concerned to determine breaking \
+positions."
+SECTION = "libs"
+
+HOMEPAGE = "https://metacpan.org/release/Unicode-LineBreak"
+
+LICENSE = "Artistic-1.0 | GPL-1.0+"
+LIC_FILES_CHKSUM = "file://README;beginline=5;endline=9;md5=b5e8b1099b86b86fbc315b50484231ab"
+
+SRC_URI = "${CPAN_MIRROR}/authors/id/N/NE/NEZUMI/Unicode-LineBreak-${PV}.tar.gz"
+
+SRC_URI[md5sum] = "003d6da7a13700e069afed9238c864b9"
+SRC_URI[sha256sum] = "486762e4cacddcc77b13989f979a029f84630b8175e7fef17989e157d4b6318a"
+
+S = "${WORKDIR}/Unicode-LineBreak-${PV}"
+
+DEPENDS = "libsombok3 libmime-charset-perl"
+
+inherit cpan ptest-perl
+
+do_install_ptest() {
+    cp -r ${B}/test-data ${D}${PTEST_PATH}
+    chown -R root:root ${D}${PTEST_PATH}
+}
+
+RDEPENDS_${PN} += " \
+    libmime-charset-perl \
+    libsombok3 \
+    perl-module-carp \
+    perl-module-constant \
+    perl-module-encode \
+    perl-module-exporter \
+    perl-module-overload \
+    perl-module-strict \
+    perl-module-vars \
+    perl-module-warnings \
+    perl-module-xsloader \
+"
+
+RDEPENDS_${PN}-ptest += " \
+    perl-module-findbin \
+    perl-module-lib \
+    perl-module-strict \
+    perl-module-test-more \
+"
+
+RPROVIDES_${PN} += " \
+    libtext-linefold-perl \
+    libunicode-gcstring-perl \
+"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb b/meta-openembedded/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb
index 82cda58..42f4163 100644
--- a/meta-openembedded/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb
+++ b/meta-openembedded/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb
@@ -33,14 +33,14 @@
     python-robotframework-seriallibrary python-pyalsaaudio python-pytest-helpers-namespace \
     python-alembic python-flask-pymongo python-slip-dbus python-pydbus python-automat python-rfc3987 \
     python-tzlocal python-backports-ssl python-subprocess32 python-asn1crypto python-pybind11 \
-    python-ptyprocess python-babel python-passlib python-oauthlib python-sdnotify \
+    python-ptyprocess python-babel python-passlib python-sdnotify \
     python-lazy-object-proxy python-cryptography-vectors python-crcmod python-pyusb python-vobject \
     python-webcolors python-pyparsing python-beautifulsoup4 python-cffi python-tornado-redis \
     python-itsdangerous python-pyasn1-modules python-netaddr python-vcversioner \
     python-sh python-greenlet python-paho-mqtt python-traceback2 python-gdata python-dbusmock \
     python-whoosh python-lockfile python-isort python-wtforms python-feedparser python-flask-restful \
     python-pysnmp python-flask-babel python-pytest-tempdir python-flask-nav python-pyzmq python-pyyaml \
-    python-protobuf python-pluggy python-jsonschema python-msgpack python-pandas \
+    python-protobuf python-pluggy python-jsonschema python-msgpack \
     python-periphery python-pint python-pycryptodome python-yappi python-pycrypto python-pretend \
     python-pyserial python-pyiface python-docutils python-grpcio-tools python-django-south \
     python-backports-functools-lru-cache python-py python-click python-flask-migrate \
@@ -57,7 +57,7 @@
     python-markupsafe python-pytest-runner python-grpcio python-mccabe python-pytz python-selectors34 \
     python-cython python-chardet python-editor python-flask-bootstrap python-html5lib \
     python-singledispatch python-redis python-flask-mail python-funcsigs python-snimpy python-pyasn1 \
-    python-decorator python-urllib3 python-feedformatter python-matplotlib python-iso8601 \
+    python-decorator python-urllib3 python-feedformatter python-iso8601 \
     python-numeric python-robotframework python-django python-simplejson python-wcwidth \
     python-configparser python-epydoc python-intervals python-speaklater \
     python-aws-iot-device-sdk-python python-constantly python-bitarray python-flask-wtf \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python-jsonref/python-jsonref.inc b/meta-openembedded/meta-python/recipes-devtools/python-jsonref/python-jsonref.inc
new file mode 100644
index 0000000..0e69e45
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python-jsonref/python-jsonref.inc
@@ -0,0 +1,11 @@
+SUMMARY = "jsonref is a library for automatic dereferencing of JSON Reference objects for Python"
+HOMEPAGE = "https://github.com/gazpachoking/jsonref"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=a34264f25338d41744dca1abfe4eb18f"
+
+SRC_URI[md5sum] = "42b518b9ccd6852d1d709749bc96cb70"
+SRC_URI[sha256sum] = "f3c45b121cf6257eafabdc3a8008763aed1cd7da06dbabc59a9e4d2a5e4e6697"
+
+inherit pypi setuptools
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python-jsonref/python-jsonref_0.2.bb b/meta-openembedded/meta-python/recipes-devtools/python-jsonref/python-jsonref_0.2.bb
new file mode 100644
index 0000000..d97893f
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python-jsonref/python-jsonref_0.2.bb
@@ -0,0 +1 @@
+require python-jsonref.inc
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-aiofiles.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-aiofiles.inc
new file mode 100644
index 0000000..3ecb21c
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-aiofiles.inc
@@ -0,0 +1,14 @@
+SUMMARY = "File support for asyncio"
+DESCRIPTION = "Asynchronous local file IO library for asyncio and Python"
+HOMEPAGE = "https://github.com/aio-libs/aiohttp"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=d2794c0df5b907fdace235a619d80314"
+
+SRC_URI[md5sum] = "cb33cf96c371fbd56fc27ab0bd81bd61"
+SRC_URI[sha256sum] = "021ea0ba314a86027c166ecc4b4c07f2d40fc0f4b3a950d1868a0f2571c2bbee"
+
+PYPI_PACKAGE = "aiofiles"
+inherit pypi
+RDEPENDS_${PN} = "\
+    ${PYTHON_PN}-asyncio \
+"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-aiohttp.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-aiohttp.inc
index 81f1809..e711ad7 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-aiohttp.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-aiohttp.inc
@@ -15,4 +15,7 @@
     ${PYTHON_PN}-idna-ssl \
     ${PYTHON_PN}-multidict \
     ${PYTHON_PN}-yarl \
+    ${PYTHON_PN}-typing \
+    ${PYTHON_PN}-misc \
+    ${PYTHON_PN}-attrs \
 "
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-alembic.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-alembic.inc
index 9d556e7..bf3485c 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-alembic.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-alembic.inc
@@ -1,9 +1,9 @@
 DESCRIPTION = "A database migration tool for SQLAlchemy"
 LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=a5befaf254582f10aadd62d83cd20322"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=28aaf14a6592d14dbfb2f4abd597aa27"
 
-SRC_URI[md5sum] = "9969c707786f41f1b95c09c54f8970e9"
-SRC_URI[sha256sum] = "828dcaa922155a2b7166c4f36ec45268944e4055c86499bd14319b4c8c0094b7"
+SRC_URI[md5sum] = "b8603f4c9bac851570bd1798e8f23982"
+SRC_URI[sha256sum] = "cdb7d98bd5cbf65acd38d70b1c05573c432e6473a82f955cdea541b5c153b0cc"
 
 PYPI_PACKAGE = "alembic"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-alembic_1.0.10.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-alembic_1.0.11.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-alembic_1.0.10.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-alembic_1.0.11.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-async-timeout.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-async-timeout.inc
index 7e4959e..e71a002 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-async-timeout.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-async-timeout.inc
@@ -13,3 +13,7 @@
 
 PYPI_PACKAGE = "async-timeout"
 inherit pypi
+
+RDEPENDS_${PN} = "\
+    ${PYTHON_PN}-asyncio \
+"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-attrs.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-attrs.inc
index 1f767ba..bd0f7ee 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-attrs.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-attrs.inc
@@ -12,3 +12,5 @@
     ${PYTHON_PN}-crypt \
     ${PYTHON_PN}-ctypes \
 "
+
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4.inc
index a33d8f4..a7fa081 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4.inc
@@ -3,8 +3,8 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://COPYING.txt;md5=f2d38d8a40bf73fd4b3d16ca2e5882d1"
 
-SRC_URI[md5sum] = "c71f53fcb2580c376ab7b010a9178983"
-SRC_URI[sha256sum] = "945065979fb8529dd2f37dbb58f00b661bdbcbebf954f93b32fdf5263ef35348"
+SRC_URI[md5sum] = "2b34208b26b5c49d4c84a4b9cf78656a"
+SRC_URI[sha256sum] = "25288c9e176f354bf277c0a10aa96c782a6a18a17122dba2e8cec4a97e03343b"
 
 inherit pypi
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4_4.7.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4_4.8.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4_4.7.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4_4.8.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-cffi.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-cffi.inc
index d86306b..818d238 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-cffi.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-cffi.inc
@@ -10,6 +10,7 @@
 RDEPENDS_${PN}_class-target = " \
     ${PYTHON_PN}-ctypes \
     ${PYTHON_PN}-io \
+    ${PYTHON_PN}-pycparser \
     ${PYTHON_PN}-shell \
 "
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-coloredlogs.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-coloredlogs.inc
new file mode 100644
index 0000000..f43bea1
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-coloredlogs.inc
@@ -0,0 +1,24 @@
+DESCRIPTION = "Colored terminal output for Python's logging module"
+HOMEPAGE = "https://coloredlogs.readthedocs.io"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=690da298a43805797a4fa7bbe180b3c6"
+
+SRC_URI[md5sum] = "0a186966a1955fff8cf9489373e691d9"
+SRC_URI[sha256sum] = "b869a2dda3fa88154b9dd850e27828d8755bfab5a838a1c97fbc850c6e377c36"
+
+inherit pypi
+
+do_compile_prepend() {
+    sed -ie "s/find_pth_directory(),/'',/g" setup.py
+}
+
+do_install_append() {
+    rm -rf ${D}${datadir}
+}
+
+RDEPENDS_${PN} += "\
+    ${PYTHON_PN}-humanfriendly \
+"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-coloredlogs_10.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-coloredlogs_10.0.bb
new file mode 100644
index 0000000..0fc1b25
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-coloredlogs_10.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools
+require python-coloredlogs.inc
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-configparser.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-configparser.inc
index 133dbba..7f4385e 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-configparser.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-configparser.inc
@@ -1,11 +1,11 @@
 SUMMARY = "This module provides the ConfigParser class which implements a basic configuration language which provides a structure similar to what's found in Microsoft Windows INI files."
 SECTION = "devel/python"
 HOMEPAGE = "https://docs.python.org/3/library/configparser.html"
-LICENSE = "MIT"
+LICENSE = "unknown"
 
-LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=8227180126797a0148f94f483f3e1489"
+LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=10;endline=10;md5=23f9ad5cad3d8cc0336e2a5d8a87e1fa"
 
-SRC_URI[md5sum] = "cfdd915a5b7a6c09917a64a573140538"
-SRC_URI[sha256sum] = "5308b47021bc2340965c371f0f058cc6971a04502638d4244225c49d80db273a"
+SRC_URI[md5sum] = "bc1558ed941cb1acb80ff650726d5af8"
+SRC_URI[sha256sum] = "bc37850f0cc42a1725a796ef7d92690651bf1af37d744cc63161dac62cabee17"
 
 inherit pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-configparser_3.5.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-configparser_3.8.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-configparser_3.5.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-configparser_3.8.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-cython.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-cython.inc
index 10cfef5..4261594 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-cython.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-cython.inc
@@ -7,8 +7,8 @@
 PYPI_PACKAGE = "Cython"
 BBCLASSEXTEND = "native nativesdk"
 
-SRC_URI[md5sum] = "08939b99869f59007387aea0d1a86341"
-SRC_URI[sha256sum] = "26229570d6787ff3caa932fe9d802960f51a89239b990d275ae845405ce43857"
+SRC_URI[md5sum] = "f8109a2a86cded40b3896ee7a63bc5a5"
+SRC_URI[sha256sum] = "c29d069a4a30f472482343c866f7486731ad638ef9af92bfe5fca9c7323d638e"
 
 inherit pypi
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-cython_0.29.10.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-cython_0.29.13.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-cython_0.29.10.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-cython_0.29.13.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-dateutil.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-dateutil.inc
index e230f15..8cc2373 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-dateutil.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-dateutil.inc
@@ -21,3 +21,5 @@
     ${PYTHON_PN}-six \
     ${PYTHON_PN}-stringold \
 "
+
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-engineio.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-engineio.inc
index c399d7d..f24da12 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-engineio.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-engineio.inc
@@ -9,5 +9,5 @@
 
 PYPI_PACKAGE = "python-engineio"
 
-SRC_URI[md5sum] = "011a61f1ee84755043cf862c8cc24f21"
-SRC_URI[sha256sum] = "b2756ce53076163eb24f59c1d1a903ac72f071ad4fb7b3ef6dab1b1b9ae9a44f"
+SRC_URI[md5sum] = "11a4f18f5b08a36d07d3c0ff85e7c047"
+SRC_URI[sha256sum] = "2a4c874aea686e79f8ea9efc30748110df581df6d577d18bb5eaa1a8f2199d12"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-engineio_3.5.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-engineio_3.9.3.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-engineio_3.5.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-engineio_3.9.3.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-grpcio.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-grpcio.inc
index fd341f5..7d3675c 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-grpcio.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-grpcio.inc
@@ -9,6 +9,7 @@
 SRC_URI_append_class-target = " file://0001-setup.py-Do-not-mix-C-and-C-compiler-options.patch \
                                 file://ppc-boringssl-support.patch \
                                 file://riscv64_support.patch \
+                                file://gettid.patch \
 "
 
 RDEPENDS_${PN} = "${PYTHON_PN}-protobuf \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-grpcio/gettid.patch b/meta-openembedded/meta-python/recipes-devtools/python/python-grpcio/gettid.patch
new file mode 100644
index 0000000..fb15cf7
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-grpcio/gettid.patch
@@ -0,0 +1,26 @@
+use glibc provided gettid API for glibc 2.30+
+
+glibc 2.30 introduced this function see [1]
+so it's best to detect it
+and provide fallback only if it's not present
+
+[1] https://sourceware.org/bugzilla/show_bug.cgi?id=6399
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/src/core/lib/gpr/log_linux.cc
++++ b/src/core/lib/gpr/log_linux.cc
+@@ -40,7 +40,13 @@
+ #include <time.h>
+ #include <unistd.h>
+ 
++#if  defined(__GLIBC__)
++#if !__GLIBC_PREREQ(2,29)
+ static long gettid(void) { return syscall(__NR_gettid); }
++#endif
++#else
++static long gettid(void) { return syscall(__NR_gettid); }
++#endif
+ 
+ void gpr_log(const char* file, int line, gpr_log_severity severity,
+              const char* format, ...) {
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-humanfriendly.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-humanfriendly.inc
new file mode 100644
index 0000000..94f7f8b
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-humanfriendly.inc
@@ -0,0 +1,25 @@
+DESCRIPTION = "Human friendly output for text interfaces using Python"
+HOMEPAGE = "https://humanfriendly.readthedocs.io/"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=690da298a43805797a4fa7bbe180b3c6"
+
+PYPI_PACKAGE = "humanfriendly"
+
+SRC_URI[md5sum] = "9573f9f37a5454d8205cfd1b9b8db9d2"
+SRC_URI[sha256sum] = "33ee8ceb63f1db61cce8b5c800c531e1a61023ac5488ccde2ba574a85be00a85"
+
+inherit pypi
+
+RDEPENDS_${PN}_class-target += " \
+    ${PYTHON_PN}-datetime \
+    ${PYTHON_PN}-fcntl \
+    ${PYTHON_PN}-io \
+    ${PYTHON_PN}-logging \
+    ${PYTHON_PN}-math \
+    ${PYTHON_PN}-numbers \
+    ${PYTHON_PN}-shell \
+    ${PYTHON_PN}-stringold \
+"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-humanfriendly_4.18.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-humanfriendly_4.18.bb
new file mode 100644
index 0000000..4e03a65
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-humanfriendly_4.18.bb
@@ -0,0 +1,2 @@
+inherit setuptools
+require python-humanfriendly.inc
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-jsonpatch.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-jsonpatch.inc
index 409c09a..8f64c2a 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-jsonpatch.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-jsonpatch.inc
@@ -5,8 +5,8 @@
 
 inherit pypi
 
-SRC_URI[md5sum] = "83c4c9faccb4a2ff8c1db80cbddc590d"
-SRC_URI[sha256sum] = "49f29cab70e9068db3b1dc6b656cbe2ee4edf7dfe9bf5a0055f17a4b6804a4b9"
+SRC_URI[md5sum] = "e86503f05fa192fa870d7004b8ce929a"
+SRC_URI[sha256sum] = "cbb72f8bf35260628aea6b508a107245f757d1ec839a19c34349985e2c05645a"
 
 RDEPENDS_${PN} += "${PYTHON_PN}-json ${PYTHON_PN}-jsonpointer ${PYTHON_PN}-netclient ${PYTHON_PN}-stringold"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-jsonpatch_1.23.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-jsonpatch_1.24.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-jsonpatch_1.23.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-jsonpatch_1.24.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-lxml.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-lxml.inc
index dd73a41..a97167f 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-lxml.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-lxml.inc
@@ -18,8 +18,8 @@
 
 DEPENDS += "libxml2 libxslt"
 
-SRC_URI[md5sum] = "aec44da0457dca385261e5ceb3fe36f9"
-SRC_URI[sha256sum] = "3ce1c49d4b4a7bc75fb12acb3a6247bb7a91fe420542e6d671ba9187d12a12c2"
+SRC_URI[md5sum] = "ce976a2d3c630d7fde86d3a4c3a1c606"
+SRC_URI[sha256sum] = "c81cb40bff373ab7a7446d6bbca0190bccc5be3448b47b51d729e37799bb5692"
 
 DISTUTILS_BUILD_ARGS += " \
                      --with-xslt-config='pkg-config libxslt' \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-lxml_4.3.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-lxml_4.4.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-lxml_4.3.4.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-lxml_4.4.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-mako.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-mako.inc
index dc27ada..abcbb88 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-mako.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-mako.inc
@@ -8,8 +8,8 @@
 
 inherit pypi
 
-SRC_URI[md5sum] = "4a7aef27217a8e6c1a29447c9b1b00ab"
-SRC_URI[sha256sum] = "0cfa65de3a835e87eeca6ac856b3013aade55f49e32515f65d999f91a2324162"
+SRC_URI[md5sum] = "6c3f2da0b74af529a4c4a537d0848bf2"
+SRC_URI[sha256sum] = "a36919599a9b7dc5d86a7a8988f23a9a3a3d083070023bab23d64f7f1d1e0a4b"
 
 RDEPENDS_${PN} = " \
     ${PYTHON_PN}-html \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-mako_1.0.12.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-mako_1.1.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-mako_1.0.12.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-mako_1.1.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-markupsafe.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-markupsafe.inc
index 437a60c..33d63b3 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-markupsafe.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-markupsafe.inc
@@ -1,10 +1,10 @@
 DESCRIPTION = "Implements a XML/HTML/XHTML Markup safe string for Python"
 HOMEPAGE = "http://github.com/mitsuhiko/markupsafe"
 LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=c6d1adcf45d69359f256c1cea3254127"
+LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=ffeffa59c90c9c4a033c7574f8f3fb75"
 
-SRC_URI[md5sum] = "2fcedc9284d50e577b5192e8e3578355"
-SRC_URI[sha256sum] = "a6be69091dac236ea9c6bc7d012beab42010fa914c459791d627dad4910eb665"
+SRC_URI[md5sum] = "43fd756864fe42063068e092e220c57b"
+SRC_URI[sha256sum] = "29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b"
 
 PYPI_PACKAGE = "MarkupSafe"
 inherit pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-markupsafe_1.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-markupsafe_1.1.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-markupsafe_1.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-markupsafe_1.1.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-matplotlib_2.0.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-matplotlib_2.0.2.bb
deleted file mode 100644
index 5b1c3f0..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-matplotlib_2.0.2.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-DESCRIPTION = "matplotlib is a python 2D plotting library which produces publication quality figures in a variety of hardcopy formats"
-SECTION = "devel/python"
-LICENSE = "PSF"
-LIC_FILES_CHKSUM = "file://LICENSE/LICENSE;md5=afec61498aa5f0c45936687da9a53d74"
-
-DEPENDS += "python-numpy freetype libpng python-dateutil python-pytz"
-RDEPENDS_${PN} = "python-core python-distutils python-numpy freetype libpng python-dateutil python-pytz"
-
-SRC_URI = "https://github.com/matplotlib/matplotlib/archive/v${PV}.tar.gz \
-           file://fix_setupext.patch \
-"
-SRC_URI[md5sum] = "89717c1ef3c6fdcd6fb1f3b597a4858c"
-SRC_URI[sha256sum] = "aebed23921562792b68b8ca355de5abc176af4424f1987e2fa95f65e5c5e7e89"
-S = "${WORKDIR}/matplotlib-${PV}"
-EXTRA_OECONF = "--disable-docs"
-
-inherit setuptools pkgconfig
-
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-oauthlib_2.0.6.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-oauthlib_2.0.6.bb
deleted file mode 100644
index 4329d21..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-oauthlib_2.0.6.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-inherit setuptools
-require python-oauthlib.inc
-
-RDEPENDS_${PN} += "${PYTHON_PN}-re ${PYTHON_PN}-lang"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pandas_0.23.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pandas_0.23.4.bb
deleted file mode 100644
index b3bfab9..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-pandas_0.23.4.bb
+++ /dev/null
@@ -1,7 +0,0 @@
-inherit setuptools
-require python-pandas.inc
-
-RDEPENDS_${PN} += " \
-    ${PYTHON_PN}-future \
-    ${PYTHON_PN}-json \
-"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-paste_3.0.8.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-paste_3.1.0.bb
similarity index 71%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-paste_3.0.8.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-paste_3.1.0.bb
index c8c932c..6873b7d 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-paste_3.0.8.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-paste_3.1.0.bb
@@ -5,8 +5,8 @@
 
 LIC_FILES_CHKSUM = "file://docs/license.txt;md5=1798f29d55080c60365e6283cb49779c"
 
-SRC_URI[md5sum] = "0119f4e82b930781e3bcb59c77f7a353"
-SRC_URI[sha256sum] = "c4f13993e6ab4a38602cef298d876552083e8215685bb45abda7113f0dd48117"
+SRC_URI[md5sum] = "904ec5634f3f901cadf529711930a98b"
+SRC_URI[sha256sum] = "18323f22df5ab6998fdf4c5aa5a9f41d33ff949a87ad7b2ca48e72fbf50fa3e4"
 
 PYPI_PACKAGE = "Paste"
 inherit pypi setuptools
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pbr_5.2.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pbr_5.4.2.bb
similarity index 62%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-pbr_5.2.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-pbr_5.4.2.bb
index ccc75de..1023b20 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-pbr_5.2.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-pbr_5.4.2.bb
@@ -2,8 +2,8 @@
 # The inc file is in oe-core
 require recipes-devtools/python/python-pbr.inc
 
-SRC_URI[md5sum] = "f72c2dd10602abad3695097d634e94bb"
-SRC_URI[sha256sum] = "93d2dc6ee0c9af4dbc70bc1251d0e545a9910ca8863774761f92716dece400b6"
+SRC_URI[md5sum] = "ea90e1118a0132da752d45e68d10b2b8"
+SRC_URI[sha256sum] = "9b321c204a88d8ab5082699469f52cc94c5da45c51f114113d01b3d993c24cdf"
 
 do_install_append() {
         if [ -f ${D}${bindir}/pbr ]; then
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pip_19.1.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pip_19.2.2.bb
similarity index 75%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-pip_19.1.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-pip_19.2.2.bb
index f782650..9a03727 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-pip_19.1.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-pip_19.2.2.bb
@@ -3,8 +3,8 @@
 LICENSE = "MIT & LGPL-2.1"
 LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=8ba06d529c955048e5ddd7c45459eb2e"
 
-SRC_URI[md5sum] = "4fb98a060f21c731d6743b90a714fc73"
-SRC_URI[sha256sum] = "44d3d7d3d30a1eb65c7e5ff1173cdf8f7467850605ac7cc3707b6064bddd0958"
+SRC_URI[md5sum] = "2ba0a3b76d39ccd90ca22bfa82fc635f"
+SRC_URI[sha256sum] = "e05103825871e210d50a44c7e448587b0ed99dd775d3ef586304c58f40224a53"
 
 inherit pypi setuptools
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-protobuf.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-protobuf.inc
index 2929700..b13f10e 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-protobuf.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-protobuf.inc
@@ -7,8 +7,8 @@
 
 inherit pypi
 
-SRC_URI[md5sum] = "b7095f3eb736459716d606677b5a29ee"
-SRC_URI[sha256sum] = "8c61cc8a76e9d381c665aecc5105fa0f1878cf7db8b5cd17202603bcb386d0fc"
+SRC_URI[md5sum] = "4ec7b2d49a5d1460591e520b54153c87"
+SRC_URI[sha256sum] = "b3452bbda12b1cbe2187d416779de07b2ab4c497d83a050e43c344778763721d"
 
 # http://errors.yoctoproject.org/Errors/Details/184715/
 # Can't find required file: ../src/google/protobuf/descriptor.proto
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-protobuf_3.8.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-protobuf_3.9.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-protobuf_3.8.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-protobuf_3.9.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1-modules.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1-modules.inc
index 87dbd1d..a9e4bbe 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1-modules.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1-modules.inc
@@ -4,10 +4,10 @@
  data structures (X.509, PKCS etc.)."
 HOMEPAGE = "https://github.com/etingof/pyasn1-modules"
 LICENSE = "BSD-2-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=815ac3f9ca693006349094b358ab3155"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=a14482d15c2249de3b6f0e8a47e021fd"
 
-SRC_URI[md5sum] = "65ce1ea1021679bffe96065baab232de"
-SRC_URI[sha256sum] = "a0cf3e1842e7c60fde97cb22d275eb6f9524f5c5250489e292529de841417547"
+SRC_URI[md5sum] = "c0bbe9820c971a97f156ff343ae67911"
+SRC_URI[sha256sum] = "43c17a83c155229839cc5c6b868e8d0c6041dba149789b6d6e28801c64821722"
 
 inherit pypi
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1-modules_0.2.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1-modules_0.2.6.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1-modules_0.2.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1-modules_0.2.6.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1.inc
index 3827fea..1086f30 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1.inc
@@ -3,8 +3,8 @@
 LICENSE = "BSD-2-Clause"
 LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=a14482d15c2249de3b6f0e8a47e021fd"
 
-SRC_URI[md5sum] = "f3c0cfbf882a20811be5ad5a41f74b82"
-SRC_URI[sha256sum] = "da2420fe13a9452d8ae97a0e478adde1dee153b11ba832a95b223a2ba01c10f7"
+SRC_URI[md5sum] = "67f1da0cf680761d29169e54e7d53159"
+SRC_URI[sha256sum] = "b773d5c9196ffbc3a1e13bdf909d446cad80a039aa3340bcad72f395b76ebc86"
 
 RDEPENDS_${PN}_class-target += " \
     ${PYTHON_PN}-codecs \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1_0.4.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1_0.4.6.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1_0.4.5.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1_0.4.6.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pycodestyle.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-pycodestyle.inc
index c0e46b7..96cdc5d 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-pycodestyle.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-pycodestyle.inc
@@ -4,8 +4,8 @@
 SECTION = "devel/python"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=01831ddbaf398471da3cc87f5037e822"
 
-SRC_URI[md5sum] = "85bbebd2c90d2f833c1db467d4d0e9a3"
-SRC_URI[sha256sum] = "cbfca99bd594a10f674d0cd97a3d802a1fdef635d4361e1a2658de47ed261e3a"
+SRC_URI[md5sum] = "40e7a76f364a18f531aaba11a4476e21"
+SRC_URI[sha256sum] = "e40a936c9a450ad81df37f549d676d127b1b66000a6c500caa2b085bc0ca976c"
 
 inherit pypi
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pycodestyle_2.4.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pycodestyle_2.5.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-pycodestyle_2.4.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-pycodestyle_2.5.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pyflakes_1.6.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pyflakes_1.6.0.bb
deleted file mode 100644
index a16a880..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-pyflakes_1.6.0.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-SUMMARY = "passive checker of Python programs"
-HOMEPAGE = "https://github.com/dreamhost/cliff"
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://README.rst;md5=029ce1beb023f2c4ca9f417e4984a865"
-
-SRC_URI[md5sum] = "b385b0e4cd40a522553e97cd2d83573e"
-SRC_URI[sha256sum] = "8d616a382f243dbf19b54743f280b80198be0bca3a5396f1d2e1fca6223e8805"
-
-inherit pypi setuptools
-
-RDEPENDS_${PN} += " \
-    ${PYTHON_PN}-prettytable \
-    ${PYTHON_PN}-cmd2 \
-    ${PYTHON_PN}-pyparsing"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pyflakes_2.1.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pyflakes_2.1.1.bb
new file mode 100644
index 0000000..1c03f39
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-pyflakes_2.1.1.bb
@@ -0,0 +1,16 @@
+SUMMARY = "passive checker of Python programs"
+HOMEPAGE = "https://github.com/dreamhost/cliff"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://README.rst;md5=5127315117a8561a1504343d59620647"
+
+SRC_URI[md5sum] = "a0f71a15724e553c46e03ba5ed56703c"
+SRC_URI[sha256sum] = "d976835886f8c5b31d47970ed689944a0262b5f3afa00a5a7b4dc81e5449f8a2"
+
+inherit pypi setuptools
+
+RDEPENDS_${PN} += " \
+    ${PYTHON_PN}-prettytable \
+    ${PYTHON_PN}-cmd2 \
+    ${PYTHON_PN}-pyparsing"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pyparsing.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-pyparsing.inc
index e0df4e9..556946e 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-pyparsing.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-pyparsing.inc
@@ -3,8 +3,8 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=657a566233888513e1f07ba13e2f47f1"
 
-SRC_URI[md5sum] = "e534c0ca755155823bf45fdd8d084922"
-SRC_URI[sha256sum] = "1873c03321fc118f4e9746baf201ff990ceb915f433f23b395f5580d1840cb2a"
+SRC_URI[md5sum] = "46d02cbe0461fe0571d51649e6006ef5"
+SRC_URI[sha256sum] = "6f98a7b9397e206d78cc01df10131398f1c8b8510a2f4d97d9abd82e1aacdd80"
 
 inherit pypi
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pyparsing_2.4.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pyparsing_2.4.2.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-pyparsing_2.4.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-pyparsing_2.4.2.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pytest-runner.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-pytest-runner.inc
index 3b057b0..113ab41 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-pytest-runner.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-pytest-runner.inc
@@ -2,8 +2,8 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=a33f38bbf47d48c70fe0d40e5f77498e"
 
-SRC_URI[md5sum] = "4b696b0f35767f0694f183d0a1855300"
-SRC_URI[sha256sum] = "d23f117be39919f00dd91bffeb4f15e031ec797501b717a245e377aee0f577be"
+SRC_URI[md5sum] = "a52d65bd3dbc88bed751cf934dc41db3"
+SRC_URI[sha256sum] = "25a013c8d84f0ca60bb01bd11913a3bcab420f601f0f236de4423074af656e7a"
 
 inherit pypi
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pytest-runner_4.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pytest-runner_5.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-pytest-runner_4.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-pytest-runner_5.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pytz.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-pytz.inc
index 928dbc0..ddeedc6 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-pytz.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-pytz.inc
@@ -5,8 +5,8 @@
 
 inherit pypi
 
-SRC_URI[md5sum] = "8b2860a161bfb0a6165798b1a2d8c40c"
-SRC_URI[sha256sum] = "d747dd3d23d77ef44c6a3526e274af6efeb0a6f1afd5a69ba4d5be4098c8e141"
+SRC_URI[md5sum] = "8c21963449c3a793aa61ef122e171516"
+SRC_URI[sha256sum] = "26c0b32e437e54a18161324a2fca3c4b9846b74a8dccddd843113109e1116b32"
 
 RDEPENDS_${PN}_class-target += "\
     ${PYTHON_PN}-datetime \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pytz_2019.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pytz_2019.2.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-pytz_2019.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-pytz_2019.2.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-six.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-six.inc
deleted file mode 100644
index 4712925..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-six.inc
+++ /dev/null
@@ -1,19 +0,0 @@
-SUMMARY = "Python 2 and 3 compatibility library"
-HOMEPAGE = "http://pypi.python.org/pypi/six/"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=83e0f622bd5ac7d575dbd83d094d69b5"
-
-SRC_URI[md5sum] = "9ae5d1feed8c0215f4ae4adcd9207fcb"
-SRC_URI[sha256sum] = "d16a0141ec1a18405cd4ce8b4613101da75da0e9a7aec5bdd4fa804d0e0eba73"
-
-do_compile_append() {
-    ${PYTHON} setup.py -q bdist_egg --dist-dir ./
-}
-do_install_append() {
-    install -m 0644 ${S}/*.egg ${D}/${PYTHON_SITEPACKAGES_DIR}/
-}
-
-RDEPENDS_${PN} += "${PYTHON_PN}-io"
-
-BBCLASSEXTEND = "native nativesdk"
-
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-six_1.12.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-six_1.12.0.bb
deleted file mode 100644
index 9075745..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-six_1.12.0.bb
+++ /dev/null
@@ -1,2 +0,0 @@
-inherit pypi setuptools
-require python-six.inc
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-socketio.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-socketio.inc
index a23e780..7ebc4ea 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-socketio.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-socketio.inc
@@ -9,9 +9,20 @@
 
 PYPI_PACKAGE = "python-socketio"
 
-SRC_URI[md5sum] = "0b57da61a9464d2e0dc9a8d0164d86d2"
-SRC_URI[sha256sum] = "64feb0817f1bf7e3e7fc05f6f65e28d76146d8061cb7de25b63502717f80e908"
+SRC_URI[md5sum] = "86cd47dddea1785ce7a6c72f55c93fe7"
+SRC_URI[sha256sum] = "506b2cf7a520b40ea0b3f25e1272eff8de134dce6f471c1f6bc0de8c90fe8c57"
+
+PACKAGECONFIG ?= "asyncio_client client"
+PACKAGECONFIG[asyncio_client] = ",,,python3-aiohttp python3-websockets"
+PACKAGECONFIG[client] = ",,,python3-requests python3-websocket-client"
 
 RDEPENDS_${PN} += "\
     ${PYTHON_PN}-engineio \
+    ${PYTHON_PN}-logging \
+    ${PYTHON_PN}-math \
+    ${PYTHON_PN}-pickle \
+    ${PYTHON_PN}-json \
+    ${PYTHON_PN}-threading \
+    ${PYTHON_PN}-six \
+    ${PYTHON_PN}-attrs \
     "
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-socketio_4.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-socketio_4.3.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-socketio_4.0.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-socketio_4.3.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-term.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-term.inc
new file mode 100644
index 0000000..8a2df0e
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-term.inc
@@ -0,0 +1,9 @@
+SUMMARY = "An enhanced version of the tty module"
+SECTION = "devel/python"
+LICENSE = "Python-2"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=d90e2d280a4836c607520383d1639be1"
+
+PYPI_PACKAGE_EXT = "zip"
+
+SRC_URI[md5sum] = "ab0c1bce381b1109fe4390c56aa06237"
+SRC_URI[sha256sum] = "3dcc8c212e04700784e5c1c5b601916ba0549ae6025b35b64fd62144899e7180"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-typing.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-typing.inc
index 82c2ab7..b392b75 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-typing.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-typing.inc
@@ -3,7 +3,7 @@
 LICENSE = "PSF"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=64fc2b30b67d0a8423c250e0386ed72f"
 
-SRC_URI[md5sum] = "64614206b4bdc0864fc0e0bccd69efc9"
-SRC_URI[sha256sum] = "4027c5f6127a6267a435201981ba156de91ad0d1d98e9ddc2aa173453453492d"
+SRC_URI[md5sum] = "8a3e4b822bac02b9b33c97e7d4f1521c"
+SRC_URI[sha256sum] = "53765ec4f83a2b720214727e319607879fec4acde22c4fbb54fa2604e79e44ce"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-typing_3.6.6.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-typing_3.7.4.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-typing_3.6.6.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-typing_3.7.4.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-aiofiles_0.4.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-aiofiles_0.4.0.bb
new file mode 100644
index 0000000..b4d188b
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-aiofiles_0.4.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-aiofiles.inc
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.0.10.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.0.11.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.0.10.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.0.11.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-beautifulsoup4_4.7.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-beautifulsoup4_4.8.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-beautifulsoup4_4.7.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-beautifulsoup4_4.8.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-coloredlogs_10.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-coloredlogs_10.0.bb
new file mode 100644
index 0000000..3872399
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-coloredlogs_10.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-coloredlogs.inc
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-configparser_3.5.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-configparser_3.8.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-configparser_3.5.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-configparser_3.8.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-cython_0.29.10.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-cython_0.29.13.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-cython_0.29.10.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-cython_0.29.13.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-engineio_3.5.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-engineio_3.9.3.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-engineio_3.5.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-engineio_3.9.3.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-humanfriendly_4.18.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-humanfriendly_4.18.bb
new file mode 100644
index 0000000..2ca5fe3
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-humanfriendly_4.18.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-humanfriendly.inc
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpatch_1.23.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpatch_1.24.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpatch_1.23.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-jsonpatch_1.24.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.3.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.4.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.3.4.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.4.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-markupsafe_1.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-markupsafe_1.1.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-markupsafe_1.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-markupsafe_1.1.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-matplotlib_3.1.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-matplotlib_3.1.1.bb
new file mode 100644
index 0000000..9b86ccc
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-matplotlib_3.1.1.bb
@@ -0,0 +1,17 @@
+SUMMARY = "matplotlib: plotting with Python"
+DESCRIPTION = "\
+Matplotlib is a Python 2D plotting library which produces \
+publication-quality figures in a variety of hardcopy formats \
+and interactive environments across platforms."
+HOMEPAGE = "https://github.com/matplotlib/matplotlib"
+LICENSE = "BSD-2-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE/LICENSE;md5=afec61498aa5f0c45936687da9a53d74"
+
+DEPENDS = "python3-numpy-native python3-numpy freetype libpng python3-dateutil python3-pytz"
+RDEPENDS_${PN} = "python3-numpy freetype libpng python3-dateutil python3-pytz"
+
+SRC_URI[md5sum] = "f894af5564a588e880644123237251b7"
+SRC_URI[sha256sum] = "1febd22afe1489b13c6749ea059d392c03261b2950d1d45c17e3aed812080c93"
+
+PYPI_PACKAGE = "matplotlib"
+inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-multidict_3.3.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-multidict_3.3.2.bb
deleted file mode 100644
index e65d7d4..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-multidict_3.3.2.bb
+++ /dev/null
@@ -1,13 +0,0 @@
-SUMMARY = "Multidicts are useful for working with HTTP headers, URL query args etc."
-HOMEPAGE = "https://github.com/aio-libs/multidict/"
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=e74c98abe0de8f798ca609137f9cef4a"
-
-inherit pypi setuptools3
-
-SRC_URI[md5sum] = "06ca91d993de2d04c7ee6df0cbb44ea2"
-SRC_URI[sha256sum] = "f82e61c7408ed0dce1862100db55595481911f159d6ddec0b375d35b6449509b"
-
-# Work-around for broken make clean. Note this is fixed in v4.0.0.
-# https://github.com/aio-libs/multidict/issues/194
-CLEANBROKEN = "1"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-multidict_4.5.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-multidict_4.5.2.bb
new file mode 100644
index 0000000..57167f2
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-multidict_4.5.2.bb
@@ -0,0 +1,9 @@
+SUMMARY = "Multidicts are useful for working with HTTP headers, URL query args etc."
+HOMEPAGE = "https://github.com/aio-libs/multidict/"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=e74c98abe0de8f798ca609137f9cef4a"
+
+inherit pypi setuptools3
+
+SRC_URI[md5sum] = "5e9d8f7e1ada9a22932aed6a72f88e43"
+SRC_URI[sha256sum] = "024b8129695a952ebd93373e45b5d341dbb87c17ce49637b34000093f243dd4f"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow/0001-explicitly-set-compile-options.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow/0001-explicitly-set-compile-options.patch
index de89ba0..d437269 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow/0001-explicitly-set-compile-options.patch
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow/0001-explicitly-set-compile-options.patch
@@ -1,4 +1,4 @@
-From 52879439f2976662140b76951f43f16e1d5ef08e Mon Sep 17 00:00:00 2001
+From 9f3073bf6a7c7c51bb49d25f65c8f75cc704a5ee Mon Sep 17 00:00:00 2001
 From: Hongxu Jia <hongxu.jia@windriver.com>
 Date: Mon, 18 Mar 2019 23:23:55 -0400
 Subject: [PATCH] explicitly set compile options
@@ -15,12 +15,12 @@
  1 file changed, 12 insertions(+)
 
 diff --git a/setup.cfg b/setup.cfg
-index 95900ff..27da313 100644
+index 3ab2e127..e92615f3 100644
 --- a/setup.cfg
 +++ b/setup.cfg
-@@ -9,3 +9,15 @@ addopts = -vx Tests
- 
+@@ -4,3 +4,15 @@ test=pytest
  [flake8]
+ extend-ignore = E203, W503
  max-line-length = 88
 +
 +[build_ext]
@@ -35,5 +35,5 @@
 +disable-webpmux = 1
 +disable-imagequant = 1
 -- 
-2.8.1
+2.20.1
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow/0001-support-cross-compiling.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow/0001-support-cross-compiling.patch
index e862934..6de19ad 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow/0001-support-cross-compiling.patch
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow/0001-support-cross-compiling.patch
@@ -1,4 +1,4 @@
-From a78411402c824668283beb94db4bf7e206a4cf60 Mon Sep 17 00:00:00 2001
+From ae7c8d0336381dd4c10e809e9c8926f9deeafeb8 Mon Sep 17 00:00:00 2001
 From: Hongxu Jia <hongxu.jia@windriver.com>
 Date: Thu, 14 Mar 2019 03:48:10 -0400
 Subject: [PATCH] support cross compiling
@@ -11,29 +11,29 @@
  1 file changed, 3 insertions(+), 10 deletions(-)
 
 diff --git a/setup.py b/setup.py
-index 79f912b..37e5827 100755
+index 5ceae344..07863340 100755
 --- a/setup.py
 +++ b/setup.py
-@@ -50,7 +50,7 @@ _LIB_IMAGING = (
-     "ZipEncode", "TiffDecode", "Jpeg2KDecode", "Jpeg2KEncode", "BoxBlur",
-     "QuantPngQuant", "codec_fd")
+@@ -105,7 +105,7 @@ _LIB_IMAGING = (
+     "codec_fd",
+ )
  
 -DEBUG = False
 +DEBUG = True
  
  
  class DependencyException(Exception):
-@@ -345,21 +345,16 @@ class pil_build_ext(build_ext):
+@@ -396,21 +396,16 @@ class pil_build_ext(build_ext):
                      _add_directory(library_dirs, match.group(1))
  
          # include, rpath, if set as environment variables:
--        for k in ('C_INCLUDE_PATH', 'CPATH', 'INCLUDE'):
+-        for k in ("C_INCLUDE_PATH", "CPATH", "INCLUDE"):
 +        for k in ('C_INCLUDE_PATH', 'CPATH', 'INCLUDE', 'STAGING_INCDIR'):
              if k in os.environ:
                  for d in os.environ[k].split(os.path.pathsep):
                      _add_directory(include_dirs, d)
  
--        for k in ('LD_RUN_PATH', 'LIBRARY_PATH', 'LIB'):
+-        for k in ("LD_RUN_PATH", "LIBRARY_PATH", "LIB"):
 +        for k in ('LD_RUN_PATH', 'LIBRARY_PATH', 'LIB', 'STAGING_LIBDIR'):
              if k in os.environ:
                  for d in os.environ[k].split(os.path.pathsep):
@@ -47,15 +47,15 @@
          #
          # add platform directories
  
-@@ -413,8 +408,6 @@ class pil_build_ext(build_ext):
-         elif sys.platform.startswith("linux") or \
-                 sys.platform.startswith("gnu") or \
-                 sys.platform.startswith("freebsd"):
+@@ -469,8 +464,6 @@ class pil_build_ext(build_ext):
+             or sys.platform.startswith("gnu")
+             or sys.platform.startswith("freebsd")
+         ):
 -            for dirname in _find_library_dirs_ldconfig():
 -                _add_directory(library_dirs, dirname)
-             if sys.platform.startswith("linux") and \
-                     os.environ.get('ANDROID_ROOT', None):
-                 # termux support for android.
+             if sys.platform.startswith("linux") and os.environ.get(
+                 "ANDROID_ROOT", None
+             ):
 -- 
-2.8.1
+2.20.1
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_5.4.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_6.1.bb
similarity index 62%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_5.4.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_6.1.bb
index 6fce162..1d91066 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_5.4.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_6.1.bb
@@ -3,13 +3,13 @@
 Contributors."
 HOMEPAGE = "https://pillow.readthedocs.io"
 LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=c6379001ecb47e2a0420c40177fc1125"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=55c0f320370091249c1755c0d2b48e89"
 
-SRC_URI = "git://github.com/python-pillow/Pillow.git;branch=5.4.x \
+SRC_URI = "git://github.com/python-pillow/Pillow.git;branch=6.1.x \
            file://0001-support-cross-compiling.patch \
            file://0001-explicitly-set-compile-options.patch \
 "
-SRCREV ?= "f38f01bbe3a0a9f49ce592c86ff20c01c9655133"
+SRCREV ?= "aaca672173413883fbcefd659f04d74fe44fb5d5"
 
 
 inherit setuptools3
@@ -23,8 +23,16 @@
     openjpeg \
 "
 
+RDEPENDS_${PN} += " \
+    ${PYTHON_PN}-misc \
+    ${PYTHON_PN}-logging \
+    ${PYTHON_PN}-numbers \
+"
+
 CVE_PRODUCT = "pillow"
 
 S = "${WORKDIR}/git"
 
+RPROVIDES_${PN} += "python3-imaging"
+
 BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-protobuf_3.8.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-protobuf_3.9.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-protobuf_3.8.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-protobuf_3.9.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyasn1-modules_0.2.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyasn1-modules_0.2.6.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pyasn1-modules_0.2.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pyasn1-modules_0.2.6.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyasn1_0.4.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyasn1_0.4.6.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pyasn1_0.4.5.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pyasn1_0.4.6.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pycodestyle_2.4.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pycodestyle_2.5.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pycodestyle_2.4.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pycodestyle_2.5.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyparsing_2.4.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyparsing_2.4.2.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pyparsing_2.4.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pyparsing_2.4.2.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-runner_4.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-runner_5.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-runner_4.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pytest-runner_5.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pytz_2019.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pytz_2019.2.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pytz_2019.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pytz_2019.2.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_4.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_4.3.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_4.0.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_4.3.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-term_2.3.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-term_2.3.bb
new file mode 100644
index 0000000..372cffe
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-term_2.3.bb
@@ -0,0 +1,2 @@
+require python-term.inc
+inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-twofish/0001-Fix-missing-return-statements-in-module-stubs.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-twofish/0001-Fix-missing-return-statements-in-module-stubs.patch
new file mode 100644
index 0000000..c25b245
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-twofish/0001-Fix-missing-return-statements-in-module-stubs.patch
@@ -0,0 +1,38 @@
+From 5704610f4b3aed5210e9c5b7c05ff8b5b2364c9c Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Mon, 12 Aug 2019 08:18:21 +0000
+Subject: [PATCH] Fix missing return statements in module stubs
+
+* fixes build with -Werror=return-type
+  twofish.c: In function 'init_twofish':
+  twofish.c:45:1: error: control reaches end of non-void function [-Werror=return-type]
+     45 | PyMODINIT_FUNC init_twofish(void) { }
+        | ^~~~~~~~~~~~~~
+  twofish.c: In function 'PyInit__twofish':
+  twofish.c:46:1: error: control reaches end of non-void function [-Werror=return-type]
+     46 | PyMODINIT_FUNC PyInit__twofish(void) { }
+        | ^~~~~~~~~~~~~~
+  cc1: some warnings being treated as errors
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+
+Upstream-Status: Submitted [https://github.com/keybase/python-twofish/pull/6]
+---
+ twofish.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/twofish.c b/twofish.c
+index e324c34..d4487d8 100644
+--- a/twofish.c
++++ b/twofish.c
+@@ -42,5 +42,5 @@ DL_EXPORT(void) exp_Twofish_decrypt(Twofish_key * xkey, uint8_t c[16], uint8_t p
+ We need a stub init_twofish function so the module will link as a proper module.
+ Do not import _twofish from python; it will not work since _twofish is not a *real* module
+ */
+-PyMODINIT_FUNC init_twofish(void) { }
+-PyMODINIT_FUNC PyInit__twofish(void) { }
++PyMODINIT_FUNC init_twofish(void) { return NULL; }
++PyMODINIT_FUNC PyInit__twofish(void) { return NULL; }
+-- 
+2.17.1
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-twofish_0.3.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-twofish_0.3.0.bb
index e593f6f..7b8eb2e 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-twofish_0.3.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-twofish_0.3.0.bb
@@ -1,2 +1,4 @@
 require python-twofish.inc
 inherit setuptools3
+
+SRC_URI += "file://0001-Fix-missing-return-statements-in-module-stubs.patch"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-websockets_4.0.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-websockets_4.0.1.bb
deleted file mode 100644
index 414129c..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-websockets_4.0.1.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-SUMMARY = "An implementation of the WebSocket Protocol (RFC 6455)"
-HOMEPAGE = "https://github.com/aaugustin/websockets"
-
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=5070256738c06d2e59adbec1f4057dac"
-
-inherit pypi setuptools3
-
-SRC_URI[md5sum] = "9e8c6b3c70def4146d75fbb0f52bdfc7"
-SRC_URI[sha256sum] = "da4d4fbe059b0453e726d6d993760065d69b823a27efc3040402a6fcfe6a1ed9"
-
-BBCLASSEXTEND = "native nativesdk"
-
-RDEPENDS_${PN} = "\
-    ${PYTHON_PN}-asyncio \
-"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-websockets_8.0.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-websockets_8.0.2.bb
new file mode 100644
index 0000000..6da73ce
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-websockets_8.0.2.bb
@@ -0,0 +1,16 @@
+SUMMARY = "An implementation of the WebSocket Protocol (RFC 6455)"
+HOMEPAGE = "https://github.com/aaugustin/websockets"
+
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=ad5c6d36b3d0098b2f33a5ab69a9e750"
+
+inherit pypi setuptools3
+
+SRC_URI[md5sum] = "a37f0e22c3aa5f1cf12a6a3ae22b36ca"
+SRC_URI[sha256sum] = "882a7266fa867a2ebb2c0baaa0f9159cabf131cf18c1b4270d79ad42f9208dc5"
+
+BBCLASSEXTEND = "native nativesdk"
+
+RDEPENDS_${PN} = "\
+    ${PYTHON_PN}-asyncio \
+"
diff --git a/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet_3.1.2.bb b/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet_3.1.4.bb
similarity index 96%
rename from meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet_3.1.2.bb
rename to meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet_3.1.4.bb
index 45565ba..817ef9b 100644
--- a/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet_3.1.2.bb
+++ b/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet_3.1.4.bb
@@ -8,7 +8,7 @@
 S = "${WORKDIR}/git"
 B = "${S}"
 
-SRCREV = "878f794a38120a652cab0026b77175b099bf1f9d"
+SRCREV = "9b5ad2d5b5df159963e1c6c24523e1dfe1f71435"
 SRC_URI = "git://github.com/rhinstaller/blivet;branch=3.1-release \
            file://0001-comment-out-selinux.patch \
            file://0002-run_program-support-timeout.patch \
diff --git a/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivetgui/0001-Fix-return-type-of-BlivetUtils.get_disks-1658893.patch b/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivetgui/0001-Fix-return-type-of-BlivetUtils.get_disks-1658893.patch
new file mode 100644
index 0000000..cf80566
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivetgui/0001-Fix-return-type-of-BlivetUtils.get_disks-1658893.patch
@@ -0,0 +1,32 @@
+From 4d0f9f961704bc1dd83fdf6808fb6ab91dc6a768 Mon Sep 17 00:00:00 2001
+From: Vojtech Trefny <vtrefny@redhat.com>
+Date: Thu, 13 Dec 2018 13:39:03 +0100
+Subject: [PATCH] Fix return type of BlivetUtils.get_disks (#1658893)
+
+This must be a list, not a generator, because we are iterating
+over it multiple times in some cases.
+
+Upstream-Status: Backport[git://github.com/rhinstaller/blivet-gui]
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+
+---
+ blivetgui/blivet_utils.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/blivetgui/blivet_utils.py b/blivetgui/blivet_utils.py
+index e2bd802..ddb04fc 100644
+--- a/blivetgui/blivet_utils.py
++++ b/blivetgui/blivet_utils.py
+@@ -204,7 +204,7 @@ class BlivetUtils(object):
+ 
+         """
+ 
+-        return (device for device in self.storage.disks if device.type != "mdarray")
++        return [device for device in self.storage.disks if device.type != "mdarray"]
+ 
+     def get_group_devices(self):
+         """ Return list of LVM2 Volume Group devices
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivetgui_2.1.10.bb b/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivetgui_2.1.10.bb
index 2ea8103..b7e2493 100644
--- a/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivetgui_2.1.10.bb
+++ b/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivetgui_2.1.10.bb
@@ -10,6 +10,7 @@
 
 SRCREV = "67ec0b7a0e065ba24ab87963409bfb21b2aac6dd"
 SRC_URI = "git://github.com/rhinstaller/blivet-gui;branch=master \
+           file://0001-Fix-return-type-of-BlivetUtils.get_disks-1658893.patch \
 "
 
 inherit distro_features_check
diff --git a/meta-openembedded/meta-python/recipes-extended/python-pykickstart/python3-pykickstart_3.18.bb b/meta-openembedded/meta-python/recipes-extended/python-pykickstart/python3-pykickstart_3.20.bb
similarity index 94%
rename from meta-openembedded/meta-python/recipes-extended/python-pykickstart/python3-pykickstart_3.18.bb
rename to meta-openembedded/meta-python/recipes-extended/python-pykickstart/python3-pykickstart_3.20.bb
index 1a03884..ed10ce9 100644
--- a/meta-openembedded/meta-python/recipes-extended/python-pykickstart/python3-pykickstart_3.18.bb
+++ b/meta-openembedded/meta-python/recipes-extended/python-pykickstart/python3-pykickstart_3.20.bb
@@ -18,7 +18,7 @@
            file://0003-comment-out-sections-shutdown-and-environment-in-gen.patch \
            file://0004-load.py-retry-to-invoke-request-with-timeout.patch \
            "
-SRCREV = "ad942f2644337c4672c7a22bd24a5b7268c1f5e9"
+SRCREV = "487edfded19d5969db0673b200ee4272b7dc6697"
 
 UPSTREAM_CHECK_GITTAGREGEX = "r(?P<pver>\d+(\.\d+)+(-\d+)*)"
 
diff --git a/meta-openembedded/meta-python/recipes-extended/python-pyparted/python-pyparted.inc b/meta-openembedded/meta-python/recipes-extended/python-pyparted/python-pyparted.inc
index a0ec028..f769f95 100644
--- a/meta-openembedded/meta-python/recipes-extended/python-pyparted/python-pyparted.inc
+++ b/meta-openembedded/meta-python/recipes-extended/python-pyparted/python-pyparted.inc
@@ -11,7 +11,7 @@
 DEPENDS += "parted"
 
 # upstream only publishes releases in github archives which are discouraged
-SRCREV = "1fdb15120f35f5da1dc7ec116522f0c796a8376a"
+SRCREV = "2396ba7df56de277b4999bdd5f7d1a1706a6388a"
 SRC_URI = "git://github.com/rhinstaller/pyparted.git;protocol=https"
 
 S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-python/recipes-extended/python-pyparted/python-pyparted_3.11.1.bb b/meta-openembedded/meta-python/recipes-extended/python-pyparted/python-pyparted_3.11.2.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-extended/python-pyparted/python-pyparted_3.11.1.bb
rename to meta-openembedded/meta-python/recipes-extended/python-pyparted/python-pyparted_3.11.2.bb
diff --git a/meta-openembedded/meta-python/recipes-extended/python-pyparted/python3-pyparted_3.11.1.bb b/meta-openembedded/meta-python/recipes-extended/python-pyparted/python3-pyparted_3.11.2.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-extended/python-pyparted/python3-pyparted_3.11.1.bb
rename to meta-openembedded/meta-python/recipes-extended/python-pyparted/python3-pyparted_3.11.2.bb
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd_2.27.1.bb b/meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd_2.27.1.bb
index 8632b97..560dd9b 100644
--- a/meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd_2.27.1.bb
+++ b/meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd_2.27.1.bb
@@ -6,18 +6,16 @@
 
 DEPENDS += "base-passwd virtual/crypt"
 
-SRC_URI = "https://github.com/blueness/${BPN}/archive/v${PV}.tar.gz;downloadfilename=${BP}.tar.gz \
+SRCREV = "2845bf5bff2b820d2336c8c8061cbfc5f271e720"
+SRC_URI = "git://github.com/blueness/${BPN} \
            file://thttpd.service \
            file://thttpd.conf \
            file://init"
 
-SRC_URI[md5sum] = "3cda1b6c8c8542b1510eadb8e540d8b6"
-SRC_URI[sha256sum] = "a1ee2806432eaf5b5dd267a0523701f9f1fa00fefd499d5bec42165a41e05846"
-
 UPSTREAM_CHECK_URI = "https://github.com/blueness/sthttpd/releases/"
 UPSTREAM_CHECK_REGEX = "v(?P<pver>\d+(\.\d+)+).tar.gz"
 
-S = "${WORKDIR}/sthttpd-${PV}"
+S = "${WORKDIR}/git"
 
 inherit autotools update-rc.d systemd update-alternatives
 
diff --git a/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata/0001-Correct-Timeout-issue.patch b/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata/0001-Correct-Timeout-issue.patch
deleted file mode 100644
index abea0d6..0000000
--- a/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata/0001-Correct-Timeout-issue.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-Index: git/plugins.d/charts.d.plugin
-===================================================================
---- git.orig/plugins.d/charts.d.plugin
-+++ git/plugins.d/charts.d.plugin
-@@ -246,16 +246,6 @@ else
-     info "configuration file '$myconfig' not found. Using defaults."
- fi
- 
--# we check for the timeout command, after we load our
--# configuration, so that the user may overwrite the
--# timeout command we use, providing a function that
--# can emulate the timeout command we need:
--# > timeout SECONDS command ...
--if [ $check_for_timeout -eq 1 ]
--    then
--    require_cmd timeout || exit 1
--fi
--
- # -----------------------------------------------------------------------------
- # internal checks
- 
diff --git a/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata/0001-Correct-timeout-issue.patch b/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata/0001-Correct-timeout-issue.patch
new file mode 100644
index 0000000..c4be827
--- /dev/null
+++ b/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata/0001-Correct-timeout-issue.patch
@@ -0,0 +1,42 @@
+From ccaf4225239c3092a51cf44f2ab0a2141b8a5fa6 Mon Sep 17 00:00:00 2001
+From: Luca Palano <github@lpzone.it>
+Date: Wed, 5 Dec 2018 10:36:52 +0100
+Subject: [PATCH 1/2] Correct of timeout issue
+
+The timeout issue has been disabled
+
+Signed-off-by: Luca Palano <github@lpzone.it>
+---
+ collectors/charts.d.plugin/charts.d.plugin.in | 9 +++++----
+ 1 file changed, 5 insertions(+), 4 deletions(-)
+
+diff --git a/collectors/charts.d.plugin/charts.d.plugin.in b/collectors/charts.d.plugin/charts.d.plugin.in
+index 0df6c30c..63ea4506 100755
+--- a/collectors/charts.d.plugin/charts.d.plugin.in
++++ b/collectors/charts.d.plugin/charts.d.plugin.in
+@@ -156,7 +156,7 @@ restart_timeout=$((3600 * 4))
+ dryrunner=0
+ 
+ # check for timeout command
+-check_for_timeout=1
++check_for_timeout=0
+ 
+ # the default enable/disable value for all charts
+ enable_all_charts="yes"
+@@ -251,9 +251,10 @@ time_divisor=$((time_divisor))
+ # timeout command we use, providing a function that
+ # can emulate the timeout command we need:
+ # > timeout SECONDS command ...
+-if [ $check_for_timeout -eq 1 ]; then
+-	require_cmd timeout || exit 1
+-fi
++#if [ $check_for_timeout -eq 1 ]
++#    then
++#    require_cmd timeout || exit 1
++#fi
+ 
+ # -----------------------------------------------------------------------------
+ # internal checks
+-- 
+2.20.1 (Apple Git-117)
+
diff --git a/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata/0001-makefile-Do-not-build-contrib-dir.patch b/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata/0001-makefile-Do-not-build-contrib-dir.patch
deleted file mode 100644
index 6a0d75e..0000000
--- a/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata/0001-makefile-Do-not-build-contrib-dir.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 87f868918a9ae1dcf93e01f3e177d185c19a149a Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 13 Jul 2017 14:32:09 -0700
-Subject: [PATCH] makefile: Do not build contrib dir
-
-It contains debian build iteams anyway
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- Makefile.am | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index 2ea9e40..acb1bd8 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -56,7 +56,6 @@ SUBDIRS = \
- 	src \
- 	system \
- 	web \
--	contrib \
- 	tests \
- 	$(NULL)
- 
--- 
-2.13.2
-
diff --git a/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata/0002-Makefiles-does-not-build-contrib-dir.patch b/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata/0002-Makefiles-does-not-build-contrib-dir.patch
new file mode 100644
index 0000000..f0887fe
--- /dev/null
+++ b/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata/0002-Makefiles-does-not-build-contrib-dir.patch
@@ -0,0 +1,24 @@
+From 95e1da77de80e38068bb2739faeaad49105700cf Mon Sep 17 00:00:00 2001
+From: Luca Palano <github@lpzone.it>
+Date: Mon, 15 Jul 2019 10:16:32 +0200
+Subject: [PATCH 2/2] Makefiles does not build contrib
+
+Signed-off-by: Luca Palano <github@lpzone.it>
+---
+ Makefile.am | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index bc928bba..ba9edc6b 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -54,7 +54,6 @@ dist_noinst_DATA= \
+ 	CHANGELOG.md \
+ 	cppcheck.sh \
+ 	configs.signatures \
+-	contrib \
+ 	netdata.cppcheck \
+ 	netdata.spec \
+ 	package.json \
+--
+2.20.1 (Apple Git-117)
diff --git a/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata_git.bb b/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata_git.bb
index 390fa4b..811c2c5 100644
--- a/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata_git.bb
+++ b/meta-openembedded/meta-webserver/recipes-webadmin/netdata/netdata_git.bb
@@ -1,19 +1,17 @@
 HOMEPAGE = "https://github.com/firehol/netdata/"
 SUMMARY = "Real-time performance monitoring"
 LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://LICENSE.md;md5=95b49e9ea979a337578f13c2a3ab9535 \
-                    file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
-                   "
+LIC_FILES_CHKSUM = "file://LICENSE;md5=fc9b848046ef54b5eaee6071947abd24"
 
 SRC_URI = "git://github.com/firehol/netdata.git;protocol=https \
-           file://0001-makefile-Do-not-build-contrib-dir.patch \
+           file://0002-Makefiles-does-not-build-contrib-dir.patch \
 "
-SRCREV = "89ed309252981ddd50f697fde4fe93019cb3e652"
-PV = "1.8.0+git${SRCPV}"
+SRCREV = "2c4146832061635273d153a5174c85fb1d967d57"
+PV = "1.16.0+git${SRCPV}"
 
 # patch to disable timeout because timeout are not available with actual version
 # of core-utils
-SRC_URI += "file://0001-Correct-Timeout-issue.patch"
+SRC_URI += "file://0001-Correct-timeout-issue.patch"
 
 # default netdata.conf for netdata configuration
 SRC_URI += "file://netdata.conf"
@@ -25,9 +23,7 @@
 
 DEPENDS += "zlib util-linux"
 
-inherit pkgconfig autotools useradd systemd
-
-LDFLAGS += "-pthread"
+inherit pkgconfig autotools-brokensep useradd systemd
 
 #systemd
 SYSTEMD_PACKAGES = "${PN}"
diff --git a/meta-openembedded/meta-xfce/README b/meta-openembedded/meta-xfce/README
index 84b0198..70ad47a 100644
--- a/meta-openembedded/meta-xfce/README
+++ b/meta-openembedded/meta-xfce/README
@@ -19,3 +19,4 @@
 When sending single patches, please using something like:
 'git send-email -M -1 --to openembedded-devel@lists.openembedded.org --subject-prefix=meta-xfce][PATCH'
 
+Layer maintainer: Kai Kang <kai.kang@windriver.com>
diff --git a/meta-openembedded/meta-xfce/recipes-apps/orage/orage/0001-drop-setting-is_utc-member-of-icaltimetype.patch b/meta-openembedded/meta-xfce/recipes-apps/orage/orage/0001-drop-setting-is_utc-member-of-icaltimetype.patch
new file mode 100644
index 0000000..517de5f
--- /dev/null
+++ b/meta-openembedded/meta-xfce/recipes-apps/orage/orage/0001-drop-setting-is_utc-member-of-icaltimetype.patch
@@ -0,0 +1,77 @@
+From 5bdf11fe3638d279edcad911906f801751e024da Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 23 Jul 2019 14:22:08 -0700
+Subject: [PATCH] drop setting is_utc member of icaltimetype
+
+This seems to be gone in libical3
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/ical-code.c | 7 -------
+ 1 file changed, 7 deletions(-)
+
+diff --git a/src/ical-code.c b/src/ical-code.c
+index d583140..d8e5543 100644
+--- a/src/ical-code.c
++++ b/src/ical-code.c
+@@ -129,7 +129,6 @@ static struct icaltimetype ical_get_current_local_time()
+         &&   (strcmp(g_par.local_timezone, "floating") != 0))
+         ctime = icaltime_current_time_with_zone(local_icaltimezone);
+     else { / * use floating time * /
+-        ctime.is_utc      = 0;
+         ctime.is_date     = 0;
+         ctime.is_daylight = 0;
+         ctime.zone        = NULL;
+@@ -2579,7 +2578,6 @@ static struct icaltimetype count_first_alarm_time(xfical_period per
+  * when counting alarm time. */
+         if (rel == ICAL_RELATED_START) {
+             per.stime.is_date       = 0;
+-            per.stime.is_utc        = 1;
+             per.stime.is_daylight   = 0;
+             per.stime.zone          = utc_icaltimezone;
+             per.stime.hour          = 0;
+@@ -2588,7 +2586,6 @@ static struct icaltimetype count_first_alarm_time(xfical_period per
+         }
+         else {
+             per.etime.is_date       = 0;
+-            per.etime.is_utc        = 1;
+             per.etime.is_daylight   = 0;
+             per.etime.zone          = utc_icaltimezone;
+             per.etime.hour          = 0;
+@@ -2613,7 +2610,6 @@ static struct icaltimetype count_next_alarm_time(struct icaltimetype start_time
+ /* HACK: convert to UTC time so that we can use time arithmetic
+  * when counting alarm time. */
+         start_time.is_date       = 0;
+-        start_time.is_utc        = 1;
+         start_time.is_daylight   = 0;
+         start_time.zone          = utc_icaltimezone;
+         start_time.hour          = 0;
+@@ -2768,7 +2764,6 @@ static alarm_struct *process_alarm_trigger(icalcomponent *c
+      */
+     if (icaltime_is_date(per.stime)) {
+         if (local_icaltimezone != utc_icaltimezone) {
+-            next_alarm_time.is_utc        = 0;
+             next_alarm_time.is_daylight   = 0;
+             next_alarm_time.zone          = local_icaltimezone;
+         }
+@@ -2850,7 +2845,6 @@ orage_message(120, P_N "Alarm rec loop next_start:%s next_alarm:%s per.stime:%s"
+          */
+         if (icaltime_is_date(per.stime)) {
+             if (local_icaltimezone != utc_icaltimezone) {
+-                next_alarm_time.is_utc        = 0;
+                 next_alarm_time.is_daylight   = 0;
+                 next_alarm_time.zone          = local_icaltimezone;
+             }
+@@ -2944,7 +2938,6 @@ orage_message(120, P_N "*****After loop Alarm %s %s", icaltime_as_ical_string(ne
+          */
+         if (icaltime_is_date(per.stime)) {
+             if (local_icaltimezone != utc_icaltimezone) {
+-                next_alarm_time.is_utc        = 0;
+                 next_alarm_time.is_daylight   = 0;
+                 next_alarm_time.zone          = local_icaltimezone;
+             }
+-- 
+2.22.0
+
diff --git a/meta-openembedded/meta-xfce/recipes-apps/orage/orage_4.12.1.bb b/meta-openembedded/meta-xfce/recipes-apps/orage/orage_4.12.1.bb
index eb9da2d..9662b61 100644
--- a/meta-openembedded/meta-xfce/recipes-apps/orage/orage_4.12.1.bb
+++ b/meta-openembedded/meta-xfce/recipes-apps/orage/orage_4.12.1.bb
@@ -6,6 +6,8 @@
 
 inherit xfce-app
 
+SRC_URI += "file://0001-drop-setting-is_utc-member-of-icaltimetype.patch"
+
 SRC_URI[md5sum] = "2b7f5d38cb5c6edbcc65d0f52a742e46"
 SRC_URI[sha256sum] = "3cf9aa441ae83c8688865f82217025cdf3ebaa152cce4571777b8c2aa8dd9062"
 
diff --git a/meta-openembedded/meta-xfce/recipes-apps/xfce-polkit/xfce-polkit_0.2.bb b/meta-openembedded/meta-xfce/recipes-apps/xfce-polkit/xfce-polkit_0.2.bb
index 54bf7c7..62d8d6d 100644
--- a/meta-openembedded/meta-xfce/recipes-apps/xfce-polkit/xfce-polkit_0.2.bb
+++ b/meta-openembedded/meta-xfce/recipes-apps/xfce-polkit/xfce-polkit_0.2.bb
@@ -4,7 +4,8 @@
 
 DEPENDS = "libxfce4ui polkit"
 
-inherit xfce-app
+inherit xfce-app distro_features_check
+REQUIRED_DISTRO_FEATURES = "polkit"
 
 SRC_URI = " \
     git://github.com/ncopa/${BPN}.git \
diff --git a/meta-openembedded/meta-xfce/recipes-apps/xfce4-datetime-setter/xfce4-datetime-setter_3.32.2.bb b/meta-openembedded/meta-xfce/recipes-apps/xfce4-datetime-setter/xfce4-datetime-setter_3.32.2.bb
new file mode 100644
index 0000000..d643585
--- /dev/null
+++ b/meta-openembedded/meta-xfce/recipes-apps/xfce4-datetime-setter/xfce4-datetime-setter_3.32.2.bb
@@ -0,0 +1,19 @@
+DESCRIPTION = "A fork of (early) gnome-control-center datetime panel for XFCE. \
+It is based upon GTK3 and embedds into recent xfce4-settings."
+HOMEPAGE = "https://github.com/schnitzeltony/xfce4-datetime-setter"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=75859989545e37968a99b631ef42722e"
+
+DEPENDS = "glib-2.0-native libxfce4ui"
+
+SRC_URI = "git://github.com/schnitzeltony/xfce4-datetime-setter.git;protocol=https"
+SRCREV = "5c7a73a3824b03b91719e05e2604b97c7a72d50f"
+
+S = "${WORKDIR}/git"
+
+inherit gettext meson distro_features_check
+REQUIRED_DISTRO_FEATURES = "systemd"
+
+FILES_${PN} += "${datadir}/icons/hicolor"
+
+RDEPENDS_${PN} = "tzdata"
diff --git a/meta-openembedded/meta-xfce/recipes-connectivity/blueman/blueman_%.bbappend b/meta-openembedded/meta-xfce/recipes-connectivity/blueman/blueman_%.bbappend
deleted file mode 100644
index 916f083..0000000
--- a/meta-openembedded/meta-xfce/recipes-connectivity/blueman/blueman_%.bbappend
+++ /dev/null
@@ -1,2 +0,0 @@
-# Just a comment line to avoid PAK archive (application/x-pak)
-PACKAGECONFIG_append = " thunar"
diff --git a/meta-openembedded/meta-xfce/recipes-graphics/lxdm/lxdm/gdmflexiserver b/meta-openembedded/meta-xfce/recipes-graphics/lxdm/lxdm/gdmflexiserver
deleted file mode 100644
index 4be65c0..0000000
--- a/meta-openembedded/meta-xfce/recipes-graphics/lxdm/lxdm/gdmflexiserver
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-
-/usr/sbin/lxdm -c USER_SWITCH
diff --git a/meta-openembedded/meta-xfce/recipes-graphics/lxdm/lxdm_%.bbappend b/meta-openembedded/meta-xfce/recipes-graphics/lxdm/lxdm_%.bbappend
deleted file mode 100644
index 4a799a9..0000000
--- a/meta-openembedded/meta-xfce/recipes-graphics/lxdm/lxdm_%.bbappend
+++ /dev/null
@@ -1,7 +0,0 @@
-FILESEXTRAPATHS_append := "${THISDIR}/${BPN}:"
-
-SRC_URI += "file://gdmflexiserver"
-
-do_install_append () {
-    install -D -m 0755 ${WORKDIR}/gdmflexiserver ${D}${bindir}/gdmflexiserver
-}
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/pulseaudio/xfce4-pulseaudio-plugin_0.4.1.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/pulseaudio/xfce4-pulseaudio-plugin_0.4.1.bb
index b423707..63da1e0 100644
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/pulseaudio/xfce4-pulseaudio-plugin_0.4.1.bb
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/pulseaudio/xfce4-pulseaudio-plugin_0.4.1.bb
@@ -6,7 +6,7 @@
 
 REQUIRED_DISTRO_FEATURES = "pulseaudio x11"
 
-DEPENDS += "pulseaudio"
+DEPENDS += "dbus-glib pulseaudio"
 
 SRC_URI[md5sum] = "7df7280c19c2c8b8c5bc4f4f2136d1dd"
 SRC_URI[sha256sum] = "6ca88314dbac3e24c0e1bfc593fad6edb66319766be62e8256c81b0314f049f0"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/verve/xfce4-verve-plugin_1.1.0.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/verve/xfce4-verve-plugin_2.0.0.bb
similarity index 62%
rename from meta-openembedded/meta-xfce/recipes-panel-plugins/verve/xfce4-verve-plugin_1.1.0.bb
rename to meta-openembedded/meta-xfce/recipes-panel-plugins/verve/xfce4-verve-plugin_2.0.0.bb
index 5795160..36e04a4 100644
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/verve/xfce4-verve-plugin_1.1.0.bb
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/verve/xfce4-verve-plugin_2.0.0.bb
@@ -5,7 +5,5 @@
 
 inherit xfce-panel-plugin
 
-DEPENDS += "dbus-glib-native"
-
-SRC_URI[md5sum] = "ddd0190ae56f6117dbcf9ff2bf5a8cbf"
-SRC_URI[sha256sum] = "a3196f818c7ad57d19cd6581e168fd2b9f96de070246aea70c35ce2e5f9d9c84"
+SRC_URI[md5sum] = "94429b1be9d66ba9b31e4aafb726a8c7"
+SRC_URI[sha256sum] = "9e6510ba6c48fcfc60d1c6ab14613dd7b6ff095cabbf4746f82bf788d8ab4cd2"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/exo/exo_0.12.5.bb b/meta-openembedded/meta-xfce/recipes-xfce/exo/exo_0.12.8.bb
similarity index 68%
rename from meta-openembedded/meta-xfce/recipes-xfce/exo/exo_0.12.5.bb
rename to meta-openembedded/meta-xfce/recipes-xfce/exo/exo_0.12.8.bb
index 7d61e8f..fdd50d4 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/exo/exo_0.12.5.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/exo/exo_0.12.8.bb
@@ -1,8 +1,8 @@
-DESCRIPTION="Application library for the Xfce desktop environment"
+DESCRIPTION = "Application library for the Xfce desktop environment"
 SECTION = "x11"
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-DEPENDS = "gtk+ libxfce4util libxfce4ui virtual/libx11 liburi-perl-native cairo"
+DEPENDS = "gtk+3 libxfce4ui virtual/libx11 liburi-perl-native cairo"
 DEPENDS_class-native = "glib-2.0-native xfce4-dev-tools-native intltool-native"
 
 inherit xfce pythonnative perlnative gtk-doc distro_features_check
@@ -20,8 +20,12 @@
     file://reduce-build-to-exo-csource-only.patch \
 "
 
-SRC_URI[md5sum] = "1de1d539262847d49474d20cbebc78ea"
-SRC_URI[sha256sum] = "e8f434d6436ae647dd1614e8a24aba23c83f70cb14037b5bc98652f558be43e8"
+SRC_URI[md5sum] = "e618ce760a12ac7427a48a44c69f3d31"
+SRC_URI[sha256sum] = "3400a2e64aa41ede25bedaca4909bde7ea4f8698d9598d1b80f02a40ac89fcde"
+
+PACKAGECONFIG ??= ""
+PACKAGECONFIG_class-target ??= "gtk"
+PACKAGECONFIG[gtk] = "--enable-gtk2,--disable-gtk2,gtk+"
 
 PACKAGES =+ "exo-csource"
 
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/garcon/garcon_0.6.2.bb b/meta-openembedded/meta-xfce/recipes-xfce/garcon/garcon_0.6.2.bb
deleted file mode 100644
index 27096da..0000000
--- a/meta-openembedded/meta-xfce/recipes-xfce/garcon/garcon_0.6.2.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-DESCRIPTION="Xfce Menu Library"
-SECTION = "x11/libs"
-LICENSE = "LGPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=04a01abcbdabffae1ca26335a293276b"
-DEPENDS = "xfce4-dev-tools-native libxfce4util libxfce4ui intltool-native"
-
-inherit xfce gtk-doc distro_features_check
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-SRC_URI += "file://0001-xfce-applications.menu-don-t-bloat-settings-menu-by-.patch"
-SRC_URI[md5sum] = "a4b6332ff6f090575d534d6a9d2761d8"
-SRC_URI[sha256sum] = "a87f09648ff10d45c524b3bfe618f18622bdd8b205589d35fed2f12d9c79c47c"
-
-EXTRA_OECONF = "--disable-gtk-doc"
-
-FILES_${PN} += "${datadir}/desktop-directories"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/garcon/garcon_0.6.4.bb b/meta-openembedded/meta-xfce/recipes-xfce/garcon/garcon_0.6.4.bb
new file mode 100644
index 0000000..62c7890
--- /dev/null
+++ b/meta-openembedded/meta-xfce/recipes-xfce/garcon/garcon_0.6.4.bb
@@ -0,0 +1,17 @@
+DESCRIPTION = "Xfce Menu Library"
+SECTION = "x11/libs"
+LICENSE = "LGPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=04a01abcbdabffae1ca26335a293276b"
+DEPENDS = "xfce4-dev-tools-native libxfce4ui intltool-native"
+
+inherit xfce gtk-doc distro_features_check
+
+REQUIRED_DISTRO_FEATURES = "x11"
+
+SRC_URI += "file://0001-xfce-applications.menu-don-t-bloat-settings-menu-by-.patch"
+SRC_URI[md5sum] = "9715aa8214be9c553d9b8c44fde90b9f"
+SRC_URI[sha256sum] = "d75e4753037a74733c07b71b8db7a656d869869f0f107f6411a306bbc87a762d"
+
+EXTRA_OECONF = "--disable-gtk-doc"
+
+FILES_${PN} += "${datadir}/desktop-directories"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/libxfce4ui/libxfce4ui_4.13.5.bb b/meta-openembedded/meta-xfce/recipes-xfce/libxfce4ui/libxfce4ui_4.14.1.bb
similarity index 75%
rename from meta-openembedded/meta-xfce/recipes-xfce/libxfce4ui/libxfce4ui_4.13.5.bb
rename to meta-openembedded/meta-xfce/recipes-xfce/libxfce4ui/libxfce4ui_4.14.1.bb
index 2bea5f0..6b26200 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/libxfce4ui/libxfce4ui_4.13.5.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/libxfce4ui/libxfce4ui_4.14.1.bb
@@ -2,17 +2,17 @@
 SECTION = "x11/libs"
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=252890d9eee26aab7b432e8b8a616475"
-DEPENDS = "perl-native glib-2.0 gtk+ gtk+3 intltool-native libxfce4util xfconf xfce4-dev-tools virtual/libx11 libsm libice"
+DEPENDS = "intltool-native perl-native gtk+ gtk+3 libice libsm libxfce4util xfce4-dev-tools xfconf virtual/libx11"
 
-inherit xfce autotools gettext gtk-doc gobject-introspection distro_features_check
+inherit xfce gtk-doc gobject-introspection distro_features_check
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
 SRC_URI += " \
     file://0001-libxfce4kbd-private-xfce4-keyboard-shortcuts.xml-fix.patch \
 "
-SRC_URI[md5sum] = "692520f2a2cccaaafb0357c3dcbb015b"
-SRC_URI[sha256sum] = "3c38b065796a1cb2c2f2e9a28edaa6b37a3728c1c0b7a4297af9ecd82a8ab66d"
+SRC_URI[md5sum] = "50eae4bab5eeced186bce16fb5f802ac"
+SRC_URI[sha256sum] = "c449075eaeae4d1138d22eeed3d2ad7032b87fb8878eada9b770325bed87f2da"
 
 EXTRA_OECONF += "--with-vendor-info=${DISTRO}"
 
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/libxfce4util/libxfce4util_4.13.3.bb b/meta-openembedded/meta-xfce/recipes-xfce/libxfce4util/libxfce4util_4.14.0.bb
similarity index 64%
rename from meta-openembedded/meta-xfce/recipes-xfce/libxfce4util/libxfce4util_4.13.3.bb
rename to meta-openembedded/meta-xfce/recipes-xfce/libxfce4util/libxfce4util_4.14.0.bb
index 89a3859..1bb5007 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/libxfce4util/libxfce4util_4.13.3.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/libxfce4util/libxfce4util_4.14.0.bb
@@ -6,5 +6,5 @@
 
 inherit xfce gtk-doc gobject-introspection
 
-SRC_URI[md5sum] = "f39185afe5f612bd2c9b3dfbaf50b4d2"
-SRC_URI[sha256sum] = "724b523a4a9ec8cada727950ab2173be30f256fa332a891ccd28b46f4b91b67e"
+SRC_URI[md5sum] = "46f44e36acc3abf1a5ba814c22a773cb"
+SRC_URI[sha256sum] = "32ad79b7992ec3fd863e8ff2f03eebda8740363ef9d7d910a35963ac1c1a6324"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/packagegroups/packagegroup-xfce-extended.bb b/meta-openembedded/meta-xfce/recipes-xfce/packagegroups/packagegroup-xfce-extended.bb
index 62b89fd..a22a2e0 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/packagegroups/packagegroup-xfce-extended.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/packagegroups/packagegroup-xfce-extended.bb
@@ -55,7 +55,7 @@
     xfce4-calculator-plugin \
     xfce4-verve-plugin \
     \
-    xfce-polkit \
+    ${@bb.utils.contains('DISTRO_FEATURES','polkit','xfce-polkit','',d)} \
     ${@bb.utils.contains("DISTRO_FEATURES", "bluetooth", "blueman", "", d)} \
     \
     thunar-media-tags-plugin \
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/thunar-volman/thunar-volman_0.9.2.bb b/meta-openembedded/meta-xfce/recipes-xfce/thunar-volman/thunar-volman_0.9.5.bb
similarity index 63%
rename from meta-openembedded/meta-xfce/recipes-xfce/thunar-volman/thunar-volman_0.9.2.bb
rename to meta-openembedded/meta-xfce/recipes-xfce/thunar-volman/thunar-volman_0.9.5.bb
index 3139625..fff7c03 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/thunar-volman/thunar-volman_0.9.2.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/thunar-volman/thunar-volman_0.9.5.bb
@@ -2,14 +2,14 @@
 SECTION = "x11"
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-DEPENDS = "exo glib-2.0 libxfce4ui libxfce4util xfconf libnotify libgudev"
+DEPENDS = "exo libnotify libgudev"
 
 inherit xfce distro_features_check
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
-SRC_URI[md5sum] = "af216d5b60820e7cd39aae1b5ad869a3"
-SRC_URI[sha256sum] = "b944b4299b73d2ca79184922dfea49782e4849f5960e209def71ac700a92ff27"
+SRC_URI[md5sum] = "f9ef39ed4bbff05eb74058dfff24dd84"
+SRC_URI[sha256sum] = "7ea7c6693334f2248cf399586af8974dfb7db9aad685ee31ac100e62e19a1837"
 
 PACKAGECONFIG ??= ""
 PACKAGECONFIG[notify] = "--enable-notifications,--disable-notifications,libnotify"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/thunar/thunar_1.8.6.bb b/meta-openembedded/meta-xfce/recipes-xfce/thunar/thunar_1.8.9.bb
similarity index 73%
rename from meta-openembedded/meta-xfce/recipes-xfce/thunar/thunar_1.8.6.bb
rename to meta-openembedded/meta-xfce/recipes-xfce/thunar/thunar_1.8.9.bb
index 4375ce0..ff020d0 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/thunar/thunar_1.8.6.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/thunar/thunar_1.8.9.bb
@@ -2,15 +2,15 @@
 SECTION = "x11"
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-DEPENDS = "exo glib-2.0 gtk+3 gdk-pixbuf libxfce4util libxfce4ui xfconf libsm dbus-glib startup-notification libnotify xfce4-panel udev"
+DEPENDS = "exo gdk-pixbuf libxfce4ui libsm startup-notification libnotify xfce4-panel udev"
 
 inherit xfce gobject-introspection distro_features_check
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
 SRC_URI = "http://archive.xfce.org/src/xfce/${BPN}/${@'${PV}'[0:3]}/Thunar-${PV}.tar.bz2"
-SRC_URI[md5sum] = "3cb40548d7c642176eab8b97a5ba6d29"
-SRC_URI[sha256sum] = "c0e5fb828e3d036941dfeb7ed7f9f2b17b729fc044c2bf7c4218c1c91b38ef2a"
+SRC_URI[md5sum] = "fd1166e879294e4490d5fa9dccfdd9da"
+SRC_URI[sha256sum] = "7a758e7ac03501c520c304f8845353315c954d429b17d591b8eea8b14f1350b9"
 
 S = "${WORKDIR}/Thunar-${PV}/"
 
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/tumbler/tumbler/0001-configure-use-pkg-config-for-freetype2.patch b/meta-openembedded/meta-xfce/recipes-xfce/tumbler/tumbler/0001-configure-use-pkg-config-for-freetype2.patch
deleted file mode 100644
index 5ecc35e..0000000
--- a/meta-openembedded/meta-xfce/recipes-xfce/tumbler/tumbler/0001-configure-use-pkg-config-for-freetype2.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From f5c283b1251ad005da7342e654cd2ec5ae9e5fb2 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
-Date: Fri, 26 Sep 2014 13:44:36 +0200
-Subject: [PATCH] configure: use pkg-config for freetype2
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Upstream-status: Pending
-
-Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
----
- acinclude.m4 | 16 +---------------
- 1 file changed, 1 insertion(+), 15 deletions(-)
-
-diff --git a/acinclude.m4 b/acinclude.m4
-index 66e79d1..4c70b00 100644
---- a/acinclude.m4
-+++ b/acinclude.m4
-@@ -52,21 +52,7 @@ if test x"$ac_tumbler_font_thumbnailer" = x"yes"; then
-   PKG_CHECK_MODULES([GDK_PIXBUF], [gdk-pixbuf-2.0 >= 2.14], 
-   [
-     dnl Check for FreeType 2.x
--    FREETYPE_LIBS=""
--    FREETYPE_CFLAGS=""
--    AC_PATH_PROG([FREETYPE_CONFIG], [freetype-config], [no])
--    if test x"$FREETYPE_CONFIG" != x"no"; then
--      AC_MSG_CHECKING([FREETYPE_CFLAGS])
--      FREETYPE_CFLAGS="`$FREETYPE_CONFIG --cflags`"
--      AC_MSG_RESULT([$FREETYPE_CFLAGS])
--    
--      AC_MSG_CHECKING([FREETYPE_LIBS])
--      FREETYPE_LIBS="`$FREETYPE_CONFIG --libs`"
--      AC_MSG_RESULT([$FREETYPE_LIBS])
--    else
--      dnl We can only build the font thumbnailer if FreeType 2.x is available
--      ac_tumbler_font_thumbnailer=no
--    fi
-+    PKG_CHECK_MODULES(FREETYPE, freetype2, , [ac_tumbler_font_thumbnailer=no])
-     AC_SUBST([FREETYPE_CFLAGS])
-     AC_SUBST([FREETYPE_LIBS])
-   ], [ac_tumbler_font_thumbnailer=no])
--- 
-1.8.3.1
-
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/tumbler/tumbler_0.2.0.bb b/meta-openembedded/meta-xfce/recipes-xfce/tumbler/tumbler_0.2.7.bb
similarity index 67%
rename from meta-openembedded/meta-xfce/recipes-xfce/tumbler/tumbler_0.2.0.bb
rename to meta-openembedded/meta-xfce/recipes-xfce/tumbler/tumbler_0.2.7.bb
index 9d26694..434f874 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/tumbler/tumbler_0.2.0.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/tumbler/tumbler_0.2.7.bb
@@ -1,14 +1,13 @@
-DESCRIPTION="Thumbnail service implementing the thumbnail management D-Bus specification"
+DESCRIPTION = "Thumbnail service implementing the thumbnail management D-Bus specification"
 SECTION = "x11/libs"
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-DEPENDS = "dbus-glib dbus-glib-native freetype gdk-pixbuf poppler curl xfce4-dev-tools-native libxml2 libgsf"
+DEPENDS = "freetype gdk-pixbuf poppler curl xfce4-dev-tools-native libxml2 libgsf"
 
 inherit xfce gtk-doc
 
-SRC_URI[md5sum] = "dd5f9bae6a2470eb5fff0dc9edd3ea09"
-SRC_URI[sha256sum] = "4e27a59694b0a5cc69ebccbdb00c724e670b5b7c30bc4dc0b461aac93f234fac"
-SRC_URI += "file://0001-configure-use-pkg-config-for-freetype2.patch"
+SRC_URI[md5sum] = "a59b2a545c9c128dbd2b960a7779dec0"
+SRC_URI[sha256sum] = "f704c35f16716cbee3c94883cee2a8d865e9cf2535d0e84f57e1c8cce00314e4"
 
 INSANE_SKIP_${PN} = "dev-so"
 
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-appfinder/xfce4-appfinder_4.13.3.bb b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-appfinder/xfce4-appfinder_4.13.3.bb
deleted file mode 100644
index 3095596..0000000
--- a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-appfinder/xfce4-appfinder_4.13.3.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-DESCRIPTION="Xfce4 Application Finder"
-SECTION = "x11"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-DEPENDS="glib-2.0 gtk+3 libxfce4util libxfce4ui garcon dbus-glib xfconf"
-
-inherit xfce distro_features_check
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-SRC_URI[md5sum] = "c2069a14c85c8a3e537b2d4c552d36d2"
-SRC_URI[sha256sum] = "d738082a5fb01e42ea6333803012fd80258061f444afbbbd7b05a0f620a32ba6"
-
-FILES_${PN} += "${datadir}/metainfo"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-appfinder/xfce4-appfinder_4.14.0.bb b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-appfinder/xfce4-appfinder_4.14.0.bb
new file mode 100644
index 0000000..2d6b7a5
--- /dev/null
+++ b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-appfinder/xfce4-appfinder_4.14.0.bb
@@ -0,0 +1,14 @@
+DESCRIPTION = "Xfce4 Application Finder"
+SECTION = "x11"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
+DEPENDS = "glib-2.0 gtk+3 libxfce4util libxfce4ui garcon xfconf"
+
+inherit xfce distro_features_check
+
+REQUIRED_DISTRO_FEATURES = "x11"
+
+SRC_URI[md5sum] = "03b226a2ee20f95243e74d1868e94e0e"
+SRC_URI[sha256sum] = "7ec175d4954fceb2e76cbfbca76ac4a4f53fe799d097a14117e7de68e88a4d98"
+
+FILES_${PN} += "${datadir}/metainfo"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-dev-tools/xfce4-dev-tools_4.12.0.bb b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-dev-tools/xfce4-dev-tools_4.14.0.bb
similarity index 79%
rename from meta-openembedded/meta-xfce/recipes-xfce/xfce4-dev-tools/xfce4-dev-tools_4.12.0.bb
rename to meta-openembedded/meta-xfce/recipes-xfce/xfce4-dev-tools/xfce4-dev-tools_4.14.0.bb
index 5557f6d..0b11966 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-dev-tools/xfce4-dev-tools_4.12.0.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-dev-tools/xfce4-dev-tools_4.14.0.bb
@@ -10,8 +10,8 @@
 BBCLASSEXTEND = "native"
 
 SRC_URI = "http://archive.xfce.org/src/xfce/${BPN}/${@'${PV}'[0:4]}/${BPN}-${PV}.tar.bz2"
-SRC_URI[md5sum] = "559202c4d9650e23696c44aa94cfc5a9"
-SRC_URI[sha256sum] = "e2e3a654fe9110df81f8c2483c9cbfa6d656fed15d5e5e717d6ef10bd0f5b5cb"
+SRC_URI[md5sum] = "5f8fc8af73819c08d9e4c26a3ac457e7"
+SRC_URI[sha256sum] = "2c9eb8e0fe23e47dc31411a93b683fd1b7a49140e9163f0aab9e94a3d8a0b5fd"
 
 do_install_append() {
     install -d ${D}${datadir}/aclocal
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/files/0001-use-lxdm-to-replace-dm-tool.patch b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/files/0001-use-lxdm-to-replace-dm-tool.patch
new file mode 100644
index 0000000..b06e26e
--- /dev/null
+++ b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/files/0001-use-lxdm-to-replace-dm-tool.patch
@@ -0,0 +1,49 @@
+From b80108f01b1425427f98341168ea44c4b1a5a2cf Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Fri, 28 Jun 2019 16:02:13 +0800
+Subject: [PATCH] use lxdm to replace dm-tool
+
+OE does not support lightdm but lxdm,
+so use lxdm to replace dm-tool
+
+Upstream-Status: Inappropriate [oe specific]
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ plugins/actions/actions.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/plugins/actions/actions.c b/plugins/actions/actions.c
+index 474798e..63eb41d 100644
+--- a/plugins/actions/actions.c
++++ b/plugins/actions/actions.c
+@@ -905,12 +905,12 @@ actions_plugin_actions_allowed (void)
+   GError          *error = NULL;
+ 
+   /* check for commands we use */
+-  path = g_find_program_in_path ("dm-tool");
++  path = g_find_program_in_path ("lxdm");
+   if (path != NULL)
+     PANEL_SET_FLAG (allow_mask, ACTION_TYPE_SWITCH_USER);
+   else
+   {
+-    /* check for gdmflexiserver if dm-tool is not present */
++    /* check for gdmflexiserver if lxdm is not present */
+     g_free (path);
+     path = g_find_program_in_path ("gdmflexiserver");
+     if (path != NULL)
+@@ -1027,9 +1027,9 @@ actions_plugin_action_activate (GtkWidget      *widget,
+       break;
+ 
+     case ACTION_TYPE_SWITCH_USER:
+-      path = g_find_program_in_path ("dm-tool");
++      path = g_find_program_in_path ("lxdm");
+       if (path != NULL)
+-        succeed = g_spawn_command_line_async ("dm-tool switch-to-greeter", &error);
++        succeed = g_spawn_command_line_async ("lxdm -c USER_SWITCH", &error);
+       else
+         succeed = g_spawn_command_line_async ("gdmflexiserver", &error);
+       g_free (path);
+-- 
+2.8.1
+
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.13.5.bb b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.14.0.bb
similarity index 80%
rename from meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.13.5.bb
rename to meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.14.0.bb
index a4b200a..749c3fe 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.13.5.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.14.0.bb
@@ -2,16 +2,17 @@
 SECTION = "x11"
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=26a8bd75d8f8498bdbbe64a27791d4ee"
-DEPENDS = "libxfce4util garcon libxfce4ui xfconf exo gtk+ gtk+3 dbus cairo virtual/libx11 libxml2 libwnck3 vala-native"
+DEPENDS = "garcon exo gtk+3 cairo virtual/libx11 libxml2 libwnck3 vala-native"
 
-inherit xfce gtk-doc gobject-introspection distro_features_check gtk-icon-cache remove-libtool
+inherit xfce gtk-doc gobject-introspection distro_features_check remove-libtool
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
-SRC_URI[md5sum] = "376e360fb87095edaea7df8ca34fe6a7"
-SRC_URI[sha256sum] = "0d05b6dd8c91c154a364a3e31583c5f423c33e26d44d43cc409165f7d578ca15"
+SRC_URI[md5sum] = "940e8b430e28093a2e56e390055bcd51"
+SRC_URI[sha256sum] = "d5f8f3bd7e142139987e5e62cda26135a424baabb5e47aa0c23b4169d0a66ef4"
 SRC_URI += " \
     file://0001-windowmenu-do-not-display-desktop-icon-when-no-windo.patch \
+    file://0001-use-lxdm-to-replace-dm-tool.patch \
 "
 
 python populate_packages_prepend() {
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-power-manager/xfce4-power-manager_1.6.2.bb b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-power-manager/xfce4-power-manager_1.6.5.bb
similarity index 79%
rename from meta-openembedded/meta-xfce/recipes-xfce/xfce4-power-manager/xfce4-power-manager_1.6.2.bb
rename to meta-openembedded/meta-xfce/recipes-xfce/xfce4-power-manager/xfce4-power-manager_1.6.5.bb
index 0a44b1f..284a29b 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-power-manager/xfce4-power-manager_1.6.2.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-power-manager/xfce4-power-manager_1.6.5.bb
@@ -9,11 +9,10 @@
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
-DEPENDS += "gtk+3 glib-2.0 dbus-glib xfconf libxfce4ui libxfce4util libnotify \
-           libxrandr virtual/libx11 libxext xfce4-panel upower libxscrnsaver"
+DEPENDS += "libnotify libxrandr virtual/libx11 libxext xfce4-panel upower libxscrnsaver"
 
-SRC_URI[md5sum] = "2a49be4eca78fb519984db5aae38e4ab"
-SRC_URI[sha256sum] = "66ac34b33a2021b5af04c0181dfab6e6ee2bfab0ae07ed4527ca4552a66e1c01"
+SRC_URI[md5sum] = "709efbc2de9ed84b4831847ff70bcd7f"
+SRC_URI[sha256sum] = "10adb67899b181ca5fc577fc9bb7a698fb94e42073585f7e2be642c7db127a74"
 
 EXTRA_OECONF = " \
     --enable-network-manager \
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-session/xfce4-session_4.13.2.bb b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-session/xfce4-session_4.14.0.bb
similarity index 69%
rename from meta-openembedded/meta-xfce/recipes-xfce/xfce4-session/xfce4-session_4.13.2.bb
rename to meta-openembedded/meta-xfce/recipes-xfce/xfce4-session/xfce4-session_4.14.0.bb
index dc44c4b..6b4cafd 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-session/xfce4-session_4.13.2.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-session/xfce4-session_4.14.0.bb
@@ -3,28 +3,20 @@
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=9ac2e7cff1ddaf48b6eab6028f23ef88"
 
-DEPENDS = " \
-    dbus \
-    dbus-glib \
-    gtk+ \
-    libwnck3 \
-    libsm \
-    libxfce4ui \
-    libxfce4util \
-    polkit \
-    virtual/libx11 \
-    xfconf \
-"
+DEPENDS = "libwnck3 libsm libxfce4ui virtual/libx11"
 
 inherit xfce update-alternatives distro_features_check
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'polkit', d)}"
+PACKAGECONFIG[polkit] = "--enable-polkit, --disable-polkit, polkit"
+
 SRC_URI += " \
     file://0001-configure.in-hard-code-path-to-iceauth.patch \
 "
-SRC_URI[md5sum] = "1306b6166f47cdf6e0c61259abbb621f"
-SRC_URI[sha256sum] = "c0be0c7e602c962d0e8fca63bd86165e60313d07bfb72cf2c3f99ab53e2a22a1"
+SRC_URI[md5sum] = "635361f99a01b2d26c430a520b6d1314"
+SRC_URI[sha256sum] = "14fb6db74eb69eb400673856ba307a0e57f577cf77c3561a5910151e3d52043f"
 
 ALTERNATIVE_${PN} = "x-session-manager"
 ALTERNATIVE_TARGET[x-session-manager] = "${bindir}/xfce4-session"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-settings/files/0002-Fix-linking-to-dbus-glib-bug-13633.patch b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-settings/files/0002-Fix-linking-to-dbus-glib-bug-13633.patch
deleted file mode 100644
index 109b7b1..0000000
--- a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-settings/files/0002-Fix-linking-to-dbus-glib-bug-13633.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From b6e46e6a84e45f7bd954687be703987825a54c1e Mon Sep 17 00:00:00 2001
-From: Eric Koegel <eric.koegel@gmail.com>
-Date: Sun, 11 Jun 2017 11:38:26 +0300
-Subject: [PATCH] Fix linking to dbus-glib (bug #13633)
-
-With xfconf moving to GDBus nothing provides the libs for dbus-glib
-that xfce4-settings requires. This patch adds the libs back in until
-settings can be ported to GDBus.
-
-Signed-off-by: Sean Davis <smd.seandavis@gmail.com>
-
-Upstream-Status: Backport
----
- xfce4-settings-editor/Makefile.am | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/xfce4-settings-editor/Makefile.am b/xfce4-settings-editor/Makefile.am
-index 5964366..c2c7c4b 100644
---- a/xfce4-settings-editor/Makefile.am
-+++ b/xfce4-settings-editor/Makefile.am
-@@ -28,6 +28,7 @@ xfce4_settings_editor_CFLAGS = \
- 	$(LIBXFCE4UTIL_CFLAGS) \
- 	$(LIBXFCE4UI_CFLAGS) \
- 	$(XFCONF_CFLAGS) \
-+	$(DBUS_GLIB_CFLAGS) \
- 	$(PLATFORM_CFLAGS)
- 
- xfce4_settings_editor_LDFLAGS = \
-@@ -39,7 +40,8 @@ xfce4_settings_editor_LDADD = \
- 	$(DBUS_GLIB_LIBS) \
- 	$(LIBXFCE4UTIL_LIBS) \
- 	$(LIBXFCE4UI_LIBS) \
--	$(XFCONF_LIBS)
-+	$(XFCONF_LIBS) \
-+	$(DBUS_GLIB_LIBS)
- 
- desktopdir = $(datadir)/applications
- desktop_in_files = xfce4-settings-editor.desktop.in
--- 
-2.14.3
-
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings_4.14.0.bb b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings_4.14.0.bb
new file mode 100644
index 0000000..902e326
--- /dev/null
+++ b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings_4.14.0.bb
@@ -0,0 +1,33 @@
+SUMMARY = "Xfce4 settings"
+SECTION = "x11/wm"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
+DEPENDS = "exo exo-native garcon libxi virtual/libx11 xrandr libxcursor libxklavier upower"
+
+inherit xfce distro_features_check
+
+REQUIRED_DISTRO_FEATURES = "x11"
+
+SRC_URI += " \
+    file://0001-xsettings.xml-Set-default-themes.patch \
+"
+SRC_URI[md5sum] = "dcbc673448e1a816b2c47a7ce0ca13aa"
+SRC_URI[sha256sum] = "e03040d623abda0222ad04f226582277a1936507ddfa927ec8e87927debc113c"
+
+EXTRA_OECONF += "--enable-maintainer-mode --disable-debug"
+
+PACKAGECONFIG ??= " \
+    ${@bb.utils.contains('DISTRO_FEATURES','alsa','sound-setter', bb.utils.contains('DISTRO_FEATURES','pulseaudio','sound-setter','',d),d)} \
+"
+PACKAGECONFIG[notify] = "--enable-libnotify,--disable-libnotify,libnotify"
+PACKAGECONFIG[sound-setter] = "--enable-sound-settings, --disable-sound-settings, libcanberra, libcanberra-gtk2 sound-theme-freedesktop"
+
+FILES_${PN} += " \
+    ${libdir}/xfce4 \
+    ${datadir}/xfce4 \
+"
+
+RRECOMMENDS_${PN} += "adwaita-icon-theme"
+RRECOMMENDS_${PN} += "${@bb.utils.contains('DISTRO_FEATURES','alsa','libcanberra-alsa','',d)}"
+RRECOMMENDS_${PN} += "${@bb.utils.contains('DISTRO_FEATURES','pulseaudio','libcanberra-pulse','',d)}"
+RRECOMMENDS_${PN} += "${@bb.utils.contains('DISTRO_FEATURES','systemd','xfce4-datetime-setter','',d)}"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings_git.bb b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings_git.bb
deleted file mode 100644
index a4685ae..0000000
--- a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings_git.bb
+++ /dev/null
@@ -1,41 +0,0 @@
-SUMMARY = "Xfce4 settings"
-SECTION = "x11/wm"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-DEPENDS = "exo exo-native garcon gtk+ libxfce4util libxfce4ui xfconf dbus-glib libxi virtual/libx11 xrandr libxcursor libxklavier upower"
-
-inherit xfce xfce-git distro_features_check
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-# schnitzeltony git repo is the mainline repo
-# + datetime-setter - sent to mainline but strange response
-# + minor bugfixes - sent mainline but no response
-# + option to hide mousepointer for a specific (touch) input device - sent mainline but no response
-SRC_URI = " \
-    git://github.com/schnitzeltony/xfce4-settings.git;protocol=git;branch=for-oe-4.12.4 \
-    file://0001-xsettings.xml-Set-default-themes.patch \
-    file://0002-Fix-linking-to-dbus-glib-bug-13633.patch \
-"
-SRCREV = "75d7c9b15e5ccce12b0864d3659ae9b6de96e245"
-S = "${WORKDIR}/git"
-PV = "4.12.4+git${SRCPV}"
-
-EXTRA_OECONF += "--enable-maintainer-mode --disable-debug"
-
-PACKAGECONFIG ??= " \
-    ${@bb.utils.contains('DISTRO_FEATURES','systemd','datetime-setter','',d)} \
-    ${@bb.utils.contains('DISTRO_FEATURES','alsa','sound-setter', bb.utils.contains('DISTRO_FEATURES','pulseaudio','sound-setter','',d),d)} \
-"
-PACKAGECONFIG[datetime-setter] = "--enable-datetime-settings, --disable-datetime-settings,, tzdata"
-PACKAGECONFIG[notify] = "--enable-libnotify,--disable-libnotify,libnotify"
-PACKAGECONFIG[sound-setter] = "--enable-sound-settings, --disable-sound-settings, libcanberra, libcanberra-gtk2 sound-theme-freedesktop"
-
-FILES_${PN} += " \
-    ${libdir}/xfce4 \
-    ${datadir}/xfce4 \
-"
-
-RRECOMMENDS_${PN} += "adwaita-icon-theme"
-RRECOMMENDS_${PN} += "${@bb.utils.contains('DISTRO_FEATURES','alsa','libcanberra-alsa','',d)}"
-RRECOMMENDS_${PN} += "${@bb.utils.contains('DISTRO_FEATURES','pulseaudio','libcanberra-pulse','',d)}"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfconf/xfconf_4.13.7.bb b/meta-openembedded/meta-xfce/recipes-xfce/xfconf/xfconf_4.14.1.bb
similarity index 69%
rename from meta-openembedded/meta-xfce/recipes-xfce/xfconf/xfconf_4.13.7.bb
rename to meta-openembedded/meta-xfce/recipes-xfce/xfconf/xfconf_4.14.1.bb
index 9f08f74..8da96a4 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/xfconf/xfconf_4.13.7.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/xfconf/xfconf_4.14.1.bb
@@ -2,14 +2,14 @@
 SECTION = "x11/wm"
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-DEPENDS = "dbus-glib libxfce4util perl intltool-native xfce4-dev-tools-native"
+DEPENDS = "libxfce4util perl intltool-native xfce4-dev-tools-native"
 
-inherit xfce gtk-doc
+inherit xfce gtk-doc gobject-introspection
 
 EXTRA_OECONF += "PERL=${STAGING_DIR_TARGET}/usr/bin/perl"
 
-SRC_URI[md5sum] = "ea4c070c4ed8387e6435b56d0e871559"
-SRC_URI[sha256sum] = "5deb13fc48a4116f5ebdee5c21d0fd3deb85bec2f69602beb3c3adb4f85e5bde"
+SRC_URI[md5sum] = "cb51a59e2a89d05232f825ad8c74a7c0"
+SRC_URI[sha256sum] = "b893e0a329aee00902fec2f0509f56916c9dcc7844e1b1f9e3c7399458290d59"
 
 FILES_${PN} += "${libdir}/xfce4/xfconf/xfconfd \
                 ${libdir}/gio/modules/libxfconfgsettingsbackend.so \
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfdesktop/xfdesktop_4.13.4.bb b/meta-openembedded/meta-xfce/recipes-xfce/xfdesktop/xfdesktop_4.14.1.bb
similarity index 60%
rename from meta-openembedded/meta-xfce/recipes-xfce/xfdesktop/xfdesktop_4.13.4.bb
rename to meta-openembedded/meta-xfce/recipes-xfce/xfdesktop/xfdesktop_4.14.1.bb
index f02a6bf..ec4f00f 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/xfdesktop/xfdesktop_4.13.4.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/xfdesktop/xfdesktop_4.14.1.bb
@@ -2,14 +2,14 @@
 SECTION = "x11/base"
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-DEPENDS = "libxfce4util libxfce4ui libwnck xfconf dbus-glib dbus-glib-native thunar garcon exo"
+DEPENDS = "libxfce4ui libwnck thunar garcon exo"
 
 inherit xfce distro_features_check
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
-SRC_URI[md5sum] = "d1174af12148141a07b62cc051c43c84"
-SRC_URI[sha256sum] = "f4f7fa5162512971c25066eb04ef78f0d075656da79b6f7425ffb619a5119ca0"
+SRC_URI[md5sum] = "de4b8f6687862ad46dbe4e1ced453f4d"
+SRC_URI[sha256sum] = "f705a016246ec54ab0c688d1a0577f6c2b45a446690aa8d9e5a7ac23efebf882"
 
 PACKAGECONFIG ??= ""
 PACKAGECONFIG[notify] = "--enable-notifications,--disable-notifications,libnotify"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfwm4/files/0001-Revert-compositor-Revert-to-GLX-as-default-vblank-me.patch b/meta-openembedded/meta-xfce/recipes-xfce/xfwm4/files/0001-Revert-compositor-Revert-to-GLX-as-default-vblank-me.patch
new file mode 100644
index 0000000..04fd623
--- /dev/null
+++ b/meta-openembedded/meta-xfce/recipes-xfce/xfwm4/files/0001-Revert-compositor-Revert-to-GLX-as-default-vblank-me.patch
@@ -0,0 +1,92 @@
+From acdceb0b28d86199b8c2233880fa8a04cb24d4d4 Mon Sep 17 00:00:00 2001
+From: Kai Kang <kai.kang@windriver.com>
+Date: Wed, 24 Jul 2019 09:48:04 +0800
+Subject: [PATCH] Revert "compositor: Revert to GLX as default vblank method
+ (again)"
+
+This reverts commit e07574d6e7a2dbaa08c3ba4765c6306073d9493e.
+
+It sets the default vblank method (auto) to GLX from 4.13.2. But it
+fails to start xfwm4 on intel-x86-64 boards with error:
+
+| xfwm4: ../mesa-19.1.1/src/mesa/drivers/dri/i965/intel_mipmap_tree.c:1293:
+| intel_miptree_match_image: Assertion `image->TexObject->Target == mt->target' failed.
+| Aborted
+
+There is also a RHEL defect:
+https://bugzilla.redhat.com/show_bug.cgi?id=1678334
+
+Revert the commit to fix the issue.
+
+Upstream-Status: Inappropriate [workaround]
+
+Signed-off-by: Kai Kang <kai.kang@windriver.com>
+---
+ src/compositor.c | 41 +++++++++++++++++++----------------------
+ 1 file changed, 19 insertions(+), 22 deletions(-)
+
+diff --git a/src/compositor.c b/src/compositor.c
+index 25615282..daced607 100644
+--- a/src/compositor.c
++++ b/src/compositor.c
+@@ -4483,13 +4483,28 @@ compositorManageScreen (ScreenInfo *screen_info)
+     XClearArea (display_info->dpy, screen_info->output, 0, 0, 0, 0, TRUE);
+     TRACE ("manual compositing enabled");
+ 
++#ifdef HAVE_PRESENT_EXTENSION
++    screen_info->use_present = display_info->have_present &&
++                               (screen_info->vblank_mode == VBLANK_AUTO ||
++                                screen_info->vblank_mode == VBLANK_XPRESENT);
++    if (screen_info->use_present)
++    {
++        screen_info->present_pending = FALSE;
++        XPresentSelectInput (display_info->dpy,
++                             screen_info->output,
++                             PresentCompleteNotifyMask);
++    }
++#else /* HAVE_PRESENT_EXTENSION */
++    screen_info->use_present = FALSE;
++#endif /* HAVE_PRESENT_EXTENSION */
++
+ #ifdef HAVE_EPOXY
+-    screen_info->use_glx = (screen_info->vblank_mode == VBLANK_AUTO ||
+-                            screen_info->vblank_mode == VBLANK_GLX);
++    screen_info->use_glx = !screen_info->use_present &&
+ #ifdef HAVE_XSYNC
+-    screen_info->use_glx &= display_info->have_xsync;
++                            display_info->have_xsync &&
+ #endif /* HAVE_XSYNC */
+-
++                            (screen_info->vblank_mode == VBLANK_AUTO ||
++                             screen_info->vblank_mode == VBLANK_GLX);
+     if (screen_info->use_glx)
+     {
+         screen_info->glx_context = None;
+@@ -4503,24 +4518,6 @@ compositorManageScreen (ScreenInfo *screen_info)
+     screen_info->use_glx = FALSE;
+ #endif /* HAVE_EPOXY */
+ 
+-#ifdef HAVE_PRESENT_EXTENSION
+-    screen_info->use_present = display_info->have_present &&
+-#ifdef HAVE_EPOXY
+-                               !screen_info->use_glx &&
+-#endif /* HAVE_EPOXY */
+-                               (screen_info->vblank_mode == VBLANK_AUTO ||
+-                                screen_info->vblank_mode == VBLANK_XPRESENT);
+-    if (screen_info->use_present)
+-    {
+-        screen_info->present_pending = FALSE;
+-        XPresentSelectInput (display_info->dpy,
+-                             screen_info->output,
+-                             PresentCompleteNotifyMask);
+-    }
+-#else /* HAVE_PRESENT_EXTENSION */
+-    screen_info->use_present = FALSE;
+-#endif /* HAVE_PRESENT_EXTENSION */
+-
+     if (screen_info->use_present)
+     {
+         g_info ("Compositor using XPresent for vsync");
+-- 
+2.20.1
+
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfwm4/xfwm4_4.13.2.bb b/meta-openembedded/meta-xfce/recipes-xfce/xfwm4/xfwm4_4.14.0.bb
similarity index 76%
rename from meta-openembedded/meta-xfce/recipes-xfce/xfwm4/xfwm4_4.13.2.bb
rename to meta-openembedded/meta-xfce/recipes-xfce/xfwm4/xfwm4_4.14.0.bb
index 6075977..77b45a7 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/xfwm4/xfwm4_4.13.2.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/xfwm4/xfwm4_4.14.0.bb
@@ -1,15 +1,16 @@
-DESCRIPTION="Xfce4 Window Manager"
+DESCRIPTION = "Xfce4 Window Manager"
 SECTION = "x11/wm"
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=d791728a073bc009b4ffaf00b7599855"
-DEPENDS = "virtual/libx11 libxfce4util libxfce4ui xfconf libwnck3 dbus-glib libxinerama exo-native"
+DEPENDS = "virtual/libx11 libxfce4ui libwnck3 libxinerama exo-native"
 
 inherit xfce update-alternatives distro_features_check
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
-SRC_URI[md5sum] = "aee4a8375beeae09715e77479610ff02"
-SRC_URI[sha256sum] = "7be8a63e92077e42e6cc064a1dfdae608ab99fdc730adbd5200802dbdd86d5a9"
+SRC_URI += "file://0001-Revert-compositor-Revert-to-GLX-as-default-vblank-me.patch"
+SRC_URI[md5sum] = "c33847836958d540e3ecd0a27f131c0f"
+SRC_URI[sha256sum] = "b4182bf8dc63d092f120a51fcae0eb54b9bd4aa4f8486f47e5a65a108322b615"
 
 PACKAGECONFIG ?= " \
     ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'epoxy', '', d)} \